@gxp-dev/mod-ui 2.0.0 → 2.0.1
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/.storybook/preview.ts +7 -0
- package/README.md +6 -6
- package/dist/_virtual/_plugin-vue_export-helper.js +10 -0
- package/dist/_virtual/_plugin-vue_export-helper.js.map +1 -0
- package/dist/action.d.ts +4 -0
- package/dist/action.d.ts.map +1 -0
- package/dist/action.js +9 -0
- package/dist/action.js.map +1 -0
- package/dist/adapters/fieldTypeMap.d.ts.map +1 -1
- package/dist/adapters/fieldTypeMap.js +4 -8
- package/dist/adapters/fieldTypeMap.js.map +1 -1
- package/dist/adapters/index.d.ts +1 -1
- package/dist/boolean.d.ts +5 -0
- package/dist/boolean.d.ts.map +1 -0
- package/dist/boolean.js +11 -0
- package/dist/boolean.js.map +1 -0
- package/dist/builder.d.ts +9 -0
- package/dist/builder.d.ts.map +1 -0
- package/dist/builder.js +19 -0
- package/dist/builder.js.map +1 -0
- package/dist/cards.d.ts +8 -0
- package/dist/cards.d.ts.map +1 -0
- package/dist/cards.js +17 -0
- package/dist/cards.js.map +1 -0
- package/dist/code.d.ts +6 -0
- package/dist/code.d.ts.map +1 -0
- package/dist/code.js +13 -0
- package/dist/code.js.map +1 -0
- package/dist/components/compositions/cards/CardListCard.vue.d.ts +30 -0
- package/dist/components/compositions/cards/CardListCard.vue.d.ts.map +1 -0
- package/dist/components/compositions/cards/CardListCard.vue.js +122 -2
- package/dist/components/compositions/cards/CardListCard.vue.js.map +1 -1
- package/dist/components/compositions/cards/CardListCard.vue2.js +2 -122
- package/dist/components/compositions/cards/CardListCard.vue2.js.map +1 -1
- package/dist/components/compositions/cards/DataTableCard.vue.d.ts +58 -0
- package/dist/components/compositions/cards/DataTableCard.vue.d.ts.map +1 -0
- package/dist/components/compositions/cards/DataTableCard.vue.js +387 -2
- package/dist/components/compositions/cards/DataTableCard.vue.js.map +1 -1
- package/dist/components/compositions/cards/DataTableCard.vue2.js +2 -387
- package/dist/components/compositions/cards/DataTableCard.vue2.js.map +1 -1
- package/dist/components/compositions/cards/ElementDisplayCard.vue.d.ts +16 -0
- package/dist/components/compositions/cards/ElementDisplayCard.vue.d.ts.map +1 -0
- package/dist/components/compositions/cards/ElementDisplayCard.vue.js +64 -2
- package/dist/components/compositions/cards/ElementDisplayCard.vue.js.map +1 -1
- package/dist/components/compositions/cards/ElementDisplayCard.vue2.js +2 -64
- package/dist/components/compositions/cards/ElementDisplayCard.vue2.js.map +1 -1
- package/dist/components/compositions/cards/ElementListCard.vue.d.ts +22 -0
- package/dist/components/compositions/cards/ElementListCard.vue.d.ts.map +1 -0
- package/dist/components/compositions/cards/ElementListCard.vue.js +92 -2
- package/dist/components/compositions/cards/ElementListCard.vue.js.map +1 -1
- package/dist/components/compositions/cards/ElementListCard.vue2.js +2 -92
- package/dist/components/compositions/cards/ElementListCard.vue2.js.map +1 -1
- package/dist/components/compositions/cards/GridViewCard.vue.d.ts +35 -0
- package/dist/components/compositions/cards/GridViewCard.vue.d.ts.map +1 -0
- package/dist/components/compositions/cards/GridViewCard.vue.js +128 -2
- package/dist/components/compositions/cards/GridViewCard.vue.js.map +1 -1
- package/dist/components/compositions/cards/GridViewCard.vue2.js +2 -128
- package/dist/components/compositions/cards/GridViewCard.vue2.js.map +1 -1
- package/dist/components/compositions/cards/InfoCard.vue.d.ts +24 -0
- package/dist/components/compositions/cards/InfoCard.vue.d.ts.map +1 -0
- package/dist/components/compositions/cards/InfoCard.vue.js +183 -2
- package/dist/components/compositions/cards/InfoCard.vue.js.map +1 -1
- package/dist/components/compositions/cards/InfoCard.vue2.js +2 -183
- package/dist/components/compositions/cards/InfoCard.vue2.js.map +1 -1
- package/dist/components/compositions/cards/TabListCard.vue.d.ts +36 -0
- package/dist/components/compositions/cards/TabListCard.vue.d.ts.map +1 -0
- package/dist/components/compositions/cards/TabListCard.vue.js +124 -2
- package/dist/components/compositions/cards/TabListCard.vue.js.map +1 -1
- package/dist/components/compositions/cards/TabListCard.vue2.js +2 -124
- package/dist/components/compositions/cards/TabListCard.vue2.js.map +1 -1
- package/dist/components/compositions/elements/action/ButtonAction.vue.d.ts +42 -0
- package/dist/components/compositions/elements/action/ButtonAction.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/action/ButtonAction.vue.js +157 -2
- package/dist/components/compositions/elements/action/ButtonAction.vue.js.map +1 -1
- package/dist/components/compositions/elements/action/ButtonAction.vue2.js +2 -157
- package/dist/components/compositions/elements/action/ButtonAction.vue2.js.map +1 -1
- package/dist/components/compositions/elements/action/ButtonGroupAction.vue.d.ts +46 -0
- package/dist/components/compositions/elements/action/ButtonGroupAction.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/action/ButtonGroupAction.vue.js +66 -2
- package/dist/components/compositions/elements/action/ButtonGroupAction.vue.js.map +1 -1
- package/dist/components/compositions/elements/action/ButtonGroupAction.vue2.js +2 -66
- package/dist/components/compositions/elements/action/ButtonGroupAction.vue2.js.map +1 -1
- package/dist/components/compositions/elements/action/LinkAction.vue.d.ts +30 -0
- package/dist/components/compositions/elements/action/LinkAction.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/action/LinkAction.vue.js +55 -2
- package/dist/components/compositions/elements/action/LinkAction.vue.js.map +1 -1
- package/dist/components/compositions/elements/action/LinkAction.vue2.js +2 -55
- package/dist/components/compositions/elements/action/LinkAction.vue2.js.map +1 -1
- package/dist/components/compositions/elements/boolean/CheckboxBoolean.vue.d.ts +25 -0
- package/dist/components/compositions/elements/boolean/CheckboxBoolean.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/boolean/CheckboxBoolean.vue.js +68 -2
- package/dist/components/compositions/elements/boolean/CheckboxBoolean.vue.js.map +1 -1
- package/dist/components/compositions/elements/boolean/CheckboxBoolean.vue2.js +2 -68
- package/dist/components/compositions/elements/boolean/CheckboxBoolean.vue2.js.map +1 -1
- package/dist/components/compositions/elements/boolean/IconToggleBoolean.vue.d.ts +29 -0
- package/dist/components/compositions/elements/boolean/IconToggleBoolean.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/boolean/IconToggleBoolean.vue.js +75 -2
- package/dist/components/compositions/elements/boolean/IconToggleBoolean.vue.js.map +1 -1
- package/dist/components/compositions/elements/boolean/IconToggleBoolean.vue2.js +2 -75
- package/dist/components/compositions/elements/boolean/IconToggleBoolean.vue2.js.map +1 -1
- package/dist/components/compositions/elements/boolean/RadioBoolean.vue.d.ts +33 -0
- package/dist/components/compositions/elements/boolean/RadioBoolean.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/boolean/RadioBoolean.vue.js +91 -2
- package/dist/components/compositions/elements/boolean/RadioBoolean.vue.js.map +1 -1
- package/dist/components/compositions/elements/boolean/RadioBoolean.vue2.js +2 -91
- package/dist/components/compositions/elements/boolean/RadioBoolean.vue2.js.map +1 -1
- package/dist/components/compositions/elements/boolean/SwitchBoolean.vue.d.ts +29 -0
- package/dist/components/compositions/elements/boolean/SwitchBoolean.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/boolean/SwitchBoolean.vue.js +77 -2
- package/dist/components/compositions/elements/boolean/SwitchBoolean.vue.js.map +1 -1
- package/dist/components/compositions/elements/boolean/SwitchBoolean.vue2.js +2 -77
- package/dist/components/compositions/elements/boolean/SwitchBoolean.vue2.js.map +1 -1
- package/dist/components/compositions/elements/builder/DependencyListBuilder.vue.d.ts +29 -0
- package/dist/components/compositions/elements/builder/DependencyListBuilder.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/builder/DependencyListBuilder.vue.js +666 -2
- package/dist/components/compositions/elements/builder/DependencyListBuilder.vue.js.map +1 -1
- package/dist/components/compositions/elements/builder/DependencyListBuilder.vue2.js +2 -666
- package/dist/components/compositions/elements/builder/DependencyListBuilder.vue2.js.map +1 -1
- package/dist/components/compositions/elements/builder/ElementListBuilder.vue.d.ts +29 -0
- package/dist/components/compositions/elements/builder/ElementListBuilder.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/builder/ElementListBuilder.vue.js +421 -2
- package/dist/components/compositions/elements/builder/ElementListBuilder.vue.js.map +1 -1
- package/dist/components/compositions/elements/builder/ElementListBuilder.vue2.js +2 -421
- package/dist/components/compositions/elements/builder/ElementListBuilder.vue2.js.map +1 -1
- package/dist/components/compositions/elements/builder/FormBuilder.vue.d.ts +30 -0
- package/dist/components/compositions/elements/builder/FormBuilder.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/builder/FormBuilder.vue.js +857 -2
- package/dist/components/compositions/elements/builder/FormBuilder.vue.js.map +1 -1
- package/dist/components/compositions/elements/builder/FormBuilder.vue2.js +2 -857
- package/dist/components/compositions/elements/builder/FormBuilder.vue2.js.map +1 -1
- package/dist/components/compositions/elements/builder/GridBuilder.vue.d.ts +37 -0
- package/dist/components/compositions/elements/builder/GridBuilder.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/builder/GridBuilder.vue.js +452 -2
- package/dist/components/compositions/elements/builder/GridBuilder.vue.js.map +1 -1
- package/dist/components/compositions/elements/builder/GridBuilder.vue2.js +2 -452
- package/dist/components/compositions/elements/builder/GridBuilder.vue2.js.map +1 -1
- package/dist/components/compositions/elements/builder/ObjectBuilder.vue.d.ts +33 -0
- package/dist/components/compositions/elements/builder/ObjectBuilder.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/builder/ObjectBuilder.vue.js +511 -2
- package/dist/components/compositions/elements/builder/ObjectBuilder.vue.js.map +1 -1
- package/dist/components/compositions/elements/builder/ObjectBuilder.vue2.js +2 -511
- package/dist/components/compositions/elements/builder/ObjectBuilder.vue2.js.map +1 -1
- package/dist/components/compositions/elements/builder/PresetBuilder.vue.d.ts +29 -0
- package/dist/components/compositions/elements/builder/PresetBuilder.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/builder/PresetBuilder.vue.js +163 -2
- package/dist/components/compositions/elements/builder/PresetBuilder.vue.js.map +1 -1
- package/dist/components/compositions/elements/builder/PresetBuilder.vue2.js +2 -163
- package/dist/components/compositions/elements/builder/PresetBuilder.vue2.js.map +1 -1
- package/dist/components/compositions/elements/builder/QuizBuilder.vue.d.ts +34 -0
- package/dist/components/compositions/elements/builder/QuizBuilder.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/builder/QuizBuilder.vue.js +591 -2
- package/dist/components/compositions/elements/builder/QuizBuilder.vue.js.map +1 -1
- package/dist/components/compositions/elements/builder/QuizBuilder.vue2.js +2 -591
- package/dist/components/compositions/elements/builder/QuizBuilder.vue2.js.map +1 -1
- package/dist/components/compositions/elements/builder/ReactiveCanvasBuilder.vue.d.ts +29 -0
- package/dist/components/compositions/elements/builder/ReactiveCanvasBuilder.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/builder/ReactiveCanvasBuilder.vue.js +580 -2
- package/dist/components/compositions/elements/builder/ReactiveCanvasBuilder.vue.js.map +1 -1
- package/dist/components/compositions/elements/builder/ReactiveCanvasBuilder.vue2.js +2 -580
- package/dist/components/compositions/elements/builder/ReactiveCanvasBuilder.vue2.js.map +1 -1
- package/dist/components/compositions/elements/card/ListCard.vue.d.ts +21 -0
- package/dist/components/compositions/elements/card/ListCard.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/code/BuildStatus.vue.d.ts +43 -0
- package/dist/components/compositions/elements/code/BuildStatus.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/code/BuildStatus.vue.js +246 -2
- package/dist/components/compositions/elements/code/BuildStatus.vue.js.map +1 -1
- package/dist/components/compositions/elements/code/BuildStatus.vue2.js +2 -246
- package/dist/components/compositions/elements/code/BuildStatus.vue2.js.map +1 -1
- package/dist/components/compositions/elements/code/ChatMessage.vue.d.ts +39 -0
- package/dist/components/compositions/elements/code/ChatMessage.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/code/ChatMessage.vue.js +267 -2
- package/dist/components/compositions/elements/code/ChatMessage.vue.js.map +1 -1
- package/dist/components/compositions/elements/code/ChatMessage.vue2.js +2 -267
- package/dist/components/compositions/elements/code/ChatMessage.vue2.js.map +1 -1
- package/dist/components/compositions/elements/code/FileTree.vue.d.ts +42 -0
- package/dist/components/compositions/elements/code/FileTree.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/code/FileTree.vue.js +251 -2
- package/dist/components/compositions/elements/code/FileTree.vue.js.map +1 -1
- package/dist/components/compositions/elements/code/FileTree.vue2.js +2 -251
- package/dist/components/compositions/elements/code/FileTree.vue2.js.map +1 -1
- package/dist/components/compositions/elements/code/GitCodeEditor.vue.d.ts +54 -0
- package/dist/components/compositions/elements/code/GitCodeEditor.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/code/GitCodeEditor.vue.js +273 -2
- package/dist/components/compositions/elements/code/GitCodeEditor.vue.js.map +1 -1
- package/dist/components/compositions/elements/code/GitCodeEditor.vue2.js +2 -273
- package/dist/components/compositions/elements/code/GitCodeEditor.vue2.js.map +1 -1
- package/dist/components/compositions/elements/code/PullRequestsList.vue.d.ts +46 -0
- package/dist/components/compositions/elements/code/PullRequestsList.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/code/PullRequestsList.vue.js +303 -2
- package/dist/components/compositions/elements/code/PullRequestsList.vue.js.map +1 -1
- package/dist/components/compositions/elements/code/PullRequestsList.vue2.js +2 -303
- package/dist/components/compositions/elements/code/PullRequestsList.vue2.js.map +1 -1
- package/dist/components/compositions/elements/configuration-block/DialogBlock.vue.d.ts +17 -0
- package/dist/components/compositions/elements/configuration-block/DialogBlock.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/configuration-block/DialogBlock.vue.js +101 -2
- package/dist/components/compositions/elements/configuration-block/DialogBlock.vue.js.map +1 -1
- package/dist/components/compositions/elements/configuration-block/DialogBlock.vue2.js +2 -101
- package/dist/components/compositions/elements/configuration-block/DialogBlock.vue2.js.map +1 -1
- package/dist/components/compositions/elements/configuration-block/ElementsBlock.vue.d.ts +20 -0
- package/dist/components/compositions/elements/configuration-block/ElementsBlock.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/configuration-block/ElementsBlock.vue.js +33 -2
- package/dist/components/compositions/elements/configuration-block/ElementsBlock.vue.js.map +1 -1
- package/dist/components/compositions/elements/configuration-block/ElementsBlock.vue2.js +2 -33
- package/dist/components/compositions/elements/configuration-block/ElementsBlock.vue2.js.map +1 -1
- package/dist/components/compositions/elements/configuration-block/ModalBlock.vue.d.ts +17 -0
- package/dist/components/compositions/elements/configuration-block/ModalBlock.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/configuration-block/ModalBlock.vue.js +103 -2
- package/dist/components/compositions/elements/configuration-block/ModalBlock.vue.js.map +1 -1
- package/dist/components/compositions/elements/configuration-block/ModalBlock.vue2.js +2 -103
- package/dist/components/compositions/elements/configuration-block/ModalBlock.vue2.js.map +1 -1
- package/dist/components/compositions/elements/configuration-block/RepeatableBlock.vue.d.ts +29 -0
- package/dist/components/compositions/elements/configuration-block/RepeatableBlock.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/configuration-block/RepeatableBlock.vue.js +172 -2
- package/dist/components/compositions/elements/configuration-block/RepeatableBlock.vue.js.map +1 -1
- package/dist/components/compositions/elements/configuration-block/RepeatableBlock.vue2.js +2 -140
- package/dist/components/compositions/elements/configuration-block/RepeatableBlock.vue2.js.map +1 -1
- package/dist/components/compositions/elements/configuration-block/RepeatableRow.vue.d.ts +12 -0
- package/dist/components/compositions/elements/configuration-block/RepeatableRow.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/configuration-block/RepeatableRow.vue.js +5 -0
- package/dist/components/compositions/elements/configuration-block/RepeatableRow.vue.js.map +1 -0
- package/dist/components/compositions/elements/configuration-block/RepeatableRow.vue2.js +25 -0
- package/dist/components/compositions/elements/configuration-block/RepeatableRow.vue2.js.map +1 -0
- package/dist/components/compositions/elements/display/BannerDisplay.vue.d.ts +13 -0
- package/dist/components/compositions/elements/display/BannerDisplay.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/display/BannerDisplay.vue.js +63 -2
- package/dist/components/compositions/elements/display/BannerDisplay.vue.js.map +1 -1
- package/dist/components/compositions/elements/display/BannerDisplay.vue2.js +2 -63
- package/dist/components/compositions/elements/display/BannerDisplay.vue2.js.map +1 -1
- package/dist/components/compositions/elements/display/BarcodeDisplay.vue.d.ts +12 -0
- package/dist/components/compositions/elements/display/BarcodeDisplay.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/display/BarcodeDisplay.vue.js +52 -2
- package/dist/components/compositions/elements/display/BarcodeDisplay.vue.js.map +1 -1
- package/dist/components/compositions/elements/display/BarcodeDisplay.vue2.js +2 -52
- package/dist/components/compositions/elements/display/BarcodeDisplay.vue2.js.map +1 -1
- package/dist/components/compositions/elements/display/CarouselDisplay.vue.d.ts +27 -0
- package/dist/components/compositions/elements/display/CarouselDisplay.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/display/CarouselDisplay.vue.js +144 -2
- package/dist/components/compositions/elements/display/CarouselDisplay.vue.js.map +1 -1
- package/dist/components/compositions/elements/display/CarouselDisplay.vue2.js +2 -144
- package/dist/components/compositions/elements/display/CarouselDisplay.vue2.js.map +1 -1
- package/dist/components/compositions/elements/display/ChartDisplay.vue.d.ts +17 -0
- package/dist/components/compositions/elements/display/ChartDisplay.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/display/ChartDisplay.vue.js +78 -2
- package/dist/components/compositions/elements/display/ChartDisplay.vue.js.map +1 -1
- package/dist/components/compositions/elements/display/ChartDisplay.vue2.js +2 -78
- package/dist/components/compositions/elements/display/ChartDisplay.vue2.js.map +1 -1
- package/dist/components/compositions/elements/display/HtmlDisplay.vue.d.ts +7 -0
- package/dist/components/compositions/elements/display/HtmlDisplay.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/display/HtmlDisplay.vue.js +20 -2
- package/dist/components/compositions/elements/display/HtmlDisplay.vue.js.map +1 -1
- package/dist/components/compositions/elements/display/HtmlDisplay.vue2.js +2 -20
- package/dist/components/compositions/elements/display/HtmlDisplay.vue2.js.map +1 -1
- package/dist/components/compositions/elements/display/IconDisplay.vue.d.ts +10 -0
- package/dist/components/compositions/elements/display/IconDisplay.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/display/IconDisplay.vue.js +55 -2
- package/dist/components/compositions/elements/display/IconDisplay.vue.js.map +1 -1
- package/dist/components/compositions/elements/display/IconDisplay.vue2.js +2 -55
- package/dist/components/compositions/elements/display/IconDisplay.vue2.js.map +1 -1
- package/dist/components/compositions/elements/display/IframeDisplay.vue.d.ts +11 -0
- package/dist/components/compositions/elements/display/IframeDisplay.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/display/IframeDisplay.vue.js +32 -2
- package/dist/components/compositions/elements/display/IframeDisplay.vue.js.map +1 -1
- package/dist/components/compositions/elements/display/IframeDisplay.vue2.js +2 -32
- package/dist/components/compositions/elements/display/IframeDisplay.vue2.js.map +1 -1
- package/dist/components/compositions/elements/display/ImageDisplay.vue.d.ts +8 -0
- package/dist/components/compositions/elements/display/ImageDisplay.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/display/ImageDisplay.vue.js +35 -2
- package/dist/components/compositions/elements/display/ImageDisplay.vue.js.map +1 -1
- package/dist/components/compositions/elements/display/ImageDisplay.vue2.js +2 -35
- package/dist/components/compositions/elements/display/ImageDisplay.vue2.js.map +1 -1
- package/dist/components/compositions/elements/display/MarkdownDisplay.vue.d.ts +7 -0
- package/dist/components/compositions/elements/display/MarkdownDisplay.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/display/MarkdownDisplay.vue.js +39 -2
- package/dist/components/compositions/elements/display/MarkdownDisplay.vue.js.map +1 -1
- package/dist/components/compositions/elements/display/MarkdownDisplay.vue2.js +2 -39
- package/dist/components/compositions/elements/display/MarkdownDisplay.vue2.js.map +1 -1
- package/dist/components/compositions/elements/display/ProgressBarDisplay.vue.d.ts +11 -0
- package/dist/components/compositions/elements/display/ProgressBarDisplay.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/display/ProgressBarDisplay.vue.js +42 -2
- package/dist/components/compositions/elements/display/ProgressBarDisplay.vue.js.map +1 -1
- package/dist/components/compositions/elements/display/ProgressBarDisplay.vue2.js +2 -42
- package/dist/components/compositions/elements/display/ProgressBarDisplay.vue2.js.map +1 -1
- package/dist/components/compositions/elements/display/QrCodeDisplay.vue.d.ts +9 -0
- package/dist/components/compositions/elements/display/QrCodeDisplay.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/display/QrCodeDisplay.vue.js +46 -2
- package/dist/components/compositions/elements/display/QrCodeDisplay.vue.js.map +1 -1
- package/dist/components/compositions/elements/display/QrCodeDisplay.vue2.js +2 -46
- package/dist/components/compositions/elements/display/QrCodeDisplay.vue2.js.map +1 -1
- package/dist/components/compositions/elements/display/ReactiveCanvasDisplay.vue.d.ts +7 -0
- package/dist/components/compositions/elements/display/ReactiveCanvasDisplay.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/display/ReactiveCanvasDisplay.vue.js +64 -2
- package/dist/components/compositions/elements/display/ReactiveCanvasDisplay.vue.js.map +1 -1
- package/dist/components/compositions/elements/display/ReactiveCanvasDisplay.vue2.js +2 -64
- package/dist/components/compositions/elements/display/ReactiveCanvasDisplay.vue2.js.map +1 -1
- package/dist/components/compositions/elements/display/SpriteDisplay.vue.d.ts +7 -0
- package/dist/components/compositions/elements/display/SpriteDisplay.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/display/SpriteDisplay.vue.js +64 -2
- package/dist/components/compositions/elements/display/SpriteDisplay.vue.js.map +1 -1
- package/dist/components/compositions/elements/display/SpriteDisplay.vue2.js +2 -64
- package/dist/components/compositions/elements/display/SpriteDisplay.vue2.js.map +1 -1
- package/dist/components/compositions/elements/display/TypeDisplay.vue.d.ts +11 -0
- package/dist/components/compositions/elements/display/TypeDisplay.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/display/TypeDisplay.vue.js +42 -2
- package/dist/components/compositions/elements/display/TypeDisplay.vue.js.map +1 -1
- package/dist/components/compositions/elements/display/TypeDisplay.vue2.js +2 -42
- package/dist/components/compositions/elements/display/TypeDisplay.vue2.js.map +1 -1
- package/dist/components/compositions/elements/display/VideoPlayerDisplay.vue.d.ts +10 -0
- package/dist/components/compositions/elements/display/VideoPlayerDisplay.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/display/VideoPlayerDisplay.vue.js +33 -2
- package/dist/components/compositions/elements/display/VideoPlayerDisplay.vue.js.map +1 -1
- package/dist/components/compositions/elements/display/VideoPlayerDisplay.vue2.js +2 -33
- package/dist/components/compositions/elements/display/VideoPlayerDisplay.vue2.js.map +1 -1
- package/dist/components/compositions/elements/editor/CodeEditor.vue.d.ts +33 -0
- package/dist/components/compositions/elements/editor/CodeEditor.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/editor/CodeEditor.vue.js +5 -2
- package/dist/components/compositions/elements/editor/CodeEditor.vue.js.map +1 -1
- package/dist/components/compositions/elements/editor/CodeEditor.vue2.js +211 -53
- package/dist/components/compositions/elements/editor/CodeEditor.vue2.js.map +1 -1
- package/dist/components/compositions/elements/editor/HtmlEditor.vue.d.ts +24 -0
- package/dist/components/compositions/elements/editor/HtmlEditor.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/editor/HtmlEditor.vue.js +5 -2
- package/dist/components/compositions/elements/editor/HtmlEditor.vue.js.map +1 -1
- package/dist/components/compositions/elements/editor/HtmlEditor.vue2.js +1333 -50
- package/dist/components/compositions/elements/editor/HtmlEditor.vue2.js.map +1 -1
- package/dist/components/compositions/elements/editor/ImageEditor.vue.d.ts +24 -0
- package/dist/components/compositions/elements/editor/ImageEditor.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/editor/ImageEditor.vue.js +67 -2
- package/dist/components/compositions/elements/editor/ImageEditor.vue.js.map +1 -1
- package/dist/components/compositions/elements/editor/ImageEditor.vue2.js +2 -67
- package/dist/components/compositions/elements/editor/ImageEditor.vue2.js.map +1 -1
- package/dist/components/compositions/elements/editor/MarkdownEditor.vue.d.ts +28 -0
- package/dist/components/compositions/elements/editor/MarkdownEditor.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/editor/MarkdownEditor.vue.js +82 -2
- package/dist/components/compositions/elements/editor/MarkdownEditor.vue.js.map +1 -1
- package/dist/components/compositions/elements/editor/MarkdownEditor.vue2.js +2 -82
- package/dist/components/compositions/elements/editor/MarkdownEditor.vue2.js.map +1 -1
- package/dist/components/compositions/elements/editor/RichTextEditor.vue.d.ts +26 -0
- package/dist/components/compositions/elements/editor/RichTextEditor.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/editor/RichTextEditor.vue.js +262 -2
- package/dist/components/compositions/elements/editor/RichTextEditor.vue.js.map +1 -1
- package/dist/components/compositions/elements/editor/RichTextEditor.vue2.js +2 -262
- package/dist/components/compositions/elements/editor/RichTextEditor.vue2.js.map +1 -1
- package/dist/components/compositions/elements/file/AssetPickerFile.vue.d.ts +47 -0
- package/dist/components/compositions/elements/file/AssetPickerFile.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/file/AssetPickerFile.vue.js +293 -2
- package/dist/components/compositions/elements/file/AssetPickerFile.vue.js.map +1 -1
- package/dist/components/compositions/elements/file/AssetPickerFile.vue2.js +2 -293
- package/dist/components/compositions/elements/file/AssetPickerFile.vue2.js.map +1 -1
- package/dist/components/compositions/elements/file/DropzoneFile.vue.d.ts +33 -0
- package/dist/components/compositions/elements/file/DropzoneFile.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/file/DropzoneFile.vue.js +171 -2
- package/dist/components/compositions/elements/file/DropzoneFile.vue.js.map +1 -1
- package/dist/components/compositions/elements/file/DropzoneFile.vue2.js +2 -171
- package/dist/components/compositions/elements/file/DropzoneFile.vue2.js.map +1 -1
- package/dist/components/compositions/elements/file/UploadFile.vue.d.ts +33 -0
- package/dist/components/compositions/elements/file/UploadFile.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/file/UploadFile.vue.js +149 -2
- package/dist/components/compositions/elements/file/UploadFile.vue.js.map +1 -1
- package/dist/components/compositions/elements/file/UploadFile.vue2.js +2 -149
- package/dist/components/compositions/elements/file/UploadFile.vue2.js.map +1 -1
- package/dist/components/compositions/elements/input/BarcodeScannerInput.vue.d.ts +48 -0
- package/dist/components/compositions/elements/input/BarcodeScannerInput.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/input/BarcodeScannerInput.vue.js +166 -2
- package/dist/components/compositions/elements/input/BarcodeScannerInput.vue.js.map +1 -1
- package/dist/components/compositions/elements/input/BarcodeScannerInput.vue2.js +2 -166
- package/dist/components/compositions/elements/input/BarcodeScannerInput.vue2.js.map +1 -1
- package/dist/components/compositions/elements/input/EmailInput.vue.d.ts +48 -0
- package/dist/components/compositions/elements/input/EmailInput.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/input/EmailInput.vue.js +62 -2
- package/dist/components/compositions/elements/input/EmailInput.vue.js.map +1 -1
- package/dist/components/compositions/elements/input/EmailInput.vue2.js +2 -62
- package/dist/components/compositions/elements/input/EmailInput.vue2.js.map +1 -1
- package/dist/components/compositions/elements/input/NumberInput.vue.d.ts +49 -0
- package/dist/components/compositions/elements/input/NumberInput.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/input/NumberInput.vue.js +73 -2
- package/dist/components/compositions/elements/input/NumberInput.vue.js.map +1 -1
- package/dist/components/compositions/elements/input/NumberInput.vue2.js +2 -73
- package/dist/components/compositions/elements/input/NumberInput.vue2.js.map +1 -1
- package/dist/components/compositions/elements/input/PasswordInput.vue.d.ts +49 -0
- package/dist/components/compositions/elements/input/PasswordInput.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/input/PasswordInput.vue.js +98 -2
- package/dist/components/compositions/elements/input/PasswordInput.vue.js.map +1 -1
- package/dist/components/compositions/elements/input/PasswordInput.vue2.js +2 -98
- package/dist/components/compositions/elements/input/PasswordInput.vue2.js.map +1 -1
- package/dist/components/compositions/elements/input/RangeSliderInput.vue.d.ts +31 -0
- package/dist/components/compositions/elements/input/RangeSliderInput.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/input/RangeSliderInput.vue.js +69 -2
- package/dist/components/compositions/elements/input/RangeSliderInput.vue.js.map +1 -1
- package/dist/components/compositions/elements/input/RangeSliderInput.vue2.js +2 -69
- package/dist/components/compositions/elements/input/RangeSliderInput.vue2.js.map +1 -1
- package/dist/components/compositions/elements/input/SearchInput.vue.d.ts +48 -0
- package/dist/components/compositions/elements/input/SearchInput.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/input/SearchInput.vue.js +69 -2
- package/dist/components/compositions/elements/input/SearchInput.vue.js.map +1 -1
- package/dist/components/compositions/elements/input/SearchInput.vue2.js +2 -69
- package/dist/components/compositions/elements/input/SearchInput.vue2.js.map +1 -1
- package/dist/components/compositions/elements/input/TelInput.vue.d.ts +48 -0
- package/dist/components/compositions/elements/input/TelInput.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/input/TelInput.vue.js +62 -2
- package/dist/components/compositions/elements/input/TelInput.vue.js.map +1 -1
- package/dist/components/compositions/elements/input/TelInput.vue2.js +2 -62
- package/dist/components/compositions/elements/input/TelInput.vue2.js.map +1 -1
- package/dist/components/compositions/elements/input/TextInput.vue.d.ts +48 -0
- package/dist/components/compositions/elements/input/TextInput.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/input/TextInput.vue.js +62 -2
- package/dist/components/compositions/elements/input/TextInput.vue.js.map +1 -1
- package/dist/components/compositions/elements/input/TextInput.vue2.js +2 -62
- package/dist/components/compositions/elements/input/TextInput.vue2.js.map +1 -1
- package/dist/components/compositions/elements/input/TextareaInput.vue.d.ts +54 -0
- package/dist/components/compositions/elements/input/TextareaInput.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/input/TextareaInput.vue.js +63 -2
- package/dist/components/compositions/elements/input/TextareaInput.vue.js.map +1 -1
- package/dist/components/compositions/elements/input/TextareaInput.vue2.js +2 -63
- package/dist/components/compositions/elements/input/TextareaInput.vue2.js.map +1 -1
- package/dist/components/compositions/elements/input/UrlInput.vue.d.ts +48 -0
- package/dist/components/compositions/elements/input/UrlInput.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/input/UrlInput.vue.js +62 -2
- package/dist/components/compositions/elements/input/UrlInput.vue.js.map +1 -1
- package/dist/components/compositions/elements/input/UrlInput.vue2.js +2 -62
- package/dist/components/compositions/elements/input/UrlInput.vue2.js.map +1 -1
- package/dist/components/compositions/elements/option-select/AsyncSelectOption.vue.d.ts +44 -0
- package/dist/components/compositions/elements/option-select/AsyncSelectOption.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/option-select/AsyncSelectOption.vue.js +167 -2
- package/dist/components/compositions/elements/option-select/AsyncSelectOption.vue.js.map +1 -1
- package/dist/components/compositions/elements/option-select/AsyncSelectOption.vue2.js +2 -167
- package/dist/components/compositions/elements/option-select/AsyncSelectOption.vue2.js.map +1 -1
- package/dist/components/compositions/elements/option-select/AutoCompleteOption.vue.d.ts +31 -0
- package/dist/components/compositions/elements/option-select/AutoCompleteOption.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/option-select/AutoCompleteOption.vue.js +121 -2
- package/dist/components/compositions/elements/option-select/AutoCompleteOption.vue.js.map +1 -1
- package/dist/components/compositions/elements/option-select/AutoCompleteOption.vue2.js +2 -121
- package/dist/components/compositions/elements/option-select/AutoCompleteOption.vue2.js.map +1 -1
- package/dist/components/compositions/elements/option-select/CheckboxOption.vue.d.ts +29 -0
- package/dist/components/compositions/elements/option-select/CheckboxOption.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/option-select/CheckboxOption.vue.js +87 -2
- package/dist/components/compositions/elements/option-select/CheckboxOption.vue.js.map +1 -1
- package/dist/components/compositions/elements/option-select/CheckboxOption.vue2.js +2 -87
- package/dist/components/compositions/elements/option-select/CheckboxOption.vue2.js.map +1 -1
- package/dist/components/compositions/elements/option-select/IntegrationConnectorOption.vue.d.ts +41 -0
- package/dist/components/compositions/elements/option-select/IntegrationConnectorOption.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/option-select/IntegrationConnectorOption.vue.js +237 -2
- package/dist/components/compositions/elements/option-select/IntegrationConnectorOption.vue.js.map +1 -1
- package/dist/components/compositions/elements/option-select/IntegrationConnectorOption.vue2.js +2 -237
- package/dist/components/compositions/elements/option-select/IntegrationConnectorOption.vue2.js.map +1 -1
- package/dist/components/compositions/elements/option-select/ListOption.vue.d.ts +29 -0
- package/dist/components/compositions/elements/option-select/ListOption.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/option-select/ListOption.vue.js +89 -2
- package/dist/components/compositions/elements/option-select/ListOption.vue.js.map +1 -1
- package/dist/components/compositions/elements/option-select/ListOption.vue2.js +2 -89
- package/dist/components/compositions/elements/option-select/ListOption.vue2.js.map +1 -1
- package/dist/components/compositions/elements/option-select/PillSelectOption.vue.d.ts +28 -0
- package/dist/components/compositions/elements/option-select/PillSelectOption.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/option-select/PillSelectOption.vue.js +85 -2
- package/dist/components/compositions/elements/option-select/PillSelectOption.vue.js.map +1 -1
- package/dist/components/compositions/elements/option-select/PillSelectOption.vue2.js +2 -85
- package/dist/components/compositions/elements/option-select/PillSelectOption.vue2.js.map +1 -1
- package/dist/components/compositions/elements/option-select/RadioOption.vue.d.ts +29 -0
- package/dist/components/compositions/elements/option-select/RadioOption.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/option-select/RadioOption.vue.js +98 -2
- package/dist/components/compositions/elements/option-select/RadioOption.vue.js.map +1 -1
- package/dist/components/compositions/elements/option-select/RadioOption.vue2.js +2 -98
- package/dist/components/compositions/elements/option-select/RadioOption.vue2.js.map +1 -1
- package/dist/components/compositions/elements/option-select/SelectMultipleOption.vue.d.ts +29 -0
- package/dist/components/compositions/elements/option-select/SelectMultipleOption.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/option-select/SelectMultipleOption.vue.js +151 -2
- package/dist/components/compositions/elements/option-select/SelectMultipleOption.vue.js.map +1 -1
- package/dist/components/compositions/elements/option-select/SelectMultipleOption.vue2.js +2 -151
- package/dist/components/compositions/elements/option-select/SelectMultipleOption.vue2.js.map +1 -1
- package/dist/components/compositions/elements/option-select/SelectOption.vue.d.ts +29 -0
- package/dist/components/compositions/elements/option-select/SelectOption.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/option-select/SelectOption.vue.js +116 -2
- package/dist/components/compositions/elements/option-select/SelectOption.vue.js.map +1 -1
- package/dist/components/compositions/elements/option-select/SelectOption.vue2.js +2 -116
- package/dist/components/compositions/elements/option-select/SelectOption.vue2.js.map +1 -1
- package/dist/components/compositions/elements/picker/AsyncSelectPicker.vue.d.ts +40 -0
- package/dist/components/compositions/elements/picker/AsyncSelectPicker.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/picker/AsyncSelectPicker.vue.js +182 -2
- package/dist/components/compositions/elements/picker/AsyncSelectPicker.vue.js.map +1 -1
- package/dist/components/compositions/elements/picker/AsyncSelectPicker.vue2.js +2 -182
- package/dist/components/compositions/elements/picker/AsyncSelectPicker.vue2.js.map +1 -1
- package/dist/components/compositions/elements/picker/ColorPicker.vue.d.ts +29 -0
- package/dist/components/compositions/elements/picker/ColorPicker.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/picker/ColorPicker.vue.js +155 -2
- package/dist/components/compositions/elements/picker/ColorPicker.vue.js.map +1 -1
- package/dist/components/compositions/elements/picker/ColorPicker.vue2.js +2 -155
- package/dist/components/compositions/elements/picker/ColorPicker.vue2.js.map +1 -1
- package/dist/components/compositions/elements/picker/DataModelPicker.vue.d.ts +29 -0
- package/dist/components/compositions/elements/picker/DataModelPicker.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/picker/DataModelPicker.vue.js +104 -2
- package/dist/components/compositions/elements/picker/DataModelPicker.vue.js.map +1 -1
- package/dist/components/compositions/elements/picker/DataModelPicker.vue2.js +2 -104
- package/dist/components/compositions/elements/picker/DataModelPicker.vue2.js.map +1 -1
- package/dist/components/compositions/elements/picker/DatePicker.vue.d.ts +32 -0
- package/dist/components/compositions/elements/picker/DatePicker.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/picker/DatePicker.vue.js +140 -2
- package/dist/components/compositions/elements/picker/DatePicker.vue.js.map +1 -1
- package/dist/components/compositions/elements/picker/DatePicker.vue2.js +2 -140
- package/dist/components/compositions/elements/picker/DatePicker.vue2.js.map +1 -1
- package/dist/components/compositions/elements/picker/DateTimePicker.vue.d.ts +26 -0
- package/dist/components/compositions/elements/picker/DateTimePicker.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/picker/DateTimePicker.vue.js +171 -2
- package/dist/components/compositions/elements/picker/DateTimePicker.vue.js.map +1 -1
- package/dist/components/compositions/elements/picker/DateTimePicker.vue2.js +2 -171
- package/dist/components/compositions/elements/picker/DateTimePicker.vue2.js.map +1 -1
- package/dist/components/compositions/elements/picker/IconPicker.vue.d.ts +26 -0
- package/dist/components/compositions/elements/picker/IconPicker.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/picker/IconPicker.vue.js +190 -2
- package/dist/components/compositions/elements/picker/IconPicker.vue.js.map +1 -1
- package/dist/components/compositions/elements/picker/IconPicker.vue2.js +2 -190
- package/dist/components/compositions/elements/picker/IconPicker.vue2.js.map +1 -1
- package/dist/components/compositions/elements/picker/IconPickerInline.vue.d.ts +24 -0
- package/dist/components/compositions/elements/picker/IconPickerInline.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/{components/IconPickerInline.vue2.js → picker/IconPickerInline.vue.js} +23 -23
- package/dist/components/compositions/elements/picker/IconPickerInline.vue.js.map +1 -0
- package/dist/components/compositions/elements/picker/IconPickerInline.vue2.js +5 -0
- package/dist/components/compositions/elements/picker/IconPickerInline.vue2.js.map +1 -0
- package/dist/components/compositions/elements/picker/IntegrationConnectorPicker.vue.d.ts +41 -0
- package/dist/components/compositions/elements/picker/IntegrationConnectorPicker.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/picker/IntegrationConnectorPicker.vue.js +271 -2
- package/dist/components/compositions/elements/picker/IntegrationConnectorPicker.vue.js.map +1 -1
- package/dist/components/compositions/elements/picker/IntegrationConnectorPicker.vue2.js +2 -271
- package/dist/components/compositions/elements/picker/IntegrationConnectorPicker.vue2.js.map +1 -1
- package/dist/components/compositions/elements/picker/MapPicker.vue.d.ts +55 -0
- package/dist/components/compositions/elements/picker/MapPicker.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/picker/MapPicker.vue.js +118 -2
- package/dist/components/compositions/elements/picker/MapPicker.vue.js.map +1 -1
- package/dist/components/compositions/elements/picker/MapPicker.vue2.js +2 -118
- package/dist/components/compositions/elements/picker/MapPicker.vue2.js.map +1 -1
- package/dist/components/compositions/elements/picker/TimePicker.vue.d.ts +26 -0
- package/dist/components/compositions/elements/picker/TimePicker.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/picker/TimePicker.vue.js +106 -2
- package/dist/components/compositions/elements/picker/TimePicker.vue.js.map +1 -1
- package/dist/components/compositions/elements/picker/TimePicker.vue2.js +2 -106
- package/dist/components/compositions/elements/picker/TimePicker.vue2.js.map +1 -1
- package/dist/components/compositions/elements/picker/TimezonePicker.vue.d.ts +26 -0
- package/dist/components/compositions/elements/picker/TimezonePicker.vue.d.ts.map +1 -0
- package/dist/components/compositions/elements/picker/TimezonePicker.vue.js +124 -2
- package/dist/components/compositions/elements/picker/TimezonePicker.vue.js.map +1 -1
- package/dist/components/compositions/elements/picker/TimezonePicker.vue2.js +2 -124
- package/dist/components/compositions/elements/picker/TimezonePicker.vue2.js.map +1 -1
- package/dist/components/ui/index.d.ts +3 -3
- package/dist/components/ui/toast/index.d.ts +1 -1
- package/dist/components/ui/toast/index.js.map +1 -1
- package/dist/configuration-block.d.ts +5 -0
- package/dist/configuration-block.d.ts.map +1 -0
- package/dist/configuration-block.js +11 -0
- package/dist/configuration-block.js.map +1 -0
- package/dist/definitions/elements/PickerElement.d.ts +1 -1
- package/dist/definitions/elements/PickerElement.d.ts.map +1 -1
- package/dist/definitions/elements/PickerElement.js +3 -2
- package/dist/definitions/elements/PickerElement.js.map +1 -1
- package/dist/definitions/elements/index.d.ts +1 -155
- package/dist/definitions/elements/index.d.ts.map +1 -1
- package/dist/definitions/elements/index.js +112 -121
- package/dist/definitions/elements/index.js.map +1 -1
- package/dist/definitions/index.d.ts +1 -1
- package/dist/definitions/shared/base.d.ts +1 -1
- package/dist/definitions/shared/base.d.ts.map +1 -1
- package/dist/definitions/shared/base.js.map +1 -1
- package/dist/display.d.ts +16 -0
- package/dist/display.d.ts.map +1 -0
- package/dist/display.js +33 -0
- package/dist/display.js.map +1 -0
- package/dist/editor.d.ts +6 -0
- package/dist/editor.d.ts.map +1 -0
- package/dist/editor.js +13 -0
- package/dist/editor.js.map +1 -0
- package/dist/engine/registry.d.ts +0 -2
- package/dist/engine/registry.d.ts.map +1 -1
- package/dist/engine/registry.js +1 -5
- package/dist/engine/registry.js.map +1 -1
- package/dist/engine/useCardLoader.js +1 -1
- package/dist/engine/useCardLoader.js.map +1 -1
- package/dist/engine/useElementLoader.js +1 -1
- package/dist/engine/useElementLoader.js.map +1 -1
- package/dist/engine/useFormData.d.ts.map +1 -1
- package/dist/engine/useFormData.js +13 -13
- package/dist/engine/useFormData.js.map +1 -1
- package/dist/file.d.ts +4 -0
- package/dist/file.d.ts.map +1 -0
- package/dist/file.js +9 -0
- package/dist/file.js.map +1 -0
- package/dist/index.d.ts +3 -3
- package/dist/index.js +71 -75
- package/dist/index.js.map +1 -1
- package/dist/input.d.ts +11 -0
- package/dist/input.d.ts.map +1 -0
- package/dist/input.js +23 -0
- package/dist/input.js.map +1 -0
- package/dist/lib/storybook.d.ts +45 -0
- package/dist/lib/storybook.d.ts.map +1 -0
- package/dist/option-select.d.ts +10 -0
- package/dist/option-select.d.ts.map +1 -0
- package/dist/option-select.js +21 -0
- package/dist/option-select.js.map +1 -0
- package/dist/pages/ShowPage.vue.js +1 -1
- package/dist/pages/ShowPage.vue.js.map +1 -1
- package/dist/picker.d.ts +12 -0
- package/dist/picker.d.ts.map +1 -0
- package/dist/picker.js +25 -0
- package/dist/picker.js.map +1 -0
- package/dist/stores/dependencyListBuilderStore.d.ts +1 -1
- package/dist/stores/dependencyListBuilderStore.js +5 -5
- package/dist/stores/dependencyListBuilderStore.js.map +1 -1
- package/dist/stores/elementListBuilderStore.d.ts +1 -1
- package/dist/stores/elementListBuilderStore.js +14 -14
- package/dist/stores/elementListBuilderStore.js.map +1 -1
- package/dist/stores/formBuilderStore.d.ts +1 -1
- package/dist/stores/formBuilderStore.js +5 -5
- package/dist/stores/formBuilderStore.js.map +1 -1
- package/dist/stores/formDataStore.d.ts +1 -1
- package/dist/stores/formDataStore.js +2 -2
- package/dist/stores/formDataStore.js.map +1 -1
- package/dist/stores/gridBuilderStore.d.ts +1 -1
- package/dist/stores/gridBuilderStore.js +11 -11
- package/dist/stores/gridBuilderStore.js.map +1 -1
- package/dist/stores/objectBuilderStore.d.ts +1 -1
- package/dist/stores/objectBuilderStore.js +1 -1
- package/dist/stores/objectBuilderStore.js.map +1 -1
- package/dist/stores/presetBuilderStore.d.ts +1 -1
- package/dist/stores/presetBuilderStore.js +12 -12
- package/dist/stores/presetBuilderStore.js.map +1 -1
- package/dist/stores/quizBuilderStore.d.ts +1 -1
- package/dist/stores/quizBuilderStore.js +1 -1
- package/dist/stores/quizBuilderStore.js.map +1 -1
- package/dist/stores/reactiveCanvasBuilderStore.d.ts +1 -1
- package/dist/stores/reactiveCanvasBuilderStore.js +40 -40
- package/dist/stores/reactiveCanvasBuilderStore.js.map +1 -1
- package/dist/styles/mod-ui.css +1 -0
- package/package.json +85 -20
- package/src/action.ts +3 -0
- package/src/adapters/fieldTypeMap.ts +3 -8
- package/src/adapters/index.ts +1 -1
- package/src/boolean.ts +4 -0
- package/src/builder.ts +8 -0
- package/src/cards.ts +7 -0
- package/src/code.ts +5 -0
- package/src/components/compositions/cards/CardListCard.stories.ts +2 -0
- package/src/components/compositions/cards/DataTableCard.stories.ts +2 -0
- package/src/components/compositions/cards/ElementDisplayCard.stories.ts +2 -0
- package/src/components/compositions/cards/ElementListCard.stories.ts +2 -0
- package/src/components/compositions/cards/GridViewCard.stories.ts +2 -0
- package/src/components/compositions/cards/InfoCard.stories.ts +2 -0
- package/src/components/compositions/cards/TabListCard.stories.ts +2 -0
- package/src/components/compositions/elements/action/ButtonAction.stories.ts +3 -1
- package/src/components/compositions/elements/action/ButtonGroupAction.stories.ts +3 -1
- package/src/components/compositions/elements/action/LinkAction.stories.ts +3 -1
- package/src/components/compositions/elements/boolean/CheckboxBoolean.stories.ts +3 -1
- package/src/components/compositions/elements/boolean/IconToggleBoolean.stories.ts +3 -1
- package/src/components/compositions/elements/boolean/RadioBoolean.stories.ts +3 -1
- package/src/components/compositions/elements/boolean/SwitchBoolean.stories.ts +3 -1
- package/src/components/compositions/elements/builder/DependencyListBuilder.stories.ts +1 -1
- package/src/components/compositions/elements/builder/ElementListBuilder.stories.ts +1 -1
- package/src/components/compositions/elements/builder/ElementListBuilder.test.ts +0 -1
- package/src/components/compositions/elements/builder/FormBuilder.stories.ts +2 -0
- package/src/components/compositions/elements/builder/FormBuilder.test.ts +0 -1
- package/src/components/compositions/elements/builder/GridBuilder.stories.ts +2 -0
- package/src/components/compositions/elements/builder/ObjectBuilder.stories.ts +1 -1
- package/src/components/compositions/elements/builder/PresetBuilder.stories.ts +1 -1
- package/src/components/compositions/elements/builder/QuizBuilder.stories.ts +2 -0
- package/src/components/compositions/elements/builder/ReactiveCanvasBuilder.stories.ts +1 -1
- package/src/components/compositions/elements/code/BuildStatus.stories.ts +3 -1
- package/src/components/compositions/elements/code/ChatMessage.stories.ts +1 -1
- package/src/components/compositions/elements/code/FileTree.stories.ts +3 -1
- package/src/components/compositions/elements/code/GitCodeEditor.stories.ts +3 -1
- package/src/components/compositions/elements/code/PullRequestsList.stories.ts +3 -1
- package/src/components/compositions/elements/configuration-block/DialogBlock.stories.ts +1 -1
- package/src/components/compositions/elements/configuration-block/ElementsBlock.stories.ts +1 -1
- package/src/components/compositions/elements/configuration-block/ModalBlock.stories.ts +2 -0
- package/src/components/compositions/elements/configuration-block/RepeatableBlock.stories.ts +45 -2
- package/src/components/compositions/elements/configuration-block/RepeatableBlock.test.ts +47 -16
- package/src/components/compositions/elements/configuration-block/RepeatableBlock.vue +161 -92
- package/src/components/compositions/elements/configuration-block/RepeatableRow.vue +36 -0
- package/src/components/compositions/elements/display/BannerDisplay.stories.ts +3 -1
- package/src/components/compositions/elements/display/BarcodeDisplay.stories.ts +3 -1
- package/src/components/compositions/elements/display/CarouselDisplay.stories.ts +3 -1
- package/src/components/compositions/elements/display/ChartDisplay.stories.ts +3 -1
- package/src/components/compositions/elements/display/HtmlDisplay.stories.ts +3 -1
- package/src/components/compositions/elements/display/IconDisplay.stories.ts +3 -1
- package/src/components/compositions/elements/display/IframeDisplay.stories.ts +3 -1
- package/src/components/compositions/elements/display/ImageDisplay.stories.ts +3 -1
- package/src/components/compositions/elements/display/MarkdownDisplay.stories.ts +3 -1
- package/src/components/compositions/elements/display/ProgressBarDisplay.stories.ts +3 -1
- package/src/components/compositions/elements/display/QrCodeDisplay.stories.ts +3 -1
- package/src/components/compositions/elements/display/ReactiveCanvasDisplay.stories.ts +3 -1
- package/src/components/compositions/elements/display/SpriteDisplay.stories.ts +3 -1
- package/src/components/compositions/elements/display/TypeDisplay.stories.ts +3 -1
- package/src/components/compositions/elements/display/VideoPlayerDisplay.stories.ts +3 -1
- package/src/components/compositions/elements/editor/CodeEditor.stories.ts +88 -12
- package/src/components/compositions/elements/editor/CodeEditor.test.ts +72 -41
- package/src/components/compositions/elements/editor/CodeEditor.vue +306 -38
- package/src/components/compositions/elements/editor/HtmlEditor.stories.ts +73 -6
- package/src/components/compositions/elements/editor/HtmlEditor.test.ts +59 -50
- package/src/components/compositions/elements/editor/HtmlEditor.vue +942 -41
- package/src/components/compositions/elements/editor/ImageEditor.stories.ts +3 -1
- package/src/components/compositions/elements/editor/MarkdownEditor.stories.ts +3 -1
- package/src/components/compositions/elements/editor/RichTextEditor.stories.ts +3 -1
- package/src/components/compositions/elements/file/AssetPickerFile.stories.ts +3 -1
- package/src/components/compositions/elements/file/DropzoneFile.stories.ts +3 -1
- package/src/components/compositions/elements/file/UploadFile.stories.ts +3 -1
- package/src/components/compositions/elements/input/BarcodeScannerInput.stories.ts +3 -1
- package/src/components/compositions/elements/input/EmailInput.stories.ts +3 -1
- package/src/components/compositions/elements/input/NumberInput.stories.ts +3 -1
- package/src/components/compositions/elements/input/PasswordInput.stories.ts +3 -1
- package/src/components/compositions/elements/input/RangeSliderInput.stories.ts +3 -1
- package/src/components/compositions/elements/input/SearchInput.stories.ts +3 -1
- package/src/components/compositions/elements/input/TelInput.stories.ts +3 -1
- package/src/components/compositions/elements/input/TextInput.stories.ts +3 -1
- package/src/components/compositions/elements/input/TextareaInput.stories.ts +3 -1
- package/src/components/compositions/elements/input/UrlInput.stories.ts +3 -1
- package/src/components/compositions/elements/option-select/AsyncSelectOption.stories.ts +3 -1
- package/src/components/compositions/elements/option-select/AutoCompleteOption.stories.ts +3 -1
- package/src/components/compositions/elements/option-select/CheckboxOption.stories.ts +3 -1
- package/src/components/compositions/elements/option-select/IntegrationConnectorOption.stories.ts +3 -1
- package/src/components/compositions/elements/option-select/ListOption.stories.ts +3 -1
- package/src/components/compositions/elements/option-select/PillSelectOption.stories.ts +3 -1
- package/src/components/compositions/elements/option-select/RadioOption.stories.ts +3 -1
- package/src/components/compositions/elements/option-select/SelectMultipleOption.stories.ts +3 -1
- package/src/components/compositions/elements/option-select/SelectOption.stories.ts +3 -1
- package/src/components/compositions/elements/picker/AsyncSelectPicker.stories.ts +3 -1
- package/src/components/compositions/elements/picker/ColorPicker.stories.ts +3 -1
- package/src/components/compositions/elements/picker/DataModelPicker.stories.ts +3 -1
- package/src/components/compositions/elements/picker/DatePicker.stories.ts +3 -1
- package/src/components/compositions/elements/picker/DateTimePicker.stories.ts +3 -1
- package/src/components/compositions/elements/picker/IconPicker.stories.ts +3 -1
- package/src/components/compositions/elements/{components → picker}/IconPickerInline.stories.ts +3 -1
- package/src/components/compositions/elements/{components → picker}/IconPickerInline.test.ts +8 -8
- package/src/components/compositions/elements/{components → picker}/IconPickerInline.vue +4 -4
- package/src/components/compositions/elements/picker/IntegrationConnectorPicker.stories.ts +3 -1
- package/src/components/compositions/elements/picker/MapPicker.stories.ts +3 -1
- package/src/components/compositions/elements/picker/TimePicker.stories.ts +3 -1
- package/src/components/compositions/elements/picker/TimezonePicker.stories.ts +3 -1
- package/src/components/ui/accordion/Accordion.stories.ts +2 -0
- package/src/components/ui/alert/Alert.stories.ts +2 -0
- package/src/components/ui/avatar/Avatar.stories.ts +2 -0
- package/src/components/ui/badge/Badge.stories.ts +2 -0
- package/src/components/ui/button/Button.stories.ts +5 -0
- package/src/components/ui/calendar/Calendar.stories.ts +2 -0
- package/src/components/ui/card/Card.stories.ts +2 -0
- package/src/components/ui/checkbox/Checkbox.stories.ts +2 -0
- package/src/components/ui/combobox/Combobox.stories.ts +2 -0
- package/src/components/ui/command/Command.stories.ts +2 -0
- package/src/components/ui/dialog/Dialog.stories.ts +2 -0
- package/src/components/ui/dropdown-menu/DropdownMenu.stories.ts +2 -0
- package/src/components/ui/field-frame/FieldFrame.stories.ts +1 -1
- package/src/components/ui/index.ts +3 -3
- package/src/components/ui/input/Input.stories.ts +2 -0
- package/src/components/ui/label/Label.stories.ts +2 -0
- package/src/components/ui/popover/Popover.stories.ts +2 -0
- package/src/components/ui/progress/Progress.stories.ts +2 -0
- package/src/components/ui/radio-group/RadioGroup.stories.ts +2 -0
- package/src/components/ui/select/Select.stories.ts +2 -0
- package/src/components/ui/separator/Separator.stories.ts +2 -0
- package/src/components/ui/sheet/Sheet.stories.ts +2 -0
- package/src/components/ui/skeleton/Skeleton.stories.ts +2 -0
- package/src/components/ui/slider/Slider.stories.ts +2 -0
- package/src/components/ui/switch/Switch.stories.ts +2 -0
- package/src/components/ui/table/Table.stories.ts +2 -0
- package/src/components/ui/tabs/Tabs.stories.ts +2 -0
- package/src/components/ui/textarea/Textarea.stories.ts +2 -0
- package/src/components/ui/toast/Toaster.stories.ts +2 -0
- package/src/components/ui/toast/index.ts +1 -1
- package/src/components/ui/toggle/Toggle.stories.ts +2 -0
- package/src/components/ui/tooltip/Tooltip.stories.ts +2 -0
- package/src/configuration-block.ts +4 -0
- package/src/definitions/__tests__/schema.test.ts +0 -1
- package/src/definitions/elements/PickerElement.ts +2 -0
- package/src/definitions/elements/index.ts +0 -18
- package/src/definitions/index.ts +1 -1
- package/src/definitions/shared/base.ts +0 -1
- package/src/display.ts +15 -0
- package/src/editor.ts +5 -0
- package/src/engine/registry.ts +1 -7
- package/src/engine/useFormData.ts +1 -1
- package/src/file.ts +3 -0
- package/src/index.ts +3 -3
- package/src/input.ts +10 -0
- package/src/lib/storybook.ts +67 -0
- package/src/option-select.ts +9 -0
- package/src/pages/IndexPage.stories.ts +2 -1
- package/src/pages/ShowPage.stories.ts +2 -1
- package/src/pages/ShowPage.vue +1 -1
- package/src/picker.ts +11 -0
- package/src/stores/dependencyListBuilderStore.ts +1 -1
- package/src/stores/elementListBuilderStore.ts +1 -1
- package/src/stores/formBuilderStore.ts +1 -1
- package/src/stores/formDataStore.ts +1 -1
- package/src/stores/gridBuilderStore.ts +1 -1
- package/src/stores/objectBuilderStore.ts +1 -1
- package/src/stores/presetBuilderStore.ts +1 -1
- package/src/stores/quizBuilderStore.ts +1 -1
- package/src/stores/reactiveCanvasBuilderStore.ts +1 -1
- package/src/styles/themes/dark.css +1 -1
- package/src/styles/themes/default.css +1 -1
- package/src/styles/themes/kiosk.css +1 -1
- package/dist/components/compositions/elements/components/IconBadge.vue.js +0 -5
- package/dist/components/compositions/elements/components/IconBadge.vue.js.map +0 -1
- package/dist/components/compositions/elements/components/IconBadge.vue2.js +0 -77
- package/dist/components/compositions/elements/components/IconBadge.vue2.js.map +0 -1
- package/dist/components/compositions/elements/components/IconPickerInline.vue.js +0 -5
- package/dist/components/compositions/elements/components/IconPickerInline.vue.js.map +0 -1
- package/dist/components/compositions/elements/components/IconPickerInline.vue2.js.map +0 -1
- package/dist/definitions/elements/ComponentsElement.d.ts +0 -187
- package/dist/definitions/elements/ComponentsElement.d.ts.map +0 -1
- package/dist/definitions/elements/ComponentsElement.js +0 -111
- package/dist/definitions/elements/ComponentsElement.js.map +0 -1
- package/dist/styles/index.css +0 -1
- package/src/components/compositions/elements/components/IconBadge.stories.ts +0 -96
- package/src/components/compositions/elements/components/IconBadge.test.ts +0 -70
- package/src/components/compositions/elements/components/IconBadge.vue +0 -121
- package/src/definitions/elements/ComponentsElement.ts +0 -149
|
@@ -1,296 +1,5 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { ImageIcon as $, X as R, Loader2 as X, Upload as G } from "lucide-vue-next";
|
|
3
|
-
import "../../../ui/button/index.js";
|
|
4
|
-
import "../../../ui/card/index.js";
|
|
5
|
-
import H from "../../../ui/dialog/Dialog.vue.js";
|
|
6
|
-
import "reka-ui";
|
|
7
|
-
import J from "../../../ui/dialog/DialogContent.vue.js";
|
|
8
|
-
import "@vueuse/core";
|
|
9
|
-
import "clsx";
|
|
10
|
-
import "tailwind-merge";
|
|
11
|
-
import K from "../../../ui/dialog/DialogHeader.vue.js";
|
|
12
|
-
import Q from "../../../ui/dialog/DialogTitle.vue.js";
|
|
13
|
-
import W from "../../../ui/dialog/DialogTrigger.vue.js";
|
|
14
|
-
import Y from "../../../ui/field-frame/FieldFrame.vue.js";
|
|
15
|
-
import Z from "../../../ui/input/Input.vue.js";
|
|
16
|
-
import ee from "../../../ui/skeleton/Skeleton.vue.js";
|
|
17
|
-
import te from "../../../ui/card/Card.vue.js";
|
|
18
|
-
import ae from "../../../ui/card/CardContent.vue.js";
|
|
19
|
-
import B from "../../../ui/button/Button.vue.js";
|
|
20
|
-
const le = ["data-element-name"], se = ["src", "alt"], oe = { class: "flex-1 truncate text-sm" }, ie = { class: "flex items-center gap-2" }, ne = ["accept"], re = {
|
|
21
|
-
key: 0,
|
|
22
|
-
class: "grid grid-cols-3 gap-3",
|
|
23
|
-
"data-testid": "asset-picker-skeleton"
|
|
24
|
-
}, de = {
|
|
25
|
-
key: 1,
|
|
26
|
-
class: "py-8 text-center text-sm text-muted-foreground",
|
|
27
|
-
"data-testid": "asset-picker-empty"
|
|
28
|
-
}, ue = {
|
|
29
|
-
key: 2,
|
|
30
|
-
class: "grid max-h-96 grid-cols-3 gap-3 overflow-y-auto",
|
|
31
|
-
"data-testid": "asset-picker-grid"
|
|
32
|
-
}, ce = ["data-testid", "onClick"], me = { class: "flex aspect-square items-center justify-center bg-muted" }, fe = ["src", "alt"], pe = { class: "truncate p-2 text-xs" }, je = /* @__PURE__ */ E({
|
|
33
|
-
__name: "AssetPickerFile",
|
|
34
|
-
props: /* @__PURE__ */ O({
|
|
35
|
-
modelValue: {},
|
|
36
|
-
id: {},
|
|
37
|
-
name: {},
|
|
38
|
-
label: {},
|
|
39
|
-
hideLabel: { type: Boolean },
|
|
40
|
-
required: { type: Boolean },
|
|
41
|
-
readonly: { type: Boolean },
|
|
42
|
-
disabled: { type: Boolean },
|
|
43
|
-
helpText: {},
|
|
44
|
-
errors: { default: () => [] },
|
|
45
|
-
onBrowse: {},
|
|
46
|
-
onUpload: {},
|
|
47
|
-
acceptedFileTypes: { default: () => [] }
|
|
48
|
-
}, {
|
|
49
|
-
modelValue: {},
|
|
50
|
-
modelModifiers: {}
|
|
51
|
-
}),
|
|
52
|
-
emits: ["update:modelValue"],
|
|
53
|
-
setup(o) {
|
|
54
|
-
const c = o, v = P(o, "modelValue"), y = m(!1), g = m(!1), b = m(!1), f = m([]), h = m(""), V = m(null);
|
|
55
|
-
let k = 0;
|
|
56
|
-
const r = x(() => {
|
|
57
|
-
const e = v.value;
|
|
58
|
-
if (!e)
|
|
59
|
-
return null;
|
|
60
|
-
if (typeof e == "string")
|
|
61
|
-
return { id: e, url: e, name: e };
|
|
62
|
-
if (typeof e == "object") {
|
|
63
|
-
const t = e;
|
|
64
|
-
return {
|
|
65
|
-
id: t.id ?? "",
|
|
66
|
-
url: t.url ?? "",
|
|
67
|
-
name: t.name,
|
|
68
|
-
thumbnailUrl: t.thumbnailUrl
|
|
69
|
-
};
|
|
70
|
-
}
|
|
71
|
-
return null;
|
|
72
|
-
}), L = x(() => {
|
|
73
|
-
var e;
|
|
74
|
-
if ((e = c.acceptedFileTypes) != null && e.length)
|
|
75
|
-
return c.acceptedFileTypes.join(",");
|
|
76
|
-
}), z = x(() => {
|
|
77
|
-
const e = h.value.trim().toLowerCase();
|
|
78
|
-
return e ? f.value.filter(
|
|
79
|
-
(t) => (t.name ?? t.id).toLowerCase().includes(e)
|
|
80
|
-
) : f.value;
|
|
81
|
-
});
|
|
82
|
-
async function j() {
|
|
83
|
-
if (!c.onBrowse) {
|
|
84
|
-
f.value = [];
|
|
85
|
-
return;
|
|
86
|
-
}
|
|
87
|
-
const e = ++k;
|
|
88
|
-
g.value = !0;
|
|
89
|
-
try {
|
|
90
|
-
const t = await c.onBrowse();
|
|
91
|
-
if (e !== k)
|
|
92
|
-
return;
|
|
93
|
-
f.value = Array.isArray(t) ? t : [];
|
|
94
|
-
} catch {
|
|
95
|
-
if (e !== k)
|
|
96
|
-
return;
|
|
97
|
-
f.value = [];
|
|
98
|
-
} finally {
|
|
99
|
-
e === k && (g.value = !1);
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
|
-
function F(e) {
|
|
103
|
-
y.value = e, e && (h.value = "", j());
|
|
104
|
-
}
|
|
105
|
-
function N(e) {
|
|
106
|
-
v.value = e, y.value = !1;
|
|
107
|
-
}
|
|
108
|
-
function S() {
|
|
109
|
-
v.value = null;
|
|
110
|
-
}
|
|
111
|
-
function I() {
|
|
112
|
-
var e;
|
|
113
|
-
(e = V.value) == null || e.click();
|
|
114
|
-
}
|
|
115
|
-
async function M(e) {
|
|
116
|
-
var _;
|
|
117
|
-
const t = e.target, l = (_ = t.files) == null ? void 0 : _[0];
|
|
118
|
-
if (t.value = "", !(!l || !c.onUpload)) {
|
|
119
|
-
b.value = !0;
|
|
120
|
-
try {
|
|
121
|
-
const A = await c.onUpload(l);
|
|
122
|
-
A && (v.value = A, y.value = !1);
|
|
123
|
-
} catch {
|
|
124
|
-
} finally {
|
|
125
|
-
b.value = !1;
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
}
|
|
129
|
-
return (e, t) => (s(), u(a(Y), {
|
|
130
|
-
label: o.label,
|
|
131
|
-
required: o.required,
|
|
132
|
-
"hide-label": o.hideLabel,
|
|
133
|
-
for: o.id,
|
|
134
|
-
"help-text": o.helpText,
|
|
135
|
-
errors: o.errors
|
|
136
|
-
}, {
|
|
137
|
-
default: n(() => [
|
|
138
|
-
p("div", {
|
|
139
|
-
"data-element-name": o.name ?? void 0,
|
|
140
|
-
"data-testid": "asset-picker"
|
|
141
|
-
}, [
|
|
142
|
-
r.value ? (s(), u(a(te), {
|
|
143
|
-
key: 0,
|
|
144
|
-
"data-testid": "asset-picker-chip"
|
|
145
|
-
}, {
|
|
146
|
-
default: n(() => [
|
|
147
|
-
i(a(ae), { class: "flex items-center gap-3 py-3" }, {
|
|
148
|
-
default: n(() => [
|
|
149
|
-
r.value.thumbnailUrl || r.value.url ? (s(), d("img", {
|
|
150
|
-
key: 0,
|
|
151
|
-
src: r.value.thumbnailUrl ?? r.value.url,
|
|
152
|
-
alt: r.value.name ?? "Selected asset",
|
|
153
|
-
class: "size-10 rounded object-cover",
|
|
154
|
-
"data-testid": "asset-picker-chip-thumb"
|
|
155
|
-
}, null, 8, se)) : (s(), u(a($), {
|
|
156
|
-
key: 1,
|
|
157
|
-
class: "size-5 text-muted-foreground"
|
|
158
|
-
})),
|
|
159
|
-
p("span", oe, U(r.value.name ?? r.value.id ?? "Selected asset"), 1),
|
|
160
|
-
i(a(B), {
|
|
161
|
-
type: "button",
|
|
162
|
-
variant: "ghost",
|
|
163
|
-
size: "icon-sm",
|
|
164
|
-
"aria-label": "Remove asset",
|
|
165
|
-
disabled: o.disabled || o.readonly,
|
|
166
|
-
"data-testid": "asset-picker-remove",
|
|
167
|
-
onClick: S
|
|
168
|
-
}, {
|
|
169
|
-
default: n(() => [
|
|
170
|
-
i(a(R), { class: "size-4" })
|
|
171
|
-
]),
|
|
172
|
-
_: 1
|
|
173
|
-
}, 8, ["disabled"])
|
|
174
|
-
]),
|
|
175
|
-
_: 1
|
|
176
|
-
})
|
|
177
|
-
]),
|
|
178
|
-
_: 1
|
|
179
|
-
})) : w("", !0),
|
|
180
|
-
i(a(H), {
|
|
181
|
-
open: y.value,
|
|
182
|
-
"onUpdate:open": F
|
|
183
|
-
}, {
|
|
184
|
-
default: n(() => [
|
|
185
|
-
i(a(W), { "as-child": "" }, {
|
|
186
|
-
default: n(() => [
|
|
187
|
-
i(a(B), {
|
|
188
|
-
type: "button",
|
|
189
|
-
variant: "outline",
|
|
190
|
-
disabled: o.disabled || o.readonly,
|
|
191
|
-
class: D(r.value ? "mt-2" : ""),
|
|
192
|
-
"data-testid": "asset-picker-browse"
|
|
193
|
-
}, {
|
|
194
|
-
default: n(() => [
|
|
195
|
-
i(a($), { class: "mr-2 size-4" }),
|
|
196
|
-
C(" " + U(r.value ? "Change…" : "Browse…"), 1)
|
|
197
|
-
]),
|
|
198
|
-
_: 1
|
|
199
|
-
}, 8, ["disabled", "class"])
|
|
200
|
-
]),
|
|
201
|
-
_: 1
|
|
202
|
-
}),
|
|
203
|
-
i(a(J), { class: "sm:max-w-2xl" }, {
|
|
204
|
-
default: n(() => [
|
|
205
|
-
i(a(K), null, {
|
|
206
|
-
default: n(() => [
|
|
207
|
-
i(a(Q), null, {
|
|
208
|
-
default: n(() => [...t[1] || (t[1] = [
|
|
209
|
-
C("Select an asset", -1)
|
|
210
|
-
])]),
|
|
211
|
-
_: 1
|
|
212
|
-
})
|
|
213
|
-
]),
|
|
214
|
-
_: 1
|
|
215
|
-
}),
|
|
216
|
-
p("div", ie, [
|
|
217
|
-
i(a(Z), {
|
|
218
|
-
modelValue: h.value,
|
|
219
|
-
"onUpdate:modelValue": t[0] || (t[0] = (l) => h.value = l),
|
|
220
|
-
placeholder: "Search assets…",
|
|
221
|
-
"data-testid": "asset-picker-search"
|
|
222
|
-
}, null, 8, ["modelValue"]),
|
|
223
|
-
o.onUpload ? (s(), u(a(B), {
|
|
224
|
-
key: 0,
|
|
225
|
-
type: "button",
|
|
226
|
-
variant: "outline",
|
|
227
|
-
disabled: b.value,
|
|
228
|
-
"data-testid": "asset-picker-upload",
|
|
229
|
-
onClick: I
|
|
230
|
-
}, {
|
|
231
|
-
default: n(() => [
|
|
232
|
-
b.value ? (s(), u(a(X), {
|
|
233
|
-
key: 0,
|
|
234
|
-
class: "mr-2 size-4 animate-spin"
|
|
235
|
-
})) : (s(), u(a(G), {
|
|
236
|
-
key: 1,
|
|
237
|
-
class: "mr-2 size-4"
|
|
238
|
-
})),
|
|
239
|
-
t[2] || (t[2] = C(" Upload new ", -1))
|
|
240
|
-
]),
|
|
241
|
-
_: 1
|
|
242
|
-
}, 8, ["disabled"])) : w("", !0),
|
|
243
|
-
o.onUpload ? (s(), d("input", {
|
|
244
|
-
key: 1,
|
|
245
|
-
ref_key: "fileInput",
|
|
246
|
-
ref: V,
|
|
247
|
-
type: "file",
|
|
248
|
-
class: "sr-only",
|
|
249
|
-
accept: L.value,
|
|
250
|
-
"data-testid": "asset-picker-upload-input",
|
|
251
|
-
onChange: M
|
|
252
|
-
}, null, 40, ne)) : w("", !0)
|
|
253
|
-
]),
|
|
254
|
-
g.value ? (s(), d("div", re, [
|
|
255
|
-
(s(), d(T, null, q(6, (l) => i(a(ee), {
|
|
256
|
-
key: l,
|
|
257
|
-
class: "aspect-square w-full"
|
|
258
|
-
})), 64))
|
|
259
|
-
])) : z.value.length === 0 ? (s(), d("div", de, " No assets available. ")) : (s(), d("div", ue, [
|
|
260
|
-
(s(!0), d(T, null, q(z.value, (l) => (s(), d("button", {
|
|
261
|
-
key: l.id,
|
|
262
|
-
type: "button",
|
|
263
|
-
class: "flex flex-col items-stretch overflow-hidden rounded-md border bg-card text-left hover:border-primary focus:outline-none focus:ring-2 focus:ring-ring",
|
|
264
|
-
"data-testid": `asset-picker-item-${l.id}`,
|
|
265
|
-
onClick: (_) => N(l)
|
|
266
|
-
}, [
|
|
267
|
-
p("div", me, [
|
|
268
|
-
l.thumbnailUrl || l.url ? (s(), d("img", {
|
|
269
|
-
key: 0,
|
|
270
|
-
src: l.thumbnailUrl ?? l.url,
|
|
271
|
-
alt: l.name ?? l.id,
|
|
272
|
-
class: "size-full object-cover"
|
|
273
|
-
}, null, 8, fe)) : (s(), u(a($), {
|
|
274
|
-
key: 1,
|
|
275
|
-
class: "size-8 text-muted-foreground"
|
|
276
|
-
}))
|
|
277
|
-
]),
|
|
278
|
-
p("div", pe, U(l.name ?? l.id), 1)
|
|
279
|
-
], 8, ce))), 128))
|
|
280
|
-
]))
|
|
281
|
-
]),
|
|
282
|
-
_: 1
|
|
283
|
-
})
|
|
284
|
-
]),
|
|
285
|
-
_: 1
|
|
286
|
-
}, 8, ["open"])
|
|
287
|
-
], 8, le)
|
|
288
|
-
]),
|
|
289
|
-
_: 1
|
|
290
|
-
}, 8, ["label", "required", "hide-label", "for", "help-text", "errors"]));
|
|
291
|
-
}
|
|
292
|
-
});
|
|
1
|
+
import f from "./AssetPickerFile.vue.js";
|
|
293
2
|
export {
|
|
294
|
-
|
|
3
|
+
f as default
|
|
295
4
|
};
|
|
296
5
|
//# sourceMappingURL=AssetPickerFile.vue2.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AssetPickerFile.vue2.js","sources":["../../../../../src/components/compositions/elements/file/AssetPickerFile.vue"],"sourcesContent":["<script setup lang=\"ts\">\n/**\n * Props-driven asset-picker composition. The consumer supplies\n * Promise-returning `onBrowse` (and optional `onUpload`) callbacks; the\n * composition itself never makes HTTP calls.\n *\n * <AssetPickerFile\n * v-model=\"asset\"\n * label=\"Hero image\"\n * :on-browse=\"() => api.assets.list()\"\n * :on-upload=\"(file) => api.assets.upload(file)\"\n * />\n */\nimport { computed, ref } from \"vue\"\nimport { ImageIcon, Loader2, Upload, X } from \"lucide-vue-next\"\nimport { Button } from \"@/components/ui/button\"\nimport { Card, CardContent } from \"@/components/ui/card\"\nimport {\n Dialog,\n DialogContent,\n DialogHeader,\n DialogTitle,\n DialogTrigger,\n} from \"@/components/ui/dialog\"\nimport { FieldFrame } from \"@/components/ui/field-frame\"\nimport { Input } from \"@/components/ui/input\"\nimport { Skeleton } from \"@/components/ui/skeleton\"\n\nexport interface Asset {\n id: string\n url: string\n name?: string\n thumbnailUrl?: string\n mimeType?: string\n sizeBytes?: number\n}\n\nexport type AssetPickerValue = Asset | { id?: string; url?: string; name?: string } | string | null\n\nexport interface AssetPickerFileProps {\n modelValue?: AssetPickerValue\n id?: string\n name?: string\n label?: string\n hideLabel?: boolean\n required?: boolean\n readonly?: boolean\n disabled?: boolean\n helpText?: string\n errors?: string[]\n /** Required — called when the picker dialog opens. */\n onBrowse?: () => Promise<Asset[]>\n /** Optional — when provided, an \"Upload new\" button appears in the dialog. */\n onUpload?: (file: File) => Promise<Asset>\n /** File-input `accept` attribute for the upload flow. */\n acceptedFileTypes?: string[]\n}\n\nconst props = withDefaults(defineProps<AssetPickerFileProps>(), {\n errors: () => [],\n acceptedFileTypes: () => [],\n})\n\nconst model = defineModel<AssetPickerValue>(\"modelValue\")\n\nconst open = ref<boolean>(false)\nconst isLoading = ref<boolean>(false)\nconst isUploading = ref<boolean>(false)\nconst assets = ref<Asset[]>([])\nconst filter = ref<string>(\"\")\nconst fileInput = ref<HTMLInputElement | null>(null)\n\nlet browseToken = 0\n\nconst selectedAsset = computed<Asset | null>(() => {\n const raw = model.value\n if (!raw) {\n return null\n }\n if (typeof raw === \"string\") {\n return { id: raw, url: raw, name: raw }\n }\n if (typeof raw === \"object\") {\n const obj = raw as { id?: string; url?: string; name?: string; thumbnailUrl?: string }\n return {\n id: obj.id ?? \"\",\n url: obj.url ?? \"\",\n name: obj.name,\n thumbnailUrl: obj.thumbnailUrl,\n }\n }\n return null\n})\n\nconst acceptAttr = computed<string | undefined>(() => {\n if (!props.acceptedFileTypes?.length) {\n return undefined\n }\n return props.acceptedFileTypes.join(\",\")\n})\n\nconst filteredAssets = computed<Asset[]>(() => {\n const q = filter.value.trim().toLowerCase()\n if (!q) {\n return assets.value\n }\n return assets.value.filter((a) =>\n (a.name ?? a.id).toLowerCase().includes(q),\n )\n})\n\nasync function loadAssets(): Promise<void> {\n if (!props.onBrowse) {\n assets.value = []\n return\n }\n const myToken = ++browseToken\n isLoading.value = true\n try {\n const next = await props.onBrowse()\n if (myToken !== browseToken) {\n return\n }\n assets.value = Array.isArray(next) ? next : []\n } catch {\n if (myToken !== browseToken) {\n return\n }\n assets.value = []\n } finally {\n if (myToken === browseToken) {\n isLoading.value = false\n }\n }\n}\n\nfunction onOpenChange(next: boolean): void {\n open.value = next\n if (next) {\n filter.value = \"\"\n void loadAssets()\n }\n}\n\nfunction selectAsset(asset: Asset): void {\n model.value = asset\n open.value = false\n}\n\nfunction clearAsset(): void {\n model.value = null\n}\n\nfunction openUploadPicker(): void {\n fileInput.value?.click()\n}\n\nasync function onUploadChange(event: Event): Promise<void> {\n const target = event.target as HTMLInputElement\n const file = target.files?.[0]\n target.value = \"\"\n if (!file || !props.onUpload) {\n return\n }\n isUploading.value = true\n try {\n const asset = await props.onUpload(file)\n if (asset) {\n model.value = asset\n open.value = false\n }\n } catch {\n // surface via consumer's error handling — composition stays silent\n } finally {\n isUploading.value = false\n }\n}\n</script>\n\n<template>\n <FieldFrame\n :label=\"label\"\n :required=\"required\"\n :hide-label=\"hideLabel\"\n :for=\"id\"\n :help-text=\"helpText\"\n :errors=\"errors\"\n >\n <div :data-element-name=\"name ?? undefined\" data-testid=\"asset-picker\">\n <Card v-if=\"selectedAsset\" data-testid=\"asset-picker-chip\">\n <CardContent class=\"flex items-center gap-3 py-3\">\n <img\n v-if=\"selectedAsset.thumbnailUrl || selectedAsset.url\"\n :src=\"selectedAsset.thumbnailUrl ?? selectedAsset.url\"\n :alt=\"selectedAsset.name ?? 'Selected asset'\"\n class=\"size-10 rounded object-cover\"\n data-testid=\"asset-picker-chip-thumb\"\n >\n <ImageIcon v-else class=\"size-5 text-muted-foreground\" />\n <span class=\"flex-1 truncate text-sm\">\n {{ selectedAsset.name ?? selectedAsset.id ?? \"Selected asset\" }}\n </span>\n <Button\n type=\"button\"\n variant=\"ghost\"\n size=\"icon-sm\"\n aria-label=\"Remove asset\"\n :disabled=\"disabled || readonly\"\n data-testid=\"asset-picker-remove\"\n @click=\"clearAsset\"\n >\n <X class=\"size-4\" />\n </Button>\n </CardContent>\n </Card>\n\n <Dialog :open=\"open\" @update:open=\"onOpenChange\">\n <DialogTrigger as-child>\n <Button\n type=\"button\"\n variant=\"outline\"\n :disabled=\"disabled || readonly\"\n :class=\"selectedAsset ? 'mt-2' : ''\"\n data-testid=\"asset-picker-browse\"\n >\n <ImageIcon class=\"mr-2 size-4\" />\n {{ selectedAsset ? \"Change…\" : \"Browse…\" }}\n </Button>\n </DialogTrigger>\n <DialogContent class=\"sm:max-w-2xl\">\n <DialogHeader>\n <DialogTitle>Select an asset</DialogTitle>\n </DialogHeader>\n\n <div class=\"flex items-center gap-2\">\n <Input\n v-model=\"filter\"\n placeholder=\"Search assets…\"\n data-testid=\"asset-picker-search\"\n />\n <Button\n v-if=\"onUpload\"\n type=\"button\"\n variant=\"outline\"\n :disabled=\"isUploading\"\n data-testid=\"asset-picker-upload\"\n @click=\"openUploadPicker\"\n >\n <Loader2\n v-if=\"isUploading\"\n class=\"mr-2 size-4 animate-spin\"\n />\n <Upload v-else class=\"mr-2 size-4\" />\n Upload new\n </Button>\n <input\n v-if=\"onUpload\"\n ref=\"fileInput\"\n type=\"file\"\n class=\"sr-only\"\n :accept=\"acceptAttr\"\n data-testid=\"asset-picker-upload-input\"\n @change=\"onUploadChange\"\n >\n </div>\n\n <div\n v-if=\"isLoading\"\n class=\"grid grid-cols-3 gap-3\"\n data-testid=\"asset-picker-skeleton\"\n >\n <Skeleton v-for=\"i in 6\" :key=\"i\" class=\"aspect-square w-full\" />\n </div>\n <div\n v-else-if=\"filteredAssets.length === 0\"\n class=\"py-8 text-center text-sm text-muted-foreground\"\n data-testid=\"asset-picker-empty\"\n >\n No assets available.\n </div>\n <div\n v-else\n class=\"grid max-h-96 grid-cols-3 gap-3 overflow-y-auto\"\n data-testid=\"asset-picker-grid\"\n >\n <button\n v-for=\"asset in filteredAssets\"\n :key=\"asset.id\"\n type=\"button\"\n class=\"flex flex-col items-stretch overflow-hidden rounded-md border bg-card text-left hover:border-primary focus:outline-none focus:ring-2 focus:ring-ring\"\n :data-testid=\"`asset-picker-item-${asset.id}`\"\n @click=\"selectAsset(asset)\"\n >\n <div class=\"flex aspect-square items-center justify-center bg-muted\">\n <img\n v-if=\"asset.thumbnailUrl || asset.url\"\n :src=\"asset.thumbnailUrl ?? asset.url\"\n :alt=\"asset.name ?? asset.id\"\n class=\"size-full object-cover\"\n >\n <ImageIcon v-else class=\"size-8 text-muted-foreground\" />\n </div>\n <div class=\"truncate p-2 text-xs\">\n {{ asset.name ?? asset.id }}\n </div>\n </button>\n </div>\n </DialogContent>\n </Dialog>\n </div>\n </FieldFrame>\n</template>\n"],"names":["props","__props","model","_useModel","open","ref","isLoading","isUploading","assets","filter","fileInput","browseToken","selectedAsset","computed","raw","obj","acceptAttr","_a","filteredAssets","q","a","loadAssets","myToken","next","onOpenChange","selectAsset","asset","clearAsset","openUploadPicker","onUploadChange","event","target","file","_createBlock","_unref","FieldFrame","_createElementVNode","Card","_createVNode","CardContent","_createElementBlock","ImageIcon","_hoisted_3","_toDisplayString","Button","X","Dialog","DialogTrigger","_createTextVNode","DialogContent","DialogHeader","DialogTitle","_cache","_hoisted_4","Input","$event","Loader2","Upload","_openBlock","_hoisted_6","_Fragment","_renderList","i","Skeleton","_hoisted_7","_hoisted_8","_hoisted_10","_hoisted_12"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AssetPickerFile.vue2.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
export interface DropzoneFileProps {
|
|
2
|
+
modelValue?: File | File[] | null;
|
|
3
|
+
id?: string;
|
|
4
|
+
name?: string;
|
|
5
|
+
label?: string;
|
|
6
|
+
hideLabel?: boolean;
|
|
7
|
+
placeholder?: string;
|
|
8
|
+
accept?: string;
|
|
9
|
+
acceptedFileTypes?: string[];
|
|
10
|
+
multiple?: boolean;
|
|
11
|
+
maxFileSize?: number;
|
|
12
|
+
required?: boolean;
|
|
13
|
+
readonly?: boolean;
|
|
14
|
+
disabled?: boolean;
|
|
15
|
+
helpText?: string;
|
|
16
|
+
errors?: string[];
|
|
17
|
+
}
|
|
18
|
+
type __VLS_Props = DropzoneFileProps;
|
|
19
|
+
type __VLS_PublicProps = {
|
|
20
|
+
"modelValue"?: File | File[] | null;
|
|
21
|
+
} & __VLS_Props;
|
|
22
|
+
declare const _default: import('vue').DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
23
|
+
"update:modelValue": (value: File | File[] | null) => any;
|
|
24
|
+
}, string, import('vue').PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
|
|
25
|
+
"onUpdate:modelValue"?: ((value: File | File[] | null) => any) | undefined;
|
|
26
|
+
}>, {
|
|
27
|
+
acceptedFileTypes: string[];
|
|
28
|
+
errors: string[];
|
|
29
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
|
|
30
|
+
fileInput: HTMLInputElement;
|
|
31
|
+
}, HTMLDivElement>;
|
|
32
|
+
export default _default;
|
|
33
|
+
//# sourceMappingURL=DropzoneFile.vue.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DropzoneFile.vue.d.ts","sourceRoot":"","sources":["../../../../../src/components/compositions/elements/file/DropzoneFile.vue"],"names":[],"mappings":"AA+OA,MAAM,WAAW,iBAAiB;IAChC,UAAU,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,GAAG,IAAI,CAAA;IACjC,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAA;IAC5B,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;CAClB;AAED,KAAK,WAAW,GAAG,iBAAiB,CAAC;AAqHrC,KAAK,iBAAiB,GAAG;IACzB,YAAY,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,GAAG,IAAI,CAAC;CACnC,GAAG,WAAW,CAAC;;;;;;uBAjIM,MAAM,EAAE;YAOnB,MAAM,EAAE;;;;AA+UnB,wBAUG"}
|
|
@@ -1,5 +1,174 @@
|
|
|
1
|
-
import f from "
|
|
1
|
+
import { defineComponent as M, useModel as K, ref as y, watch as j, computed as F, openBlock as s, createBlock as D, unref as i, withCtx as u, createElementVNode as n, withKeys as $, withModifiers as h, normalizeClass as N, createVNode as c, toDisplayString as f, createElementBlock as b, createCommentVNode as w, Fragment as S, renderList as E, mergeModels as I } from "vue";
|
|
2
|
+
import { UploadCloud as O, X as P } from "lucide-vue-next";
|
|
3
|
+
import "../../../ui/button/index.js";
|
|
4
|
+
import "../../../ui/card/index.js";
|
|
5
|
+
import R from "../../../ui/field-frame/FieldFrame.vue.js";
|
|
6
|
+
import { cn as U } from "../../../../lib/utils.js";
|
|
7
|
+
import X from "../../../ui/card/Card.vue.js";
|
|
8
|
+
import _ from "../../../ui/card/CardContent.vue.js";
|
|
9
|
+
import G from "../../../ui/button/Button.vue.js";
|
|
10
|
+
const H = ["data-drag-over", "data-element-name", "onKeydown"], J = { class: "text-sm font-medium" }, Q = {
|
|
11
|
+
key: 0,
|
|
12
|
+
class: "text-xs text-muted-foreground"
|
|
13
|
+
}, W = ["accept", "multiple", "disabled", "required", "name"], Y = {
|
|
14
|
+
key: 0,
|
|
15
|
+
class: "flex flex-col gap-2"
|
|
16
|
+
}, Z = { class: "flex flex-col" }, ee = { class: "text-sm font-medium" }, te = { class: "text-xs text-muted-foreground" }, fe = /* @__PURE__ */ M({
|
|
17
|
+
__name: "DropzoneFile",
|
|
18
|
+
props: /* @__PURE__ */ I({
|
|
19
|
+
modelValue: {},
|
|
20
|
+
id: {},
|
|
21
|
+
name: {},
|
|
22
|
+
label: {},
|
|
23
|
+
hideLabel: { type: Boolean },
|
|
24
|
+
placeholder: {},
|
|
25
|
+
accept: {},
|
|
26
|
+
acceptedFileTypes: { default: () => [] },
|
|
27
|
+
multiple: { type: Boolean },
|
|
28
|
+
maxFileSize: {},
|
|
29
|
+
required: { type: Boolean },
|
|
30
|
+
readonly: { type: Boolean },
|
|
31
|
+
disabled: { type: Boolean },
|
|
32
|
+
helpText: {},
|
|
33
|
+
errors: { default: () => [] }
|
|
34
|
+
}, {
|
|
35
|
+
modelValue: {},
|
|
36
|
+
modelModifiers: {}
|
|
37
|
+
}),
|
|
38
|
+
emits: ["update:modelValue"],
|
|
39
|
+
setup(t) {
|
|
40
|
+
const l = t, m = K(t, "modelValue"), g = y(null), d = y(!1), a = y([]);
|
|
41
|
+
j(
|
|
42
|
+
() => m.value,
|
|
43
|
+
(e) => {
|
|
44
|
+
e instanceof File ? a.value = [e] : Array.isArray(e) && e.every((r) => r instanceof File) ? a.value = e : a.value = [];
|
|
45
|
+
},
|
|
46
|
+
{ immediate: !0 }
|
|
47
|
+
);
|
|
48
|
+
const v = F(() => {
|
|
49
|
+
if (l.accept)
|
|
50
|
+
return l.accept;
|
|
51
|
+
const e = l.acceptedFileTypes;
|
|
52
|
+
return Array.isArray(e) && e.length ? e.join(",") : "";
|
|
53
|
+
}), x = F(() => l.maxFileSize);
|
|
54
|
+
function k() {
|
|
55
|
+
l.multiple ? m.value = a.value.slice() : m.value = a.value[0] ?? null;
|
|
56
|
+
}
|
|
57
|
+
function B(e) {
|
|
58
|
+
!e.length || x.value && e.find((o) => o.size > x.value) || (l.multiple ? a.value = [...a.value, ...e] : a.value = [e[0]], k());
|
|
59
|
+
}
|
|
60
|
+
function C(e) {
|
|
61
|
+
const r = e.target, o = r.files ? Array.from(r.files) : [];
|
|
62
|
+
B(o), r.value = "";
|
|
63
|
+
}
|
|
64
|
+
function q(e) {
|
|
65
|
+
if (e.preventDefault(), d.value = !1, l.disabled || l.readonly)
|
|
66
|
+
return;
|
|
67
|
+
const r = e.dataTransfer ? Array.from(e.dataTransfer.files) : [];
|
|
68
|
+
B(r);
|
|
69
|
+
}
|
|
70
|
+
function V(e) {
|
|
71
|
+
e.preventDefault(), !l.disabled && !l.readonly && (d.value = !0);
|
|
72
|
+
}
|
|
73
|
+
function A(e) {
|
|
74
|
+
e.preventDefault(), d.value = !1;
|
|
75
|
+
}
|
|
76
|
+
function p() {
|
|
77
|
+
var e;
|
|
78
|
+
(e = g.value) == null || e.click();
|
|
79
|
+
}
|
|
80
|
+
function L(e) {
|
|
81
|
+
a.value.splice(e, 1), k();
|
|
82
|
+
}
|
|
83
|
+
function T(e) {
|
|
84
|
+
return e < 1024 ? `${e} B` : e < 1024 * 1024 ? `${(e / 1024).toFixed(1)} KB` : `${(e / (1024 * 1024)).toFixed(2)} MB`;
|
|
85
|
+
}
|
|
86
|
+
return (e, r) => (s(), D(i(R), {
|
|
87
|
+
label: t.label,
|
|
88
|
+
required: t.required,
|
|
89
|
+
"hide-label": t.hideLabel,
|
|
90
|
+
"help-text": t.helpText,
|
|
91
|
+
errors: t.errors
|
|
92
|
+
}, {
|
|
93
|
+
default: u(() => [
|
|
94
|
+
n("div", {
|
|
95
|
+
class: N(
|
|
96
|
+
i(U)(
|
|
97
|
+
"flex flex-col items-center justify-center gap-2 rounded-md border-2 border-dashed border-input bg-background px-6 py-10 text-center transition-colors",
|
|
98
|
+
d.value && "border-primary bg-primary/5",
|
|
99
|
+
(t.disabled || t.readonly) && "cursor-not-allowed opacity-50"
|
|
100
|
+
)
|
|
101
|
+
),
|
|
102
|
+
role: "button",
|
|
103
|
+
tabindex: "0",
|
|
104
|
+
"data-testid": "dropzone-target",
|
|
105
|
+
"data-drag-over": d.value || void 0,
|
|
106
|
+
"data-element-name": t.name ?? void 0,
|
|
107
|
+
onClick: p,
|
|
108
|
+
onKeydown: [
|
|
109
|
+
$(h(p, ["prevent"]), ["enter"]),
|
|
110
|
+
$(h(p, ["prevent"]), ["space"])
|
|
111
|
+
],
|
|
112
|
+
onDrop: q,
|
|
113
|
+
onDragover: V,
|
|
114
|
+
onDragleave: A
|
|
115
|
+
}, [
|
|
116
|
+
c(i(O), { class: "size-8 text-muted-foreground" }),
|
|
117
|
+
n("p", J, f(t.placeholder ?? "Drop files here, or click to browse"), 1),
|
|
118
|
+
v.value ? (s(), b("p", Q, f(v.value), 1)) : w("", !0),
|
|
119
|
+
n("input", {
|
|
120
|
+
ref_key: "fileInput",
|
|
121
|
+
ref: g,
|
|
122
|
+
type: "file",
|
|
123
|
+
class: "sr-only",
|
|
124
|
+
accept: v.value || void 0,
|
|
125
|
+
multiple: t.multiple,
|
|
126
|
+
disabled: t.disabled || t.readonly,
|
|
127
|
+
required: t.required,
|
|
128
|
+
name: t.name ?? void 0,
|
|
129
|
+
"data-testid": "dropzone-input",
|
|
130
|
+
onChange: C
|
|
131
|
+
}, null, 40, W)
|
|
132
|
+
], 42, H),
|
|
133
|
+
a.value.length ? (s(), b("div", Y, [
|
|
134
|
+
(s(!0), b(S, null, E(a.value, (o, z) => (s(), D(i(X), {
|
|
135
|
+
key: `${o.name}-${z}`,
|
|
136
|
+
class: "border"
|
|
137
|
+
}, {
|
|
138
|
+
default: u(() => [
|
|
139
|
+
c(i(_), { class: "flex items-center justify-between gap-3 py-3" }, {
|
|
140
|
+
default: u(() => [
|
|
141
|
+
n("div", Z, [
|
|
142
|
+
n("span", ee, f(o.name), 1),
|
|
143
|
+
n("span", te, f(T(o.size)), 1)
|
|
144
|
+
]),
|
|
145
|
+
c(i(G), {
|
|
146
|
+
type: "button",
|
|
147
|
+
variant: "ghost",
|
|
148
|
+
size: "icon-sm",
|
|
149
|
+
"aria-label": "Remove file",
|
|
150
|
+
disabled: t.disabled || t.readonly,
|
|
151
|
+
"data-testid": "dropzone-remove",
|
|
152
|
+
onClick: h((ae) => L(z), ["stop"])
|
|
153
|
+
}, {
|
|
154
|
+
default: u(() => [
|
|
155
|
+
c(i(P), { class: "size-4" })
|
|
156
|
+
]),
|
|
157
|
+
_: 1
|
|
158
|
+
}, 8, ["disabled", "onClick"])
|
|
159
|
+
]),
|
|
160
|
+
_: 2
|
|
161
|
+
}, 1024)
|
|
162
|
+
]),
|
|
163
|
+
_: 2
|
|
164
|
+
}, 1024))), 128))
|
|
165
|
+
])) : w("", !0)
|
|
166
|
+
]),
|
|
167
|
+
_: 1
|
|
168
|
+
}, 8, ["label", "required", "hide-label", "help-text", "errors"]));
|
|
169
|
+
}
|
|
170
|
+
});
|
|
2
171
|
export {
|
|
3
|
-
|
|
172
|
+
fe as default
|
|
4
173
|
};
|
|
5
174
|
//# sourceMappingURL=DropzoneFile.vue.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DropzoneFile.vue.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
|
1
|
+
{"version":3,"file":"DropzoneFile.vue.js","sources":["../../../../../src/components/compositions/elements/file/DropzoneFile.vue"],"sourcesContent":["<script setup lang=\"ts\">\n/**\n * Props-driven dropzone composition.\n *\n * Drag-and-drop target backed by a hidden `<input type=\"file\">` for\n * click-to-browse. Same value contract as `UploadFile` — single `File`\n * or `File[]` when `multiple` is true.\n *\n * <DropzoneFile v-model=\"doc\" label=\"Document\" accept=\"application/pdf\" />\n */\nimport { computed, ref, watch } from \"vue\"\nimport { UploadCloud, X } from \"lucide-vue-next\"\nimport { Button } from \"@/components/ui/button\"\nimport { Card, CardContent } from \"@/components/ui/card\"\nimport { FieldFrame } from \"@/components/ui/field-frame\"\nimport { cn } from \"@/lib/utils\"\n\nexport interface DropzoneFileProps {\n modelValue?: File | File[] | null\n id?: string\n name?: string\n label?: string\n hideLabel?: boolean\n placeholder?: string\n accept?: string\n acceptedFileTypes?: string[]\n multiple?: boolean\n maxFileSize?: number\n required?: boolean\n readonly?: boolean\n disabled?: boolean\n helpText?: string\n errors?: string[]\n}\n\nconst props = withDefaults(defineProps<DropzoneFileProps>(), {\n errors: () => [],\n acceptedFileTypes: () => [],\n})\n\nconst model = defineModel<File | File[] | null>(\"modelValue\")\n\nconst fileInput = ref<HTMLInputElement | null>(null)\nconst dragOver = ref<boolean>(false)\nconst files = ref<File[]>([])\n\nwatch(\n () => model.value,\n (next) => {\n if (next instanceof File) {\n files.value = [next]\n } else if (Array.isArray(next) && next.every((f) => f instanceof File)) {\n files.value = next as File[]\n } else {\n files.value = []\n }\n },\n { immediate: true },\n)\n\nconst accept = computed<string>(() => {\n if (props.accept) {\n return props.accept\n }\n const list = props.acceptedFileTypes\n return Array.isArray(list) && list.length ? list.join(\",\") : \"\"\n})\n\nconst maxBytes = computed<number | undefined>(() => props.maxFileSize)\n\nfunction emitFiles(): void {\n if (props.multiple) {\n model.value = files.value.slice()\n } else {\n model.value = files.value[0] ?? null\n }\n}\n\nfunction ingest(incoming: File[]): void {\n if (!incoming.length) {\n return\n }\n const tooLarge = maxBytes.value\n ? incoming.find((f) => f.size > (maxBytes.value as number))\n : undefined\n if (tooLarge) {\n return\n }\n if (props.multiple) {\n files.value = [...files.value, ...incoming]\n } else {\n files.value = [incoming[0]!]\n }\n emitFiles()\n}\n\nfunction onChange(event: Event): void {\n const target = event.target as HTMLInputElement\n const list = target.files ? Array.from(target.files) : []\n ingest(list)\n target.value = \"\"\n}\n\nfunction onDrop(event: DragEvent): void {\n event.preventDefault()\n dragOver.value = false\n if (props.disabled || props.readonly) {\n return\n }\n const list = event.dataTransfer ? Array.from(event.dataTransfer.files) : []\n ingest(list)\n}\n\nfunction onDragOver(event: DragEvent): void {\n event.preventDefault()\n if (!props.disabled && !props.readonly) {\n dragOver.value = true\n }\n}\n\nfunction onDragLeave(event: DragEvent): void {\n event.preventDefault()\n dragOver.value = false\n}\n\nfunction openPicker(): void {\n fileInput.value?.click()\n}\n\nfunction removeFile(index: number): void {\n files.value.splice(index, 1)\n emitFiles()\n}\n\nfunction formatBytes(bytes: number): string {\n if (bytes < 1024) {\n return `${bytes} B`\n }\n if (bytes < 1024 * 1024) {\n return `${(bytes / 1024).toFixed(1)} KB`\n }\n return `${(bytes / (1024 * 1024)).toFixed(2)} MB`\n}\n</script>\n\n<template>\n <FieldFrame\n :label=\"label\"\n :required=\"required\"\n :hide-label=\"hideLabel\"\n :help-text=\"helpText\"\n :errors=\"errors\"\n >\n <div\n :class=\"\n cn(\n 'flex flex-col items-center justify-center gap-2 rounded-md border-2 border-dashed border-input bg-background px-6 py-10 text-center transition-colors',\n dragOver && 'border-primary bg-primary/5',\n (disabled || readonly) && 'cursor-not-allowed opacity-50',\n )\n \"\n role=\"button\"\n tabindex=\"0\"\n data-testid=\"dropzone-target\"\n :data-drag-over=\"dragOver || undefined\"\n :data-element-name=\"name ?? undefined\"\n @click=\"openPicker\"\n @keydown.enter.prevent=\"openPicker\"\n @keydown.space.prevent=\"openPicker\"\n @drop=\"onDrop\"\n @dragover=\"onDragOver\"\n @dragleave=\"onDragLeave\"\n >\n <UploadCloud class=\"size-8 text-muted-foreground\" />\n <p class=\"text-sm font-medium\">\n {{ placeholder ?? \"Drop files here, or click to browse\" }}\n </p>\n <p v-if=\"accept\" class=\"text-xs text-muted-foreground\">\n {{ accept }}\n </p>\n <input\n ref=\"fileInput\"\n type=\"file\"\n class=\"sr-only\"\n :accept=\"accept || undefined\"\n :multiple=\"multiple\"\n :disabled=\"disabled || readonly\"\n :required=\"required\"\n :name=\"name ?? undefined\"\n data-testid=\"dropzone-input\"\n @change=\"onChange\"\n >\n </div>\n\n <div v-if=\"files.length\" class=\"flex flex-col gap-2\">\n <Card\n v-for=\"(file, i) in files\"\n :key=\"`${file.name}-${i}`\"\n class=\"border\"\n >\n <CardContent class=\"flex items-center justify-between gap-3 py-3\">\n <div class=\"flex flex-col\">\n <span class=\"text-sm font-medium\">{{ file.name }}</span>\n <span class=\"text-xs text-muted-foreground\">{{ formatBytes(file.size) }}</span>\n </div>\n <Button\n type=\"button\"\n variant=\"ghost\"\n size=\"icon-sm\"\n aria-label=\"Remove file\"\n :disabled=\"disabled || readonly\"\n data-testid=\"dropzone-remove\"\n @click.stop=\"removeFile(i)\"\n >\n <X class=\"size-4\" />\n </Button>\n </CardContent>\n </Card>\n </div>\n </FieldFrame>\n</template>\n"],"names":["props","__props","model","_useModel","fileInput","ref","dragOver","files","watch","next","f","accept","computed","list","maxBytes","emitFiles","ingest","incoming","onChange","event","target","onDrop","onDragOver","onDragLeave","openPicker","_a","removeFile","index","formatBytes","bytes","_createBlock","_unref","FieldFrame","_createElementVNode","_normalizeClass","cn","_createVNode","UploadCloud","_hoisted_2","_toDisplayString","_createElementBlock","_hoisted_3","_openBlock","_hoisted_5","_Fragment","_renderList","file","i","Card","CardContent","_hoisted_6","_hoisted_7","_hoisted_8","Button","_withModifiers","$event","X"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmCA,UAAMA,IAAQC,GAKRC,IAAQC,EAAiCF,GAAC,YAAY,GAEtDG,IAAYC,EAA6B,IAAI,GAC7CC,IAAWD,EAAa,EAAK,GAC7BE,IAAQF,EAAY,EAAE;AAE5B,IAAAG;AAAA,MACE,MAAMN,EAAM;AAAA,MACZ,CAACO,MAAS;AACR,QAAIA,aAAgB,OAClBF,EAAM,QAAQ,CAACE,CAAI,IACV,MAAM,QAAQA,CAAI,KAAKA,EAAK,MAAM,CAACC,MAAMA,aAAa,IAAI,IACnEH,EAAM,QAAQE,IAEdF,EAAM,QAAQ,CAAA;AAAA,MAElB;AAAA,MACA,EAAE,WAAW,GAAA;AAAA,IAAK;AAGpB,UAAMI,IAASC,EAAiB,MAAM;AACpC,UAAIZ,EAAM;AACR,eAAOA,EAAM;AAEf,YAAMa,IAAOb,EAAM;AACnB,aAAO,MAAM,QAAQa,CAAI,KAAKA,EAAK,SAASA,EAAK,KAAK,GAAG,IAAI;AAAA,IAC/D,CAAC,GAEKC,IAAWF,EAA6B,MAAMZ,EAAM,WAAW;AAErE,aAASe,IAAkB;AACzB,MAAIf,EAAM,WACRE,EAAM,QAAQK,EAAM,MAAM,MAAA,IAE1BL,EAAM,QAAQK,EAAM,MAAM,CAAC,KAAK;AAAA,IAEpC;AAEA,aAASS,EAAOC,GAAwB;AAOtC,MANI,CAACA,EAAS,UAGGH,EAAS,SACtBG,EAAS,KAAK,CAACP,MAAMA,EAAE,OAAQI,EAAS,KAAgB,MAKxDd,EAAM,WACRO,EAAM,QAAQ,CAAC,GAAGA,EAAM,OAAO,GAAGU,CAAQ,IAE1CV,EAAM,QAAQ,CAACU,EAAS,CAAC,CAAE,GAE7BF,EAAA;AAAA,IACF;AAEA,aAASG,EAASC,GAAoB;AACpC,YAAMC,IAASD,EAAM,QACfN,IAAOO,EAAO,QAAQ,MAAM,KAAKA,EAAO,KAAK,IAAI,CAAA;AACvD,MAAAJ,EAAOH,CAAI,GACXO,EAAO,QAAQ;AAAA,IACjB;AAEA,aAASC,EAAOF,GAAwB;AAGtC,UAFAA,EAAM,eAAA,GACNb,EAAS,QAAQ,IACbN,EAAM,YAAYA,EAAM;AAC1B;AAEF,YAAMa,IAAOM,EAAM,eAAe,MAAM,KAAKA,EAAM,aAAa,KAAK,IAAI,CAAA;AACzE,MAAAH,EAAOH,CAAI;AAAA,IACb;AAEA,aAASS,EAAWH,GAAwB;AAC1C,MAAAA,EAAM,eAAA,GACF,CAACnB,EAAM,YAAY,CAACA,EAAM,aAC5BM,EAAS,QAAQ;AAAA,IAErB;AAEA,aAASiB,EAAYJ,GAAwB;AAC3C,MAAAA,EAAM,eAAA,GACNb,EAAS,QAAQ;AAAA,IACnB;AAEA,aAASkB,IAAmB;;AAC1B,OAAAC,IAAArB,EAAU,UAAV,QAAAqB,EAAiB;AAAA,IACnB;AAEA,aAASC,EAAWC,GAAqB;AACvC,MAAApB,EAAM,MAAM,OAAOoB,GAAO,CAAC,GAC3BZ,EAAA;AAAA,IACF;AAEA,aAASa,EAAYC,GAAuB;AAC1C,aAAIA,IAAQ,OACH,GAAGA,CAAK,OAEbA,IAAQ,OAAO,OACV,IAAIA,IAAQ,MAAM,QAAQ,CAAC,CAAC,QAE9B,IAAIA,KAAS,OAAO,OAAO,QAAQ,CAAC,CAAC;AAAA,IAC9C;2BAIEC,EAyEaC,EAAAC,CAAA,GAAA;AAAA,MAxEV,OAAO/B,EAAA;AAAA,MACP,UAAUA,EAAA;AAAA,MACV,cAAYA,EAAA;AAAA,MACZ,aAAWA,EAAA;AAAA,MACX,QAAQA,EAAA;AAAA,IAAA;iBAET,MAuCM;AAAA,QAvCNgC,EAuCM,OAAA;AAAA,UAtCH,OAAKC;AAAAA,YAAWH,EAAAI,CAAA;AAAA;cAAiL7B,EAAA,SAAQ;AAAA,eAA8CL,EAAA,YAAYA,EAAA,aAAQ;AAAA,YAAA;AAAA;UAO5Q,MAAK;AAAA,UACL,UAAS;AAAA,UACT,eAAY;AAAA,UACX,kBAAgBK,EAAA,SAAY;AAAA,UAC5B,qBAAmBL,EAAA,QAAQ;AAAA,UAC3B,SAAOuB;AAAA,UACP,WAAO;AAAA,gBAAgBA,GAAU,CAAA,SAAA,CAAA,GAAA,CAAA,OAAA,CAAA;AAAA,gBACVA,GAAU,CAAA,SAAA,CAAA,GAAA,CAAA,OAAA,CAAA;AAAA,UAAA;AAAA,UACjC,QAAAH;AAAA,UACA,YAAUC;AAAA,UACV,aAAWC;AAAA,QAAA;UAEZa,EAAoDL,EAAAM,CAAA,GAAA,EAAvC,OAAM,gCAA8B;AAAA,UACjDJ,EAEI,KAFJK,GAEIC,EADCtC,EAAA,eAAW,qCAAA,GAAA,CAAA;AAAA,UAEPU,EAAA,cAAT6B,EAEI,KAFJC,GAEIF,EADC5B,EAAA,KAAM,GAAA,CAAA;UAEXsB,EAWC,SAAA;AAAA,qBAVK;AAAA,YAAJ,KAAI7B;AAAA,YACJ,MAAK;AAAA,YACL,OAAM;AAAA,YACL,QAAQO,EAAA,SAAU;AAAA,YAClB,UAAUV,EAAA;AAAA,YACV,UAAUA,EAAA,YAAYA,EAAA;AAAA,YACtB,UAAUA,EAAA;AAAA,YACV,MAAMA,EAAA,QAAQ;AAAA,YACf,eAAY;AAAA,YACX,UAAAiB;AAAA,UAAA;;QAIMX,EAAA,MAAM,UAAjBmC,KAAAF,EAwBM,OAxBNG,GAwBM;AAAA,WAvBJD,EAAA,EAAA,GAAAF,EAsBOI,GAAA,MAAAC,EArBetC,EAAA,OAAK,CAAjBuC,GAAMC,YADhBjB,EAsBOC,EAAAiB,CAAA,GAAA;AAAA,YApBJ,KAAG,GAAKF,EAAK,IAAI,IAAIC,CAAC;AAAA,YACvB,OAAM;AAAA,UAAA;uBAEN,MAgBc;AAAA,cAhBdX,EAgBcL,EAAAkB,CAAA,GAAA,EAhBD,OAAM,kDAA8C;AAAA,2BAC/D,MAGM;AAAA,kBAHNhB,EAGM,OAHNiB,GAGM;AAAA,oBAFJjB,EAAwD,QAAxDkB,IAAwDZ,EAAnBO,EAAK,IAAI,GAAA,CAAA;AAAA,oBAC9Cb,EAA+E,QAA/EmB,IAA+Eb,EAAhCX,EAAYkB,EAAK,IAAI,CAAA,GAAA,CAAA;AAAA,kBAAA;kBAEtEV,EAUSL,EAAAsB,CAAA,GAAA;AAAA,oBATP,MAAK;AAAA,oBACL,SAAQ;AAAA,oBACR,MAAK;AAAA,oBACL,cAAW;AAAA,oBACV,UAAUpD,EAAA,YAAYA,EAAA;AAAA,oBACvB,eAAY;AAAA,oBACX,SAAKqD,EAAA,CAAAC,OAAO7B,EAAWqB,CAAC,GAAA,CAAA,MAAA,CAAA;AAAA,kBAAA;+BAEzB,MAAoB;AAAA,sBAApBX,EAAoBL,EAAAyB,CAAA,GAAA,EAAjB,OAAM,UAAQ;AAAA,oBAAA;;;;;;;;;;;;;;;"}
|