@ibiz-template/mob-vue3-components 0.0.3 → 0.0.5

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 (141) hide show
  1. package/dist/index.min.css +1 -1
  2. package/dist/index.system.min.js +5 -5
  3. package/dist/index.system.min.js.map +1 -1
  4. package/es/common/carousel/carousel.css +1 -0
  5. package/es/common/carousel/carousel.d.ts +52 -0
  6. package/es/common/carousel/carousel.mjs +61 -0
  7. package/es/common/index.mjs +2 -0
  8. package/es/control/calendar/calendar.css +1 -1
  9. package/es/control/calendar/calendar.d.ts +4 -3
  10. package/es/control/calendar/calendar.mjs +94 -12
  11. package/es/control/calendar/index.d.ts +2 -1
  12. package/es/control/dashboard/dashboard.css +1 -1
  13. package/es/control/form/form-detail/form-group-panel/form-group-panel.css +1 -1
  14. package/es/control/form/form-detail/form-item/form-item-container/form-item-container.css +1 -1
  15. package/es/control/form/form-detail/form-item/form-item.mjs +5 -1
  16. package/es/control/form/form-detail/form-mdctrl/form-mdctrl-form/form-mdctrl-form.mjs +1 -0
  17. package/es/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/repeater-multi-form/repeater-multi-form.mjs +2 -1
  18. package/es/control/form/form-detail/form-mdctrl/form-mdctrl.css +1 -1
  19. package/es/control/form/form-detail/form-mdctrl/form-mdctrl.d.ts +1 -0
  20. package/es/control/form/form-detail/form-mdctrl/form-mdctrl.mjs +7 -3
  21. package/es/control/form/form-detail/form-mdctrl/index.d.ts +8 -0
  22. package/es/control/form/form-detail/form-mdctrl/index.mjs +1 -1
  23. package/es/control/form/form-detail/form-mdctrl/mdctrl-container/mdctrl-container.css +1 -1
  24. package/es/control/form/form-detail/form-mdctrl/mdctrl-container/mdctrl-container.d.ts +10 -2
  25. package/es/control/form/form-detail/form-mdctrl/mdctrl-container/mdctrl-container.mjs +29 -17
  26. package/es/control/form/form-detail/index.mjs +6 -0
  27. package/es/control/form/index.mjs +6 -0
  28. package/es/control/index.mjs +6 -0
  29. package/es/control/list/md-ctrl/md-ctrl.css +1 -1
  30. package/es/editor/dropdown-list/ibiz-dropdown/ibiz-dropdown.mjs +2 -1
  31. package/es/editor/dropdown-list/ibiz-dropdown-list/ibiz-dropdown-list.css +1 -1
  32. package/es/editor/dropdown-list/ibiz-dropdown-list/ibiz-dropdown-list.d.ts +2 -0
  33. package/es/editor/dropdown-list/ibiz-dropdown-list/ibiz-dropdown-list.mjs +17 -4
  34. package/es/editor/index.mjs +10 -0
  35. package/es/editor/span/span/span.css +1 -1
  36. package/es/editor/text-box/input/input.css +1 -1
  37. package/es/editor/upload/ibiz-carousel/ibiz-carousel.css +1 -0
  38. package/es/editor/upload/ibiz-carousel/ibiz-carousel.d.ts +65 -0
  39. package/es/editor/upload/ibiz-carousel/ibiz-carousel.mjs +71 -0
  40. package/es/editor/upload/ibiz-file-upload/ibiz-file-upload.css +1 -1
  41. package/es/editor/upload/ibiz-image-select/ibiz-image-select.css +1 -1
  42. package/es/editor/upload/ibiz-image-select/ibiz-image-select.d.ts +1 -2
  43. package/es/editor/upload/ibiz-image-select/ibiz-image-select.mjs +12 -5
  44. package/es/editor/upload/ibiz-image-upload/ibiz-image-upload.css +1 -1
  45. package/es/editor/upload/ibiz-image-upload/ibiz-image-upload.d.ts +1 -4
  46. package/es/editor/upload/ibiz-image-upload/ibiz-image-upload.mjs +13 -13
  47. package/es/editor/upload/index.d.ts +1 -0
  48. package/es/editor/upload/index.mjs +1 -0
  49. package/es/editor/upload/upload-editor.provider.mjs +3 -0
  50. package/es/index.d.ts +1 -0
  51. package/es/index.mjs +59 -1
  52. package/es/panel-component/auth-userinfo/auth-userinfo.css +1 -0
  53. package/es/panel-component/auth-userinfo/auth-userinfo.d.ts +29 -0
  54. package/es/panel-component/auth-userinfo/auth-userinfo.mjs +66 -0
  55. package/es/panel-component/auth-userinfo/auth-userinfo.provider.d.ts +15 -0
  56. package/es/panel-component/auth-userinfo/auth-userinfo.provider.mjs +21 -0
  57. package/es/panel-component/auth-userinfo/index.d.ts +26 -0
  58. package/es/panel-component/auth-userinfo/index.mjs +15 -0
  59. package/es/panel-component/index.mjs +6 -0
  60. package/es/panel-component/nav-pos-index/nav-pos-index.controller.mjs +1 -1
  61. package/es/panel-component/panel-carousel/index.d.ts +20 -0
  62. package/es/panel-component/panel-carousel/index.mjs +16 -0
  63. package/es/panel-component/panel-carousel/panel-carousel.controller.d.ts +50 -0
  64. package/es/panel-component/panel-carousel/panel-carousel.controller.mjs +76 -0
  65. package/es/panel-component/panel-carousel/panel-carousel.css +1 -0
  66. package/es/panel-component/panel-carousel/panel-carousel.d.ts +20 -0
  67. package/es/panel-component/panel-carousel/panel-carousel.mjs +42 -0
  68. package/es/panel-component/panel-carousel/panel-carousel.provider.d.ts +14 -0
  69. package/es/panel-component/panel-carousel/panel-carousel.provider.mjs +21 -0
  70. package/es/panel-component/panel-video-player/index.d.ts +22 -0
  71. package/es/panel-component/panel-video-player/index.mjs +19 -0
  72. package/es/panel-component/panel-video-player/panel-video-player.controller.d.ts +50 -0
  73. package/es/panel-component/panel-video-player/panel-video-player.controller.mjs +81 -0
  74. package/es/panel-component/panel-video-player/panel-video-player.css +1 -0
  75. package/es/panel-component/panel-video-player/panel-video-player.d.ts +22 -0
  76. package/es/panel-component/panel-video-player/panel-video-player.mjs +59 -0
  77. package/es/panel-component/panel-video-player/panel-video-player.provider.d.ts +14 -0
  78. package/es/panel-component/panel-video-player/panel-video-player.provider.mjs +21 -0
  79. package/es/panel-component/view-header-panel-container/view-header-panel-container.css +1 -1
  80. package/es/platform/index.d.ts +1 -0
  81. package/es/platform/index.mjs +3 -0
  82. package/es/platform/vue-browser-platform-provider.d.ts +20 -0
  83. package/es/platform/vue-browser-platform-provider.mjs +20 -0
  84. package/es/view-engine/mob-edit-view.engine.mjs +1 -2
  85. package/lib/common/carousel/carousel.cjs +63 -0
  86. package/lib/common/carousel/carousel.css +1 -0
  87. package/lib/common/index.cjs +2 -0
  88. package/lib/control/calendar/calendar.cjs +94 -12
  89. package/lib/control/calendar/calendar.css +1 -1
  90. package/lib/control/dashboard/dashboard.css +1 -1
  91. package/lib/control/form/form-detail/form-group-panel/form-group-panel.css +1 -1
  92. package/lib/control/form/form-detail/form-item/form-item-container/form-item-container.css +1 -1
  93. package/lib/control/form/form-detail/form-item/form-item.cjs +5 -1
  94. package/lib/control/form/form-detail/form-mdctrl/form-mdctrl-form/form-mdctrl-form.cjs +1 -0
  95. package/lib/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/repeater-multi-form/repeater-multi-form.cjs +2 -1
  96. package/lib/control/form/form-detail/form-mdctrl/form-mdctrl.cjs +6 -2
  97. package/lib/control/form/form-detail/form-mdctrl/form-mdctrl.css +1 -1
  98. package/lib/control/form/form-detail/form-mdctrl/index.cjs +6 -0
  99. package/lib/control/form/form-detail/form-mdctrl/mdctrl-container/mdctrl-container.cjs +28 -16
  100. package/lib/control/form/form-detail/form-mdctrl/mdctrl-container/mdctrl-container.css +1 -1
  101. package/lib/control/form/form-detail/index.cjs +12 -0
  102. package/lib/control/form/index.cjs +12 -0
  103. package/lib/control/index.cjs +12 -0
  104. package/lib/control/list/md-ctrl/md-ctrl.css +1 -1
  105. package/lib/editor/dropdown-list/ibiz-dropdown/ibiz-dropdown.cjs +2 -1
  106. package/lib/editor/dropdown-list/ibiz-dropdown-list/ibiz-dropdown-list.cjs +17 -4
  107. package/lib/editor/dropdown-list/ibiz-dropdown-list/ibiz-dropdown-list.css +1 -1
  108. package/lib/editor/index.cjs +10 -0
  109. package/lib/editor/span/span/span.css +1 -1
  110. package/lib/editor/text-box/input/input.css +1 -1
  111. package/lib/editor/upload/ibiz-carousel/ibiz-carousel.cjs +73 -0
  112. package/lib/editor/upload/ibiz-carousel/ibiz-carousel.css +1 -0
  113. package/lib/editor/upload/ibiz-file-upload/ibiz-file-upload.css +1 -1
  114. package/lib/editor/upload/ibiz-image-select/ibiz-image-select.cjs +12 -5
  115. package/lib/editor/upload/ibiz-image-select/ibiz-image-select.css +1 -1
  116. package/lib/editor/upload/ibiz-image-upload/ibiz-image-upload.cjs +12 -12
  117. package/lib/editor/upload/ibiz-image-upload/ibiz-image-upload.css +1 -1
  118. package/lib/editor/upload/index.cjs +2 -0
  119. package/lib/editor/upload/upload-editor.provider.cjs +3 -0
  120. package/lib/index.cjs +164 -38
  121. package/lib/panel-component/auth-userinfo/auth-userinfo.cjs +68 -0
  122. package/lib/panel-component/auth-userinfo/auth-userinfo.css +1 -0
  123. package/lib/panel-component/auth-userinfo/auth-userinfo.provider.cjs +23 -0
  124. package/lib/panel-component/auth-userinfo/index.cjs +20 -0
  125. package/lib/panel-component/index.cjs +6 -0
  126. package/lib/panel-component/nav-pos-index/nav-pos-index.controller.cjs +1 -1
  127. package/lib/panel-component/panel-carousel/index.cjs +23 -0
  128. package/lib/panel-component/panel-carousel/panel-carousel.cjs +47 -0
  129. package/lib/panel-component/panel-carousel/panel-carousel.controller.cjs +78 -0
  130. package/lib/panel-component/panel-carousel/panel-carousel.css +1 -0
  131. package/lib/panel-component/panel-carousel/panel-carousel.provider.cjs +23 -0
  132. package/lib/panel-component/panel-video-player/index.cjs +26 -0
  133. package/lib/panel-component/panel-video-player/panel-video-player.cjs +64 -0
  134. package/lib/panel-component/panel-video-player/panel-video-player.controller.cjs +83 -0
  135. package/lib/panel-component/panel-video-player/panel-video-player.css +1 -0
  136. package/lib/panel-component/panel-video-player/panel-video-player.provider.cjs +23 -0
  137. package/lib/panel-component/view-header-panel-container/view-header-panel-container.css +1 -1
  138. package/lib/platform/index.cjs +7 -0
  139. package/lib/platform/vue-browser-platform-provider.cjs +22 -0
  140. package/lib/view-engine/mob-edit-view.engine.cjs +1 -2
  141. package/package.json +6 -6
@@ -1,4 +1,4 @@
1
- import { computed, resolveComponent, createTextVNode, createVNode, defineComponent } from 'vue';
1
+ import { computed, resolveComponent, createVNode, createTextVNode, defineComponent } from 'vue';
2
2
  import { useNamespace } from '@ibiz-template/vue3-util';
3
3
  import './mdctrl-container.css';
4
4
 
@@ -17,6 +17,10 @@ const MDCtrlContainer = /* @__PURE__ */ defineComponent({
17
17
  items: {
18
18
  type: Object,
19
19
  required: true
20
+ },
21
+ caption: {
22
+ type: String,
23
+ required: false
20
24
  }
21
25
  },
22
26
  emits: {
@@ -30,17 +34,18 @@ const MDCtrlContainer = /* @__PURE__ */ defineComponent({
30
34
  const showActions = computed(() => {
31
35
  return props.enableCreate || props.enableDelete;
32
36
  });
33
- const renderAddBtn = (index) => {
37
+ const renderAddBtn = (index, showButton = true) => {
34
38
  if (!props.enableCreate) {
35
39
  return null;
36
40
  }
37
41
  return createVNode(resolveComponent("van-button"), {
38
- "class": [ns.be("item-actions", "create"), ns.be("item-actions", "btn")],
42
+ "class": [ns.e("create"), ns.e("btn")],
39
43
  "size": "small",
40
- "onClick": () => emit("addClick", index === void 0 ? void 0 : index + 1),
41
- "type": "primary"
44
+ "onClick": () => emit("addClick", index === void 0 ? void 0 : index + 1)
42
45
  }, {
43
- default: () => [createTextVNode("\u6DFB\u52A0")]
46
+ default: () => [showButton && createVNode(resolveComponent("van-icon"), {
47
+ "name": "plus"
48
+ }, null), createTextVNode("\u6DFB\u52A0")]
44
49
  });
45
50
  };
46
51
  const renderRemoveBtn = (item, index) => {
@@ -49,9 +54,8 @@ const MDCtrlContainer = /* @__PURE__ */ defineComponent({
49
54
  }
50
55
  if (ibiz.config.form.mdCtrlConfirmBeforeRemove) {
51
56
  return createVNode(resolveComponent("van-button"), {
52
- "class": [ns.be("item-actions", "remove"), ns.be("item-actions", "btn")],
57
+ "class": [ns.e("remove"), ns.e("btn")],
53
58
  "size": "small",
54
- "type": "danger",
55
59
  "onClick": () => {
56
60
  emit("removeClick", item, index);
57
61
  }
@@ -60,7 +64,7 @@ const MDCtrlContainer = /* @__PURE__ */ defineComponent({
60
64
  });
61
65
  }
62
66
  return createVNode(resolveComponent("van-button"), {
63
- "class": [ns.be("item-actions", "remove"), ns.be("item-actions", "btn")],
67
+ "class": [ns.e("remove"), ns.e("btn")],
64
68
  "type": "danger",
65
69
  "size": "small",
66
70
  "onClick": () => {
@@ -70,21 +74,21 @@ const MDCtrlContainer = /* @__PURE__ */ defineComponent({
70
74
  default: () => [createTextVNode("\u5220\u9664")]
71
75
  });
72
76
  };
73
- const renderBottomBtn = (item, index) => {
74
- return [renderAddBtn(index), renderRemoveBtn(item, index)];
77
+ const renderActionBtn = (item, index) => {
78
+ return [renderAddBtn(index, false), renderRemoveBtn(item, index)];
75
79
  };
76
80
  return {
77
81
  ns,
78
82
  showActions,
79
83
  renderAddBtn,
80
84
  renderRemoveBtn,
81
- renderBottomBtn
85
+ renderActionBtn
82
86
  };
83
87
  },
84
88
  render() {
85
89
  return createVNode("div", {
86
90
  "class": this.ns.b()
87
- }, [this.enableCreate && this.renderAddBtn(), this.items.map((item, index) => {
91
+ }, [this.items.map((item, index) => {
88
92
  const formComponent = this.$slots.item ? this.$slots.item({
89
93
  data: item,
90
94
  index
@@ -92,10 +96,18 @@ const MDCtrlContainer = /* @__PURE__ */ defineComponent({
92
96
  return createVNode("div", {
93
97
  "class": this.ns.b("item"),
94
98
  "key": item.id
95
- }, [formComponent, this.showActions && createVNode("div", {
96
- "class": this.ns.b("item-actions")
97
- }, [this.renderBottomBtn(item, index)])]);
98
- })]);
99
+ }, [createVNode("div", {
100
+ "class": this.ns.b("item-header")
101
+ }, [createVNode("div", {
102
+ "class": this.ns.be("item-header", "caption")
103
+ }, [this.caption || ""]), createVNode("div", {
104
+ "class": this.ns.be("item-header", "action")
105
+ }, [this.renderActionBtn(item, index)])]), createVNode("div", {
106
+ "class": this.ns.b("item-content")
107
+ }, [formComponent])]);
108
+ }), this.enableCreate && createVNode("div", {
109
+ "class": this.ns.b("footer")
110
+ }, [this.renderAddBtn()])]);
99
111
  }
100
112
  });
101
113
 
@@ -17,5 +17,11 @@ export { FormDRUIPartProvider } from './form-druipart/form-druipart.provider.mjs
17
17
  export { FormRawItemProvider } from './form-rawitem/form-rawitem.provider.mjs';
18
18
  export { FormTabPanelProvider } from './form-tab-panel/form-tab-panel.provider.mjs';
19
19
  export { FormTabPageProvider } from './form-tab-page/form-tab-page.provider.mjs';
20
+ export { MDCtrlContainer } from './form-mdctrl/mdctrl-container/mdctrl-container.mjs';
21
+ export { FormMDCtrlProvider } from './form-mdctrl/form-mdctrl.provider.mjs';
22
+ export { FormMDCtrlRepeater } from './form-mdctrl/form-mdctrl-repeater/form-mdctrl-repeater.mjs';
23
+ export { FormMDCtrlMD } from './form-mdctrl/form-mdctrl-md/form-mdctrl-md.mjs';
24
+ export { FormMDCtrlForm } from './form-mdctrl/form-mdctrl-form/form-mdctrl-form.mjs';
25
+ export { FormMDCtrl } from './form-mdctrl/form-mdctrl.mjs';
20
26
 
21
27
  "use strict";
@@ -22,5 +22,11 @@ export { IBizFormTabPanel } from './form-detail/form-tab-panel/index.mjs';
22
22
  export { FormTabPageProvider } from './form-detail/form-tab-page/form-tab-page.provider.mjs';
23
23
  export { IBizFormTabPage } from './form-detail/form-tab-page/index.mjs';
24
24
  export { IBizFormMDCtrl } from './form-detail/form-mdctrl/index.mjs';
25
+ export { MDCtrlContainer } from './form-detail/form-mdctrl/mdctrl-container/mdctrl-container.mjs';
26
+ export { FormMDCtrlProvider } from './form-detail/form-mdctrl/form-mdctrl.provider.mjs';
27
+ export { FormMDCtrlRepeater } from './form-detail/form-mdctrl/form-mdctrl-repeater/form-mdctrl-repeater.mjs';
28
+ export { FormMDCtrlMD } from './form-detail/form-mdctrl/form-mdctrl-md/form-mdctrl-md.mjs';
29
+ export { FormMDCtrlForm } from './form-detail/form-mdctrl/form-mdctrl-form/form-mdctrl-form.mjs';
30
+ export { FormMDCtrl } from './form-detail/form-mdctrl/form-mdctrl.mjs';
25
31
 
26
32
  "use strict";
@@ -37,6 +37,12 @@ export { IBizFormTabPanel } from './form/form-detail/form-tab-panel/index.mjs';
37
37
  export { FormTabPageProvider } from './form/form-detail/form-tab-page/form-tab-page.provider.mjs';
38
38
  export { IBizFormTabPage } from './form/form-detail/form-tab-page/index.mjs';
39
39
  export { IBizFormMDCtrl } from './form/form-detail/form-mdctrl/index.mjs';
40
+ export { MDCtrlContainer } from './form/form-detail/form-mdctrl/mdctrl-container/mdctrl-container.mjs';
41
+ export { FormMDCtrlProvider } from './form/form-detail/form-mdctrl/form-mdctrl.provider.mjs';
42
+ export { FormMDCtrlRepeater } from './form/form-detail/form-mdctrl/form-mdctrl-repeater/form-mdctrl-repeater.mjs';
43
+ export { FormMDCtrlMD } from './form/form-detail/form-mdctrl/form-mdctrl-md/form-mdctrl-md.mjs';
44
+ export { FormMDCtrlForm } from './form/form-detail/form-mdctrl/form-mdctrl-form/form-mdctrl-form.mjs';
45
+ export { FormMDCtrl } from './form/form-detail/form-mdctrl/form-mdctrl.mjs';
40
46
  export { IBizEditFormControl } from './form/edit-form/index.mjs';
41
47
  export { IBizFormControl } from './form/form/index.mjs';
42
48
  export { PickupViewPanelProvider } from './pickup-view-panel/pickup-view-panel.provider.mjs';
@@ -1 +1 @@
1
- .ibiz-control-mobmdctrl{--ibiz-control-mobmdctrl-text-color:var(--ibiz-color-text-0);--ibiz-control-mobmdctrl-hover-bg-color:var(--ibiz-color-primary);--ibiz-control-mobmdctrl-active-bg-color:#D1D1D5;--ibiz-control-mobmdctrl-active-color:var(--ibiz-color-bg-1);--ibiz-control-mobmdctrl-img-width:var(--ibiz-width-icon-extra-large);--ibiz-control-mobmdctrl-img-radius:var(--ibiz-border-radius-extra-small);--ibiz-control-mobmdctrl-padding:var(--ibiz-spacing-base) 0 var(--ibiz-spacing-base) var(--ibiz-spacing-base);--ibiz-control-mobmdctrl-group-padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-base);--ibiz-control-mobmdctrl-group-font:var(--ibiz-font-size-regular);--ibiz-control-mobmdctrl-icon-color:#A0A5AA;--ibiz-control-mobmdctrl-group-caption-color:#9A9B9F;--ibiz-control-mobmdctrl-load-more-font-size:var(--ibiz-font-size-small);--ibiz-control-mobmdctrl-font-size:var(--ibiz-font-size-header-5);--ibiz-control-mobmdctrl-right-icon-margin-right:1.3125rem;--van-cell-font-size:var(--ibiz-control-mobmdctrl-font-size);height:100%}.ibiz-control-mobmdctrl .van-list{height:100%}.ibiz-control-mobmdctrl .van-list .van-cell{padding:var(--ibiz-control-mobmdctrl-padding)}.ibiz-control-mobmdctrl .van-cell__right-icon{margin-right:var(--ibiz-control-mobmdctrl-right-icon-margin-right);color:var(--ibiz-control-mobmdctrl-icon-color)}.ibiz-control-mobmdctrl .van-cell--clickable:active{color:inherit;background-color:var(--ibiz-control-mobmdctrl-active-bg-color)}.ibiz-control-mobmdctrl .van-cell::after{width:100%}.ibiz-control-mobmdctrl .ibiz-control-panel{height:auto}.ibiz-control-mobmdctrl-item{--ibiz-control-mobmdctrl-text-color:var(--ibiz-color-text-0);--ibiz-control-mobmdctrl-hover-bg-color:var(--ibiz-color-primary);--ibiz-control-mobmdctrl-active-bg-color:#D1D1D5;--ibiz-control-mobmdctrl-active-color:var(--ibiz-color-bg-1);--ibiz-control-mobmdctrl-img-width:var(--ibiz-width-icon-extra-large);--ibiz-control-mobmdctrl-img-radius:var(--ibiz-border-radius-extra-small);--ibiz-control-mobmdctrl-padding:var(--ibiz-spacing-base) 0 var(--ibiz-spacing-base) var(--ibiz-spacing-base);--ibiz-control-mobmdctrl-group-padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-base);--ibiz-control-mobmdctrl-group-font:var(--ibiz-font-size-regular);--ibiz-control-mobmdctrl-icon-color:#A0A5AA;--ibiz-control-mobmdctrl-group-caption-color:#9A9B9F;--ibiz-control-mobmdctrl-load-more-font-size:var(--ibiz-font-size-small);--ibiz-control-mobmdctrl-font-size:var(--ibiz-font-size-header-5);--ibiz-control-mobmdctrl-right-icon-margin-right:1.3125rem}.ibiz-control-mobmdctrl-item--right{margin-right:var(--ibiz-control-mobmdctrl-right-icon-margin-right)}.ibiz-control-mobmdctrl-image{--ibiz-control-mobmdctrl-text-color:var(--ibiz-color-text-0);--ibiz-control-mobmdctrl-hover-bg-color:var(--ibiz-color-primary);--ibiz-control-mobmdctrl-active-bg-color:#D1D1D5;--ibiz-control-mobmdctrl-active-color:var(--ibiz-color-bg-1);--ibiz-control-mobmdctrl-img-width:var(--ibiz-width-icon-extra-large);--ibiz-control-mobmdctrl-img-radius:var(--ibiz-border-radius-extra-small);--ibiz-control-mobmdctrl-padding:var(--ibiz-spacing-base) 0 var(--ibiz-spacing-base) var(--ibiz-spacing-base);--ibiz-control-mobmdctrl-group-padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-base);--ibiz-control-mobmdctrl-group-font:var(--ibiz-font-size-regular);--ibiz-control-mobmdctrl-icon-color:#A0A5AA;--ibiz-control-mobmdctrl-group-caption-color:#9A9B9F;--ibiz-control-mobmdctrl-load-more-font-size:var(--ibiz-font-size-small);--ibiz-control-mobmdctrl-font-size:var(--ibiz-font-size-header-5);--ibiz-control-mobmdctrl-right-icon-margin-right:1.3125rem;width:var(--ibiz-control-mobmdctrl-img-width);margin-right:var(--ibiz-control-mobmdctrl-padding);border-radius:var(--ibiz-control-mobmdctrl-img-radius)}.ibiz-control-mobmdctrl-group-caption{--ibiz-control-mobmdctrl-text-color:var(--ibiz-color-text-0);--ibiz-control-mobmdctrl-hover-bg-color:var(--ibiz-color-primary);--ibiz-control-mobmdctrl-active-bg-color:#D1D1D5;--ibiz-control-mobmdctrl-active-color:var(--ibiz-color-bg-1);--ibiz-control-mobmdctrl-img-width:var(--ibiz-width-icon-extra-large);--ibiz-control-mobmdctrl-img-radius:var(--ibiz-border-radius-extra-small);--ibiz-control-mobmdctrl-padding:var(--ibiz-spacing-base) 0 var(--ibiz-spacing-base) var(--ibiz-spacing-base);--ibiz-control-mobmdctrl-group-padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-base);--ibiz-control-mobmdctrl-group-font:var(--ibiz-font-size-regular);--ibiz-control-mobmdctrl-icon-color:#A0A5AA;--ibiz-control-mobmdctrl-group-caption-color:#9A9B9F;--ibiz-control-mobmdctrl-load-more-font-size:var(--ibiz-font-size-small);--ibiz-control-mobmdctrl-font-size:var(--ibiz-font-size-header-5);--ibiz-control-mobmdctrl-right-icon-margin-right:1.3125rem;padding:var(--ibiz-control-mobmdctrl-group-padding);font-size:var(--ibiz-control-mobmdctrl-group-font);color:var(--ibiz-control-mobmdctrl-group-caption-color)}.ibiz-control-mobmdctrl-load-more{display:flex;justify-content:center;padding:var(--ibiz-spacing-tight);font-size:var(--ibiz-control-mobmdctrl-load-more-font-size);color:var(--ibiz-color-text-2)}.ibiz-control-mobmdctrl-load-more span{padding:var(--ibiz-spacing-extra-tight) var(--ibiz-spacing-base);border:1px solid var(--ibiz-color-border);border-radius:var(--ibiz-border-radius-full)}
1
+ .ibiz-control-mobmdctrl{--ibiz-control-mobmdctrl-text-color:var(--ibiz-color-text-0);--ibiz-control-mobmdctrl-hover-bg-color:var(--ibiz-color-primary);--ibiz-control-mobmdctrl-active-bg-color:#D1D1D5;--ibiz-control-mobmdctrl-active-color:var(--ibiz-color-bg-1);--ibiz-control-mobmdctrl-img-width:var(--ibiz-width-icon-extra-large);--ibiz-control-mobmdctrl-img-radius:var(--ibiz-border-radius-extra-small);--ibiz-control-mobmdctrl-padding:var(--ibiz-spacing-base) 0 var(--ibiz-spacing-base) var(--ibiz-spacing-base);--ibiz-control-mobmdctrl-group-padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-base);--ibiz-control-mobmdctrl-group-font:var(--ibiz-font-size-regular);--ibiz-control-mobmdctrl-icon-color:#A0A5AA;--ibiz-control-mobmdctrl-group-caption-color:#9A9B9F;--ibiz-control-mobmdctrl-load-more-font-size:var(--ibiz-font-size-small);--ibiz-control-mobmdctrl-font-size:var(--ibiz-font-size-header-5);--ibiz-control-mobmdctrl-right-icon-margin-right:1.3125rem;--van-cell-font-size:var(--ibiz-control-mobmdctrl-font-size);height:100%}.ibiz-control-mobmdctrl .van-list{height:100%}.ibiz-control-mobmdctrl .van-list .van-cell{padding:var(--ibiz-control-mobmdctrl-padding)}.ibiz-control-mobmdctrl .van-cell__right-icon{margin-right:var(--ibiz-control-mobmdctrl-right-icon-margin-right);color:var(--ibiz-control-mobmdctrl-icon-color)}.ibiz-control-mobmdctrl .van-cell--clickable:active{color:inherit}.ibiz-control-mobmdctrl .van-cell::after{width:100%}.ibiz-control-mobmdctrl .ibiz-control-panel{height:auto}.ibiz-control-mobmdctrl-item{--ibiz-control-mobmdctrl-text-color:var(--ibiz-color-text-0);--ibiz-control-mobmdctrl-hover-bg-color:var(--ibiz-color-primary);--ibiz-control-mobmdctrl-active-bg-color:#D1D1D5;--ibiz-control-mobmdctrl-active-color:var(--ibiz-color-bg-1);--ibiz-control-mobmdctrl-img-width:var(--ibiz-width-icon-extra-large);--ibiz-control-mobmdctrl-img-radius:var(--ibiz-border-radius-extra-small);--ibiz-control-mobmdctrl-padding:var(--ibiz-spacing-base) 0 var(--ibiz-spacing-base) var(--ibiz-spacing-base);--ibiz-control-mobmdctrl-group-padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-base);--ibiz-control-mobmdctrl-group-font:var(--ibiz-font-size-regular);--ibiz-control-mobmdctrl-icon-color:#A0A5AA;--ibiz-control-mobmdctrl-group-caption-color:#9A9B9F;--ibiz-control-mobmdctrl-load-more-font-size:var(--ibiz-font-size-small);--ibiz-control-mobmdctrl-font-size:var(--ibiz-font-size-header-5);--ibiz-control-mobmdctrl-right-icon-margin-right:1.3125rem}.ibiz-control-mobmdctrl-item--right{margin-right:var(--ibiz-control-mobmdctrl-right-icon-margin-right)}.ibiz-control-mobmdctrl-image{--ibiz-control-mobmdctrl-text-color:var(--ibiz-color-text-0);--ibiz-control-mobmdctrl-hover-bg-color:var(--ibiz-color-primary);--ibiz-control-mobmdctrl-active-bg-color:#D1D1D5;--ibiz-control-mobmdctrl-active-color:var(--ibiz-color-bg-1);--ibiz-control-mobmdctrl-img-width:var(--ibiz-width-icon-extra-large);--ibiz-control-mobmdctrl-img-radius:var(--ibiz-border-radius-extra-small);--ibiz-control-mobmdctrl-padding:var(--ibiz-spacing-base) 0 var(--ibiz-spacing-base) var(--ibiz-spacing-base);--ibiz-control-mobmdctrl-group-padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-base);--ibiz-control-mobmdctrl-group-font:var(--ibiz-font-size-regular);--ibiz-control-mobmdctrl-icon-color:#A0A5AA;--ibiz-control-mobmdctrl-group-caption-color:#9A9B9F;--ibiz-control-mobmdctrl-load-more-font-size:var(--ibiz-font-size-small);--ibiz-control-mobmdctrl-font-size:var(--ibiz-font-size-header-5);--ibiz-control-mobmdctrl-right-icon-margin-right:1.3125rem;width:var(--ibiz-control-mobmdctrl-img-width);margin-right:var(--ibiz-control-mobmdctrl-padding);border-radius:var(--ibiz-control-mobmdctrl-img-radius)}.ibiz-control-mobmdctrl-group-caption{--ibiz-control-mobmdctrl-text-color:var(--ibiz-color-text-0);--ibiz-control-mobmdctrl-hover-bg-color:var(--ibiz-color-primary);--ibiz-control-mobmdctrl-active-bg-color:#D1D1D5;--ibiz-control-mobmdctrl-active-color:var(--ibiz-color-bg-1);--ibiz-control-mobmdctrl-img-width:var(--ibiz-width-icon-extra-large);--ibiz-control-mobmdctrl-img-radius:var(--ibiz-border-radius-extra-small);--ibiz-control-mobmdctrl-padding:var(--ibiz-spacing-base) 0 var(--ibiz-spacing-base) var(--ibiz-spacing-base);--ibiz-control-mobmdctrl-group-padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-base);--ibiz-control-mobmdctrl-group-font:var(--ibiz-font-size-regular);--ibiz-control-mobmdctrl-icon-color:#A0A5AA;--ibiz-control-mobmdctrl-group-caption-color:#9A9B9F;--ibiz-control-mobmdctrl-load-more-font-size:var(--ibiz-font-size-small);--ibiz-control-mobmdctrl-font-size:var(--ibiz-font-size-header-5);--ibiz-control-mobmdctrl-right-icon-margin-right:1.3125rem;padding:var(--ibiz-control-mobmdctrl-group-padding);font-size:var(--ibiz-control-mobmdctrl-group-font);color:var(--ibiz-control-mobmdctrl-group-caption-color)}.ibiz-control-mobmdctrl-load-more{display:flex;justify-content:center;padding:var(--ibiz-spacing-tight);font-size:var(--ibiz-control-mobmdctrl-load-more-font-size);color:var(--ibiz-color-text-2)}.ibiz-control-mobmdctrl-load-more span{padding:var(--ibiz-spacing-extra-tight) var(--ibiz-spacing-base);border:1px solid var(--ibiz-color-border);border-radius:var(--ibiz-border-radius-full)}
@@ -85,7 +85,7 @@ const IBizDropdown = /* @__PURE__ */ defineComponent({
85
85
  }) => {
86
86
  showPicker.value = false;
87
87
  if (Array.isArray(selectedOptions)) {
88
- curValue.value = selectedOptions[0].text;
88
+ curValue.value = selectedOptions[0].value;
89
89
  const emitVal = selectedOptions.map((val) => {
90
90
  return val.value;
91
91
  }).join(",");
@@ -134,6 +134,7 @@ const IBizDropdown = /* @__PURE__ */ defineComponent({
134
134
  }, {
135
135
  default: () => [createVNode(resolveComponent("van-picker"), {
136
136
  "columns": this.items,
137
+ "confirm-button-text": "\u786E\u5B9A",
137
138
  "onCancel": () => {
138
139
  this.showPicker = false;
139
140
  },
@@ -1 +1 @@
1
- .ibiz-dropdown-list{height:100%;--van-tag-radius:3.125rem}.ibiz-dropdown-list .van-field__control{gap:.5rem}.ibiz-dropdown-list .van-field__control .van-tag{height:100%;padding:.3125rem;--van-tag-font-size:var(--ibiz-form-item-font-size)}.ibiz-dropdown-list .van-picker .van-picker__mask{background-image:var(--ibiz-color-overlay-bg)}.ibiz-dropdown-list .ibiz-dropdown-list-toolbar{display:flex;align-items:center;justify-content:space-between;padding:var(--ibiz-spacing-base-tight)}.ibiz-dropdown-list .ibiz-dropdown-list-toolbar button{background-color:transparent;border:none}.ibiz-dropdown-list-toolbar__confirm{color:var(--ibiz-color-primary)}.ibiz-dropdown-list .ibiz-dropdown-list-columns{min-height:30vh;max-height:50vh;overflow:auto}.ibiz-dropdown-list .ibiz-dropdown-list-columns .van-cell-group{height:100%;overflow:auto}.ibiz-dropdown-list .ibiz-dropdown-list-columns .van-cell{padding:var(--ibiz-spacing-base-tight)}.ibiz-dropdown-list input:disabled{color:var(--ibiz-form-item-disabled-color);background-color:var(--ibiz-form-item-disabled-bg-color);border-color:var(--ibiz-form-item-disabled-border-color);-webkit-text-fill-color:var(--ibiz-form-item-disabled-color)}.ibiz-dropdown-list--disabled{opacity:.8}.ibiz-dropdown-list--readonly{color:var(--ibiz-form-item-readonly-color);-webkit-text-fill-color:var(--ibiz-form-item-readonly-color)}
1
+ .ibiz-dropdown-list{height:100%;--van-tag-radius:3.125rem}.ibiz-dropdown-list .van-field__control{gap:.5rem}.ibiz-dropdown-list .van-field__control .van-tag{height:100%;padding:.3125rem;--van-tag-font-size:var(--ibiz-form-item-font-size)}.ibiz-dropdown-list .van-picker .van-picker__mask{background-image:var(--ibiz-color-overlay-bg)}.ibiz-dropdown-list .ibiz-dropdown-list-toolbar{display:flex;align-items:center;justify-content:space-between;padding:var(--ibiz-spacing-base-tight)}.ibiz-dropdown-list .ibiz-dropdown-list-toolbar button{padding:0;background-color:transparent;border:none}.ibiz-dropdown-list-toolbar__confirm{color:var(--ibiz-color-primary)}.ibiz-dropdown-list-toolbar__cancel{color:var(--ibiz-color-text-3)}.ibiz-dropdown-list .ibiz-dropdown-list-columns{min-height:30vh;max-height:50vh;overflow:auto}.ibiz-dropdown-list .ibiz-dropdown-list-columns .van-cell-group{height:100%;overflow:auto}.ibiz-dropdown-list .ibiz-dropdown-list-columns .van-cell{padding:var(--ibiz-spacing-base-tight)}.ibiz-dropdown-list input:disabled{color:var(--ibiz-form-item-disabled-color);background-color:var(--ibiz-form-item-disabled-bg-color);border-color:var(--ibiz-form-item-disabled-border-color);-webkit-text-fill-color:var(--ibiz-form-item-disabled-color)}.ibiz-dropdown-list--disabled{opacity:.8}.ibiz-dropdown-list--readonly{color:var(--ibiz-form-item-readonly-color);-webkit-text-fill-color:var(--ibiz-form-item-readonly-color)}.ibiz-dropdown-list .van-cell-group--inset{margin:0}.ibiz-dropdown-list__select::after{display:none}
@@ -27,7 +27,9 @@ export declare const IBizDropdownList: import("vue").DefineComponent<{
27
27
  showPicker: Ref<boolean>;
28
28
  valueText: import("vue").ComputedRef<string>;
29
29
  selectItems: Ref<IData[]>;
30
+ checkboxRefs: Ref<IData>;
30
31
  onBlur: () => void;
32
+ toggle: (index: number) => void;
31
33
  onFocus: () => void;
32
34
  onCancel: () => void;
33
35
  onRemove: (item: IData) => void;
@@ -84,6 +84,10 @@ const IBizDropdownList = /* @__PURE__ */ defineComponent({
84
84
  return isInclude;
85
85
  }).map((item) => item.text).join(",");
86
86
  });
87
+ const checkboxRefs = ref([]);
88
+ const toggle = (index) => {
89
+ checkboxRefs.value[index].toggle();
90
+ };
87
91
  return {
88
92
  ns,
89
93
  c,
@@ -92,7 +96,9 @@ const IBizDropdownList = /* @__PURE__ */ defineComponent({
92
96
  showPicker,
93
97
  valueText,
94
98
  selectItems,
99
+ checkboxRefs,
95
100
  onBlur,
101
+ toggle,
96
102
  onFocus,
97
103
  onCancel,
98
104
  onRemove,
@@ -115,7 +121,7 @@ const IBizDropdownList = /* @__PURE__ */ defineComponent({
115
121
  "onClick": () => {
116
122
  this.onConfirm();
117
123
  }
118
- }, [createTextVNode("\u786E\u8BA4")])]);
124
+ }, [createTextVNode("\u786E\u5B9A")])]);
119
125
  };
120
126
  const renderColumns = () => {
121
127
  let _slot;
@@ -124,14 +130,21 @@ const IBizDropdownList = /* @__PURE__ */ defineComponent({
124
130
  "modelValue": this.curValue,
125
131
  "onUpdate:modelValue": ($event) => this.curValue = $event
126
132
  }, {
127
- default: () => [createVNode(resolveComponent("van-cell-group"), null, _isSlot(_slot = this.items.map((item) => {
133
+ default: () => [createVNode(resolveComponent("van-cell-group"), {
134
+ "inset": true
135
+ }, _isSlot(_slot = this.items.map((item, index) => {
128
136
  return createVNode(resolveComponent("van-cell"), {
129
- "title": item.text
137
+ "title": item.text,
138
+ "clickable": true,
139
+ "onClick": () => {
140
+ this.toggle(index);
141
+ }
130
142
  }, {
131
143
  "right-icon": () => {
132
144
  return createVNode(resolveComponent("van-checkbox"), {
145
+ "ref": (el) => this.checkboxRefs[index] = el,
133
146
  "name": item.value,
134
- "shape": "square"
147
+ "onClick": (e) => e.stopPropagation()
135
148
  }, null);
136
149
  }
137
150
  });
@@ -40,6 +40,7 @@ import { IBizDateRangePicker } from './date-range/ibiz-date-range-picker/ibiz-da
40
40
  import { IBizCascader } from './cascader/ibiz-cascader/ibiz-cascader.mjs';
41
41
  import { IBizColorPicker } from './color-picker/ibiz-color-picker/ibiz-color-picker.mjs';
42
42
  import { IBizPickerSelectView } from './data-picker/ibiz-picker-select-view/ibiz-picker-select-view.mjs';
43
+ import { IBizEditorCarousel } from './upload/ibiz-carousel/ibiz-carousel.mjs';
43
44
  import { SpanEditorProvider } from './span/span-editor.provider.mjs';
44
45
  import { TextBoxEditorProvider } from './text-box/text-box-editor.provider.mjs';
45
46
  import { DropDownListEditorProvider } from './dropdown-list/dropdown-list-editor.provider.mjs';
@@ -84,6 +85,7 @@ const IBizEditor = {
84
85
  v.component(IBizColorPicker.name, IBizColorPicker);
85
86
  v.component(IBizPickerSelectView.name, IBizPickerSelectView);
86
87
  v.component(IBizMarkDown.name, IBizMarkDown);
88
+ v.component(IBizEditorCarousel.name, IBizEditorCarousel);
87
89
  registerEditorProvider("SPAN", () => new SpanEditorProvider());
88
90
  const textBoxEditorProvider = new TextBoxEditorProvider();
89
91
  registerEditorProvider("MOBTEXT", () => textBoxEditorProvider);
@@ -164,6 +166,14 @@ const IBizEditor = {
164
166
  "MOBDATERANGE_NOTIME",
165
167
  () => new DateRangeEditorProvider()
166
168
  );
169
+ registerEditorProvider(
170
+ "FIELD_IMAGE_PICTURE_ONE",
171
+ () => new FileUploaderEditorProvider("MOBPICTURE_RAW")
172
+ );
173
+ registerEditorProvider(
174
+ "FIELD_CAROUSEL_PICTURE",
175
+ () => new FileUploaderEditorProvider("CAROUSEL")
176
+ );
167
177
  }
168
178
  };
169
179
 
@@ -1 +1 @@
1
- .ibiz-span{display:inline-block;width:100%;font-size:var(--ibiz-form-item-font-size);line-height:var(--ibiz-editor-default-line-height);color:inherit;white-space:pre-line;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ibiz-span--disabled{color:var(--ibiz-form-item-disabled-color)}.ibiz-span--readonly{color:var(--ibiz-form-item-readonly-color)}
1
+ .ibiz-span{display:block;width:100%;font-size:var(--ibiz-form-item-font-size);line-height:var(--ibiz-editor-default-line-height);color:inherit;white-space:pre-line;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ibiz-span--disabled{color:var(--ibiz-form-item-disabled-color)}.ibiz-span--readonly{color:var(--ibiz-form-item-readonly-color)}
@@ -1 +1 @@
1
- .ibiz-input{height:100%}.ibiz-input input{font-size:var(--ibiz-form-item-font-size);line-height:var(--ibiz-form-item-line-height);color:var(--ibiz-form-item-text-color);border-color:var(--ibiz-form-item-border-color);-webkit-text-fill-color:var(--ibiz-form-item-text-color)}.ibiz-input input::-moz-placeholder{color:var(--ibiz-form-item-placeholder-color);-webkit-text-fill-color:var(--ibiz-form-item-placeholder-color)}.ibiz-input input::placeholder{color:var(--ibiz-form-item-placeholder-color);-webkit-text-fill-color:var(--ibiz-form-item-placeholder-color)}.ibiz-input input:disabled{color:var(--ibiz-form-item-disabled-color);background-color:var(--ibiz-form-item-disabled-bg-color);border-color:var(--ibiz-form-item-disabled-border-color);-webkit-text-fill-color:var(--ibiz-form-item-disabled-color)}.ibiz-input--readonly{color:var(--ibiz-form-item-readonly-color);-webkit-text-fill-color:var(--ibiz-form-item-readonly-color)}.ibiz-input .ibiz-input__unit{font-size:var(--ibiz-form-item-font-size);font-style:normal}
1
+ .ibiz-input{height:100%}.ibiz-input .ibiz-input{font-size:var(--ibiz-form-item-font-size)}.ibiz-input input{font-size:var(--ibiz-form-item-font-size);line-height:var(--ibiz-form-item-line-height);color:var(--ibiz-form-item-text-color);border-color:var(--ibiz-form-item-border-color);-webkit-text-fill-color:var(--ibiz-form-item-text-color)}.ibiz-input input::-moz-placeholder{color:var(--ibiz-form-item-placeholder-color);-webkit-text-fill-color:var(--ibiz-form-item-placeholder-color)}.ibiz-input input::placeholder{color:var(--ibiz-form-item-placeholder-color);-webkit-text-fill-color:var(--ibiz-form-item-placeholder-color)}.ibiz-input input:disabled{color:var(--ibiz-form-item-disabled-color);background-color:var(--ibiz-form-item-disabled-bg-color);border-color:var(--ibiz-form-item-disabled-border-color);-webkit-text-fill-color:var(--ibiz-form-item-disabled-color)}.ibiz-input--readonly{color:var(--ibiz-form-item-readonly-color);-webkit-text-fill-color:var(--ibiz-form-item-readonly-color)}.ibiz-input .ibiz-input__unit{font-size:var(--ibiz-form-item-font-size);font-style:normal}
@@ -0,0 +1 @@
1
+ .ibiz-carousel{height:100%}.ibiz-carousel .van-swipe{height:100%}.ibiz-carousel .van-swipe-item img{box-sizing:border-box;display:block;width:100%;height:100%;padding:1.875rem 3.75rem;pointer-events:none;background-color:var(--van-white)}
@@ -0,0 +1,65 @@
1
+ import './ibiz-carousel.scss';
2
+ import { UploadEditorController } from '../upload-editor.controller';
3
+ export declare const IBizEditorCarousel: import("vue").DefineComponent<{
4
+ value: StringConstructor;
5
+ controller: import("@ibiz-template/vue3-util").RequiredProp<import("vue").PropType<UploadEditorController>, undefined, undefined>;
6
+ data: import("@ibiz-template/vue3-util").RequiredProp<import("vue").PropType<IData>, undefined, undefined>;
7
+ disabled: {
8
+ type: BooleanConstructor;
9
+ };
10
+ readonly: {
11
+ type: BooleanConstructor;
12
+ default: boolean;
13
+ };
14
+ autoFocus: {
15
+ type: BooleanConstructor;
16
+ default: boolean;
17
+ };
18
+ overflowMode: {
19
+ type: StringConstructor;
20
+ };
21
+ }, {
22
+ ns: import("@ibiz-template/core").Namespace;
23
+ c: UploadEditorController;
24
+ images: import("vue").ComputedRef<{
25
+ rawContent: string | undefined;
26
+ }[]>;
27
+ autoplay: number;
28
+ duration: number;
29
+ showIndicators: boolean;
30
+ touchable: boolean;
31
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
32
+ change: (_value: unknown, _name?: string | undefined) => boolean;
33
+ blur: (_event?: IData | undefined) => boolean;
34
+ focus: (_event?: IData | undefined) => boolean;
35
+ enter: (_event?: IData | undefined) => boolean;
36
+ infoTextChange: (_text: string) => boolean;
37
+ }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
38
+ value: StringConstructor;
39
+ controller: import("@ibiz-template/vue3-util").RequiredProp<import("vue").PropType<UploadEditorController>, undefined, undefined>;
40
+ data: import("@ibiz-template/vue3-util").RequiredProp<import("vue").PropType<IData>, undefined, undefined>;
41
+ disabled: {
42
+ type: BooleanConstructor;
43
+ };
44
+ readonly: {
45
+ type: BooleanConstructor;
46
+ default: boolean;
47
+ };
48
+ autoFocus: {
49
+ type: BooleanConstructor;
50
+ default: boolean;
51
+ };
52
+ overflowMode: {
53
+ type: StringConstructor;
54
+ };
55
+ }>> & {
56
+ onFocus?: ((_event?: IData | undefined) => any) | undefined;
57
+ onBlur?: ((_event?: IData | undefined) => any) | undefined;
58
+ onChange?: ((_value: unknown, _name?: string | undefined) => any) | undefined;
59
+ onEnter?: ((_event?: IData | undefined) => any) | undefined;
60
+ onInfoTextChange?: ((_text: string) => any) | undefined;
61
+ }, {
62
+ disabled: boolean;
63
+ readonly: boolean;
64
+ autoFocus: boolean;
65
+ }, {}>;
@@ -0,0 +1,71 @@
1
+ import { computed, resolveComponent, createVNode, defineComponent } from 'vue';
2
+ import { getUploadProps, getEditorEmits, useNamespace } from '@ibiz-template/vue3-util';
3
+ import './ibiz-carousel.css';
4
+ import { toNumber } from 'lodash-es';
5
+ import { useVanUpload } from '../use/use-van-upload.mjs';
6
+
7
+ "use strict";
8
+ const IBizEditorCarousel = /* @__PURE__ */ defineComponent({
9
+ name: "IBizEditorCarousel",
10
+ props: getUploadProps(),
11
+ emits: getEditorEmits(),
12
+ setup(props, {
13
+ emit
14
+ }) {
15
+ const ns = useNamespace("carousel");
16
+ const c = props.controller;
17
+ const {
18
+ files
19
+ } = useVanUpload(props, (value) => {
20
+ emit("change", value);
21
+ }, c);
22
+ const editorModel = c.model;
23
+ let autoplay = 3e3;
24
+ let duration = 500;
25
+ let showIndicators = true;
26
+ let touchable = true;
27
+ if (editorModel.editorParams) {
28
+ if (editorModel.editorParams.autoplay) {
29
+ autoplay = toNumber(editorModel.editorParams.autoplay);
30
+ }
31
+ if (editorModel.editorParams.duration) {
32
+ duration = toNumber(editorModel.editorParams.duration);
33
+ }
34
+ if (editorModel.editorParams.showIndicators) {
35
+ showIndicators = editorModel.editorParams.showIndicators === "true";
36
+ }
37
+ if (editorModel.editorParams.touchable) {
38
+ touchable = editorModel.editorParams.touchable === "true";
39
+ }
40
+ }
41
+ const images = computed(() => {
42
+ return files.value.map((item) => {
43
+ return {
44
+ rawContent: item.url
45
+ };
46
+ });
47
+ });
48
+ return {
49
+ ns,
50
+ c,
51
+ images,
52
+ autoplay,
53
+ duration,
54
+ showIndicators,
55
+ touchable
56
+ };
57
+ },
58
+ render() {
59
+ return createVNode("div", {
60
+ "class": [this.ns.b(), this.disabled ? this.ns.m("disabled") : "", this.readonly ? this.ns.m("readonly") : ""]
61
+ }, [createVNode(resolveComponent("iBizCarousel"), {
62
+ "images": this.images,
63
+ "autoplay": this.autoplay,
64
+ "duration": this.duration,
65
+ "showIndicators": this.showIndicators,
66
+ "touchable": this.touchable
67
+ }, null)]);
68
+ }
69
+ });
70
+
71
+ export { IBizEditorCarousel };
@@ -1 +1 @@
1
- .ibiz-file-upload{width:100%}.ibiz-file-upload .van-uploader__preview{display:none}.ibiz-file-upload .ibiz-file-upload-button{width:1.25rem;height:1.25rem;font-size:var(--ibiz-font-size-header-4);color:var(--ibiz-color-text-2);background:0 0;border:none;border-radius:50%}.ibiz-file-upload .van-uploader__preview .van-uploader__file-icon{display:none}.ibiz-file-upload .van-uploader__preview .van-uploader__file-name{display:none}.ibiz-file-upload .ibiz-file-upload-item-cover{position:absolute;top:0;bottom:0;box-sizing:border-box;display:flex;align-items:center;justify-content:center;width:100%;font-size:.75rem;line-height:initial;color:#fff;text-align:center;background:var(--ibiz-color-overlay-bg)}.ibiz-file-upload .ibiz-file-upload-preview{width:100%;margin-top:.625rem}.ibiz-file-upload .ibiz-file-upload-preview-item{display:flex;align-items:center;justify-content:space-between;width:100%;padding:0 var(--ibiz-spacing-tight);margin-bottom:var(--ibiz-spacing-tight);background:var(--ibiz-color-disabled-bg);border-radius:var(--ibiz-border-radius-small)}.ibiz-file-upload .ibiz-file-upload-preview-item:last-child{margin:0;border-width:0}.ibiz-file-upload .ibiz-file-upload-preview-item-img{flex-shrink:0;width:2.5rem;min-width:2.5rem;height:2.5rem;padding:.375rem}.ibiz-file-upload .ibiz-file-upload-preview-item-img img{width:100%;height:100%;border-radius:.25rem}.ibiz-file-upload .ibiz-file-upload-preview-item-left{display:flex;flex-grow:1;align-items:center;width:calc(100% - 1.25rem)}.ibiz-file-upload .ibiz-file-upload-preview-item-text{display:flex;flex:1;align-items:center;width:calc(100% - 2.5rem);padding-left:var(--ibiz-spacing-tight);font-size:.875rem}.ibiz-file-upload .ibiz-file-upload-preview-item-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ibiz-file-upload .ibiz-file-upload-preview-item-action{display:flex;flex-shrink:0;align-items:center;justify-content:flex-end;width:1.25rem;color:var(--ibiz-color-overlay-bg);text-align:right}.ibiz-file-upload .van-uploader__input-wrapper{width:100%;text-align:right}.ibiz-form-item-container--top .ibiz-file-upload .van-uploader{position:absolute;top:0;right:0;width:100%}
1
+ .ibiz-file-upload{display:flex;flex-direction:column;width:100%}.ibiz-file-upload .van-uploader__preview{display:none}.ibiz-file-upload .van-uploader{width:100%}.ibiz-file-upload .ibiz-file-upload-button{width:1.25rem;height:1.25rem;font-size:var(--ibiz-font-size-header-4);color:var(--ibiz-color-text-2);background:0 0;border:none;border-radius:50%}.ibiz-file-upload .van-uploader__preview .van-uploader__file-icon{display:none}.ibiz-file-upload .van-uploader__preview .van-uploader__file-name{display:none}.ibiz-file-upload .ibiz-file-upload-item-cover{position:absolute;top:0;bottom:0;box-sizing:border-box;display:flex;align-items:center;justify-content:center;width:100%;font-size:.75rem;line-height:initial;color:#fff;text-align:center;background:var(--ibiz-color-overlay-bg)}.ibiz-file-upload .ibiz-file-upload-preview{width:100%;margin-top:.625rem}.ibiz-file-upload .ibiz-file-upload-preview-item{display:flex;align-items:center;justify-content:space-between;width:100%;padding:0 var(--ibiz-spacing-tight);margin-bottom:var(--ibiz-spacing-tight);background:var(--ibiz-color-disabled-bg);border-radius:var(--ibiz-border-radius-small)}.ibiz-file-upload .ibiz-file-upload-preview-item:last-child{margin:0;border-width:0}.ibiz-file-upload .ibiz-file-upload-preview-item-img{flex-shrink:0;width:2.5rem;min-width:2.5rem;height:2.5rem;padding:.375rem}.ibiz-file-upload .ibiz-file-upload-preview-item-img img{width:100%;height:100%;border-radius:.25rem}.ibiz-file-upload .ibiz-file-upload-preview-item-left{display:flex;flex-grow:1;align-items:center;width:calc(100% - 1.25rem)}.ibiz-file-upload .ibiz-file-upload-preview-item-text{display:flex;flex:1;align-items:center;width:calc(100% - 2.5rem);padding-left:var(--ibiz-spacing-tight);font-size:.875rem}.ibiz-file-upload .ibiz-file-upload-preview-item-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ibiz-file-upload .ibiz-file-upload-preview-item-action{display:flex;flex-shrink:0;align-items:center;justify-content:flex-end;width:1.25rem;color:var(--ibiz-color-overlay-bg);text-align:right}.ibiz-file-upload .van-uploader__input-wrapper{width:100%;text-align:right}.ibiz-form-item-container--top .ibiz-file-upload .van-uploader{position:absolute;top:0;right:0;width:100%}.ibiz-file-upload--readonly .ibiz-file-upload-preview{margin-top:0}.ibiz-file-upload--disabled .ibiz-file-upload-preview{margin-top:0}
@@ -1 +1 @@
1
- .ibiz-image-select .van-uploader__preview .van-uploader__file-icon{display:none}.ibiz-image-select .van-uploader__preview .van-uploader__file-name{display:none}.ibiz-image-select .ibiz-image-select-item-cover{position:absolute;top:0;bottom:0;box-sizing:border-box;display:flex;align-items:center;justify-content:center;width:100%;font-size:.12rem;line-height:initial;color:#fff;text-align:center;background:0 0}.ibiz-image-select .ibiz-image-select-item-cover img{width:100%;height:100%;border-radius:.04rem}
1
+ .ibiz-image-select .van-uploader__preview .van-uploader__file-icon{display:none}.ibiz-image-select .van-uploader__preview .van-uploader__file-name{display:none}.ibiz-image-select .ibiz-image-select-item-cover{position:absolute;top:0;bottom:0;box-sizing:border-box;display:flex;align-items:center;justify-content:center;width:100%;font-size:.12rem;line-height:initial;color:#fff;text-align:center;background:0 0}.ibiz-image-select .ibiz-image-select-item-cover img{width:100%;height:100%;border-radius:.04rem}.ibiz-image-select .van-uploader__preview{width:100%;height:100%}.ibiz-image-select .van-uploader{width:var(--van-uploader-size);height:100%}
@@ -27,8 +27,7 @@ export declare const IBizImageSelect: import("vue").DefineComponent<{
27
27
  url?: string | undefined;
28
28
  }[]>;
29
29
  svg: import("vue").Ref<string>;
30
- dialogImageUrl: import("vue").Ref<string>;
31
- dialogVisible: import("vue").Ref<boolean>;
30
+ onPreview: (_file: IData) => void;
32
31
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
33
32
  change: (_value: unknown, _name?: string | undefined) => boolean;
34
33
  blur: (_event?: IData | undefined) => boolean;
@@ -1,6 +1,7 @@
1
1
  import { ref, resolveComponent, createVNode, defineComponent } from 'vue';
2
2
  import { getUploadProps, getEditorEmits, useNamespace } from '@ibiz-template/vue3-util';
3
3
  import './ibiz-image-select.css';
4
+ import { showImagePreview } from 'vant';
4
5
  import { useVanUpload } from '../use/use-van-upload.mjs';
5
6
 
6
7
  "use strict";
@@ -13,21 +14,23 @@ const IBizImageSelect = /* @__PURE__ */ defineComponent({
13
14
  }) {
14
15
  const ns = useNamespace("image-select");
15
16
  const c = props.controller;
16
- const dialogVisible = ref(false);
17
- const dialogImageUrl = ref("");
18
17
  const svg = ref("");
19
18
  const {
20
19
  files
21
20
  } = useVanUpload(props, (value) => {
22
21
  emit("change", value);
23
22
  }, c);
23
+ const onPreview = (_file) => {
24
+ showImagePreview({
25
+ images: files.value.map((item) => item.url)
26
+ });
27
+ };
24
28
  return {
25
29
  ns,
26
30
  c,
27
31
  files,
28
32
  svg,
29
- dialogImageUrl,
30
- dialogVisible
33
+ onPreview
31
34
  };
32
35
  },
33
36
  render() {
@@ -44,7 +47,11 @@ const IBizImageSelect = /* @__PURE__ */ defineComponent({
44
47
  }, {
45
48
  "preview-cover": (file) => {
46
49
  return createVNode("div", {
47
- "class": this.ns.b("item-cover")
50
+ "class": this.ns.b("item-cover"),
51
+ "onClick": (e) => {
52
+ e.stopPropagation();
53
+ this.onPreview(file);
54
+ }
48
55
  }, [createVNode("img", {
49
56
  "src": file.url
50
57
  }, null)]);
@@ -1 +1 @@
1
- .ibiz-image-upload .van-uploader__preview .van-uploader__file-icon{display:none}.ibiz-image-upload .van-uploader__preview .van-uploader__file-name{display:none}.ibiz-image-upload .ibiz-image-upload-item-cover{position:absolute;top:0;bottom:0;box-sizing:border-box;display:flex;align-items:center;justify-content:center;width:100%;font-size:.75rem;line-height:initial;color:#fff;text-align:center;background:0 0}.ibiz-image-upload .ibiz-image-upload-item-cover img{width:100%;height:100%;border-radius:.25rem}.van-uploader__preview-delete--shadow{top:-.3125rem;right:-.3125rem;display:flex;align-items:center;justify-content:center;width:var(--van-uploader-delete-icon-size);height:var(--van-uploader-delete-icon-size);text-align:center;background:var(--van-uploader-delete-background);border-radius:50%;opacity:.6}.van-uploader__preview-delete-icon{position:absolute;top:0;right:0;font-size:var(--van-uploader-delete-icon-size);color:var(--van-uploader-delete-color);transform:scale(.7) translate(0,-10%)}.van-uploader__upload{background:0 0;border:var(--ibiz-color-border) .0625rem solid;border-radius:.25rem}.van-uploader__upload--readonly{display:none}
1
+ .ibiz-image-upload .van-uploader__preview .van-uploader__file-icon{display:none}.ibiz-image-upload .van-uploader__preview .van-uploader__file-name{display:none}.ibiz-image-upload .ibiz-image-upload-item-cover{position:absolute;top:0;bottom:0;box-sizing:border-box;display:flex;align-items:center;justify-content:center;width:100%;font-size:.75rem;line-height:initial;color:#fff;text-align:center;background:0 0}.ibiz-image-upload .ibiz-image-upload-item-cover img{width:100%;height:100%;border-radius:.25rem}.van-uploader__preview-delete--shadow{top:-.3125rem;right:-.3125rem;display:flex;align-items:center;justify-content:center;width:var(--van-uploader-delete-icon-size);height:var(--van-uploader-delete-icon-size);text-align:center;background:var(--van-uploader-delete-background);border-radius:50%;opacity:.6}.van-uploader__preview-delete-icon{position:absolute;top:0;right:0;font-size:var(--van-uploader-delete-icon-size);color:var(--van-uploader-delete-color);transform:scale(.7) translate(0,-10%)}.van-uploader__upload{background:0 0;border:var(--ibiz-color-border) .0625rem solid;border-radius:.25rem}.van-uploader__upload--readonly{display:none}.ibiz-panel-field .ibiz-panel-field-content{height:100%}.ibiz-panel-field .ibiz-panel-field-content .van-uploader{width:100%;height:100%}.ibiz-panel-field .ibiz-panel-field-content .van-uploader__wrapper{height:100%}
@@ -29,12 +29,9 @@ export declare const IBizImageUpload: import("vue").DefineComponent<{
29
29
  limit: import("vue").ComputedRef<1 | 9999>;
30
30
  headers: import("vue").Ref<IData>;
31
31
  uploadUrl: import("vue").Ref<string>;
32
- dialogImageUrl: import("vue").Ref<string>;
33
- dialogVisible: import("vue").Ref<boolean>;
34
32
  beforeUpload: () => void;
35
33
  onRemove: (file: IData) => void;
36
- onDialogVisibleChange: (value: boolean) => void;
37
- onPreview: (file: IData) => void;
34
+ onPreview: (_file: IData) => void;
38
35
  afterRead: (file: IData | IData[]) => Promise<void>;
39
36
  onDownload: (file: IData) => void;
40
37
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
@@ -1,6 +1,7 @@
1
- import { ref, resolveComponent, createVNode, defineComponent } from 'vue';
1
+ import { resolveComponent, createVNode, defineComponent } from 'vue';
2
2
  import { getUploadProps, getEditorEmits, useNamespace } from '@ibiz-template/vue3-util';
3
3
  import './ibiz-image-upload.css';
4
+ import { showImagePreview } from 'vant';
4
5
  import { useVanUpload } from '../use/use-van-upload.mjs';
5
6
 
6
7
  "use strict";
@@ -25,14 +26,12 @@ const IBizImageUpload = /* @__PURE__ */ defineComponent({
25
26
  } = useVanUpload(props, (value) => {
26
27
  emit("change", value);
27
28
  }, c);
28
- const dialogImageUrl = ref("");
29
- const dialogVisible = ref(false);
30
- const onDialogVisibleChange = (value) => {
31
- dialogVisible.value = value;
32
- };
33
- const onPreview = (file) => {
34
- dialogImageUrl.value = file.url;
35
- dialogVisible.value = true;
29
+ const onPreview = (_file) => {
30
+ const index = files.value.findIndex((item) => item.id === _file.id);
31
+ showImagePreview({
32
+ images: files.value.map((item) => item.url),
33
+ startPosition: index
34
+ });
36
35
  };
37
36
  return {
38
37
  ns,
@@ -41,11 +40,8 @@ const IBizImageUpload = /* @__PURE__ */ defineComponent({
41
40
  limit,
42
41
  headers,
43
42
  uploadUrl,
44
- dialogImageUrl,
45
- dialogVisible,
46
43
  beforeUpload,
47
44
  onRemove,
48
- onDialogVisibleChange,
49
45
  onPreview,
50
46
  afterRead,
51
47
  onDownload
@@ -68,7 +64,11 @@ const IBizImageUpload = /* @__PURE__ */ defineComponent({
68
64
  }, {
69
65
  "preview-cover": (file) => {
70
66
  return createVNode("div", {
71
- "class": this.ns.b("item-cover")
67
+ "class": this.ns.b("item-cover"),
68
+ "onClick": (e) => {
69
+ e.stopPropagation();
70
+ this.onPreview(file);
71
+ }
72
72
  }, [createVNode("img", {
73
73
  "src": file.url
74
74
  }, null)]);
@@ -1,5 +1,6 @@
1
1
  export { IBizFileUpload } from './ibiz-file-upload/ibiz-file-upload';
2
2
  export { IBizImageUpload } from './ibiz-image-upload/ibiz-image-upload';
3
3
  export { IBizImageSelect } from './ibiz-image-select/ibiz-image-select';
4
+ export { IBizEditorCarousel } from './ibiz-carousel/ibiz-carousel';
4
5
  export * from './upload-editor.controller';
5
6
  export * from './upload-editor.provider';
@@ -1,6 +1,7 @@
1
1
  export { IBizFileUpload } from './ibiz-file-upload/ibiz-file-upload.mjs';
2
2
  export { IBizImageUpload } from './ibiz-image-upload/ibiz-image-upload.mjs';
3
3
  export { IBizImageSelect } from './ibiz-image-select/ibiz-image-select.mjs';
4
+ export { IBizEditorCarousel } from './ibiz-carousel/ibiz-carousel.mjs';
4
5
  export { UploadEditorController } from './upload-editor.controller.mjs';
5
6
  export { FileUploaderEditorProvider } from './upload-editor.provider.mjs';
6
7
 
@@ -20,6 +20,9 @@ class FileUploaderEditorProvider {
20
20
  case "MOBPICTURE_RAW":
21
21
  componentName = "IBizImageSelect";
22
22
  break;
23
+ case "CAROUSEL":
24
+ componentName = "IBizEditorCarousel";
25
+ break;
23
26
  default:
24
27
  }
25
28
  this.formEditor = componentName;