@exponential_app/eui 0.2.1 → 0.4.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.
- package/catalog/a11y.json +25 -1
- package/catalog/core.catalog.json +426 -6
- package/catalog/core.schema.json +634 -4
- package/catalog/host.json +10 -0
- package/catalog/layout.json +3 -2
- package/catalog/limits.json +10 -1
- package/catalog/macros.json +542 -1
- package/catalog/recipes.json +4 -2
- package/catalog/strings.json +14 -2
- package/catalog/style.json +21 -0
- package/catalog/theme.schema.json +3950 -1337
- package/conformance/manifest.json +5 -5
- package/conformance/motion/build-corpus.ts +232 -0
- package/conformance/motion/corpus/SOURCES.md +117 -0
- package/conformance/motion/corpus/images/footage_0.json +1 -0
- package/conformance/motion/corpus/images/img_0.jpg +0 -0
- package/conformance/motion/corpus/images/img_1.jpg +0 -0
- package/conformance/motion/corpus/images/triangle.png +0 -0
- package/conformance/motion/corpus/skottie-3d-parenting-nocamera.json +367 -0
- package/conformance/motion/corpus/skottie-auto-orient-2.json +292 -0
- package/conformance/motion/corpus/skottie-auto-orient.json +717 -0
- package/conformance/motion/corpus/skottie-bezier-extranormal.json +199 -0
- package/conformance/motion/corpus/skottie-blendmode-hardmix.json +558 -0
- package/conformance/motion/corpus/skottie-chained-mattes.json +259 -0
- package/conformance/motion/corpus/skottie-dropshadow-ramp.json +852 -0
- package/conformance/motion/corpus/skottie-dropshadow-style.json +278 -0
- package/conformance/motion/corpus/skottie-effects-transform.json +385 -0
- package/conformance/motion/corpus/skottie-fill-effect.json +358 -0
- package/conformance/motion/corpus/skottie-fill-rule.json +457 -0
- package/conformance/motion/corpus/skottie-gaussian-blur.json +670 -0
- package/conformance/motion/corpus/skottie-gradient-opacity.json +451 -0
- package/conformance/motion/corpus/skottie-gradient-radial-highlight.json +581 -0
- package/conformance/motion/corpus/skottie-hidden-shapes-layers.json +381 -0
- package/conformance/motion/corpus/skottie-huesaturation-effect.json +1117 -0
- package/conformance/motion/corpus/skottie-invert-effect.json +665 -0
- package/conformance/motion/corpus/skottie-luma-matte.json +239 -0
- package/conformance/motion/corpus/skottie-mask-feather.json +892 -0
- package/conformance/motion/corpus/skottie-masking-opaque.json +2376 -0
- package/conformance/motion/corpus/skottie-masking-translucent.json +2376 -0
- package/conformance/motion/corpus/skottie-matte-blendmode.json +196 -0
- package/conformance/motion/corpus/skottie-matte-nonsequential.json +722 -0
- package/conformance/motion/corpus/skottie-matte-visible.json +666 -0
- package/conformance/motion/corpus/skottie-mergepaths-effect.json +722 -0
- package/conformance/motion/corpus/skottie-motion-blur-mask.json +120 -0
- package/conformance/motion/corpus/skottie-nested-animation.json +253 -0
- package/conformance/motion/corpus/skottie-offsetpaths-effect.json +525 -0
- package/conformance/motion/corpus/skottie-phonehub-connecting.json +947 -0
- package/conformance/motion/corpus/skottie-puckerbloat-effect.json +339 -0
- package/conformance/motion/corpus/skottie-repeater.json +234 -0
- package/conformance/motion/corpus/skottie-sample-1.json +168 -0
- package/conformance/motion/corpus/skottie-sample-search.json +329 -0
- package/conformance/motion/corpus/skottie-spatial-supernormal.json +898 -0
- package/conformance/motion/corpus/skottie-text-animator-1.json +1286 -0
- package/conformance/motion/corpus/skottie-text-fill-over-stroke.json +1014 -0
- package/conformance/motion/corpus/skottie-text-tracking.json +950 -0
- package/conformance/motion/corpus/skottie-text-valign.json +484 -0
- package/conformance/motion/corpus/skottie-time-reverse.json +297 -0
- package/conformance/motion/corpus/skottie-transform-skew.json +290 -0
- package/conformance/motion/corpus/skottie-trimpath-fill.json +933 -0
- package/conformance/motion/corpus/skottie-trimpath-modes.json +266 -0
- package/conformance/motion/corpus/skottie-tritone-effect.json +379 -0
- package/conformance/motion/corpus/spec-blend-mode.json +531 -0
- package/conformance/motion/corpus/spec-ellipse.json +142 -0
- package/conformance/motion/corpus/spec-fill.json +193 -0
- package/conformance/motion/corpus/spec-gradient-stroke.json +1263 -0
- package/conformance/motion/corpus/spec-gradient.json +1255 -0
- package/conformance/motion/corpus/spec-mask.json +773 -0
- package/conformance/motion/corpus/spec-masks.json +676 -0
- package/conformance/motion/corpus/spec-matte.json +390 -0
- package/conformance/motion/corpus/spec-metadata.json +1 -0
- package/conformance/motion/corpus/spec-path.json +177 -0
- package/conformance/motion/corpus/spec-pucker-bloat.json +179 -0
- package/conformance/motion/corpus/spec-rectangle.json +145 -0
- package/conformance/motion/corpus/spec-rounded-corners.json +187 -0
- package/conformance/motion/corpus/spec-slots.json +325 -0
- package/conformance/motion/corpus/spec-star.json +159 -0
- package/conformance/motion/corpus/spec-stroke.json +156 -0
- package/conformance/motion/corpus/spec-test-ellipse-xy-pos.json +141 -0
- package/conformance/motion/corpus/spec-test-gradient-fill.json +1 -0
- package/conformance/motion/corpus/spec-test-gradient-stroke.json +229 -0
- package/conformance/motion/corpus/spec-test-unknown-shape.json +63 -0
- package/conformance/motion/corpus/spec-time-remap.json +1090 -0
- package/conformance/motion/corpus/spec-time-stretch.json +594 -0
- package/conformance/motion/corpus/spec-transform.json +273 -0
- package/conformance/motion/corpus/spec-trim-path.json +209 -0
- package/conformance/motion/corpus/web-adrock.json +1 -0
- package/conformance/motion/corpus/web-bacon.json +1 -0
- package/conformance/motion/corpus/web-banner.json +1 -0
- package/conformance/motion/corpus/web-bodymovin.json +1 -0
- package/conformance/motion/corpus/web-dalek.json +1 -0
- package/conformance/motion/corpus/web-footage-data.json +1 -0
- package/conformance/motion/corpus/web-lights.json +1 -0
- package/conformance/motion/corpus/web-ripple.json +1 -0
- package/conformance/motion/corpus/web-starfish.json +1 -0
- package/conformance/motion/known-gaps.json +35 -0
- package/conformance/motion/parity/group-transforms-parenting@0.png +0 -0
- package/conformance/motion/parity/group-transforms-parenting@10.png +0 -0
- package/conformance/motion/parity/hidden-unknown-inactive@0.png +0 -0
- package/conformance/motion/parity/keyframes-transform@0.png +0 -0
- package/conformance/motion/parity/keyframes-transform@10.png +0 -0
- package/conformance/motion/parity/keyframes-transform@15.png +0 -0
- package/conformance/motion/parity/keyframes-transform@5.png +0 -0
- package/conformance/motion/parity/layer-opacity-blend@0.png +0 -0
- package/conformance/motion/parity/linear-gradient@0.png +0 -0
- package/conformance/motion/parity/masks-modes@0.png +0 -0
- package/conformance/motion/parity/matte-alpha@0.png +0 -0
- package/conformance/motion/parity/matte-luma@0.png +0 -0
- package/conformance/motion/parity/matte-parent-tp@0.png +0 -0
- package/conformance/motion/parity/path-evenodd@0.png +0 -0
- package/conformance/motion/parity/precomp-clip-offset@0.png +0 -0
- package/conformance/motion/parity/precomp-clip-offset@15.png +0 -0
- package/conformance/motion/parity/precomp-clip-offset@5.png +0 -0
- package/conformance/motion/parity/radial-gradient-highlight@0.png +0 -0
- package/conformance/motion/parity/rect-solid-fill@0.png +0 -0
- package/conformance/motion/parity/repeater@0.png +0 -0
- package/conformance/motion/parity/rounded-rect-ellipse@0.png +0 -0
- package/conformance/motion/parity/solid-and-image@0.png +0 -0
- package/conformance/motion/parity/split-position-skew@0.png +0 -0
- package/conformance/motion/parity/split-position-skew@10.png +0 -0
- package/conformance/motion/parity/star-polygon@0.png +0 -0
- package/conformance/motion/parity/stroke-caps-joins@0.png +0 -0
- package/conformance/motion/parity/stroke-dashes@0.png +0 -0
- package/conformance/motion/parity/stroke-dashes@10.png +0 -0
- package/conformance/motion/parity/time-remap@0.png +0 -0
- package/conformance/motion/parity/time-remap@10.png +0 -0
- package/conformance/motion/parity/time-remap@19.png +0 -0
- package/conformance/motion/parity/time-stretch@0.png +0 -0
- package/conformance/motion/parity/time-stretch@10.png +0 -0
- package/conformance/motion/parity/trim-individually@0.png +0 -0
- package/conformance/motion/parity/trim-path@0.png +0 -0
- package/conformance/motion/parity/trim-path@10.png +0 -0
- package/conformance/motion/refs/index.json +688 -0
- package/conformance/motion/refs/skottie-3d-parenting-nocamera@0.png +0 -0
- package/conformance/motion/refs/skottie-3d-parenting-nocamera@150.png +0 -0
- package/conformance/motion/refs/skottie-3d-parenting-nocamera@270.png +0 -0
- package/conformance/motion/refs/skottie-auto-orient-2@0.png +0 -0
- package/conformance/motion/refs/skottie-auto-orient-2@210.png +0 -0
- package/conformance/motion/refs/skottie-auto-orient-2@378.png +0 -0
- package/conformance/motion/refs/skottie-auto-orient@0.png +0 -0
- package/conformance/motion/refs/skottie-auto-orient@300.png +0 -0
- package/conformance/motion/refs/skottie-auto-orient@540.png +0 -0
- package/conformance/motion/refs/skottie-bezier-extranormal@0.png +0 -0
- package/conformance/motion/refs/skottie-bezier-extranormal@150.png +0 -0
- package/conformance/motion/refs/skottie-bezier-extranormal@270.png +0 -0
- package/conformance/motion/refs/skottie-blendmode-hardmix@0.png +0 -0
- package/conformance/motion/refs/skottie-blendmode-hardmix@150.png +0 -0
- package/conformance/motion/refs/skottie-blendmode-hardmix@270.png +0 -0
- package/conformance/motion/refs/skottie-chained-mattes@0.png +0 -0
- package/conformance/motion/refs/skottie-chained-mattes@300.png +0 -0
- package/conformance/motion/refs/skottie-chained-mattes@540.png +0 -0
- package/conformance/motion/refs/skottie-dropshadow-ramp@0.png +0 -0
- package/conformance/motion/refs/skottie-dropshadow-ramp@135.png +0 -0
- package/conformance/motion/refs/skottie-dropshadow-ramp@75.png +0 -0
- package/conformance/motion/refs/skottie-dropshadow-style@0.png +0 -0
- package/conformance/motion/refs/skottie-dropshadow-style@300.png +0 -0
- package/conformance/motion/refs/skottie-dropshadow-style@540.png +0 -0
- package/conformance/motion/refs/skottie-effects-transform@0.png +0 -0
- package/conformance/motion/refs/skottie-effects-transform@450.png +0 -0
- package/conformance/motion/refs/skottie-effects-transform@810.png +0 -0
- package/conformance/motion/refs/skottie-fill-effect@0.png +0 -0
- package/conformance/motion/refs/skottie-fill-effect@300.png +0 -0
- package/conformance/motion/refs/skottie-fill-effect@540.png +0 -0
- package/conformance/motion/refs/skottie-fill-rule@0.png +0 -0
- package/conformance/motion/refs/skottie-fill-rule@150.png +0 -0
- package/conformance/motion/refs/skottie-fill-rule@270.png +0 -0
- package/conformance/motion/refs/skottie-gaussian-blur@0.png +0 -0
- package/conformance/motion/refs/skottie-gaussian-blur@150.png +0 -0
- package/conformance/motion/refs/skottie-gaussian-blur@270.png +0 -0
- package/conformance/motion/refs/skottie-gradient-opacity@0.png +0 -0
- package/conformance/motion/refs/skottie-gradient-opacity@150.png +0 -0
- package/conformance/motion/refs/skottie-gradient-opacity@270.png +0 -0
- package/conformance/motion/refs/skottie-gradient-radial-highlight@0.png +0 -0
- package/conformance/motion/refs/skottie-gradient-radial-highlight@135.png +0 -0
- package/conformance/motion/refs/skottie-gradient-radial-highlight@75.png +0 -0
- package/conformance/motion/refs/skottie-hidden-shapes-layers@0.png +0 -0
- package/conformance/motion/refs/skottie-hidden-shapes-layers@150.png +0 -0
- package/conformance/motion/refs/skottie-hidden-shapes-layers@270.png +0 -0
- package/conformance/motion/refs/skottie-huesaturation-effect@0.png +0 -0
- package/conformance/motion/refs/skottie-huesaturation-effect@30.png +0 -0
- package/conformance/motion/refs/skottie-huesaturation-effect@54.png +0 -0
- package/conformance/motion/refs/skottie-invert-effect@0.png +0 -0
- package/conformance/motion/refs/skottie-invert-effect@300.png +0 -0
- package/conformance/motion/refs/skottie-invert-effect@540.png +0 -0
- package/conformance/motion/refs/skottie-luma-matte@0.png +0 -0
- package/conformance/motion/refs/skottie-luma-matte@150.png +0 -0
- package/conformance/motion/refs/skottie-luma-matte@270.png +0 -0
- package/conformance/motion/refs/skottie-mask-feather@0.png +0 -0
- package/conformance/motion/refs/skottie-mask-feather@150.png +0 -0
- package/conformance/motion/refs/skottie-mask-feather@270.png +0 -0
- package/conformance/motion/refs/skottie-masking-opaque@0.png +0 -0
- package/conformance/motion/refs/skottie-masking-opaque@135.png +0 -0
- package/conformance/motion/refs/skottie-masking-opaque@75.png +0 -0
- package/conformance/motion/refs/skottie-masking-translucent@0.png +0 -0
- package/conformance/motion/refs/skottie-masking-translucent@135.png +0 -0
- package/conformance/motion/refs/skottie-masking-translucent@75.png +0 -0
- package/conformance/motion/refs/skottie-matte-blendmode@0.png +0 -0
- package/conformance/motion/refs/skottie-matte-blendmode@150.png +0 -0
- package/conformance/motion/refs/skottie-matte-blendmode@270.png +0 -0
- package/conformance/motion/refs/skottie-matte-nonsequential@0.png +0 -0
- package/conformance/motion/refs/skottie-matte-nonsequential@150.png +0 -0
- package/conformance/motion/refs/skottie-matte-nonsequential@270.png +0 -0
- package/conformance/motion/refs/skottie-matte-visible@0.png +0 -0
- package/conformance/motion/refs/skottie-matte-visible@150.png +0 -0
- package/conformance/motion/refs/skottie-matte-visible@270.png +0 -0
- package/conformance/motion/refs/skottie-mergepaths-effect@0.png +0 -0
- package/conformance/motion/refs/skottie-mergepaths-effect@210.png +0 -0
- package/conformance/motion/refs/skottie-mergepaths-effect@378.png +0 -0
- package/conformance/motion/refs/skottie-motion-blur-mask@0.png +0 -0
- package/conformance/motion/refs/skottie-motion-blur-mask@150.png +0 -0
- package/conformance/motion/refs/skottie-motion-blur-mask@270.png +0 -0
- package/conformance/motion/refs/skottie-nested-animation@0.png +0 -0
- package/conformance/motion/refs/skottie-nested-animation@300.png +0 -0
- package/conformance/motion/refs/skottie-nested-animation@540.png +0 -0
- package/conformance/motion/refs/skottie-offsetpaths-effect@0.png +0 -0
- package/conformance/motion/refs/skottie-offsetpaths-effect@150.png +0 -0
- package/conformance/motion/refs/skottie-offsetpaths-effect@270.png +0 -0
- package/conformance/motion/refs/skottie-phonehub-connecting@0.png +0 -0
- package/conformance/motion/refs/skottie-puckerbloat-effect@0.png +0 -0
- package/conformance/motion/refs/skottie-puckerbloat-effect@210.png +0 -0
- package/conformance/motion/refs/skottie-puckerbloat-effect@378.png +0 -0
- package/conformance/motion/refs/skottie-repeater@0.png +0 -0
- package/conformance/motion/refs/skottie-repeater@300.png +0 -0
- package/conformance/motion/refs/skottie-repeater@540.png +0 -0
- package/conformance/motion/refs/skottie-sample-1@0.png +0 -0
- package/conformance/motion/refs/skottie-sample-1@100.png +0 -0
- package/conformance/motion/refs/skottie-sample-1@180.png +0 -0
- package/conformance/motion/refs/skottie-sample-search@0.png +0 -0
- package/conformance/motion/refs/skottie-sample-search@27.png +0 -0
- package/conformance/motion/refs/skottie-sample-search@48.png +0 -0
- package/conformance/motion/refs/skottie-spatial-supernormal@0.png +0 -0
- package/conformance/motion/refs/skottie-spatial-supernormal@200.png +0 -0
- package/conformance/motion/refs/skottie-spatial-supernormal@360.png +0 -0
- package/conformance/motion/refs/skottie-text-animator-1@0.png +0 -0
- package/conformance/motion/refs/skottie-text-animator-1@150.png +0 -0
- package/conformance/motion/refs/skottie-text-animator-1@270.png +0 -0
- package/conformance/motion/refs/skottie-text-fill-over-stroke@0.png +0 -0
- package/conformance/motion/refs/skottie-text-fill-over-stroke@210.png +0 -0
- package/conformance/motion/refs/skottie-text-fill-over-stroke@378.png +0 -0
- package/conformance/motion/refs/skottie-text-tracking@0.png +0 -0
- package/conformance/motion/refs/skottie-text-tracking@108.png +0 -0
- package/conformance/motion/refs/skottie-text-tracking@60.png +0 -0
- package/conformance/motion/refs/skottie-text-valign@0.png +0 -0
- package/conformance/motion/refs/skottie-text-valign@150.png +0 -0
- package/conformance/motion/refs/skottie-text-valign@270.png +0 -0
- package/conformance/motion/refs/skottie-time-reverse@0.png +0 -0
- package/conformance/motion/refs/skottie-time-reverse@300.png +0 -0
- package/conformance/motion/refs/skottie-time-reverse@540.png +0 -0
- package/conformance/motion/refs/skottie-transform-skew@0.png +0 -0
- package/conformance/motion/refs/skottie-transform-skew@300.png +0 -0
- package/conformance/motion/refs/skottie-transform-skew@540.png +0 -0
- package/conformance/motion/refs/skottie-trimpath-fill@0.png +0 -0
- package/conformance/motion/refs/skottie-trimpath-fill@300.png +0 -0
- package/conformance/motion/refs/skottie-trimpath-fill@540.png +0 -0
- package/conformance/motion/refs/skottie-trimpath-modes@0.png +0 -0
- package/conformance/motion/refs/skottie-trimpath-modes@300.png +0 -0
- package/conformance/motion/refs/skottie-trimpath-modes@540.png +0 -0
- package/conformance/motion/refs/skottie-tritone-effect@0.png +0 -0
- package/conformance/motion/refs/skottie-tritone-effect@300.png +0 -0
- package/conformance/motion/refs/skottie-tritone-effect@540.png +0 -0
- package/conformance/motion/refs/spec-blend-mode@0.png +0 -0
- package/conformance/motion/refs/spec-blend-mode@162.png +0 -0
- package/conformance/motion/refs/spec-blend-mode@90.png +0 -0
- package/conformance/motion/refs/spec-ellipse@0.png +0 -0
- package/conformance/motion/refs/spec-ellipse@162.png +0 -0
- package/conformance/motion/refs/spec-ellipse@90.png +0 -0
- package/conformance/motion/refs/spec-fill@0.png +0 -0
- package/conformance/motion/refs/spec-fill@162.png +0 -0
- package/conformance/motion/refs/spec-fill@90.png +0 -0
- package/conformance/motion/refs/spec-gradient-stroke@0.png +0 -0
- package/conformance/motion/refs/spec-gradient-stroke@162.png +0 -0
- package/conformance/motion/refs/spec-gradient-stroke@90.png +0 -0
- package/conformance/motion/refs/spec-gradient@0.png +0 -0
- package/conformance/motion/refs/spec-gradient@162.png +0 -0
- package/conformance/motion/refs/spec-gradient@90.png +0 -0
- package/conformance/motion/refs/spec-mask@0.png +0 -0
- package/conformance/motion/refs/spec-mask@300.png +0 -0
- package/conformance/motion/refs/spec-mask@540.png +0 -0
- package/conformance/motion/refs/spec-masks@0.png +0 -0
- package/conformance/motion/refs/spec-masks@135.png +0 -0
- package/conformance/motion/refs/spec-masks@75.png +0 -0
- package/conformance/motion/refs/spec-matte@0.png +0 -0
- package/conformance/motion/refs/spec-matte@162.png +0 -0
- package/conformance/motion/refs/spec-matte@90.png +0 -0
- package/conformance/motion/refs/spec-metadata@0.png +0 -0
- package/conformance/motion/refs/spec-metadata@162.png +0 -0
- package/conformance/motion/refs/spec-metadata@90.png +0 -0
- package/conformance/motion/refs/spec-path@0.png +0 -0
- package/conformance/motion/refs/spec-path@162.png +0 -0
- package/conformance/motion/refs/spec-path@90.png +0 -0
- package/conformance/motion/refs/spec-pucker-bloat@0.png +0 -0
- package/conformance/motion/refs/spec-pucker-bloat@162.png +0 -0
- package/conformance/motion/refs/spec-pucker-bloat@90.png +0 -0
- package/conformance/motion/refs/spec-rectangle@0.png +0 -0
- package/conformance/motion/refs/spec-rectangle@162.png +0 -0
- package/conformance/motion/refs/spec-rectangle@90.png +0 -0
- package/conformance/motion/refs/spec-rounded-corners@0.png +0 -0
- package/conformance/motion/refs/spec-rounded-corners@162.png +0 -0
- package/conformance/motion/refs/spec-rounded-corners@90.png +0 -0
- package/conformance/motion/refs/spec-slots@0.png +0 -0
- package/conformance/motion/refs/spec-slots@450.png +0 -0
- package/conformance/motion/refs/spec-slots@810.png +0 -0
- package/conformance/motion/refs/spec-star@0.png +0 -0
- package/conformance/motion/refs/spec-star@162.png +0 -0
- package/conformance/motion/refs/spec-star@90.png +0 -0
- package/conformance/motion/refs/spec-stroke@0.png +0 -0
- package/conformance/motion/refs/spec-stroke@162.png +0 -0
- package/conformance/motion/refs/spec-stroke@90.png +0 -0
- package/conformance/motion/refs/spec-test-ellipse-xy-pos@0.png +0 -0
- package/conformance/motion/refs/spec-test-ellipse-xy-pos@162.png +0 -0
- package/conformance/motion/refs/spec-test-ellipse-xy-pos@90.png +0 -0
- package/conformance/motion/refs/spec-test-gradient-fill@0.png +0 -0
- package/conformance/motion/refs/spec-test-gradient-fill@30.png +0 -0
- package/conformance/motion/refs/spec-test-gradient-fill@54.png +0 -0
- package/conformance/motion/refs/spec-test-gradient-stroke@0.png +0 -0
- package/conformance/motion/refs/spec-test-gradient-stroke@30.png +0 -0
- package/conformance/motion/refs/spec-test-gradient-stroke@54.png +0 -0
- package/conformance/motion/refs/spec-test-unknown-shape@0.png +0 -0
- package/conformance/motion/refs/spec-test-unknown-shape@162.png +0 -0
- package/conformance/motion/refs/spec-test-unknown-shape@90.png +0 -0
- package/conformance/motion/refs/spec-time-remap@0.png +0 -0
- package/conformance/motion/refs/spec-time-remap@300.png +0 -0
- package/conformance/motion/refs/spec-time-remap@540.png +0 -0
- package/conformance/motion/refs/spec-time-stretch@0.png +0 -0
- package/conformance/motion/refs/spec-time-stretch@300.png +0 -0
- package/conformance/motion/refs/spec-time-stretch@540.png +0 -0
- package/conformance/motion/refs/spec-transform@0.png +0 -0
- package/conformance/motion/refs/spec-transform@162.png +0 -0
- package/conformance/motion/refs/spec-transform@90.png +0 -0
- package/conformance/motion/refs/spec-trim-path@0.png +0 -0
- package/conformance/motion/refs/spec-trim-path@162.png +0 -0
- package/conformance/motion/refs/spec-trim-path@90.png +0 -0
- package/conformance/motion/refs/web-adrock@0.png +0 -0
- package/conformance/motion/refs/web-adrock@10.png +0 -0
- package/conformance/motion/refs/web-adrock@18.png +0 -0
- package/conformance/motion/refs/web-bacon@0.png +0 -0
- package/conformance/motion/refs/web-bacon@126.png +0 -0
- package/conformance/motion/refs/web-bacon@70.png +0 -0
- package/conformance/motion/refs/web-banner@0.png +0 -0
- package/conformance/motion/refs/web-banner@301.png +0 -0
- package/conformance/motion/refs/web-banner@542.png +0 -0
- package/conformance/motion/refs/web-bodymovin@0.png +0 -0
- package/conformance/motion/refs/web-bodymovin@51.png +0 -0
- package/conformance/motion/refs/web-bodymovin@92.png +0 -0
- package/conformance/motion/refs/web-dalek@0.png +0 -0
- package/conformance/motion/refs/web-dalek@145.png +0 -0
- package/conformance/motion/refs/web-dalek@261.png +0 -0
- package/conformance/motion/refs/web-footage-data@0.png +0 -0
- package/conformance/motion/refs/web-footage-data@180.png +0 -0
- package/conformance/motion/refs/web-footage-data@324.png +0 -0
- package/conformance/motion/refs/web-lights@0.png +0 -0
- package/conformance/motion/refs/web-lights@150.png +0 -0
- package/conformance/motion/refs/web-lights@270.png +0 -0
- package/conformance/motion/refs/web-ripple@0.png +0 -0
- package/conformance/motion/refs/web-ripple@180.png +0 -0
- package/conformance/motion/refs/web-ripple@324.png +0 -0
- package/conformance/motion/refs/web-starfish@0.png +0 -0
- package/conformance/motion/refs/web-starfish@150.png +0 -0
- package/conformance/motion/refs/web-starfish@270.png +0 -0
- package/conformance/motion/render-refs.ts +126 -0
- package/conformance/motion/report.json +1367 -0
- package/conformance/motion/web-parity-gaps.json +12 -0
- package/conformance/motion-parity-entry.ts +3 -0
- package/conformance/motion-parity.ts +101 -0
- package/dist/chunks/{index-gtk2gwsb.js → index-4xczxey5.js} +187 -40
- package/dist/chunks/{index-gtk2gwsb.js.map → index-4xczxey5.js.map} +7 -6
- package/dist/chunks/{index-62yzr94z.js → index-5sjj5p84.js} +270 -8
- package/dist/chunks/{index-62yzr94z.js.map → index-5sjj5p84.js.map} +2 -2
- package/dist/chunks/{index-fy7y2nz8.js → index-cvf7bbs5.js} +23 -2
- package/dist/chunks/{index-fy7y2nz8.js.map → index-cvf7bbs5.js.map} +1 -1
- package/dist/chunks/index-dgkf6yw5.js +48 -0
- package/dist/chunks/index-dgkf6yw5.js.map +10 -0
- package/dist/chunks/{index-5fmaa0xq.js → index-f9wkb6aq.js} +851 -36
- package/dist/chunks/{index-5fmaa0xq.js.map → index-f9wkb6aq.js.map} +2 -2
- package/dist/chunks/index-t2mwfbb6.js +1515 -0
- package/dist/chunks/index-t2mwfbb6.js.map +15 -0
- package/dist/chunks/{index-bg2jsgjq.js → index-vkn82srs.js} +479 -10
- package/dist/chunks/{index-bg2jsgjq.js.map → index-vkn82srs.js.map} +2 -2
- package/dist/chunks/wasm-ctcc3cma.js +424 -0
- package/dist/chunks/wasm-ctcc3cma.js.map +11 -0
- package/dist/conformance.js +10941 -563
- package/dist/conformance.js.map +2 -2
- package/dist/entries/prompt.js +2 -2
- package/dist/entries/schema.js +3 -3
- package/dist/host/index.js +20 -4
- package/dist/host/index.js.map +1 -1
- package/dist/index.js +364 -99
- package/dist/index.js.map +4 -4
- package/dist/types/src/catalog.generated.d.ts +71 -5
- package/dist/types/src/host/contract.d.ts +17 -0
- package/dist/types/src/host/exposes.d.ts +68 -0
- package/dist/types/src/host/index.d.ts +1 -0
- package/dist/types/src/host/package.d.ts +8 -0
- package/dist/types/src/index.d.ts +2 -0
- package/dist/types/src/layout.d.ts +2 -0
- package/dist/types/src/limits.d.ts +1 -0
- package/dist/types/src/motion/index.d.ts +1 -0
- package/dist/types/src/motion/server.d.ts +9 -0
- package/dist/types/src/motion/wasm.d.ts +11 -0
- package/dist/types/src/web/coerce.d.ts +3 -0
- package/dist/types/src/web/focus.d.ts +8 -0
- package/dist/types/src/web/index.d.ts +5 -2
- package/dist/types/src/web/primitives/carousel.d.ts +17 -0
- package/dist/types/src/web/primitives/dock.d.ts +5 -2
- package/dist/types/src/web/primitives/index.d.ts +5 -0
- package/dist/types/src/web/primitives/mosaic.d.ts +30 -0
- package/dist/types/src/web/primitives/motion-paint.d.ts +36 -0
- package/dist/types/src/web/primitives/motion.d.ts +162 -0
- package/dist/types/src/web/primitives/outline.d.ts +22 -0
- package/dist/types/src/web/primitives/zoomable-image.d.ts +158 -0
- package/dist/types/src/web/table.d.ts +8 -0
- package/dist/types/src/zoom.d.ts +128 -0
- package/dist/types/wasm/motion/bytes.d.ts +1 -0
- package/dist/web/index.js +171 -230
- package/dist/web/index.js.map +9 -10
- package/dist/web/primitives/index.js +641 -6
- package/dist/web/primitives/index.js.map +9 -5
- package/docs/components.generated.json +542 -5
- package/docs/package-format.md +56 -1
- package/docs/round-6-contract.md +110 -0
- package/docs/themes.generated.json +66 -2
- package/fixtures/bind-time.json +1468 -0
- package/fixtures/catalog-components.json +1026 -16
- package/fixtures/catalog-macros.json +1279 -157
- package/fixtures/conformance-baseline.json +48893 -47200
- package/fixtures/conformance-known.json +140 -134
- package/fixtures/host-router.json +539 -1
- package/fixtures/kitchen-sink.expanded.json +686 -1
- package/fixtures/kitchen-sink.json +102 -1
- package/fixtures/layout-geometry-round1.json +42 -42
- package/fixtures/motion-frames.json +2618 -0
- package/fixtures/motion-playback.json +528 -0
- package/fixtures/motion-state.json +722 -0
- package/fixtures/motion-validate.json +138 -0
- package/fixtures/primitive-specimens.json +4 -0
- package/fixtures/prompt-budget.json +16 -16
- package/fixtures/specimens.json +839 -21
- package/fixtures/theme-recipes.json +32808 -28396
- package/fixtures/theme-resolved.json +2114 -286
- package/fixtures/zoom.json +1382 -0
- package/generated/ExponentialUICatalog.generated.kt +21 -21
- package/generated/ExponentialUICatalog.generated.swift +21 -21
- package/generated/ExponentialUIThemes.generated.kt +7 -7
- package/generated/ExponentialUIThemes.generated.swift +7 -7
- package/generated/catalog.descriptions.generated.rs +1 -1
- package/generated/catalog.generated.rs +30 -30
- package/generated/catalog.themes.generated.rs +8 -8
- package/generated/core.descriptions.json +267 -5
- package/generated/core.runtime.json +275 -1
- package/package.json +1 -1
- package/themes/neutral.theme.json +460 -3
- package/dist/chunks/index-t6qz1770.js +0 -95
- package/dist/chunks/index-t6qz1770.js.map +0 -11
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"$comment": "VAPP-91: the host router (catalog/host.json ops): server messages in, ops out, in order. Inputs hand-written; `expected` filled by the generator from src/host/router.ts. A conformance runner creates ONE router per flow with `extensionIds`, installs `packages` (their install issues are `installIssues`), then routes every step's message and compares the ops. VAPP-122: `records` = validateRecord(packages[package].records[kind].schema, data) → issues; `acme.hours` declares two kinds, `acme.badrecords` every schema mistake. Keys of `records` and of every `properties` are written in sorted order: the Rust core iterates its maps sorted, so the issue order is the same on every platform. VAPP-161 (format version 2): `acme.v2` uses every new key validly (formatVersion, a records: binding, the records.* functions, the three tool transports, an empty extensions list); `acme.charts` declares an extension: not available under the default catalogs, installed by the VAPP-161 flow that registers it; `acme.v2broken` makes every tools / extensions / records-source mistake; `acme.future` is a newer format version; `acme.v1` is a version-1 package that stays valid.",
|
|
2
|
+
"$comment": "VAPP-91: the host router (catalog/host.json ops): server messages in, ops out, in order. Inputs hand-written; `expected` filled by the generator from src/host/router.ts. A conformance runner creates ONE router per flow with `extensionIds`, installs `packages` (their install issues are `installIssues`), then routes every step's message and compares the ops. VAPP-122: `records` = validateRecord(packages[package].records[kind].schema, data) → issues; `acme.hours` declares two kinds, `acme.badrecords` every schema mistake. Keys of `records` and of every `properties` are written in sorted order: the Rust core iterates its maps sorted, so the issue order is the same on every platform. VAPP-161 (format version 2): `acme.v2` uses every new key validly (formatVersion, a records: binding, the records.* functions, the three tool transports, an empty extensions list); `acme.charts` declares an extension: not available under the default catalogs, installed by the VAPP-161 flow that registers it; `acme.v2broken` makes every tools / extensions / records-source mistake; `acme.future` is a newer format version; `acme.v1` is a version-1 package that stays valid. VAPP-180: `acme.exposes` declares `upstreams` and valid `exposes` (a records read and upsert, two action bindings, an upstream); `acme.badexposes` makes every format mistake of an exposed tool, a duplicate upstream included; `acme.exposeslist` has neither list a list.",
|
|
3
3
|
"packages": {
|
|
4
4
|
"acme.devices": {
|
|
5
5
|
"id": "acme.devices",
|
|
@@ -556,6 +556,426 @@
|
|
|
556
556
|
]
|
|
557
557
|
}
|
|
558
558
|
]
|
|
559
|
+
},
|
|
560
|
+
"acme.exposes": {
|
|
561
|
+
"id": "acme.exposes",
|
|
562
|
+
"name": "Hours with tools",
|
|
563
|
+
"version": "1.0.0",
|
|
564
|
+
"catalogId": "https://ui.exponential.at/catalogs/core/v1",
|
|
565
|
+
"templates": {
|
|
566
|
+
"t": {
|
|
567
|
+
"components": [
|
|
568
|
+
{
|
|
569
|
+
"id": "root",
|
|
570
|
+
"component": "Column"
|
|
571
|
+
}
|
|
572
|
+
]
|
|
573
|
+
}
|
|
574
|
+
},
|
|
575
|
+
"records": {
|
|
576
|
+
"entry": {
|
|
577
|
+
"schema": {
|
|
578
|
+
"type": "object",
|
|
579
|
+
"properties": {
|
|
580
|
+
"date": {
|
|
581
|
+
"type": "string",
|
|
582
|
+
"format": "date"
|
|
583
|
+
},
|
|
584
|
+
"hours": {
|
|
585
|
+
"type": "number"
|
|
586
|
+
}
|
|
587
|
+
},
|
|
588
|
+
"required": [
|
|
589
|
+
"date"
|
|
590
|
+
]
|
|
591
|
+
}
|
|
592
|
+
}
|
|
593
|
+
},
|
|
594
|
+
"upstreams": [
|
|
595
|
+
"m5"
|
|
596
|
+
],
|
|
597
|
+
"exposes": [
|
|
598
|
+
{
|
|
599
|
+
"name": "list_entries",
|
|
600
|
+
"title": "List entries",
|
|
601
|
+
"description": "The time entries of a day.",
|
|
602
|
+
"input": {
|
|
603
|
+
"type": "object",
|
|
604
|
+
"properties": {
|
|
605
|
+
"day": {
|
|
606
|
+
"type": "string"
|
|
607
|
+
},
|
|
608
|
+
"limit": {
|
|
609
|
+
"type": "integer"
|
|
610
|
+
}
|
|
611
|
+
}
|
|
612
|
+
},
|
|
613
|
+
"access": "read",
|
|
614
|
+
"run": {
|
|
615
|
+
"records": {
|
|
616
|
+
"op": "list",
|
|
617
|
+
"kind": "entry",
|
|
618
|
+
"where": {
|
|
619
|
+
"date": "${input.day}"
|
|
620
|
+
},
|
|
621
|
+
"limit": "${input.limit}"
|
|
622
|
+
}
|
|
623
|
+
}
|
|
624
|
+
},
|
|
625
|
+
{
|
|
626
|
+
"name": "add_entry",
|
|
627
|
+
"title": "Add an entry",
|
|
628
|
+
"description": "Log hours.",
|
|
629
|
+
"input": {
|
|
630
|
+
"type": "object",
|
|
631
|
+
"properties": {
|
|
632
|
+
"entry": {
|
|
633
|
+
"type": "object"
|
|
634
|
+
}
|
|
635
|
+
},
|
|
636
|
+
"required": [
|
|
637
|
+
"entry"
|
|
638
|
+
]
|
|
639
|
+
},
|
|
640
|
+
"access": "write",
|
|
641
|
+
"run": {
|
|
642
|
+
"records": {
|
|
643
|
+
"op": "upsert",
|
|
644
|
+
"kind": "entry",
|
|
645
|
+
"data": "${input.entry}"
|
|
646
|
+
}
|
|
647
|
+
}
|
|
648
|
+
},
|
|
649
|
+
{
|
|
650
|
+
"name": "log_comment",
|
|
651
|
+
"title": "Log a comment",
|
|
652
|
+
"description": "Comment the logged hours on an issue.",
|
|
653
|
+
"input": {
|
|
654
|
+
"type": "object",
|
|
655
|
+
"properties": {
|
|
656
|
+
"hours": {
|
|
657
|
+
"type": "number"
|
|
658
|
+
},
|
|
659
|
+
"issue": {
|
|
660
|
+
"type": "string"
|
|
661
|
+
}
|
|
662
|
+
}
|
|
663
|
+
},
|
|
664
|
+
"access": "write",
|
|
665
|
+
"run": {
|
|
666
|
+
"action": "exponential.comments.create",
|
|
667
|
+
"args": {
|
|
668
|
+
"body": "Logged ${input.hours} h",
|
|
669
|
+
"issueId": "${input.issue}"
|
|
670
|
+
}
|
|
671
|
+
}
|
|
672
|
+
},
|
|
673
|
+
{
|
|
674
|
+
"name": "open_issues",
|
|
675
|
+
"title": "Open issues",
|
|
676
|
+
"description": "A write tool over a read only narrows who sees it.",
|
|
677
|
+
"input": {
|
|
678
|
+
"type": "object"
|
|
679
|
+
},
|
|
680
|
+
"access": "write",
|
|
681
|
+
"run": {
|
|
682
|
+
"action": "exponential.issues.list",
|
|
683
|
+
"args": {}
|
|
684
|
+
}
|
|
685
|
+
},
|
|
686
|
+
{
|
|
687
|
+
"name": "find_customer",
|
|
688
|
+
"title": "Find a customer",
|
|
689
|
+
"description": "Search m5 customers.",
|
|
690
|
+
"input": {
|
|
691
|
+
"type": "object",
|
|
692
|
+
"properties": {
|
|
693
|
+
"q": {
|
|
694
|
+
"type": "string"
|
|
695
|
+
}
|
|
696
|
+
}
|
|
697
|
+
},
|
|
698
|
+
"access": "read",
|
|
699
|
+
"run": {
|
|
700
|
+
"upstream": "m5",
|
|
701
|
+
"tool": "search_customers",
|
|
702
|
+
"args": {
|
|
703
|
+
"query": "${input.q}"
|
|
704
|
+
}
|
|
705
|
+
}
|
|
706
|
+
}
|
|
707
|
+
]
|
|
708
|
+
},
|
|
709
|
+
"acme.badexposes": {
|
|
710
|
+
"id": "acme.badexposes",
|
|
711
|
+
"name": "Bad tools",
|
|
712
|
+
"version": "1.0.0",
|
|
713
|
+
"catalogId": "https://ui.exponential.at/catalogs/core/v1",
|
|
714
|
+
"templates": {
|
|
715
|
+
"t": {
|
|
716
|
+
"components": [
|
|
717
|
+
{
|
|
718
|
+
"id": "root",
|
|
719
|
+
"component": "Column"
|
|
720
|
+
}
|
|
721
|
+
]
|
|
722
|
+
}
|
|
723
|
+
},
|
|
724
|
+
"records": {
|
|
725
|
+
"entry": {
|
|
726
|
+
"schema": {
|
|
727
|
+
"type": "object",
|
|
728
|
+
"properties": {
|
|
729
|
+
"date": {
|
|
730
|
+
"type": "string",
|
|
731
|
+
"format": "date"
|
|
732
|
+
},
|
|
733
|
+
"hours": {
|
|
734
|
+
"type": "number"
|
|
735
|
+
}
|
|
736
|
+
},
|
|
737
|
+
"required": [
|
|
738
|
+
"date"
|
|
739
|
+
]
|
|
740
|
+
}
|
|
741
|
+
}
|
|
742
|
+
},
|
|
743
|
+
"upstreams": [
|
|
744
|
+
"m5",
|
|
745
|
+
"m5"
|
|
746
|
+
],
|
|
747
|
+
"exposes": [
|
|
748
|
+
"x",
|
|
749
|
+
{
|
|
750
|
+
"name": "List",
|
|
751
|
+
"title": " ",
|
|
752
|
+
"description": "",
|
|
753
|
+
"input": {
|
|
754
|
+
"type": "string"
|
|
755
|
+
},
|
|
756
|
+
"access": "admin",
|
|
757
|
+
"run": {
|
|
758
|
+
"records": {
|
|
759
|
+
"op": "get",
|
|
760
|
+
"kind": "entry",
|
|
761
|
+
"id": "x"
|
|
762
|
+
}
|
|
763
|
+
}
|
|
764
|
+
},
|
|
765
|
+
{
|
|
766
|
+
"name": "list__all",
|
|
767
|
+
"title": "A",
|
|
768
|
+
"description": "A.",
|
|
769
|
+
"input": {
|
|
770
|
+
"type": "object"
|
|
771
|
+
},
|
|
772
|
+
"access": "read",
|
|
773
|
+
"run": {}
|
|
774
|
+
},
|
|
775
|
+
{
|
|
776
|
+
"name": "entries",
|
|
777
|
+
"title": "A",
|
|
778
|
+
"description": "A.",
|
|
779
|
+
"input": {
|
|
780
|
+
"type": "object"
|
|
781
|
+
},
|
|
782
|
+
"access": "write",
|
|
783
|
+
"run": {
|
|
784
|
+
"action": "exponential.issues.create",
|
|
785
|
+
"upstream": "m5",
|
|
786
|
+
"tool": "x"
|
|
787
|
+
}
|
|
788
|
+
},
|
|
789
|
+
{
|
|
790
|
+
"name": "entries",
|
|
791
|
+
"title": "A",
|
|
792
|
+
"description": "A.",
|
|
793
|
+
"input": {
|
|
794
|
+
"type": "object"
|
|
795
|
+
},
|
|
796
|
+
"access": "read",
|
|
797
|
+
"run": {
|
|
798
|
+
"records": {
|
|
799
|
+
"op": "count",
|
|
800
|
+
"kind": "entry"
|
|
801
|
+
}
|
|
802
|
+
}
|
|
803
|
+
},
|
|
804
|
+
{
|
|
805
|
+
"name": "by_day",
|
|
806
|
+
"title": "A",
|
|
807
|
+
"description": "A.",
|
|
808
|
+
"input": {
|
|
809
|
+
"type": "object",
|
|
810
|
+
"properties": {
|
|
811
|
+
"day": {
|
|
812
|
+
"type": "string"
|
|
813
|
+
}
|
|
814
|
+
}
|
|
815
|
+
},
|
|
816
|
+
"access": "read",
|
|
817
|
+
"run": {
|
|
818
|
+
"records": {
|
|
819
|
+
"op": "list",
|
|
820
|
+
"kind": "note",
|
|
821
|
+
"where": {
|
|
822
|
+
"date": "${input.day}",
|
|
823
|
+
"who": "${input.user.email}"
|
|
824
|
+
}
|
|
825
|
+
}
|
|
826
|
+
}
|
|
827
|
+
},
|
|
828
|
+
{
|
|
829
|
+
"name": "drop_entry",
|
|
830
|
+
"title": "A",
|
|
831
|
+
"description": "A.",
|
|
832
|
+
"input": {
|
|
833
|
+
"type": "object"
|
|
834
|
+
},
|
|
835
|
+
"access": "write",
|
|
836
|
+
"run": {
|
|
837
|
+
"records": {
|
|
838
|
+
"op": "delete",
|
|
839
|
+
"kind": "entry",
|
|
840
|
+
"id": "x"
|
|
841
|
+
}
|
|
842
|
+
}
|
|
843
|
+
},
|
|
844
|
+
{
|
|
845
|
+
"name": "drop_issue",
|
|
846
|
+
"title": "A",
|
|
847
|
+
"description": "A.",
|
|
848
|
+
"input": {
|
|
849
|
+
"type": "object"
|
|
850
|
+
},
|
|
851
|
+
"access": "write",
|
|
852
|
+
"run": {
|
|
853
|
+
"action": "exponential.issues.delete",
|
|
854
|
+
"args": {}
|
|
855
|
+
}
|
|
856
|
+
},
|
|
857
|
+
{
|
|
858
|
+
"name": "bad_action",
|
|
859
|
+
"title": "A",
|
|
860
|
+
"description": "A.",
|
|
861
|
+
"input": {
|
|
862
|
+
"type": "object"
|
|
863
|
+
},
|
|
864
|
+
"access": "write",
|
|
865
|
+
"run": {
|
|
866
|
+
"action": "Issues",
|
|
867
|
+
"args": {}
|
|
868
|
+
}
|
|
869
|
+
},
|
|
870
|
+
{
|
|
871
|
+
"name": "new_issue",
|
|
872
|
+
"title": "A",
|
|
873
|
+
"description": "A.",
|
|
874
|
+
"input": {
|
|
875
|
+
"type": "object"
|
|
876
|
+
},
|
|
877
|
+
"access": "read",
|
|
878
|
+
"run": {
|
|
879
|
+
"action": "exponential.issues.create",
|
|
880
|
+
"args": {}
|
|
881
|
+
}
|
|
882
|
+
},
|
|
883
|
+
{
|
|
884
|
+
"name": "add_entry",
|
|
885
|
+
"title": "A",
|
|
886
|
+
"description": "A.",
|
|
887
|
+
"input": {
|
|
888
|
+
"type": "object"
|
|
889
|
+
},
|
|
890
|
+
"access": "read",
|
|
891
|
+
"run": {
|
|
892
|
+
"records": {
|
|
893
|
+
"op": "upsert",
|
|
894
|
+
"kind": "entry",
|
|
895
|
+
"data": {}
|
|
896
|
+
}
|
|
897
|
+
}
|
|
898
|
+
},
|
|
899
|
+
{
|
|
900
|
+
"name": "github",
|
|
901
|
+
"title": "A",
|
|
902
|
+
"description": "A.",
|
|
903
|
+
"input": {
|
|
904
|
+
"type": "object"
|
|
905
|
+
},
|
|
906
|
+
"access": "write",
|
|
907
|
+
"run": {
|
|
908
|
+
"upstream": "github",
|
|
909
|
+
"tool": "create_issue",
|
|
910
|
+
"args": {}
|
|
911
|
+
}
|
|
912
|
+
},
|
|
913
|
+
{
|
|
914
|
+
"name": "drop_customer",
|
|
915
|
+
"title": "A",
|
|
916
|
+
"description": "A.",
|
|
917
|
+
"input": {
|
|
918
|
+
"type": "object"
|
|
919
|
+
},
|
|
920
|
+
"access": "write",
|
|
921
|
+
"run": {
|
|
922
|
+
"upstream": "m5",
|
|
923
|
+
"tool": "delete_customer"
|
|
924
|
+
}
|
|
925
|
+
},
|
|
926
|
+
{
|
|
927
|
+
"name": "no_tool",
|
|
928
|
+
"title": "A",
|
|
929
|
+
"description": "A.",
|
|
930
|
+
"input": {
|
|
931
|
+
"type": "object"
|
|
932
|
+
},
|
|
933
|
+
"access": "write",
|
|
934
|
+
"run": {
|
|
935
|
+
"upstream": "m5",
|
|
936
|
+
"tool": ""
|
|
937
|
+
}
|
|
938
|
+
},
|
|
939
|
+
{
|
|
940
|
+
"name": "long_title",
|
|
941
|
+
"title": "TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT",
|
|
942
|
+
"description": "A.",
|
|
943
|
+
"input": {
|
|
944
|
+
"type": "object",
|
|
945
|
+
"properties": []
|
|
946
|
+
},
|
|
947
|
+
"access": "read",
|
|
948
|
+
"run": {
|
|
949
|
+
"records": {
|
|
950
|
+
"op": "list",
|
|
951
|
+
"kind": "entry"
|
|
952
|
+
}
|
|
953
|
+
}
|
|
954
|
+
}
|
|
955
|
+
]
|
|
956
|
+
},
|
|
957
|
+
"acme.exposeslist": {
|
|
958
|
+
"id": "acme.exposeslist",
|
|
959
|
+
"name": "Tools not a list",
|
|
960
|
+
"version": "1.0.0",
|
|
961
|
+
"catalogId": "https://ui.exponential.at/catalogs/core/v1",
|
|
962
|
+
"templates": {
|
|
963
|
+
"t": {
|
|
964
|
+
"components": [
|
|
965
|
+
{
|
|
966
|
+
"id": "root",
|
|
967
|
+
"component": "Column"
|
|
968
|
+
}
|
|
969
|
+
]
|
|
970
|
+
}
|
|
971
|
+
},
|
|
972
|
+
"upstreams": [
|
|
973
|
+
"m5",
|
|
974
|
+
3
|
|
975
|
+
],
|
|
976
|
+
"exposes": {
|
|
977
|
+
"list": {}
|
|
978
|
+
}
|
|
559
979
|
}
|
|
560
980
|
},
|
|
561
981
|
"flows": [
|
|
@@ -1909,6 +2329,124 @@
|
|
|
1909
2329
|
"message": "extension https://acme.example/catalogs/charts/v1 is not available on this host"
|
|
1910
2330
|
}
|
|
1911
2331
|
]
|
|
2332
|
+
},
|
|
2333
|
+
{
|
|
2334
|
+
"package": "acme.exposes",
|
|
2335
|
+
"expected": []
|
|
2336
|
+
},
|
|
2337
|
+
{
|
|
2338
|
+
"package": "acme.badexposes",
|
|
2339
|
+
"expected": [
|
|
2340
|
+
{
|
|
2341
|
+
"path": "/upstreams/1",
|
|
2342
|
+
"message": "duplicate upstream m5"
|
|
2343
|
+
},
|
|
2344
|
+
{
|
|
2345
|
+
"path": "/exposes/0",
|
|
2346
|
+
"message": "a tool is {name, title, description, input, access, run}"
|
|
2347
|
+
},
|
|
2348
|
+
{
|
|
2349
|
+
"path": "/exposes/1/name",
|
|
2350
|
+
"message": "name is lowercase letters, digits and _ (at most 40, no __)"
|
|
2351
|
+
},
|
|
2352
|
+
{
|
|
2353
|
+
"path": "/exposes/1/title",
|
|
2354
|
+
"message": "title is a non-blank string of at most 80 characters"
|
|
2355
|
+
},
|
|
2356
|
+
{
|
|
2357
|
+
"path": "/exposes/1/description",
|
|
2358
|
+
"message": "description is a non-blank string of at most 1024 characters"
|
|
2359
|
+
},
|
|
2360
|
+
{
|
|
2361
|
+
"path": "/exposes/1/input",
|
|
2362
|
+
"message": "input is a JSON Schema of type object"
|
|
2363
|
+
},
|
|
2364
|
+
{
|
|
2365
|
+
"path": "/exposes/1/access",
|
|
2366
|
+
"message": "access is read or write"
|
|
2367
|
+
},
|
|
2368
|
+
{
|
|
2369
|
+
"path": "/exposes/2/name",
|
|
2370
|
+
"message": "name is lowercase letters, digits and _ (at most 40, no __)"
|
|
2371
|
+
},
|
|
2372
|
+
{
|
|
2373
|
+
"path": "/exposes/2/run",
|
|
2374
|
+
"message": "run holds exactly one of records, action, upstream"
|
|
2375
|
+
},
|
|
2376
|
+
{
|
|
2377
|
+
"path": "/exposes/3/run",
|
|
2378
|
+
"message": "run holds exactly one of records, action, upstream"
|
|
2379
|
+
},
|
|
2380
|
+
{
|
|
2381
|
+
"path": "/exposes/4/name",
|
|
2382
|
+
"message": "duplicate tool entries"
|
|
2383
|
+
},
|
|
2384
|
+
{
|
|
2385
|
+
"path": "/exposes/4/run/records/op",
|
|
2386
|
+
"message": "op is list, get, upsert"
|
|
2387
|
+
},
|
|
2388
|
+
{
|
|
2389
|
+
"path": "/exposes/5/run",
|
|
2390
|
+
"message": "${input.user.email} names no input property"
|
|
2391
|
+
},
|
|
2392
|
+
{
|
|
2393
|
+
"path": "/exposes/5/run/records/kind",
|
|
2394
|
+
"message": "kind names no declared record kind"
|
|
2395
|
+
},
|
|
2396
|
+
{
|
|
2397
|
+
"path": "/exposes/6/run/records/op",
|
|
2398
|
+
"message": "a records delete is destructive: never exposed"
|
|
2399
|
+
},
|
|
2400
|
+
{
|
|
2401
|
+
"path": "/exposes/7/run/action",
|
|
2402
|
+
"message": "a destructive action is never exposed"
|
|
2403
|
+
},
|
|
2404
|
+
{
|
|
2405
|
+
"path": "/exposes/8/run/action",
|
|
2406
|
+
"message": "action is a function name like namespace.function"
|
|
2407
|
+
},
|
|
2408
|
+
{
|
|
2409
|
+
"path": "/exposes/9/access",
|
|
2410
|
+
"message": "the run writes: access is write"
|
|
2411
|
+
},
|
|
2412
|
+
{
|
|
2413
|
+
"path": "/exposes/10/access",
|
|
2414
|
+
"message": "the run writes: access is write"
|
|
2415
|
+
},
|
|
2416
|
+
{
|
|
2417
|
+
"path": "/exposes/11/run/upstream",
|
|
2418
|
+
"message": "upstream names none of the package's upstreams"
|
|
2419
|
+
},
|
|
2420
|
+
{
|
|
2421
|
+
"path": "/exposes/12/run/tool",
|
|
2422
|
+
"message": "a destructive tool is never exposed"
|
|
2423
|
+
},
|
|
2424
|
+
{
|
|
2425
|
+
"path": "/exposes/13/run/tool",
|
|
2426
|
+
"message": "tool is a non-empty string"
|
|
2427
|
+
},
|
|
2428
|
+
{
|
|
2429
|
+
"path": "/exposes/14/title",
|
|
2430
|
+
"message": "title is a non-blank string of at most 80 characters"
|
|
2431
|
+
},
|
|
2432
|
+
{
|
|
2433
|
+
"path": "/exposes/14/input",
|
|
2434
|
+
"message": "input is a JSON Schema of type object"
|
|
2435
|
+
}
|
|
2436
|
+
]
|
|
2437
|
+
},
|
|
2438
|
+
{
|
|
2439
|
+
"package": "acme.exposeslist",
|
|
2440
|
+
"expected": [
|
|
2441
|
+
{
|
|
2442
|
+
"path": "/upstreams",
|
|
2443
|
+
"message": "upstreams is a list of MCP server names"
|
|
2444
|
+
},
|
|
2445
|
+
{
|
|
2446
|
+
"path": "/exposes",
|
|
2447
|
+
"message": "exposes is a list of tools"
|
|
2448
|
+
}
|
|
2449
|
+
]
|
|
1912
2450
|
}
|
|
1913
2451
|
],
|
|
1914
2452
|
"records": [
|