@exponential_app/eui 0.2.1 → 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 (66) 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 +35 -5
  25. package/dist/index.js.map +2 -2
  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/web/primitives/carousel.d.ts +17 -0
  32. package/dist/types/src/web/primitives/index.d.ts +3 -0
  33. package/dist/types/src/web/primitives/mosaic.d.ts +30 -0
  34. package/dist/types/src/web/primitives/outline.d.ts +22 -0
  35. package/dist/web/index.js +8 -2
  36. package/dist/web/index.js.map +4 -4
  37. package/dist/web/primitives/index.js +59 -1
  38. package/dist/web/primitives/index.js.map +6 -3
  39. package/docs/components.generated.json +150 -1
  40. package/docs/package-format.md +56 -1
  41. package/docs/round-6-contract.md +108 -0
  42. package/docs/themes.generated.json +39 -2
  43. package/fixtures/bind-time.json +1464 -0
  44. package/fixtures/catalog-components.json +96 -0
  45. package/fixtures/catalog-macros.json +1159 -48
  46. package/fixtures/conformance-baseline.json +46073 -44448
  47. package/fixtures/conformance-known.json +76 -64
  48. package/fixtures/host-router.json +539 -1
  49. package/fixtures/kitchen-sink.expanded.json +614 -1
  50. package/fixtures/kitchen-sink.json +69 -1
  51. package/fixtures/primitive-specimens.json +3 -0
  52. package/fixtures/prompt-budget.json +14 -14
  53. package/fixtures/specimens.json +122 -0
  54. package/fixtures/theme-recipes.json +4617 -1691
  55. package/fixtures/theme-resolved.json +1154 -2
  56. package/generated/ExponentialUICatalog.generated.kt +13 -13
  57. package/generated/ExponentialUICatalog.generated.swift +13 -13
  58. package/generated/ExponentialUIThemes.generated.kt +7 -7
  59. package/generated/ExponentialUIThemes.generated.swift +7 -7
  60. package/generated/catalog.descriptions.generated.rs +1 -1
  61. package/generated/catalog.generated.rs +18 -18
  62. package/generated/catalog.themes.generated.rs +8 -8
  63. package/generated/core.descriptions.json +96 -0
  64. package/generated/core.runtime.json +86 -0
  65. package/package.json +1 -1
  66. package/themes/neutral.theme.json +288 -0
@@ -7825,6 +7825,294 @@
7825
7825
  }
7826
7826
  }
7827
7827
  },
7828
+ {
7829
+ "name": "Mosaic/example",
7830
+ "input": {
7831
+ "id": "mosaic",
7832
+ "component": "Mosaic",
7833
+ "props": {
7834
+ "pictures": [
7835
+ {
7836
+ "src": "https://example.com/editor.png",
7837
+ "alt": "Editor"
7838
+ },
7839
+ {
7840
+ "src": "https://example.com/preview.png",
7841
+ "alt": "Preview"
7842
+ },
7843
+ {
7844
+ "src": "https://example.com/data.png",
7845
+ "alt": "Data"
7846
+ },
7847
+ {
7848
+ "src": "https://example.com/versions.png",
7849
+ "alt": "Versions"
7850
+ }
7851
+ ]
7852
+ }
7853
+ },
7854
+ "expected": {
7855
+ "id": "mosaic",
7856
+ "component": "Box",
7857
+ "props": {},
7858
+ "children": [
7859
+ {
7860
+ "id": "mosaic.lead",
7861
+ "component": "Box",
7862
+ "props": {
7863
+ "pressable": true
7864
+ },
7865
+ "children": [
7866
+ {
7867
+ "id": "mosaic.lead.image",
7868
+ "component": "Image",
7869
+ "props": {
7870
+ "src": "https://example.com/editor.png",
7871
+ "alt": "Editor",
7872
+ "fit": "cover"
7873
+ },
7874
+ "children": [],
7875
+ "style": {
7876
+ "position": "absolute",
7877
+ "inset": 0,
7878
+ "width": "100%",
7879
+ "height": "100%"
7880
+ },
7881
+ "recipe": {
7882
+ "macro": "Mosaic",
7883
+ "part": "image",
7884
+ "props": {}
7885
+ },
7886
+ "accessibility": {
7887
+ "hidden": true
7888
+ }
7889
+ }
7890
+ ],
7891
+ "style": {
7892
+ "position": "relative",
7893
+ "overflow": "hidden",
7894
+ "minWidth": 0,
7895
+ "minHeight": 0,
7896
+ "cursor": "pointer",
7897
+ "flexGrow": 0,
7898
+ "flexShrink": 0,
7899
+ "flexBasis": "60%",
7900
+ "height": "100%"
7901
+ },
7902
+ "recipe": {
7903
+ "macro": "Mosaic",
7904
+ "part": "lead",
7905
+ "props": {
7906
+ "size": "large"
7907
+ }
7908
+ },
7909
+ "accessibility": {
7910
+ "role": "button",
7911
+ "label": "Editor"
7912
+ }
7913
+ },
7914
+ {
7915
+ "id": "mosaic.side",
7916
+ "component": "Box",
7917
+ "props": {},
7918
+ "children": [
7919
+ {
7920
+ "id": "mosaic.side.top",
7921
+ "component": "Box",
7922
+ "props": {
7923
+ "pressable": true
7924
+ },
7925
+ "children": [
7926
+ {
7927
+ "id": "mosaic.side.top.image",
7928
+ "component": "Image",
7929
+ "props": {
7930
+ "src": "https://example.com/preview.png",
7931
+ "alt": "Preview",
7932
+ "fit": "cover"
7933
+ },
7934
+ "children": [],
7935
+ "style": {
7936
+ "position": "absolute",
7937
+ "inset": 0,
7938
+ "width": "100%",
7939
+ "height": "100%"
7940
+ },
7941
+ "recipe": {
7942
+ "macro": "Mosaic",
7943
+ "part": "image",
7944
+ "props": {}
7945
+ },
7946
+ "accessibility": {
7947
+ "hidden": true
7948
+ }
7949
+ }
7950
+ ],
7951
+ "style": {
7952
+ "position": "relative",
7953
+ "overflow": "hidden",
7954
+ "minWidth": 0,
7955
+ "minHeight": 0,
7956
+ "cursor": "pointer",
7957
+ "flexGrow": 1,
7958
+ "flexShrink": 1,
7959
+ "flexBasis": 0,
7960
+ "width": "100%"
7961
+ },
7962
+ "recipe": {
7963
+ "macro": "Mosaic",
7964
+ "part": "top",
7965
+ "props": {
7966
+ "size": "small"
7967
+ }
7968
+ },
7969
+ "accessibility": {
7970
+ "role": "button",
7971
+ "label": "Preview"
7972
+ }
7973
+ },
7974
+ {
7975
+ "id": "mosaic.side.bottom",
7976
+ "component": "Box",
7977
+ "props": {
7978
+ "pressable": true
7979
+ },
7980
+ "children": [
7981
+ {
7982
+ "id": "mosaic.side.bottom.image",
7983
+ "component": "Image",
7984
+ "props": {
7985
+ "src": "https://example.com/data.png",
7986
+ "alt": "Data",
7987
+ "fit": "cover"
7988
+ },
7989
+ "children": [],
7990
+ "style": {
7991
+ "position": "absolute",
7992
+ "inset": 0,
7993
+ "width": "100%",
7994
+ "height": "100%"
7995
+ },
7996
+ "recipe": {
7997
+ "macro": "Mosaic",
7998
+ "part": "image",
7999
+ "props": {}
8000
+ },
8001
+ "accessibility": {
8002
+ "hidden": true
8003
+ }
8004
+ },
8005
+ {
8006
+ "id": "mosaic.side.bottom.more",
8007
+ "component": "Box",
8008
+ "props": {},
8009
+ "children": [
8010
+ {
8011
+ "id": "mosaic.side.bottom.more.moreLabel",
8012
+ "component": "Text",
8013
+ "props": {
8014
+ "text": {
8015
+ "call": "fill",
8016
+ "args": {
8017
+ "template": "$string.morePictures",
8018
+ "params": {
8019
+ "count": 1
8020
+ }
8021
+ }
8022
+ },
8023
+ "lines": 1
8024
+ },
8025
+ "children": [],
8026
+ "recipe": {
8027
+ "macro": "Mosaic",
8028
+ "part": "moreLabel",
8029
+ "props": {}
8030
+ }
8031
+ }
8032
+ ],
8033
+ "style": {
8034
+ "position": "absolute",
8035
+ "inset": 0,
8036
+ "display": "flex",
8037
+ "alignItems": "center",
8038
+ "justifyContent": "center"
8039
+ },
8040
+ "recipe": {
8041
+ "macro": "Mosaic",
8042
+ "part": "more",
8043
+ "props": {}
8044
+ },
8045
+ "accessibility": {
8046
+ "hidden": true
8047
+ }
8048
+ }
8049
+ ],
8050
+ "style": {
8051
+ "position": "relative",
8052
+ "overflow": "hidden",
8053
+ "minWidth": 0,
8054
+ "minHeight": 0,
8055
+ "cursor": "pointer",
8056
+ "flexGrow": 1,
8057
+ "flexShrink": 1,
8058
+ "flexBasis": 0,
8059
+ "width": "100%"
8060
+ },
8061
+ "recipe": {
8062
+ "macro": "Mosaic",
8063
+ "part": "bottom",
8064
+ "props": {
8065
+ "size": "small"
8066
+ }
8067
+ },
8068
+ "accessibility": {
8069
+ "role": "button",
8070
+ "label": {
8071
+ "call": "fill",
8072
+ "args": {
8073
+ "template": "$string.morePicturesLabel",
8074
+ "params": {
8075
+ "alt": "Data",
8076
+ "count": 1
8077
+ }
8078
+ }
8079
+ }
8080
+ }
8081
+ }
8082
+ ],
8083
+ "style": {
8084
+ "display": "flex",
8085
+ "flexDirection": "column",
8086
+ "flexGrow": 1,
8087
+ "flexShrink": 1,
8088
+ "flexBasis": 0,
8089
+ "minWidth": 0,
8090
+ "height": "100%"
8091
+ },
8092
+ "recipe": {
8093
+ "macro": "Mosaic",
8094
+ "part": "side",
8095
+ "props": {}
8096
+ }
8097
+ }
8098
+ ],
8099
+ "style": {
8100
+ "display": "flex",
8101
+ "flexDirection": "row",
8102
+ "width": "100%",
8103
+ "aspectRatio": 1.6,
8104
+ "minWidth": 0
8105
+ },
8106
+ "recipe": {
8107
+ "macro": "Mosaic",
8108
+ "part": "root",
8109
+ "props": {}
8110
+ },
8111
+ "accessibility": {
8112
+ "role": "group"
8113
+ }
8114
+ }
8115
+ },
7828
8116
  {
7829
8117
  "name": "Collapsible/example",
7830
8118
  "input": {
@@ -13493,78 +13781,391 @@
13493
13781
  }
13494
13782
  },
13495
13783
  {
13496
- "name": "Stepper/example",
13784
+ "name": "Outline/example",
13497
13785
  "input": {
13498
- "id": "stepper",
13499
- "component": "Stepper",
13786
+ "id": "outline",
13787
+ "component": "Outline",
13500
13788
  "props": {
13501
- "steps": [
13789
+ "caption": "Outline",
13790
+ "value": "part-a",
13791
+ "items": [
13502
13792
  {
13503
- "label": "Account"
13793
+ "id": "current",
13794
+ "title": "Current state"
13504
13795
  },
13505
13796
  {
13506
- "label": "Team"
13797
+ "id": "part-a",
13798
+ "title": "Part A: editor-first creation",
13799
+ "count": 5
13507
13800
  },
13508
13801
  {
13509
- "label": "Done"
13802
+ "id": "part-b",
13803
+ "title": "Part B: MCP for eApps",
13804
+ "count": 2
13510
13805
  }
13511
- ],
13512
- "current": 1
13806
+ ]
13513
13807
  }
13514
13808
  },
13515
13809
  "expected": {
13516
- "id": "stepper",
13810
+ "id": "outline",
13517
13811
  "component": "Box",
13518
13812
  "props": {},
13519
13813
  "children": [
13520
13814
  {
13521
- "id": "stepper.step.0",
13815
+ "id": "outline.caption",
13816
+ "component": "Text",
13817
+ "props": {
13818
+ "text": "Outline",
13819
+ "variant": "caption",
13820
+ "lines": 1
13821
+ },
13822
+ "children": [],
13823
+ "recipe": {
13824
+ "macro": "Outline",
13825
+ "part": "caption",
13826
+ "props": {}
13827
+ },
13828
+ "accessibility": {
13829
+ "hidden": true
13830
+ }
13831
+ },
13832
+ {
13833
+ "id": "outline.row.0",
13522
13834
  "component": "Box",
13523
- "props": {},
13835
+ "props": {
13836
+ "pressable": true
13837
+ },
13524
13838
  "children": [
13525
13839
  {
13526
- "id": "stepper.step.0.marker",
13527
- "component": "Box",
13528
- "props": {},
13529
- "children": [
13530
- {
13531
- "id": "stepper.step.0.marker.check",
13532
- "component": "Icon",
13533
- "props": {
13534
- "name": "ui-check",
13535
- "size": "sm"
13536
- },
13537
- "children": [],
13538
- "recipe": {
13539
- "macro": "Stepper",
13540
- "part": "check",
13541
- "props": {
13542
- "orientation": "horizontal"
13543
- }
13544
- }
13545
- }
13546
- ],
13840
+ "id": "outline.row.0.title",
13841
+ "component": "Text",
13842
+ "props": {
13843
+ "text": "Current state",
13844
+ "lines": 1
13845
+ },
13846
+ "children": [],
13547
13847
  "style": {
13548
- "display": "flex",
13549
- "alignItems": "center",
13550
- "justifyContent": "center",
13551
- "width": "$control.iconLg",
13552
- "height": "$control.iconLg",
13553
- "borderRadius": "$radius.full",
13554
- "flexShrink": 0
13848
+ "flexGrow": 1,
13849
+ "flexShrink": 1,
13850
+ "flexBasis": 0,
13851
+ "minWidth": 0
13555
13852
  },
13556
13853
  "recipe": {
13557
- "macro": "Stepper",
13558
- "part": "marker",
13854
+ "macro": "Outline",
13855
+ "part": "title",
13559
13856
  "props": {
13560
- "orientation": "horizontal",
13561
- "status": "done"
13857
+ "active": false
13562
13858
  }
13563
- },
13564
- "accessibility": {
13565
- "hidden": true
13566
13859
  }
13567
- },
13860
+ }
13861
+ ],
13862
+ "style": {
13863
+ "display": "flex",
13864
+ "flexDirection": "row",
13865
+ "alignItems": "center",
13866
+ "gap": "$spacing.xs",
13867
+ "position": "relative",
13868
+ "height": "$control.rowCompact",
13869
+ "paddingHorizontal": "$spacing.sm",
13870
+ "minWidth": 0,
13871
+ "overflow": "hidden",
13872
+ "cursor": "pointer"
13873
+ },
13874
+ "recipe": {
13875
+ "macro": "Outline",
13876
+ "part": "row",
13877
+ "props": {
13878
+ "active": false
13879
+ }
13880
+ },
13881
+ "accessibility": {
13882
+ "role": "link",
13883
+ "label": "Current state",
13884
+ "current": false
13885
+ }
13886
+ },
13887
+ {
13888
+ "id": "outline.row.1",
13889
+ "component": "Box",
13890
+ "props": {
13891
+ "pressable": true
13892
+ },
13893
+ "children": [
13894
+ {
13895
+ "id": "outline.row.1.bar",
13896
+ "component": "Box",
13897
+ "props": {},
13898
+ "children": [],
13899
+ "style": {
13900
+ "position": "absolute",
13901
+ "insetInlineStart": 0,
13902
+ "top": 0,
13903
+ "bottom": 0,
13904
+ "width": 2
13905
+ },
13906
+ "recipe": {
13907
+ "macro": "Outline",
13908
+ "part": "bar",
13909
+ "props": {}
13910
+ },
13911
+ "accessibility": {
13912
+ "hidden": true
13913
+ }
13914
+ },
13915
+ {
13916
+ "id": "outline.row.1.title",
13917
+ "component": "Text",
13918
+ "props": {
13919
+ "text": "Part A: editor-first creation",
13920
+ "lines": 1
13921
+ },
13922
+ "children": [],
13923
+ "style": {
13924
+ "flexGrow": 1,
13925
+ "flexShrink": 1,
13926
+ "flexBasis": 0,
13927
+ "minWidth": 0
13928
+ },
13929
+ "recipe": {
13930
+ "macro": "Outline",
13931
+ "part": "title",
13932
+ "props": {
13933
+ "active": true
13934
+ }
13935
+ }
13936
+ },
13937
+ {
13938
+ "id": "outline.row.1.count",
13939
+ "component": "Text",
13940
+ "props": {
13941
+ "text": "· 5",
13942
+ "variant": "caption",
13943
+ "lines": 1
13944
+ },
13945
+ "children": [],
13946
+ "style": {
13947
+ "flexShrink": 0
13948
+ },
13949
+ "recipe": {
13950
+ "macro": "Outline",
13951
+ "part": "count",
13952
+ "props": {}
13953
+ },
13954
+ "accessibility": {
13955
+ "hidden": true
13956
+ }
13957
+ }
13958
+ ],
13959
+ "style": {
13960
+ "display": "flex",
13961
+ "flexDirection": "row",
13962
+ "alignItems": "center",
13963
+ "gap": "$spacing.xs",
13964
+ "position": "relative",
13965
+ "height": "$control.rowCompact",
13966
+ "paddingHorizontal": "$spacing.sm",
13967
+ "minWidth": 0,
13968
+ "overflow": "hidden",
13969
+ "cursor": "pointer"
13970
+ },
13971
+ "recipe": {
13972
+ "macro": "Outline",
13973
+ "part": "row",
13974
+ "props": {
13975
+ "active": true
13976
+ }
13977
+ },
13978
+ "accessibility": {
13979
+ "role": "link",
13980
+ "label": {
13981
+ "call": "fill",
13982
+ "args": {
13983
+ "template": "$string.outlineRow",
13984
+ "params": {
13985
+ "title": "Part A: editor-first creation",
13986
+ "count": 5
13987
+ }
13988
+ }
13989
+ },
13990
+ "current": "location"
13991
+ }
13992
+ },
13993
+ {
13994
+ "id": "outline.row.2",
13995
+ "component": "Box",
13996
+ "props": {
13997
+ "pressable": true
13998
+ },
13999
+ "children": [
14000
+ {
14001
+ "id": "outline.row.2.title",
14002
+ "component": "Text",
14003
+ "props": {
14004
+ "text": "Part B: MCP for eApps",
14005
+ "lines": 1
14006
+ },
14007
+ "children": [],
14008
+ "style": {
14009
+ "flexGrow": 1,
14010
+ "flexShrink": 1,
14011
+ "flexBasis": 0,
14012
+ "minWidth": 0
14013
+ },
14014
+ "recipe": {
14015
+ "macro": "Outline",
14016
+ "part": "title",
14017
+ "props": {
14018
+ "active": false
14019
+ }
14020
+ }
14021
+ },
14022
+ {
14023
+ "id": "outline.row.2.count",
14024
+ "component": "Text",
14025
+ "props": {
14026
+ "text": "· 2",
14027
+ "variant": "caption",
14028
+ "lines": 1
14029
+ },
14030
+ "children": [],
14031
+ "style": {
14032
+ "flexShrink": 0
14033
+ },
14034
+ "recipe": {
14035
+ "macro": "Outline",
14036
+ "part": "count",
14037
+ "props": {}
14038
+ },
14039
+ "accessibility": {
14040
+ "hidden": true
14041
+ }
14042
+ }
14043
+ ],
14044
+ "style": {
14045
+ "display": "flex",
14046
+ "flexDirection": "row",
14047
+ "alignItems": "center",
14048
+ "gap": "$spacing.xs",
14049
+ "position": "relative",
14050
+ "height": "$control.rowCompact",
14051
+ "paddingHorizontal": "$spacing.sm",
14052
+ "minWidth": 0,
14053
+ "overflow": "hidden",
14054
+ "cursor": "pointer"
14055
+ },
14056
+ "recipe": {
14057
+ "macro": "Outline",
14058
+ "part": "row",
14059
+ "props": {
14060
+ "active": false
14061
+ }
14062
+ },
14063
+ "accessibility": {
14064
+ "role": "link",
14065
+ "label": {
14066
+ "call": "fill",
14067
+ "args": {
14068
+ "template": "$string.outlineRow",
14069
+ "params": {
14070
+ "title": "Part B: MCP for eApps",
14071
+ "count": 2
14072
+ }
14073
+ }
14074
+ },
14075
+ "current": false
14076
+ }
14077
+ }
14078
+ ],
14079
+ "style": {
14080
+ "display": "flex",
14081
+ "flexDirection": "column",
14082
+ "gap": "$spacing.xxs",
14083
+ "minWidth": 0
14084
+ },
14085
+ "recipe": {
14086
+ "macro": "Outline",
14087
+ "part": "root",
14088
+ "props": {}
14089
+ },
14090
+ "accessibility": {
14091
+ "role": "navigation",
14092
+ "label": "Outline"
14093
+ }
14094
+ }
14095
+ },
14096
+ {
14097
+ "name": "Stepper/example",
14098
+ "input": {
14099
+ "id": "stepper",
14100
+ "component": "Stepper",
14101
+ "props": {
14102
+ "steps": [
14103
+ {
14104
+ "label": "Account"
14105
+ },
14106
+ {
14107
+ "label": "Team"
14108
+ },
14109
+ {
14110
+ "label": "Done"
14111
+ }
14112
+ ],
14113
+ "current": 1
14114
+ }
14115
+ },
14116
+ "expected": {
14117
+ "id": "stepper",
14118
+ "component": "Box",
14119
+ "props": {},
14120
+ "children": [
14121
+ {
14122
+ "id": "stepper.step.0",
14123
+ "component": "Box",
14124
+ "props": {},
14125
+ "children": [
14126
+ {
14127
+ "id": "stepper.step.0.marker",
14128
+ "component": "Box",
14129
+ "props": {},
14130
+ "children": [
14131
+ {
14132
+ "id": "stepper.step.0.marker.check",
14133
+ "component": "Icon",
14134
+ "props": {
14135
+ "name": "ui-check",
14136
+ "size": "sm"
14137
+ },
14138
+ "children": [],
14139
+ "recipe": {
14140
+ "macro": "Stepper",
14141
+ "part": "check",
14142
+ "props": {
14143
+ "orientation": "horizontal"
14144
+ }
14145
+ }
14146
+ }
14147
+ ],
14148
+ "style": {
14149
+ "display": "flex",
14150
+ "alignItems": "center",
14151
+ "justifyContent": "center",
14152
+ "width": "$control.iconLg",
14153
+ "height": "$control.iconLg",
14154
+ "borderRadius": "$radius.full",
14155
+ "flexShrink": 0
14156
+ },
14157
+ "recipe": {
14158
+ "macro": "Stepper",
14159
+ "part": "marker",
14160
+ "props": {
14161
+ "orientation": "horizontal",
14162
+ "status": "done"
14163
+ }
14164
+ },
14165
+ "accessibility": {
14166
+ "hidden": true
14167
+ }
14168
+ },
13568
14169
  {
13569
14170
  "id": "stepper.step.0.body",
13570
14171
  "component": "Box",
@@ -37335,6 +37936,516 @@
37335
37936
  }
37336
37937
  }
37337
37938
  },
37939
+ {
37940
+ "name": "Outline/bound:value",
37941
+ "input": {
37942
+ "id": "outline",
37943
+ "component": "Outline",
37944
+ "props": {
37945
+ "caption": "Outline",
37946
+ "value": {
37947
+ "path": "/value"
37948
+ },
37949
+ "items": [
37950
+ {
37951
+ "id": "current",
37952
+ "title": "Current state"
37953
+ },
37954
+ {
37955
+ "id": "part-a",
37956
+ "title": "Part A: editor-first creation",
37957
+ "count": 5
37958
+ },
37959
+ {
37960
+ "id": "part-b",
37961
+ "title": "Part B: MCP for eApps",
37962
+ "count": 2
37963
+ }
37964
+ ]
37965
+ }
37966
+ },
37967
+ "expected": {
37968
+ "id": "outline",
37969
+ "component": "Box",
37970
+ "props": {},
37971
+ "children": [
37972
+ {
37973
+ "id": "outline.caption",
37974
+ "component": "Text",
37975
+ "props": {
37976
+ "text": "Outline",
37977
+ "variant": "caption",
37978
+ "lines": 1
37979
+ },
37980
+ "children": [],
37981
+ "recipe": {
37982
+ "macro": "Outline",
37983
+ "part": "caption",
37984
+ "props": {}
37985
+ },
37986
+ "accessibility": {
37987
+ "hidden": true
37988
+ }
37989
+ },
37990
+ {
37991
+ "id": "outline.row.0",
37992
+ "component": "Box",
37993
+ "props": {
37994
+ "pressable": true
37995
+ },
37996
+ "children": [
37997
+ {
37998
+ "id": "outline.row.0.bar",
37999
+ "component": "Box",
38000
+ "props": {},
38001
+ "children": [],
38002
+ "style": {
38003
+ "position": "absolute",
38004
+ "insetInlineStart": 0,
38005
+ "top": 0,
38006
+ "bottom": 0,
38007
+ "width": 2
38008
+ },
38009
+ "visible": {
38010
+ "call": "eq",
38011
+ "args": {
38012
+ "a": "current",
38013
+ "b": {
38014
+ "path": "/value"
38015
+ }
38016
+ }
38017
+ },
38018
+ "recipe": {
38019
+ "macro": "Outline",
38020
+ "part": "bar",
38021
+ "props": {}
38022
+ },
38023
+ "accessibility": {
38024
+ "hidden": true
38025
+ }
38026
+ },
38027
+ {
38028
+ "id": "outline.row.0.title",
38029
+ "component": "Text",
38030
+ "props": {
38031
+ "text": "Current state",
38032
+ "lines": 1
38033
+ },
38034
+ "children": [],
38035
+ "style": {
38036
+ "flexGrow": 1,
38037
+ "flexShrink": 1,
38038
+ "flexBasis": 0,
38039
+ "minWidth": 0
38040
+ },
38041
+ "recipe": {
38042
+ "macro": "Outline",
38043
+ "part": "title",
38044
+ "props": {
38045
+ "active": {
38046
+ "call": "eq",
38047
+ "args": {
38048
+ "a": "current",
38049
+ "b": {
38050
+ "path": "/value"
38051
+ }
38052
+ }
38053
+ }
38054
+ }
38055
+ }
38056
+ }
38057
+ ],
38058
+ "style": {
38059
+ "display": "flex",
38060
+ "flexDirection": "row",
38061
+ "alignItems": "center",
38062
+ "gap": "$spacing.xs",
38063
+ "position": "relative",
38064
+ "height": "$control.rowCompact",
38065
+ "paddingHorizontal": "$spacing.sm",
38066
+ "minWidth": 0,
38067
+ "overflow": "hidden",
38068
+ "cursor": "pointer"
38069
+ },
38070
+ "recipe": {
38071
+ "macro": "Outline",
38072
+ "part": "row",
38073
+ "props": {
38074
+ "active": {
38075
+ "call": "eq",
38076
+ "args": {
38077
+ "a": "current",
38078
+ "b": {
38079
+ "path": "/value"
38080
+ }
38081
+ }
38082
+ }
38083
+ }
38084
+ },
38085
+ "on": {
38086
+ "press": {
38087
+ "functionCall": {
38088
+ "call": "set",
38089
+ "args": {
38090
+ "path": "/value",
38091
+ "value": "current"
38092
+ }
38093
+ }
38094
+ }
38095
+ },
38096
+ "accessibility": {
38097
+ "role": "link",
38098
+ "label": "Current state",
38099
+ "current": {
38100
+ "call": "cond",
38101
+ "args": {
38102
+ "if": {
38103
+ "call": "eq",
38104
+ "args": {
38105
+ "a": "current",
38106
+ "b": {
38107
+ "path": "/value"
38108
+ }
38109
+ }
38110
+ },
38111
+ "then": "location",
38112
+ "else": false
38113
+ }
38114
+ }
38115
+ }
38116
+ },
38117
+ {
38118
+ "id": "outline.row.1",
38119
+ "component": "Box",
38120
+ "props": {
38121
+ "pressable": true
38122
+ },
38123
+ "children": [
38124
+ {
38125
+ "id": "outline.row.1.bar",
38126
+ "component": "Box",
38127
+ "props": {},
38128
+ "children": [],
38129
+ "style": {
38130
+ "position": "absolute",
38131
+ "insetInlineStart": 0,
38132
+ "top": 0,
38133
+ "bottom": 0,
38134
+ "width": 2
38135
+ },
38136
+ "visible": {
38137
+ "call": "eq",
38138
+ "args": {
38139
+ "a": "part-a",
38140
+ "b": {
38141
+ "path": "/value"
38142
+ }
38143
+ }
38144
+ },
38145
+ "recipe": {
38146
+ "macro": "Outline",
38147
+ "part": "bar",
38148
+ "props": {}
38149
+ },
38150
+ "accessibility": {
38151
+ "hidden": true
38152
+ }
38153
+ },
38154
+ {
38155
+ "id": "outline.row.1.title",
38156
+ "component": "Text",
38157
+ "props": {
38158
+ "text": "Part A: editor-first creation",
38159
+ "lines": 1
38160
+ },
38161
+ "children": [],
38162
+ "style": {
38163
+ "flexGrow": 1,
38164
+ "flexShrink": 1,
38165
+ "flexBasis": 0,
38166
+ "minWidth": 0
38167
+ },
38168
+ "recipe": {
38169
+ "macro": "Outline",
38170
+ "part": "title",
38171
+ "props": {
38172
+ "active": {
38173
+ "call": "eq",
38174
+ "args": {
38175
+ "a": "part-a",
38176
+ "b": {
38177
+ "path": "/value"
38178
+ }
38179
+ }
38180
+ }
38181
+ }
38182
+ }
38183
+ },
38184
+ {
38185
+ "id": "outline.row.1.count",
38186
+ "component": "Text",
38187
+ "props": {
38188
+ "text": "· 5",
38189
+ "variant": "caption",
38190
+ "lines": 1
38191
+ },
38192
+ "children": [],
38193
+ "style": {
38194
+ "flexShrink": 0
38195
+ },
38196
+ "recipe": {
38197
+ "macro": "Outline",
38198
+ "part": "count",
38199
+ "props": {}
38200
+ },
38201
+ "accessibility": {
38202
+ "hidden": true
38203
+ }
38204
+ }
38205
+ ],
38206
+ "style": {
38207
+ "display": "flex",
38208
+ "flexDirection": "row",
38209
+ "alignItems": "center",
38210
+ "gap": "$spacing.xs",
38211
+ "position": "relative",
38212
+ "height": "$control.rowCompact",
38213
+ "paddingHorizontal": "$spacing.sm",
38214
+ "minWidth": 0,
38215
+ "overflow": "hidden",
38216
+ "cursor": "pointer"
38217
+ },
38218
+ "recipe": {
38219
+ "macro": "Outline",
38220
+ "part": "row",
38221
+ "props": {
38222
+ "active": {
38223
+ "call": "eq",
38224
+ "args": {
38225
+ "a": "part-a",
38226
+ "b": {
38227
+ "path": "/value"
38228
+ }
38229
+ }
38230
+ }
38231
+ }
38232
+ },
38233
+ "on": {
38234
+ "press": {
38235
+ "functionCall": {
38236
+ "call": "set",
38237
+ "args": {
38238
+ "path": "/value",
38239
+ "value": "part-a"
38240
+ }
38241
+ }
38242
+ }
38243
+ },
38244
+ "accessibility": {
38245
+ "role": "link",
38246
+ "label": {
38247
+ "call": "fill",
38248
+ "args": {
38249
+ "template": "$string.outlineRow",
38250
+ "params": {
38251
+ "title": "Part A: editor-first creation",
38252
+ "count": 5
38253
+ }
38254
+ }
38255
+ },
38256
+ "current": {
38257
+ "call": "cond",
38258
+ "args": {
38259
+ "if": {
38260
+ "call": "eq",
38261
+ "args": {
38262
+ "a": "part-a",
38263
+ "b": {
38264
+ "path": "/value"
38265
+ }
38266
+ }
38267
+ },
38268
+ "then": "location",
38269
+ "else": false
38270
+ }
38271
+ }
38272
+ }
38273
+ },
38274
+ {
38275
+ "id": "outline.row.2",
38276
+ "component": "Box",
38277
+ "props": {
38278
+ "pressable": true
38279
+ },
38280
+ "children": [
38281
+ {
38282
+ "id": "outline.row.2.bar",
38283
+ "component": "Box",
38284
+ "props": {},
38285
+ "children": [],
38286
+ "style": {
38287
+ "position": "absolute",
38288
+ "insetInlineStart": 0,
38289
+ "top": 0,
38290
+ "bottom": 0,
38291
+ "width": 2
38292
+ },
38293
+ "visible": {
38294
+ "call": "eq",
38295
+ "args": {
38296
+ "a": "part-b",
38297
+ "b": {
38298
+ "path": "/value"
38299
+ }
38300
+ }
38301
+ },
38302
+ "recipe": {
38303
+ "macro": "Outline",
38304
+ "part": "bar",
38305
+ "props": {}
38306
+ },
38307
+ "accessibility": {
38308
+ "hidden": true
38309
+ }
38310
+ },
38311
+ {
38312
+ "id": "outline.row.2.title",
38313
+ "component": "Text",
38314
+ "props": {
38315
+ "text": "Part B: MCP for eApps",
38316
+ "lines": 1
38317
+ },
38318
+ "children": [],
38319
+ "style": {
38320
+ "flexGrow": 1,
38321
+ "flexShrink": 1,
38322
+ "flexBasis": 0,
38323
+ "minWidth": 0
38324
+ },
38325
+ "recipe": {
38326
+ "macro": "Outline",
38327
+ "part": "title",
38328
+ "props": {
38329
+ "active": {
38330
+ "call": "eq",
38331
+ "args": {
38332
+ "a": "part-b",
38333
+ "b": {
38334
+ "path": "/value"
38335
+ }
38336
+ }
38337
+ }
38338
+ }
38339
+ }
38340
+ },
38341
+ {
38342
+ "id": "outline.row.2.count",
38343
+ "component": "Text",
38344
+ "props": {
38345
+ "text": "· 2",
38346
+ "variant": "caption",
38347
+ "lines": 1
38348
+ },
38349
+ "children": [],
38350
+ "style": {
38351
+ "flexShrink": 0
38352
+ },
38353
+ "recipe": {
38354
+ "macro": "Outline",
38355
+ "part": "count",
38356
+ "props": {}
38357
+ },
38358
+ "accessibility": {
38359
+ "hidden": true
38360
+ }
38361
+ }
38362
+ ],
38363
+ "style": {
38364
+ "display": "flex",
38365
+ "flexDirection": "row",
38366
+ "alignItems": "center",
38367
+ "gap": "$spacing.xs",
38368
+ "position": "relative",
38369
+ "height": "$control.rowCompact",
38370
+ "paddingHorizontal": "$spacing.sm",
38371
+ "minWidth": 0,
38372
+ "overflow": "hidden",
38373
+ "cursor": "pointer"
38374
+ },
38375
+ "recipe": {
38376
+ "macro": "Outline",
38377
+ "part": "row",
38378
+ "props": {
38379
+ "active": {
38380
+ "call": "eq",
38381
+ "args": {
38382
+ "a": "part-b",
38383
+ "b": {
38384
+ "path": "/value"
38385
+ }
38386
+ }
38387
+ }
38388
+ }
38389
+ },
38390
+ "on": {
38391
+ "press": {
38392
+ "functionCall": {
38393
+ "call": "set",
38394
+ "args": {
38395
+ "path": "/value",
38396
+ "value": "part-b"
38397
+ }
38398
+ }
38399
+ }
38400
+ },
38401
+ "accessibility": {
38402
+ "role": "link",
38403
+ "label": {
38404
+ "call": "fill",
38405
+ "args": {
38406
+ "template": "$string.outlineRow",
38407
+ "params": {
38408
+ "title": "Part B: MCP for eApps",
38409
+ "count": 2
38410
+ }
38411
+ }
38412
+ },
38413
+ "current": {
38414
+ "call": "cond",
38415
+ "args": {
38416
+ "if": {
38417
+ "call": "eq",
38418
+ "args": {
38419
+ "a": "part-b",
38420
+ "b": {
38421
+ "path": "/value"
38422
+ }
38423
+ }
38424
+ },
38425
+ "then": "location",
38426
+ "else": false
38427
+ }
38428
+ }
38429
+ }
38430
+ }
38431
+ ],
38432
+ "style": {
38433
+ "display": "flex",
38434
+ "flexDirection": "column",
38435
+ "gap": "$spacing.xxs",
38436
+ "minWidth": 0
38437
+ },
38438
+ "recipe": {
38439
+ "macro": "Outline",
38440
+ "part": "root",
38441
+ "props": {}
38442
+ },
38443
+ "accessibility": {
38444
+ "role": "navigation",
38445
+ "label": "Outline"
38446
+ }
38447
+ }
38448
+ },
37338
38449
  {
37339
38450
  "name": "Stepper/bound:current",
37340
38451
  "input": {