@hanzo/ui 8.0.63 → 8.0.64

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.
package/README.md CHANGED
@@ -119,7 +119,7 @@ registerField('rating', { Display: MyStars, Input: MyStarPicker })
119
119
  ```tsx
120
120
  import { Hanzo } from '@hanzo/ui'
121
121
 
122
- <Hanzo analytics={{ product: 'console', ingestKey: process.env.NEXT_PUBLIC_EVENT_INGEST_KEY }}>
122
+ <Hanzo analytics={{ product: 'console', ingestKey: process.env.NEXT_PUBLIC_PUBLISHABLE_KEY }}>
123
123
  <App />
124
124
  </Hanzo>
125
125
  ```
@@ -183,8 +183,8 @@ in **both** directions, because that is what explicit means. Beyond that:
183
183
 
184
184
  `ingestKey` is a publishable `pk-…` — write-only, safe in a bundle, minted per
185
185
  org with `POST /v1/keys {"type":"publishable"}`. Omit it and the client reads
186
- `NEXT_PUBLIC_EVENT_INGEST_KEY` from the build env, which is the spelling the
187
- fleet already carries end to end (KMS holds `deploy/EVENT_INGEST_KEY`; the
186
+ `NEXT_PUBLIC_PUBLISHABLE_KEY` from the build env, which is the spelling the
187
+ fleet already carries end to end (KMS holds `deploy/PUBLISHABLE_KEY`; the
188
188
  Dockerfile takes it as a build-arg and re-exports it with the `NEXT_PUBLIC_`
189
189
  prefix Next needs to inline it). A surface with no key reports only for whoever
190
190
  is signed in and silently drops every logged-out visitor — the door refuses an
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.config = void 0;
3
+ exports.monochrome = exports.config = void 0;
4
4
  const v5_1 = require("@hanzogui/config/v5");
5
5
  const gui_1 = require("@hanzo/gui");
6
6
  // ─────────────────────────────────────────────────────────────────────────────
@@ -224,9 +224,10 @@ const themes = Object.fromEntries(Object.entries(v5_1.defaultConfig.themes).map(
224
224
  : ringed,
225
225
  ];
226
226
  }));
227
- exports.config = (0, gui_1.createGui)({
227
+ // Everything except the theme table, which is the one thing the two configs
228
+ // below disagree about. Stated once so they cannot drift on radius or fonts.
229
+ const base = {
228
230
  ...v5_1.defaultConfig,
229
- themes,
230
231
  tokens: {
231
232
  ...v5_1.defaultConfig.tokens,
232
233
  radius: RADIUS,
@@ -243,5 +244,37 @@ exports.config = (0, gui_1.createGui)({
243
244
  // token, not a silent no-op, so it is defined.
244
245
  mono: { ...v5_1.defaultConfig.fonts.body, family: GEIST_MONO, size: FONT_SIZE, lineHeight: LINE_HEIGHT },
245
246
  },
246
- });
247
+ };
248
+ exports.config = (0, gui_1.createGui)({ ...base, themes });
247
249
  exports.default = exports.config;
250
+ /**
251
+ * The eight chromatic families. Everything else a sub-theme name can carry —
252
+ * `accent`, `black`, `white`, `gray`, `neutral`, `surface1`, `surface2` — is a
253
+ * position on the greyscale, so it survives into the monochrome table below.
254
+ *
255
+ * Derived from the segment, never from a substring: `dark_teal_Button` is
256
+ * chromatic because one of its segments IS `teal`, while a future
257
+ * `dark_tealish` or a component called `Red` is not caught by accident.
258
+ */
259
+ const CHROMA = new Set(['blue', 'green', 'orange', 'pink', 'purple', 'red', 'teal', 'yellow']);
260
+ const chromatic = (name) => name.split('_').slice(1).some((s) => CHROMA.has(s));
261
+ /**
262
+ * The same system with the chromatic sub-themes omitted — 150 themes instead of
263
+ * 390, and 62% less theme table.
264
+ *
265
+ * A gui theme table is DATA that ships: it cannot be tree-shaken, because a
266
+ * theme is selected by string at runtime. So a surface that renders no colour
267
+ * still pays for every hue. The browser extension's new-tab page is monochrome
268
+ * by design and loads on every single tab, and 240 themes it can never activate
269
+ * were the difference between it fitting its bundle budget and not.
270
+ *
271
+ * This is NOT a second design system. It is the same `config` with rows
272
+ * removed, from the same scale, so nothing here can drift from `config` — only
273
+ * be absent from it. Reach for it when a surface genuinely renders no hue;
274
+ * anything that does must use `config`, because a missing theme falls back
275
+ * silently rather than failing.
276
+ */
277
+ exports.monochrome = (0, gui_1.createGui)({
278
+ ...base,
279
+ themes: Object.fromEntries(Object.entries(themes).filter(([name]) => !chromatic(name))),
280
+ });
@@ -766,5 +766,788 @@ export declare const config: import("@hanzogui/web").GuiInternalConfig<{
766
766
  styleCompat: "web";
767
767
  }, "default">;
768
768
  export default config;
769
+ /**
770
+ * The same system with the chromatic sub-themes omitted — 150 themes instead of
771
+ * 390, and 62% less theme table.
772
+ *
773
+ * A gui theme table is DATA that ships: it cannot be tree-shaken, because a
774
+ * theme is selected by string at runtime. So a surface that renders no colour
775
+ * still pays for every hue. The browser extension's new-tab page is monochrome
776
+ * by design and loads on every single tab, and 240 themes it can never activate
777
+ * were the difference between it fitting its bundle budget and not.
778
+ *
779
+ * This is NOT a second design system. It is the same `config` with rows
780
+ * removed, from the same scale, so nothing here can drift from `config` — only
781
+ * be absent from it. Reach for it when a surface genuinely renders no hue;
782
+ * anything that does must use `config`, because a missing theme falls back
783
+ * silently rather than failing.
784
+ */
785
+ export declare const monochrome: import("@hanzogui/web").GuiInternalConfig<{
786
+ radius: {
787
+ readonly 0: 0;
788
+ readonly 1: 6;
789
+ readonly 2: 6;
790
+ readonly 3: 8;
791
+ readonly 4: 8;
792
+ readonly 5: 12;
793
+ readonly 6: 12;
794
+ readonly 7: 12;
795
+ readonly 8: 12;
796
+ readonly 9: 12;
797
+ readonly 10: 9999;
798
+ readonly 11: 9999;
799
+ readonly 12: 9999;
800
+ readonly true: 8;
801
+ };
802
+ space: Record<string, number>;
803
+ zIndex: {
804
+ 0: number;
805
+ 1: number;
806
+ 2: number;
807
+ 3: number;
808
+ 4: number;
809
+ 5: number;
810
+ };
811
+ size: {
812
+ $0: number;
813
+ "$0.25": number;
814
+ "$0.5": number;
815
+ "$0.75": number;
816
+ $1: number;
817
+ "$1.5": number;
818
+ $2: number;
819
+ "$2.5": number;
820
+ $3: number;
821
+ "$3.5": number;
822
+ $4: number;
823
+ $true: number;
824
+ "$4.5": number;
825
+ $5: number;
826
+ $6: number;
827
+ $7: number;
828
+ $8: number;
829
+ $9: number;
830
+ $10: number;
831
+ $11: number;
832
+ $12: number;
833
+ $13: number;
834
+ $14: number;
835
+ $15: number;
836
+ $16: number;
837
+ $17: number;
838
+ $18: number;
839
+ $19: number;
840
+ $20: number;
841
+ };
842
+ }, import("@hanzogui/config/v5").V5Themes, {
843
+ text: "textAlign";
844
+ b: "bottom";
845
+ bg: "backgroundColor";
846
+ content: "alignContent";
847
+ grow: "flexGrow";
848
+ items: "alignItems";
849
+ justify: "justifyContent";
850
+ l: "left";
851
+ m: "margin";
852
+ maxH: "maxHeight";
853
+ maxW: "maxWidth";
854
+ mb: "marginBottom";
855
+ minH: "minHeight";
856
+ minW: "minWidth";
857
+ ml: "marginLeft";
858
+ mr: "marginRight";
859
+ mt: "marginTop";
860
+ mx: "marginHorizontal";
861
+ my: "marginVertical";
862
+ p: "padding";
863
+ pb: "paddingBottom";
864
+ pl: "paddingLeft";
865
+ pr: "paddingRight";
866
+ pt: "paddingTop";
867
+ px: "paddingHorizontal";
868
+ py: "paddingVertical";
869
+ r: "right";
870
+ rounded: "borderRadius";
871
+ select: "userSelect";
872
+ self: "alignSelf";
873
+ shrink: "flexShrink";
874
+ t: "top";
875
+ z: "zIndex";
876
+ }, {
877
+ readonly touchable: {
878
+ pointer: string;
879
+ };
880
+ readonly hoverable: {
881
+ hover: string;
882
+ };
883
+ readonly 'max-xxl': {
884
+ readonly maxWidth: number;
885
+ };
886
+ readonly 'max-xl': {
887
+ readonly maxWidth: number;
888
+ };
889
+ readonly 'max-lg': {
890
+ readonly maxWidth: number;
891
+ };
892
+ readonly 'max-md': {
893
+ readonly maxWidth: number;
894
+ };
895
+ readonly 'max-sm': {
896
+ readonly maxWidth: number;
897
+ };
898
+ readonly 'max-xs': {
899
+ readonly maxWidth: number;
900
+ };
901
+ readonly 'max-xxs': {
902
+ readonly maxWidth: number;
903
+ };
904
+ readonly 'max-xxxs': {
905
+ readonly maxWidth: number;
906
+ };
907
+ readonly 'max-200': {
908
+ readonly maxWidth: number;
909
+ };
910
+ readonly 'max-100': {
911
+ readonly maxWidth: number;
912
+ };
913
+ readonly xxxs: {
914
+ readonly minWidth: number;
915
+ };
916
+ readonly xxs: {
917
+ readonly minWidth: number;
918
+ };
919
+ readonly xs: {
920
+ readonly minWidth: number;
921
+ };
922
+ readonly sm: {
923
+ readonly minWidth: number;
924
+ };
925
+ readonly md: {
926
+ readonly minWidth: number;
927
+ };
928
+ readonly lg: {
929
+ readonly minWidth: number;
930
+ };
931
+ readonly xl: {
932
+ readonly minWidth: number;
933
+ };
934
+ readonly xxl: {
935
+ readonly minWidth: number;
936
+ };
937
+ readonly 'max-height-lg': {
938
+ readonly maxHeight: number;
939
+ };
940
+ readonly 'max-height-md': {
941
+ readonly maxHeight: number;
942
+ };
943
+ readonly 'max-height-sm': {
944
+ readonly maxHeight: number;
945
+ };
946
+ readonly 'max-height-xs': {
947
+ readonly maxHeight: number;
948
+ };
949
+ readonly 'max-height-xxs': {
950
+ readonly maxHeight: number;
951
+ };
952
+ readonly 'max-height-xxxs': {
953
+ readonly maxHeight: number;
954
+ };
955
+ readonly 'max-height-200': {
956
+ readonly maxHeight: number;
957
+ };
958
+ readonly 'max-height-100': {
959
+ readonly maxHeight: number;
960
+ };
961
+ readonly 'height-sm': {
962
+ readonly minHeight: number;
963
+ };
964
+ readonly 'height-md': {
965
+ readonly minHeight: number;
966
+ };
967
+ readonly 'height-lg': {
968
+ readonly minHeight: number;
969
+ };
970
+ }, {}, {
971
+ body: {
972
+ family: string;
973
+ size: {
974
+ readonly 1: 11;
975
+ readonly 2: 13;
976
+ readonly 3: 14;
977
+ readonly 4: 15;
978
+ readonly 5: 15;
979
+ readonly 6: 17;
980
+ readonly 7: 21;
981
+ readonly 8: 26;
982
+ readonly 9: 26;
983
+ readonly 10: 32;
984
+ readonly 11: 40;
985
+ readonly 12: 48;
986
+ readonly 13: 56;
987
+ readonly 14: 64;
988
+ readonly 15: 80;
989
+ readonly 16: 96;
990
+ readonly true: 14;
991
+ };
992
+ lineHeight: {
993
+ readonly 1: 16;
994
+ readonly 2: 18;
995
+ readonly 3: 20;
996
+ readonly 4: 22;
997
+ readonly 5: 22;
998
+ readonly 6: 24;
999
+ readonly 7: 28;
1000
+ readonly 8: 32;
1001
+ readonly 9: 32;
1002
+ readonly 10: 38;
1003
+ readonly 11: 46;
1004
+ readonly 12: 54;
1005
+ readonly 13: 62;
1006
+ readonly 14: 70;
1007
+ readonly 15: 86;
1008
+ readonly 16: 102;
1009
+ readonly true: 20;
1010
+ };
1011
+ weight: {
1012
+ 1: any;
1013
+ 5: any;
1014
+ 7: any;
1015
+ 12: any;
1016
+ 2: any;
1017
+ 3: any;
1018
+ 16: any;
1019
+ 4: any;
1020
+ 6: any;
1021
+ true: any;
1022
+ 10: any;
1023
+ 8: any;
1024
+ 11: any;
1025
+ 9: any;
1026
+ 15: any;
1027
+ 14: any;
1028
+ 13: any;
1029
+ };
1030
+ letterSpacing: {
1031
+ 1: any;
1032
+ 5: any;
1033
+ 7: any;
1034
+ 12: any;
1035
+ 2: any;
1036
+ 3: any;
1037
+ 16: any;
1038
+ 4: any;
1039
+ 6: any;
1040
+ true: any;
1041
+ 10: any;
1042
+ 8: any;
1043
+ 11: any;
1044
+ 9: any;
1045
+ 15: any;
1046
+ 14: any;
1047
+ 13: any;
1048
+ };
1049
+ style: {
1050
+ 1: any;
1051
+ 5: any;
1052
+ 7: any;
1053
+ 12: any;
1054
+ 2: any;
1055
+ 3: any;
1056
+ 16: any;
1057
+ 4: any;
1058
+ 6: any;
1059
+ true: any;
1060
+ 10: any;
1061
+ 8: any;
1062
+ 11: any;
1063
+ 9: any;
1064
+ 15: any;
1065
+ 14: any;
1066
+ 13: any;
1067
+ };
1068
+ transform: {
1069
+ 1: any;
1070
+ 5: any;
1071
+ 7: any;
1072
+ 12: any;
1073
+ 2: any;
1074
+ 3: any;
1075
+ 16: any;
1076
+ 4: any;
1077
+ 6: any;
1078
+ true: any;
1079
+ 10: any;
1080
+ 8: any;
1081
+ 11: any;
1082
+ 9: any;
1083
+ 15: any;
1084
+ 14: any;
1085
+ 13: any;
1086
+ };
1087
+ color: {
1088
+ 1: any;
1089
+ 5: any;
1090
+ 7: any;
1091
+ 12: any;
1092
+ 2: any;
1093
+ 3: any;
1094
+ 16: any;
1095
+ 4: any;
1096
+ 6: any;
1097
+ true: any;
1098
+ 10: any;
1099
+ 8: any;
1100
+ 11: any;
1101
+ 9: any;
1102
+ 15: any;
1103
+ 14: any;
1104
+ 13: any;
1105
+ };
1106
+ face: Partial<Partial<{
1107
+ bold: {
1108
+ normal?: string;
1109
+ italic?: string;
1110
+ };
1111
+ normal: {
1112
+ normal?: string;
1113
+ italic?: string;
1114
+ };
1115
+ 100: {
1116
+ normal?: string;
1117
+ italic?: string;
1118
+ };
1119
+ 500: {
1120
+ normal?: string;
1121
+ italic?: string;
1122
+ };
1123
+ 700: {
1124
+ normal?: string;
1125
+ italic?: string;
1126
+ };
1127
+ 200: {
1128
+ normal?: string;
1129
+ italic?: string;
1130
+ };
1131
+ 300: {
1132
+ normal?: string;
1133
+ italic?: string;
1134
+ };
1135
+ 400: {
1136
+ normal?: string;
1137
+ italic?: string;
1138
+ };
1139
+ 600: {
1140
+ normal?: string;
1141
+ italic?: string;
1142
+ };
1143
+ 800: {
1144
+ normal?: string;
1145
+ italic?: string;
1146
+ };
1147
+ 900: {
1148
+ normal?: string;
1149
+ italic?: string;
1150
+ };
1151
+ }> | undefined>;
1152
+ };
1153
+ heading: {
1154
+ family: string;
1155
+ size: {
1156
+ readonly 1: 11;
1157
+ readonly 2: 13;
1158
+ readonly 3: 14;
1159
+ readonly 4: 15;
1160
+ readonly 5: 15;
1161
+ readonly 6: 17;
1162
+ readonly 7: 21;
1163
+ readonly 8: 26;
1164
+ readonly 9: 26;
1165
+ readonly 10: 32;
1166
+ readonly 11: 40;
1167
+ readonly 12: 48;
1168
+ readonly 13: 56;
1169
+ readonly 14: 64;
1170
+ readonly 15: 80;
1171
+ readonly 16: 96;
1172
+ readonly true: 14;
1173
+ };
1174
+ lineHeight: {
1175
+ readonly 1: 16;
1176
+ readonly 2: 18;
1177
+ readonly 3: 20;
1178
+ readonly 4: 22;
1179
+ readonly 5: 22;
1180
+ readonly 6: 24;
1181
+ readonly 7: 28;
1182
+ readonly 8: 32;
1183
+ readonly 9: 32;
1184
+ readonly 10: 38;
1185
+ readonly 11: 46;
1186
+ readonly 12: 54;
1187
+ readonly 13: 62;
1188
+ readonly 14: 70;
1189
+ readonly 15: 86;
1190
+ readonly 16: 102;
1191
+ readonly true: 20;
1192
+ };
1193
+ weight: {
1194
+ 1: any;
1195
+ 5: any;
1196
+ 7: any;
1197
+ 12: any;
1198
+ 2: any;
1199
+ 3: any;
1200
+ 16: any;
1201
+ 4: any;
1202
+ 6: any;
1203
+ true: any;
1204
+ 10: any;
1205
+ 8: any;
1206
+ 11: any;
1207
+ 9: any;
1208
+ 15: any;
1209
+ 14: any;
1210
+ 13: any;
1211
+ };
1212
+ letterSpacing: {
1213
+ 1: any;
1214
+ 5: any;
1215
+ 7: any;
1216
+ 12: any;
1217
+ 2: any;
1218
+ 3: any;
1219
+ 16: any;
1220
+ 4: any;
1221
+ 6: any;
1222
+ true: any;
1223
+ 10: any;
1224
+ 8: any;
1225
+ 11: any;
1226
+ 9: any;
1227
+ 15: any;
1228
+ 14: any;
1229
+ 13: any;
1230
+ };
1231
+ style: {
1232
+ 1: any;
1233
+ 5: any;
1234
+ 7: any;
1235
+ 12: any;
1236
+ 2: any;
1237
+ 3: any;
1238
+ 16: any;
1239
+ 4: any;
1240
+ 6: any;
1241
+ true: any;
1242
+ 10: any;
1243
+ 8: any;
1244
+ 11: any;
1245
+ 9: any;
1246
+ 15: any;
1247
+ 14: any;
1248
+ 13: any;
1249
+ };
1250
+ transform: {
1251
+ 1: any;
1252
+ 5: any;
1253
+ 7: any;
1254
+ 12: any;
1255
+ 2: any;
1256
+ 3: any;
1257
+ 16: any;
1258
+ 4: any;
1259
+ 6: any;
1260
+ true: any;
1261
+ 10: any;
1262
+ 8: any;
1263
+ 11: any;
1264
+ 9: any;
1265
+ 15: any;
1266
+ 14: any;
1267
+ 13: any;
1268
+ };
1269
+ color: {
1270
+ 1: any;
1271
+ 5: any;
1272
+ 7: any;
1273
+ 12: any;
1274
+ 2: any;
1275
+ 3: any;
1276
+ 16: any;
1277
+ 4: any;
1278
+ 6: any;
1279
+ true: any;
1280
+ 10: any;
1281
+ 8: any;
1282
+ 11: any;
1283
+ 9: any;
1284
+ 15: any;
1285
+ 14: any;
1286
+ 13: any;
1287
+ };
1288
+ face: Partial<Partial<{
1289
+ bold: {
1290
+ normal?: string;
1291
+ italic?: string;
1292
+ };
1293
+ normal: {
1294
+ normal?: string;
1295
+ italic?: string;
1296
+ };
1297
+ 100: {
1298
+ normal?: string;
1299
+ italic?: string;
1300
+ };
1301
+ 500: {
1302
+ normal?: string;
1303
+ italic?: string;
1304
+ };
1305
+ 700: {
1306
+ normal?: string;
1307
+ italic?: string;
1308
+ };
1309
+ 200: {
1310
+ normal?: string;
1311
+ italic?: string;
1312
+ };
1313
+ 300: {
1314
+ normal?: string;
1315
+ italic?: string;
1316
+ };
1317
+ 400: {
1318
+ normal?: string;
1319
+ italic?: string;
1320
+ };
1321
+ 600: {
1322
+ normal?: string;
1323
+ italic?: string;
1324
+ };
1325
+ 800: {
1326
+ normal?: string;
1327
+ italic?: string;
1328
+ };
1329
+ 900: {
1330
+ normal?: string;
1331
+ italic?: string;
1332
+ };
1333
+ }> | undefined>;
1334
+ };
1335
+ mono: {
1336
+ family: string;
1337
+ size: {
1338
+ readonly 1: 11;
1339
+ readonly 2: 13;
1340
+ readonly 3: 14;
1341
+ readonly 4: 15;
1342
+ readonly 5: 15;
1343
+ readonly 6: 17;
1344
+ readonly 7: 21;
1345
+ readonly 8: 26;
1346
+ readonly 9: 26;
1347
+ readonly 10: 32;
1348
+ readonly 11: 40;
1349
+ readonly 12: 48;
1350
+ readonly 13: 56;
1351
+ readonly 14: 64;
1352
+ readonly 15: 80;
1353
+ readonly 16: 96;
1354
+ readonly true: 14;
1355
+ };
1356
+ lineHeight: {
1357
+ readonly 1: 16;
1358
+ readonly 2: 18;
1359
+ readonly 3: 20;
1360
+ readonly 4: 22;
1361
+ readonly 5: 22;
1362
+ readonly 6: 24;
1363
+ readonly 7: 28;
1364
+ readonly 8: 32;
1365
+ readonly 9: 32;
1366
+ readonly 10: 38;
1367
+ readonly 11: 46;
1368
+ readonly 12: 54;
1369
+ readonly 13: 62;
1370
+ readonly 14: 70;
1371
+ readonly 15: 86;
1372
+ readonly 16: 102;
1373
+ readonly true: 20;
1374
+ };
1375
+ weight: {
1376
+ 1: any;
1377
+ 5: any;
1378
+ 7: any;
1379
+ 12: any;
1380
+ 2: any;
1381
+ 3: any;
1382
+ 16: any;
1383
+ 4: any;
1384
+ 6: any;
1385
+ true: any;
1386
+ 10: any;
1387
+ 8: any;
1388
+ 11: any;
1389
+ 9: any;
1390
+ 15: any;
1391
+ 14: any;
1392
+ 13: any;
1393
+ };
1394
+ letterSpacing: {
1395
+ 1: any;
1396
+ 5: any;
1397
+ 7: any;
1398
+ 12: any;
1399
+ 2: any;
1400
+ 3: any;
1401
+ 16: any;
1402
+ 4: any;
1403
+ 6: any;
1404
+ true: any;
1405
+ 10: any;
1406
+ 8: any;
1407
+ 11: any;
1408
+ 9: any;
1409
+ 15: any;
1410
+ 14: any;
1411
+ 13: any;
1412
+ };
1413
+ style: {
1414
+ 1: any;
1415
+ 5: any;
1416
+ 7: any;
1417
+ 12: any;
1418
+ 2: any;
1419
+ 3: any;
1420
+ 16: any;
1421
+ 4: any;
1422
+ 6: any;
1423
+ true: any;
1424
+ 10: any;
1425
+ 8: any;
1426
+ 11: any;
1427
+ 9: any;
1428
+ 15: any;
1429
+ 14: any;
1430
+ 13: any;
1431
+ };
1432
+ transform: {
1433
+ 1: any;
1434
+ 5: any;
1435
+ 7: any;
1436
+ 12: any;
1437
+ 2: any;
1438
+ 3: any;
1439
+ 16: any;
1440
+ 4: any;
1441
+ 6: any;
1442
+ true: any;
1443
+ 10: any;
1444
+ 8: any;
1445
+ 11: any;
1446
+ 9: any;
1447
+ 15: any;
1448
+ 14: any;
1449
+ 13: any;
1450
+ };
1451
+ color: {
1452
+ 1: any;
1453
+ 5: any;
1454
+ 7: any;
1455
+ 12: any;
1456
+ 2: any;
1457
+ 3: any;
1458
+ 16: any;
1459
+ 4: any;
1460
+ 6: any;
1461
+ true: any;
1462
+ 10: any;
1463
+ 8: any;
1464
+ 11: any;
1465
+ 9: any;
1466
+ 15: any;
1467
+ 14: any;
1468
+ 13: any;
1469
+ };
1470
+ face: Partial<Partial<{
1471
+ bold: {
1472
+ normal?: string;
1473
+ italic?: string;
1474
+ };
1475
+ normal: {
1476
+ normal?: string;
1477
+ italic?: string;
1478
+ };
1479
+ 100: {
1480
+ normal?: string;
1481
+ italic?: string;
1482
+ };
1483
+ 500: {
1484
+ normal?: string;
1485
+ italic?: string;
1486
+ };
1487
+ 700: {
1488
+ normal?: string;
1489
+ italic?: string;
1490
+ };
1491
+ 200: {
1492
+ normal?: string;
1493
+ italic?: string;
1494
+ };
1495
+ 300: {
1496
+ normal?: string;
1497
+ italic?: string;
1498
+ };
1499
+ 400: {
1500
+ normal?: string;
1501
+ italic?: string;
1502
+ };
1503
+ 600: {
1504
+ normal?: string;
1505
+ italic?: string;
1506
+ };
1507
+ 800: {
1508
+ normal?: string;
1509
+ italic?: string;
1510
+ };
1511
+ 900: {
1512
+ normal?: string;
1513
+ italic?: string;
1514
+ };
1515
+ }> | undefined>;
1516
+ };
1517
+ }, {
1518
+ mediaQueryDefaultActive: {
1519
+ touchable: boolean;
1520
+ hoverable: boolean;
1521
+ "max-xxl": boolean;
1522
+ "max-xl": boolean;
1523
+ "max-lg": boolean;
1524
+ "max-md": boolean;
1525
+ "max-sm": boolean;
1526
+ "max-xs": boolean;
1527
+ "max-xxs": boolean;
1528
+ "max-xxxs": boolean;
1529
+ xxxs: boolean;
1530
+ xxs: boolean;
1531
+ xs: boolean;
1532
+ sm: boolean;
1533
+ md: boolean;
1534
+ lg: boolean;
1535
+ xl: boolean;
1536
+ xxl: boolean;
1537
+ "max-height-sm": boolean;
1538
+ "max-height-md": boolean;
1539
+ "max-height-lg": boolean;
1540
+ "height-sm": boolean;
1541
+ "height-md": boolean;
1542
+ "height-lg": boolean;
1543
+ };
1544
+ defaultFont: string;
1545
+ fastSchemeChange: true;
1546
+ shouldAddPrefersColorThemes: true;
1547
+ allowedStyleValues: "somewhat-strict-web";
1548
+ addThemeClassName: "html";
1549
+ onlyAllowShorthands: true;
1550
+ styleCompat: "web";
1551
+ }, "default">;
769
1552
  export type Conf = typeof config;
770
1553
  //# sourceMappingURL=gui-config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"gui-config.d.ts","sourceRoot":"","sources":["../src/gui-config.ts"],"names":[],"mappings":"AA6OA,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;aAmBjB,CAAA;AAEF,eAAe,MAAM,CAAA;AAErB,MAAM,MAAM,IAAI,GAAG,OAAO,MAAM,CAAA"}
1
+ {"version":3,"file":"gui-config.d.ts","sourceRoot":"","sources":["../src/gui-config.ts"],"names":[],"mappings":"AAmQA,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;aAAiC,CAAA;AAEpD,eAAe,MAAM,CAAA;AAerB;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;aAKrB,CAAA;AAEF,MAAM,MAAM,IAAI,GAAG,OAAO,MAAM,CAAA"}
@@ -221,9 +221,10 @@ const themes = Object.fromEntries(Object.entries(defaultConfig.themes).map(([nam
221
221
  : ringed,
222
222
  ];
223
223
  }));
224
- export const config = createGui({
224
+ // Everything except the theme table, which is the one thing the two configs
225
+ // below disagree about. Stated once so they cannot drift on radius or fonts.
226
+ const base = {
225
227
  ...defaultConfig,
226
- themes,
227
228
  tokens: {
228
229
  ...defaultConfig.tokens,
229
230
  radius: RADIUS,
@@ -240,6 +241,38 @@ export const config = createGui({
240
241
  // token, not a silent no-op, so it is defined.
241
242
  mono: { ...defaultConfig.fonts.body, family: GEIST_MONO, size: FONT_SIZE, lineHeight: LINE_HEIGHT },
242
243
  },
243
- });
244
+ };
245
+ export const config = createGui({ ...base, themes });
244
246
  export default config;
247
+ /**
248
+ * The eight chromatic families. Everything else a sub-theme name can carry —
249
+ * `accent`, `black`, `white`, `gray`, `neutral`, `surface1`, `surface2` — is a
250
+ * position on the greyscale, so it survives into the monochrome table below.
251
+ *
252
+ * Derived from the segment, never from a substring: `dark_teal_Button` is
253
+ * chromatic because one of its segments IS `teal`, while a future
254
+ * `dark_tealish` or a component called `Red` is not caught by accident.
255
+ */
256
+ const CHROMA = new Set(['blue', 'green', 'orange', 'pink', 'purple', 'red', 'teal', 'yellow']);
257
+ const chromatic = (name) => name.split('_').slice(1).some((s) => CHROMA.has(s));
258
+ /**
259
+ * The same system with the chromatic sub-themes omitted — 150 themes instead of
260
+ * 390, and 62% less theme table.
261
+ *
262
+ * A gui theme table is DATA that ships: it cannot be tree-shaken, because a
263
+ * theme is selected by string at runtime. So a surface that renders no colour
264
+ * still pays for every hue. The browser extension's new-tab page is monochrome
265
+ * by design and loads on every single tab, and 240 themes it can never activate
266
+ * were the difference between it fitting its bundle budget and not.
267
+ *
268
+ * This is NOT a second design system. It is the same `config` with rows
269
+ * removed, from the same scale, so nothing here can drift from `config` — only
270
+ * be absent from it. Reach for it when a surface genuinely renders no hue;
271
+ * anything that does must use `config`, because a missing theme falls back
272
+ * silently rather than failing.
273
+ */
274
+ export const monochrome = createGui({
275
+ ...base,
276
+ themes: Object.fromEntries(Object.entries(themes).filter(([name]) => !chromatic(name))),
277
+ });
245
278
  //# sourceMappingURL=gui-config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"gui-config.js","sourceRoot":"","sources":["../src/gui-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAEtC,gFAAgF;AAChF,6EAA6E;AAC7E,EAAE;AACF,iFAAiF;AACjF,mFAAmF;AACnF,iFAAiF;AACjF,6DAA6D;AAC7D,EAAE;AACF,0EAA0E;AAC1E,6EAA6E;AAC7E,+EAA+E;AAC/E,2EAA2E;AAC3E,gFAAgF;AAChF,6CAA6C;AAC7C,EAAE;AACF,6EAA6E;AAC7E,+EAA+E;AAC/E,oEAAoE;AACpE,gFAAgF;AAChF,gFAAgF;AAChF,4EAA4E;AAC5E,EAAE;AACF,6EAA6E;AAC7E,4EAA4E;AAC5E,cAAc;AACd,gFAAgF;AAEhF,MAAM,KAAK,GAAG,+CAA+C,CAAA;AAE7D;;;yCAGyC;AACzC,MAAM,UAAU,GAAG,wEAAwE,CAAA;AAE3F;;;8EAG8E;AAC9E,MAAM,SAAS,GAAG;IAChB,CAAC,EAAE,EAAE;IACL,CAAC,EAAE,EAAE;IACL,CAAC,EAAE,EAAE;IACL,CAAC,EAAE,EAAE;IACL,CAAC,EAAE,EAAE;IACL,CAAC,EAAE,EAAE;IACL,CAAC,EAAE,EAAE;IACL,CAAC,EAAE,EAAE;IACL,CAAC,EAAE,EAAE;IACL,EAAE,EAAE,EAAE;IACN,EAAE,EAAE,EAAE;IACN,EAAE,EAAE,EAAE;IACN,EAAE,EAAE,EAAE;IACN,EAAE,EAAE,EAAE;IACN,EAAE,EAAE,EAAE;IACN,EAAE,EAAE,EAAE;IACN,IAAI,EAAE,EAAE;CACA,CAAA;AAEV;;+DAE+D;AAC/D,MAAM,WAAW,GAAG;IAClB,CAAC,EAAE,EAAE;IACL,CAAC,EAAE,EAAE;IACL,CAAC,EAAE,EAAE;IACL,CAAC,EAAE,EAAE;IACL,CAAC,EAAE,EAAE;IACL,CAAC,EAAE,EAAE;IACL,CAAC,EAAE,EAAE;IACL,CAAC,EAAE,EAAE;IACL,CAAC,EAAE,EAAE;IACL,EAAE,EAAE,EAAE;IACN,EAAE,EAAE,EAAE;IACN,EAAE,EAAE,EAAE;IACN,EAAE,EAAE,EAAE;IACN,EAAE,EAAE,EAAE;IACN,EAAE,EAAE,EAAE;IACN,EAAE,EAAE,GAAG;IACP,IAAI,EAAE,EAAE;CACA,CAAA;AAEV;;;0EAG0E;AAC1E,MAAM,MAAM,GAAG;IACb,CAAC,EAAE,CAAC;IACJ,CAAC,EAAE,CAAC;IACJ,CAAC,EAAE,CAAC;IACJ,CAAC,EAAE,CAAC;IACJ,CAAC,EAAE,CAAC;IACJ,CAAC,EAAE,EAAE;IACL,CAAC,EAAE,EAAE;IACL,CAAC,EAAE,EAAE;IACL,CAAC,EAAE,EAAE;IACL,CAAC,EAAE,EAAE;IACL,EAAE,EAAE,IAAI;IACR,EAAE,EAAE,IAAI;IACR,EAAE,EAAE,IAAI;IACR,IAAI,EAAE,CAAC;CACC,CAAA;AAEV;;;iDAGiD;AACjD,MAAM,IAAI,GAA2B;IACnC,GAAG,EAAE,CAAC;IACN,MAAM,EAAE,CAAC;IACT,KAAK,EAAE,CAAC;IACR,MAAM,EAAE,CAAC;IACT,GAAG,EAAE,CAAC;IACN,KAAK,EAAE,CAAC;IACR,GAAG,EAAE,CAAC;IACN,KAAK,EAAE,EAAE;IACT,GAAG,EAAE,EAAE;IACP,KAAK,EAAE,EAAE;IACT,GAAG,EAAE,EAAE;IACP,KAAK,EAAE,EAAE;IACT,GAAG,EAAE,EAAE;IACP,GAAG,EAAE,EAAE;IACP,GAAG,EAAE,EAAE;IACP,GAAG,EAAE,EAAE;IACP,GAAG,EAAE,EAAE;IACP,IAAI,EAAE,EAAE;IACR,IAAI,EAAE,EAAE;IACR,IAAI,EAAE,EAAE;IACR,IAAI,EAAE,GAAG;IACT,IAAI,EAAE,GAAG;IACT,IAAI,EAAE,GAAG;IACT,IAAI,EAAE,GAAG;IACT,IAAI,EAAE,GAAG;IACT,IAAI,EAAE,GAAG;IACT,IAAI,EAAE,GAAG;IACT,IAAI,EAAE,GAAG;CACV,CAAA;AAED,MAAM,KAAK,GAA2B,EAAE,CAAA;AACxC,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;IAC1C,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAA;IAClB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAA;AACrB,CAAC;AACD,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAA;AACvB,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AAE3B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AACH,MAAM,IAAI,GAAG,EAAE,IAAI,EAAE,wBAAwB,EAAE,KAAK,EAAE,kBAAkB,EAAW,CAAA;AACnF,MAAM,KAAK,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAW,CAAA;AAC5D,MAAM,IAAI,GAAG,EAAE,IAAI,EAAE,wBAAwB,EAAE,KAAK,EAAE,iBAAiB,EAAW,CAAA;AAElF;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,MAAM,GAAG,CAAC,IAAY,EAAoB,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA;AAEhG,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAC/B,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE;IACzD,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAA;IACtB,MAAM,MAAM,GAAG,EAAE,GAAG,KAAK,EAAE,YAAY,EAAE,eAAe,IAAI,CAAC,CAAC,CAAC,GAAG,EAAE,CAAA;IACpE,OAAO;QACL,IAAI;QACJ,IAAI,KAAK,CAAC;YACR,CAAC,CAAC;gBACE,GAAG,MAAM;gBACT,MAAM,EAAE,iBAAiB,IAAI,CAAC,CAAC,CAAC,GAAG;gBACnC,WAAW,EAAE,iBAAiB,IAAI,CAAC,CAAC,CAAC,GAAG;gBACxC,OAAO,EAAE,qBAAqB,KAAK,CAAC,CAAC,CAAC,GAAG;aAC1C;YACH,CAAC,CAAC,MAAM;KACX,CAAA;AACH,CAAC,CAAC,CAC4B,CAAA;AAEhC,MAAM,CAAC,MAAM,MAAM,GAAG,SAAS,CAAC;IAC9B,GAAG,aAAa;IAChB,MAAM;IACN,MAAM,EAAE;QACN,GAAG,aAAa,CAAC,MAAM;QACvB,MAAM,EAAE,MAAM;QACd,KAAK;KACN;IACD,KAAK,EAAE;QACL,GAAG,aAAa,CAAC,KAAK;QACtB,IAAI,EAAE,EAAE,GAAG,aAAa,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE;QAC9F,OAAO,EAAE,EAAE,GAAG,aAAa,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE;QACpG,2EAA2E;QAC3E,0EAA0E;QAC1E,4EAA4E;QAC5E,4EAA4E;QAC5E,+CAA+C;QAC/C,IAAI,EAAE,EAAE,GAAG,aAAa,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE;KACpG;CACF,CAAC,CAAA;AAEF,eAAe,MAAM,CAAA"}
1
+ {"version":3,"file":"gui-config.js","sourceRoot":"","sources":["../src/gui-config.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hanzo/ui",
3
- "version": "8.0.63",
3
+ "version": "8.0.64",
4
4
  "type": "module",
5
5
  "description": "Hanzo UI — the one canonical Hanzo component library, on @hanzo/gui + @hanzo/design. ONE substrate: every component renders through @hanzo/gui primitives, so the same import works on web, native (expo) and desktop (Tauri). Self-contained (theme.css), presentational, host-agnostic, clean-room.",
6
6
  "exports": {