From e110ccf92fcaa12b7d89c7239b45aad29959955b Mon Sep 17 00:00:00 2001
From: Samuel Alake <58840187+samuelalake@users.noreply.github.com>
Date: Tue, 18 Aug 2026 04:10:26 -0700
Subject: [PATCH] feat(icons): add square-text (#4609)
* feat(icons): add square-text
Adds square-text: a solid square containing three ragged lines of text.
The set has square-dashed-text but no solid-border equivalent, which is
the same asymmetry solid/dashed pairs elsewhere avoid. This reuses
square-dashed-text's exact text glyph (M7 8h8 / M7 12h10 / M7 16h6) on the
standard 18x18 rx=2 square, so it reads as the solid twin.
Distinct from square-menu, whose lines are equal full-width (a menu, not
running text).
* chore(icons): expand square-text tags and fill use-cases
Applies the metadata bot's tag suggestions (curated) and fills the
use-cases field.
* chore(icons): promote lab/text-square to square-text
Per review on #4609: square-text is identical to lab/text-square, so
this removes the lab entry and merges its metadata (tags + development
category) into the promoted icon.
* chore(icons): credit danielbayley and expand square-text use-cases
Per review on #4609: adds @danielbayley (original author of lab/text-square)
to contributors, and expands use-cases per @ericfennis.
---
icons/square-text.json | 42 ++++++++++++++++++++
lab/text-square.svg => icons/square-text.svg | 2 +-
lab/text-square.json | 19 ---------
3 files changed, 43 insertions(+), 20 deletions(-)
create mode 100644 icons/square-text.json
rename lab/text-square.svg => icons/square-text.svg (100%)
delete mode 100644 lab/text-square.json
diff --git a/icons/square-text.json b/icons/square-text.json
new file mode 100644
index 000000000..04ab0af09
--- /dev/null
+++ b/icons/square-text.json
@@ -0,0 +1,42 @@
+{
+ "$schema": "../icon.schema.json",
+ "contributors": [
+ "danielbayley",
+ "samuelalake"
+ ],
+ "use-cases": [
+ "representing a text block or content card",
+ "indicating a document, article, or post",
+ "using as a placeholder for text content in a layout",
+ "labeling a notes or memo feature",
+ "denoting a text-only module or widget in a dashboard"
+ ],
+ "tags": [
+ "text",
+ "paragraph",
+ "content",
+ "note",
+ "document",
+ "body",
+ "copy",
+ "article",
+ "square",
+ "container",
+ "block",
+ "card",
+ "placeholder",
+ "log",
+ "page",
+ "paper",
+ "sheet",
+ "list",
+ "script",
+ "code",
+ "editor"
+ ],
+ "categories": [
+ "text",
+ "shapes",
+ "development"
+ ]
+}
diff --git a/lab/text-square.svg b/icons/square-text.svg
similarity index 100%
rename from lab/text-square.svg
rename to icons/square-text.svg
index 6fb082743..286340214 100644
--- a/lab/text-square.svg
+++ b/icons/square-text.svg
@@ -10,7 +10,7 @@
stroke-linejoin="round"
>
+
-
diff --git a/lab/text-square.json b/lab/text-square.json
deleted file mode 100644
index 5fd1ea8ab..000000000
--- a/lab/text-square.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
- "$schema": "../icon.schema.json",
- "tags": [
- "note",
- "log",
- "document",
- "page",
- "paper",
- "sheet",
- "list",
- "script",
- "code",
- "editor"
- ],
- "categories": [
- "text",
- "development"
- ]
-}