@kp-ui/lowcode-pc 1.0.0-alpha.12 → 1.0.0-alpha.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (47) hide show
  1. package/assets/styles/style.css +22 -18
  2. package/core/src/components/common/render/useFormContext.js +3 -2
  3. package/core/src/components/common/render/useFormContext.js.map +1 -1
  4. package/core/src/hooks/useDataHttp.js +3 -3
  5. package/core/src/hooks/useDataHttp.js.map +1 -1
  6. package/core/src/hooks/useField.js +94 -77
  7. package/core/src/hooks/useField.js.map +1 -1
  8. package/core/src/lang/zh-CN.js +1 -1
  9. package/core/src/lang/zh-CN.js.map +1 -1
  10. package/package.json +1 -1
  11. package/src/components/desginer/form-widget/container-widget/vf-box-widget.vue.js +1 -1
  12. package/src/components/desginer/form-widget/container-widget/vf-box-widget.vue2.js.map +1 -1
  13. package/src/components/desginer/widget-panel/advanced/data-table.js +1 -0
  14. package/src/components/desginer/widget-panel/advanced/data-table.js.map +1 -1
  15. package/src/components/field-widget/bpmn-editor-widget.vue.js +1 -1
  16. package/src/components/field-widget/bpmn-editor-widget.vue2.js +1 -1
  17. package/src/components/field-widget/bpmn-editor-widget.vue2.js.map +1 -1
  18. package/src/components/field-widget/button-list-widget.vue.js +1 -1
  19. package/src/components/field-widget/button-list-widget.vue2.js +1 -1
  20. package/src/components/field-widget/button-list-widget.vue2.js.map +1 -1
  21. package/src/components/field-widget/code-editor-widget.vue.js +1 -1
  22. package/src/components/field-widget/code-editor-widget.vue2.js +1 -1
  23. package/src/components/field-widget/code-editor-widget.vue2.js.map +1 -1
  24. package/src/components/field-widget/divider-widget.vue2.js +1 -1
  25. package/src/components/field-widget/divider-widget.vue2.js.map +1 -1
  26. package/src/components/field-widget/diy-compontent-widget.vue2.js +1 -1
  27. package/src/components/field-widget/diy-compontent-widget.vue2.js.map +1 -1
  28. package/src/components/field-widget/dropdown-widget.vue.js +1 -1
  29. package/src/components/field-widget/dropdown-widget.vue2.js +1 -1
  30. package/src/components/field-widget/dropdown-widget.vue2.js.map +1 -1
  31. package/src/components/field-widget/form-item-wrapper.vue.js +1 -1
  32. package/src/components/field-widget/form-item-wrapper.vue2.js.map +1 -1
  33. package/src/components/field-widget/number-widget.vue2.js +1 -1
  34. package/src/components/field-widget/number-widget.vue2.js.map +1 -1
  35. package/src/components/field-widget/rich-editor-widget.vue.js +1 -1
  36. package/src/components/field-widget/rich-editor-widget.vue2.js +1 -1
  37. package/src/components/field-widget/rich-editor-widget.vue2.js.map +1 -1
  38. package/src/components/field-widget/textarea-widget.vue.js +1 -1
  39. package/src/components/field-widget/textarea-widget.vue2.js +1 -1
  40. package/src/components/field-widget/textarea-widget.vue2.js.map +1 -1
  41. package/src/components/field-widget/treeSelect-widget.vue2.js +1 -1
  42. package/src/components/field-widget/treeSelect-widget.vue2.js.map +1 -1
  43. package/src/components/field-widget/vue-render-widget.vue2.js +1 -1
  44. package/src/components/field-widget/vue-render-widget.vue2.js.map +1 -1
  45. package/stats.html +1 -1
  46. package/src/components/field-widget/useField.js +0 -578
  47. package/src/components/field-widget/useField.js.map +0 -1
@@ -1,7 +1,7 @@
1
1
  import _sfc_main from "./rich-editor-widget.vue2.js";
2
2
  /* empty css */
3
3
  import _export_sfc from "../../../_virtual/_plugin-vue_export-helper.js";
4
- const richEditorWidget = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-c4e08a91"]]);
4
+ const richEditorWidget = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-4fccf1cc"]]);
5
5
  export {
6
6
  richEditorWidget as default
7
7
  };
@@ -1,8 +1,8 @@
1
1
  import { defineComponent, computed, createBlock, createCommentVNode, unref, openBlock, mergeProps, withCtx, createElementBlock, createVNode, normalizeStyle, isRef } from "vue";
2
2
  import FormItemWrapper from "./form-item-wrapper.vue.js";
3
- import { useField } from "./useField.js";
4
3
  import { QuillEditor } from "tmgc2-share";
5
4
  import { ComponentNameEnum, WidgetTypeEnum } from "../../../core/src/constants/WidgetTypeEnum.js";
5
+ import { useField } from "../../../core/src/hooks/useField.js";
6
6
  const _hoisted_1 = {
7
7
  key: 0,
8
8
  class: "rich-editor-widget"
@@ -1 +1 @@
1
- {"version":3,"file":"rich-editor-widget.vue2.js","sources":["../../../../src/components/field-widget/rich-editor-widget.vue"],"sourcesContent":["<template>\n <form-item-wrapper v-bind=\"props\" v-if=\"!handleHidden\" :rules=\"rules\">\n <div class=\"rich-editor-widget\" v-if=\"!isReadMode\">\n <QuillEditor\n ref=\"fieldEditor\"\n v-model:value=\"fieldModel\"\n :options=\"editorOption\"\n :disabled=\"handleDisabled || isReadMode\"\n :style=\"\n !!field.options.contentHeight ? `height: ${field.options.contentHeight};` : ''\n \"\n />\n </div>\n <div class=\"readonly-mode-rich-editor\" v-else v-html=\"fieldModel\"> </div>\n </form-item-wrapper>\n</template>\n\n<script lang=\"ts\" setup>\n import FormItemWrapper from './form-item-wrapper.vue';\n import { ComponentNameEnum, WidgetTypeEnum } from '@kp-ui/lowcode-core';\n import { FieldProps, useField } from './useField';\n import { computed, watchEffect } from 'vue';\n import { QuillEditor } from 'tmgc2-share';\n\n defineOptions({\n name: WidgetTypeEnum.richEditor,\n componentName: ComponentNameEnum.FieldWidget\n });\n const props = withDefaults(defineProps<FieldProps>(), {});\n\n const {\n rules,\n fieldEditor,\n field,\n fieldModel,\n isReadMode,\n handleHidden,\n handleDisabled,\n defineExposed\n } = useField(props);\n\n const editorOption = computed(() => {\n return {\n placeholder: field.options.placeholder,\n modules: {}\n };\n });\n\n defineExpose({\n ...defineExposed\n });\n</script>\n\n<style lang=\"scss\" scoped>\n .rich-editor-widget {\n :deep(.ql-toolbar.ql-snow) {\n border-color: #d9d9d9;\n border-top-left-radius: 8px;\n border-top-right-radius: 8px;\n }\n :deep(.ql-container.ql-snow) {\n border-bottom-left-radius: 8px;\n border-bottom-right-radius: 8px;\n border-color: #d9d9d9;\n }\n }\n</style>\n"],"names":["_unref","_openBlock","_createBlock","_mergeProps","_createElementBlock","_createVNode","_normalizeStyle"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4BI,UAAM,QAAQ;AAEd,UAAM;AAAA,MACF;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IAAA,IACA,SAAS,KAAK;AAElB,UAAM,eAAe,SAAS,MAAM;AAChC,aAAO;AAAA,QACH,aAAa,MAAM,QAAQ;AAAA,QAC3B,SAAS,CAAA;AAAA,MAAC;AAAA,IAElB,CAAC;AAED,aAAa;AAAA,MACT,GAAG;AAAA,IAAA,CACN;;cAjDwCA,MAAA,YAAA,KAAzCC,aAAAC,YAaoB,iBAbpBC,WAaoB,EAAA,KAAA,EAAA,GAbO,OAAK,EAAwB,OAAOH,MAAA,KAAA,EAAA,CAAK,GAAA;AAAA,yBAChE,MAUM;AAAA,WAViCA,MAAA,UAAA,KAAvCC,aAAAG,mBAUM,OAVN,YAUM;AAAA,YATFC,YAQEL,MAAA,WAAA,GAAA;AAAA,uBAPM;AAAA,cAAJ,KAAI;AAAA,cACI,OAAOA,MAAA,UAAA;AAAA,0FAAA,WAAU,QAAA,SAAA;AAAA,cACxB,SAAS,aAAA;AAAA,cACT,UAAUA,MAAA,cAAA,KAAkBA,MAAA,UAAA;AAAA,cAC5B,OAAKM;AAAAA,kBAAyBN,MAAA,KAAA,EAAM,QAAQ,2BAA2BA,MAAA,KAAA,EAAM,QAAQ,aAAa,MAAA;AAAA,cAAA;AAAA;8BAK3GI,mBAAyE,OAAA;AAAA;YAApE,OAAM;AAAA,YAAmC,WAAQJ,MAAA,UAAA;AAAA,UAAA;;;;;;;"}
1
+ {"version":3,"file":"rich-editor-widget.vue2.js","sources":["../../../../src/components/field-widget/rich-editor-widget.vue"],"sourcesContent":["<template>\n <form-item-wrapper v-bind=\"props\" v-if=\"!handleHidden\" :rules=\"rules\">\n <div class=\"rich-editor-widget\" v-if=\"!isReadMode\">\n <QuillEditor\n ref=\"fieldEditor\"\n v-model:value=\"fieldModel\"\n :options=\"editorOption\"\n :disabled=\"handleDisabled || isReadMode\"\n :style=\"\n !!field.options.contentHeight ? `height: ${field.options.contentHeight};` : ''\n \"\n />\n </div>\n <div class=\"readonly-mode-rich-editor\" v-else v-html=\"fieldModel\"> </div>\n </form-item-wrapper>\n</template>\n\n<script lang=\"ts\" setup>\n import FormItemWrapper from './form-item-wrapper.vue';\n import { ComponentNameEnum, WidgetTypeEnum } from '@kp-ui/lowcode-core';\n import { type FieldProps, useField } from '@kp-ui/lowcode-core';\n import { computed, watchEffect } from 'vue';\n import { QuillEditor } from 'tmgc2-share';\n\n defineOptions({\n name: WidgetTypeEnum.richEditor,\n componentName: ComponentNameEnum.FieldWidget\n });\n const props = withDefaults(defineProps<FieldProps>(), {});\n\n const {\n rules,\n fieldEditor,\n field,\n fieldModel,\n isReadMode,\n handleHidden,\n handleDisabled,\n defineExposed\n } = useField(props);\n\n const editorOption = computed(() => {\n return {\n placeholder: field.options.placeholder,\n modules: {}\n };\n });\n\n defineExpose({\n ...defineExposed\n });\n</script>\n\n<style lang=\"scss\" scoped>\n .rich-editor-widget {\n :deep(.ql-toolbar.ql-snow) {\n border-color: #d9d9d9;\n border-top-left-radius: 8px;\n border-top-right-radius: 8px;\n }\n :deep(.ql-container.ql-snow) {\n border-bottom-left-radius: 8px;\n border-bottom-right-radius: 8px;\n border-color: #d9d9d9;\n }\n }\n</style>\n"],"names":["_unref","_openBlock","_createBlock","_mergeProps","_createElementBlock","_createVNode","_normalizeStyle"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4BI,UAAM,QAAQ;AAEd,UAAM;AAAA,MACF;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IAAA,IACA,SAAS,KAAK;AAElB,UAAM,eAAe,SAAS,MAAM;AAChC,aAAO;AAAA,QACH,aAAa,MAAM,QAAQ;AAAA,QAC3B,SAAS,CAAA;AAAA,MAAC;AAAA,IAElB,CAAC;AAED,aAAa;AAAA,MACT,GAAG;AAAA,IAAA,CACN;;cAjDwCA,MAAA,YAAA,KAAzCC,aAAAC,YAaoB,iBAbpBC,WAaoB,EAAA,KAAA,EAAA,GAbO,OAAK,EAAwB,OAAOH,MAAA,KAAA,EAAA,CAAK,GAAA;AAAA,yBAChE,MAUM;AAAA,WAViCA,MAAA,UAAA,KAAvCC,aAAAG,mBAUM,OAVN,YAUM;AAAA,YATFC,YAQEL,MAAA,WAAA,GAAA;AAAA,uBAPM;AAAA,cAAJ,KAAI;AAAA,cACI,OAAOA,MAAA,UAAA;AAAA,0FAAA,WAAU,QAAA,SAAA;AAAA,cACxB,SAAS,aAAA;AAAA,cACT,UAAUA,MAAA,cAAA,KAAkBA,MAAA,UAAA;AAAA,cAC5B,OAAKM;AAAAA,kBAAyBN,MAAA,KAAA,EAAM,QAAQ,2BAA2BA,MAAA,KAAA,EAAM,QAAQ,aAAa,MAAA;AAAA,cAAA;AAAA;8BAK3GI,mBAAyE,OAAA;AAAA;YAApE,OAAM;AAAA,YAAmC,WAAQJ,MAAA,UAAA;AAAA,UAAA;;;;;;;"}
@@ -1,7 +1,7 @@
1
1
  import _sfc_main from "./textarea-widget.vue2.js";
2
2
  /* empty css */
3
3
  import _export_sfc from "../../../_virtual/_plugin-vue_export-helper.js";
4
- const textareaWidget = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-04869c36"]]);
4
+ const textareaWidget = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-ee000014"]]);
5
5
  export {
6
6
  textareaWidget as default
7
7
  };
@@ -1,7 +1,7 @@
1
1
  import { defineComponent, resolveComponent, createBlock, createCommentVNode, unref, openBlock, mergeProps, withCtx, createElementBlock, isRef } from "vue";
2
2
  import FormItemWrapper from "./form-item-wrapper.vue.js";
3
- import { useField } from "./useField.js";
4
3
  import { ComponentNameEnum, WidgetTypeEnum } from "../../../core/src/constants/WidgetTypeEnum.js";
4
+ import { useField } from "../../../core/src/hooks/useField.js";
5
5
  const _hoisted_1 = ["innerHTML"];
6
6
  const _sfc_main = /* @__PURE__ */ defineComponent({
7
7
  ...{
@@ -1 +1 @@
1
- {"version":3,"file":"textarea-widget.vue2.js","sources":["../../../../src/components/field-widget/textarea-widget.vue"],"sourcesContent":["<template>\n <form-item-wrapper v-bind=\"props\" :rules=\"rules\" v-if=\"!handleHidden\">\n <a-textarea\n type=\"textarea\"\n ref=\"fieldEditor\"\n v-model:value=\"fieldModel\"\n v-if=\"!isReadMode\"\n :size=\"size\"\n :disabled=\"handleDisabled\"\n :allowClear=\"field.options.allowClear\"\n :readonly=\"field.options.readonly\"\n :placeholder=\"field.options.placeholder\"\n :rows=\"field.options.rows\"\n :minlength=\"field.options.minLength\"\n :maxlength=\"field.options.maxLength\"\n :showCount=\"field.options.showCount\"\n @focus=\"handleFocusCustomEvent\"\n @blur=\"handleBlurCustomEvent\"\n />\n <template v-else=\"isReadMode\">\n <div v-html=\"fieldModel\" class=\"readonly-mode-field\"></div>\n </template>\n </form-item-wrapper>\n</template>\n\n<script lang=\"ts\" setup>\n import FormItemWrapper from './form-item-wrapper.vue';\n import { type FieldProps, useField } from './useField';\n import { WidgetTypeEnum, ComponentNameEnum } from '@kp-ui/lowcode-core';\n defineOptions({\n name: WidgetTypeEnum.textarea,\n componentName: ComponentNameEnum.FieldWidget\n });\n\n const props = withDefaults(defineProps<FieldProps>(), {});\n\n const {\n rules,\n field,\n fieldModel,\n isReadMode,\n size,\n\n handleHidden,\n handleDisabled,\n handleFocusCustomEvent,\n handleBlurCustomEvent,\n defineExposed\n } = useField(props);\n\n defineExpose({\n ...defineExposed\n });\n</script>\n\n<style lang=\"scss\" scoped>\n .readonly-mode-field {\n display: inline-block;\n white-space: pre-wrap;\n line-height: 1.5;\n max-height: 100px;\n overflow-y: auto;\n }\n</style>\n"],"names":["_unref","_openBlock","_createBlock","_mergeProps","_createElementBlock"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAkCI,UAAM,QAAQ;AAEd,UAAM;AAAA,MACF;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MAEA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IAAA,IACA,SAAS,KAAK;AAElB,aAAa;AAAA,MACT,GAAG;AAAA,IAAA,CACN;;;cAnDuDA,MAAA,YAAA,KAAxDC,aAAAC,YAqBoB,iBArBpBC,WAqBoB,EAAA,KAAA,EAAA,GArBO,OAAK,EAAG,OAAOH,MAAA,KAAA,EAAA,CAAK,GAAA;AAAA,yBAC3C,MAgBE;AAAA,WAZSA,MAAA,UAAA,kBAJXE,YAgBE,uBAAA;AAAA;YAfE,MAAK;AAAA,YACL,KAAI;AAAA,YACI,OAAOF,MAAA,UAAA;AAAA,wFAAA,WAAU,QAAA,SAAA;AAAA,YAExB,MAAMA,MAAA,IAAA;AAAA,YACN,UAAUA,MAAA,cAAA;AAAA,YACV,YAAYA,MAAA,KAAA,EAAM,QAAQ;AAAA,YAC1B,UAAUA,MAAA,KAAA,EAAM,QAAQ;AAAA,YACxB,aAAaA,MAAA,KAAA,EAAM,QAAQ;AAAA,YAC3B,MAAMA,MAAA,KAAA,EAAM,QAAQ;AAAA,YACpB,WAAWA,MAAA,KAAA,EAAM,QAAQ;AAAA,YACzB,WAAWA,MAAA,KAAA,EAAM,QAAQ;AAAA,YACzB,WAAWA,MAAA,KAAA,EAAM,QAAQ;AAAA,YACzB,SAAOA,MAAA,sBAAA;AAAA,YACP,QAAMA,MAAA,qBAAA;AAAA,UAAA,yKAGPI,mBAA2D,OAAA;AAAA;YAAtD,WAAQJ,MAAA,UAAA;AAAA,YAAY,OAAM;AAAA,UAAA;;;;;;;"}
1
+ {"version":3,"file":"textarea-widget.vue2.js","sources":["../../../../src/components/field-widget/textarea-widget.vue"],"sourcesContent":["<template>\n <form-item-wrapper v-bind=\"props\" :rules=\"rules\" v-if=\"!handleHidden\">\n <a-textarea\n type=\"textarea\"\n ref=\"fieldEditor\"\n v-model:value=\"fieldModel\"\n v-if=\"!isReadMode\"\n :size=\"size\"\n :disabled=\"handleDisabled\"\n :allowClear=\"field.options.allowClear\"\n :readonly=\"field.options.readonly\"\n :placeholder=\"field.options.placeholder\"\n :rows=\"field.options.rows\"\n :minlength=\"field.options.minLength\"\n :maxlength=\"field.options.maxLength\"\n :showCount=\"field.options.showCount\"\n @focus=\"handleFocusCustomEvent\"\n @blur=\"handleBlurCustomEvent\"\n />\n <template v-else=\"isReadMode\">\n <div v-html=\"fieldModel\" class=\"readonly-mode-field\"></div>\n </template>\n </form-item-wrapper>\n</template>\n\n<script lang=\"ts\" setup>\n import FormItemWrapper from './form-item-wrapper.vue';\n import {\n type FieldProps,\n useField,\n WidgetTypeEnum,\n ComponentNameEnum\n } from '@kp-ui/lowcode-core';\n defineOptions({\n name: WidgetTypeEnum.textarea,\n componentName: ComponentNameEnum.FieldWidget\n });\n\n const props = withDefaults(defineProps<FieldProps>(), {});\n\n const {\n rules,\n field,\n fieldModel,\n isReadMode,\n size,\n\n handleHidden,\n handleDisabled,\n handleFocusCustomEvent,\n handleBlurCustomEvent,\n defineExposed\n } = useField(props);\n\n defineExpose({\n ...defineExposed\n });\n</script>\n\n<style lang=\"scss\" scoped>\n .readonly-mode-field {\n display: inline-block;\n white-space: pre-wrap;\n line-height: 1.5;\n max-height: 100px;\n overflow-y: auto;\n }\n</style>\n"],"names":["_unref","_openBlock","_createBlock","_mergeProps","_createElementBlock"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAsCI,UAAM,QAAQ;AAEd,UAAM;AAAA,MACF;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MAEA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IAAA,IACA,SAAS,KAAK;AAElB,aAAa;AAAA,MACT,GAAG;AAAA,IAAA,CACN;;;cAvDuDA,MAAA,YAAA,KAAxDC,aAAAC,YAqBoB,iBArBpBC,WAqBoB,EAAA,KAAA,EAAA,GArBO,OAAK,EAAG,OAAOH,MAAA,KAAA,EAAA,CAAK,GAAA;AAAA,yBAC3C,MAgBE;AAAA,WAZSA,MAAA,UAAA,kBAJXE,YAgBE,uBAAA;AAAA;YAfE,MAAK;AAAA,YACL,KAAI;AAAA,YACI,OAAOF,MAAA,UAAA;AAAA,wFAAA,WAAU,QAAA,SAAA;AAAA,YAExB,MAAMA,MAAA,IAAA;AAAA,YACN,UAAUA,MAAA,cAAA;AAAA,YACV,YAAYA,MAAA,KAAA,EAAM,QAAQ;AAAA,YAC1B,UAAUA,MAAA,KAAA,EAAM,QAAQ;AAAA,YACxB,aAAaA,MAAA,KAAA,EAAM,QAAQ;AAAA,YAC3B,MAAMA,MAAA,KAAA,EAAM,QAAQ;AAAA,YACpB,WAAWA,MAAA,KAAA,EAAM,QAAQ;AAAA,YACzB,WAAWA,MAAA,KAAA,EAAM,QAAQ;AAAA,YACzB,WAAWA,MAAA,KAAA,EAAM,QAAQ;AAAA,YACzB,SAAOA,MAAA,sBAAA;AAAA,YACP,QAAMA,MAAA,qBAAA;AAAA,UAAA,yKAGPI,mBAA2D,OAAA;AAAA;YAAtD,WAAQJ,MAAA,UAAA;AAAA,YAAY,OAAM;AAAA,UAAA;;;;;;;"}
@@ -1,8 +1,8 @@
1
1
  import { defineComponent, onMounted, computed, resolveComponent, createBlock, createCommentVNode, unref, openBlock, mergeProps, withCtx, createElementVNode, normalizeClass, withDirectives, createElementBlock, createVNode, isRef, vShow, toDisplayString } from "vue";
2
2
  import FormItemWrapper from "./form-item-wrapper.vue.js";
3
- import { useField } from "./useField.js";
4
3
  import { useSelect } from "./hooks/useSelect.js";
5
4
  import { ComponentNameEnum, WidgetTypeEnum } from "../../../core/src/constants/WidgetTypeEnum.js";
5
+ import { useField } from "../../../core/src/hooks/useField.js";
6
6
  import { formateCascaderCode } from "../../../core/src/utils/format.js";
7
7
  const _hoisted_1 = {
8
8
  key: 0,
@@ -1 +1 @@
1
- {"version":3,"file":"treeSelect-widget.vue2.js","sources":["../../../../src/components/field-widget/treeSelect-widget.vue"],"sourcesContent":["<template>\n <form-item-wrapper v-bind=\"props\" v-if=\"!handleHidden\" :rules=\"rules\">\n <div class=\"full-width-input\" :class=\"{ 'readonly-mode-cascader': isReadMode }\">\n <a-tree-select\n v-show=\"!isReadMode\"\n :tree-default-expand-all=\"field.options.treeDefaultExpandAll\"\n ref=\"fieldEditor\"\n :size=\"size\"\n :treeData=\"field.options.optionItems\"\n v-model:value=\"fieldModel\"\n :disabled=\"handleDisabled\"\n :allowClear=\"field.options.allowClear\"\n :placeholder=\"field.options.placeholder || i18nt('render.hint.selectPlaceholder')\"\n :fieldNames=\"{ value: valueKey, label: labelKey, children: childrenKey }\"\n :multiple=\"field.options.multiple\"\n @focus=\"handleFocusCustomEvent\"\n @blur=\"handleBlurCustomEvent\"\n />\n <template v-if=\"isReadMode\">\n <span class=\"readonly-mode-field\">{{ contentForReadMode }}</span>\n </template>\n </div>\n </form-item-wrapper>\n</template>\n\n<script lang=\"ts\" setup>\n import FormItemWrapper from './form-item-wrapper.vue';\n import { ComponentNameEnum, WidgetTypeEnum } from '@kp-ui/lowcode-core';\n import { FieldProps, useField } from './useField';\n import { useSelect } from './hooks/useSelect';\n import { computed, onMounted } from 'vue';\n import { formateCascaderCode } from '@kp-ui/lowcode-core';\n\n defineOptions({\n name: WidgetTypeEnum.treeSelect,\n componentName: ComponentNameEnum.FieldWidget\n });\n const props = withDefaults(defineProps<FieldProps>(), {});\n\n const {\n rules,\n i18nt,\n fieldEditor,\n field,\n fieldModel,\n isReadMode,\n size,\n designState,\n handleHidden,\n handleDisabled,\n handleFocusCustomEvent,\n handleBlurCustomEvent,\n defineExposed\n } = useField(props);\n\n const { labelKey, valueKey, childrenKey, initOptionItems } = useSelect({\n field,\n fieldModel,\n designState\n });\n\n onMounted(() => {\n initOptionItems();\n });\n\n const contentForReadMode = computed(() => {\n if (!fieldModel.value) return '';\n return formateCascaderCode(field.options.optionItems, fieldModel.value, {\n label: labelKey.value,\n value: valueKey.value,\n children: childrenKey.value\n });\n });\n\n defineExpose({\n ...defineExposed\n });\n</script>\n\n<style lang=\"scss\" scoped></style>\n"],"names":["_unref","_openBlock","_createBlock","_mergeProps","_createElementVNode","_normalizeClass","_createVNode","_createElementBlock","_toDisplayString"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqCI,UAAM,QAAQ;AAEd,UAAM;AAAA,MACF;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IAAA,IACA,SAAS,KAAK;AAElB,UAAM,EAAE,UAAU,UAAU,aAAa,gBAAA,IAAoB,UAAU;AAAA,MACnE;AAAA,MACA;AAAA,MACA;AAAA,IAAA,CACH;AAED,cAAU,MAAM;AACZ,sBAAA;AAAA,IACJ,CAAC;AAED,UAAM,qBAAqB,SAAS,MAAM;AACtC,UAAI,CAAC,WAAW,MAAO,QAAO;AAC9B,aAAO,oBAAoB,MAAM,QAAQ,aAAa,WAAW,OAAO;AAAA,QACpE,OAAO,SAAS;AAAA,QAChB,OAAO,SAAS;AAAA,QAChB,UAAU,YAAY;AAAA,MAAA,CACzB;AAAA,IACL,CAAC;AAED,aAAa;AAAA,MACT,GAAG;AAAA,IAAA,CACN;;;cA3EwCA,MAAA,YAAA,KAAzCC,aAAAC,YAqBoB,iBArBpBC,WAqBoB,EAAA,KAAA,EAAA,GArBO,OAAK,EAAwB,OAAOH,MAAA,KAAA,EAAA,CAAK,GAAA;AAAA,yBAChE,MAmBM;AAAA,UAnBNI,mBAmBM,OAAA;AAAA,YAnBD,OAAKC,eAAA,CAAC,oBAAkB,EAAA,0BAAqCL,MAAA,UAAA,GAAU,CAAA;AAAA,UAAA;2BACxEM,YAcE,0BAAA;AAAA,cAZG,2BAAyBN,MAAA,KAAA,EAAM,QAAQ;AAAA,uBACpC;AAAA,cAAJ,KAAI;AAAA,cACH,MAAMA,MAAA,IAAA;AAAA,cACN,UAAUA,MAAA,KAAA,EAAM,QAAQ;AAAA,cACjB,OAAOA,MAAA,UAAA;AAAA,0FAAA,WAAU,QAAA,SAAA;AAAA,cACxB,UAAUA,MAAA,cAAA;AAAA,cACV,YAAYA,MAAA,KAAA,EAAM,QAAQ;AAAA,cAC1B,aAAaA,MAAA,KAAA,EAAM,QAAQ,eAAeA,MAAA,KAAA,EAAK,+BAAA;AAAA,cAC/C,YAAU,EAAA,OAAWA,MAAA,QAAA,GAAQ,OAASA,MAAA,QAAA,aAAoBA,MAAA,WAAA,EAAA;AAAA,cAC1D,UAAUA,MAAA,KAAA,EAAM,QAAQ;AAAA,cACxB,SAAOA,MAAA,sBAAA;AAAA,cACP,QAAMA,MAAA,qBAAA;AAAA,YAAA;uBAZEA,MAAA,UAAA,CAAU;AAAA,YAAA;YAcPA,MAAA,UAAA,kBACZO,mBAAiE,QAAjE,YAAiEC,gBAA5B,mBAAA,KAAkB,GAAA,CAAA;;;;;;;;"}
1
+ {"version":3,"file":"treeSelect-widget.vue2.js","sources":["../../../../src/components/field-widget/treeSelect-widget.vue"],"sourcesContent":["<template>\n <form-item-wrapper v-bind=\"props\" v-if=\"!handleHidden\" :rules=\"rules\">\n <div class=\"full-width-input\" :class=\"{ 'readonly-mode-cascader': isReadMode }\">\n <a-tree-select\n v-show=\"!isReadMode\"\n :tree-default-expand-all=\"field.options.treeDefaultExpandAll\"\n ref=\"fieldEditor\"\n :size=\"size\"\n :treeData=\"field.options.optionItems\"\n v-model:value=\"fieldModel\"\n :disabled=\"handleDisabled\"\n :allowClear=\"field.options.allowClear\"\n :placeholder=\"field.options.placeholder || i18nt('render.hint.selectPlaceholder')\"\n :fieldNames=\"{ value: valueKey, label: labelKey, children: childrenKey }\"\n :multiple=\"field.options.multiple\"\n @focus=\"handleFocusCustomEvent\"\n @blur=\"handleBlurCustomEvent\"\n />\n <template v-if=\"isReadMode\">\n <span class=\"readonly-mode-field\">{{ contentForReadMode }}</span>\n </template>\n </div>\n </form-item-wrapper>\n</template>\n\n<script lang=\"ts\" setup>\n import FormItemWrapper from './form-item-wrapper.vue';\n import { ComponentNameEnum, WidgetTypeEnum } from '@kp-ui/lowcode-core';\n import { type FieldProps, useField } from '@kp-ui/lowcode-core';\n import { useSelect } from './hooks/useSelect';\n import { computed, onMounted } from 'vue';\n import { formateCascaderCode } from '@kp-ui/lowcode-core';\n\n defineOptions({\n name: WidgetTypeEnum.treeSelect,\n componentName: ComponentNameEnum.FieldWidget\n });\n const props = withDefaults(defineProps<FieldProps>(), {});\n\n const {\n rules,\n i18nt,\n fieldEditor,\n field,\n fieldModel,\n isReadMode,\n size,\n designState,\n handleHidden,\n handleDisabled,\n handleFocusCustomEvent,\n handleBlurCustomEvent,\n defineExposed\n } = useField(props);\n\n const { labelKey, valueKey, childrenKey, initOptionItems } = useSelect({\n field,\n fieldModel,\n designState\n });\n\n onMounted(() => {\n initOptionItems();\n });\n\n const contentForReadMode = computed(() => {\n if (!fieldModel.value) return '';\n return formateCascaderCode(field.options.optionItems, fieldModel.value, {\n label: labelKey.value,\n value: valueKey.value,\n children: childrenKey.value\n });\n });\n\n defineExpose({\n ...defineExposed\n });\n</script>\n\n<style lang=\"scss\" scoped></style>\n"],"names":["_unref","_openBlock","_createBlock","_mergeProps","_createElementVNode","_normalizeClass","_createVNode","_createElementBlock","_toDisplayString"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqCI,UAAM,QAAQ;AAEd,UAAM;AAAA,MACF;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IAAA,IACA,SAAS,KAAK;AAElB,UAAM,EAAE,UAAU,UAAU,aAAa,gBAAA,IAAoB,UAAU;AAAA,MACnE;AAAA,MACA;AAAA,MACA;AAAA,IAAA,CACH;AAED,cAAU,MAAM;AACZ,sBAAA;AAAA,IACJ,CAAC;AAED,UAAM,qBAAqB,SAAS,MAAM;AACtC,UAAI,CAAC,WAAW,MAAO,QAAO;AAC9B,aAAO,oBAAoB,MAAM,QAAQ,aAAa,WAAW,OAAO;AAAA,QACpE,OAAO,SAAS;AAAA,QAChB,OAAO,SAAS;AAAA,QAChB,UAAU,YAAY;AAAA,MAAA,CACzB;AAAA,IACL,CAAC;AAED,aAAa;AAAA,MACT,GAAG;AAAA,IAAA,CACN;;;cA3EwCA,MAAA,YAAA,KAAzCC,aAAAC,YAqBoB,iBArBpBC,WAqBoB,EAAA,KAAA,EAAA,GArBO,OAAK,EAAwB,OAAOH,MAAA,KAAA,EAAA,CAAK,GAAA;AAAA,yBAChE,MAmBM;AAAA,UAnBNI,mBAmBM,OAAA;AAAA,YAnBD,OAAKC,eAAA,CAAC,oBAAkB,EAAA,0BAAqCL,MAAA,UAAA,GAAU,CAAA;AAAA,UAAA;2BACxEM,YAcE,0BAAA;AAAA,cAZG,2BAAyBN,MAAA,KAAA,EAAM,QAAQ;AAAA,uBACpC;AAAA,cAAJ,KAAI;AAAA,cACH,MAAMA,MAAA,IAAA;AAAA,cACN,UAAUA,MAAA,KAAA,EAAM,QAAQ;AAAA,cACjB,OAAOA,MAAA,UAAA;AAAA,0FAAA,WAAU,QAAA,SAAA;AAAA,cACxB,UAAUA,MAAA,cAAA;AAAA,cACV,YAAYA,MAAA,KAAA,EAAM,QAAQ;AAAA,cAC1B,aAAaA,MAAA,KAAA,EAAM,QAAQ,eAAeA,MAAA,KAAA,EAAK,+BAAA;AAAA,cAC/C,YAAU,EAAA,OAAWA,MAAA,QAAA,GAAQ,OAASA,MAAA,QAAA,aAAoBA,MAAA,WAAA,EAAA;AAAA,cAC1D,UAAUA,MAAA,KAAA,EAAM,QAAQ;AAAA,cACxB,SAAOA,MAAA,sBAAA;AAAA,cACP,QAAMA,MAAA,qBAAA;AAAA,YAAA;uBAZEA,MAAA,UAAA,CAAU;AAAA,YAAA;YAcPA,MAAA,UAAA,kBACZO,mBAAiE,QAAjE,YAAiEC,gBAA5B,mBAAA,KAAkB,GAAA,CAAA;;;;;;;;"}
@@ -1,7 +1,7 @@
1
1
  import { defineComponent, createBlock, createCommentVNode, unref, openBlock, mergeProps, withCtx, createElementVNode, resolveDynamicComponent, toRefs } from "vue";
2
2
  import FormItemWrapper from "./form-item-wrapper.vue.js";
3
- import { useField } from "./useField.js";
4
3
  import { ComponentNameEnum, WidgetTypeEnum } from "../../../core/src/constants/WidgetTypeEnum.js";
4
+ import { useField } from "../../../core/src/hooks/useField.js";
5
5
  const _hoisted_1 = { class: "slot-wrapper-render" };
6
6
  const _sfc_main = /* @__PURE__ */ defineComponent({
7
7
  ...{
@@ -1 +1 @@
1
- {"version":3,"file":"vue-render-widget.vue2.js","sources":["../../../../src/components/field-widget/vue-render-widget.vue"],"sourcesContent":["<template>\n <form-item-wrapper v-bind=\"props\" v-if=\"!handleHidden\" :rules=\"rules\">\n <div class=\"slot-wrapper-render\">\n <component ref=\"fieldEditor\" :is=\"renderCompont()\" />\n </div>\n </form-item-wrapper>\n</template>\n\n<script lang=\"ts\" setup>\n import { ComponentNameEnum, WidgetTypeEnum } from '@kp-ui/lowcode-core';\n import FormItemWrapper from './form-item-wrapper.vue';\n import { FieldProps, useField } from './useField';\n import { toRefs } from 'vue';\n\n defineOptions({\n name: WidgetTypeEnum.vueRender,\n componentName: ComponentNameEnum.FieldWidget\n });\n const props = withDefaults(defineProps<FieldProps>(), {});\n\n const { rules, field, fieldModel, handleHidden, defineExposed, executeFunction } =\n useField(props);\n\n const renderCompont = () => {\n if (field.options.template) {\n const sfcString = field.options.template;\n const templateMatch = sfcString.match(/<template>([\\s\\S]*)<\\/template>/);\n const scriptMatch = sfcString.match(/<script.*?>([\\s\\S]*)<\\/script>/);\n const styleMatch = sfcString.match(/<style.*?>([\\s\\S]*)<\\/style>/);\n\n const template = templateMatch ? templateMatch[1] : '';\n let scriptContent = scriptMatch ? scriptMatch[1] : 'export default {}';\n const style = styleMatch ? styleMatch[1] : '';\n\n // Handle style\n if (style) {\n const styleId = `vue-render-style-${field.options.name}`;\n if (!document.getElementById(styleId)) {\n const styleTag = document.createElement('style');\n styleTag.id = styleId;\n styleTag.textContent = style;\n document.head.appendChild(styleTag);\n }\n }\n\n // Handle script\n // Replace export default with return to make it evaluatable\n scriptContent = scriptContent.replace('export default', 'return');\n\n try {\n const getOptions = new Function(scriptContent);\n const componentOptions = getOptions() || {};\n\n return {\n template,\n ...componentOptions,\n props: ['data'], // Ensure data prop is available if not defined\n setup(props, ctx) {\n // Call original setup if it exists\n const originalSetup = componentOptions.setup\n ? componentOptions.setup(props, ctx)\n : {};\n return {\n ...toRefs(props),\n ...originalSetup\n };\n }\n };\n } catch (e) {\n console.error('Failed to parse component script', e);\n return { template: '<div>Error parsing component</div>' };\n }\n }\n // Assuming executeFunction and fieldModel are defined elsewhere or will be added.\n // This part of the code was provided in the instruction, but its dependencies are not in the original snippet.\n const component = executeFunction({\n functionBody: field.options.customRender,\n params: { data: fieldModel.value },\n keys: ['data']\n });\n\n return component ?? null;\n };\n\n defineExpose({\n ...defineExposed\n });\n</script>\n\n<style lang=\"scss\" scoped></style>\n"],"names":["props","_unref","_openBlock","_createBlock","_mergeProps","_createElementVNode","_resolveDynamicComponent"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAkBI,UAAM,QAAQ;AAEd,UAAM,EAAE,OAAO,OAAO,YAAY,cAAc,eAAe,gBAAA,IAC3D,SAAS,KAAK;AAElB,UAAM,gBAAgB,MAAM;AACxB,UAAI,MAAM,QAAQ,UAAU;AACxB,cAAM,YAAY,MAAM,QAAQ;AAChC,cAAM,gBAAgB,UAAU,MAAM,iCAAiC;AACvE,cAAM,cAAc,UAAU,MAAM,gCAAgC;AACpE,cAAM,aAAa,UAAU,MAAM,8BAA8B;AAEjE,cAAM,WAAW,gBAAgB,cAAc,CAAC,IAAI;AACpD,YAAI,gBAAgB,cAAc,YAAY,CAAC,IAAI;AACnD,cAAM,QAAQ,aAAa,WAAW,CAAC,IAAI;AAG3C,YAAI,OAAO;AACP,gBAAM,UAAU,oBAAoB,MAAM,QAAQ,IAAI;AACtD,cAAI,CAAC,SAAS,eAAe,OAAO,GAAG;AACnC,kBAAM,WAAW,SAAS,cAAc,OAAO;AAC/C,qBAAS,KAAK;AACd,qBAAS,cAAc;AACvB,qBAAS,KAAK,YAAY,QAAQ;AAAA,UACtC;AAAA,QACJ;AAIA,wBAAgB,cAAc,QAAQ,kBAAkB,QAAQ;AAEhE,YAAI;AACA,gBAAM,aAAa,IAAI,SAAS,aAAa;AAC7C,gBAAM,mBAAmB,WAAA,KAAgB,CAAA;AAEzC,iBAAO;AAAA,YACH;AAAA,YACA,GAAG;AAAA,YACH,OAAO,CAAC,MAAM;AAAA;AAAA,YACd,MAAMA,QAAO,KAAK;AAEd,oBAAM,gBAAgB,iBAAiB,QACjC,iBAAiB,MAAMA,QAAO,GAAG,IACjC,CAAA;AACN,qBAAO;AAAA,gBACH,GAAG,OAAOA,MAAK;AAAA,gBACf,GAAG;AAAA,cAAA;AAAA,YAEX;AAAA,UAAA;AAAA,QAER,SAAS,GAAG;AACR,kBAAQ,MAAM,oCAAoC,CAAC;AACnD,iBAAO,EAAE,UAAU,qCAAA;AAAA,QACvB;AAAA,MACJ;AAGA,YAAM,YAAY,gBAAgB;AAAA,QAC9B,cAAc,MAAM,QAAQ;AAAA,QAC5B,QAAQ,EAAE,MAAM,WAAW,MAAA;AAAA,QAC3B,MAAM,CAAC,MAAM;AAAA,MAAA,CAChB;AAED,aAAO,aAAa;AAAA,IACxB;AAEA,aAAa;AAAA,MACT,GAAG;AAAA,IAAA,CACN;;cArFwCC,MAAA,YAAA,KAAzCC,aAAAC,YAIoB,iBAJpBC,WAIoB,EAAA,KAAA,EAAA,GAJO,OAAK,EAAwB,OAAOH,MAAA,KAAA,EAAA,CAAK,GAAA;AAAA,yBAChE,MAEM;AAAA,UAFNI,mBAEM,OAFN,YAEM;AAAA,aADFH,aAAAC,YAAqDG,wBAAnB,cAAA,CAAa,GAAA,EAApC,KAAI,cAAA,GAAa,MAAA,GAAA;AAAA,UAAA;;;;;;;"}
1
+ {"version":3,"file":"vue-render-widget.vue2.js","sources":["../../../../src/components/field-widget/vue-render-widget.vue"],"sourcesContent":["<template>\n <form-item-wrapper v-bind=\"props\" v-if=\"!handleHidden\" :rules=\"rules\">\n <div class=\"slot-wrapper-render\">\n <component ref=\"fieldEditor\" :is=\"renderCompont()\" />\n </div>\n </form-item-wrapper>\n</template>\n\n<script lang=\"ts\" setup>\n import { ComponentNameEnum, WidgetTypeEnum } from '@kp-ui/lowcode-core';\n import FormItemWrapper from './form-item-wrapper.vue';\n import { type FieldProps, useField } from '@kp-ui/lowcode-core';\n import { toRefs } from 'vue';\n\n defineOptions({\n name: WidgetTypeEnum.vueRender,\n componentName: ComponentNameEnum.FieldWidget\n });\n const props = withDefaults(defineProps<FieldProps>(), {});\n\n const { rules, field, fieldModel, handleHidden, defineExposed, executeFunction } =\n useField(props);\n\n const renderCompont = () => {\n if (field.options.template) {\n const sfcString = field.options.template;\n const templateMatch = sfcString.match(/<template>([\\s\\S]*)<\\/template>/);\n const scriptMatch = sfcString.match(/<script.*?>([\\s\\S]*)<\\/script>/);\n const styleMatch = sfcString.match(/<style.*?>([\\s\\S]*)<\\/style>/);\n\n const template = templateMatch ? templateMatch[1] : '';\n let scriptContent = scriptMatch ? scriptMatch[1] : 'export default {}';\n const style = styleMatch ? styleMatch[1] : '';\n\n // Handle style\n if (style) {\n const styleId = `vue-render-style-${field.options.name}`;\n if (!document.getElementById(styleId)) {\n const styleTag = document.createElement('style');\n styleTag.id = styleId;\n styleTag.textContent = style;\n document.head.appendChild(styleTag);\n }\n }\n\n // Handle script\n // Replace export default with return to make it evaluatable\n scriptContent = scriptContent.replace('export default', 'return');\n\n try {\n const getOptions = new Function(scriptContent);\n const componentOptions = getOptions() || {};\n\n return {\n template,\n ...componentOptions,\n props: ['data'], // Ensure data prop is available if not defined\n setup(props, ctx) {\n // Call original setup if it exists\n const originalSetup = componentOptions.setup\n ? componentOptions.setup(props, ctx)\n : {};\n return {\n ...toRefs(props),\n ...originalSetup\n };\n }\n };\n } catch (e) {\n console.error('Failed to parse component script', e);\n return { template: '<div>Error parsing component</div>' };\n }\n }\n // Assuming executeFunction and fieldModel are defined elsewhere or will be added.\n // This part of the code was provided in the instruction, but its dependencies are not in the original snippet.\n const component = executeFunction({\n functionBody: field.options.customRender,\n params: { data: fieldModel.value },\n keys: ['data']\n });\n\n return component ?? null;\n };\n\n defineExpose({\n ...defineExposed\n });\n</script>\n\n<style lang=\"scss\" scoped></style>\n"],"names":["props","_unref","_openBlock","_createBlock","_mergeProps","_createElementVNode","_resolveDynamicComponent"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAkBI,UAAM,QAAQ;AAEd,UAAM,EAAE,OAAO,OAAO,YAAY,cAAc,eAAe,gBAAA,IAC3D,SAAS,KAAK;AAElB,UAAM,gBAAgB,MAAM;AACxB,UAAI,MAAM,QAAQ,UAAU;AACxB,cAAM,YAAY,MAAM,QAAQ;AAChC,cAAM,gBAAgB,UAAU,MAAM,iCAAiC;AACvE,cAAM,cAAc,UAAU,MAAM,gCAAgC;AACpE,cAAM,aAAa,UAAU,MAAM,8BAA8B;AAEjE,cAAM,WAAW,gBAAgB,cAAc,CAAC,IAAI;AACpD,YAAI,gBAAgB,cAAc,YAAY,CAAC,IAAI;AACnD,cAAM,QAAQ,aAAa,WAAW,CAAC,IAAI;AAG3C,YAAI,OAAO;AACP,gBAAM,UAAU,oBAAoB,MAAM,QAAQ,IAAI;AACtD,cAAI,CAAC,SAAS,eAAe,OAAO,GAAG;AACnC,kBAAM,WAAW,SAAS,cAAc,OAAO;AAC/C,qBAAS,KAAK;AACd,qBAAS,cAAc;AACvB,qBAAS,KAAK,YAAY,QAAQ;AAAA,UACtC;AAAA,QACJ;AAIA,wBAAgB,cAAc,QAAQ,kBAAkB,QAAQ;AAEhE,YAAI;AACA,gBAAM,aAAa,IAAI,SAAS,aAAa;AAC7C,gBAAM,mBAAmB,WAAA,KAAgB,CAAA;AAEzC,iBAAO;AAAA,YACH;AAAA,YACA,GAAG;AAAA,YACH,OAAO,CAAC,MAAM;AAAA;AAAA,YACd,MAAMA,QAAO,KAAK;AAEd,oBAAM,gBAAgB,iBAAiB,QACjC,iBAAiB,MAAMA,QAAO,GAAG,IACjC,CAAA;AACN,qBAAO;AAAA,gBACH,GAAG,OAAOA,MAAK;AAAA,gBACf,GAAG;AAAA,cAAA;AAAA,YAEX;AAAA,UAAA;AAAA,QAER,SAAS,GAAG;AACR,kBAAQ,MAAM,oCAAoC,CAAC;AACnD,iBAAO,EAAE,UAAU,qCAAA;AAAA,QACvB;AAAA,MACJ;AAGA,YAAM,YAAY,gBAAgB;AAAA,QAC9B,cAAc,MAAM,QAAQ;AAAA,QAC5B,QAAQ,EAAE,MAAM,WAAW,MAAA;AAAA,QAC3B,MAAM,CAAC,MAAM;AAAA,MAAA,CAChB;AAED,aAAO,aAAa;AAAA,IACxB;AAEA,aAAa;AAAA,MACT,GAAG;AAAA,IAAA,CACN;;cArFwCC,MAAA,YAAA,KAAzCC,aAAAC,YAIoB,iBAJpBC,WAIoB,EAAA,KAAA,EAAA,GAJO,OAAK,EAAwB,OAAOH,MAAA,KAAA,EAAA,CAAK,GAAA;AAAA,yBAChE,MAEM;AAAA,UAFNI,mBAEM,OAFN,YAEM;AAAA,aADFH,aAAAC,YAAqDG,wBAAnB,cAAA,CAAa,GAAA,EAApC,KAAI,cAAA,GAAa,MAAA,GAAA;AAAA,UAAA;;;;;;;"}