@supersoniks/concorde 4.9.93 → 4.9.95
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 +16 -30
- package/build-infos.json +1 -1
- package/concorde-3d.bundle.js +3911 -0
- package/concorde-3d.es.js +32635 -0
- package/concorde-core.bundle.js +299 -292
- package/concorde-core.es.js +10104 -6071
- package/concorde-hugging-face-infer.bundle.js +32 -0
- package/concorde-hugging-face-infer.es.js +2952 -0
- package/concorde-shader.bundle.js +105 -0
- package/concorde-shader.es.js +7982 -0
- package/concorde-webgpu.bundle.js +296 -0
- package/concorde-webgpu.es.js +8268 -0
- package/dist/concorde-core.bundle.js +299 -292
- package/dist/concorde-core.es.js +10104 -6071
- package/dist/docs-mock-api-sw.js +110 -0
- package/dist/docs-mock-api-sw.js.map +3 -3
- package/docs/assets/{index-D2Q3JyQ6.css → index-BZiZXMU-.css} +1 -1
- package/docs/assets/index-FmK4JaIM.js +11992 -0
- package/docs/crawl/core/components/functional/jsonata/jsonata.html +79 -0
- package/docs/crawl/core/components/ui/form/checkbox/checkbox.html +1 -1
- package/docs/crawl/docs/_core-concept/dataFlow.html +12 -1
- package/docs/crawl/docs/_decorators/get.html +27 -6
- package/docs/crawl/docs/_decorators/patch.html +6 -0
- package/docs/crawl/docs/_decorators/post.html +8 -0
- package/docs/crawl/docs/_decorators/put.html +6 -0
- package/docs/crawl/docs/_misc/docs-mock-api.html +12 -0
- package/docs/crawl/docs/_misc/formelement-subscriber-removal.html +138 -0
- package/docs/crawl/docs/_misc/html-integration.html +3 -2
- package/docs/crawl/hubs/decorators.html +36 -31
- package/docs/crawl/hubs/remote-data.html +39 -36
- package/docs/crawl/index.html +2 -0
- package/docs/docs-mock-api-sw.js +110 -0
- package/docs/docs-mock-api-sw.js.map +3 -3
- package/docs/index.html +2 -2
- package/docs/llms-full.txt +240 -5
- package/docs/llms.txt +2 -0
- package/docs/sitemap.xml +6 -0
- package/docs/src/core/components/functional/jsonata/jsonata.md +56 -0
- package/docs/src/core/components/ui/form/checkbox/checkbox.md +1 -1
- package/docs/src/docs/_core-concept/dataFlow.md +10 -1
- package/docs/src/docs/_decorators/get.md +31 -0
- package/docs/src/docs/_decorators/patch.md +9 -0
- package/docs/src/docs/_decorators/post.md +11 -0
- package/docs/src/docs/_decorators/put.md +9 -0
- package/docs/src/docs/_misc/docs-mock-api.md +3 -0
- package/docs/src/docs/_misc/formelement-subscriber-removal.md +115 -0
- package/docs/src/docs/_misc/html-integration.md +2 -0
- package/docs/src/docs/search/docs-search.json +300 -5
- package/docs/src/tsconfig.json +286 -268
- package/package.json +382 -1080
- package/public/docs-mock-api-sw.js +110 -0
- package/public/docs-mock-api-sw.js.map +3 -3
- package/scripts/post-build.mjs +0 -43
- package/scripts/pre-build.mjs +4 -33
- package/scripts/pre-publish.mjs +0 -2
- package/src/core/components/functional/functional.ts +1 -0
- package/src/core/components/functional/jsonata/jsonata.md +56 -0
- package/src/core/components/functional/jsonata/jsonata.spec.ts +202 -0
- package/src/core/components/functional/jsonata/jsonata.ts +116 -0
- package/src/core/components/functional/sdui/sdui.md +0 -0
- package/src/core/components/ui/button/button.ts +2 -2
- package/src/core/components/ui/form/checkbox/checkbox.md +0 -0
- package/src/core/components/ui/form/input/input.ts +0 -0
- package/src/core/components/ui/form/input-autocomplete/input-autocomplete.md +0 -0
- package/src/core/components/ui/form/select/select.ts +0 -0
- package/src/core/components/ui/form/textarea/textarea.ts +0 -0
- package/src/core/decorators/Subscriber.ts +2 -0
- package/src/core/decorators/subscriber/derive.ts +95 -0
- package/src/core/utils/derive.spec.ts +190 -0
- package/src/core/utils/derive.ts +357 -0
- package/src/core/utils/jsonataHelpers.ts +100 -0
- package/src/core/utils/jsonataRuntime.ts +88 -0
- package/src/docs/_core-concept/dataFlow.md +9 -0
- package/src/docs/_getting-started/create-a-component.md +0 -0
- package/src/docs/_misc/docs-mock-api.md +3 -0
- package/src/docs/components/docs-demo-sources.ts +26 -0
- package/src/docs/docs.ts +1 -0
- package/src/docs/example/docs-jsonata-demos.ts +128 -0
- package/src/docs/mock-api/fixtures-jsonata.ts +131 -0
- package/src/docs/mock-api/router.ts +26 -0
- package/src/docs/navigation/navigation.ts +4 -0
- package/src/docs/search/docs-search.json +2210 -615
- package/src/tsconfig.json +327 -0
- package/src/tsconfig.tsbuildinfo +1 -1
- package/src/utils.ts +13 -0
- package/vite/config.js +23 -35
- package/dist/js/components.js +0 -12
- package/dist/js/components.js.map +0 -1
- package/dist/js/concorde-loaded.js +0 -5
- package/dist/js/concorde-loaded.js.map +0 -1
- package/dist/js/core/_types/endpoint.js +0 -5
- package/dist/js/core/_types/endpoint.js.map +0 -1
- package/dist/js/core/_types/key.js +0 -2
- package/dist/js/core/_types/key.js.map +0 -1
- package/dist/js/core/_types/types.js +0 -3
- package/dist/js/core/_types/types.js.map +0 -1
- package/dist/js/core/components/functional/date/date.js +0 -272
- package/dist/js/core/components/functional/date/date.js.map +0 -1
- package/dist/js/core/components/functional/example/example.js +0 -44
- package/dist/js/core/components/functional/example/example.js.map +0 -1
- package/dist/js/core/components/functional/fetch/fetch.js +0 -79
- package/dist/js/core/components/functional/fetch/fetch.js.map +0 -1
- package/dist/js/core/components/functional/functional.js +0 -17
- package/dist/js/core/components/functional/functional.js.map +0 -1
- package/dist/js/core/components/functional/if/if.js +0 -39
- package/dist/js/core/components/functional/if/if.js.map +0 -1
- package/dist/js/core/components/functional/list/list.js +0 -341
- package/dist/js/core/components/functional/list/list.js.map +0 -1
- package/dist/js/core/components/functional/mix/mix.js +0 -103
- package/dist/js/core/components/functional/mix/mix.js.map +0 -1
- package/dist/js/core/components/functional/queue/queue.js +0 -450
- package/dist/js/core/components/functional/queue/queue.js.map +0 -1
- package/dist/js/core/components/functional/router/redirect.js +0 -54
- package/dist/js/core/components/functional/router/redirect.js.map +0 -1
- package/dist/js/core/components/functional/router/router.js +0 -179
- package/dist/js/core/components/functional/router/router.js.map +0 -1
- package/dist/js/core/components/functional/sdui/SDUIDescriptorTransformer.js +0 -216
- package/dist/js/core/components/functional/sdui/SDUIDescriptorTransformer.js.map +0 -1
- package/dist/js/core/components/functional/sdui/default-library.json +0 -108
- package/dist/js/core/components/functional/sdui/sdui-utils.js +0 -64
- package/dist/js/core/components/functional/sdui/sdui-utils.js.map +0 -1
- package/dist/js/core/components/functional/sdui/sdui.js +0 -266
- package/dist/js/core/components/functional/sdui/sdui.js.map +0 -1
- package/dist/js/core/components/functional/sdui/types.js +0 -2
- package/dist/js/core/components/functional/sdui/types.js.map +0 -1
- package/dist/js/core/components/functional/sonic-scope/sonic-scope.js +0 -22
- package/dist/js/core/components/functional/sonic-scope/sonic-scope.js.map +0 -1
- package/dist/js/core/components/functional/states/states.js +0 -172
- package/dist/js/core/components/functional/states/states.js.map +0 -1
- package/dist/js/core/components/functional/submit/submit.js +0 -284
- package/dist/js/core/components/functional/submit/submit.js.map +0 -1
- package/dist/js/core/components/functional/subscriber/subscriber.js +0 -39
- package/dist/js/core/components/functional/subscriber/subscriber.js.map +0 -1
- package/dist/js/core/components/functional/translation/translation.js +0 -28
- package/dist/js/core/components/functional/translation/translation.js.map +0 -1
- package/dist/js/core/components/functional/value/value.js +0 -28
- package/dist/js/core/components/functional/value/value.js.map +0 -1
- package/dist/js/core/components/ui/_css/scroll.js +0 -27
- package/dist/js/core/components/ui/_css/scroll.js.map +0 -1
- package/dist/js/core/components/ui/_css/shadow.js +0 -22
- package/dist/js/core/components/ui/_css/shadow.js.map +0 -1
- package/dist/js/core/components/ui/_css/size.js +0 -36
- package/dist/js/core/components/ui/_css/size.js.map +0 -1
- package/dist/js/core/components/ui/_css/type.js +0 -92
- package/dist/js/core/components/ui/_css/type.js.map +0 -1
- package/dist/js/core/components/ui/alert/alert.js +0 -213
- package/dist/js/core/components/ui/alert/alert.js.map +0 -1
- package/dist/js/core/components/ui/alert-messages/alert-messages.js +0 -68
- package/dist/js/core/components/ui/alert-messages/alert-messages.js.map +0 -1
- package/dist/js/core/components/ui/badge/badge.js +0 -199
- package/dist/js/core/components/ui/badge/badge.js.map +0 -1
- package/dist/js/core/components/ui/button/button.js +0 -697
- package/dist/js/core/components/ui/button/button.js.map +0 -1
- package/dist/js/core/components/ui/captcha/altchaStyles.js +0 -226
- package/dist/js/core/components/ui/captcha/altchaStyles.js.map +0 -1
- package/dist/js/core/components/ui/captcha/captcha.js +0 -167
- package/dist/js/core/components/ui/captcha/captcha.js.map +0 -1
- package/dist/js/core/components/ui/card/card-footer.js +0 -26
- package/dist/js/core/components/ui/card/card-footer.js.map +0 -1
- package/dist/js/core/components/ui/card/card-header-descripton.js +0 -30
- package/dist/js/core/components/ui/card/card-header-descripton.js.map +0 -1
- package/dist/js/core/components/ui/card/card-header.js +0 -79
- package/dist/js/core/components/ui/card/card-header.js.map +0 -1
- package/dist/js/core/components/ui/card/card-main.js +0 -26
- package/dist/js/core/components/ui/card/card-main.js.map +0 -1
- package/dist/js/core/components/ui/card/card.js +0 -67
- package/dist/js/core/components/ui/card/card.js.map +0 -1
- package/dist/js/core/components/ui/divider/divider.js +0 -200
- package/dist/js/core/components/ui/divider/divider.js.map +0 -1
- package/dist/js/core/components/ui/form/checkbox/checkbox.js +0 -257
- package/dist/js/core/components/ui/form/checkbox/checkbox.js.map +0 -1
- package/dist/js/core/components/ui/form/css/form-control.js +0 -393
- package/dist/js/core/components/ui/form/css/form-control.js.map +0 -1
- package/dist/js/core/components/ui/form/fieldset/fieldset.js +0 -124
- package/dist/js/core/components/ui/form/fieldset/fieldset.js.map +0 -1
- package/dist/js/core/components/ui/form/fieldset/legend-description.js +0 -38
- package/dist/js/core/components/ui/form/fieldset/legend-description.js.map +0 -1
- package/dist/js/core/components/ui/form/fieldset/legend.js +0 -130
- package/dist/js/core/components/ui/form/fieldset/legend.js.map +0 -1
- package/dist/js/core/components/ui/form/form-actions/form-actions.js +0 -47
- package/dist/js/core/components/ui/form/form-actions/form-actions.js.map +0 -1
- package/dist/js/core/components/ui/form/form-layout/form-layout.js +0 -84
- package/dist/js/core/components/ui/form/form-layout/form-layout.js.map +0 -1
- package/dist/js/core/components/ui/form/input/input.js +0 -316
- package/dist/js/core/components/ui/form/input/input.js.map +0 -1
- package/dist/js/core/components/ui/form/input/password-helper.js +0 -134
- package/dist/js/core/components/ui/form/input/password-helper.js.map +0 -1
- package/dist/js/core/components/ui/form/input/same-value-helper.js +0 -85
- package/dist/js/core/components/ui/form/input/same-value-helper.js.map +0 -1
- package/dist/js/core/components/ui/form/input-autocomplete/input-autocomplete.js +0 -405
- package/dist/js/core/components/ui/form/input-autocomplete/input-autocomplete.js.map +0 -1
- package/dist/js/core/components/ui/form/radio/radio.js +0 -63
- package/dist/js/core/components/ui/form/radio/radio.js.map +0 -1
- package/dist/js/core/components/ui/form/select/select.js +0 -323
- package/dist/js/core/components/ui/form/select/select.js.map +0 -1
- package/dist/js/core/components/ui/form/switch/switch.js +0 -90
- package/dist/js/core/components/ui/form/switch/switch.js.map +0 -1
- package/dist/js/core/components/ui/form/textarea/textarea.js +0 -162
- package/dist/js/core/components/ui/form/textarea/textarea.js.map +0 -1
- package/dist/js/core/components/ui/group/group.js +0 -128
- package/dist/js/core/components/ui/group/group.js.map +0 -1
- package/dist/js/core/components/ui/icon/icon.js +0 -145
- package/dist/js/core/components/ui/icon/icon.js.map +0 -1
- package/dist/js/core/components/ui/icon/icons.js +0 -184
- package/dist/js/core/components/ui/icon/icons.js.map +0 -1
- package/dist/js/core/components/ui/icon/icons.json +0 -1
- package/dist/js/core/components/ui/image/image.js +0 -160
- package/dist/js/core/components/ui/image/image.js.map +0 -1
- package/dist/js/core/components/ui/link/link.js +0 -125
- package/dist/js/core/components/ui/link/link.js.map +0 -1
- package/dist/js/core/components/ui/loader/loader.js +0 -106
- package/dist/js/core/components/ui/loader/loader.js.map +0 -1
- package/dist/js/core/components/ui/loader/styles/fixed.js +0 -56
- package/dist/js/core/components/ui/loader/styles/fixed.js.map +0 -1
- package/dist/js/core/components/ui/loader/styles/inline.js +0 -70
- package/dist/js/core/components/ui/loader/styles/inline.js.map +0 -1
- package/dist/js/core/components/ui/menu/menu-item.js +0 -35
- package/dist/js/core/components/ui/menu/menu-item.js.map +0 -1
- package/dist/js/core/components/ui/menu/menu.js +0 -436
- package/dist/js/core/components/ui/menu/menu.js.map +0 -1
- package/dist/js/core/components/ui/modal/modal-actions.js +0 -44
- package/dist/js/core/components/ui/modal/modal-actions.js.map +0 -1
- package/dist/js/core/components/ui/modal/modal-close.js +0 -56
- package/dist/js/core/components/ui/modal/modal-close.js.map +0 -1
- package/dist/js/core/components/ui/modal/modal-content.js +0 -27
- package/dist/js/core/components/ui/modal/modal-content.js.map +0 -1
- package/dist/js/core/components/ui/modal/modal-subtitle.js +0 -34
- package/dist/js/core/components/ui/modal/modal-subtitle.js.map +0 -1
- package/dist/js/core/components/ui/modal/modal-title.js +0 -35
- package/dist/js/core/components/ui/modal/modal-title.js.map +0 -1
- package/dist/js/core/components/ui/modal/modal-utils.js +0 -32
- package/dist/js/core/components/ui/modal/modal-utils.js.map +0 -1
- package/dist/js/core/components/ui/modal/modal.js +0 -568
- package/dist/js/core/components/ui/modal/modal.js.map +0 -1
- package/dist/js/core/components/ui/pop/pop.js +0 -337
- package/dist/js/core/components/ui/pop/pop.js.map +0 -1
- package/dist/js/core/components/ui/progress/progress.js +0 -164
- package/dist/js/core/components/ui/progress/progress.js.map +0 -1
- package/dist/js/core/components/ui/table/table-caption.js +0 -29
- package/dist/js/core/components/ui/table/table-caption.js.map +0 -1
- package/dist/js/core/components/ui/table/table-tbody.js +0 -41
- package/dist/js/core/components/ui/table/table-tbody.js.map +0 -1
- package/dist/js/core/components/ui/table/table-td.js +0 -69
- package/dist/js/core/components/ui/table/table-td.js.map +0 -1
- package/dist/js/core/components/ui/table/table-tfoot.js +0 -28
- package/dist/js/core/components/ui/table/table-tfoot.js.map +0 -1
- package/dist/js/core/components/ui/table/table-th.js +0 -80
- package/dist/js/core/components/ui/table/table-th.js.map +0 -1
- package/dist/js/core/components/ui/table/table-thead.js +0 -26
- package/dist/js/core/components/ui/table/table-thead.js.map +0 -1
- package/dist/js/core/components/ui/table/table-tr.js +0 -67
- package/dist/js/core/components/ui/table/table-tr.js.map +0 -1
- package/dist/js/core/components/ui/table/table.js +0 -106
- package/dist/js/core/components/ui/table/table.js.map +0 -1
- package/dist/js/core/components/ui/theme/theme-collection/core-variables.js +0 -74
- package/dist/js/core/components/ui/theme/theme-collection/core-variables.js.map +0 -1
- package/dist/js/core/components/ui/theme/theme-collection/dark.js +0 -39
- package/dist/js/core/components/ui/theme/theme-collection/dark.js.map +0 -1
- package/dist/js/core/components/ui/theme/theme-collection/light.js +0 -32
- package/dist/js/core/components/ui/theme/theme-collection/light.js.map +0 -1
- package/dist/js/core/components/ui/theme/theme.js +0 -150
- package/dist/js/core/components/ui/theme/theme.js.map +0 -1
- package/dist/js/core/components/ui/toast/message-subscriber.js +0 -41
- package/dist/js/core/components/ui/toast/message-subscriber.js.map +0 -1
- package/dist/js/core/components/ui/toast/toast-item.js +0 -379
- package/dist/js/core/components/ui/toast/toast-item.js.map +0 -1
- package/dist/js/core/components/ui/toast/toast.js +0 -269
- package/dist/js/core/components/ui/toast/toast.js.map +0 -1
- package/dist/js/core/components/ui/toast/types.js +0 -2
- package/dist/js/core/components/ui/toast/types.js.map +0 -1
- package/dist/js/core/components/ui/tooltip/tooltip.js +0 -219
- package/dist/js/core/components/ui/tooltip/tooltip.js.map +0 -1
- package/dist/js/core/components/ui/ui.js +0 -41
- package/dist/js/core/components/ui/ui.js.map +0 -1
- package/dist/js/core/core.js +0 -14
- package/dist/js/core/core.js.map +0 -1
- package/dist/js/core/decorators/Subscriber.js +0 -9
- package/dist/js/core/decorators/Subscriber.js.map +0 -1
- package/dist/js/core/decorators/api.js +0 -806
- package/dist/js/core/decorators/api.js.map +0 -1
- package/dist/js/core/decorators/lifecycle.js +0 -67
- package/dist/js/core/decorators/lifecycle.js.map +0 -1
- package/dist/js/core/decorators/subscriber/ancestorAttribute.js +0 -27
- package/dist/js/core/decorators/subscriber/ancestorAttribute.js.map +0 -1
- package/dist/js/core/decorators/subscriber/autoFill.js +0 -26
- package/dist/js/core/decorators/subscriber/autoFill.js.map +0 -1
- package/dist/js/core/decorators/subscriber/autoSubscribe.js +0 -46
- package/dist/js/core/decorators/subscriber/autoSubscribe.js.map +0 -1
- package/dist/js/core/decorators/subscriber/bind.js +0 -150
- package/dist/js/core/decorators/subscriber/bind.js.map +0 -1
- package/dist/js/core/decorators/subscriber/common.js +0 -44
- package/dist/js/core/decorators/subscriber/common.js.map +0 -1
- package/dist/js/core/decorators/subscriber/dynamicPath.js +0 -75
- package/dist/js/core/decorators/subscriber/dynamicPath.js.map +0 -1
- package/dist/js/core/decorators/subscriber/dynamicPropertyWatch.js +0 -138
- package/dist/js/core/decorators/subscriber/dynamicPropertyWatch.js.map +0 -1
- package/dist/js/core/decorators/subscriber/handle.js +0 -22
- package/dist/js/core/decorators/subscriber/handle.js.map +0 -1
- package/dist/js/core/decorators/subscriber/onAssign.js +0 -199
- package/dist/js/core/decorators/subscriber/onAssign.js.map +0 -1
- package/dist/js/core/decorators/subscriber/publish.js +0 -108
- package/dist/js/core/decorators/subscriber/publish.js.map +0 -1
- package/dist/js/core/decorators/subscriber/publisherPath.js +0 -16
- package/dist/js/core/decorators/subscriber/publisherPath.js.map +0 -1
- package/dist/js/core/decorators/subscriber/subscribe.js +0 -20
- package/dist/js/core/decorators/subscriber/subscribe.js.map +0 -1
- package/dist/js/core/directives/DataProvider.js +0 -127
- package/dist/js/core/directives/DataProvider.js.map +0 -1
- package/dist/js/core/directives/Wording.js +0 -221
- package/dist/js/core/directives/Wording.js.map +0 -1
- package/dist/js/core/mixins/Fetcher.js +0 -325
- package/dist/js/core/mixins/Fetcher.js.map +0 -1
- package/dist/js/core/mixins/FormCheckable.js +0 -313
- package/dist/js/core/mixins/FormCheckable.js.map +0 -1
- package/dist/js/core/mixins/FormElement.js +0 -304
- package/dist/js/core/mixins/FormElement.js.map +0 -1
- package/dist/js/core/mixins/FormInput.js +0 -82
- package/dist/js/core/mixins/FormInput.js.map +0 -1
- package/dist/js/core/mixins/Subscriber.js +0 -354
- package/dist/js/core/mixins/Subscriber.js.map +0 -1
- package/dist/js/core/mixins/TemplatesContainer.js +0 -70
- package/dist/js/core/mixins/TemplatesContainer.js.map +0 -1
- package/dist/js/core/mixins/mixins.js +0 -7
- package/dist/js/core/mixins/mixins.js.map +0 -1
- package/dist/js/core/utils/AncestorAttributeObserver.js +0 -140
- package/dist/js/core/utils/AncestorAttributeObserver.js.map +0 -1
- package/dist/js/core/utils/Arrays.js +0 -141
- package/dist/js/core/utils/Arrays.js.map +0 -1
- package/dist/js/core/utils/DataBindObserver.js +0 -265
- package/dist/js/core/utils/DataBindObserver.js.map +0 -1
- package/dist/js/core/utils/Electron.js +0 -14
- package/dist/js/core/utils/Electron.js.map +0 -1
- package/dist/js/core/utils/Format.js +0 -43
- package/dist/js/core/utils/Format.js.map +0 -1
- package/dist/js/core/utils/HTML.js +0 -272
- package/dist/js/core/utils/HTML.js.map +0 -1
- package/dist/js/core/utils/LocationHandler.js +0 -143
- package/dist/js/core/utils/LocationHandler.js.map +0 -1
- package/dist/js/core/utils/Objects.js +0 -111
- package/dist/js/core/utils/Objects.js.map +0 -1
- package/dist/js/core/utils/PublisherProxy.js +0 -946
- package/dist/js/core/utils/PublisherProxy.js.map +0 -1
- package/dist/js/core/utils/SafariScrollGuard.js +0 -384
- package/dist/js/core/utils/SafariScrollGuard.js.map +0 -1
- package/dist/js/core/utils/Utils.js +0 -19
- package/dist/js/core/utils/Utils.js.map +0 -1
- package/dist/js/core/utils/aesCrypto.js +0 -98
- package/dist/js/core/utils/aesCrypto.js.map +0 -1
- package/dist/js/core/utils/api.js +0 -595
- package/dist/js/core/utils/api.js.map +0 -1
- package/dist/js/core/utils/dataProviderKey.js +0 -64
- package/dist/js/core/utils/dataProviderKey.js.map +0 -1
- package/dist/js/core/utils/endpoint.js +0 -74
- package/dist/js/core/utils/endpoint.js.map +0 -1
- package/dist/js/core/utils/route.js +0 -149
- package/dist/js/core/utils/route.js.map +0 -1
- package/dist/js/core/utils/url-pattern.js +0 -3
- package/dist/js/core/utils/url-pattern.js.map +0 -1
- package/dist/js/dataprovider.js +0 -2
- package/dist/js/dataprovider.js.map +0 -1
- package/dist/js/decorators.js +0 -43
- package/dist/js/decorators.js.map +0 -1
- package/dist/js/directives.js +0 -30
- package/dist/js/directives.js.map +0 -1
- package/dist/js/index.js +0 -8
- package/dist/js/index.js.map +0 -1
- package/dist/js/mixins.js +0 -23
- package/dist/js/mixins.js.map +0 -1
- package/dist/js/test-utils/TestUtils.js +0 -10
- package/dist/js/test-utils/TestUtils.js.map +0 -1
- package/dist/js/utils.js +0 -44
- package/dist/js/utils.js.map +0 -1
- package/dist/types/components.d.ts +0 -5
- package/dist/types/components.d.ts.map +0 -1
- package/dist/types/concorde-loaded.d.ts +0 -2
- package/dist/types/concorde-loaded.d.ts.map +0 -1
- package/dist/types/core/_types/endpoint.d.ts +0 -5
- package/dist/types/core/_types/endpoint.d.ts.map +0 -1
- package/dist/types/core/_types/key.d.ts +0 -2
- package/dist/types/core/_types/key.d.ts.map +0 -1
- package/dist/types/core/_types/types.d.ts +0 -28
- package/dist/types/core/_types/types.d.ts.map +0 -1
- package/dist/types/core/components/functional/date/date.d.ts +0 -52
- package/dist/types/core/components/functional/date/date.d.ts.map +0 -1
- package/dist/types/core/components/functional/example/example.d.ts +0 -15
- package/dist/types/core/components/functional/example/example.d.ts.map +0 -1
- package/dist/types/core/components/functional/fetch/fetch.d.ts +0 -102
- package/dist/types/core/components/functional/fetch/fetch.d.ts.map +0 -1
- package/dist/types/core/components/functional/functional.d.ts +0 -17
- package/dist/types/core/components/functional/functional.d.ts.map +0 -1
- package/dist/types/core/components/functional/if/if.d.ts +0 -13
- package/dist/types/core/components/functional/if/if.d.ts.map +0 -1
- package/dist/types/core/components/functional/list/list.d.ts +0 -149
- package/dist/types/core/components/functional/list/list.d.ts.map +0 -1
- package/dist/types/core/components/functional/mix/mix.d.ts +0 -23
- package/dist/types/core/components/functional/mix/mix.d.ts.map +0 -1
- package/dist/types/core/components/functional/queue/queue.d.ts +0 -93
- package/dist/types/core/components/functional/queue/queue.d.ts.map +0 -1
- package/dist/types/core/components/functional/router/redirect.d.ts +0 -19
- package/dist/types/core/components/functional/router/redirect.d.ts.map +0 -1
- package/dist/types/core/components/functional/router/router.d.ts +0 -46
- package/dist/types/core/components/functional/router/router.d.ts.map +0 -1
- package/dist/types/core/components/functional/sdui/SDUIDescriptorTransformer.d.ts +0 -59
- package/dist/types/core/components/functional/sdui/SDUIDescriptorTransformer.d.ts.map +0 -1
- package/dist/types/core/components/functional/sdui/sdui-utils.d.ts +0 -6
- package/dist/types/core/components/functional/sdui/sdui-utils.d.ts.map +0 -1
- package/dist/types/core/components/functional/sdui/sdui.d.ts +0 -145
- package/dist/types/core/components/functional/sdui/sdui.d.ts.map +0 -1
- package/dist/types/core/components/functional/sdui/types.d.ts +0 -38
- package/dist/types/core/components/functional/sdui/types.d.ts.map +0 -1
- package/dist/types/core/components/functional/sonic-scope/sonic-scope.d.ts +0 -6
- package/dist/types/core/components/functional/sonic-scope/sonic-scope.d.ts.map +0 -1
- package/dist/types/core/components/functional/states/states.d.ts +0 -42
- package/dist/types/core/components/functional/states/states.d.ts.map +0 -1
- package/dist/types/core/components/functional/submit/submit.d.ts +0 -37
- package/dist/types/core/components/functional/submit/submit.d.ts.map +0 -1
- package/dist/types/core/components/functional/subscriber/subscriber.d.ts +0 -13
- package/dist/types/core/components/functional/subscriber/subscriber.d.ts.map +0 -1
- package/dist/types/core/components/functional/translation/translation.d.ts +0 -7
- package/dist/types/core/components/functional/translation/translation.d.ts.map +0 -1
- package/dist/types/core/components/functional/value/value.d.ts +0 -8
- package/dist/types/core/components/functional/value/value.d.ts.map +0 -1
- package/dist/types/core/components/ui/_css/scroll.d.ts +0 -2
- package/dist/types/core/components/ui/_css/scroll.d.ts.map +0 -1
- package/dist/types/core/components/ui/_css/shadow.d.ts +0 -3
- package/dist/types/core/components/ui/_css/shadow.d.ts.map +0 -1
- package/dist/types/core/components/ui/_css/size.d.ts +0 -3
- package/dist/types/core/components/ui/_css/size.d.ts.map +0 -1
- package/dist/types/core/components/ui/_css/type.d.ts +0 -3
- package/dist/types/core/components/ui/_css/type.d.ts.map +0 -1
- package/dist/types/core/components/ui/alert/alert.d.ts +0 -37
- package/dist/types/core/components/ui/alert/alert.d.ts.map +0 -1
- package/dist/types/core/components/ui/alert-messages/alert-messages.d.ts +0 -15
- package/dist/types/core/components/ui/alert-messages/alert-messages.d.ts.map +0 -1
- package/dist/types/core/components/ui/badge/badge.d.ts +0 -27
- package/dist/types/core/components/ui/badge/badge.d.ts.map +0 -1
- package/dist/types/core/components/ui/button/button.d.ts +0 -180
- package/dist/types/core/components/ui/button/button.d.ts.map +0 -1
- package/dist/types/core/components/ui/captcha/altchaStyles.d.ts +0 -2
- package/dist/types/core/components/ui/captcha/altchaStyles.d.ts.map +0 -1
- package/dist/types/core/components/ui/captcha/captcha.d.ts +0 -30
- package/dist/types/core/components/ui/captcha/captcha.d.ts.map +0 -1
- package/dist/types/core/components/ui/card/card-footer.d.ts +0 -6
- package/dist/types/core/components/ui/card/card-footer.d.ts.map +0 -1
- package/dist/types/core/components/ui/card/card-header-descripton.d.ts +0 -6
- package/dist/types/core/components/ui/card/card-header-descripton.d.ts.map +0 -1
- package/dist/types/core/components/ui/card/card-header.d.ts +0 -9
- package/dist/types/core/components/ui/card/card-header.d.ts.map +0 -1
- package/dist/types/core/components/ui/card/card-main.d.ts +0 -6
- package/dist/types/core/components/ui/card/card-main.d.ts.map +0 -1
- package/dist/types/core/components/ui/card/card.d.ts +0 -13
- package/dist/types/core/components/ui/card/card.d.ts.map +0 -1
- package/dist/types/core/components/ui/divider/divider.d.ts +0 -16
- package/dist/types/core/components/ui/divider/divider.d.ts.map +0 -1
- package/dist/types/core/components/ui/form/checkbox/checkbox.d.ts +0 -176
- package/dist/types/core/components/ui/form/checkbox/checkbox.d.ts.map +0 -1
- package/dist/types/core/components/ui/form/css/form-control.d.ts +0 -5
- package/dist/types/core/components/ui/form/css/form-control.d.ts.map +0 -1
- package/dist/types/core/components/ui/form/fieldset/fieldset.d.ts +0 -24
- package/dist/types/core/components/ui/form/fieldset/fieldset.d.ts.map +0 -1
- package/dist/types/core/components/ui/form/fieldset/legend-description.d.ts +0 -6
- package/dist/types/core/components/ui/form/fieldset/legend-description.d.ts.map +0 -1
- package/dist/types/core/components/ui/form/fieldset/legend.d.ts +0 -17
- package/dist/types/core/components/ui/form/fieldset/legend.d.ts.map +0 -1
- package/dist/types/core/components/ui/form/form-actions/form-actions.d.ts +0 -8
- package/dist/types/core/components/ui/form/form-actions/form-actions.d.ts.map +0 -1
- package/dist/types/core/components/ui/form/form-layout/form-layout.d.ts +0 -13
- package/dist/types/core/components/ui/form/form-layout/form-layout.d.ts.map +0 -1
- package/dist/types/core/components/ui/form/input/input.d.ts +0 -123
- package/dist/types/core/components/ui/form/input/input.d.ts.map +0 -1
- package/dist/types/core/components/ui/form/input/password-helper.d.ts +0 -26
- package/dist/types/core/components/ui/form/input/password-helper.d.ts.map +0 -1
- package/dist/types/core/components/ui/form/input/same-value-helper.d.ts +0 -17
- package/dist/types/core/components/ui/form/input/same-value-helper.d.ts.map +0 -1
- package/dist/types/core/components/ui/form/input-autocomplete/input-autocomplete.d.ts +0 -155
- package/dist/types/core/components/ui/form/input-autocomplete/input-autocomplete.d.ts.map +0 -1
- package/dist/types/core/components/ui/form/radio/radio.d.ts +0 -15
- package/dist/types/core/components/ui/form/radio/radio.d.ts.map +0 -1
- package/dist/types/core/components/ui/form/select/select.d.ts +0 -59
- package/dist/types/core/components/ui/form/select/select.d.ts.map +0 -1
- package/dist/types/core/components/ui/form/switch/switch.d.ts +0 -6
- package/dist/types/core/components/ui/form/switch/switch.d.ts.map +0 -1
- package/dist/types/core/components/ui/form/textarea/textarea.d.ts +0 -94
- package/dist/types/core/components/ui/form/textarea/textarea.d.ts.map +0 -1
- package/dist/types/core/components/ui/group/group.d.ts +0 -17
- package/dist/types/core/components/ui/group/group.d.ts.map +0 -1
- package/dist/types/core/components/ui/icon/icon.d.ts +0 -30
- package/dist/types/core/components/ui/icon/icon.d.ts.map +0 -1
- package/dist/types/core/components/ui/icon/icons.d.ts +0 -13
- package/dist/types/core/components/ui/icon/icons.d.ts.map +0 -1
- package/dist/types/core/components/ui/image/image.d.ts +0 -16
- package/dist/types/core/components/ui/image/image.d.ts.map +0 -1
- package/dist/types/core/components/ui/link/link.d.ts +0 -30
- package/dist/types/core/components/ui/link/link.d.ts.map +0 -1
- package/dist/types/core/components/ui/loader/loader.d.ts +0 -24
- package/dist/types/core/components/ui/loader/loader.d.ts.map +0 -1
- package/dist/types/core/components/ui/loader/styles/fixed.d.ts +0 -2
- package/dist/types/core/components/ui/loader/styles/fixed.d.ts.map +0 -1
- package/dist/types/core/components/ui/loader/styles/inline.d.ts +0 -2
- package/dist/types/core/components/ui/loader/styles/inline.d.ts.map +0 -1
- package/dist/types/core/components/ui/menu/menu-item.d.ts +0 -6
- package/dist/types/core/components/ui/menu/menu-item.d.ts.map +0 -1
- package/dist/types/core/components/ui/menu/menu.d.ts +0 -52
- package/dist/types/core/components/ui/menu/menu.d.ts.map +0 -1
- package/dist/types/core/components/ui/modal/modal-actions.d.ts +0 -9
- package/dist/types/core/components/ui/modal/modal-actions.d.ts.map +0 -1
- package/dist/types/core/components/ui/modal/modal-close.d.ts +0 -11
- package/dist/types/core/components/ui/modal/modal-close.d.ts.map +0 -1
- package/dist/types/core/components/ui/modal/modal-content.d.ts +0 -6
- package/dist/types/core/components/ui/modal/modal-content.d.ts.map +0 -1
- package/dist/types/core/components/ui/modal/modal-subtitle.d.ts +0 -6
- package/dist/types/core/components/ui/modal/modal-subtitle.d.ts.map +0 -1
- package/dist/types/core/components/ui/modal/modal-title.d.ts +0 -6
- package/dist/types/core/components/ui/modal/modal-title.d.ts.map +0 -1
- package/dist/types/core/components/ui/modal/modal-utils.d.ts +0 -4
- package/dist/types/core/components/ui/modal/modal-utils.d.ts.map +0 -1
- package/dist/types/core/components/ui/modal/modal.d.ts +0 -79
- package/dist/types/core/components/ui/modal/modal.d.ts.map +0 -1
- package/dist/types/core/components/ui/pop/pop.d.ts +0 -42
- package/dist/types/core/components/ui/pop/pop.d.ts.map +0 -1
- package/dist/types/core/components/ui/progress/progress.d.ts +0 -12
- package/dist/types/core/components/ui/progress/progress.d.ts.map +0 -1
- package/dist/types/core/components/ui/table/table-caption.d.ts +0 -6
- package/dist/types/core/components/ui/table/table-caption.d.ts.map +0 -1
- package/dist/types/core/components/ui/table/table-tbody.d.ts +0 -6
- package/dist/types/core/components/ui/table/table-tbody.d.ts.map +0 -1
- package/dist/types/core/components/ui/table/table-td.d.ts +0 -13
- package/dist/types/core/components/ui/table/table-td.d.ts.map +0 -1
- package/dist/types/core/components/ui/table/table-tfoot.d.ts +0 -6
- package/dist/types/core/components/ui/table/table-tfoot.d.ts.map +0 -1
- package/dist/types/core/components/ui/table/table-th.d.ts +0 -12
- package/dist/types/core/components/ui/table/table-th.d.ts.map +0 -1
- package/dist/types/core/components/ui/table/table-thead.d.ts +0 -6
- package/dist/types/core/components/ui/table/table-thead.d.ts.map +0 -1
- package/dist/types/core/components/ui/table/table-tr.d.ts +0 -14
- package/dist/types/core/components/ui/table/table-tr.d.ts.map +0 -1
- package/dist/types/core/components/ui/table/table.d.ts +0 -18
- package/dist/types/core/components/ui/table/table.d.ts.map +0 -1
- package/dist/types/core/components/ui/theme/theme-collection/core-variables.d.ts +0 -2
- package/dist/types/core/components/ui/theme/theme-collection/core-variables.d.ts.map +0 -1
- package/dist/types/core/components/ui/theme/theme-collection/dark.d.ts +0 -2
- package/dist/types/core/components/ui/theme/theme-collection/dark.d.ts.map +0 -1
- package/dist/types/core/components/ui/theme/theme-collection/light.d.ts +0 -2
- package/dist/types/core/components/ui/theme/theme-collection/light.d.ts.map +0 -1
- package/dist/types/core/components/ui/theme/theme.d.ts +0 -20
- package/dist/types/core/components/ui/theme/theme.d.ts.map +0 -1
- package/dist/types/core/components/ui/toast/message-subscriber.d.ts +0 -19
- package/dist/types/core/components/ui/toast/message-subscriber.d.ts.map +0 -1
- package/dist/types/core/components/ui/toast/toast-item.d.ts +0 -41
- package/dist/types/core/components/ui/toast/toast-item.d.ts.map +0 -1
- package/dist/types/core/components/ui/toast/toast.d.ts +0 -28
- package/dist/types/core/components/ui/toast/toast.d.ts.map +0 -1
- package/dist/types/core/components/ui/toast/types.d.ts +0 -12
- package/dist/types/core/components/ui/toast/types.d.ts.map +0 -1
- package/dist/types/core/components/ui/tooltip/tooltip.d.ts +0 -21
- package/dist/types/core/components/ui/tooltip/tooltip.d.ts.map +0 -1
- package/dist/types/core/components/ui/ui.d.ts +0 -35
- package/dist/types/core/components/ui/ui.d.ts.map +0 -1
- package/dist/types/core/core.d.ts +0 -5
- package/dist/types/core/core.d.ts.map +0 -1
- package/dist/types/core/decorators/Subscriber.d.ts +0 -11
- package/dist/types/core/decorators/Subscriber.d.ts.map +0 -1
- package/dist/types/core/decorators/api.d.ts +0 -155
- package/dist/types/core/decorators/api.d.ts.map +0 -1
- package/dist/types/core/decorators/lifecycle.d.ts +0 -19
- package/dist/types/core/decorators/lifecycle.d.ts.map +0 -1
- package/dist/types/core/decorators/subscriber/ancestorAttribute.d.ts +0 -11
- package/dist/types/core/decorators/subscriber/ancestorAttribute.d.ts.map +0 -1
- package/dist/types/core/decorators/subscriber/autoFill.d.ts +0 -2
- package/dist/types/core/decorators/subscriber/autoFill.d.ts.map +0 -1
- package/dist/types/core/decorators/subscriber/autoSubscribe.d.ts +0 -2
- package/dist/types/core/decorators/subscriber/autoSubscribe.d.ts.map +0 -1
- package/dist/types/core/decorators/subscriber/bind.d.ts +0 -28
- package/dist/types/core/decorators/subscriber/bind.d.ts.map +0 -1
- package/dist/types/core/decorators/subscriber/common.d.ts +0 -14
- package/dist/types/core/decorators/subscriber/common.d.ts.map +0 -1
- package/dist/types/core/decorators/subscriber/dynamicPath.d.ts +0 -23
- package/dist/types/core/decorators/subscriber/dynamicPath.d.ts.map +0 -1
- package/dist/types/core/decorators/subscriber/dynamicPropertyWatch.d.ts +0 -42
- package/dist/types/core/decorators/subscriber/dynamicPropertyWatch.d.ts.map +0 -1
- package/dist/types/core/decorators/subscriber/handle.d.ts +0 -74
- package/dist/types/core/decorators/subscriber/handle.d.ts.map +0 -1
- package/dist/types/core/decorators/subscriber/onAssign.d.ts +0 -53
- package/dist/types/core/decorators/subscriber/onAssign.d.ts.map +0 -1
- package/dist/types/core/decorators/subscriber/publish.d.ts +0 -23
- package/dist/types/core/decorators/subscriber/publish.d.ts.map +0 -1
- package/dist/types/core/decorators/subscriber/publisherPath.d.ts +0 -3
- package/dist/types/core/decorators/subscriber/publisherPath.d.ts.map +0 -1
- package/dist/types/core/decorators/subscriber/subscribe.d.ts +0 -20
- package/dist/types/core/decorators/subscriber/subscribe.d.ts.map +0 -1
- package/dist/types/core/directives/DataProvider.d.ts +0 -45
- package/dist/types/core/directives/DataProvider.d.ts.map +0 -1
- package/dist/types/core/directives/Wording.d.ts +0 -44
- package/dist/types/core/directives/Wording.d.ts.map +0 -1
- package/dist/types/core/mixins/Fetcher.d.ts +0 -108
- package/dist/types/core/mixins/Fetcher.d.ts.map +0 -1
- package/dist/types/core/mixins/FormCheckable.d.ts +0 -95
- package/dist/types/core/mixins/FormCheckable.d.ts.map +0 -1
- package/dist/types/core/mixins/FormElement.d.ts +0 -37
- package/dist/types/core/mixins/FormElement.d.ts.map +0 -1
- package/dist/types/core/mixins/FormInput.d.ts +0 -79
- package/dist/types/core/mixins/FormInput.d.ts.map +0 -1
- package/dist/types/core/mixins/Subscriber.d.ts +0 -38
- package/dist/types/core/mixins/Subscriber.d.ts.map +0 -1
- package/dist/types/core/mixins/TemplatesContainer.d.ts +0 -14
- package/dist/types/core/mixins/TemplatesContainer.d.ts.map +0 -1
- package/dist/types/core/mixins/mixins.d.ts +0 -7
- package/dist/types/core/mixins/mixins.d.ts.map +0 -1
- package/dist/types/core/utils/AncestorAttributeObserver.d.ts +0 -38
- package/dist/types/core/utils/AncestorAttributeObserver.d.ts.map +0 -1
- package/dist/types/core/utils/Arrays.d.ts +0 -98
- package/dist/types/core/utils/Arrays.d.ts.map +0 -1
- package/dist/types/core/utils/DataBindObserver.d.ts +0 -84
- package/dist/types/core/utils/DataBindObserver.d.ts.map +0 -1
- package/dist/types/core/utils/Electron.d.ts +0 -8
- package/dist/types/core/utils/Electron.d.ts.map +0 -1
- package/dist/types/core/utils/Format.d.ts +0 -13
- package/dist/types/core/utils/Format.d.ts.map +0 -1
- package/dist/types/core/utils/HTML.d.ts +0 -79
- package/dist/types/core/utils/HTML.d.ts.map +0 -1
- package/dist/types/core/utils/LocationHandler.d.ts +0 -48
- package/dist/types/core/utils/LocationHandler.d.ts.map +0 -1
- package/dist/types/core/utils/Objects.d.ts +0 -31
- package/dist/types/core/utils/Objects.d.ts.map +0 -1
- package/dist/types/core/utils/PublisherProxy.d.ts +0 -230
- package/dist/types/core/utils/PublisherProxy.d.ts.map +0 -1
- package/dist/types/core/utils/SafariScrollGuard.d.ts +0 -36
- package/dist/types/core/utils/SafariScrollGuard.d.ts.map +0 -1
- package/dist/types/core/utils/Utils.d.ts +0 -6
- package/dist/types/core/utils/Utils.d.ts.map +0 -1
- package/dist/types/core/utils/aesCrypto.d.ts +0 -53
- package/dist/types/core/utils/aesCrypto.d.ts.map +0 -1
- package/dist/types/core/utils/api.d.ts +0 -173
- package/dist/types/core/utils/api.d.ts.map +0 -1
- package/dist/types/core/utils/dataProviderKey.d.ts +0 -56
- package/dist/types/core/utils/dataProviderKey.d.ts.map +0 -1
- package/dist/types/core/utils/endpoint.d.ts +0 -37
- package/dist/types/core/utils/endpoint.d.ts.map +0 -1
- package/dist/types/core/utils/route.d.ts +0 -41
- package/dist/types/core/utils/route.d.ts.map +0 -1
- package/dist/types/core/utils/url-pattern.d.ts +0 -3
- package/dist/types/core/utils/url-pattern.d.ts.map +0 -1
- package/dist/types/dataprovider.d.ts +0 -2
- package/dist/types/dataprovider.d.ts.map +0 -1
- package/dist/types/decorators.d.ts +0 -30
- package/dist/types/decorators.d.ts.map +0 -1
- package/dist/types/directives.d.ts +0 -21
- package/dist/types/directives.d.ts.map +0 -1
- package/dist/types/index.d.ts +0 -8
- package/dist/types/index.d.ts.map +0 -1
- package/dist/types/mixins.d.ts +0 -204
- package/dist/types/mixins.d.ts.map +0 -1
- package/dist/types/test-utils/TestUtils.d.ts +0 -4
- package/dist/types/test-utils/TestUtils.d.ts.map +0 -1
- package/dist/types/utils.d.ts +0 -18
- package/dist/types/utils.d.ts.map +0 -1
- package/docs/assets/index-DURr6O71.js +0 -11453
package/docs/llms-full.txt
CHANGED
|
@@ -215,6 +215,63 @@ Plain HTML without Lit: HTML integration.
|
|
|
215
215
|
|
|
216
216
|
---
|
|
217
217
|
|
|
218
|
+
## Jsonata
|
|
219
|
+
|
|
220
|
+
- URL: https://concorde.supersoniks.org/crawl/core/components/functional/jsonata/jsonata.html
|
|
221
|
+
- Doc ID: core/components/functional/jsonata/jsonata
|
|
222
|
+
- Keywords: Concorde, supersoniks, core/components/functional/jsonata/jsonata, jsonata, Jsonata, functional component, sonic-jsonata, web component, sonic-mix, serviceURL="/docs-mock-api", inputProvider, $input, outputProvider, expression, formDataProvider, $top, $taxPercent
|
|
223
|
+
|
|
224
|
+
Jsonata
|
|
225
|
+
|
|
226
|
+
sonic-jsonata : 1 input → expression → 1 output (readonly).
|
|
227
|
+
|
|
228
|
+
Unidirectional (fetch → compute → display), unlike sonic-mix.
|
|
229
|
+
|
|
230
|
+
> Offline : serviceURL="/docs-mock-api" — Local API demos.
|
|
231
|
+
|
|
232
|
+
Demos
|
|
233
|
+
|
|
234
|
+
Groupby + top N
|
|
235
|
+
|
|
236
|
+
Change Top N → recalcul sans refetch.
|
|
237
|
+
|
|
238
|
+
Totaux (somme + taxe)
|
|
239
|
+
|
|
240
|
+
Change Tax % → même idée.
|
|
241
|
+
|
|
242
|
+
Attributes
|
|
243
|
+
|
|
244
|
+
| Attribute | Role |
|
|
245
|
+
|-----------|------|
|
|
246
|
+
| inputProvider | Entrée ($input dans l’expression) |
|
|
247
|
+
| outputProvider | Sortie (readonly) |
|
|
248
|
+
| expression | Expression JSONata |
|
|
249
|
+
| formDataProvider | Form optionnel ($top, $taxPercent, …) — même id que le form |
|
|
250
|
+
| outputSchema | Schéma léger optionnel (type, required) |
|
|
251
|
+
|
|
252
|
+
Helpers
|
|
253
|
+
|
|
254
|
+
$ucFirst · $currency · $percent · $date · $toChart(items, labelKey, valueKey, datasetLabel?)
|
|
255
|
+
|
|
256
|
+
Pas de DOM, pas de réseau, pas d’eval.
|
|
257
|
+
|
|
258
|
+
Markup
|
|
259
|
+
|
|
260
|
+
<sonic-jsonata
|
|
261
|
+
inputProvider="api/space-cats"
|
|
262
|
+
outputProvider="leaderboard"
|
|
263
|
+
formDataProvider="topForm"
|
|
264
|
+
expression='$input{name: $sum(points)} ~> $each(function($v,$k){{"name":$k,"points":$v}}) ^(>points)[[0..$number($top)-1]]'
|
|
265
|
+
></sonic-jsonata>
|
|
266
|
+
|
|
267
|
+
Pour du multi-entrées ou une fonction TS : primitive derive.
|
|
268
|
+
|
|
269
|
+
States
|
|
270
|
+
|
|
271
|
+
{output}/state → { status, error? } (loading | ready | error | empty). Brancher avec sonic-states.
|
|
272
|
+
|
|
273
|
+
---
|
|
274
|
+
|
|
218
275
|
## List
|
|
219
276
|
|
|
220
277
|
- URL: https://concorde.supersoniks.org/crawl/core/components/functional/list/list.html
|
|
@@ -2503,7 +2560,8 @@ Quick map
|
|
|
2503
2560
|
| HTTP GET | @get + Endpoint, or sonic-list / sonic-queue with fetch |
|
|
2504
2561
|
| HTTP POST (body from store) | @post + Endpoint + body DataProviderKey |
|
|
2505
2562
|
| HTTP PUT / PATCH (body from store) | @put / @patch — same model as @post |
|
|
2506
|
-
| Forms | formDataProvider + name on fields |
|
|
2563
|
+
| Forms | formDataProvider + name on fields (no Subscriber on form elements) |
|
|
2564
|
+
| Derived / aggregate (JSONata) | derive() or sonic-jsonata — Jsonata |
|
|
2507
2565
|
| Offline doc demos | serviceURL="/docs-mock-api" — Local API demos |
|
|
2508
2566
|
|
|
2509
2567
|
Skill: concorde-get-set-dp in the package ai/ folder.
|
|
@@ -2551,6 +2609,14 @@ npx @supersoniks/create-concorde-ts-starter my-app
|
|
|
2551
2609
|
|
|
2552
2610
|
Interactive routes mirror these patterns (/concepts/, /demo/).
|
|
2553
2611
|
|
|
2612
|
+
Derived data (derive / sonic-jsonata)
|
|
2613
|
+
|
|
2614
|
+
Use when you need client-side aggregations (groupby, top N, chart shapes) from existing DataProviders — without inline app JS in SDUI.
|
|
2615
|
+
|
|
2616
|
+
- Primitive: derive({ inputs, compute, output, variables? }) from @supersoniks/concorde/utils (read-only output, debounce, generation, cycle detection, {output}/state).
|
|
2617
|
+
- SDUI adapter: sonic-jsonata (inputProvider → expression → outputProvider, optional formDataProvider).
|
|
2618
|
+
- vs sonic-mix: mix composes bidirectionally; jsonata computes unidirectionally.
|
|
2619
|
+
|
|
2554
2620
|
Legacy integration
|
|
2555
2621
|
|
|
2556
2622
|
| Topic | Page |
|
|
@@ -3137,9 +3203,7 @@ Shared data: Sharing data.
|
|
|
3137
3203
|
- Keywords: Concorde, supersoniks, docs/_decorators/get, get, @get, decorator, ApiResult, undefined, payload.result, payload.response, payload.request,
|
|
3138
3204
|
|
|
3139
3205
|
The first argument is always an
|
|
3140
|
-
[, serviceURL, refetch(component)
|
|
3141
|
-
|
|
3142
|
-
|
|
3206
|
+
[, serviceURL, refetch(component)
|
|
3143
3207
|
|
|
3144
3208
|
@get
|
|
3145
3209
|
|
|
@@ -3158,6 +3222,17 @@ const usersEndpoint = new Endpoint ("users");
|
|
|
3158
3222
|
@state()
|
|
3159
3223
|
payload?: ApiResult ;
|
|
3160
3224
|
|
|
3225
|
+
The same decorator adapts to a method. The method receives the complete
|
|
3226
|
+
ApiResult payload after each GET:
|
|
3227
|
+
|
|
3228
|
+
@get(usersEndpoint)
|
|
3229
|
+
handleUsers(payload?: ApiResult ) {
|
|
3230
|
+
if (!payload) return;
|
|
3231
|
+
|
|
3232
|
+
console.log(payload.response?.status);
|
|
3233
|
+
console.log(payload.result);
|
|
3234
|
+
}
|
|
3235
|
+
|
|
3161
3236
|
The first argument is always an
|
|
3162
3237
|
Endpoint . API configuration is read
|
|
3163
3238
|
from the HTML scope (serviceURL, token, etc.), so the component is usually
|
|
@@ -3185,6 +3260,20 @@ async refresh() {
|
|
|
3185
3260
|
refetch(component) returns a Promise | undefined> that resolves
|
|
3186
3261
|
after the GET has completed.
|
|
3187
3262
|
|
|
3263
|
+
The named handle can also decorate a method and be reused for refetching:
|
|
3264
|
+
|
|
3265
|
+
const usersGet = get(new Endpoint ("users"));
|
|
3266
|
+
|
|
3267
|
+
@usersGet
|
|
3268
|
+
handleUsers(payload?: ApiResult ) {
|
|
3269
|
+
// ...
|
|
3270
|
+
}
|
|
3271
|
+
|
|
3272
|
+
@refetch(usersGet)
|
|
3273
|
+
reloadUsers() {
|
|
3274
|
+
// The GET runs and handleUsers receives its payload.
|
|
3275
|
+
}
|
|
3276
|
+
|
|
3188
3277
|
From a method decorator
|
|
3189
3278
|
|
|
3190
3279
|
The refetch can decorate a local method. The default is after; if the
|
|
@@ -3775,6 +3864,13 @@ const patchUser = patch(new Endpoint ("users/42"), bodyKey);
|
|
|
3775
3864
|
@state()
|
|
3776
3865
|
payload?: ApiResult ;
|
|
3777
3866
|
|
|
3867
|
+
The same decorator adapts to a method:
|
|
3868
|
+
|
|
3869
|
+
@patch(new Endpoint ("users/42"), bodyKey)
|
|
3870
|
+
handlePatch(payload?: ApiResult ) {
|
|
3871
|
+
if (payload?.response?.ok) console.log(payload.result);
|
|
3872
|
+
}
|
|
3873
|
+
|
|
3778
3874
|
To run the operation again from the component:
|
|
3779
3875
|
|
|
3780
3876
|
async savePatch() {
|
|
@@ -3842,6 +3938,13 @@ const createUser = post(new Endpoint ("users"), userBodyKey);
|
|
|
3842
3938
|
@state()
|
|
3843
3939
|
payload?: ApiResult ;
|
|
3844
3940
|
|
|
3941
|
+
The same decorator adapts to a method and receives the complete payload:
|
|
3942
|
+
|
|
3943
|
+
@post(new Endpoint ("users"), userBodyKey)
|
|
3944
|
+
handleCreate(payload?: ApiResult ) {
|
|
3945
|
+
if (payload?.response?.ok) console.log(payload.result);
|
|
3946
|
+
}
|
|
3947
|
+
|
|
3845
3948
|
The current body is read from userBodyKey. By default, the POST is sent when
|
|
3846
3949
|
the component connects and after each body mutation. Mutations in the same
|
|
3847
3950
|
frame are coalesced into one request.
|
|
@@ -4011,6 +4114,13 @@ const updateUser = put(new Endpoint ("users/42"), bodyKey);
|
|
|
4011
4114
|
@state()
|
|
4012
4115
|
payload?: ApiResult ;
|
|
4013
4116
|
|
|
4117
|
+
The same decorator adapts to a method:
|
|
4118
|
+
|
|
4119
|
+
@put(new Endpoint ("users/42"), bodyKey)
|
|
4120
|
+
handleUpdate(payload?: ApiResult ) {
|
|
4121
|
+
if (payload?.response?.ok) console.log(payload.result);
|
|
4122
|
+
}
|
|
4123
|
+
|
|
4014
4124
|
To run the operation again from the component:
|
|
4015
4125
|
|
|
4016
4126
|
async update() {
|
|
@@ -5364,6 +5474,9 @@ Routes
|
|
|
5364
5474
|
|------|---------|
|
|
5365
5475
|
| /docs-mock-api/api/users | sonic-list, sonic-fetch, sonic-queue (users) |
|
|
5366
5476
|
| /docs-mock-api/api/users/:id | Single user, docs-user |
|
|
5477
|
+
| /docs-mock-api/api/space-cats | sonic-jsonata top-N demo |
|
|
5478
|
+
| /docs-mock-api/api/coffee-bags | fixtures / tests jsonata (?roast=) |
|
|
5479
|
+
| /docs-mock-api/api/market-order | sonic-jsonata totals demo |
|
|
5367
5480
|
| POST /docs-mock-api/api/register | sonic-submit — JSON, multipart/form-data (sendAsFormData), or application/x-www-form-urlencoded (native ); response includes parsed email + token |
|
|
5368
5481
|
| POST /docs-mock-api/api/register/nested | Wrapped body { data: { id, token } } for submit-result-key demo |
|
|
5369
5482
|
| GET /docs-mock-api/api/register/echo | Echoes query string (method="get" on submit) |
|
|
@@ -5531,16 +5644,138 @@ See also
|
|
|
5531
5644
|
|
|
5532
5645
|
---
|
|
5533
5646
|
|
|
5647
|
+
## FormElement without Subscriber (REDMINE-79569)
|
|
5648
|
+
|
|
5649
|
+
- URL: https://concorde.supersoniks.org/crawl/docs/_misc/formelement-subscriber-removal.html
|
|
5650
|
+
- Doc ID: docs/_misc/formelement-subscriber-removal
|
|
5651
|
+
- Keywords: Concorde, supersoniks, docs/_misc/formelement-subscriber-removal, formelement-subscriber-removal, FormElement without Subscriber (REDMINE-79569), reference, sonic-input, textarea, select, checkbox, radio, switch, button, input-autocomplete, dataProvider, formDataProvider
|
|
5652
|
+
|
|
5653
|
+
FormElement without Subscriber (REDMINE-79569)
|
|
5654
|
+
|
|
5655
|
+
Form fields (sonic-input, textarea, select, checkbox, radio, switch, button, input-autocomplete) no longer inherit the Subscriber mixin.
|
|
5656
|
+
|
|
5657
|
+
Behaviour now
|
|
5658
|
+
|
|
5659
|
+
| Before | After |
|
|
5660
|
+
|--------|--------|
|
|
5661
|
+
| Dual channel dataProvider (autofill) + formDataProvider | formDataProvider + name only |
|
|
5662
|
+
| Ancestor dataProvider auto-filled field props | Ignored by form fields |
|
|
5663
|
+
| noAutoFill on fields/buttons inside a dataProvider tree | Dead on form fields (attribute harmless; can be cleaned in apps) |
|
|
5664
|
+
|
|
5665
|
+
Preview pattern still valid: form writes via formDataProvider, display card reads via dataProvider on a Subscriber (or @subscribe) sibling — not on the fields themselves.
|
|
5666
|
+
|
|
5667
|
+
Migration checklist (apps)
|
|
5668
|
+
|
|
5669
|
+
1. Prefer formDataProvider alone on forms / fieldsets.
|
|
5670
|
+
2. Drop redundant dataProvider={sameKey} on form containers when it only existed for field autofill.
|
|
5671
|
+
3. Prefill edit forms with set(formKey, row) / dp(formKey.field).set(...) before mount — not field dataProvider.
|
|
5672
|
+
4. Remove noAutoFill on sonic-button / fields when it only blocked Subscriber autofill.
|
|
5673
|
+
5. initFromPublisher still works (form publisher only).
|
|
5674
|
+
|
|
5675
|
+
Billetterie collect — dual-channel risk
|
|
5676
|
+
|
|
5677
|
+
Files under la-billetterie/concorde that mention both formDataProvider and dataProvider= (review; many are filter+queue, not field autofill):
|
|
5678
|
+
|
|
5679
|
+
High priority (same key on form container)
|
|
5680
|
+
|
|
5681
|
+
- la-billetterie/components/reservation-request/atoms/request-event-form.ts — form / fieldset with both attrs equal
|
|
5682
|
+
- la-billetterie/components/reservation/atoms/new-quote-form.ts
|
|
5683
|
+
- la-billetterie/components/stats/sales-summary/sales-summary.ts
|
|
5684
|
+
- la-billetterie/components/product/price-selection-form/price-selection-form.ts — formDataProvider + dataProvider="cart/editForm"
|
|
5685
|
+
- la-billetterie/components/user/account/link-ticket/link-ticket.ts — distinct keys (API vs form) — keep dataProvider only if used by fetch/submit siblings
|
|
5686
|
+
|
|
5687
|
+
Filters + queue (usually OK)
|
|
5688
|
+
|
|
5689
|
+
formDataProvider on filter bar, dataProvider on sonic-queue / list — no field autofill dependency:
|
|
5690
|
+
|
|
5691
|
+
- access-control/components/event/list/index.ts
|
|
5692
|
+
- access-control/components/control/search/views/list.ts
|
|
5693
|
+
- la-billetterie/components/event/form-event-filter/form-event-filter.ts
|
|
5694
|
+
- la-billetterie/components/counter/ (agenda, store, reservation-request-treatment, …)
|
|
5695
|
+
- widgets/agenda/agenda.ts
|
|
5696
|
+
- … see full dual list in ticket notes / grep below
|
|
5697
|
+
|
|
5698
|
+
Full dual-channel file list (55)
|
|
5699
|
+
|
|
5700
|
+
concorde/src/access-control/components/control/search/views/list.ts
|
|
5701
|
+
concorde/src/access-control/components/event/list/index.ts
|
|
5702
|
+
concorde/src/la-billetterie/components/access-control-mobile/access-controller-picker.ts
|
|
5703
|
+
concorde/src/la-billetterie/components/accreditations-directory/accreditations-directory.ts
|
|
5704
|
+
concorde/src/la-billetterie/components/address/address-suggestion.ts
|
|
5705
|
+
concorde/src/la-billetterie/components/bulk/bulk.ts
|
|
5706
|
+
concorde/src/la-billetterie/components/campaign/campaign-content.ts
|
|
5707
|
+
concorde/src/la-billetterie/components/counter/agenda/agenda.ts
|
|
5708
|
+
concorde/src/la-billetterie/components/counter/event-selector/event-selector.ts
|
|
5709
|
+
concorde/src/la-billetterie/components/counter/order-validation/order-validation-settings.ts
|
|
5710
|
+
concorde/src/la-billetterie/components/counter/print/format-menu.ts
|
|
5711
|
+
concorde/src/la-billetterie/components/counter/reservation-request-treatment/reservation-request-treatment.ts
|
|
5712
|
+
concorde/src/la-billetterie/components/counter/store/counter-store.ts
|
|
5713
|
+
concorde/src/la-billetterie/components/counter/widgets-settings/widgets-settings-page.ts
|
|
5714
|
+
concorde/src/la-billetterie/components/custom-list/custom-list.ts
|
|
5715
|
+
concorde/src/la-billetterie/components/event/agenda/agenda.ts
|
|
5716
|
+
concorde/src/la-billetterie/components/event/atoms/buy-event-block/buy-event-block.ts
|
|
5717
|
+
concorde/src/la-billetterie/components/event/atoms/categorizedPrices/categorizedPrices.ts
|
|
5718
|
+
concorde/src/la-billetterie/components/event/event-store/event-store-content.ts
|
|
5719
|
+
concorde/src/la-billetterie/components/event/form-event-filter/form-event-filter.ts
|
|
5720
|
+
concorde/src/la-billetterie/components/form/event-selection/event-selection-filters.ts
|
|
5721
|
+
concorde/src/la-billetterie/components/form/event-selection/event-selection.ts
|
|
5722
|
+
concorde/src/la-billetterie/components/giftcards/giftcard-link.ts
|
|
5723
|
+
concorde/src/la-billetterie/components/layout/header.ts
|
|
5724
|
+
concorde/src/la-billetterie/components/orders/recover/recover.ts
|
|
5725
|
+
concorde/src/la-billetterie/components/placing/atoms/placement-choice/placement-choice.ts
|
|
5726
|
+
concorde/src/la-billetterie/components/placing/seatmap-view/seatmap-view.ts
|
|
5727
|
+
concorde/src/la-billetterie/components/product/price-selection-form/price-selection-form.ts
|
|
5728
|
+
concorde/src/la-billetterie/components/product/prices-form/price-button/price-button.ts
|
|
5729
|
+
concorde/src/la-billetterie/components/purchase/purchase-summary/complementary-info/complementary-info.ts
|
|
5730
|
+
concorde/src/la-billetterie/components/reservation-request/atoms/request-event-form.ts
|
|
5731
|
+
concorde/src/la-billetterie/components/reservation/atoms/new-quote-form.ts
|
|
5732
|
+
concorde/src/la-billetterie/components/reservation/reservation-content.ts
|
|
5733
|
+
concorde/src/la-billetterie/components/seatmap/seatmap.ts
|
|
5734
|
+
concorde/src/la-billetterie/components/shop/shop.ts
|
|
5735
|
+
concorde/src/la-billetterie/components/stats/dashboard/dashboard.ts
|
|
5736
|
+
concorde/src/la-billetterie/components/stats/event/event-stats-check.ts
|
|
5737
|
+
concorde/src/la-billetterie/components/stats/sales-summary/sales-summary.ts
|
|
5738
|
+
concorde/src/la-billetterie/components/subscription/atoms/quick-select-display-toggle/quick-select-display-toggle.ts
|
|
5739
|
+
concorde/src/la-billetterie/components/subscription/cart-quick-select.ts
|
|
5740
|
+
concorde/src/la-billetterie/components/subscription/edit/subscription-renew-form.ts
|
|
5741
|
+
concorde/src/la-billetterie/components/ticket/ticket-freeup.ts
|
|
5742
|
+
concorde/src/la-billetterie/components/tickets-app/default-router.ts
|
|
5743
|
+
concorde/src/la-billetterie/components/user/account/account-purchases.ts
|
|
5744
|
+
concorde/src/la-billetterie/components/user/account/account-tickets.ts
|
|
5745
|
+
concorde/src/la-billetterie/components/user/account/link-ticket/link-ticket.ts
|
|
5746
|
+
concorde/src/la-billetterie/components/user/form/login.ts
|
|
5747
|
+
concorde/src/la-billetterie/components/user/user-attach/buyer-attach-form.ts
|
|
5748
|
+
concorde/src/la-billetterie/components/user/user-attach/buyer-attach.ts
|
|
5749
|
+
concorde/src/la-billetterie/components/user/user-attach/owner-attach-form.ts
|
|
5750
|
+
concorde/src/la-billetterie/components/user/user-attach/subscription-attach-form.ts
|
|
5751
|
+
concorde/src/la-billetterie/components/user/user-attach/subscription-selector.ts
|
|
5752
|
+
concorde/src/la-billetterie/components/user/user-selector/user-selector.ts
|
|
5753
|
+
concorde/src/la-billetterie/components/user/user-suggest/user-suggest.ts
|
|
5754
|
+
concorde/src/widgets/agenda/agenda.ts
|
|
5755
|
+
|
|
5756
|
+
Re-run audit:
|
|
5757
|
+
|
|
5758
|
+
from la-billetterie
|
|
5759
|
+
rg -l 'formDataProvider' concorde/src | while read f; do rg -q 'dataProvider\s=' "$f" && echo "$f"; done
|
|
5760
|
+
|
|
5761
|
+
Non-regression (Concorde docs)
|
|
5762
|
+
|
|
5763
|
+
Smoke form demos: input, textarea, select, checkbox (incl. check-all), radio, switch, button form modes, input-autocomplete, queue + dataFilterProvider, submit, validation / sameValueAs.
|
|
5764
|
+
|
|
5765
|
+
---
|
|
5766
|
+
|
|
5534
5767
|
## HTML integration (no Lit)
|
|
5535
5768
|
|
|
5536
5769
|
- URL: https://concorde.supersoniks.org/crawl/docs/_misc/html-integration.html
|
|
5537
5770
|
- Doc ID: docs/_misc/html-integration
|
|
5538
|
-
- Keywords: Concorde, supersoniks, docs/_misc/html-integration, html-integration, HTML integration (no Lit), reference, data-bind, dataProvider, formDataProvider,
|
|
5771
|
+
- Keywords: Concorde, supersoniks, docs/_misc/html-integration, html-integration, HTML integration (no Lit), reference, data-bind, dataProvider, formDataProvider, sonic-input, name, src/docs/example/,
|
|
5539
5772
|
|
|
5540
5773
|
HTML integration (no Lit)
|
|
5541
5774
|
|
|
5542
5775
|
Some hosts (legacy PHP pages, static HTML) embed Concorde components without a Lit build step. They can use HTML attributes such as data-bind, dataProvider, and formDataProvider on tags directly in the page.
|
|
5543
5776
|
|
|
5777
|
+
Form fields (sonic-input, checkbox, select, …) bind only via formDataProvider + name. They do not autofill from ancestor dataProvider (Subscriber was removed from FormElement — see FormElement without Subscriber).
|
|
5778
|
+
|
|
5544
5779
|
That style is not what we demonstrate in this doc site: live examples are Lit components under src/docs/example/, registered once and reused from Markdown via tags like .
|
|
5545
5780
|
|
|
5546
5781
|
| Goal | Use |
|
package/docs/llms.txt
CHANGED
|
@@ -19,6 +19,7 @@ Full text: https://concorde.supersoniks.org/llms-full.txt
|
|
|
19
19
|
- [Date](https://concorde.supersoniks.org/crawl/core/components/functional/date/date.html) (core/components/functional/date/date): Nothing is displayed.
|
|
20
20
|
- [Fetch](https://concorde.supersoniks.org/crawl/core/components/functional/fetch/fetch.html) (core/components/functional/fetch/fetch): > New apps: prefer @get for a typed GET on a component, or List / Queue with fetch for collections. Use Local API demos (serviceURL="/docs-mock-api") to try examples offline.
|
|
21
21
|
- [if](https://concorde.supersoniks.org/crawl/core/components/functional/if/if.html) (core/components/functional/if/if): The sonic-if component shows its slot when .condition is true. In Lit, bind .condition from store-driven state (@subscribe on a formDataProvider field) — live preview and TypeScript source are the sam
|
|
22
|
+
- [Jsonata](https://concorde.supersoniks.org/crawl/core/components/functional/jsonata/jsonata.html) (core/components/functional/jsonata/jsonata): sonic-jsonata : 1 input → expression → 1 output (readonly).
|
|
22
23
|
- [List](https://concorde.supersoniks.org/crawl/core/components/functional/list/list.html) (core/components/functional/list/list): > Try offline: serviceURL="/docs-mock-api" and dataProvider="api/users" with key="data" — see Local API demos. Recommended patterns: Data flow.
|
|
23
24
|
- [Mix](https://concorde.supersoniks.org/crawl/core/components/functional/mix/mix.html) (core/components/functional/mix/mix): Mix allows you to mix several subsets of dataProvider in a new key/value structure which is itself associated with a new dataProvider. The data update is then bidirectional.
|
|
24
25
|
- [Queue](https://concorde.supersoniks.org/crawl/core/components/functional/queue/queue.html) (core/components/functional/queue/queue): > Try offline: serviceURL="/docs-mock-api" — see Local API demos. Row rendering: Data flow (.items property binding).
|
|
@@ -95,6 +96,7 @@ Custom
|
|
|
95
96
|
- [Local API demos (offline)](https://concorde.supersoniks.org/crawl/docs/_misc/docs-mock-api.html) (docs/_misc/docs-mock-api): The Concorde doc site does not call fragile third-party APIs during yarn dev. A Service Worker and the Vite dev middleware serve /docs-mock-api/* on the same origin.
|
|
96
97
|
- [Dynamic path placeholders](https://concorde.supersoniks.org/crawl/docs/_misc/dynamic-path.html) (docs/_misc/dynamic-path): Decorators and DataProviderKey paths can include placeholders resolved on the host component at runtime:
|
|
97
98
|
- [Endpoint](https://concorde.supersoniks.org/crawl/docs/_misc/endpoint.html) (docs/_misc/endpoint): Endpoint<T, U> describes a single HTTP path (or a path accepted by API.get) and carries the expected response type T. Unlike DataProviderKey, there is no dot-navigation: the path is one string.
|
|
99
|
+
- [FormElement without Subscriber (REDMINE-79569)](https://concorde.supersoniks.org/crawl/docs/_misc/formelement-subscriber-removal.html) (docs/_misc/formelement-subscriber-removal): Form fields (sonic-input, textarea, select, checkbox, radio, switch, button, input-autocomplete) no longer inherit the Subscriber mixin.
|
|
98
100
|
- [HTML integration (no Lit)](https://concorde.supersoniks.org/crawl/docs/_misc/html-integration.html) (docs/_misc/html-integration): Some hosts (legacy PHP pages, static HTML) embed Concorde components without a Lit build step. They can use HTML attributes such as data-bind, dataProvider, and formDataProvider on tags directly in th
|
|
99
101
|
|
|
100
102
|
## Optional
|
package/docs/sitemap.xml
CHANGED
|
@@ -21,6 +21,9 @@
|
|
|
21
21
|
<url>
|
|
22
22
|
<loc>https://concorde.supersoniks.org/crawl/core/components/functional/if/if.html</loc>
|
|
23
23
|
</url>
|
|
24
|
+
<url>
|
|
25
|
+
<loc>https://concorde.supersoniks.org/crawl/core/components/functional/jsonata/jsonata.html</loc>
|
|
26
|
+
</url>
|
|
24
27
|
<url>
|
|
25
28
|
<loc>https://concorde.supersoniks.org/crawl/core/components/functional/list/list.html</loc>
|
|
26
29
|
</url>
|
|
@@ -225,6 +228,9 @@
|
|
|
225
228
|
<url>
|
|
226
229
|
<loc>https://concorde.supersoniks.org/crawl/docs/_misc/endpoint.html</loc>
|
|
227
230
|
</url>
|
|
231
|
+
<url>
|
|
232
|
+
<loc>https://concorde.supersoniks.org/crawl/docs/_misc/formelement-subscriber-removal.html</loc>
|
|
233
|
+
</url>
|
|
228
234
|
<url>
|
|
229
235
|
<loc>https://concorde.supersoniks.org/crawl/docs/_misc/html-integration.html</loc>
|
|
230
236
|
</url>
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
# Jsonata
|
|
2
|
+
|
|
3
|
+
`sonic-jsonata` : **1 input → expression → 1 output** (readonly).
|
|
4
|
+
|
|
5
|
+
Unidirectional (fetch → compute → display), unlike [`sonic-mix`](#core/components/functional/mix/mix.md/mix).
|
|
6
|
+
|
|
7
|
+
> Offline : `serviceURL="/docs-mock-api"` — [Local API demos](#docs/_misc/docs-mock-api.md/docs-mock-api).
|
|
8
|
+
|
|
9
|
+
## Demos
|
|
10
|
+
|
|
11
|
+
### Groupby + top N
|
|
12
|
+
|
|
13
|
+
Change **Top N** → recalcul sans refetch.
|
|
14
|
+
|
|
15
|
+
<docs-lit-demo for="docs-jsonata-space-cats-demo"></docs-lit-demo>
|
|
16
|
+
|
|
17
|
+
### Totaux (somme + taxe)
|
|
18
|
+
|
|
19
|
+
Change **Tax %** → même idée.
|
|
20
|
+
|
|
21
|
+
<docs-lit-demo for="docs-jsonata-table-totals-demo"></docs-lit-demo>
|
|
22
|
+
|
|
23
|
+
## Attributes
|
|
24
|
+
|
|
25
|
+
| Attribute | Role |
|
|
26
|
+
|-----------|------|
|
|
27
|
+
| `inputProvider` | Entrée (`$input` dans l’expression) |
|
|
28
|
+
| `outputProvider` | Sortie (readonly) |
|
|
29
|
+
| `expression` | Expression JSONata |
|
|
30
|
+
| `formDataProvider` | Form optionnel (`$top`, `$taxPercent`, …) — même id que le form |
|
|
31
|
+
| `outputSchema` | Schéma léger optionnel (`type`, `required`) |
|
|
32
|
+
|
|
33
|
+
## Helpers
|
|
34
|
+
|
|
35
|
+
`$ucFirst` · `$currency` · `$percent` · `$date` · `$toChart(items, labelKey, valueKey, datasetLabel?)`
|
|
36
|
+
|
|
37
|
+
Pas de DOM, pas de réseau, pas d’`eval`.
|
|
38
|
+
|
|
39
|
+
## Markup
|
|
40
|
+
|
|
41
|
+
<sonic-code language="html">
|
|
42
|
+
<template>
|
|
43
|
+
<sonic-jsonata
|
|
44
|
+
inputProvider="api/space-cats"
|
|
45
|
+
outputProvider="leaderboard"
|
|
46
|
+
formDataProvider="topForm"
|
|
47
|
+
expression='$input{name: $sum(points)} ~> $each(function($v,$k){{"name":$k,"points":$v}}) ^(>points)[[0..$number($top)-1]]'
|
|
48
|
+
></sonic-jsonata>
|
|
49
|
+
</template>
|
|
50
|
+
</sonic-code>
|
|
51
|
+
|
|
52
|
+
Pour du multi-entrées ou une fonction TS : primitive [`derive`](#docs/_core-concept/dataFlow.md/dataFlow).
|
|
53
|
+
|
|
54
|
+
## States
|
|
55
|
+
|
|
56
|
+
`{output}/_state_` → `{ status, error? }` (`loading` | `ready` | `error` | `empty`). Brancher avec `sonic-states`.
|
|
@@ -52,7 +52,7 @@
|
|
|
52
52
|
## Check all checkbox
|
|
53
53
|
<sonic-code>
|
|
54
54
|
<template>
|
|
55
|
-
<div formDataProvider="checkbox-check-all-demo"
|
|
55
|
+
<div formDataProvider="checkbox-check-all-demo">
|
|
56
56
|
<sonic-checkbox name='someSharedName' value="all" checksAll>All</sonic-checkbox>
|
|
57
57
|
<sonic-divider></sonic-divider>
|
|
58
58
|
<div class="grid gap-2">
|
|
@@ -15,7 +15,8 @@ Recommended patterns for new Concorde apps (Lit + TypeScript). Under the hood, d
|
|
|
15
15
|
| HTTP GET | `@get` + `Endpoint`, or `sonic-list` / `sonic-queue` with `fetch` |
|
|
16
16
|
| HTTP POST (body from store) | `@post` + `Endpoint` + body `DataProviderKey` |
|
|
17
17
|
| HTTP PUT / PATCH (body from store) | `@put` / `@patch` — same model as `@post` |
|
|
18
|
-
| Forms | `formDataProvider` + `name` on fields |
|
|
18
|
+
| Forms | `formDataProvider` + `name` on fields (no Subscriber on form elements) |
|
|
19
|
+
| Derived / aggregate (JSONata) | `derive()` or `sonic-jsonata` — [Jsonata](#core/components/functional/jsonata/jsonata.md/jsonata) |
|
|
19
20
|
| Offline doc demos | `serviceURL="/docs-mock-api"` — [Local API demos](#docs/_misc/docs-mock-api.md/docs-mock-api) |
|
|
20
21
|
|
|
21
22
|
Skill: `concorde-get-set-dp` in the package `ai/` folder.
|
|
@@ -69,6 +70,14 @@ npx @supersoniks/create-concorde-ts-starter my-app
|
|
|
69
70
|
|
|
70
71
|
Interactive routes mirror these patterns (`/concepts/*`, `/demo/*`).
|
|
71
72
|
|
|
73
|
+
## Derived data (`derive` / `sonic-jsonata`)
|
|
74
|
+
|
|
75
|
+
Use when you need **client-side aggregations** (groupby, top N, chart shapes) from existing DataProviders — without inline app JS in SDUI.
|
|
76
|
+
|
|
77
|
+
- Primitive: `derive({ inputs, compute, output, variables? })` from `@supersoniks/concorde/utils` (read-only output, debounce, generation, cycle detection, `{output}/_state_`).
|
|
78
|
+
- SDUI adapter: [`sonic-jsonata`](#core/components/functional/jsonata/jsonata.md/jsonata) (`inputProvider` → `expression` → `outputProvider`, optional `formDataProvider`).
|
|
79
|
+
- vs [`sonic-mix`](#core/components/functional/mix/mix.md/mix): mix composes bidirectionally; jsonata **computes** unidirectionally.
|
|
80
|
+
|
|
72
81
|
## Legacy integration
|
|
73
82
|
|
|
74
83
|
| Topic | Page |
|
|
@@ -17,6 +17,19 @@ const usersEndpoint = new Endpoint<User[]>("users");
|
|
|
17
17
|
payload?: ApiResult<User[]>;
|
|
18
18
|
```
|
|
19
19
|
|
|
20
|
+
The same decorator adapts to a method. The method receives the complete
|
|
21
|
+
`ApiResult<T>` payload after each GET:
|
|
22
|
+
|
|
23
|
+
```typescript
|
|
24
|
+
@get(usersEndpoint)
|
|
25
|
+
handleUsers(payload?: ApiResult<User[]>) {
|
|
26
|
+
if (!payload) return;
|
|
27
|
+
|
|
28
|
+
console.log(payload.response?.status);
|
|
29
|
+
console.log(payload.result);
|
|
30
|
+
}
|
|
31
|
+
```
|
|
32
|
+
|
|
20
33
|
The first argument is always an
|
|
21
34
|
[`Endpoint<T>`](#docs/_misc/endpoint.md/endpoint). API configuration is read
|
|
22
35
|
from the HTML scope (`serviceURL`, token, etc.), so the component is usually
|
|
@@ -46,6 +59,22 @@ async refresh() {
|
|
|
46
59
|
`refetch(component)` returns a `Promise<ApiResult<T> | undefined>` that resolves
|
|
47
60
|
after the GET has completed.
|
|
48
61
|
|
|
62
|
+
The named handle can also decorate a method and be reused for refetching:
|
|
63
|
+
|
|
64
|
+
```typescript
|
|
65
|
+
const usersGet = get(new Endpoint<User[]>("users"));
|
|
66
|
+
|
|
67
|
+
@usersGet
|
|
68
|
+
handleUsers(payload?: ApiResult<User[]>) {
|
|
69
|
+
// ...
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
@refetch(usersGet)
|
|
73
|
+
reloadUsers() {
|
|
74
|
+
// The GET runs and handleUsers receives its payload.
|
|
75
|
+
}
|
|
76
|
+
```
|
|
77
|
+
|
|
49
78
|
### From a method decorator
|
|
50
79
|
|
|
51
80
|
The refetch can decorate a local method. The default is `after`; if the
|
|
@@ -116,6 +145,8 @@ import { Endpoint } from "@supersoniks/concorde/utils/endpoint";
|
|
|
116
145
|
<template>
|
|
117
146
|
<docs-demo-sources for="demo-api-get"></docs-demo-sources>
|
|
118
147
|
<demo-api-get></demo-api-get>
|
|
148
|
+
<docs-demo-sources for="demo-api-get-method"></docs-demo-sources>
|
|
149
|
+
<demo-api-get-method></demo-api-get-method>
|
|
119
150
|
<docs-demo-sources for="demo-api-get-configuration-key"></docs-demo-sources>
|
|
120
151
|
<demo-api-get-configuration-key></demo-api-get-configuration-key>
|
|
121
152
|
</template>
|
|
@@ -16,6 +16,15 @@ const patchUser = patch(new Endpoint<User>("users/42"), bodyKey);
|
|
|
16
16
|
payload?: ApiResult<User>;
|
|
17
17
|
```
|
|
18
18
|
|
|
19
|
+
The same decorator adapts to a method:
|
|
20
|
+
|
|
21
|
+
```typescript
|
|
22
|
+
@patch(new Endpoint<User>("users/42"), bodyKey)
|
|
23
|
+
handlePatch(payload?: ApiResult<User>) {
|
|
24
|
+
if (payload?.response?.ok) console.log(payload.result);
|
|
25
|
+
}
|
|
26
|
+
```
|
|
27
|
+
|
|
19
28
|
To run the operation again from the component:
|
|
20
29
|
|
|
21
30
|
```typescript
|
|
@@ -17,6 +17,15 @@ const createUser = post(new Endpoint<User>("users"), userBodyKey);
|
|
|
17
17
|
payload?: ApiResult<User>;
|
|
18
18
|
```
|
|
19
19
|
|
|
20
|
+
The same decorator adapts to a method and receives the complete payload:
|
|
21
|
+
|
|
22
|
+
```typescript
|
|
23
|
+
@post(new Endpoint<User>("users"), userBodyKey)
|
|
24
|
+
handleCreate(payload?: ApiResult<User>) {
|
|
25
|
+
if (payload?.response?.ok) console.log(payload.result);
|
|
26
|
+
}
|
|
27
|
+
```
|
|
28
|
+
|
|
20
29
|
The current body is read from `userBodyKey`. By default, the POST is sent when
|
|
21
30
|
the component connects and after each body mutation. Mutations in the same
|
|
22
31
|
frame are coalesced into one request.
|
|
@@ -120,6 +129,8 @@ import { Endpoint } from "@supersoniks/concorde/utils/endpoint";
|
|
|
120
129
|
<template>
|
|
121
130
|
<docs-demo-sources for="demo-api-post"></docs-demo-sources>
|
|
122
131
|
<demo-api-post></demo-api-post>
|
|
132
|
+
<docs-demo-sources for="demo-api-post-method"></docs-demo-sources>
|
|
133
|
+
<demo-api-post-method></demo-api-post-method>
|
|
123
134
|
<docs-demo-sources for="demo-api-post-dynamic"></docs-demo-sources>
|
|
124
135
|
<demo-api-post-dynamic></demo-api-post-dynamic>
|
|
125
136
|
</template>
|
|
@@ -16,6 +16,15 @@ const updateUser = put(new Endpoint<User>("users/42"), bodyKey);
|
|
|
16
16
|
payload?: ApiResult<User>;
|
|
17
17
|
```
|
|
18
18
|
|
|
19
|
+
The same decorator adapts to a method:
|
|
20
|
+
|
|
21
|
+
```typescript
|
|
22
|
+
@put(new Endpoint<User>("users/42"), bodyKey)
|
|
23
|
+
handleUpdate(payload?: ApiResult<User>) {
|
|
24
|
+
if (payload?.response?.ok) console.log(payload.result);
|
|
25
|
+
}
|
|
26
|
+
```
|
|
27
|
+
|
|
19
28
|
To run the operation again from the component:
|
|
20
29
|
|
|
21
30
|
```typescript
|
|
@@ -16,6 +16,9 @@ TypeScript constants: `src/docs/mock-api/urls.ts` (`DOCS_MOCK_REQRES_SERVICE`, `
|
|
|
16
16
|
|------|---------|
|
|
17
17
|
| `/docs-mock-api/api/users` | `sonic-list`, `sonic-fetch`, `sonic-queue` (users) |
|
|
18
18
|
| `/docs-mock-api/api/users/:id` | Single user, `docs-user` |
|
|
19
|
+
| `/docs-mock-api/api/space-cats` | `sonic-jsonata` top-N demo |
|
|
20
|
+
| `/docs-mock-api/api/coffee-bags` | fixtures / tests jsonata (`?roast=`) |
|
|
21
|
+
| `/docs-mock-api/api/market-order` | `sonic-jsonata` totals demo |
|
|
19
22
|
| `POST /docs-mock-api/api/register` | **sonic-submit** — JSON, `multipart/form-data` (`sendAsFormData`), or `application/x-www-form-urlencoded` (native `<form>`); response includes parsed `email` + `token` |
|
|
20
23
|
| `POST /docs-mock-api/api/register/nested` | Wrapped body `{ data: { id, token } }` for `submit-result-key` demo |
|
|
21
24
|
| `GET /docs-mock-api/api/register/echo` | Echoes query string (`method="get"` on submit) |
|