diff --git a/.publish/ai/package.json b/.publish/ai/package.json
index 3495f26e..21401c98 100644
--- a/.publish/ai/package.json
+++ b/.publish/ai/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/ai",
- "version": "0.2.54",
+ "version": "0.2.55",
"type": "module",
"description": "Zero-dependency Claude (Anthropic) client for WrNexus apps.",
"license": "MIT",
diff --git a/.publish/authz/package.json b/.publish/authz/package.json
index 038576f6..5b954ef4 100644
--- a/.publish/authz/package.json
+++ b/.publish/authz/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/authz",
- "version": "0.2.54",
+ "version": "0.2.55",
"type": "module",
"description": "@wrnexus/authz — part of the WrNexus framework.",
"license": "MIT",
diff --git a/.publish/cli/package.json b/.publish/cli/package.json
index a526e480..c11bc18e 100644
--- a/.publish/cli/package.json
+++ b/.publish/cli/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/cli",
- "version": "0.2.54",
+ "version": "0.2.55",
"type": "module",
"description": "@wrnexus/cli — part of the WrNexus framework.",
"license": "MIT",
@@ -28,16 +28,16 @@
"wrnexus": "./dist/index.js"
},
"dependencies": {
- "@wrnexus/core": "^0.2.54",
- "@wrnexus/router": "^0.2.54",
- "@wrnexus/csr": "^0.2.54",
- "@wrnexus/compiler": "^0.2.54",
- "@wrnexus/styles": "^0.2.54",
- "@wrnexus/dev-server": "^0.2.54",
- "@wrnexus/ui": "^0.2.54",
- "@wrnexus/validation": "^0.2.54",
- "@wrnexus/i18n": "^0.2.54",
- "@wrnexus/db": "^0.2.54"
+ "@wrnexus/core": "^0.2.55",
+ "@wrnexus/router": "^0.2.55",
+ "@wrnexus/csr": "^0.2.55",
+ "@wrnexus/compiler": "^0.2.55",
+ "@wrnexus/styles": "^0.2.55",
+ "@wrnexus/dev-server": "^0.2.55",
+ "@wrnexus/ui": "^0.2.55",
+ "@wrnexus/validation": "^0.2.55",
+ "@wrnexus/i18n": "^0.2.55",
+ "@wrnexus/db": "^0.2.55"
},
"files": [
"dist"
diff --git a/.publish/compiler/package.json b/.publish/compiler/package.json
index d2cfa1b4..f48d8cf7 100644
--- a/.publish/compiler/package.json
+++ b/.publish/compiler/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/compiler",
- "version": "0.2.54",
+ "version": "0.2.55",
"type": "module",
"description": "@wrnexus/compiler — part of the WrNexus framework.",
"license": "MIT",
diff --git a/.publish/core/package.json b/.publish/core/package.json
index af3ce3a6..83bc0338 100644
--- a/.publish/core/package.json
+++ b/.publish/core/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/core",
- "version": "0.2.54",
+ "version": "0.2.55",
"type": "module",
"description": "@wrnexus/core — part of the WrNexus framework.",
"license": "MIT",
diff --git a/.publish/csr/package.json b/.publish/csr/package.json
index d468d030..b7b0f9ad 100644
--- a/.publish/csr/package.json
+++ b/.publish/csr/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/csr",
- "version": "0.2.54",
+ "version": "0.2.55",
"type": "module",
"description": "@wrnexus/csr — part of the WrNexus framework.",
"license": "MIT",
@@ -21,7 +21,7 @@
}
},
"dependencies": {
- "@wrnexus/core": "^0.2.54"
+ "@wrnexus/core": "^0.2.55"
},
"files": [
"dist"
diff --git a/.publish/db/package.json b/.publish/db/package.json
index bb1f9c7c..b15faa9a 100644
--- a/.publish/db/package.json
+++ b/.publish/db/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/db",
- "version": "0.2.54",
+ "version": "0.2.55",
"type": "module",
"description": "@wrnexus/db — part of the WrNexus framework.",
"license": "MIT",
diff --git a/.publish/dev-server/package.json b/.publish/dev-server/package.json
index 31ad5ea1..ed096e35 100644
--- a/.publish/dev-server/package.json
+++ b/.publish/dev-server/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/dev-server",
- "version": "0.2.54",
+ "version": "0.2.55",
"type": "module",
"description": "@wrnexus/dev-server — part of the WrNexus framework.",
"license": "MIT",
@@ -25,18 +25,18 @@
}
},
"dependencies": {
- "@wrnexus/core": "^0.2.54",
- "@wrnexus/router": "^0.2.54",
- "@wrnexus/ssr": "^0.2.54",
- "@wrnexus/csr": "^0.2.54",
- "@wrnexus/compiler": "^0.2.54",
- "@wrnexus/styles": "^0.2.54",
- "@wrnexus/ui": "^0.2.54",
- "@wrnexus/validation": "^0.2.54",
- "@wrnexus/i18n": "^0.2.54",
- "@wrnexus/db": "^0.2.54",
- "@wrnexus/pubsub": "^0.2.54",
- "@wrnexus/uploader": "^0.2.54"
+ "@wrnexus/core": "^0.2.55",
+ "@wrnexus/router": "^0.2.55",
+ "@wrnexus/ssr": "^0.2.55",
+ "@wrnexus/csr": "^0.2.55",
+ "@wrnexus/compiler": "^0.2.55",
+ "@wrnexus/styles": "^0.2.55",
+ "@wrnexus/ui": "^0.2.55",
+ "@wrnexus/validation": "^0.2.55",
+ "@wrnexus/i18n": "^0.2.55",
+ "@wrnexus/db": "^0.2.55",
+ "@wrnexus/pubsub": "^0.2.55",
+ "@wrnexus/uploader": "^0.2.55"
},
"files": [
"dist"
diff --git a/.publish/encryption/package.json b/.publish/encryption/package.json
index b8a63bd2..ab1a5fb7 100644
--- a/.publish/encryption/package.json
+++ b/.publish/encryption/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/encryption",
- "version": "0.2.54",
+ "version": "0.2.55",
"type": "module",
"description": "@wrnexus/encryption — part of the WrNexus framework.",
"license": "MIT",
diff --git a/.publish/helpers/package.json b/.publish/helpers/package.json
index f29221e7..b322d722 100644
--- a/.publish/helpers/package.json
+++ b/.publish/helpers/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/helpers",
- "version": "0.2.54",
+ "version": "0.2.55",
"type": "module",
"description": "Safe convenience helpers for WrNexus request contexts and common application flows.",
"license": "MIT",
@@ -21,7 +21,7 @@
}
},
"dependencies": {
- "@wrnexus/core": "^0.2.54"
+ "@wrnexus/core": "^0.2.55"
},
"files": [
"dist"
diff --git a/.publish/i18n/package.json b/.publish/i18n/package.json
index c10233be..20c28cfb 100644
--- a/.publish/i18n/package.json
+++ b/.publish/i18n/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/i18n",
- "version": "0.2.54",
+ "version": "0.2.55",
"type": "module",
"description": "@wrnexus/i18n — part of the WrNexus framework.",
"license": "MIT",
@@ -21,7 +21,7 @@
}
},
"dependencies": {
- "@wrnexus/core": "^0.2.54"
+ "@wrnexus/core": "^0.2.55"
},
"files": [
"dist"
diff --git a/.publish/jwt/package.json b/.publish/jwt/package.json
index e3b26928..db9fa8f2 100644
--- a/.publish/jwt/package.json
+++ b/.publish/jwt/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/jwt",
- "version": "0.2.54",
+ "version": "0.2.55",
"type": "module",
"description": "@wrnexus/jwt — part of the WrNexus framework.",
"license": "MIT",
diff --git a/.publish/mobile/package.json b/.publish/mobile/package.json
index 3d260921..039fd66d 100644
--- a/.publish/mobile/package.json
+++ b/.publish/mobile/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/mobile",
- "version": "0.2.54",
+ "version": "0.2.55",
"type": "module",
"description": "@wrnexus/mobile — part of the WrNexus framework.",
"license": "MIT",
@@ -21,7 +21,7 @@
}
},
"dependencies": {
- "@wrnexus/native": "^0.2.54"
+ "@wrnexus/native": "^0.2.55"
},
"files": [
"dist"
diff --git a/.publish/native/package.json b/.publish/native/package.json
index 671bff22..bfe5dd71 100644
--- a/.publish/native/package.json
+++ b/.publish/native/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/native",
- "version": "0.2.54",
+ "version": "0.2.55",
"type": "module",
"description": "@wrnexus/native — part of the WrNexus framework.",
"license": "MIT",
diff --git a/.publish/oauth/package.json b/.publish/oauth/package.json
index 995abdf0..74850c7a 100644
--- a/.publish/oauth/package.json
+++ b/.publish/oauth/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/oauth",
- "version": "0.2.54",
+ "version": "0.2.55",
"type": "module",
"description": "@wrnexus/oauth — part of the WrNexus framework.",
"license": "MIT",
diff --git a/.publish/pubsub/package.json b/.publish/pubsub/package.json
index 81b6a2de..11b86773 100644
--- a/.publish/pubsub/package.json
+++ b/.publish/pubsub/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/pubsub",
- "version": "0.2.54",
+ "version": "0.2.55",
"type": "module",
"description": "@wrnexus/pubsub — part of the WrNexus framework.",
"license": "MIT",
diff --git a/.publish/queue/package.json b/.publish/queue/package.json
index 7240898b..b707a86e 100644
--- a/.publish/queue/package.json
+++ b/.publish/queue/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/queue",
- "version": "0.2.54",
+ "version": "0.2.55",
"type": "module",
"description": "@wrnexus/queue — part of the WrNexus framework.",
"license": "MIT",
diff --git a/.publish/reactive/package.json b/.publish/reactive/package.json
index 82cba7a6..47df3030 100644
--- a/.publish/reactive/package.json
+++ b/.publish/reactive/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/reactive",
- "version": "0.2.54",
+ "version": "0.2.55",
"type": "module",
"description": "@wrnexus/reactive — part of the WrNexus framework.",
"license": "MIT",
diff --git a/.publish/router/package.json b/.publish/router/package.json
index 05d881ca..a8cc673c 100644
--- a/.publish/router/package.json
+++ b/.publish/router/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/router",
- "version": "0.2.54",
+ "version": "0.2.55",
"type": "module",
"description": "@wrnexus/router — part of the WrNexus framework.",
"license": "MIT",
@@ -21,8 +21,8 @@
}
},
"dependencies": {
- "@wrnexus/compiler": "^0.2.54",
- "@wrnexus/core": "^0.2.54"
+ "@wrnexus/compiler": "^0.2.55",
+ "@wrnexus/core": "^0.2.55"
},
"files": [
"dist"
diff --git a/.publish/ssr/package.json b/.publish/ssr/package.json
index 22f455be..68beb615 100644
--- a/.publish/ssr/package.json
+++ b/.publish/ssr/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/ssr",
- "version": "0.2.54",
+ "version": "0.2.55",
"type": "module",
"description": "@wrnexus/ssr — part of the WrNexus framework.",
"license": "MIT",
@@ -21,7 +21,7 @@
}
},
"dependencies": {
- "@wrnexus/core": "^0.2.54"
+ "@wrnexus/core": "^0.2.55"
},
"files": [
"dist"
diff --git a/.publish/styles/package.json b/.publish/styles/package.json
index 5709774b..d8d7449d 100644
--- a/.publish/styles/package.json
+++ b/.publish/styles/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/styles",
- "version": "0.2.54",
+ "version": "0.2.55",
"type": "module",
"description": "@wrnexus/styles — part of the WrNexus framework.",
"license": "MIT",
@@ -21,7 +21,7 @@
}
},
"dependencies": {
- "@wrnexus/uploader": "^0.2.54"
+ "@wrnexus/uploader": "^0.2.55"
},
"files": [
"dist"
diff --git a/.publish/test/package.json b/.publish/test/package.json
index e4e0bebe..488751ec 100644
--- a/.publish/test/package.json
+++ b/.publish/test/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/test",
- "version": "0.2.54",
+ "version": "0.2.55",
"type": "module",
"description": "@wrnexus/test — part of the WrNexus framework.",
"license": "MIT",
diff --git a/.publish/tracking/package.json b/.publish/tracking/package.json
index 9e5ac3e9..c07feba1 100644
--- a/.publish/tracking/package.json
+++ b/.publish/tracking/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/tracking",
- "version": "0.2.54",
+ "version": "0.2.55",
"type": "module",
"description": "@wrnexus/tracking — part of the WrNexus framework.",
"license": "MIT",
diff --git a/.publish/ui/components/AspectRatio.wrn b/.publish/ui/components/AspectRatio.wrn
new file mode 100644
index 00000000..d6c2bf73
--- /dev/null
+++ b/.publish/ui/components/AspectRatio.wrn
@@ -0,0 +1,6 @@
+component AspectRatio {
+ props {
+ class = ""
+ }
+ view {
}
+}
diff --git a/.publish/ui/components/AssetCard.wrn b/.publish/ui/components/AssetCard.wrn
new file mode 100644
index 00000000..f38a44ad
--- /dev/null
+++ b/.publish/ui/components/AssetCard.wrn
@@ -0,0 +1,9 @@
+component AssetCard {
+ props {
+ title = ""
+ description = ""
+ href = ""
+ class = ""
+ }
+ view { {title}
{description}
Open {title} }
+}
diff --git a/.publish/ui/components/AutoGrid.wrn b/.publish/ui/components/AutoGrid.wrn
new file mode 100644
index 00000000..52a18909
--- /dev/null
+++ b/.publish/ui/components/AutoGrid.wrn
@@ -0,0 +1,6 @@
+component AutoGrid {
+ props {
+ class = ""
+ }
+ view {
}
+}
diff --git a/.publish/ui/components/BackButton.wrn b/.publish/ui/components/BackButton.wrn
new file mode 100644
index 00000000..2cf2c0d5
--- /dev/null
+++ b/.publish/ui/components/BackButton.wrn
@@ -0,0 +1,9 @@
+component BackButton {
+ props {
+ label = "Action"
+ type = "button"
+ disabled = false
+ class = ""
+ }
+ view { }
+}
diff --git a/.publish/ui/components/BetaBadge.wrn b/.publish/ui/components/BetaBadge.wrn
new file mode 100644
index 00000000..0491a276
--- /dev/null
+++ b/.publish/ui/components/BetaBadge.wrn
@@ -0,0 +1,8 @@
+component BetaBadge {
+ props {
+ label = "Beta"
+ variant = "default"
+ class = ""
+ }
+ view { {label} }
+}
diff --git a/.publish/ui/components/BodyText.wrn b/.publish/ui/components/BodyText.wrn
new file mode 100644
index 00000000..261064c1
--- /dev/null
+++ b/.publish/ui/components/BodyText.wrn
@@ -0,0 +1,8 @@
+component BodyText {
+ props {
+ text = ""
+ align = "start"
+ class = ""
+ }
+ view { {text}
}
+}
diff --git a/.publish/ui/components/CampaignCard.wrn b/.publish/ui/components/CampaignCard.wrn
new file mode 100644
index 00000000..20f66081
--- /dev/null
+++ b/.publish/ui/components/CampaignCard.wrn
@@ -0,0 +1,9 @@
+component CampaignCard {
+ props {
+ title = ""
+ description = ""
+ href = ""
+ class = ""
+ }
+ view { {title}
{description}
Open {title} }
+}
diff --git a/.publish/ui/components/ChannelCard.wrn b/.publish/ui/components/ChannelCard.wrn
new file mode 100644
index 00000000..935cd108
--- /dev/null
+++ b/.publish/ui/components/ChannelCard.wrn
@@ -0,0 +1,9 @@
+component ChannelCard {
+ props {
+ title = ""
+ description = ""
+ href = ""
+ class = ""
+ }
+ view { {title}
{description}
Open {title} }
+}
diff --git a/.publish/ui/components/Chip.wrn b/.publish/ui/components/Chip.wrn
new file mode 100644
index 00000000..e42f4bf9
--- /dev/null
+++ b/.publish/ui/components/Chip.wrn
@@ -0,0 +1,8 @@
+component Chip {
+ props {
+ label = "Chip"
+ variant = "default"
+ class = ""
+ }
+ view { {label} }
+}
diff --git a/.publish/ui/components/ClickableCard.wrn b/.publish/ui/components/ClickableCard.wrn
new file mode 100644
index 00000000..02fabcef
--- /dev/null
+++ b/.publish/ui/components/ClickableCard.wrn
@@ -0,0 +1,9 @@
+component ClickableCard {
+ props {
+ title = ""
+ description = ""
+ href = ""
+ class = ""
+ }
+ view { {title}
{description}
Open {title} }
+}
diff --git a/.publish/ui/components/CloseButton.wrn b/.publish/ui/components/CloseButton.wrn
new file mode 100644
index 00000000..40406cd0
--- /dev/null
+++ b/.publish/ui/components/CloseButton.wrn
@@ -0,0 +1,9 @@
+component CloseButton {
+ props {
+ label = "Action"
+ type = "button"
+ disabled = false
+ class = ""
+ }
+ view { }
+}
diff --git a/.publish/ui/components/CodeText.wrn b/.publish/ui/components/CodeText.wrn
new file mode 100644
index 00000000..4bfbaebc
--- /dev/null
+++ b/.publish/ui/components/CodeText.wrn
@@ -0,0 +1,8 @@
+component CodeText {
+ props {
+ text = ""
+ align = "start"
+ class = ""
+ }
+ view { {text}
}
+}
diff --git a/.publish/ui/components/ComingSoonBadge.wrn b/.publish/ui/components/ComingSoonBadge.wrn
new file mode 100644
index 00000000..f28408cd
--- /dev/null
+++ b/.publish/ui/components/ComingSoonBadge.wrn
@@ -0,0 +1,8 @@
+component ComingSoonBadge {
+ props {
+ label = "ComingSoon"
+ variant = "default"
+ class = ""
+ }
+ view { {label} }
+}
diff --git a/.publish/ui/components/ConnectionCard.wrn b/.publish/ui/components/ConnectionCard.wrn
new file mode 100644
index 00000000..906931c1
--- /dev/null
+++ b/.publish/ui/components/ConnectionCard.wrn
@@ -0,0 +1,9 @@
+component ConnectionCard {
+ props {
+ title = ""
+ description = ""
+ href = ""
+ class = ""
+ }
+ view { {title}
{description}
Open {title} }
+}
diff --git a/.publish/ui/components/ContactCard.wrn b/.publish/ui/components/ContactCard.wrn
new file mode 100644
index 00000000..4e3dbeba
--- /dev/null
+++ b/.publish/ui/components/ContactCard.wrn
@@ -0,0 +1,9 @@
+component ContactCard {
+ props {
+ title = ""
+ description = ""
+ href = ""
+ class = ""
+ }
+ view { {title}
{description}
Open {title} }
+}
diff --git a/.publish/ui/components/CopyButton.wrn b/.publish/ui/components/CopyButton.wrn
new file mode 100644
index 00000000..07a68c31
--- /dev/null
+++ b/.publish/ui/components/CopyButton.wrn
@@ -0,0 +1,9 @@
+component CopyButton {
+ props {
+ label = "Action"
+ type = "button"
+ disabled = false
+ class = ""
+ }
+ view { }
+}
diff --git a/.publish/ui/components/Counter.wrn b/.publish/ui/components/Counter.wrn
new file mode 100644
index 00000000..95ef7af3
--- /dev/null
+++ b/.publish/ui/components/Counter.wrn
@@ -0,0 +1,8 @@
+component Counter {
+ props {
+ label = "Status"
+ variant = "default"
+ class = ""
+ }
+ view { {label} }
+}
diff --git a/.publish/ui/components/DangerButton.wrn b/.publish/ui/components/DangerButton.wrn
new file mode 100644
index 00000000..ec738080
--- /dev/null
+++ b/.publish/ui/components/DangerButton.wrn
@@ -0,0 +1,9 @@
+component DangerButton {
+ props {
+ label = "Action"
+ type = "button"
+ disabled = false
+ class = ""
+ }
+ view { }
+}
diff --git a/.publish/ui/components/DisplayHeading.wrn b/.publish/ui/components/DisplayHeading.wrn
new file mode 100644
index 00000000..fedf276c
--- /dev/null
+++ b/.publish/ui/components/DisplayHeading.wrn
@@ -0,0 +1,8 @@
+component DisplayHeading {
+ props {
+ text = ""
+ align = "start"
+ class = ""
+ }
+ view { {text}
}
+}
diff --git a/.publish/ui/components/DownloadButton.wrn b/.publish/ui/components/DownloadButton.wrn
new file mode 100644
index 00000000..41a3c7ab
--- /dev/null
+++ b/.publish/ui/components/DownloadButton.wrn
@@ -0,0 +1,9 @@
+component DownloadButton {
+ props {
+ label = "Action"
+ type = "button"
+ disabled = false
+ class = ""
+ }
+ view { }
+}
diff --git a/.publish/ui/components/ElevatedCard.wrn b/.publish/ui/components/ElevatedCard.wrn
new file mode 100644
index 00000000..a8ec601e
--- /dev/null
+++ b/.publish/ui/components/ElevatedCard.wrn
@@ -0,0 +1,9 @@
+component ElevatedCard {
+ props {
+ title = ""
+ description = ""
+ href = ""
+ class = ""
+ }
+ view { {title}
{description}
Open {title} }
+}
diff --git a/.publish/ui/components/ErrorCard.wrn b/.publish/ui/components/ErrorCard.wrn
new file mode 100644
index 00000000..8d80152c
--- /dev/null
+++ b/.publish/ui/components/ErrorCard.wrn
@@ -0,0 +1,9 @@
+component ErrorCard {
+ props {
+ title = ""
+ description = ""
+ href = ""
+ class = ""
+ }
+ view { {title}
{description}
Open {title} }
+}
diff --git a/.publish/ui/components/EyebrowText.wrn b/.publish/ui/components/EyebrowText.wrn
new file mode 100644
index 00000000..13120bda
--- /dev/null
+++ b/.publish/ui/components/EyebrowText.wrn
@@ -0,0 +1,8 @@
+component EyebrowText {
+ props {
+ text = ""
+ align = "start"
+ class = ""
+ }
+ view { {text}
}
+}
diff --git a/.publish/ui/components/Flex.wrn b/.publish/ui/components/Flex.wrn
new file mode 100644
index 00000000..ab47d721
--- /dev/null
+++ b/.publish/ui/components/Flex.wrn
@@ -0,0 +1,6 @@
+component Flex {
+ props {
+ class = ""
+ }
+ view {
}
+}
diff --git a/.publish/ui/components/FullBleed.wrn b/.publish/ui/components/FullBleed.wrn
new file mode 100644
index 00000000..f84b6803
--- /dev/null
+++ b/.publish/ui/components/FullBleed.wrn
@@ -0,0 +1,6 @@
+component FullBleed {
+ props {
+ class = ""
+ }
+ view {
}
+}
diff --git a/.publish/ui/components/GhostButton.wrn b/.publish/ui/components/GhostButton.wrn
new file mode 100644
index 00000000..92ee083a
--- /dev/null
+++ b/.publish/ui/components/GhostButton.wrn
@@ -0,0 +1,9 @@
+component GhostButton {
+ props {
+ label = "Action"
+ type = "button"
+ disabled = false
+ class = ""
+ }
+ view { }
+}
diff --git a/.publish/ui/components/GlassCard.wrn b/.publish/ui/components/GlassCard.wrn
new file mode 100644
index 00000000..60847bae
--- /dev/null
+++ b/.publish/ui/components/GlassCard.wrn
@@ -0,0 +1,9 @@
+component GlassCard {
+ props {
+ title = ""
+ description = ""
+ href = ""
+ class = ""
+ }
+ view { {title}
{description}
Open {title} }
+}
diff --git a/.publish/ui/components/HealthIndicator.wrn b/.publish/ui/components/HealthIndicator.wrn
new file mode 100644
index 00000000..43468c6b
--- /dev/null
+++ b/.publish/ui/components/HealthIndicator.wrn
@@ -0,0 +1,8 @@
+component HealthIndicator {
+ props {
+ label = "Health"
+ variant = "default"
+ class = ""
+ }
+ view { {label} }
+}
diff --git a/.publish/ui/components/InfoCard.wrn b/.publish/ui/components/InfoCard.wrn
new file mode 100644
index 00000000..b7e30903
--- /dev/null
+++ b/.publish/ui/components/InfoCard.wrn
@@ -0,0 +1,9 @@
+component InfoCard {
+ props {
+ title = ""
+ description = ""
+ href = ""
+ class = ""
+ }
+ view { {title}
{description}
Open {title} }
+}
diff --git a/.publish/ui/components/InlineCode.wrn b/.publish/ui/components/InlineCode.wrn
new file mode 100644
index 00000000..ea2efaa7
--- /dev/null
+++ b/.publish/ui/components/InlineCode.wrn
@@ -0,0 +1,8 @@
+component InlineCode {
+ props {
+ text = ""
+ align = "start"
+ class = ""
+ }
+ view { {text}
}
+}
diff --git a/.publish/ui/components/InsetPanel.wrn b/.publish/ui/components/InsetPanel.wrn
new file mode 100644
index 00000000..2584d3f7
--- /dev/null
+++ b/.publish/ui/components/InsetPanel.wrn
@@ -0,0 +1,6 @@
+component InsetPanel {
+ props {
+ class = ""
+ }
+ view {
}
+}
diff --git a/.publish/ui/components/IntegrationCard.wrn b/.publish/ui/components/IntegrationCard.wrn
new file mode 100644
index 00000000..ffe85722
--- /dev/null
+++ b/.publish/ui/components/IntegrationCard.wrn
@@ -0,0 +1,9 @@
+component IntegrationCard {
+ props {
+ title = ""
+ description = ""
+ href = ""
+ class = ""
+ }
+ view { {title}
{description}
Open {title} }
+}
diff --git a/.publish/ui/components/LeadText.wrn b/.publish/ui/components/LeadText.wrn
new file mode 100644
index 00000000..829c19ed
--- /dev/null
+++ b/.publish/ui/components/LeadText.wrn
@@ -0,0 +1,8 @@
+component LeadText {
+ props {
+ text = ""
+ align = "start"
+ class = ""
+ }
+ view { {text}
}
+}
diff --git a/.publish/ui/components/LinkButton.wrn b/.publish/ui/components/LinkButton.wrn
new file mode 100644
index 00000000..d389b088
--- /dev/null
+++ b/.publish/ui/components/LinkButton.wrn
@@ -0,0 +1,9 @@
+component LinkButton {
+ props {
+ label = "Action"
+ type = "button"
+ disabled = false
+ class = ""
+ }
+ view { }
+}
diff --git a/.publish/ui/components/MetricText.wrn b/.publish/ui/components/MetricText.wrn
new file mode 100644
index 00000000..5f88225a
--- /dev/null
+++ b/.publish/ui/components/MetricText.wrn
@@ -0,0 +1,8 @@
+component MetricText {
+ props {
+ text = ""
+ align = "start"
+ class = ""
+ }
+ view { {text}
}
+}
diff --git a/.publish/ui/components/MutedText.wrn b/.publish/ui/components/MutedText.wrn
new file mode 100644
index 00000000..c14a752a
--- /dev/null
+++ b/.publish/ui/components/MutedText.wrn
@@ -0,0 +1,8 @@
+component MutedText {
+ props {
+ text = ""
+ align = "start"
+ class = ""
+ }
+ view { {text}
}
+}
diff --git a/.publish/ui/components/NarrowContainer.wrn b/.publish/ui/components/NarrowContainer.wrn
new file mode 100644
index 00000000..4c56fb4e
--- /dev/null
+++ b/.publish/ui/components/NarrowContainer.wrn
@@ -0,0 +1,6 @@
+component NarrowContainer {
+ props {
+ class = ""
+ }
+ view {
}
+}
diff --git a/.publish/ui/components/NewBadge.wrn b/.publish/ui/components/NewBadge.wrn
new file mode 100644
index 00000000..3d668945
--- /dev/null
+++ b/.publish/ui/components/NewBadge.wrn
@@ -0,0 +1,8 @@
+component NewBadge {
+ props {
+ label = "New"
+ variant = "default"
+ class = ""
+ }
+ view { {label} }
+}
diff --git a/.publish/ui/components/NotificationCard.wrn b/.publish/ui/components/NotificationCard.wrn
new file mode 100644
index 00000000..be36b3ad
--- /dev/null
+++ b/.publish/ui/components/NotificationCard.wrn
@@ -0,0 +1,9 @@
+component NotificationCard {
+ props {
+ title = ""
+ description = ""
+ href = ""
+ class = ""
+ }
+ view { {title}
{description}
Open {title} }
+}
diff --git a/.publish/ui/components/NotificationDot.wrn b/.publish/ui/components/NotificationDot.wrn
new file mode 100644
index 00000000..21a6d903
--- /dev/null
+++ b/.publish/ui/components/NotificationDot.wrn
@@ -0,0 +1,8 @@
+component NotificationDot {
+ props {
+ label = "Notification"
+ variant = "default"
+ class = ""
+ }
+ view { {label} }
+}
diff --git a/.publish/ui/components/OnlineIndicator.wrn b/.publish/ui/components/OnlineIndicator.wrn
new file mode 100644
index 00000000..e8e673ed
--- /dev/null
+++ b/.publish/ui/components/OnlineIndicator.wrn
@@ -0,0 +1,8 @@
+component OnlineIndicator {
+ props {
+ label = "Online"
+ variant = "default"
+ class = ""
+ }
+ view { {label} }
+}
diff --git a/.publish/ui/components/OutlinedCard.wrn b/.publish/ui/components/OutlinedCard.wrn
new file mode 100644
index 00000000..806964bc
--- /dev/null
+++ b/.publish/ui/components/OutlinedCard.wrn
@@ -0,0 +1,9 @@
+component OutlinedCard {
+ props {
+ title = ""
+ description = ""
+ href = ""
+ class = ""
+ }
+ view { {title}
{description}
Open {title} }
+}
diff --git a/.publish/ui/components/PageHeading.wrn b/.publish/ui/components/PageHeading.wrn
new file mode 100644
index 00000000..7d6d2c65
--- /dev/null
+++ b/.publish/ui/components/PageHeading.wrn
@@ -0,0 +1,8 @@
+component PageHeading {
+ props {
+ text = ""
+ align = "start"
+ class = ""
+ }
+ view { {text}
}
+}
diff --git a/.publish/ui/components/Panel.wrn b/.publish/ui/components/Panel.wrn
new file mode 100644
index 00000000..7bc0376e
--- /dev/null
+++ b/.publish/ui/components/Panel.wrn
@@ -0,0 +1,6 @@
+component Panel {
+ props {
+ class = ""
+ }
+ view {
}
+}
diff --git a/.publish/ui/components/Pill.wrn b/.publish/ui/components/Pill.wrn
new file mode 100644
index 00000000..2acac5f8
--- /dev/null
+++ b/.publish/ui/components/Pill.wrn
@@ -0,0 +1,8 @@
+component Pill {
+ props {
+ label = "Pill"
+ variant = "default"
+ class = ""
+ }
+ view { {label} }
+}
diff --git a/.publish/ui/components/PreviewBadge.wrn b/.publish/ui/components/PreviewBadge.wrn
new file mode 100644
index 00000000..7f07d0a9
--- /dev/null
+++ b/.publish/ui/components/PreviewBadge.wrn
@@ -0,0 +1,8 @@
+component PreviewBadge {
+ props {
+ label = "Preview"
+ variant = "default"
+ class = ""
+ }
+ view { {label} }
+}
diff --git a/.publish/ui/components/PriceText.wrn b/.publish/ui/components/PriceText.wrn
new file mode 100644
index 00000000..f4c87f84
--- /dev/null
+++ b/.publish/ui/components/PriceText.wrn
@@ -0,0 +1,8 @@
+component PriceText {
+ props {
+ text = ""
+ align = "start"
+ class = ""
+ }
+ view { {text}
}
+}
diff --git a/.publish/ui/components/PrimaryButton.wrn b/.publish/ui/components/PrimaryButton.wrn
new file mode 100644
index 00000000..0fd29025
--- /dev/null
+++ b/.publish/ui/components/PrimaryButton.wrn
@@ -0,0 +1,9 @@
+component PrimaryButton {
+ props {
+ label = "Action"
+ type = "button"
+ disabled = false
+ class = ""
+ }
+ view { }
+}
diff --git a/.publish/ui/components/ProductStatusBadge.wrn b/.publish/ui/components/ProductStatusBadge.wrn
new file mode 100644
index 00000000..ae32c07c
--- /dev/null
+++ b/.publish/ui/components/ProductStatusBadge.wrn
@@ -0,0 +1,8 @@
+component ProductStatusBadge {
+ props {
+ label = "ProductStatus"
+ variant = "default"
+ class = ""
+ }
+ view { {label} }
+}
diff --git a/.publish/ui/components/ProjectCard.wrn b/.publish/ui/components/ProjectCard.wrn
new file mode 100644
index 00000000..bfd59a30
--- /dev/null
+++ b/.publish/ui/components/ProjectCard.wrn
@@ -0,0 +1,9 @@
+component ProjectCard {
+ props {
+ title = ""
+ description = ""
+ href = ""
+ class = ""
+ }
+ view { {title}
{description}
Open {title} }
+}
diff --git a/.publish/ui/components/QuoteText.wrn b/.publish/ui/components/QuoteText.wrn
new file mode 100644
index 00000000..9db342f1
--- /dev/null
+++ b/.publish/ui/components/QuoteText.wrn
@@ -0,0 +1,8 @@
+component QuoteText {
+ props {
+ text = ""
+ align = "start"
+ class = ""
+ }
+ view { {text}
}
+}
diff --git a/.publish/ui/components/ScrollArea.wrn b/.publish/ui/components/ScrollArea.wrn
new file mode 100644
index 00000000..5c5f0ce6
--- /dev/null
+++ b/.publish/ui/components/ScrollArea.wrn
@@ -0,0 +1,6 @@
+component ScrollArea {
+ props {
+ class = ""
+ }
+ view {
}
+}
diff --git a/.publish/ui/components/SecondaryButton.wrn b/.publish/ui/components/SecondaryButton.wrn
new file mode 100644
index 00000000..10d52d85
--- /dev/null
+++ b/.publish/ui/components/SecondaryButton.wrn
@@ -0,0 +1,9 @@
+component SecondaryButton {
+ props {
+ label = "Action"
+ type = "button"
+ disabled = false
+ class = ""
+ }
+ view { }
+}
diff --git a/.publish/ui/components/SectionHeading.wrn b/.publish/ui/components/SectionHeading.wrn
new file mode 100644
index 00000000..bb0466ab
--- /dev/null
+++ b/.publish/ui/components/SectionHeading.wrn
@@ -0,0 +1,8 @@
+component SectionHeading {
+ props {
+ text = ""
+ align = "start"
+ class = ""
+ }
+ view { {text}
}
+}
diff --git a/.publish/ui/components/ShareButton.wrn b/.publish/ui/components/ShareButton.wrn
new file mode 100644
index 00000000..fcab2456
--- /dev/null
+++ b/.publish/ui/components/ShareButton.wrn
@@ -0,0 +1,9 @@
+component ShareButton {
+ props {
+ label = "Action"
+ type = "button"
+ disabled = false
+ class = ""
+ }
+ view { }
+}
diff --git a/.publish/ui/components/SidebarLayout.wrn b/.publish/ui/components/SidebarLayout.wrn
new file mode 100644
index 00000000..82d8b428
--- /dev/null
+++ b/.publish/ui/components/SidebarLayout.wrn
@@ -0,0 +1,6 @@
+component SidebarLayout {
+ props {
+ class = ""
+ }
+ view { }
+}
diff --git a/.publish/ui/components/SmallText.wrn b/.publish/ui/components/SmallText.wrn
new file mode 100644
index 00000000..615ea928
--- /dev/null
+++ b/.publish/ui/components/SmallText.wrn
@@ -0,0 +1,8 @@
+component SmallText {
+ props {
+ text = ""
+ align = "start"
+ class = ""
+ }
+ view { {text}
}
+}
diff --git a/.publish/ui/components/SplitLayout.wrn b/.publish/ui/components/SplitLayout.wrn
new file mode 100644
index 00000000..05062fdd
--- /dev/null
+++ b/.publish/ui/components/SplitLayout.wrn
@@ -0,0 +1,6 @@
+component SplitLayout {
+ props {
+ class = ""
+ }
+ view {
}
+}
diff --git a/.publish/ui/components/Sticky.wrn b/.publish/ui/components/Sticky.wrn
new file mode 100644
index 00000000..729e53e1
--- /dev/null
+++ b/.publish/ui/components/Sticky.wrn
@@ -0,0 +1,6 @@
+component Sticky {
+ props {
+ class = ""
+ }
+ view {
}
+}
diff --git a/.publish/ui/components/StickyLayout.wrn b/.publish/ui/components/StickyLayout.wrn
new file mode 100644
index 00000000..9e30e02e
--- /dev/null
+++ b/.publish/ui/components/StickyLayout.wrn
@@ -0,0 +1,6 @@
+component StickyLayout {
+ props {
+ class = ""
+ }
+ view {
}
+}
diff --git a/.publish/ui/components/SubsectionHeading.wrn b/.publish/ui/components/SubsectionHeading.wrn
new file mode 100644
index 00000000..e8456826
--- /dev/null
+++ b/.publish/ui/components/SubsectionHeading.wrn
@@ -0,0 +1,8 @@
+component SubsectionHeading {
+ props {
+ text = ""
+ align = "start"
+ class = ""
+ }
+ view { {text}
}
+}
diff --git a/.publish/ui/components/SuccessCard.wrn b/.publish/ui/components/SuccessCard.wrn
new file mode 100644
index 00000000..ed7b77cb
--- /dev/null
+++ b/.publish/ui/components/SuccessCard.wrn
@@ -0,0 +1,9 @@
+component SuccessCard {
+ props {
+ title = ""
+ description = ""
+ href = ""
+ class = ""
+ }
+ view { {title}
{description}
Open {title} }
+}
diff --git a/.publish/ui/components/Surface.wrn b/.publish/ui/components/Surface.wrn
new file mode 100644
index 00000000..c12e44ce
--- /dev/null
+++ b/.publish/ui/components/Surface.wrn
@@ -0,0 +1,6 @@
+component Surface {
+ props {
+ class = ""
+ }
+ view {
}
+}
diff --git a/.publish/ui/components/TemplateCard.wrn b/.publish/ui/components/TemplateCard.wrn
new file mode 100644
index 00000000..1b39f3e1
--- /dev/null
+++ b/.publish/ui/components/TemplateCard.wrn
@@ -0,0 +1,9 @@
+component TemplateCard {
+ props {
+ title = ""
+ description = ""
+ href = ""
+ class = ""
+ }
+ view { {title}
{description}
Open {title} }
+}
diff --git a/.publish/ui/components/TertiaryButton.wrn b/.publish/ui/components/TertiaryButton.wrn
new file mode 100644
index 00000000..aa80c94b
--- /dev/null
+++ b/.publish/ui/components/TertiaryButton.wrn
@@ -0,0 +1,9 @@
+component TertiaryButton {
+ props {
+ label = "Action"
+ type = "button"
+ disabled = false
+ class = ""
+ }
+ view { }
+}
diff --git a/.publish/ui/components/UserCard.wrn b/.publish/ui/components/UserCard.wrn
new file mode 100644
index 00000000..05c685e6
--- /dev/null
+++ b/.publish/ui/components/UserCard.wrn
@@ -0,0 +1,9 @@
+component UserCard {
+ props {
+ title = ""
+ description = ""
+ href = ""
+ class = ""
+ }
+ view { {title}
{description}
Open {title} }
+}
diff --git a/.publish/ui/components/VerifiedBadge.wrn b/.publish/ui/components/VerifiedBadge.wrn
new file mode 100644
index 00000000..d9bc55fe
--- /dev/null
+++ b/.publish/ui/components/VerifiedBadge.wrn
@@ -0,0 +1,8 @@
+component VerifiedBadge {
+ props {
+ label = "Verified"
+ variant = "default"
+ class = ""
+ }
+ view { {label} }
+}
diff --git a/.publish/ui/components/WarningCard.wrn b/.publish/ui/components/WarningCard.wrn
new file mode 100644
index 00000000..6c9153b4
--- /dev/null
+++ b/.publish/ui/components/WarningCard.wrn
@@ -0,0 +1,9 @@
+component WarningCard {
+ props {
+ title = ""
+ description = ""
+ href = ""
+ class = ""
+ }
+ view { {title}
{description}
Open {title} }
+}
diff --git a/.publish/ui/components/Well.wrn b/.publish/ui/components/Well.wrn
new file mode 100644
index 00000000..dbb584d3
--- /dev/null
+++ b/.publish/ui/components/Well.wrn
@@ -0,0 +1,6 @@
+component Well {
+ props {
+ class = ""
+ }
+ view {
}
+}
diff --git a/.publish/ui/components/WideContainer.wrn b/.publish/ui/components/WideContainer.wrn
new file mode 100644
index 00000000..a9da7ff4
--- /dev/null
+++ b/.publish/ui/components/WideContainer.wrn
@@ -0,0 +1,6 @@
+component WideContainer {
+ props {
+ class = ""
+ }
+ view {
}
+}
diff --git a/.publish/ui/components/WorkspaceCard.wrn b/.publish/ui/components/WorkspaceCard.wrn
new file mode 100644
index 00000000..1b7ce09a
--- /dev/null
+++ b/.publish/ui/components/WorkspaceCard.wrn
@@ -0,0 +1,9 @@
+component WorkspaceCard {
+ props {
+ title = ""
+ description = ""
+ href = ""
+ class = ""
+ }
+ view { {title}
{description}
Open {title} }
+}
diff --git a/.publish/ui/package.json b/.publish/ui/package.json
index 8a605d48..1950c908 100644
--- a/.publish/ui/package.json
+++ b/.publish/ui/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/ui",
- "version": "0.2.54",
+ "version": "0.2.55",
"type": "module",
"description": "@wrnexus/ui — part of the WrNexus framework.",
"license": "MIT",
@@ -23,7 +23,7 @@
"./ui.css": "./ui.css"
},
"dependencies": {
- "@wrnexus/core": "^0.2.54"
+ "@wrnexus/core": "^0.2.55"
},
"files": [
"dist",
diff --git a/.publish/ui/ui.css b/.publish/ui/ui.css
index 5997650e..665bdd49 100644
--- a/.publish/ui/ui.css
+++ b/.publish/ui/ui.css
@@ -952,3 +952,149 @@
flex: 1 1 100%;
}
}
+
+/* --- Expanded foundation catalog ---------------------------------------- */
+.wire-container--narrow {
+ max-width: 44rem;
+}
+.wire-container--wide {
+ max-width: 90rem;
+}
+.wire-full-bleed {
+ width: 100vw;
+ margin-inline: calc(50% - 50vw);
+}
+.wire-flex {
+ display: flex;
+ flex-wrap: wrap;
+ gap: 1rem;
+ min-width: 0;
+}
+.wire-auto-grid {
+ display: grid;
+ grid-template-columns: repeat(auto-fit, minmax(min(100%, 16rem), 1fr));
+ gap: 1rem;
+}
+.wire-split-layout {
+ display: grid;
+ grid-template-columns: repeat(2, minmax(0, 1fr));
+ align-items: center;
+ gap: clamp(1.5rem, 5vw, 5rem);
+}
+.wire-sidebar-layout {
+ display: grid;
+ grid-template-columns: minmax(13rem, 18rem) minmax(0, 1fr);
+ gap: clamp(1rem, 4vw, 3rem);
+}
+.wire-sticky-layout {
+ position: sticky;
+ top: 1rem;
+ align-self: start;
+}
+.wire-aspect-ratio {
+ aspect-ratio: 16 / 9;
+ overflow: hidden;
+}
+.wire-panel,
+.wire-surface,
+.wire-well,
+.wire-inset-panel {
+ min-width: 0;
+ padding: clamp(1rem, 3vw, 1.5rem);
+ color: var(--wire-color-text);
+ border: 1px solid var(--wire-color-border);
+ border-radius: var(--wire-radius);
+}
+.wire-panel,
+.wire-surface {
+ background: var(--wire-color-surface);
+ box-shadow: var(--wire-shadow-1);
+}
+.wire-well,
+.wire-inset-panel {
+ background: var(--wire-color-surface-2);
+ box-shadow: inset 0 1px 2px rgb(0 0 0 / 0.06);
+}
+.wire-scroll-area {
+ max-width: 100%;
+ overflow: auto;
+ overscroll-behavior: contain;
+ scrollbar-gutter: stable;
+}
+.wire-sticky {
+ position: sticky;
+ top: 1rem;
+ z-index: 10;
+}
+.wire-muted {
+ color: var(--wire-color-muted);
+}
+.wire-catalog-card {
+ position: relative;
+ display: grid;
+ gap: 0.75rem;
+ min-width: 0;
+ padding: clamp(1rem, 3vw, 1.5rem);
+}
+.wire-catalog-card h3,
+.wire-catalog-card p {
+ margin: 0;
+}
+.wire-catalog-card p {
+ color: var(--wire-color-muted);
+ line-height: 1.6;
+}
+.wire-catalog-card__link {
+ position: absolute;
+ inset: 0;
+ border-radius: inherit;
+}
+.wire-catalog-card__link:focus-visible {
+ outline: 2px solid var(--wire-color-primary);
+ outline-offset: 3px;
+}
+.wire-catalog-card--glass {
+ background: color-mix(in srgb, var(--wire-color-surface) 80%, transparent);
+ backdrop-filter: blur(12px);
+}
+.wire-catalog-card--outlined {
+ box-shadow: none;
+}
+.wire-catalog-card--elevated {
+ box-shadow: 0 1rem 3rem rgb(0 0 0 / 0.14);
+}
+.wire-catalog-card--error {
+ border-color: var(--wire-color-danger);
+}
+.wire-catalog-card--success {
+ border-color: var(--wire-color-success);
+}
+.wire-catalog-card--warning {
+ border-color: var(--wire-color-warning);
+}
+.wire-catalog-badge {
+ min-height: 1.5rem;
+}
+.wire-catalog-badge--notificationdot,
+.wire-catalog-badge--onlineindicator,
+.wire-catalog-badge--healthindicator {
+ min-width: 0.65rem;
+ width: 0.65rem;
+ height: 0.65rem;
+ min-height: 0;
+ padding: 0;
+ overflow: hidden;
+ color: transparent;
+ border-radius: 999px;
+ background: var(--wire-color-success);
+}
+
+@media (max-width: 768px) {
+ .wire-split-layout,
+ .wire-sidebar-layout {
+ grid-template-columns: 1fr;
+ }
+ .wire-sticky-layout {
+ position: static;
+ }
+}
diff --git a/.publish/uploader/package.json b/.publish/uploader/package.json
index 5f98a498..9b81c04b 100644
--- a/.publish/uploader/package.json
+++ b/.publish/uploader/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/uploader",
- "version": "0.2.54",
+ "version": "0.2.55",
"type": "module",
"description": "@wrnexus/uploader — part of the WrNexus framework.",
"license": "MIT",
@@ -21,7 +21,7 @@
}
},
"dependencies": {
- "@wrnexus/core": "^0.2.54"
+ "@wrnexus/core": "^0.2.55"
},
"files": [
"dist"
diff --git a/.publish/validation/package.json b/.publish/validation/package.json
index e99fbff3..0bedf989 100644
--- a/.publish/validation/package.json
+++ b/.publish/validation/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/validation",
- "version": "0.2.54",
+ "version": "0.2.55",
"type": "module",
"description": "@wrnexus/validation — part of the WrNexus framework.",
"license": "MIT",
diff --git a/packages/ai/package.json b/packages/ai/package.json
index 6ee52bfc..49d770ef 100644
--- a/packages/ai/package.json
+++ b/packages/ai/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/ai",
- "version": "0.2.54",
+ "version": "0.2.55",
"private": true,
"type": "module",
"description": "Zero-dependency Claude (Anthropic) client for WrNexus apps.",
diff --git a/packages/authz/package.json b/packages/authz/package.json
index c2976287..8017def0 100644
--- a/packages/authz/package.json
+++ b/packages/authz/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/authz",
- "version": "0.2.54",
+ "version": "0.2.55",
"private": true,
"type": "module",
"main": "src/index.ts",
diff --git a/packages/cli/package.json b/packages/cli/package.json
index a1be3cd8..1789d224 100644
--- a/packages/cli/package.json
+++ b/packages/cli/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/cli",
- "version": "0.2.54",
+ "version": "0.2.55",
"type": "module",
"main": "src/index.ts",
"exports": {
diff --git a/packages/cli/src/update.ts b/packages/cli/src/update.ts
index 91f23aab..4ecd04f6 100644
--- a/packages/cli/src/update.ts
+++ b/packages/cli/src/update.ts
@@ -557,6 +557,15 @@ const MIGRATIONS: Migration[] = [
// No generated application files require automatic migration.
},
},
+ {
+ version: "0.2.55",
+ id: "expanded-ui-foundation-catalog",
+ description:
+ "Adds the expanded typography, layout, action, surface, card, and indicator catalog.",
+ apply() {
+ // No generated application files require automatic migration.
+ },
+ },
];
/** Release tooling uses this to require an explicit migration entry per version. */
diff --git a/packages/compiler/package.json b/packages/compiler/package.json
index 34f7c9c8..81db60ad 100644
--- a/packages/compiler/package.json
+++ b/packages/compiler/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/compiler",
- "version": "0.2.54",
+ "version": "0.2.55",
"type": "module",
"main": "src/index.ts",
"exports": {
diff --git a/packages/core/package.json b/packages/core/package.json
index c53763a5..bdf5d639 100644
--- a/packages/core/package.json
+++ b/packages/core/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/core",
- "version": "0.2.54",
+ "version": "0.2.55",
"type": "module",
"main": "src/index.ts",
"exports": {
diff --git a/packages/csr/package.json b/packages/csr/package.json
index e2e09e2a..0cd1d64c 100644
--- a/packages/csr/package.json
+++ b/packages/csr/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/csr",
- "version": "0.2.54",
+ "version": "0.2.55",
"type": "module",
"main": "src/index.ts",
"exports": {
diff --git a/packages/db/package.json b/packages/db/package.json
index 18218f0d..44010db9 100644
--- a/packages/db/package.json
+++ b/packages/db/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/db",
- "version": "0.2.54",
+ "version": "0.2.55",
"private": true,
"type": "module",
"main": "src/index.ts",
diff --git a/packages/dev-server/package.json b/packages/dev-server/package.json
index ff06ccbe..00789f85 100644
--- a/packages/dev-server/package.json
+++ b/packages/dev-server/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/dev-server",
- "version": "0.2.54",
+ "version": "0.2.55",
"type": "module",
"main": "src/index.ts",
"exports": {
diff --git a/packages/encryption/package.json b/packages/encryption/package.json
index f9a622e7..69032449 100644
--- a/packages/encryption/package.json
+++ b/packages/encryption/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/encryption",
- "version": "0.2.54",
+ "version": "0.2.55",
"private": true,
"type": "module",
"main": "src/index.ts",
diff --git a/packages/helpers/package.json b/packages/helpers/package.json
index 39d31e8d..07c11971 100644
--- a/packages/helpers/package.json
+++ b/packages/helpers/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/helpers",
- "version": "0.2.54",
+ "version": "0.2.55",
"private": true,
"type": "module",
"description": "Safe convenience helpers for WrNexus request contexts and common application flows.",
diff --git a/packages/i18n/package.json b/packages/i18n/package.json
index fc3bd418..52ef093a 100644
--- a/packages/i18n/package.json
+++ b/packages/i18n/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/i18n",
- "version": "0.2.54",
+ "version": "0.2.55",
"private": true,
"type": "module",
"main": "src/index.ts",
diff --git a/packages/jwt/package.json b/packages/jwt/package.json
index 9badaa03..8680fdaf 100644
--- a/packages/jwt/package.json
+++ b/packages/jwt/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/jwt",
- "version": "0.2.54",
+ "version": "0.2.55",
"private": true,
"type": "module",
"main": "src/index.ts",
diff --git a/packages/mobile/package.json b/packages/mobile/package.json
index 62d1a4c1..a5b591cb 100644
--- a/packages/mobile/package.json
+++ b/packages/mobile/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/mobile",
- "version": "0.2.54",
+ "version": "0.2.55",
"type": "module",
"main": "src/index.ts",
"exports": {
diff --git a/packages/native/package.json b/packages/native/package.json
index bcafc980..b9f905fd 100644
--- a/packages/native/package.json
+++ b/packages/native/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/native",
- "version": "0.2.54",
+ "version": "0.2.55",
"type": "module",
"main": "src/index.ts",
"exports": {
diff --git a/packages/oauth/package.json b/packages/oauth/package.json
index 9049ba10..05a560d8 100644
--- a/packages/oauth/package.json
+++ b/packages/oauth/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/oauth",
- "version": "0.2.54",
+ "version": "0.2.55",
"private": true,
"type": "module",
"main": "src/index.ts",
diff --git a/packages/pubsub/package.json b/packages/pubsub/package.json
index 6ac5b090..2553151a 100644
--- a/packages/pubsub/package.json
+++ b/packages/pubsub/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/pubsub",
- "version": "0.2.54",
+ "version": "0.2.55",
"private": true,
"type": "module",
"main": "src/index.ts",
diff --git a/packages/queue/package.json b/packages/queue/package.json
index e397b17d..8a32d23f 100644
--- a/packages/queue/package.json
+++ b/packages/queue/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/queue",
- "version": "0.2.54",
+ "version": "0.2.55",
"private": true,
"type": "module",
"main": "src/index.ts",
diff --git a/packages/reactive/package.json b/packages/reactive/package.json
index bc20781c..35323a54 100644
--- a/packages/reactive/package.json
+++ b/packages/reactive/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/reactive",
- "version": "0.2.54",
+ "version": "0.2.55",
"type": "module",
"main": "src/index.ts",
"exports": {
diff --git a/packages/router/package.json b/packages/router/package.json
index fe656a82..17bc1271 100644
--- a/packages/router/package.json
+++ b/packages/router/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/router",
- "version": "0.2.54",
+ "version": "0.2.55",
"type": "module",
"main": "src/index.ts",
"exports": {
diff --git a/packages/ssr/package.json b/packages/ssr/package.json
index 75578dca..31d9eabd 100644
--- a/packages/ssr/package.json
+++ b/packages/ssr/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/ssr",
- "version": "0.2.54",
+ "version": "0.2.55",
"type": "module",
"main": "src/index.ts",
"exports": {
diff --git a/packages/styles/package.json b/packages/styles/package.json
index 8f4970d5..68ec909f 100644
--- a/packages/styles/package.json
+++ b/packages/styles/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/styles",
- "version": "0.2.54",
+ "version": "0.2.55",
"type": "module",
"main": "src/index.ts",
"exports": {
diff --git a/packages/test/package.json b/packages/test/package.json
index 5e533845..775e7348 100644
--- a/packages/test/package.json
+++ b/packages/test/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/test",
- "version": "0.2.54",
+ "version": "0.2.55",
"private": true,
"type": "module",
"main": "src/index.ts",
diff --git a/packages/tracking/package.json b/packages/tracking/package.json
index 14df3691..71cab809 100644
--- a/packages/tracking/package.json
+++ b/packages/tracking/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/tracking",
- "version": "0.2.54",
+ "version": "0.2.55",
"private": true,
"type": "module",
"main": "src/index.ts",
diff --git a/packages/ui/components/AspectRatio.wrn b/packages/ui/components/AspectRatio.wrn
new file mode 100644
index 00000000..d6c2bf73
--- /dev/null
+++ b/packages/ui/components/AspectRatio.wrn
@@ -0,0 +1,6 @@
+component AspectRatio {
+ props {
+ class = ""
+ }
+ view {
}
+}
diff --git a/packages/ui/components/AssetCard.wrn b/packages/ui/components/AssetCard.wrn
new file mode 100644
index 00000000..f38a44ad
--- /dev/null
+++ b/packages/ui/components/AssetCard.wrn
@@ -0,0 +1,9 @@
+component AssetCard {
+ props {
+ title = ""
+ description = ""
+ href = ""
+ class = ""
+ }
+ view { {title}
{description}
Open {title} }
+}
diff --git a/packages/ui/components/AutoGrid.wrn b/packages/ui/components/AutoGrid.wrn
new file mode 100644
index 00000000..52a18909
--- /dev/null
+++ b/packages/ui/components/AutoGrid.wrn
@@ -0,0 +1,6 @@
+component AutoGrid {
+ props {
+ class = ""
+ }
+ view {
}
+}
diff --git a/packages/ui/components/BackButton.wrn b/packages/ui/components/BackButton.wrn
new file mode 100644
index 00000000..2cf2c0d5
--- /dev/null
+++ b/packages/ui/components/BackButton.wrn
@@ -0,0 +1,9 @@
+component BackButton {
+ props {
+ label = "Action"
+ type = "button"
+ disabled = false
+ class = ""
+ }
+ view { }
+}
diff --git a/packages/ui/components/BetaBadge.wrn b/packages/ui/components/BetaBadge.wrn
new file mode 100644
index 00000000..0491a276
--- /dev/null
+++ b/packages/ui/components/BetaBadge.wrn
@@ -0,0 +1,8 @@
+component BetaBadge {
+ props {
+ label = "Beta"
+ variant = "default"
+ class = ""
+ }
+ view { {label} }
+}
diff --git a/packages/ui/components/BodyText.wrn b/packages/ui/components/BodyText.wrn
new file mode 100644
index 00000000..261064c1
--- /dev/null
+++ b/packages/ui/components/BodyText.wrn
@@ -0,0 +1,8 @@
+component BodyText {
+ props {
+ text = ""
+ align = "start"
+ class = ""
+ }
+ view { {text}
}
+}
diff --git a/packages/ui/components/CampaignCard.wrn b/packages/ui/components/CampaignCard.wrn
new file mode 100644
index 00000000..20f66081
--- /dev/null
+++ b/packages/ui/components/CampaignCard.wrn
@@ -0,0 +1,9 @@
+component CampaignCard {
+ props {
+ title = ""
+ description = ""
+ href = ""
+ class = ""
+ }
+ view { {title}
{description}
Open {title} }
+}
diff --git a/packages/ui/components/ChannelCard.wrn b/packages/ui/components/ChannelCard.wrn
new file mode 100644
index 00000000..935cd108
--- /dev/null
+++ b/packages/ui/components/ChannelCard.wrn
@@ -0,0 +1,9 @@
+component ChannelCard {
+ props {
+ title = ""
+ description = ""
+ href = ""
+ class = ""
+ }
+ view { {title}
{description}
Open {title} }
+}
diff --git a/packages/ui/components/Chip.wrn b/packages/ui/components/Chip.wrn
new file mode 100644
index 00000000..e42f4bf9
--- /dev/null
+++ b/packages/ui/components/Chip.wrn
@@ -0,0 +1,8 @@
+component Chip {
+ props {
+ label = "Chip"
+ variant = "default"
+ class = ""
+ }
+ view { {label} }
+}
diff --git a/packages/ui/components/ClickableCard.wrn b/packages/ui/components/ClickableCard.wrn
new file mode 100644
index 00000000..02fabcef
--- /dev/null
+++ b/packages/ui/components/ClickableCard.wrn
@@ -0,0 +1,9 @@
+component ClickableCard {
+ props {
+ title = ""
+ description = ""
+ href = ""
+ class = ""
+ }
+ view { {title}
{description}
Open {title} }
+}
diff --git a/packages/ui/components/CloseButton.wrn b/packages/ui/components/CloseButton.wrn
new file mode 100644
index 00000000..40406cd0
--- /dev/null
+++ b/packages/ui/components/CloseButton.wrn
@@ -0,0 +1,9 @@
+component CloseButton {
+ props {
+ label = "Action"
+ type = "button"
+ disabled = false
+ class = ""
+ }
+ view { }
+}
diff --git a/packages/ui/components/CodeText.wrn b/packages/ui/components/CodeText.wrn
new file mode 100644
index 00000000..4bfbaebc
--- /dev/null
+++ b/packages/ui/components/CodeText.wrn
@@ -0,0 +1,8 @@
+component CodeText {
+ props {
+ text = ""
+ align = "start"
+ class = ""
+ }
+ view { {text}
}
+}
diff --git a/packages/ui/components/ComingSoonBadge.wrn b/packages/ui/components/ComingSoonBadge.wrn
new file mode 100644
index 00000000..f28408cd
--- /dev/null
+++ b/packages/ui/components/ComingSoonBadge.wrn
@@ -0,0 +1,8 @@
+component ComingSoonBadge {
+ props {
+ label = "ComingSoon"
+ variant = "default"
+ class = ""
+ }
+ view { {label} }
+}
diff --git a/packages/ui/components/ConnectionCard.wrn b/packages/ui/components/ConnectionCard.wrn
new file mode 100644
index 00000000..906931c1
--- /dev/null
+++ b/packages/ui/components/ConnectionCard.wrn
@@ -0,0 +1,9 @@
+component ConnectionCard {
+ props {
+ title = ""
+ description = ""
+ href = ""
+ class = ""
+ }
+ view { {title}
{description}
Open {title} }
+}
diff --git a/packages/ui/components/ContactCard.wrn b/packages/ui/components/ContactCard.wrn
new file mode 100644
index 00000000..4e3dbeba
--- /dev/null
+++ b/packages/ui/components/ContactCard.wrn
@@ -0,0 +1,9 @@
+component ContactCard {
+ props {
+ title = ""
+ description = ""
+ href = ""
+ class = ""
+ }
+ view { {title}
{description}
Open {title} }
+}
diff --git a/packages/ui/components/CopyButton.wrn b/packages/ui/components/CopyButton.wrn
new file mode 100644
index 00000000..07a68c31
--- /dev/null
+++ b/packages/ui/components/CopyButton.wrn
@@ -0,0 +1,9 @@
+component CopyButton {
+ props {
+ label = "Action"
+ type = "button"
+ disabled = false
+ class = ""
+ }
+ view { }
+}
diff --git a/packages/ui/components/Counter.wrn b/packages/ui/components/Counter.wrn
new file mode 100644
index 00000000..95ef7af3
--- /dev/null
+++ b/packages/ui/components/Counter.wrn
@@ -0,0 +1,8 @@
+component Counter {
+ props {
+ label = "Status"
+ variant = "default"
+ class = ""
+ }
+ view { {label} }
+}
diff --git a/packages/ui/components/DangerButton.wrn b/packages/ui/components/DangerButton.wrn
new file mode 100644
index 00000000..ec738080
--- /dev/null
+++ b/packages/ui/components/DangerButton.wrn
@@ -0,0 +1,9 @@
+component DangerButton {
+ props {
+ label = "Action"
+ type = "button"
+ disabled = false
+ class = ""
+ }
+ view { }
+}
diff --git a/packages/ui/components/DisplayHeading.wrn b/packages/ui/components/DisplayHeading.wrn
new file mode 100644
index 00000000..fedf276c
--- /dev/null
+++ b/packages/ui/components/DisplayHeading.wrn
@@ -0,0 +1,8 @@
+component DisplayHeading {
+ props {
+ text = ""
+ align = "start"
+ class = ""
+ }
+ view { {text}
}
+}
diff --git a/packages/ui/components/DownloadButton.wrn b/packages/ui/components/DownloadButton.wrn
new file mode 100644
index 00000000..41a3c7ab
--- /dev/null
+++ b/packages/ui/components/DownloadButton.wrn
@@ -0,0 +1,9 @@
+component DownloadButton {
+ props {
+ label = "Action"
+ type = "button"
+ disabled = false
+ class = ""
+ }
+ view { }
+}
diff --git a/packages/ui/components/ElevatedCard.wrn b/packages/ui/components/ElevatedCard.wrn
new file mode 100644
index 00000000..a8ec601e
--- /dev/null
+++ b/packages/ui/components/ElevatedCard.wrn
@@ -0,0 +1,9 @@
+component ElevatedCard {
+ props {
+ title = ""
+ description = ""
+ href = ""
+ class = ""
+ }
+ view { {title}
{description}
Open {title} }
+}
diff --git a/packages/ui/components/ErrorCard.wrn b/packages/ui/components/ErrorCard.wrn
new file mode 100644
index 00000000..8d80152c
--- /dev/null
+++ b/packages/ui/components/ErrorCard.wrn
@@ -0,0 +1,9 @@
+component ErrorCard {
+ props {
+ title = ""
+ description = ""
+ href = ""
+ class = ""
+ }
+ view { {title}
{description}
Open {title} }
+}
diff --git a/packages/ui/components/EyebrowText.wrn b/packages/ui/components/EyebrowText.wrn
new file mode 100644
index 00000000..13120bda
--- /dev/null
+++ b/packages/ui/components/EyebrowText.wrn
@@ -0,0 +1,8 @@
+component EyebrowText {
+ props {
+ text = ""
+ align = "start"
+ class = ""
+ }
+ view { {text}
}
+}
diff --git a/packages/ui/components/Flex.wrn b/packages/ui/components/Flex.wrn
new file mode 100644
index 00000000..ab47d721
--- /dev/null
+++ b/packages/ui/components/Flex.wrn
@@ -0,0 +1,6 @@
+component Flex {
+ props {
+ class = ""
+ }
+ view {
}
+}
diff --git a/packages/ui/components/FullBleed.wrn b/packages/ui/components/FullBleed.wrn
new file mode 100644
index 00000000..f84b6803
--- /dev/null
+++ b/packages/ui/components/FullBleed.wrn
@@ -0,0 +1,6 @@
+component FullBleed {
+ props {
+ class = ""
+ }
+ view {
}
+}
diff --git a/packages/ui/components/GhostButton.wrn b/packages/ui/components/GhostButton.wrn
new file mode 100644
index 00000000..92ee083a
--- /dev/null
+++ b/packages/ui/components/GhostButton.wrn
@@ -0,0 +1,9 @@
+component GhostButton {
+ props {
+ label = "Action"
+ type = "button"
+ disabled = false
+ class = ""
+ }
+ view { }
+}
diff --git a/packages/ui/components/GlassCard.wrn b/packages/ui/components/GlassCard.wrn
new file mode 100644
index 00000000..60847bae
--- /dev/null
+++ b/packages/ui/components/GlassCard.wrn
@@ -0,0 +1,9 @@
+component GlassCard {
+ props {
+ title = ""
+ description = ""
+ href = ""
+ class = ""
+ }
+ view { {title}
{description}
Open {title} }
+}
diff --git a/packages/ui/components/HealthIndicator.wrn b/packages/ui/components/HealthIndicator.wrn
new file mode 100644
index 00000000..43468c6b
--- /dev/null
+++ b/packages/ui/components/HealthIndicator.wrn
@@ -0,0 +1,8 @@
+component HealthIndicator {
+ props {
+ label = "Health"
+ variant = "default"
+ class = ""
+ }
+ view { {label} }
+}
diff --git a/packages/ui/components/InfoCard.wrn b/packages/ui/components/InfoCard.wrn
new file mode 100644
index 00000000..b7e30903
--- /dev/null
+++ b/packages/ui/components/InfoCard.wrn
@@ -0,0 +1,9 @@
+component InfoCard {
+ props {
+ title = ""
+ description = ""
+ href = ""
+ class = ""
+ }
+ view { {title}
{description}
Open {title} }
+}
diff --git a/packages/ui/components/InlineCode.wrn b/packages/ui/components/InlineCode.wrn
new file mode 100644
index 00000000..ea2efaa7
--- /dev/null
+++ b/packages/ui/components/InlineCode.wrn
@@ -0,0 +1,8 @@
+component InlineCode {
+ props {
+ text = ""
+ align = "start"
+ class = ""
+ }
+ view { {text}
}
+}
diff --git a/packages/ui/components/InsetPanel.wrn b/packages/ui/components/InsetPanel.wrn
new file mode 100644
index 00000000..2584d3f7
--- /dev/null
+++ b/packages/ui/components/InsetPanel.wrn
@@ -0,0 +1,6 @@
+component InsetPanel {
+ props {
+ class = ""
+ }
+ view {
}
+}
diff --git a/packages/ui/components/IntegrationCard.wrn b/packages/ui/components/IntegrationCard.wrn
new file mode 100644
index 00000000..ffe85722
--- /dev/null
+++ b/packages/ui/components/IntegrationCard.wrn
@@ -0,0 +1,9 @@
+component IntegrationCard {
+ props {
+ title = ""
+ description = ""
+ href = ""
+ class = ""
+ }
+ view { {title}
{description}
Open {title} }
+}
diff --git a/packages/ui/components/LeadText.wrn b/packages/ui/components/LeadText.wrn
new file mode 100644
index 00000000..829c19ed
--- /dev/null
+++ b/packages/ui/components/LeadText.wrn
@@ -0,0 +1,8 @@
+component LeadText {
+ props {
+ text = ""
+ align = "start"
+ class = ""
+ }
+ view { {text}
}
+}
diff --git a/packages/ui/components/LinkButton.wrn b/packages/ui/components/LinkButton.wrn
new file mode 100644
index 00000000..d389b088
--- /dev/null
+++ b/packages/ui/components/LinkButton.wrn
@@ -0,0 +1,9 @@
+component LinkButton {
+ props {
+ label = "Action"
+ type = "button"
+ disabled = false
+ class = ""
+ }
+ view { }
+}
diff --git a/packages/ui/components/MetricText.wrn b/packages/ui/components/MetricText.wrn
new file mode 100644
index 00000000..5f88225a
--- /dev/null
+++ b/packages/ui/components/MetricText.wrn
@@ -0,0 +1,8 @@
+component MetricText {
+ props {
+ text = ""
+ align = "start"
+ class = ""
+ }
+ view { {text}
}
+}
diff --git a/packages/ui/components/MutedText.wrn b/packages/ui/components/MutedText.wrn
new file mode 100644
index 00000000..c14a752a
--- /dev/null
+++ b/packages/ui/components/MutedText.wrn
@@ -0,0 +1,8 @@
+component MutedText {
+ props {
+ text = ""
+ align = "start"
+ class = ""
+ }
+ view { {text}
}
+}
diff --git a/packages/ui/components/NarrowContainer.wrn b/packages/ui/components/NarrowContainer.wrn
new file mode 100644
index 00000000..4c56fb4e
--- /dev/null
+++ b/packages/ui/components/NarrowContainer.wrn
@@ -0,0 +1,6 @@
+component NarrowContainer {
+ props {
+ class = ""
+ }
+ view {
}
+}
diff --git a/packages/ui/components/NewBadge.wrn b/packages/ui/components/NewBadge.wrn
new file mode 100644
index 00000000..3d668945
--- /dev/null
+++ b/packages/ui/components/NewBadge.wrn
@@ -0,0 +1,8 @@
+component NewBadge {
+ props {
+ label = "New"
+ variant = "default"
+ class = ""
+ }
+ view { {label} }
+}
diff --git a/packages/ui/components/NotificationCard.wrn b/packages/ui/components/NotificationCard.wrn
new file mode 100644
index 00000000..be36b3ad
--- /dev/null
+++ b/packages/ui/components/NotificationCard.wrn
@@ -0,0 +1,9 @@
+component NotificationCard {
+ props {
+ title = ""
+ description = ""
+ href = ""
+ class = ""
+ }
+ view { {title}
{description}
Open {title} }
+}
diff --git a/packages/ui/components/NotificationDot.wrn b/packages/ui/components/NotificationDot.wrn
new file mode 100644
index 00000000..21a6d903
--- /dev/null
+++ b/packages/ui/components/NotificationDot.wrn
@@ -0,0 +1,8 @@
+component NotificationDot {
+ props {
+ label = "Notification"
+ variant = "default"
+ class = ""
+ }
+ view { {label} }
+}
diff --git a/packages/ui/components/OnlineIndicator.wrn b/packages/ui/components/OnlineIndicator.wrn
new file mode 100644
index 00000000..e8e673ed
--- /dev/null
+++ b/packages/ui/components/OnlineIndicator.wrn
@@ -0,0 +1,8 @@
+component OnlineIndicator {
+ props {
+ label = "Online"
+ variant = "default"
+ class = ""
+ }
+ view { {label} }
+}
diff --git a/packages/ui/components/OutlinedCard.wrn b/packages/ui/components/OutlinedCard.wrn
new file mode 100644
index 00000000..806964bc
--- /dev/null
+++ b/packages/ui/components/OutlinedCard.wrn
@@ -0,0 +1,9 @@
+component OutlinedCard {
+ props {
+ title = ""
+ description = ""
+ href = ""
+ class = ""
+ }
+ view { {title}
{description}
Open {title} }
+}
diff --git a/packages/ui/components/PageHeading.wrn b/packages/ui/components/PageHeading.wrn
new file mode 100644
index 00000000..7d6d2c65
--- /dev/null
+++ b/packages/ui/components/PageHeading.wrn
@@ -0,0 +1,8 @@
+component PageHeading {
+ props {
+ text = ""
+ align = "start"
+ class = ""
+ }
+ view { {text}
}
+}
diff --git a/packages/ui/components/Panel.wrn b/packages/ui/components/Panel.wrn
new file mode 100644
index 00000000..7bc0376e
--- /dev/null
+++ b/packages/ui/components/Panel.wrn
@@ -0,0 +1,6 @@
+component Panel {
+ props {
+ class = ""
+ }
+ view {
}
+}
diff --git a/packages/ui/components/Pill.wrn b/packages/ui/components/Pill.wrn
new file mode 100644
index 00000000..2acac5f8
--- /dev/null
+++ b/packages/ui/components/Pill.wrn
@@ -0,0 +1,8 @@
+component Pill {
+ props {
+ label = "Pill"
+ variant = "default"
+ class = ""
+ }
+ view { {label} }
+}
diff --git a/packages/ui/components/PreviewBadge.wrn b/packages/ui/components/PreviewBadge.wrn
new file mode 100644
index 00000000..7f07d0a9
--- /dev/null
+++ b/packages/ui/components/PreviewBadge.wrn
@@ -0,0 +1,8 @@
+component PreviewBadge {
+ props {
+ label = "Preview"
+ variant = "default"
+ class = ""
+ }
+ view { {label} }
+}
diff --git a/packages/ui/components/PriceText.wrn b/packages/ui/components/PriceText.wrn
new file mode 100644
index 00000000..f4c87f84
--- /dev/null
+++ b/packages/ui/components/PriceText.wrn
@@ -0,0 +1,8 @@
+component PriceText {
+ props {
+ text = ""
+ align = "start"
+ class = ""
+ }
+ view { {text}
}
+}
diff --git a/packages/ui/components/PrimaryButton.wrn b/packages/ui/components/PrimaryButton.wrn
new file mode 100644
index 00000000..0fd29025
--- /dev/null
+++ b/packages/ui/components/PrimaryButton.wrn
@@ -0,0 +1,9 @@
+component PrimaryButton {
+ props {
+ label = "Action"
+ type = "button"
+ disabled = false
+ class = ""
+ }
+ view { }
+}
diff --git a/packages/ui/components/ProductStatusBadge.wrn b/packages/ui/components/ProductStatusBadge.wrn
new file mode 100644
index 00000000..ae32c07c
--- /dev/null
+++ b/packages/ui/components/ProductStatusBadge.wrn
@@ -0,0 +1,8 @@
+component ProductStatusBadge {
+ props {
+ label = "ProductStatus"
+ variant = "default"
+ class = ""
+ }
+ view { {label} }
+}
diff --git a/packages/ui/components/ProjectCard.wrn b/packages/ui/components/ProjectCard.wrn
new file mode 100644
index 00000000..bfd59a30
--- /dev/null
+++ b/packages/ui/components/ProjectCard.wrn
@@ -0,0 +1,9 @@
+component ProjectCard {
+ props {
+ title = ""
+ description = ""
+ href = ""
+ class = ""
+ }
+ view { {title}
{description}
Open {title} }
+}
diff --git a/packages/ui/components/QuoteText.wrn b/packages/ui/components/QuoteText.wrn
new file mode 100644
index 00000000..9db342f1
--- /dev/null
+++ b/packages/ui/components/QuoteText.wrn
@@ -0,0 +1,8 @@
+component QuoteText {
+ props {
+ text = ""
+ align = "start"
+ class = ""
+ }
+ view { {text}
}
+}
diff --git a/packages/ui/components/ScrollArea.wrn b/packages/ui/components/ScrollArea.wrn
new file mode 100644
index 00000000..5c5f0ce6
--- /dev/null
+++ b/packages/ui/components/ScrollArea.wrn
@@ -0,0 +1,6 @@
+component ScrollArea {
+ props {
+ class = ""
+ }
+ view {
}
+}
diff --git a/packages/ui/components/SecondaryButton.wrn b/packages/ui/components/SecondaryButton.wrn
new file mode 100644
index 00000000..10d52d85
--- /dev/null
+++ b/packages/ui/components/SecondaryButton.wrn
@@ -0,0 +1,9 @@
+component SecondaryButton {
+ props {
+ label = "Action"
+ type = "button"
+ disabled = false
+ class = ""
+ }
+ view { }
+}
diff --git a/packages/ui/components/SectionHeading.wrn b/packages/ui/components/SectionHeading.wrn
new file mode 100644
index 00000000..bb0466ab
--- /dev/null
+++ b/packages/ui/components/SectionHeading.wrn
@@ -0,0 +1,8 @@
+component SectionHeading {
+ props {
+ text = ""
+ align = "start"
+ class = ""
+ }
+ view { {text}
}
+}
diff --git a/packages/ui/components/ShareButton.wrn b/packages/ui/components/ShareButton.wrn
new file mode 100644
index 00000000..fcab2456
--- /dev/null
+++ b/packages/ui/components/ShareButton.wrn
@@ -0,0 +1,9 @@
+component ShareButton {
+ props {
+ label = "Action"
+ type = "button"
+ disabled = false
+ class = ""
+ }
+ view { }
+}
diff --git a/packages/ui/components/SidebarLayout.wrn b/packages/ui/components/SidebarLayout.wrn
new file mode 100644
index 00000000..82d8b428
--- /dev/null
+++ b/packages/ui/components/SidebarLayout.wrn
@@ -0,0 +1,6 @@
+component SidebarLayout {
+ props {
+ class = ""
+ }
+ view { }
+}
diff --git a/packages/ui/components/SmallText.wrn b/packages/ui/components/SmallText.wrn
new file mode 100644
index 00000000..615ea928
--- /dev/null
+++ b/packages/ui/components/SmallText.wrn
@@ -0,0 +1,8 @@
+component SmallText {
+ props {
+ text = ""
+ align = "start"
+ class = ""
+ }
+ view { {text}
}
+}
diff --git a/packages/ui/components/SplitLayout.wrn b/packages/ui/components/SplitLayout.wrn
new file mode 100644
index 00000000..05062fdd
--- /dev/null
+++ b/packages/ui/components/SplitLayout.wrn
@@ -0,0 +1,6 @@
+component SplitLayout {
+ props {
+ class = ""
+ }
+ view {
}
+}
diff --git a/packages/ui/components/Sticky.wrn b/packages/ui/components/Sticky.wrn
new file mode 100644
index 00000000..729e53e1
--- /dev/null
+++ b/packages/ui/components/Sticky.wrn
@@ -0,0 +1,6 @@
+component Sticky {
+ props {
+ class = ""
+ }
+ view {
}
+}
diff --git a/packages/ui/components/StickyLayout.wrn b/packages/ui/components/StickyLayout.wrn
new file mode 100644
index 00000000..9e30e02e
--- /dev/null
+++ b/packages/ui/components/StickyLayout.wrn
@@ -0,0 +1,6 @@
+component StickyLayout {
+ props {
+ class = ""
+ }
+ view {
}
+}
diff --git a/packages/ui/components/SubsectionHeading.wrn b/packages/ui/components/SubsectionHeading.wrn
new file mode 100644
index 00000000..e8456826
--- /dev/null
+++ b/packages/ui/components/SubsectionHeading.wrn
@@ -0,0 +1,8 @@
+component SubsectionHeading {
+ props {
+ text = ""
+ align = "start"
+ class = ""
+ }
+ view { {text}
}
+}
diff --git a/packages/ui/components/SuccessCard.wrn b/packages/ui/components/SuccessCard.wrn
new file mode 100644
index 00000000..ed7b77cb
--- /dev/null
+++ b/packages/ui/components/SuccessCard.wrn
@@ -0,0 +1,9 @@
+component SuccessCard {
+ props {
+ title = ""
+ description = ""
+ href = ""
+ class = ""
+ }
+ view { {title}
{description}
Open {title} }
+}
diff --git a/packages/ui/components/Surface.wrn b/packages/ui/components/Surface.wrn
new file mode 100644
index 00000000..c12e44ce
--- /dev/null
+++ b/packages/ui/components/Surface.wrn
@@ -0,0 +1,6 @@
+component Surface {
+ props {
+ class = ""
+ }
+ view {
}
+}
diff --git a/packages/ui/components/TemplateCard.wrn b/packages/ui/components/TemplateCard.wrn
new file mode 100644
index 00000000..1b39f3e1
--- /dev/null
+++ b/packages/ui/components/TemplateCard.wrn
@@ -0,0 +1,9 @@
+component TemplateCard {
+ props {
+ title = ""
+ description = ""
+ href = ""
+ class = ""
+ }
+ view { {title}
{description}
Open {title} }
+}
diff --git a/packages/ui/components/TertiaryButton.wrn b/packages/ui/components/TertiaryButton.wrn
new file mode 100644
index 00000000..aa80c94b
--- /dev/null
+++ b/packages/ui/components/TertiaryButton.wrn
@@ -0,0 +1,9 @@
+component TertiaryButton {
+ props {
+ label = "Action"
+ type = "button"
+ disabled = false
+ class = ""
+ }
+ view { }
+}
diff --git a/packages/ui/components/UserCard.wrn b/packages/ui/components/UserCard.wrn
new file mode 100644
index 00000000..05c685e6
--- /dev/null
+++ b/packages/ui/components/UserCard.wrn
@@ -0,0 +1,9 @@
+component UserCard {
+ props {
+ title = ""
+ description = ""
+ href = ""
+ class = ""
+ }
+ view { {title}
{description}
Open {title} }
+}
diff --git a/packages/ui/components/VerifiedBadge.wrn b/packages/ui/components/VerifiedBadge.wrn
new file mode 100644
index 00000000..d9bc55fe
--- /dev/null
+++ b/packages/ui/components/VerifiedBadge.wrn
@@ -0,0 +1,8 @@
+component VerifiedBadge {
+ props {
+ label = "Verified"
+ variant = "default"
+ class = ""
+ }
+ view { {label} }
+}
diff --git a/packages/ui/components/WarningCard.wrn b/packages/ui/components/WarningCard.wrn
new file mode 100644
index 00000000..6c9153b4
--- /dev/null
+++ b/packages/ui/components/WarningCard.wrn
@@ -0,0 +1,9 @@
+component WarningCard {
+ props {
+ title = ""
+ description = ""
+ href = ""
+ class = ""
+ }
+ view { {title}
{description}
Open {title} }
+}
diff --git a/packages/ui/components/Well.wrn b/packages/ui/components/Well.wrn
new file mode 100644
index 00000000..dbb584d3
--- /dev/null
+++ b/packages/ui/components/Well.wrn
@@ -0,0 +1,6 @@
+component Well {
+ props {
+ class = ""
+ }
+ view {
}
+}
diff --git a/packages/ui/components/WideContainer.wrn b/packages/ui/components/WideContainer.wrn
new file mode 100644
index 00000000..a9da7ff4
--- /dev/null
+++ b/packages/ui/components/WideContainer.wrn
@@ -0,0 +1,6 @@
+component WideContainer {
+ props {
+ class = ""
+ }
+ view {
}
+}
diff --git a/packages/ui/components/WorkspaceCard.wrn b/packages/ui/components/WorkspaceCard.wrn
new file mode 100644
index 00000000..1b7ce09a
--- /dev/null
+++ b/packages/ui/components/WorkspaceCard.wrn
@@ -0,0 +1,9 @@
+component WorkspaceCard {
+ props {
+ title = ""
+ description = ""
+ href = ""
+ class = ""
+ }
+ view { {title}
{description}
Open {title} }
+}
diff --git a/packages/ui/package.json b/packages/ui/package.json
index 24f17e58..c4d33b65 100644
--- a/packages/ui/package.json
+++ b/packages/ui/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/ui",
- "version": "0.2.54",
+ "version": "0.2.55",
"private": true,
"type": "module",
"main": "src/index.ts",
diff --git a/packages/ui/ui.css b/packages/ui/ui.css
index 5997650e..665bdd49 100644
--- a/packages/ui/ui.css
+++ b/packages/ui/ui.css
@@ -952,3 +952,149 @@
flex: 1 1 100%;
}
}
+
+/* --- Expanded foundation catalog ---------------------------------------- */
+.wire-container--narrow {
+ max-width: 44rem;
+}
+.wire-container--wide {
+ max-width: 90rem;
+}
+.wire-full-bleed {
+ width: 100vw;
+ margin-inline: calc(50% - 50vw);
+}
+.wire-flex {
+ display: flex;
+ flex-wrap: wrap;
+ gap: 1rem;
+ min-width: 0;
+}
+.wire-auto-grid {
+ display: grid;
+ grid-template-columns: repeat(auto-fit, minmax(min(100%, 16rem), 1fr));
+ gap: 1rem;
+}
+.wire-split-layout {
+ display: grid;
+ grid-template-columns: repeat(2, minmax(0, 1fr));
+ align-items: center;
+ gap: clamp(1.5rem, 5vw, 5rem);
+}
+.wire-sidebar-layout {
+ display: grid;
+ grid-template-columns: minmax(13rem, 18rem) minmax(0, 1fr);
+ gap: clamp(1rem, 4vw, 3rem);
+}
+.wire-sticky-layout {
+ position: sticky;
+ top: 1rem;
+ align-self: start;
+}
+.wire-aspect-ratio {
+ aspect-ratio: 16 / 9;
+ overflow: hidden;
+}
+.wire-panel,
+.wire-surface,
+.wire-well,
+.wire-inset-panel {
+ min-width: 0;
+ padding: clamp(1rem, 3vw, 1.5rem);
+ color: var(--wire-color-text);
+ border: 1px solid var(--wire-color-border);
+ border-radius: var(--wire-radius);
+}
+.wire-panel,
+.wire-surface {
+ background: var(--wire-color-surface);
+ box-shadow: var(--wire-shadow-1);
+}
+.wire-well,
+.wire-inset-panel {
+ background: var(--wire-color-surface-2);
+ box-shadow: inset 0 1px 2px rgb(0 0 0 / 0.06);
+}
+.wire-scroll-area {
+ max-width: 100%;
+ overflow: auto;
+ overscroll-behavior: contain;
+ scrollbar-gutter: stable;
+}
+.wire-sticky {
+ position: sticky;
+ top: 1rem;
+ z-index: 10;
+}
+.wire-muted {
+ color: var(--wire-color-muted);
+}
+.wire-catalog-card {
+ position: relative;
+ display: grid;
+ gap: 0.75rem;
+ min-width: 0;
+ padding: clamp(1rem, 3vw, 1.5rem);
+}
+.wire-catalog-card h3,
+.wire-catalog-card p {
+ margin: 0;
+}
+.wire-catalog-card p {
+ color: var(--wire-color-muted);
+ line-height: 1.6;
+}
+.wire-catalog-card__link {
+ position: absolute;
+ inset: 0;
+ border-radius: inherit;
+}
+.wire-catalog-card__link:focus-visible {
+ outline: 2px solid var(--wire-color-primary);
+ outline-offset: 3px;
+}
+.wire-catalog-card--glass {
+ background: color-mix(in srgb, var(--wire-color-surface) 80%, transparent);
+ backdrop-filter: blur(12px);
+}
+.wire-catalog-card--outlined {
+ box-shadow: none;
+}
+.wire-catalog-card--elevated {
+ box-shadow: 0 1rem 3rem rgb(0 0 0 / 0.14);
+}
+.wire-catalog-card--error {
+ border-color: var(--wire-color-danger);
+}
+.wire-catalog-card--success {
+ border-color: var(--wire-color-success);
+}
+.wire-catalog-card--warning {
+ border-color: var(--wire-color-warning);
+}
+.wire-catalog-badge {
+ min-height: 1.5rem;
+}
+.wire-catalog-badge--notificationdot,
+.wire-catalog-badge--onlineindicator,
+.wire-catalog-badge--healthindicator {
+ min-width: 0.65rem;
+ width: 0.65rem;
+ height: 0.65rem;
+ min-height: 0;
+ padding: 0;
+ overflow: hidden;
+ color: transparent;
+ border-radius: 999px;
+ background: var(--wire-color-success);
+}
+
+@media (max-width: 768px) {
+ .wire-split-layout,
+ .wire-sidebar-layout {
+ grid-template-columns: 1fr;
+ }
+ .wire-sticky-layout {
+ position: static;
+ }
+}
diff --git a/packages/uploader/package.json b/packages/uploader/package.json
index 60ce838f..ce02491b 100644
--- a/packages/uploader/package.json
+++ b/packages/uploader/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/uploader",
- "version": "0.2.54",
+ "version": "0.2.55",
"private": true,
"type": "module",
"main": "src/index.ts",
diff --git a/packages/validation/package.json b/packages/validation/package.json
index 22a50e1f..09c6d680 100644
--- a/packages/validation/package.json
+++ b/packages/validation/package.json
@@ -1,6 +1,6 @@
{
"name": "@wrnexus/validation",
- "version": "0.2.54",
+ "version": "0.2.55",
"private": true,
"type": "module",
"main": "src/index.ts",
diff --git a/scripts/generate-ui-foundation-catalog.mjs b/scripts/generate-ui-foundation-catalog.mjs
new file mode 100644
index 00000000..3a00ebfb
--- /dev/null
+++ b/scripts/generate-ui-foundation-catalog.mjs
@@ -0,0 +1,165 @@
+import { existsSync, writeFileSync } from "node:fs";
+import { join } from "node:path";
+
+const root = join(import.meta.dirname, "..", "packages", "ui", "components");
+
+const typography = {
+ DisplayHeading: "display",
+ PageHeading: "heading",
+ SectionHeading: "heading",
+ SubsectionHeading: "heading",
+ EyebrowText: "small",
+ BodyText: "body",
+ LeadText: "lead",
+ SmallText: "small",
+ MutedText: "small",
+ InlineCode: "small",
+ CodeText: "body",
+ QuoteText: "lead",
+ MetricText: "display",
+ PriceText: "display",
+};
+
+const layouts = {
+ NarrowContainer: "wire-container wire-container--narrow",
+ WideContainer: "wire-container wire-container--wide",
+ FullBleed: "wire-full-bleed",
+ Flex: "wire-flex",
+ AutoGrid: "wire-auto-grid",
+ SplitLayout: "wire-split-layout",
+ SidebarLayout: "wire-sidebar-layout",
+ StickyLayout: "wire-sticky-layout",
+ AspectRatio: "wire-aspect-ratio",
+ Panel: "wire-panel",
+ Surface: "wire-surface",
+ Well: "wire-well",
+ InsetPanel: "wire-inset-panel",
+ ScrollArea: "wire-scroll-area",
+ Sticky: "wire-sticky",
+};
+
+const buttons = {
+ PrimaryButton: "primary",
+ SecondaryButton: "default",
+ TertiaryButton: "ghost",
+ GhostButton: "ghost",
+ DangerButton: "danger",
+ LinkButton: "ghost",
+ CopyButton: "default",
+ ShareButton: "default",
+ DownloadButton: "default",
+ BackButton: "ghost",
+ CloseButton: "ghost",
+};
+
+const cards = [
+ "ClickableCard",
+ "GlassCard",
+ "OutlinedCard",
+ "ElevatedCard",
+ "InfoCard",
+ "WarningCard",
+ "SuccessCard",
+ "ErrorCard",
+ "UserCard",
+ "ContactCard",
+ "CampaignCard",
+ "ChannelCard",
+ "TemplateCard",
+ "AssetCard",
+ "IntegrationCard",
+ "ConnectionCard",
+ "WorkspaceCard",
+ "ProjectCard",
+ "NotificationCard",
+];
+
+const badges = [
+ "ProductStatusBadge",
+ "PreviewBadge",
+ "VerifiedBadge",
+ "NewBadge",
+ "BetaBadge",
+ "ComingSoonBadge",
+ "Chip",
+ "Pill",
+ "Counter",
+ "NotificationDot",
+ "OnlineIndicator",
+ "HealthIndicator",
+];
+
+function add(name, source) {
+ const file = join(root, `${name}.wrn`);
+ if (!existsSync(file)) writeFileSync(file, `${source.trim()}\n`);
+}
+
+for (const [name, variant] of Object.entries(typography)) {
+ add(
+ name,
+ `component ${name} {
+ props {
+ text = ""
+ align = "start"
+ class = ""
+ }
+ view { {text}
}
+}`,
+ );
+}
+
+for (const [name, baseClass] of Object.entries(layouts)) {
+ add(
+ name,
+ `component ${name} {
+ props {
+ class = ""
+ }
+ view {
}
+}`,
+ );
+}
+
+for (const [name, variant] of Object.entries(buttons)) {
+ add(
+ name,
+ `component ${name} {
+ props {
+ label = "Action"
+ type = "button"
+ disabled = false
+ class = ""
+ }
+ view { }
+}`,
+ );
+}
+
+for (const name of cards) {
+ add(
+ name,
+ `component ${name} {
+ props {
+ title = ""
+ description = ""
+ href = ""
+ class = ""
+ }
+ view { {title}
{description}
Open {title} }
+}`,
+ );
+}
+
+for (const name of badges) {
+ add(
+ name,
+ `component ${name} {
+ props {
+ label = "${name.replace(/Badge$|Indicator$|Dot$|Counter$/, "") || "Status"}"
+ variant = "default"
+ class = ""
+ }
+ view { {label} }
+}`,
+ );
+}
diff --git a/update-package-versions.mjs b/update-package-versions.mjs
index 8fd31352..bb50ba72 100644
--- a/update-package-versions.mjs
+++ b/update-package-versions.mjs
@@ -1,7 +1,7 @@
import { existsSync, readdirSync, readFileSync, writeFileSync } from "node:fs";
import { join } from "node:path";
-const version = "0.2.54";
+const version = "0.2.55";
const dependencyGroups = [
"dependencies",