@nutui/nutui 3.1.22-beta.0 → 3.1.22-beta.3

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 (176) hide show
  1. package/dist/nutui.es.js +4019 -19251
  2. package/dist/nutui.umd.js +4012 -19344
  3. package/dist/packages/_es/ActionSheet.js +26 -157
  4. package/dist/packages/_es/Address.js +119 -542
  5. package/dist/packages/_es/AddressList.js +113 -613
  6. package/dist/packages/_es/Audio.js +62 -264
  7. package/dist/packages/_es/AudioOperate.js +18 -107
  8. package/dist/packages/_es/Avatar.js +42 -165
  9. package/dist/packages/_es/AvatarGroup.js +14 -73
  10. package/dist/packages/_es/BackTop.js +43 -156
  11. package/dist/packages/_es/Badge.js +14 -86
  12. package/dist/packages/_es/Barrage.js +41 -120
  13. package/dist/packages/_es/Button.js +23 -128
  14. package/dist/packages/_es/Calendar.js +24 -237
  15. package/dist/packages/_es/CalendarItem.js +1 -1
  16. package/dist/packages/_es/Card.js +10 -107
  17. package/dist/packages/_es/Cascader.js +156 -500
  18. package/dist/packages/_es/Category.js +15 -58
  19. package/dist/packages/_es/CategoryPane.js +11 -111
  20. package/dist/packages/_es/Cell.js +21 -100
  21. package/dist/packages/_es/CellGroup.js +9 -44
  22. package/dist/packages/_es/Checkbox.js +31 -113
  23. package/dist/packages/_es/CheckboxGroup.js +29 -58
  24. package/dist/packages/_es/CircleProgress.js +28 -151
  25. package/dist/packages/_es/Col.js +14 -56
  26. package/dist/packages/_es/Collapse.js +24 -85
  27. package/dist/packages/_es/CollapseItem.js +70 -261
  28. package/dist/packages/_es/Comment.js +64 -434
  29. package/dist/packages/_es/CountDown.js +61 -242
  30. package/dist/packages/_es/CountUp.js +149 -546
  31. package/dist/packages/_es/DatePicker.js +107 -322
  32. package/dist/packages/_es/Dialog.js +69 -261
  33. package/dist/packages/_es/Divider.js +18 -68
  34. package/dist/packages/_es/Drag.js +56 -197
  35. package/dist/packages/_es/Ecard.js +24 -159
  36. package/dist/packages/_es/Elevator.js +63 -198
  37. package/dist/packages/_es/Empty.js +12 -71
  38. package/dist/packages/_es/FixedNav.js +15 -122
  39. package/dist/packages/_es/Form.js +64 -151
  40. package/dist/packages/_es/FormItem.js +15 -110
  41. package/dist/packages/_es/Grid.js +5 -6
  42. package/dist/packages/_es/GridItem.js +33 -144
  43. package/dist/packages/_es/Icon.js +15 -40
  44. package/dist/packages/_es/ImagePreview.js +74 -298
  45. package/dist/packages/_es/Indicator.js +15 -62
  46. package/dist/packages/_es/InfiniteLoading.js +66 -258
  47. package/dist/packages/_es/Input.js +51 -413
  48. package/dist/packages/_es/InputNumber.js +41 -160
  49. package/dist/packages/_es/Layout.js +4 -5
  50. package/dist/packages/_es/List.js +23 -110
  51. package/dist/packages/_es/Menu.js +30 -118
  52. package/dist/packages/_es/MenuItem.js +34 -162
  53. package/dist/packages/_es/Navbar.js +30 -192
  54. package/dist/packages/_es/NoticeBar.js +83 -387
  55. package/dist/packages/_es/Notify.js +81 -236
  56. package/dist/packages/_es/NumberKeyboard.js +41 -272
  57. package/dist/packages/_es/OldPicker.js +140 -464
  58. package/dist/packages/_es/OverLay.js +32 -105
  59. package/dist/packages/_es/Pagination.js +39 -157
  60. package/dist/packages/_es/Picker.js +138 -459
  61. package/dist/packages/_es/Popover.js +327 -965
  62. package/dist/packages/_es/Popup.js +64 -303
  63. package/dist/packages/_es/Price.js +16 -118
  64. package/dist/packages/_es/Progress.js +14 -146
  65. package/dist/packages/_es/PullRefresh.js +92 -346
  66. package/dist/packages/_es/Radio.js +22 -90
  67. package/dist/packages/_es/RadioGroup.js +8 -37
  68. package/dist/packages/_es/Range.js +92 -417
  69. package/dist/packages/_es/Rate.js +16 -139
  70. package/dist/packages/_es/Row.js +22 -64
  71. package/dist/packages/_es/SearchBar.js +46 -247
  72. package/dist/packages/_es/ShortPassword.js +35 -225
  73. package/dist/packages/_es/SideNavBar.js +33 -89
  74. package/dist/packages/_es/SideNavBarItem.js +11 -46
  75. package/dist/packages/_es/Signature.js +46 -165
  76. package/dist/packages/_es/Skeleton.js +20 -136
  77. package/dist/packages/_es/Sku.js +93 -499
  78. package/dist/packages/_es/Step.js +25 -119
  79. package/dist/packages/_es/Steps.js +18 -53
  80. package/dist/packages/_es/Sticky.js +53 -138
  81. package/dist/packages/_es/SubSideNavBar.js +26 -90
  82. package/dist/packages/_es/Swipe.js +46 -183
  83. package/dist/packages/_es/Swiper.js +121 -433
  84. package/dist/packages/_es/SwiperItem.js +22 -53
  85. package/dist/packages/_es/Switch.js +21 -116
  86. package/dist/packages/_es/TabPane.js +12 -39
  87. package/dist/packages/_es/Tabbar.js +17 -72
  88. package/dist/packages/_es/TabbarItem.js +29 -151
  89. package/dist/packages/_es/Table.js +27 -186
  90. package/dist/packages/_es/Tabs.js +51 -209
  91. package/dist/packages/_es/Tag.js +20 -97
  92. package/dist/packages/_es/TextArea.js +42 -160
  93. package/dist/packages/_es/TimeDetail.js +23 -84
  94. package/dist/packages/_es/TimePannel.js +19 -52
  95. package/dist/packages/_es/TimeSelect.js +15 -103
  96. package/dist/packages/_es/Toast.js +80 -319
  97. package/dist/packages/_es/Uploader.js +112 -460
  98. package/dist/packages/_es/Video.js +83 -340
  99. package/dist/packages/_es/common.js +38 -128
  100. package/dist/packages/_es/component.js +35 -76
  101. package/dist/packages/_es/index.js +5 -6
  102. package/dist/packages/_es/index2.js +9 -30
  103. package/dist/packages/_es/index3.js +6 -8
  104. package/dist/packages/_es/index4.js +13 -58
  105. package/dist/packages/_es/index5.js +120 -675
  106. package/dist/packages/_es/plugin-vue_export-helper.js +7 -8
  107. package/dist/packages/_es/pxCheck.js +3 -5
  108. package/dist/packages/_es/raf.js +8 -15
  109. package/dist/packages/button/index.scss +2 -1
  110. package/dist/packages/cell/index.scss +11 -0
  111. package/dist/packages/checkbox/index.scss +6 -0
  112. package/dist/packages/dialog/index.scss +1 -0
  113. package/dist/packages/elevator/index.scss +21 -0
  114. package/dist/packages/input/index.scss +13 -1
  115. package/dist/packages/locale/lang/baseLang.d.ts +1 -0
  116. package/dist/packages/locale/lang/baseLang.js +3 -3
  117. package/dist/packages/locale/lang/en-US.d.ts +8 -0
  118. package/dist/packages/locale/lang/en-US.js +5 -97
  119. package/dist/packages/locale/lang/id-ID.d.ts +8 -0
  120. package/dist/packages/locale/lang/id-ID.js +5 -97
  121. package/dist/packages/locale/lang/index.js +16 -38
  122. package/dist/packages/locale/lang/zh-CN.d.ts +8 -0
  123. package/dist/packages/locale/lang/zh-CN.js +5 -97
  124. package/dist/packages/locale/lang/zh-TW.d.ts +8 -0
  125. package/dist/packages/locale/lang/zh-TW.js +5 -97
  126. package/dist/packages/radio/index.scss +1 -0
  127. package/dist/packages/switch/index.scss +3 -3
  128. package/dist/packages/tabpane/index.scss +1 -0
  129. package/dist/smartips/attributes.json +62 -10
  130. package/dist/smartips/tags.json +17 -4
  131. package/dist/style.css +1 -1
  132. package/dist/styles/themes/default.scss +49 -49
  133. package/dist/styles/themes/jdb.scss +49 -49
  134. package/dist/styles/themes/jdt.scss +49 -49
  135. package/dist/styles/variables-jdb.scss +10 -1
  136. package/dist/styles/variables-jdt.scss +10 -1
  137. package/dist/styles/variables.scss +10 -1
  138. package/dist/types/__VUE/address/index.vue.d.ts +5 -5
  139. package/dist/types/__VUE/addresslist/components/ItemContents.vue.d.ts +1 -0
  140. package/dist/types/__VUE/audiooperate/index.vue.d.ts +1 -0
  141. package/dist/types/__VUE/avatar/index.vue.d.ts +4 -4
  142. package/dist/types/__VUE/backtop/index.vue.d.ts +2 -2
  143. package/dist/types/__VUE/badge/index.vue.d.ts +2 -2
  144. package/dist/types/__VUE/button/index.vue.d.ts +2 -2
  145. package/dist/types/__VUE/cascader/index.vue.d.ts +1 -1
  146. package/dist/types/__VUE/cell/index.vue.d.ts +11 -4
  147. package/dist/types/__VUE/checkbox/common.d.ts +59 -0
  148. package/dist/types/__VUE/checkbox/index.vue.d.ts +18 -5
  149. package/dist/types/__VUE/checkboxgroup/index.vue.d.ts +7 -0
  150. package/dist/types/__VUE/collapseitem/index.vue.d.ts +2 -2
  151. package/dist/types/__VUE/dialog/index.d.ts +9 -2
  152. package/dist/types/__VUE/dialog/index.vue.d.ts +23 -8
  153. package/dist/types/__VUE/ecard/index.vue.d.ts +3 -3
  154. package/dist/types/__VUE/elevator/index.vue.d.ts +29 -0
  155. package/dist/types/__VUE/empty/index.vue.d.ts +2 -2
  156. package/dist/types/__VUE/formitem/index.vue.d.ts +3 -10
  157. package/dist/types/__VUE/grid/index.vue.d.ts +4 -4
  158. package/dist/types/__VUE/griditem/index.vue.d.ts +1 -1
  159. package/dist/types/__VUE/input/index.vue.d.ts +2 -2
  160. package/dist/types/__VUE/noticebar/index.vue.d.ts +1 -1
  161. package/dist/types/__VUE/oldpicker/index.vue.d.ts +2 -2
  162. package/dist/types/__VUE/picker/index.vue.d.ts +2 -2
  163. package/dist/types/__VUE/popover/index.vue.d.ts +2 -2
  164. package/dist/types/__VUE/range/index.vue.d.ts +1 -1
  165. package/dist/types/__VUE/rate/index.vue.d.ts +2 -2
  166. package/dist/types/__VUE/row/index.vue.d.ts +2 -2
  167. package/dist/types/__VUE/shortpassword/index.vue.d.ts +2 -2
  168. package/dist/types/__VUE/step/index.vue.d.ts +2 -2
  169. package/dist/types/__VUE/switch/index.vue.d.ts +2 -2
  170. package/dist/types/__VUE/tabbaritem/index.vue.d.ts +2 -2
  171. package/dist/types/__VUE/timeselect/index.vue.d.ts +9 -2
  172. package/dist/types/__VUE/toast/index.vue.d.ts +3 -3
  173. package/dist/types/__VUE/uploader/index.vue.d.ts +2 -2
  174. package/dist/types/__VUE/video/index.vue.d.ts +1 -1
  175. package/dist/types/index.d.ts +1 -1
  176. package/package.json +2 -1
@@ -5,513 +5,107 @@ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
5
  var __hasOwnProp = Object.prototype.hasOwnProperty;
6
6
  var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
7
  var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
- var __spreadValues = (a, b) => {
9
- for (var prop in b || (b = {}))
10
- if (__hasOwnProp.call(b, prop))
11
- __defNormalProp(a, prop, b[prop]);
8
+ var __spreadValues = (a2, b2) => {
9
+ for (var prop in b2 || (b2 = {}))
10
+ if (__hasOwnProp.call(b2, prop))
11
+ __defNormalProp(a2, prop, b2[prop]);
12
12
  if (__getOwnPropSymbols)
13
- for (var prop of __getOwnPropSymbols(b)) {
14
- if (__propIsEnum.call(b, prop))
15
- __defNormalProp(a, prop, b[prop]);
13
+ for (var prop of __getOwnPropSymbols(b2)) {
14
+ if (__propIsEnum.call(b2, prop))
15
+ __defNormalProp(a2, prop, b2[prop]);
16
16
  }
17
- return a;
17
+ return a2;
18
18
  };
19
- var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
19
+ var __spreadProps = (a2, b2) => __defProps(a2, __getOwnPropDescs(b2));
20
20
  /*!
21
- * @nutui/nutui v3.1.22-beta.0 Tue May 31 2022 21:47:10 GMT+0800 (中国标准时间)
21
+ * @nutui/nutui v3.1.22-beta.3 Wed Jun 15 2022 20:12:30 GMT+0800 (中国标准时间)
22
22
  * (c) 2022 @jdf2e.
23
23
  * Released under the MIT License.
24
24
  */
25
- import { resolveComponent, openBlock, createElementBlock, createElementVNode, renderSlot, createBlock, createCommentVNode, toDisplayString, ref, watch, onMounted, Fragment, renderList, normalizeClass, createVNode, withCtx, createSlots } from "vue";
26
- import { c as createComponent, T as TypeOfFun } from "./component.js";
27
- import { _ as _export_sfc } from "./plugin-vue_export-helper.js";
28
- import { popupProps } from "./Popup.js";
25
+ import { resolveComponent as e, openBlock as t, createElementBlock as s, createElementVNode as r, renderSlot as n, createBlock as a, createCommentVNode as o, toDisplayString as p, ref as l, watch as u, onMounted as i, Fragment as c, renderList as d, normalizeClass as k, createVNode as m, withCtx as g, createSlots as v } from "vue";
26
+ import { c as x, T as S } from "./component.js";
27
+ import { _ as y } from "./plugin-vue_export-helper.js";
28
+ import { popupProps as b } from "./Popup.js";
29
29
  import "../locale/lang";
30
30
  import "./OverLay.js";
31
31
  import "./Icon.js";
32
32
  import "./pxCheck.js";
33
- const { componentName: componentName$4, create: create$4, translate: translate$1 } = createComponent("sku-header");
34
- const _sfc_main$4 = create$4({
35
- props: {
36
- goods: {
37
- type: Object,
38
- default: {}
39
- }
40
- },
41
- emits: [],
42
- setup(props, { emit, slots }) {
43
- const getSlots = (name) => slots[name];
44
- return {
45
- getSlots,
46
- translate: translate$1
47
- };
48
- }
49
- });
50
- const _hoisted_1$4 = { class: "nut-sku-header" };
51
- const _hoisted_2$4 = ["src"];
52
- const _hoisted_3$3 = { class: "nut-sku-header-right" };
53
- const _hoisted_4$3 = {
54
- key: 3,
55
- class: "nut-sku-header-right-extra"
56
- };
57
- function _sfc_render$4(_ctx, _cache, $props, $setup, $data, $options) {
58
- const _component_nut_price = resolveComponent("nut-price");
59
- return openBlock(), createElementBlock("view", _hoisted_1$4, [
60
- createElementVNode("img", {
61
- src: _ctx.goods.imagePath
62
- }, null, 8, _hoisted_2$4),
63
- createElementVNode("view", _hoisted_3$3, [
64
- _ctx.getSlots("sku-header-price") ? renderSlot(_ctx.$slots, "sku-header-price", { key: 0 }) : (openBlock(), createBlock(_component_nut_price, {
65
- key: 1,
66
- price: _ctx.goods.price,
67
- needSymbol: true,
68
- thousands: false
69
- }, null, 8, ["price"])),
70
- _ctx.getSlots("sku-header-extra") ? renderSlot(_ctx.$slots, "sku-header-extra", { key: 2 }) : createCommentVNode("", true),
71
- _ctx.goods.skuId && !_ctx.getSlots("sku-header-extra") ? (openBlock(), createElementBlock("view", _hoisted_4$3, toDisplayString(_ctx.translate("skuId")) + "\xA0:\xA0" + toDisplayString(_ctx.goods.skuId), 1)) : createCommentVNode("", true)
72
- ])
73
- ]);
74
- }
75
- var SkuHeader = /* @__PURE__ */ _export_sfc(_sfc_main$4, [["render", _sfc_render$4]]);
76
- const { componentName: componentName$3, create: create$3 } = createComponent("sku-select");
77
- const _sfc_main$3 = create$3({
78
- props: {
79
- sku: {
80
- type: Array,
81
- default: () => []
82
- }
83
- },
84
- emits: ["selectSku"],
85
- setup(props, { emit }) {
86
- const skuInfo = ref([]);
87
- watch(() => props.sku, (value) => {
88
- skuInfo.value = [].slice.call(value);
89
- }, { deep: true });
90
- onMounted(() => {
91
- if (props.sku.length > 0) {
92
- skuInfo.value = [].slice.call(props.sku);
93
- }
94
- });
95
- const changeSaleChild = (attrItem, index2, parentItem, parentIndex) => {
96
- if (attrItem.checkFlag || attrItem.disable) {
97
- return;
98
- }
99
- emit("selectSku", {
100
- sku: attrItem,
101
- skuIndex: index2,
102
- parentSku: parentItem,
103
- parentIndex
104
- });
105
- };
106
- return {
107
- skuInfo,
108
- changeSaleChild
109
- };
110
- }
111
- });
112
- const _hoisted_1$3 = { class: "nut-sku-select" };
113
- const _hoisted_2$3 = { class: "nut-sku-select-item-title" };
114
- const _hoisted_3$2 = { class: "nut-sku-select-item-skus" };
115
- const _hoisted_4$2 = ["onClick"];
116
- function _sfc_render$3(_ctx, _cache, $props, $setup, $data, $options) {
117
- return openBlock(), createElementBlock("view", _hoisted_1$3, [
118
- (openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.skuInfo, (item, index2) => {
119
- return openBlock(), createElementBlock("view", {
120
- class: "nut-sku-select-item",
121
- key: item.id
122
- }, [
123
- createElementVNode("view", _hoisted_2$3, toDisplayString(item.name), 1),
124
- createElementVNode("view", _hoisted_3$2, [
125
- (openBlock(true), createElementBlock(Fragment, null, renderList(item.list, (itemAttr, itemAttrIndex) => {
126
- return openBlock(), createElementBlock("view", {
127
- class: normalizeClass(["nut-sku-select-item-skus-sku", [{ active: !itemAttr.disable && itemAttr.active }, { disable: itemAttr.disable }]]),
128
- onClick: ($event) => _ctx.changeSaleChild(itemAttr, itemAttrIndex, item, index2),
129
- key: itemAttr.name
130
- }, toDisplayString(itemAttr.name), 11, _hoisted_4$2);
131
- }), 128))
132
- ])
133
- ]);
134
- }), 128))
135
- ]);
136
- }
137
- var SkuSelect = /* @__PURE__ */ _export_sfc(_sfc_main$3, [["render", _sfc_render$3]]);
138
- const { componentName: componentName$2, create: create$2 } = createComponent("sku-stepper");
139
- const _sfc_main$2 = create$2({
140
- props: {
141
- stepperMax: {
142
- type: [Number, String],
143
- default: 99999
144
- },
145
- stepperMin: {
146
- type: [Number, String],
147
- default: 1
148
- },
149
- stepperExtraText: {
150
- type: [Function, Boolean],
151
- default: false
152
- },
153
- stepperTitle: {
154
- type: String,
155
- default: "\u8D2D\u4E70\u6570\u91CF"
156
- }
157
- },
158
- emits: ["click", "changeSku", "changeStepper", "clickBtnOptions", "overLimit", "reduce", "add"],
159
- setup(props, { emit }) {
160
- const goodsCount = ref(props.stepperMin);
161
- onMounted(() => {
162
- goodsCount.value = props.stepperMin;
163
- });
164
- const getExtraText = () => {
165
- const { stepperExtraText } = props;
166
- if (stepperExtraText && TypeOfFun(stepperExtraText) == "function") {
167
- return stepperExtraText();
168
- } else {
169
- return "";
170
- }
171
- };
172
- const add = (value) => {
173
- emit("add", value);
174
- };
175
- const reduce = (value) => {
176
- emit("reduce", value);
177
- };
178
- const overlimit = (e, action) => {
179
- emit("overLimit", {
180
- action,
181
- value: parseInt(goodsCount.value + "")
182
- });
183
- };
184
- const changeStepper = (value) => {
185
- goodsCount.value = value;
186
- emit("changeStepper", value);
187
- };
188
- return {
189
- goodsCount,
190
- add,
191
- reduce,
192
- overlimit,
193
- getExtraText,
194
- changeStepper
195
- };
196
- }
197
- });
198
- const _hoisted_1$2 = { class: "nut-sku-stepper" };
199
- const _hoisted_2$2 = { class: "nut-sku-stepper-title" };
200
- const _hoisted_3$1 = ["innerHTML"];
201
- const _hoisted_4$1 = { class: "nut-sku-stepper-count" };
202
- function _sfc_render$2(_ctx, _cache, $props, $setup, $data, $options) {
203
- const _component_nut_inputnumber = resolveComponent("nut-inputnumber");
204
- return openBlock(), createElementBlock("view", _hoisted_1$2, [
205
- createElementVNode("view", _hoisted_2$2, toDisplayString(_ctx.stepperTitle), 1),
206
- createElementVNode("view", {
207
- class: "nut-sku-stepper-limit",
208
- innerHTML: _ctx.getExtraText()
209
- }, null, 8, _hoisted_3$1),
210
- createElementVNode("view", _hoisted_4$1, [
211
- createVNode(_component_nut_inputnumber, {
212
- modelValue: _ctx.goodsCount,
213
- "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => _ctx.goodsCount = $event),
214
- min: _ctx.stepperMin,
215
- max: _ctx.stepperMax,
216
- onAdd: _ctx.add,
217
- onReduce: _ctx.reduce,
218
- onOverlimit: _ctx.overlimit,
219
- onChange: _ctx.changeStepper
220
- }, null, 8, ["modelValue", "min", "max", "onAdd", "onReduce", "onOverlimit", "onChange"])
221
- ])
222
- ]);
223
- }
224
- var SkuStepper = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["render", _sfc_render$2]]);
225
- const { componentName: componentName$1, create: create$1 } = createComponent("sku-operate");
226
- const _sfc_main$1 = create$1({
227
- props: {
228
- btnOptions: {
229
- type: Array,
230
- default: () => ["confirm"]
231
- },
232
- btnExtraText: {
233
- type: String,
234
- default: ""
235
- },
236
- buyText: {
237
- type: String,
238
- default: "\u7ACB\u5373\u8D2D\u4E70"
239
- },
240
- addCartText: {
241
- type: String,
242
- default: "\u52A0\u5165\u8D2D\u7269\u8F66"
243
- },
244
- confirmText: {
245
- type: String,
246
- default: "\u786E\u5B9A"
247
- }
248
- },
249
- emits: ["click", "changeSku", "changeBuyCount", "clickBtnOperate"],
250
- setup(props, { emit, slots }) {
251
- const getBtnDesc = (type) => {
252
- let mapD = {
253
- confirm: props.confirmText,
254
- cart: props.addCartText,
255
- buy: props.buyText
256
- };
257
- return mapD[type];
258
- };
259
- const getSlots = (name) => slots[name];
260
- const clickBtnOperate = (btn) => {
261
- emit("clickBtnOperate", btn);
262
- };
263
- return {
264
- getBtnDesc,
265
- clickBtnOperate,
266
- getSlots
267
- };
268
- }
269
- });
270
- const _hoisted_1$1 = {
271
- key: 0,
272
- class: "nut-sku-operate"
273
- };
274
- const _hoisted_2$1 = ["innerHTML"];
275
- const _hoisted_3 = {
276
- key: 1,
277
- class: "nut-sku-operate-btn"
278
- };
279
- const _hoisted_4 = ["onClick"];
280
- function _sfc_render$1(_ctx, _cache, $props, $setup, $data, $options) {
281
- return _ctx.btnOptions.length > 0 ? (openBlock(), createElementBlock("view", _hoisted_1$1, [
282
- _ctx.btnExtraText ? (openBlock(), createElementBlock("view", {
283
- key: 0,
284
- class: "nut-sku-operate-desc",
285
- innerHTML: _ctx.btnExtraText
286
- }, null, 8, _hoisted_2$1)) : createCommentVNode("", true),
287
- renderSlot(_ctx.$slots, "operate-btn"),
288
- !_ctx.getSlots("operate-btn") ? (openBlock(), createElementBlock("view", _hoisted_3, [
289
- (openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.btnOptions, (btn, i) => {
290
- return openBlock(), createElementBlock("view", {
291
- class: normalizeClass([`nut-sku-operate-btn-${btn}`, "nut-sku-operate-btn-item"]),
292
- key: i,
293
- onClick: ($event) => _ctx.clickBtnOperate(btn)
294
- }, toDisplayString(_ctx.getBtnDesc(btn)), 11, _hoisted_4);
295
- }), 128))
296
- ])) : createCommentVNode("", true)
297
- ])) : createCommentVNode("", true);
298
- }
299
- var SkuOperate = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["render", _sfc_render$1]]);
300
- const { componentName, create, translate } = createComponent("sku");
301
- const _sfc_main = create({
302
- props: __spreadProps(__spreadValues({}, popupProps), {
303
- sku: {
304
- type: Array,
305
- default: []
306
- },
307
- goods: {
308
- type: Object,
309
- default: {}
310
- },
311
- stepperMax: {
312
- type: [Number, String],
313
- default: 99999
314
- },
315
- stepperMin: {
316
- type: [Number, String],
317
- default: 1
318
- },
319
- btnOptions: {
320
- type: Array,
321
- default: () => ["confirm"]
322
- },
323
- stepperTitle: {
324
- type: String,
325
- default: ""
326
- },
327
- stepperExtraText: {
328
- type: [Function, Boolean],
329
- default: false
330
- },
331
- btnExtraText: {
332
- type: String,
333
- default: ""
334
- },
335
- buyText: {
336
- type: String,
337
- default: ""
338
- },
339
- addCartText: {
340
- type: String,
341
- default: ""
342
- },
343
- confirmText: {
344
- type: String,
345
- default: ""
346
- }
347
- }),
348
- emits: [
349
- "update:visible",
350
- "selectSku",
351
- "changeStepper",
352
- "clickBtnOperate",
353
- "clickCloseIcon",
354
- "clickOverlay",
355
- "close",
356
- "reduce",
357
- "add",
358
- "overLimit",
359
- "clickOverlay"
360
- ],
361
- components: {
362
- SkuHeader,
363
- SkuSelect,
364
- SkuStepper,
365
- SkuOperate
366
- },
367
- setup(props, { emit, slots }) {
368
- const showPopup = ref(props.visible);
369
- const goodsCount = ref(props.stepperMin);
370
- watch(() => props.visible, (value) => {
371
- showPopup.value = value;
372
- });
373
- watch(() => showPopup.value, (value) => {
374
- if (value == false) {
375
- close();
376
- }
377
- });
378
- onMounted(() => {
379
- });
380
- const getSlots = (name) => slots[name];
381
- const selectSku = (skus) => {
382
- emit("selectSku", skus);
383
- };
384
- const changeStepper = (value) => {
385
- goodsCount.value = value;
386
- emit("changeStepper", value);
387
- };
388
- const add = (value) => {
389
- emit("add", value);
390
- };
391
- const reduce = (value) => {
392
- emit("reduce", value);
393
- };
394
- const stepperOverLimit = (count) => {
395
- emit("overLimit", count);
396
- };
397
- const clickBtnOperate = (btn) => {
398
- emit("clickBtnOperate", {
399
- type: btn,
400
- value: goodsCount.value
401
- });
402
- };
403
- const closePopup = (type) => {
404
- if (type == "icon") {
405
- emit("click-close-icon");
406
- }
407
- if (type == "overlay") {
408
- emit("click-overlay");
409
- }
410
- if (type == "close") {
411
- emit("close");
412
- }
413
- showPopup.value = false;
414
- };
415
- const close = () => {
416
- emit("update:visible", false);
417
- };
418
- return {
419
- showPopup,
420
- closePopup,
421
- selectSku,
422
- changeStepper,
423
- stepperOverLimit,
424
- clickBtnOperate,
425
- add,
426
- reduce,
427
- getSlots,
428
- translate
429
- };
430
- }
431
- });
432
- const _hoisted_1 = { class: "nut-sku" };
433
- const _hoisted_2 = { class: "nut-sku-content" };
434
- function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
435
- const _component_sku_header = resolveComponent("sku-header");
436
- const _component_SkuSelect = resolveComponent("SkuSelect");
437
- const _component_sku_stepper = resolveComponent("sku-stepper");
438
- const _component_sku_operate = resolveComponent("sku-operate");
439
- const _component_nut_popup = resolveComponent("nut-popup");
440
- return openBlock(), createBlock(_component_nut_popup, {
441
- position: "bottom",
442
- closeable: "",
443
- round: "",
444
- visible: _ctx.showPopup,
445
- "onUpdate:visible": _cache[0] || (_cache[0] = ($event) => _ctx.showPopup = $event),
446
- onClickCloseIcon: _cache[1] || (_cache[1] = ($event) => _ctx.closePopup("icon")),
447
- onClickOverlay: _cache[2] || (_cache[2] = ($event) => _ctx.closePopup("overlay")),
448
- onClose: _cache[3] || (_cache[3] = ($event) => _ctx.closePopup("close")),
449
- style: { "height": "75%" },
450
- isWrapTeleport: _ctx.isWrapTeleport,
451
- teleport: _ctx.teleport
452
- }, {
453
- default: withCtx(() => [
454
- createElementVNode("view", _hoisted_1, [
455
- renderSlot(_ctx.$slots, "sku-header"),
456
- !_ctx.getSlots("sku-header") ? (openBlock(), createBlock(_component_sku_header, {
457
- key: 0,
458
- goods: _ctx.goods
459
- }, createSlots({ _: 2 }, [
460
- _ctx.getSlots("sku-header-price") ? {
461
- name: "sku-header-price",
462
- fn: withCtx(() => [
463
- renderSlot(_ctx.$slots, "sku-header-price")
464
- ])
465
- } : void 0,
466
- _ctx.getSlots("sku-header-extra") ? {
467
- name: "sku-header-extra",
468
- fn: withCtx(() => [
469
- renderSlot(_ctx.$slots, "sku-header-extra")
470
- ])
471
- } : void 0
472
- ]), 1032, ["goods"])) : createCommentVNode("", true),
473
- createElementVNode("view", _hoisted_2, [
474
- renderSlot(_ctx.$slots, "sku-select-top"),
475
- renderSlot(_ctx.$slots, "sku-select"),
476
- !_ctx.getSlots("sku-select") ? (openBlock(), createBlock(_component_SkuSelect, {
477
- key: 0,
478
- sku: _ctx.sku,
479
- onSelectSku: _ctx.selectSku
480
- }, null, 8, ["sku", "onSelectSku"])) : createCommentVNode("", true),
481
- renderSlot(_ctx.$slots, "sku-stepper"),
482
- !_ctx.getSlots("sku-stepper") ? (openBlock(), createBlock(_component_sku_stepper, {
483
- key: 1,
484
- goods: _ctx.goods,
485
- stepperTitle: _ctx.stepperTitle || _ctx.translate("buyNumber"),
486
- stepperMax: _ctx.stepperMax,
487
- stepperMin: _ctx.stepperMin,
488
- stepperExtraText: _ctx.stepperExtraText,
489
- onAdd: _ctx.add,
490
- onReduce: _ctx.reduce,
491
- onChangeStepper: _ctx.changeStepper,
492
- onOverLimit: _ctx.stepperOverLimit
493
- }, null, 8, ["goods", "stepperTitle", "stepperMax", "stepperMin", "stepperExtraText", "onAdd", "onReduce", "onChangeStepper", "onOverLimit"])) : createCommentVNode("", true),
494
- renderSlot(_ctx.$slots, "sku-stepper-bottom")
495
- ]),
496
- createVNode(_component_sku_operate, {
497
- btnOptions: _ctx.btnOptions,
498
- btnExtraText: _ctx.btnExtraText,
499
- buyText: _ctx.buyText || _ctx.translate("buyNow"),
500
- addCartText: _ctx.addCartText || _ctx.translate("addToCart"),
501
- confirmText: _ctx.confirmText || _ctx.translate("confirm"),
502
- onClickBtnOperate: _ctx.clickBtnOperate
503
- }, createSlots({ _: 2 }, [
504
- _ctx.getSlots("sku-operate") ? {
505
- name: "operate-btn",
506
- fn: withCtx(() => [
507
- renderSlot(_ctx.$slots, "sku-operate")
508
- ])
509
- } : void 0
510
- ]), 1032, ["btnOptions", "btnExtraText", "buyText", "addCartText", "confirmText", "onClickBtnOperate"])
511
- ])
512
- ]),
513
- _: 3
514
- }, 8, ["visible", "isWrapTeleport", "teleport"]);
515
- }
516
- var index = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render]]);
517
- export { index as default };
33
+ const { componentName: h, create: f, translate: T } = x("sku-header"), O = f({ props: { goods: { type: Object, default: {} } }, emits: [], setup: (e2, { emit: t2, slots: s2 }) => ({ getSlots: (e3) => s2[e3], translate: T }) }), C = { class: "nut-sku-header" }, w = ["src"], M = { class: "nut-sku-header-right" }, B = { key: 3, class: "nut-sku-header-right-extra" };
34
+ var E = y(O, [["render", function(l2, u2, i2, c2, d2, k2) {
35
+ const m2 = e("nut-price");
36
+ return t(), s("view", C, [r("img", { src: l2.goods.imagePath }, null, 8, w), r("view", M, [l2.getSlots("sku-header-price") ? n(l2.$slots, "sku-header-price", { key: 0 }) : (t(), a(m2, { key: 1, price: l2.goods.price, needSymbol: true, thousands: false }, null, 8, ["price"])), l2.getSlots("sku-header-extra") ? n(l2.$slots, "sku-header-extra", { key: 2 }) : o("", true), l2.goods.skuId && !l2.getSlots("sku-header-extra") ? (t(), s("view", B, p(l2.translate("skuId")) + "\xA0:\xA0" + p(l2.goods.skuId), 1)) : o("", true)])]);
37
+ }]]);
38
+ const { componentName: L, create: $ } = x("sku-select"), I = $({ props: { sku: { type: Array, default: () => [] } }, emits: ["selectSku"], setup(e2, { emit: t2 }) {
39
+ const s2 = l([]);
40
+ u(() => e2.sku, (e3) => {
41
+ s2.value = [].slice.call(e3);
42
+ }, { deep: true }), i(() => {
43
+ e2.sku.length > 0 && (s2.value = [].slice.call(e2.sku));
44
+ });
45
+ return { skuInfo: s2, changeSaleChild: (e3, s3, r2, n2) => {
46
+ e3.checkFlag || e3.disable || t2("selectSku", { sku: e3, skuIndex: s3, parentSku: r2, parentIndex: n2 });
47
+ } };
48
+ } }), N = { class: "nut-sku-select" }, P = { class: "nut-sku-select-item-title" }, j = { class: "nut-sku-select-item-skus" }, A = ["onClick"];
49
+ var H = y(I, [["render", function(e2, n2, a2, o2, l2, u2) {
50
+ return t(), s("view", N, [(t(true), s(c, null, d(e2.skuInfo, (n3, a3) => (t(), s("view", { class: "nut-sku-select-item", key: n3.id }, [r("view", P, p(n3.name), 1), r("view", j, [(t(true), s(c, null, d(n3.list, (r2, o3) => (t(), s("view", { class: k(["nut-sku-select-item-skus-sku", [{ active: !r2.disable && r2.active }, { disable: r2.disable }]]), onClick: (t2) => e2.changeSaleChild(r2, o3, n3, a3), key: r2.name }, p(r2.name), 11, A))), 128))])]))), 128))]);
51
+ }]]);
52
+ const { componentName: _, create: R } = x("sku-stepper"), F = R({ props: { stepperMax: { type: [Number, String], default: 99999 }, stepperMin: { type: [Number, String], default: 1 }, stepperExtraText: { type: [Function, Boolean], default: false }, stepperTitle: { type: String, default: "\u8D2D\u4E70\u6570\u91CF" } }, emits: ["click", "changeSku", "changeStepper", "clickBtnOptions", "overLimit", "reduce", "add"], setup(e2, { emit: t2 }) {
53
+ const s2 = l(e2.stepperMin);
54
+ i(() => {
55
+ s2.value = e2.stepperMin;
56
+ });
57
+ return { goodsCount: s2, add: (e3) => {
58
+ t2("add", e3);
59
+ }, reduce: (e3) => {
60
+ t2("reduce", e3);
61
+ }, overlimit: (e3, r2) => {
62
+ t2("overLimit", { action: r2, value: parseInt(s2.value + "") });
63
+ }, getExtraText: () => {
64
+ const { stepperExtraText: t3 } = e2;
65
+ return t3 && S(t3) == "function" ? t3() : "";
66
+ }, changeStepper: (e3) => {
67
+ s2.value = e3, t2("changeStepper", e3);
68
+ } };
69
+ } }), V = { class: "nut-sku-stepper" }, W = { class: "nut-sku-stepper-title" }, D = ["innerHTML"], U = { class: "nut-sku-stepper-count" };
70
+ var q = y(F, [["render", function(n2, a2, o2, l2, u2, i2) {
71
+ const c2 = e("nut-inputnumber");
72
+ return t(), s("view", V, [r("view", W, p(n2.stepperTitle), 1), r("view", { class: "nut-sku-stepper-limit", innerHTML: n2.getExtraText() }, null, 8, D), r("view", U, [m(c2, { modelValue: n2.goodsCount, "onUpdate:modelValue": a2[0] || (a2[0] = (e2) => n2.goodsCount = e2), min: n2.stepperMin, max: n2.stepperMax, onAdd: n2.add, onReduce: n2.reduce, onOverlimit: n2.overlimit, onChange: n2.changeStepper }, null, 8, ["modelValue", "min", "max", "onAdd", "onReduce", "onOverlimit", "onChange"])])]);
73
+ }]]);
74
+ const { componentName: z, create: G } = x("sku-operate"), J = G({ props: { btnOptions: { type: Array, default: () => ["confirm"] }, btnExtraText: { type: String, default: "" }, buyText: { type: String, default: "\u7ACB\u5373\u8D2D\u4E70" }, addCartText: { type: String, default: "\u52A0\u5165\u8D2D\u7269\u8F66" }, confirmText: { type: String, default: "\u786E\u5B9A" } }, emits: ["click", "changeSku", "changeBuyCount", "clickBtnOperate"], setup: (e2, { emit: t2, slots: s2 }) => ({ getBtnDesc: (t3) => ({ confirm: e2.confirmText, cart: e2.addCartText, buy: e2.buyText })[t3], clickBtnOperate: (e3) => {
75
+ t2("clickBtnOperate", e3);
76
+ }, getSlots: (e3) => s2[e3] }) }), K = { key: 0, class: "nut-sku-operate" }, Q = ["innerHTML"], X = { key: 1, class: "nut-sku-operate-btn" }, Y = ["onClick"];
77
+ var Z = y(J, [["render", function(e2, r2, a2, l2, u2, i2) {
78
+ return e2.btnOptions.length > 0 ? (t(), s("view", K, [e2.btnExtraText ? (t(), s("view", { key: 0, class: "nut-sku-operate-desc", innerHTML: e2.btnExtraText }, null, 8, Q)) : o("", true), n(e2.$slots, "operate-btn"), e2.getSlots("operate-btn") ? o("", true) : (t(), s("view", X, [(t(true), s(c, null, d(e2.btnOptions, (r3, n2) => (t(), s("view", { class: k([`nut-sku-operate-btn-${r3}`, "nut-sku-operate-btn-item"]), key: n2, onClick: (t2) => e2.clickBtnOperate(r3) }, p(e2.getBtnDesc(r3)), 11, Y))), 128))]))])) : o("", true);
79
+ }]]);
80
+ const { componentName: ee, create: te, translate: se } = x("sku"), re = te({ props: __spreadProps(__spreadValues({}, b), { sku: { type: Array, default: [] }, goods: { type: Object, default: {} }, stepperMax: { type: [Number, String], default: 99999 }, stepperMin: { type: [Number, String], default: 1 }, btnOptions: { type: Array, default: () => ["confirm"] }, stepperTitle: { type: String, default: "" }, stepperExtraText: { type: [Function, Boolean], default: false }, btnExtraText: { type: String, default: "" }, buyText: { type: String, default: "" }, addCartText: { type: String, default: "" }, confirmText: { type: String, default: "" } }), emits: ["update:visible", "selectSku", "changeStepper", "clickBtnOperate", "clickCloseIcon", "clickOverlay", "close", "reduce", "add", "overLimit", "clickOverlay"], components: { SkuHeader: E, SkuSelect: H, SkuStepper: q, SkuOperate: Z }, setup(e2, { emit: t2, slots: s2 }) {
81
+ const r2 = l(e2.visible), n2 = l(e2.stepperMin);
82
+ u(() => e2.visible, (e3) => {
83
+ r2.value = e3;
84
+ }), u(() => r2.value, (e3) => {
85
+ e3 == 0 && a2();
86
+ }), i(() => {
87
+ });
88
+ const a2 = () => {
89
+ t2("update:visible", false);
90
+ };
91
+ return { showPopup: r2, closePopup: (e3) => {
92
+ e3 == "icon" && t2("click-close-icon"), e3 == "overlay" && t2("click-overlay"), e3 == "close" && t2("close"), r2.value = false;
93
+ }, selectSku: (e3) => {
94
+ t2("selectSku", e3);
95
+ }, changeStepper: (e3) => {
96
+ n2.value = e3, t2("changeStepper", e3);
97
+ }, stepperOverLimit: (e3) => {
98
+ t2("overLimit", e3);
99
+ }, clickBtnOperate: (e3) => {
100
+ t2("clickBtnOperate", { type: e3, value: n2.value });
101
+ }, add: (e3) => {
102
+ t2("add", e3);
103
+ }, reduce: (e3) => {
104
+ t2("reduce", e3);
105
+ }, getSlots: (e3) => s2[e3], translate: se };
106
+ } }), ne = { class: "nut-sku" }, ae = { class: "nut-sku-content" };
107
+ var oe = y(re, [["render", function(s2, p2, l2, u2, i2, c2) {
108
+ const d2 = e("sku-header"), k2 = e("SkuSelect"), x2 = e("sku-stepper"), S2 = e("sku-operate"), y2 = e("nut-popup");
109
+ return t(), a(y2, { position: "bottom", closeable: "", round: "", visible: s2.showPopup, "onUpdate:visible": p2[0] || (p2[0] = (e2) => s2.showPopup = e2), onClickCloseIcon: p2[1] || (p2[1] = (e2) => s2.closePopup("icon")), onClickOverlay: p2[2] || (p2[2] = (e2) => s2.closePopup("overlay")), onClose: p2[3] || (p2[3] = (e2) => s2.closePopup("close")), style: { height: "75%" }, isWrapTeleport: s2.isWrapTeleport, teleport: s2.teleport }, { default: g(() => [r("view", ne, [n(s2.$slots, "sku-header"), s2.getSlots("sku-header") ? o("", true) : (t(), a(d2, { key: 0, goods: s2.goods }, v({ _: 2 }, [s2.getSlots("sku-header-price") ? { name: "sku-header-price", fn: g(() => [n(s2.$slots, "sku-header-price")]) } : void 0, s2.getSlots("sku-header-extra") ? { name: "sku-header-extra", fn: g(() => [n(s2.$slots, "sku-header-extra")]) } : void 0]), 1032, ["goods"])), r("view", ae, [n(s2.$slots, "sku-select-top"), n(s2.$slots, "sku-select"), s2.getSlots("sku-select") ? o("", true) : (t(), a(k2, { key: 0, sku: s2.sku, onSelectSku: s2.selectSku }, null, 8, ["sku", "onSelectSku"])), n(s2.$slots, "sku-stepper"), s2.getSlots("sku-stepper") ? o("", true) : (t(), a(x2, { key: 1, goods: s2.goods, stepperTitle: s2.stepperTitle || s2.translate("buyNumber"), stepperMax: s2.stepperMax, stepperMin: s2.stepperMin, stepperExtraText: s2.stepperExtraText, onAdd: s2.add, onReduce: s2.reduce, onChangeStepper: s2.changeStepper, onOverLimit: s2.stepperOverLimit }, null, 8, ["goods", "stepperTitle", "stepperMax", "stepperMin", "stepperExtraText", "onAdd", "onReduce", "onChangeStepper", "onOverLimit"])), n(s2.$slots, "sku-stepper-bottom")]), m(S2, { btnOptions: s2.btnOptions, btnExtraText: s2.btnExtraText, buyText: s2.buyText || s2.translate("buyNow"), addCartText: s2.addCartText || s2.translate("addToCart"), confirmText: s2.confirmText || s2.translate("confirm"), onClickBtnOperate: s2.clickBtnOperate }, v({ _: 2 }, [s2.getSlots("sku-operate") ? { name: "operate-btn", fn: g(() => [n(s2.$slots, "sku-operate")]) } : void 0]), 1032, ["btnOptions", "btnExtraText", "buyText", "addCartText", "confirmText", "onClickBtnOperate"])])]), _: 3 }, 8, ["visible", "isWrapTeleport", "teleport"]);
110
+ }]]);
111
+ export { oe as default };