@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,331 +5,92 @@ 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 { reactive, onMounted, watch, computed, resolveComponent, openBlock, createBlock, Transition, withCtx, withDirectives, createElementVNode, normalizeClass, normalizeStyle, createElementBlock, createVNode, createCommentVNode, toDisplayString, vShow, render } from "vue";
26
- import { c as createComponent } from "./component.js";
27
- import _sfc_main$1 from "./Icon.js";
28
- import { _ as _export_sfc } from "./plugin-vue_export-helper.js";
25
+ import { reactive as t, onMounted as e, watch as o, computed as n, resolveComponent as i, openBlock as l, createBlock as s, Transition as a, withCtx as c, withDirectives as r, createElementVNode as u, normalizeClass as d, normalizeStyle as m, createElementBlock as p, createVNode as f, createCommentVNode as g, toDisplayString as y, vShow as v, render as C } from "vue";
26
+ import { c as b } from "./component.js";
27
+ import x from "./Icon.js";
28
+ import { _ as S } from "./plugin-vue_export-helper.js";
29
29
  import "../locale/lang";
30
30
  import "./pxCheck.js";
31
- const { create } = createComponent("toast");
32
- const _sfc_main = create({
33
- components: {
34
- [_sfc_main$1.name]: _sfc_main$1
35
- },
36
- props: {
37
- id: String,
38
- msg: String,
39
- duration: {
40
- type: Number,
41
- default: 2e3
42
- },
43
- center: {
44
- type: Boolean,
45
- default: true
46
- },
47
- type: String,
48
- customClass: String,
49
- bottom: {
50
- type: String,
51
- default: "30px"
52
- },
53
- size: {
54
- type: [String, Number],
55
- default: "base"
56
- },
57
- iconSize: {
58
- type: String,
59
- default: "20"
60
- },
61
- icon: String,
62
- textAlignCenter: {
63
- type: Boolean,
64
- default: true
65
- },
66
- loadingRotate: {
67
- type: Boolean,
68
- default: true
69
- },
70
- bgColor: {
71
- type: String,
72
- default: ""
73
- },
74
- onClose: Function,
75
- unmount: Function,
76
- cover: {
77
- type: Boolean,
78
- default: false
79
- },
80
- coverColor: {
81
- type: String,
82
- default: ""
83
- },
84
- title: {
85
- type: String,
86
- default: ""
87
- },
88
- closeOnClickOverlay: {
89
- type: Boolean,
90
- default: false
91
- }
92
- },
93
- emits: ["close"],
94
- setup(props, { emit }) {
95
- let timer;
96
- const state = reactive({
97
- mounted: false
98
- });
99
- onMounted(() => {
100
- state.mounted = true;
101
- });
102
- const clearTimer = () => {
103
- if (timer) {
104
- clearTimeout(timer);
105
- timer = null;
106
- }
107
- };
108
- const hide = () => {
109
- state.mounted = false;
110
- };
111
- const show = () => {
112
- clearTimer();
113
- if (props.duration) {
114
- timer = setTimeout(() => {
115
- hide();
116
- }, props.duration);
117
- }
118
- };
119
- const clickCover = () => {
120
- if (props.closeOnClickOverlay) {
121
- hide();
122
- emit("close");
123
- }
124
- };
125
- if (props.duration) {
126
- show();
127
- }
128
- watch(() => props.duration, (val) => {
129
- if (val) {
130
- show();
131
- }
132
- });
133
- const hasIcon = computed(() => {
134
- if (props.type !== "text") {
135
- return true;
136
- } else {
137
- return !!props.icon;
138
- }
139
- });
140
- const toastBodyClass = computed(() => {
141
- return [
142
- "nut-toast",
143
- { "nut-toast-center": props.center },
144
- { "nut-toast-has-icon": hasIcon.value },
145
- { "nut-toast-cover": props.cover },
146
- { "nut-toast-loading": props.type === "loading" },
147
- props.customClass,
148
- "nut-toast-" + props.size
149
- ];
150
- });
151
- const onAfterLeave = () => {
152
- clearTimer();
153
- props.unmount(props.id);
154
- props.onClose && props.onClose();
155
- };
156
- return {
157
- state,
158
- hide,
159
- clickCover,
160
- hasIcon,
161
- toastBodyClass,
162
- onAfterLeave
163
- };
164
- }
165
- });
166
- const _hoisted_1 = {
167
- key: 0,
168
- class: "nut-toast-icon-wrapper"
169
- };
170
- const _hoisted_2 = {
171
- key: 1,
172
- class: "nut-toast-title"
173
- };
174
- const _hoisted_3 = ["innerHTML"];
175
- function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
176
- const _component_nut_icon = resolveComponent("nut-icon");
177
- return openBlock(), createBlock(Transition, {
178
- name: "toast-fade",
179
- onAfterLeave: _ctx.onAfterLeave
180
- }, {
181
- default: withCtx(() => [
182
- withDirectives(createElementVNode("view", {
183
- class: normalizeClass(_ctx.toastBodyClass),
184
- style: normalizeStyle({
185
- bottom: _ctx.center ? "auto" : _ctx.bottom,
186
- "background-color": _ctx.coverColor
187
- }),
188
- onClick: _cache[0] || (_cache[0] = (...args) => _ctx.clickCover && _ctx.clickCover(...args))
189
- }, [
190
- createElementVNode("view", {
191
- class: "nut-toast-inner",
192
- style: normalizeStyle({
193
- "text-align": _ctx.textAlignCenter ? "center" : "left",
194
- "background-color": _ctx.bgColor
195
- })
196
- }, [
197
- _ctx.hasIcon ? (openBlock(), createElementBlock("view", _hoisted_1, [
198
- createVNode(_component_nut_icon, {
199
- size: _ctx.iconSize,
200
- color: "#ffffff",
201
- name: _ctx.icon
202
- }, null, 8, ["size", "name"])
203
- ])) : createCommentVNode("", true),
204
- _ctx.title ? (openBlock(), createElementBlock("div", _hoisted_2, toDisplayString(_ctx.title), 1)) : createCommentVNode("", true),
205
- createElementVNode("view", {
206
- class: "nut-toast-text",
207
- innerHTML: _ctx.msg
208
- }, null, 8, _hoisted_3)
209
- ], 4)
210
- ], 6), [
211
- [vShow, _ctx.state.mounted]
212
- ])
213
- ]),
214
- _: 1
215
- }, 8, ["onAfterLeave"]);
216
- }
217
- var Toast = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render]]);
218
- const defaultOptions = {
219
- msg: "",
220
- id: "",
221
- duration: 2e3,
222
- center: true,
223
- type: "text",
224
- title: "",
225
- customClass: "",
226
- bottom: "30px",
227
- size: "base",
228
- iconSize: "20",
229
- icon: null,
230
- textAlignCenter: true,
231
- loadingRotate: true,
232
- bgColor: "",
233
- onClose: null,
234
- unmount: null,
235
- cover: false,
236
- coverColor: "",
237
- closeOnClickOverlay: false
238
- };
239
- let idsMap = [];
240
- let optsMap = [];
241
- const clearToast = (id) => {
242
- if (id) {
243
- const container = document.getElementById(id);
244
- optsMap = optsMap.filter((item) => item.id !== id);
245
- idsMap = idsMap.filter((item) => item !== id);
246
- if (container) {
247
- document.body.removeChild(container);
248
- }
249
- } else {
250
- idsMap.forEach((item) => {
251
- const container = document.getElementById(item);
252
- if (container) {
253
- document.body.removeChild(container);
254
- }
255
- });
256
- optsMap = [];
257
- idsMap = [];
258
- }
259
- };
260
- const updateToast = (opts) => {
261
- const container = document.getElementById(opts.id);
262
- if (container) {
263
- const currentOpt = optsMap.find((item) => item.id === opts.id);
264
- if (currentOpt) {
265
- opts = __spreadValues(__spreadValues(__spreadValues({}, defaultOptions), currentOpt), opts);
266
- } else {
267
- opts = __spreadValues(__spreadValues({}, defaultOptions), opts);
268
- }
269
- const instance = createVNode(Toast, opts);
270
- render(instance, container);
271
- return instance.component.ctx;
272
- }
273
- };
274
- const mountToast = (opts) => {
275
- opts.unmount = clearToast;
276
- let _id;
277
- if (opts.id) {
278
- _id = opts.id;
279
- if (idsMap.find((item) => item === opts.id)) {
280
- return updateToast(opts);
281
- }
282
- } else {
283
- _id = new Date().getTime() + "";
284
- }
285
- opts = __spreadValues(__spreadValues({}, defaultOptions), opts);
286
- opts.id = _id;
287
- idsMap.push(opts.id);
288
- optsMap.push(opts);
289
- const container = document.createElement("div");
290
- container.id = opts.id;
291
- const instance = createVNode(Toast, opts);
292
- render(instance, container);
293
- document.body.appendChild(container);
294
- return instance.component.ctx;
295
- };
296
- const errorMsg = (msg) => {
297
- if (!msg) {
298
- console.warn("[NutUI Toast]: msg\u4E0D\u80FD\u4E3A\u7A7A");
299
- return;
300
- }
301
- };
302
- const ToastFunction = {
303
- text(msg, opts = {}) {
304
- errorMsg(msg);
305
- return mountToast(__spreadProps(__spreadValues({}, opts), { type: "text", msg }));
306
- },
307
- success(msg, opts = {}) {
308
- errorMsg(msg);
309
- return mountToast(__spreadProps(__spreadValues({ icon: "success" }, opts), { msg, type: "success" }));
310
- },
311
- fail(msg, opts = {}) {
312
- errorMsg(msg);
313
- return mountToast(__spreadProps(__spreadValues({ icon: "failure" }, opts), { msg, type: "fail" }));
314
- },
315
- warn(msg, opts = {}) {
316
- errorMsg(msg);
317
- return mountToast(__spreadProps(__spreadValues({ icon: "tips" }, opts), { msg, type: "warn" }));
318
- },
319
- loading(msg, opts = {}) {
320
- return mountToast(__spreadProps(__spreadValues({
321
- icon: "loading"
322
- }, opts), {
323
- msg,
324
- type: "loading"
325
- }));
326
- },
327
- hide(id) {
328
- clearToast(id);
329
- },
330
- install(app) {
331
- app.use(Toast);
332
- app.config.globalProperties.$toast = ToastFunction;
333
- }
334
- };
335
- export { Toast, ToastFunction, ToastFunction as default };
31
+ const { create: h } = b("toast"), k = h({ components: { [x.name]: x }, props: { id: String, msg: String, duration: { type: Number, default: 2e3 }, center: { type: Boolean, default: true }, type: String, customClass: String, bottom: { type: String, default: "30px" }, size: { type: [String, Number], default: "base" }, iconSize: { type: String, default: "20" }, icon: String, textAlignCenter: { type: Boolean, default: true }, loadingRotate: { type: Boolean, default: true }, bgColor: { type: String, default: "" }, onClose: Function, unmount: Function, cover: { type: Boolean, default: false }, coverColor: { type: String, default: "" }, title: { type: String, default: "" }, closeOnClickOverlay: { type: Boolean, default: false } }, emits: ["close"], setup(i2, { emit: l2 }) {
32
+ let s2;
33
+ const a2 = t({ mounted: false });
34
+ e(() => {
35
+ a2.mounted = true;
36
+ });
37
+ const c2 = () => {
38
+ s2 && (clearTimeout(s2), s2 = null);
39
+ }, r2 = () => {
40
+ a2.mounted = false;
41
+ }, u2 = () => {
42
+ c2(), i2.duration && (s2 = setTimeout(() => {
43
+ r2();
44
+ }, i2.duration));
45
+ };
46
+ i2.duration && u2(), o(() => i2.duration, (t2) => {
47
+ t2 && u2();
48
+ });
49
+ const d2 = n(() => i2.type !== "text" || !!i2.icon), m2 = n(() => ["nut-toast", { "nut-toast-center": i2.center }, { "nut-toast-has-icon": d2.value }, { "nut-toast-cover": i2.cover }, { "nut-toast-loading": i2.type === "loading" }, i2.customClass, "nut-toast-" + i2.size]);
50
+ return { state: a2, hide: r2, clickCover: () => {
51
+ i2.closeOnClickOverlay && (r2(), l2("close"));
52
+ }, hasIcon: d2, toastBodyClass: m2, onAfterLeave: () => {
53
+ c2(), i2.unmount(i2.id), i2.onClose && i2.onClose();
54
+ } };
55
+ } }), B = { key: 0, class: "nut-toast-icon-wrapper" }, w = { key: 1, class: "nut-toast-title" }, z = ["innerHTML"];
56
+ var A = S(k, [["render", function(t2, e2, o2, n2, C2, b2) {
57
+ const x2 = i("nut-icon");
58
+ return l(), s(a, { name: "toast-fade", onAfterLeave: t2.onAfterLeave }, { default: c(() => [r(u("view", { class: d(t2.toastBodyClass), style: m({ bottom: t2.center ? "auto" : t2.bottom, "background-color": t2.coverColor }), onClick: e2[0] || (e2[0] = (...e3) => t2.clickCover && t2.clickCover(...e3)) }, [u("view", { class: "nut-toast-inner", style: m({ "text-align": t2.textAlignCenter ? "center" : "left", "background-color": t2.bgColor }) }, [t2.hasIcon ? (l(), p("view", B, [f(x2, { size: t2.iconSize, color: "#ffffff", name: t2.icon }, null, 8, ["size", "name"])])) : g("", true), t2.title ? (l(), p("div", w, y(t2.title), 1)) : g("", true), u("view", { class: "nut-toast-text", innerHTML: t2.msg }, null, 8, z)], 4)], 6), [[v, t2.state.mounted]])]), _: 1 }, 8, ["onAfterLeave"]);
59
+ }]]);
60
+ const I = { msg: "", id: "", duration: 2e3, center: true, type: "text", title: "", customClass: "", bottom: "30px", size: "base", iconSize: "20", icon: null, textAlignCenter: true, loadingRotate: true, bgColor: "", onClose: null, unmount: null, cover: false, coverColor: "", closeOnClickOverlay: false };
61
+ let L = [], O = [];
62
+ const E = (t2) => {
63
+ if (t2) {
64
+ const e2 = document.getElementById(t2);
65
+ O = O.filter((e3) => e3.id !== t2), L = L.filter((e3) => e3 !== t2), e2 && document.body.removeChild(e2);
66
+ } else
67
+ L.forEach((t3) => {
68
+ const e2 = document.getElementById(t3);
69
+ e2 && document.body.removeChild(e2);
70
+ }), O = [], L = [];
71
+ }, T = (t2) => {
72
+ let e2;
73
+ if (t2.unmount = E, t2.id) {
74
+ if (e2 = t2.id, L.find((e3) => e3 === t2.id))
75
+ return ((t3) => {
76
+ const e3 = document.getElementById(t3.id);
77
+ if (e3) {
78
+ const o3 = O.find((e4) => e4.id === t3.id);
79
+ t3 = o3 ? __spreadValues(__spreadValues(__spreadValues({}, I), o3), t3) : __spreadValues(__spreadValues({}, I), t3);
80
+ const n3 = f(A, t3);
81
+ return C(n3, e3), n3.component.ctx;
82
+ }
83
+ })(t2);
84
+ } else
85
+ e2 = new Date().getTime() + "";
86
+ (t2 = __spreadValues(__spreadValues({}, I), t2)).id = e2, L.push(t2.id), O.push(t2);
87
+ const o2 = document.createElement("div");
88
+ o2.id = t2.id;
89
+ const n2 = f(A, t2);
90
+ return C(n2, o2), document.body.appendChild(o2), n2.component.ctx;
91
+ }, j = { text: (t2, e2 = {}) => T(__spreadProps(__spreadValues({}, e2), { type: "text", msg: t2 })), success: (t2, e2 = {}) => T(__spreadProps(__spreadValues({ icon: "success" }, e2), { msg: t2, type: "success" })), fail: (t2, e2 = {}) => T(__spreadProps(__spreadValues({ icon: "failure" }, e2), { msg: t2, type: "fail" })), warn: (t2, e2 = {}) => T(__spreadProps(__spreadValues({ icon: "tips" }, e2), { msg: t2, type: "warn" })), loading: (t2, e2 = {}) => T(__spreadProps(__spreadValues({ icon: "loading" }, e2), { msg: t2, type: "loading" })), hide(t2) {
92
+ E(t2);
93
+ }, install(t2) {
94
+ t2.use(A), t2.config.globalProperties.$toast = j;
95
+ } };
96
+ export { A as Toast, j as ToastFunction, j as default };