@exponential_app/eui 0.2.0 → 0.3.0

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 (69) hide show
  1. package/catalog/a11y.json +15 -1
  2. package/catalog/core.catalog.json +142 -0
  3. package/catalog/core.schema.json +198 -1
  4. package/catalog/host.json +10 -0
  5. package/catalog/macros.json +541 -1
  6. package/catalog/recipes.json +2 -2
  7. package/catalog/strings.json +5 -0
  8. package/catalog/theme.schema.json +2066 -212
  9. package/conformance/manifest.json +5 -5
  10. package/dist/chunks/{index-gtk2gwsb.js → index-4z7f2bp1.js} +160 -33
  11. package/dist/chunks/{index-gtk2gwsb.js.map → index-4z7f2bp1.js.map} +6 -5
  12. package/dist/chunks/{index-5fmaa0xq.js → index-abcjanhc.js} +629 -3
  13. package/dist/chunks/{index-5fmaa0xq.js.map → index-abcjanhc.js.map} +2 -2
  14. package/dist/chunks/{index-62yzr94z.js → index-dx45asrf.js} +99 -3
  15. package/dist/chunks/{index-62yzr94z.js.map → index-dx45asrf.js.map} +2 -2
  16. package/dist/chunks/{index-bg2jsgjq.js → index-h3zgfghf.js} +304 -6
  17. package/dist/chunks/{index-bg2jsgjq.js.map → index-h3zgfghf.js.map} +2 -2
  18. package/dist/conformance.js +7901 -614
  19. package/dist/conformance.js.map +2 -2
  20. package/dist/entries/prompt.js +2 -2
  21. package/dist/entries/schema.js +2 -2
  22. package/dist/host/index.js +20 -4
  23. package/dist/host/index.js.map +1 -1
  24. package/dist/index.js +46 -5
  25. package/dist/index.js.map +4 -3
  26. package/dist/types/src/catalog.generated.d.ts +23 -3
  27. package/dist/types/src/host/contract.d.ts +17 -0
  28. package/dist/types/src/host/exposes.d.ts +68 -0
  29. package/dist/types/src/host/index.d.ts +1 -0
  30. package/dist/types/src/host/package.d.ts +8 -0
  31. package/dist/types/src/index.d.ts +1 -0
  32. package/dist/types/src/text-clusters.d.ts +11 -0
  33. package/dist/types/src/web/primitives/carousel.d.ts +17 -0
  34. package/dist/types/src/web/primitives/index.d.ts +3 -0
  35. package/dist/types/src/web/primitives/mosaic.d.ts +30 -0
  36. package/dist/types/src/web/primitives/outline.d.ts +22 -0
  37. package/dist/web/index.js +8 -2
  38. package/dist/web/index.js.map +4 -4
  39. package/dist/web/primitives/index.js +59 -1
  40. package/dist/web/primitives/index.js.map +6 -3
  41. package/docs/components.generated.json +150 -1
  42. package/docs/package-format.md +56 -1
  43. package/docs/round-6-contract.md +108 -0
  44. package/docs/themes.generated.json +39 -2
  45. package/fixtures/bind-time.json +1464 -0
  46. package/fixtures/catalog-components.json +96 -0
  47. package/fixtures/catalog-macros.json +1159 -48
  48. package/fixtures/conformance-baseline.json +46073 -44448
  49. package/fixtures/conformance-known.json +76 -64
  50. package/fixtures/host-router.json +539 -1
  51. package/fixtures/kitchen-sink.expanded.json +614 -1
  52. package/fixtures/kitchen-sink.json +69 -1
  53. package/fixtures/primitive-specimens.json +3 -0
  54. package/fixtures/prompt-budget.json +14 -14
  55. package/fixtures/specimens.json +122 -0
  56. package/fixtures/text-clusters.json +65 -0
  57. package/fixtures/theme-recipes.json +4617 -1691
  58. package/fixtures/theme-resolved.json +1154 -2
  59. package/generated/ExponentialUICatalog.generated.kt +13 -13
  60. package/generated/ExponentialUICatalog.generated.swift +13 -13
  61. package/generated/ExponentialUIThemes.generated.kt +7 -7
  62. package/generated/ExponentialUIThemes.generated.swift +7 -7
  63. package/generated/catalog.descriptions.generated.rs +1 -1
  64. package/generated/catalog.generated.rs +18 -18
  65. package/generated/catalog.themes.generated.rs +8 -8
  66. package/generated/core.descriptions.json +96 -0
  67. package/generated/core.runtime.json +86 -0
  68. package/package.json +1 -1
  69. package/themes/neutral.theme.json +288 -0
@@ -4,10 +4,10 @@ import {
4
4
  CORE_LITE_CATALOG_ID2,
5
5
  catalogView2,
6
6
  isOffered2
7
- } from "../chunks/index-5fmaa0xq.js";
7
+ } from "../chunks/index-abcjanhc.js";
8
8
  import {
9
9
  describeCatalog2
10
- } from "../chunks/index-62yzr94z.js";
10
+ } from "../chunks/index-dx45asrf.js";
11
11
 
12
12
  // packages/exponential-ui/src/prompt.ts
13
13
  var PROMPT_SECTIONS = [`rules`, `components`, `index`, `shapes`, `functions`, `style`, `extensions`];
@@ -2,10 +2,10 @@ import {
2
2
  coreCatalog2,
3
3
  TOKEN_GROUPS2,
4
4
  catalogView2
5
- } from "../chunks/index-5fmaa0xq.js";
5
+ } from "../chunks/index-abcjanhc.js";
6
6
  import {
7
7
  describeCatalog2
8
- } from "../chunks/index-62yzr94z.js";
8
+ } from "../chunks/index-dx45asrf.js";
9
9
  import {
10
10
  style_default
11
11
  } from "../chunks/index-fy7y2nz8.js";
@@ -52,6 +52,14 @@ import {
52
52
  toolConsent2,
53
53
  toolConsentKey2,
54
54
  toolCall2,
55
+ EXPOSES_LIMITS2,
56
+ EXPOSE_RUN_KINDS2,
57
+ exposeTemplatePaths2,
58
+ exposeActionAccess2,
59
+ exposeNameDestructive2,
60
+ validateUpstreams2,
61
+ exposeIssues2,
62
+ validatePackageExposes2,
55
63
  PACKAGE_FORMAT_VERSION2,
56
64
  supportedCatalogIds2,
57
65
  clientCapabilities2,
@@ -72,7 +80,7 @@ import {
72
80
  SseTransport2,
73
81
  WebSocketTransport2,
74
82
  McpTransport2
75
- } from "../chunks/index-gtk2gwsb.js";
83
+ } from "../chunks/index-4z7f2bp1.js";
76
84
  import {
77
85
  HOST_CONTRACT2,
78
86
  HOST_CONTRACT_VERSION2,
@@ -93,8 +101,8 @@ import {
93
101
  SURFACE_COMMANDS2,
94
102
  errorMessage2,
95
103
  actionMessage2
96
- } from "../chunks/index-bg2jsgjq.js";
97
- import"../chunks/index-5fmaa0xq.js";
104
+ } from "../chunks/index-h3zgfghf.js";
105
+ import"../chunks/index-abcjanhc.js";
98
106
  export {
99
107
  A2UI_MESSAGE_KINDS2 as A2UI_MESSAGE_KINDS,
100
108
  AUTHOR_KEY_PREFIX2 as AUTHOR_KEY_PREFIX,
@@ -102,6 +110,8 @@ export {
102
110
  BUILTIN_FUNCTIONS2 as BUILTIN_FUNCTIONS,
103
111
  DEFAULT_MEDIA_SCHEMES2 as DEFAULT_MEDIA_SCHEMES,
104
112
  DEFAULT_URL_SCHEMES2 as DEFAULT_URL_SCHEMES,
113
+ EXPOSES_LIMITS2 as EXPOSES_LIMITS,
114
+ EXPOSE_RUN_KINDS2 as EXPOSE_RUN_KINDS,
105
115
  EXTENSION_MESSAGE_KINDS2 as EXTENSION_MESSAGE_KINDS,
106
116
  ExponentialHost2 as ExponentialHost,
107
117
  FORMATTER_METHODS2 as FORMATTER_METHODS,
@@ -154,6 +164,10 @@ export {
154
164
  decideUrl2 as decideUrl,
155
165
  decodeJsonl2 as decodeJsonl,
156
166
  errorMessage2 as errorMessage,
167
+ exposeActionAccess2 as exposeActionAccess,
168
+ exposeIssues2 as exposeIssues,
169
+ exposeNameDestructive2 as exposeNameDestructive,
170
+ exposeTemplatePaths2 as exposeTemplatePaths,
157
171
  imageDimensions2 as imageDimensions,
158
172
  imageFrames2 as imageFrames,
159
173
  isPrivateHost2 as isPrivateHost,
@@ -183,12 +197,14 @@ export {
183
197
  toolConsent2 as toolConsent,
184
198
  toolConsentKey2 as toolConsentKey,
185
199
  validatePackage2 as validatePackage,
200
+ validatePackageExposes2 as validatePackageExposes,
186
201
  validateRecord2 as validateRecord,
187
202
  validateRecordSchema2 as validateRecordSchema,
188
203
  validateTools2 as validateTools,
204
+ validateUpstreams2 as validateUpstreams,
189
205
  verifyPackageFile2 as verifyPackageFile,
190
206
  versionSatisfies2 as versionSatisfies
191
207
  };
192
208
 
193
- //# debugId=46DEB92DCC62DC5064756E2164756E21
209
+ //# debugId=9C4F0279F9C0232A64756E2164756E21
194
210
  //# sourceMappingURL=index.js.map
@@ -4,6 +4,6 @@
4
4
  "sourcesContent": [
5
5
  ],
6
6
  "mappings": "",
7
- "debugId": "46DEB92DCC62DC5064756E2164756E21",
7
+ "debugId": "9C4F0279F9C0232A64756E2164756E21",
8
8
  "names": []
9
9
  }
package/dist/index.js CHANGED
@@ -16,7 +16,7 @@ import {
16
16
  isOffered2,
17
17
  componentNames2,
18
18
  coreLite2
19
- } from "./chunks/index-5fmaa0xq.js";
19
+ } from "./chunks/index-abcjanhc.js";
20
20
  import {
21
21
  STYLE_KEYS2,
22
22
  STYLE_LAYOUT_KEYS2,
@@ -93,7 +93,7 @@ import {
93
93
  SURFACE_COMMANDS2,
94
94
  errorMessage2,
95
95
  actionMessage2
96
- } from "./chunks/index-bg2jsgjq.js";
96
+ } from "./chunks/index-h3zgfghf.js";
97
97
  import {
98
98
  CATALOG_ID2,
99
99
  LITE_CATALOG_ID2,
@@ -260,6 +260,14 @@ import {
260
260
  toolConsent2,
261
261
  toolConsentKey2,
262
262
  toolCall2,
263
+ EXPOSES_LIMITS2,
264
+ EXPOSE_RUN_KINDS2,
265
+ exposeTemplatePaths2,
266
+ exposeActionAccess2,
267
+ exposeNameDestructive2,
268
+ validateUpstreams2,
269
+ exposeIssues2,
270
+ validatePackageExposes2,
263
271
  PACKAGE_FORMAT_VERSION2,
264
272
  supportedCatalogIds2,
265
273
  clientCapabilities2,
@@ -280,7 +288,7 @@ import {
280
288
  SseTransport2,
281
289
  WebSocketTransport2,
282
290
  McpTransport2
283
- } from "./chunks/index-gtk2gwsb.js";
291
+ } from "./chunks/index-4z7f2bp1.js";
284
292
  import {
285
293
  style_default
286
294
  } from "./chunks/index-fy7y2nz8.js";
@@ -1252,6 +1260,15 @@ function tokenizeCode(source, language) {
1252
1260
  }
1253
1261
  return lines;
1254
1262
  }
1263
+ // packages/exponential-ui/src/text-clusters.ts
1264
+ var segmenter = new Intl.Segmenter(undefined, { granularity: `grapheme` });
1265
+ var BIDI_CONTROL = /^[؜‎‏‪-‮⁦-⁩]+$/u;
1266
+ function textClusters(text) {
1267
+ return Array.from(segmenter.segment(text), (s) => s.segment);
1268
+ }
1269
+ function trackedClusters(text) {
1270
+ return textClusters(text).filter((c) => !BIDI_CONTROL.test(c)).length;
1271
+ }
1255
1272
  // packages/exponential-ui/src/text-shimmer.ts
1256
1273
  var TEXT_SHIMMER = style_default.textShimmer;
1257
1274
  var toLinear = (c) => c <= 0.04045 ? c / 12.92 : Math.pow((c + 0.055) / 1.055, 2.4);
@@ -2046,12 +2063,19 @@ var a11y_default = {
2046
2063
  },
2047
2064
  Carousel: {
2048
2065
  role: "region",
2049
- notes: "region, roledescription carousel; each page a group `page i of n`",
2066
+ notes: "region, roledescription carousel; each page a group `page i of n`; the counter `$string.pageCounter` is hidden (each page already says page i of n); each thumbnail a button `page i of n`, aria-current on the current one",
2050
2067
  keys: [
2051
2068
  "ArrowLeft/ArrowRight: previous/next page while focus is inside",
2052
2069
  "Home/End: first/last page"
2053
2070
  ]
2054
2071
  },
2072
+ Mosaic: {
2073
+ role: "group",
2074
+ notes: "group labelled `label`; each tile a button named its picture's `alt`; the `+N` tile reads `alt` then `+N` ($string.morePictures).",
2075
+ keys: [
2076
+ "Tab through the tiles; Enter, Space: select"
2077
+ ]
2078
+ },
2055
2079
  Tabs: {
2056
2080
  role: "tablist",
2057
2081
  notes: "tablist / tab / tabpanel",
@@ -2397,6 +2421,13 @@ var a11y_default = {
2397
2421
  "Tab through the links; Enter: select"
2398
2422
  ]
2399
2423
  },
2424
+ Outline: {
2425
+ role: "navigation",
2426
+ notes: "navigation labelled by `caption`; each row a link (aria-current=location on the active row) named `title` then the count; press fires `select {id}`.",
2427
+ keys: [
2428
+ "Tab through the rows; Enter, Space: select"
2429
+ ]
2430
+ },
2400
2431
  Stepper: {
2401
2432
  role: "list",
2402
2433
  notes: "list; the current step aria-current=step. Each step a listitem labelled `stepDone`/`stepCurrent`/`stepUpcoming`; the current one aria-current=step ($a11y).",
@@ -3477,6 +3508,8 @@ export {
3477
3508
  ENGLISH_FORMAT_FUNCTIONS2 as ENGLISH_FORMAT_FUNCTIONS,
3478
3509
  ENGLISH_TIME_PATTERN2 as ENGLISH_TIME_PATTERN,
3479
3510
  ENUMS2 as ENUMS,
3511
+ EXPOSES_LIMITS2 as EXPOSES_LIMITS,
3512
+ EXPOSE_RUN_KINDS2 as EXPOSE_RUN_KINDS,
3480
3513
  EXTENSION_MESSAGE_KINDS2 as EXTENSION_MESSAGE_KINDS,
3481
3514
  ExponentialConnector,
3482
3515
  ExponentialHost2 as ExponentialHost,
@@ -3653,6 +3686,10 @@ export {
3653
3686
  expandMacros2 as expandMacros,
3654
3687
  exponentialTheme2 as exponentialTheme,
3655
3688
  exportThemeJson,
3689
+ exposeActionAccess2 as exposeActionAccess,
3690
+ exposeIssues2 as exposeIssues,
3691
+ exposeNameDestructive2 as exposeNameDestructive,
3692
+ exposeTemplatePaths2 as exposeTemplatePaths,
3656
3693
  fillTemplate2 as fillTemplate,
3657
3694
  filterItems2 as filterItems,
3658
3695
  fixedOffset2 as fixedOffset,
@@ -3792,6 +3829,7 @@ export {
3792
3829
  templateItemKeys,
3793
3830
  templateMessages2 as templateMessages,
3794
3831
  templateSiteKey,
3832
+ textClusters,
3795
3833
  textDirection,
3796
3834
  textShimmer,
3797
3835
  themeFromImport,
@@ -3802,6 +3840,7 @@ export {
3802
3840
  toolCall2 as toolCall,
3803
3841
  toolConsent2 as toolConsent,
3804
3842
  toolConsentKey2 as toolConsentKey,
3843
+ trackedClusters,
3805
3844
  treeGuides2 as treeGuides,
3806
3845
  truthy2 as truthy,
3807
3846
  tryLoadTheme2 as tryLoadTheme,
@@ -3810,12 +3849,14 @@ export {
3810
3849
  validateExtension,
3811
3850
  validateNode2 as validateNode,
3812
3851
  validatePackage2 as validatePackage,
3852
+ validatePackageExposes2 as validatePackageExposes,
3813
3853
  validateProps2 as validateProps,
3814
3854
  validateRecord2 as validateRecord,
3815
3855
  validateRecordSchema2 as validateRecordSchema,
3816
3856
  validateStyle2 as validateStyle,
3817
3857
  validateTheme2 as validateTheme,
3818
3858
  validateTools2 as validateTools,
3859
+ validateUpstreams2 as validateUpstreams,
3819
3860
  valuesEqual2 as valuesEqual,
3820
3861
  verifyPackageFile2 as verifyPackageFile,
3821
3862
  verifyPainterGeometry,
@@ -3836,5 +3877,5 @@ export {
3836
3877
  writeTokens2 as writeTokens
3837
3878
  };
3838
3879
 
3839
- //# debugId=578D93FFB073216664756E2164756E21
3880
+ //# debugId=7F458AE4739CE68F64756E2164756E21
3840
3881
  //# sourceMappingURL=index.js.map