@godxjp/ui 33.20.0 → 33.22.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (116) hide show
  1. package/README.md +4 -4
  2. package/agent/START-HERE.md +7 -7
  3. package/agent/components/AppSettingPicker.json +0 -1
  4. package/agent/components/AppShell.json +11 -1
  5. package/agent/components/BlockEditor.json +6 -1
  6. package/agent/components/Button.json +1 -1
  7. package/agent/components/CardShowcase.json +44 -0
  8. package/agent/components/CatalogCard.json +83 -0
  9. package/agent/components/CatalogDetail.json +76 -0
  10. package/agent/components/CatalogDetailSection.json +52 -0
  11. package/agent/components/CatalogDetailTag.json +27 -0
  12. package/agent/components/EditorialArticle.json +53 -0
  13. package/agent/components/EditorialAuth.json +53 -0
  14. package/agent/components/EditorialAuthCard.json +52 -0
  15. package/agent/components/EditorialBanner.json +53 -0
  16. package/agent/components/EditorialBreadcrumb.json +38 -0
  17. package/agent/components/EditorialCard.json +70 -0
  18. package/agent/components/EditorialEmptyPanel.json +57 -0
  19. package/agent/components/EditorialFilterBar.json +51 -0
  20. package/agent/components/EditorialFilterField.json +39 -0
  21. package/agent/components/EditorialFilterPanel.json +46 -0
  22. package/agent/components/EditorialFooter.json +54 -0
  23. package/agent/components/EditorialFootnote.json +36 -0
  24. package/agent/components/EditorialHero.json +52 -0
  25. package/agent/components/EditorialInlineSearch.json +54 -0
  26. package/agent/components/EditorialMasthead.json +52 -0
  27. package/agent/components/EditorialMetaBar.json +37 -0
  28. package/agent/components/EditorialPageHeader.json +73 -0
  29. package/agent/components/EditorialPanel.json +48 -0
  30. package/agent/components/EditorialPillNav.json +41 -0
  31. package/agent/components/EditorialPrompt.json +54 -0
  32. package/agent/components/EditorialSearch.json +112 -0
  33. package/agent/components/EditorialSection.json +68 -0
  34. package/agent/components/EditorialSectionHead.json +62 -0
  35. package/agent/components/EditorialStats.json +32 -0
  36. package/agent/components/EditorialTextButton.json +47 -0
  37. package/agent/components/EditorialToggleGroup.json +52 -0
  38. package/agent/components/EditorialToolbar.json +45 -0
  39. package/agent/components/Eyebrow.json +39 -0
  40. package/agent/components/HoldingCard.json +69 -0
  41. package/agent/components/HoldingCardAction.json +51 -0
  42. package/agent/components/HoldingGrid.json +37 -0
  43. package/agent/components/Markdown.json +6 -0
  44. package/agent/components/NumberInput.json +5 -0
  45. package/agent/components/PriceSummary.json +32 -0
  46. package/agent/components/SettingsLayout.json +31 -0
  47. package/agent/components/SettingsPanel.json +53 -0
  48. package/agent/components/ThemePicker.json +54 -0
  49. package/agent/components/TopbarItem.json +5 -0
  50. package/agent/components-index.json +292 -98
  51. package/agent/components.json +2059 -4
  52. package/agent/index.json +7 -7
  53. package/agent/llms.txt +8 -8
  54. package/agent/tokens.json +5640 -132
  55. package/dist/components/data-display/badge.js +4 -2
  56. package/dist/components/data-display/image.js +6 -0
  57. package/dist/components/data-entry/form-field.js +2 -2
  58. package/dist/components/data-entry/number-input.d.ts +1 -0
  59. package/dist/components/data-entry/number-input.js +8 -0
  60. package/dist/components/data-entry/select.js +24 -2
  61. package/dist/components/general/button.js +14 -1
  62. package/dist/components/general/typography.d.ts +1 -1
  63. package/dist/components/layout/app-shell.d.ts +1 -1
  64. package/dist/components/layout/app-shell.js +28 -2
  65. package/dist/components/layout/centered-shell.js +4 -0
  66. package/dist/components/layout/editorial-account.d.ts +51 -0
  67. package/dist/components/layout/editorial-account.js +466 -0
  68. package/dist/components/layout/editorial-catalog.d.ts +18 -0
  69. package/dist/components/layout/editorial-catalog.js +164 -0
  70. package/dist/components/layout/editorial.d.ts +56 -0
  71. package/dist/components/layout/editorial.js +867 -0
  72. package/dist/components/layout/index.d.ts +6 -0
  73. package/dist/components/layout/index.js +98 -0
  74. package/dist/components/layout/mobile-shell.d.ts +2 -0
  75. package/dist/components/layout/mobile-shell.js +18 -11
  76. package/dist/components/layout/responsive-grid.js +9 -1
  77. package/dist/components/layout/topbar-item.d.ts +1 -0
  78. package/dist/components/layout/topbar-item.js +2 -0
  79. package/dist/contracts/measurement.json +1 -1
  80. package/dist/lab/legal-document-shell.js +61 -51
  81. package/dist/lib/toast-clearance.js +1 -1
  82. package/dist/props/components/data-display.prop.d.ts +2 -0
  83. package/dist/props/components/data-entry.prop.d.ts +9 -0
  84. package/dist/props/components/editorial-account.prop.d.ts +249 -0
  85. package/dist/props/components/editorial-account.prop.js +0 -0
  86. package/dist/props/components/general.prop.d.ts +6 -2
  87. package/dist/props/components/layout.prop.d.ts +602 -2
  88. package/dist/props/registry.d.ts +1124 -0
  89. package/dist/props/registry.js +792 -0
  90. package/dist/styles/badge-layout.css +2 -0
  91. package/dist/styles/control.css +60 -13
  92. package/dist/styles/core.css +1 -0
  93. package/dist/styles/data-display-layout.css +9 -3
  94. package/dist/styles/editorial-account-layout.css +1130 -0
  95. package/dist/styles/focus-ring.css +33 -10
  96. package/dist/styles/form-layout.css +8 -1
  97. package/dist/styles/index.css +1 -0
  98. package/dist/styles/layers.json +248 -1
  99. package/dist/styles/layout.css +2031 -0
  100. package/dist/styles/logo-layout.css +27 -0
  101. package/dist/styles/shell-layout.css +101 -3
  102. package/dist/styles/table-layout.css +25 -13
  103. package/dist/styles/text-layout.css +6 -0
  104. package/dist/styles.css +1 -1
  105. package/dist/tokens/base.css +2 -0
  106. package/dist/tokens/components/badge.css +3 -0
  107. package/dist/tokens/components/control.css +9 -0
  108. package/dist/tokens/components/editorial-account.css +393 -0
  109. package/dist/tokens/components/editorial.css +721 -0
  110. package/dist/tokens/components/form.css +4 -0
  111. package/dist/tokens/components/logo.css +2 -0
  112. package/dist/tokens/components/shell.css +23 -0
  113. package/dist/tokens/components/table.css +1 -1
  114. package/docs/TOKENS.md +26 -0
  115. package/package.json +2 -2
  116. package/scripts/ui-audit.mjs +3 -2
@@ -71,6 +71,33 @@
71
71
  translate: 0 var(--logo-glyph-optical-offset, var(--logo-glyph-x-descender-optical-offset));
72
72
  }
73
73
 
74
+ @supports (text-box: trim-both cap alphabetic) {
75
+ .ui-logo-glyph[data-ink] {
76
+ translate: 0 var(--logo-glyph-optical-offset, 0em);
77
+ }
78
+
79
+ .ui-logo-glyph[data-ink="cap-baseline"] {
80
+ text-box: trim-both cap alphabetic;
81
+ }
82
+
83
+ .ui-logo-glyph[data-ink="cap-descender"] {
84
+ text-box: trim-both cap alphabetic;
85
+ }
86
+
87
+ .ui-logo-glyph[data-ink="x-baseline"] {
88
+ text-box: trim-both ex alphabetic;
89
+ }
90
+
91
+ .ui-logo-glyph[data-ink="x-descender"] {
92
+ text-box: trim-both ex alphabetic;
93
+ }
94
+
95
+ .ui-logo-glyph:is([data-ink="cap-descender"], [data-ink="x-descender"]) {
96
+ translate: 0
97
+ var(--logo-glyph-optical-offset, var(--logo-glyph-descender-trimmed-optical-offset));
98
+ }
99
+ }
100
+
74
101
  .ui-logo[data-size="xs"] {
75
102
  width: var(--logo-size-xs);
76
103
  height: var(--logo-size-xs);
@@ -299,10 +299,18 @@
299
299
 
300
300
  .app-footer {
301
301
  grid-area: footer;
302
+ padding-inline: var(--space-page-x);
303
+ flex-shrink: 0;
302
304
  border-top: var(--stroke-hairline) solid hsl(var(--border));
303
305
  background: hsl(var(--background));
304
306
  }
305
307
 
308
+ @media (max-width: 720px) {
309
+ .app-footer {
310
+ padding-inline: var(--space-page-compact-x);
311
+ }
312
+ }
313
+
306
314
  .app-main .ui-page-container {
307
315
  width: 100%;
308
316
  }
@@ -713,6 +721,31 @@
713
721
  color: hsl(var(--muted-foreground));
714
722
  }
715
723
 
724
+ .ui-centered-shell {
725
+ --centered-shell-page-ink: var(--foreground);
726
+ --centered-shell-page-canvas: var(--background);
727
+ }
728
+
729
+ .ui-centered-shell-footer[data-tone="inverse"] {
730
+ --foreground: var(
731
+ --centered-shell-footer-inverse-foreground,
732
+ var(--centered-shell-page-canvas)
733
+ );
734
+ --muted-foreground: var(
735
+ --centered-shell-footer-inverse-muted-foreground,
736
+ var(--centered-shell-page-canvas)
737
+ );
738
+ --border: var(--centered-shell-footer-inverse-border, var(--centered-shell-page-canvas));
739
+ --text-link: var(--centered-shell-footer-inverse-link-color, var(--centered-shell-page-canvas));
740
+ --ring: var(--centered-shell-footer-inverse-link-color, var(--centered-shell-page-canvas));
741
+ --focus-ring-color: var(--ring);
742
+ background: hsl(
743
+ var(--centered-shell-footer-inverse-background, var(--centered-shell-page-ink))
744
+ );
745
+ color: hsl(var(--foreground));
746
+ border-top-color: transparent;
747
+ }
748
+
716
749
  @media (max-width: 720px) {
717
750
  .ui-centered-shell-bar {
718
751
  padding-inline: var(--centered-shell-bar-padding-x-compact);
@@ -760,7 +793,7 @@
760
793
  }
761
794
 
762
795
  .app-topbar-logo,
763
- .app-topbar-logo > a {
796
+ .app-topbar-logo > a:not(.ui-logo) {
764
797
  display: flex;
765
798
  align-items: center;
766
799
  }
@@ -2367,6 +2400,12 @@
2367
2400
  color: hsl(var(--topbar-item-hover-color, var(--accent-foreground)));
2368
2401
  }
2369
2402
 
2403
+ .ui-topbar-item[aria-current="page"] {
2404
+ color: hsl(var(--topbar-item-current-color, var(--foreground)));
2405
+ box-shadow: inset 0 calc(-1 * var(--topbar-item-current-indicator-size))
2406
+ hsl(var(--topbar-item-current-indicator-color, var(--primary)));
2407
+ }
2408
+
2370
2409
  .ui-topbar-item:disabled,
2371
2410
  .ui-topbar-item[data-disabled] {
2372
2411
  opacity: var(--disabled-opacity);
@@ -2731,6 +2770,10 @@
2731
2770
  }
2732
2771
 
2733
2772
  .ui-mobile-shell-tabbar {
2773
+ --control-height: var(--mobile-shell-control-height);
2774
+ --control-height-sm: calc(var(--control-height) - calc(0.25rem * var(--scaling)));
2775
+ --control-height-lg: calc(var(--control-height) + calc(0.25rem * var(--scaling)));
2776
+ --control-height-xs: calc(var(--control-height) - calc(0.5rem * var(--scaling)));
2734
2777
  display: flex;
2735
2778
  min-block-size: calc(
2736
2779
  var(--mobile-shell-tab-bar-height) + var(--mobile-shell-safe-inset-block-end)
@@ -2739,15 +2782,23 @@
2739
2782
  flex: 0 0 auto;
2740
2783
  padding-block-end: var(--mobile-shell-safe-inset-block-end);
2741
2784
  padding-inline: var(--mobile-shell-safe-inset-inline);
2742
- border-block-start: var(--stroke-hairline) solid hsl(var(--border));
2743
- background: hsl(var(--card) / var(--card-alpha, 100%));
2785
+ border-block-start: var(--mobile-shell-tab-bar-border);
2786
+ background: var(--mobile-shell-tab-bar-background, hsl(var(--card) / var(--card-alpha, 100%)));
2744
2787
  }
2745
2788
 
2746
2789
  .ui-mobile-shell-tabbar > * {
2790
+ block-size: auto;
2791
+ min-block-size: var(--mobile-shell-control-height);
2747
2792
  min-inline-size: 0;
2748
2793
  flex: 1 1 0;
2749
2794
  }
2750
2795
 
2796
+ .ui-mobile-shell-tabbar > [aria-current="page"] {
2797
+ color: var(--mobile-shell-tab-bar-active-color, hsl(var(--text-brand, var(--primary))));
2798
+ background: var(--mobile-shell-tab-bar-active-background, hsl(var(--accent)));
2799
+ font-weight: var(--font-weight-medium);
2800
+ }
2801
+
2751
2802
  .ui-mobile-shell-actions:last-child {
2752
2803
  padding-block-end: calc(
2753
2804
  var(--mobile-shell-actions-padding-block) + var(--mobile-shell-safe-inset-block-end)
@@ -2828,6 +2879,7 @@
2828
2879
  }
2829
2880
  .app-root[data-responsive-navigation]
2830
2881
  > :is(.app-sidebar, .app-topbar, .app-nav-rail, .app-footer),
2882
+ .app-root > .app-main > .app-footer,
2831
2883
  .app-breadcrumb,
2832
2884
  .app-mobile-nav-drawer {
2833
2885
  display: none;
@@ -2843,3 +2895,49 @@
2843
2895
  }
2844
2896
  }
2845
2897
  }
2898
+
2899
+ @layer components {
2900
+ .app-root[data-mobile-tab-bar] {
2901
+ position: relative;
2902
+
2903
+ padding-block-end: var(
2904
+ --app-shell-mobile-tab-bar-block-size,
2905
+ calc(var(--mobile-shell-tab-bar-height) + var(--mobile-shell-safe-inset-block-end))
2906
+ );
2907
+ }
2908
+
2909
+ .app-root[data-mobile-tab-bar] > .app-main > .ui-page-container {
2910
+ flex-shrink: 0;
2911
+ }
2912
+ .app-mobile-tab-bar {
2913
+ position: absolute;
2914
+ inset-inline: 0;
2915
+ inset-block-end: 0;
2916
+ }
2917
+ @media (width > 56.25rem) {
2918
+ .app-root[data-mobile-tab-bar] {
2919
+ padding-block-end: 0;
2920
+ }
2921
+ .app-mobile-tab-bar {
2922
+ display: none;
2923
+ }
2924
+ }
2925
+ }
2926
+
2927
+ @layer components {
2928
+ @media print {
2929
+ .app-root[data-mobile-tab-bar] {
2930
+ padding-block-end: 0;
2931
+ }
2932
+ .ui-mobile-shell-tabbar {
2933
+ display: none;
2934
+ }
2935
+ }
2936
+ }
2937
+
2938
+ @layer godxjp-ui-responsive {
2939
+ .ui-mobile-shell-tabbar > * {
2940
+ block-size: auto;
2941
+ align-self: stretch;
2942
+ }
2943
+ }
@@ -3,7 +3,7 @@
3
3
  @layer components {
4
4
 
5
5
  [data-slot="table"] {
6
- font-size: var(--table-font-size);
6
+ font-size: var(--table-font-size, var(--font-size-sm, var(--font-size-base)));
7
7
  line-height: var(--table-line-height);
8
8
  }
9
9
 
@@ -892,7 +892,7 @@
892
892
  --table-row-height: var(--table-action-collection-row-height-compact);
893
893
  --table-cell-space-x: var(--table-action-collection-cell-space-x-compact);
894
894
  --table-cell-padding-y: var(--table-action-collection-cell-padding-y-compact);
895
- font-size: var(--table-action-collection-font-size-compact);
895
+ font-size: var(--table-font-size, var(--table-action-collection-font-size-compact));
896
896
 
897
897
  min-inline-size: max(
898
898
  var(--table-action-collection-min-inline-size-compact),
@@ -934,7 +934,7 @@
934
934
  --table-row-height: var(--table-action-collection-row-height-compact);
935
935
  --table-cell-space-x: var(--table-action-collection-cell-space-x-compact);
936
936
  --table-cell-padding-y: var(--table-action-collection-cell-padding-y-compact);
937
- font-size: var(--table-action-collection-font-size-compact);
937
+ font-size: var(--table-font-size, var(--table-action-collection-font-size-compact));
938
938
 
939
939
  min-inline-size: max(
940
940
  var(--table-action-collection-min-inline-size-compact),
@@ -976,7 +976,7 @@
976
976
  --table-row-height: var(--table-action-collection-row-height-compact);
977
977
  --table-cell-space-x: var(--table-action-collection-cell-space-x-compact);
978
978
  --table-cell-padding-y: var(--table-action-collection-cell-padding-y-compact);
979
- font-size: var(--table-action-collection-font-size-compact);
979
+ font-size: var(--table-font-size, var(--table-action-collection-font-size-compact));
980
980
 
981
981
  min-inline-size: max(
982
982
  var(--table-action-collection-min-inline-size-compact),
@@ -1018,7 +1018,7 @@
1018
1018
  --table-row-height: var(--table-action-collection-row-height-compact);
1019
1019
  --table-cell-space-x: var(--table-action-collection-cell-space-x-compact);
1020
1020
  --table-cell-padding-y: var(--table-action-collection-cell-padding-y-compact);
1021
- font-size: var(--table-action-collection-font-size-compact);
1021
+ font-size: var(--table-font-size, var(--table-action-collection-font-size-compact));
1022
1022
 
1023
1023
  min-inline-size: max(
1024
1024
  var(--table-action-collection-min-inline-size-compact),
@@ -1072,8 +1072,11 @@
1072
1072
 
1073
1073
  height: auto;
1074
1074
 
1075
- border: 0;
1076
- border-block-end: var(--stroke-hairline) solid hsl(var(--border));
1075
+ border-inline: 0;
1076
+ border-block-start: 0;
1077
+ border-block-end-width: var(--table-row-border-width, var(--stroke-hairline));
1078
+ border-block-end-style: solid;
1079
+ border-block-end-color: hsl(var(--border));
1077
1080
  border-radius: 0;
1078
1081
  padding: var(--table-stacked-collection-card-padding-y)
1079
1082
  var(--table-stacked-collection-card-padding-x, var(--card-space-inset));
@@ -1136,8 +1139,11 @@
1136
1139
 
1137
1140
  height: auto;
1138
1141
 
1139
- border: 0;
1140
- border-block-end: var(--stroke-hairline) solid hsl(var(--border));
1142
+ border-inline: 0;
1143
+ border-block-start: 0;
1144
+ border-block-end-width: var(--table-row-border-width, var(--stroke-hairline));
1145
+ border-block-end-style: solid;
1146
+ border-block-end-color: hsl(var(--border));
1141
1147
  border-radius: 0;
1142
1148
  padding: var(--table-stacked-collection-card-padding-y)
1143
1149
  var(--table-stacked-collection-card-padding-x, var(--card-space-inset));
@@ -1198,8 +1204,11 @@
1198
1204
 
1199
1205
  height: auto;
1200
1206
 
1201
- border: 0;
1202
- border-block-end: var(--stroke-hairline) solid hsl(var(--border));
1207
+ border-inline: 0;
1208
+ border-block-start: 0;
1209
+ border-block-end-width: var(--table-row-border-width, var(--stroke-hairline));
1210
+ border-block-end-style: solid;
1211
+ border-block-end-color: hsl(var(--border));
1203
1212
  border-radius: 0;
1204
1213
  padding: var(--table-stacked-collection-card-padding-y)
1205
1214
  var(--table-stacked-collection-card-padding-x, var(--card-space-inset));
@@ -1260,8 +1269,11 @@
1260
1269
 
1261
1270
  height: auto;
1262
1271
 
1263
- border: 0;
1264
- border-block-end: var(--stroke-hairline) solid hsl(var(--border));
1272
+ border-inline: 0;
1273
+ border-block-start: 0;
1274
+ border-block-end-width: var(--table-row-border-width, var(--stroke-hairline));
1275
+ border-block-end-style: solid;
1276
+ border-block-end-color: hsl(var(--border));
1265
1277
  border-radius: 0;
1266
1278
  padding: var(--table-stacked-collection-card-padding-y)
1267
1279
  var(--table-stacked-collection-card-padding-x, var(--card-space-inset));
@@ -5,6 +5,12 @@
5
5
  margin: 0;
6
6
  }
7
7
 
8
+ [data-slot="text"][data-size="inherit"] {
9
+ font-size: inherit;
10
+ line-height: inherit;
11
+ letter-spacing: inherit;
12
+ }
13
+
8
14
  [data-slot="text"][data-size="2xs"] {
9
15
  font-size: var(
10
16
  --font-size-2xs,