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

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 (207) hide show
  1. package/CHANGELOG.md +48 -0
  2. package/README.md +3 -4
  3. package/dist/nutui.es.js +20426 -4050
  4. package/dist/nutui.umd.js +20529 -4049
  5. package/dist/packages/_es/ActionSheet.js +149 -36
  6. package/dist/packages/_es/Address.js +535 -129
  7. package/dist/packages/_es/AddressList.js +615 -113
  8. package/dist/packages/_es/Animate.js +64 -0
  9. package/dist/packages/_es/Audio.js +257 -72
  10. package/dist/packages/_es/AudioOperate.js +100 -32
  11. package/dist/packages/_es/Avatar.js +162 -54
  12. package/dist/packages/_es/AvatarGroup.js +73 -14
  13. package/dist/packages/_es/BackTop.js +156 -43
  14. package/dist/packages/_es/Badge.js +86 -14
  15. package/dist/packages/_es/Barrage.js +120 -41
  16. package/dist/packages/_es/Button.js +128 -23
  17. package/dist/packages/_es/Calendar.js +246 -24
  18. package/dist/packages/_es/CalendarItem.js +2 -1
  19. package/dist/packages/_es/Card.js +107 -10
  20. package/dist/packages/_es/Cascader.js +496 -179
  21. package/dist/packages/_es/Category.js +58 -15
  22. package/dist/packages/_es/CategoryPane.js +111 -11
  23. package/dist/packages/_es/Cell.js +108 -21
  24. package/dist/packages/_es/CellGroup.js +44 -9
  25. package/dist/packages/_es/Checkbox.js +134 -29
  26. package/dist/packages/_es/CheckboxGroup.js +79 -29
  27. package/dist/packages/_es/CircleProgress.js +150 -28
  28. package/dist/packages/_es/Col.js +56 -14
  29. package/dist/packages/_es/Collapse.js +110 -24
  30. package/dist/packages/_es/CollapseItem.js +252 -80
  31. package/dist/packages/_es/Comment.js +434 -64
  32. package/dist/packages/_es/ConfigProvider.js +25 -0
  33. package/dist/packages/_es/CountDown.js +238 -75
  34. package/dist/packages/_es/CountUp.js +539 -159
  35. package/dist/packages/_es/DatePicker.js +315 -117
  36. package/dist/packages/_es/Dialog.js +289 -79
  37. package/dist/packages/_es/Divider.js +65 -32
  38. package/dist/packages/_es/Drag.js +197 -56
  39. package/dist/packages/_es/Ecard.js +159 -24
  40. package/dist/packages/_es/Elevator.js +255 -77
  41. package/dist/packages/_es/Ellipsis.js +206 -0
  42. package/dist/packages/_es/Empty.js +71 -12
  43. package/dist/packages/_es/FixedNav.js +122 -15
  44. package/dist/packages/_es/Form.js +151 -64
  45. package/dist/packages/_es/FormItem.js +114 -15
  46. package/dist/packages/_es/Grid.js +6 -5
  47. package/dist/packages/_es/GridItem.js +144 -33
  48. package/dist/packages/_es/Icon.js +40 -15
  49. package/dist/packages/_es/Image.js +142 -0
  50. package/dist/packages/_es/ImagePreview.js +547 -84
  51. package/dist/packages/_es/Indicator.js +62 -15
  52. package/dist/packages/_es/InfiniteLoading.js +249 -76
  53. package/dist/packages/_es/Input.js +433 -51
  54. package/dist/packages/_es/InputNumber.js +160 -41
  55. package/dist/packages/_es/Layout.js +5 -4
  56. package/dist/packages/_es/List.js +106 -37
  57. package/dist/packages/_es/Menu.js +168 -29
  58. package/dist/packages/_es/MenuItem.js +173 -34
  59. package/dist/packages/_es/Navbar.js +192 -30
  60. package/dist/packages/_es/NoticeBar.js +380 -93
  61. package/dist/packages/_es/Notify.js +227 -91
  62. package/dist/packages/_es/NumberKeyboard.js +272 -41
  63. package/dist/packages/_es/OldPicker.js +457 -149
  64. package/dist/packages/_es/OverLay.js +98 -40
  65. package/dist/packages/_es/Pagination.js +157 -39
  66. package/dist/packages/_es/Picker.js +460 -148
  67. package/dist/packages/_es/Popover.js +957 -337
  68. package/dist/packages/_es/Popup.js +299 -74
  69. package/dist/packages/_es/Price.js +118 -16
  70. package/dist/packages/_es/Progress.js +146 -14
  71. package/dist/packages/_es/PullRefresh.js +339 -100
  72. package/dist/packages/_es/Radio.js +90 -22
  73. package/dist/packages/_es/RadioGroup.js +37 -8
  74. package/dist/packages/_es/Range.js +408 -102
  75. package/dist/packages/_es/Rate.js +193 -16
  76. package/dist/packages/_es/Row.js +64 -22
  77. package/dist/packages/_es/SearchBar.js +238 -56
  78. package/dist/packages/_es/ShortPassword.js +225 -35
  79. package/dist/packages/_es/SideNavBar.js +81 -43
  80. package/dist/packages/_es/SideNavBarItem.js +46 -11
  81. package/dist/packages/_es/Signature.js +160 -60
  82. package/dist/packages/_es/Skeleton.js +136 -20
  83. package/dist/packages/_es/Sku.js +491 -103
  84. package/dist/packages/_es/Step.js +115 -39
  85. package/dist/packages/_es/Steps.js +53 -18
  86. package/dist/packages/_es/Sticky.js +138 -53
  87. package/dist/packages/_es/SubSideNavBar.js +82 -36
  88. package/dist/packages/_es/Swipe.js +178 -60
  89. package/dist/packages/_es/Swiper.js +433 -121
  90. package/dist/packages/_es/SwiperItem.js +53 -22
  91. package/dist/packages/_es/Switch.js +116 -21
  92. package/dist/packages/_es/TabPane.js +39 -12
  93. package/dist/packages/_es/Tabbar.js +72 -17
  94. package/dist/packages/_es/TabbarItem.js +151 -29
  95. package/dist/packages/_es/Table.js +178 -37
  96. package/dist/packages/_es/Tabs.js +202 -59
  97. package/dist/packages/_es/Tag.js +97 -20
  98. package/dist/packages/_es/TextArea.js +160 -42
  99. package/dist/packages/_es/TimeDetail.js +79 -37
  100. package/dist/packages/_es/TimePannel.js +48 -33
  101. package/dist/packages/_es/TimeSelect.js +112 -15
  102. package/dist/packages/_es/Toast.js +310 -90
  103. package/dist/packages/_es/Uploader.js +455 -120
  104. package/dist/packages/_es/Video.js +332 -93
  105. package/dist/packages/_es/common.js +128 -38
  106. package/dist/packages/_es/component.js +76 -35
  107. package/dist/packages/_es/index.js +6 -5
  108. package/dist/packages/_es/index2.js +30 -9
  109. package/dist/packages/_es/index3.js +8 -6
  110. package/dist/packages/_es/index4.js +64 -13
  111. package/dist/packages/_es/index5.js +783 -130
  112. package/dist/packages/_es/plugin-vue_export-helper.js +8 -7
  113. package/dist/packages/_es/pxCheck.js +5 -3
  114. package/dist/packages/_es/raf.js +15 -8
  115. package/dist/packages/animate/index.scss +299 -0
  116. package/dist/packages/cell/index.scss +7 -1
  117. package/dist/packages/checkbox/index.scss +10 -0
  118. package/dist/packages/configprovider/index.scss +2 -0
  119. package/dist/packages/ellipsis/index.scss +12 -0
  120. package/dist/packages/formitem/index.scss +12 -0
  121. package/dist/packages/griditem/index.scss +11 -0
  122. package/dist/packages/image/index.scss +39 -0
  123. package/dist/packages/imagepreview/index.scss +26 -2
  124. package/dist/packages/input/index.scss +13 -0
  125. package/dist/packages/inputnumber/index.scss +21 -0
  126. package/dist/packages/locale/lang/baseLang.js +3 -3
  127. package/dist/packages/locale/lang/en-US.js +105 -5
  128. package/dist/packages/locale/lang/id-ID.js +105 -5
  129. package/dist/packages/locale/lang/index.js +38 -16
  130. package/dist/packages/locale/lang/zh-CN.js +105 -5
  131. package/dist/packages/locale/lang/zh-TW.js +105 -5
  132. package/dist/packages/menu/index.scss +45 -36
  133. package/dist/packages/menuitem/index.scss +4 -0
  134. package/dist/packages/navbar/index.scss +9 -0
  135. package/dist/packages/pagination/index.scss +19 -0
  136. package/dist/packages/radio/index.scss +18 -0
  137. package/dist/packages/range/index.scss +19 -0
  138. package/dist/packages/rate/index.scss +1 -1
  139. package/dist/packages/searchbar/index.scss +21 -0
  140. package/dist/packages/switch/index.scss +1 -0
  141. package/dist/packages/tabbar/index.scss +5 -0
  142. package/dist/packages/tabbaritem/index.scss +7 -0
  143. package/dist/packages/tabpane/index.scss +5 -0
  144. package/dist/packages/tabs/index.scss +22 -0
  145. package/dist/packages/textarea/index.scss +8 -0
  146. package/dist/smartips/attributes.json +140 -4
  147. package/dist/smartips/tags.json +55 -6
  148. package/dist/smartips/web-types.json +6963 -0
  149. package/dist/style.css +1 -1
  150. package/dist/style.es.js +1 -1
  151. package/dist/styles/font/config.json +3 -1
  152. package/dist/styles/font/demo_index.html +49 -3
  153. package/dist/styles/font/iconfont.css +11 -3
  154. package/dist/styles/font/iconfont.js +15 -15
  155. package/dist/styles/font/iconfont.json +14 -0
  156. package/dist/styles/font/iconfont.ttf +0 -0
  157. package/dist/styles/font/iconfont.woff +0 -0
  158. package/dist/styles/font/iconfont.woff2 +0 -0
  159. package/dist/styles/themes/default.scss +54 -50
  160. package/dist/styles/themes/jdb.scss +54 -50
  161. package/dist/styles/themes/jdt.scss +54 -50
  162. package/dist/styles/variables-jdb.scss +12 -0
  163. package/dist/styles/variables-jdt.scss +12 -0
  164. package/dist/styles/variables.scss +12 -0
  165. package/dist/types/__VUE/actionsheet/index.vue.d.ts +3 -3
  166. package/dist/types/__VUE/address/index.vue.d.ts +7 -7
  167. package/dist/types/__VUE/animate/index.vue.d.ts +48 -0
  168. package/dist/types/__VUE/animate/type.d.ts +6 -0
  169. package/dist/types/__VUE/avatar/index.vue.d.ts +3 -3
  170. package/dist/types/__VUE/calendar/index.vue.d.ts +1 -1
  171. package/dist/types/__VUE/calendaritem/index.vue.d.ts +10 -2
  172. package/dist/types/__VUE/cascader/index.vue.d.ts +2 -2
  173. package/dist/types/__VUE/circleprogress/index.vue.d.ts +2 -2
  174. package/dist/types/__VUE/collapse/index.vue.d.ts +3 -1
  175. package/dist/types/__VUE/configprovider/common.d.ts +20 -0
  176. package/dist/types/__VUE/configprovider/index.vue.d.ts +33 -0
  177. package/dist/types/__VUE/datepicker/index.vue.d.ts +2 -2
  178. package/dist/types/__VUE/dialog/index.vue.d.ts +2 -2
  179. package/dist/types/__VUE/ellipsis/index.vue.d.ts +72 -0
  180. package/dist/types/__VUE/fixednav/index.vue.d.ts +2 -2
  181. package/dist/types/__VUE/grid/index.vue.d.ts +2 -2
  182. package/dist/types/__VUE/image/index.vue.d.ts +105 -0
  183. package/dist/types/__VUE/image/type.d.ts +6 -0
  184. package/dist/types/__VUE/imagepreview/imagePreviewItem.vue.d.ts +95 -0
  185. package/dist/types/__VUE/imagepreview/index.vue.d.ts +56 -24
  186. package/dist/types/__VUE/menu/index.vue.d.ts +31 -4
  187. package/dist/types/__VUE/menuitem/index.vue.d.ts +12 -3
  188. package/dist/types/__VUE/noticebar/index.vue.d.ts +1 -1
  189. package/dist/types/__VUE/numberkeyboard/index.vue.d.ts +2 -2
  190. package/dist/types/__VUE/oldpicker/index.vue.d.ts +4 -4
  191. package/dist/types/__VUE/picker/index.vue.d.ts +4 -4
  192. package/dist/types/__VUE/popover/index.vue.d.ts +8 -8
  193. package/dist/types/__VUE/popup/index.vue.d.ts +4 -4
  194. package/dist/types/__VUE/range/index.vue.d.ts +1 -1
  195. package/dist/types/__VUE/rate/common.d.ts +149 -0
  196. package/dist/types/__VUE/rate/index.vue.d.ts +17 -7
  197. package/dist/types/__VUE/row/index.vue.d.ts +2 -2
  198. package/dist/types/__VUE/shortpassword/index.vue.d.ts +2 -2
  199. package/dist/types/__VUE/sku/index.vue.d.ts +3 -3
  200. package/dist/types/__VUE/swipe/index.vue.d.ts +2 -2
  201. package/dist/types/__VUE/swiper/index.vue.d.ts +2 -2
  202. package/dist/types/__VUE/switch/index.vue.d.ts +2 -2
  203. package/dist/types/__VUE/timeselect/index.vue.d.ts +3 -2
  204. package/dist/types/__VUE/uploader/uploader.d.ts +1 -0
  205. package/dist/types/index.d.ts +1 -1
  206. package/dist/types/nutui.d.ts +5 -1
  207. package/package.json +5 -4
@@ -1,44 +1,120 @@
1
- var __defProp = Object.defineProperty;
2
- var __defProps = Object.defineProperties;
3
- var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
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 = (a2, b) => {
9
- for (var prop in b || (b = {}))
10
- if (__hasOwnProp.call(b, prop))
11
- __defNormalProp(a2, prop, b[prop]);
12
- if (__getOwnPropSymbols)
13
- for (var prop of __getOwnPropSymbols(b)) {
14
- if (__propIsEnum.call(b, prop))
15
- __defNormalProp(a2, prop, b[prop]);
16
- }
17
- return a2;
18
- };
19
- var __spreadProps = (a2, b) => __defProps(a2, __getOwnPropDescs(b));
20
1
  /*!
21
- * @nutui/nutui v3.1.22-beta.3 Wed Jun 15 2022 20:12:30 GMT+0800 (中国标准时间)
2
+ * @nutui/nutui v3.1.23-beta.0 Mon Jun 27 2022 17:55:50 GMT+0800 (中国标准时间)
22
3
  * (c) 2022 @jdf2e.
23
4
  * Released under the MIT License.
24
5
  */
25
- import { getCurrentInstance as e, inject as t, reactive as n, computed as s, toRefs as o, resolveComponent as i, openBlock as l, createElementBlock as c, normalizeClass as r, createElementVNode as p, createBlock as a, Fragment as u, toDisplayString as d, createCommentVNode as m, renderSlot as v } from "vue";
26
- import { c as f } from "./component.js";
27
- import { _ as y } from "./plugin-vue_export-helper.js";
6
+ import { getCurrentInstance, inject, reactive, computed, toRefs, resolveComponent, openBlock, createElementBlock, normalizeClass, createElementVNode, createBlock, Fragment, toDisplayString, createCommentVNode, renderSlot } from "vue";
7
+ import { c as createComponent } from "./component.js";
8
+ import { _ as _export_sfc } from "./plugin-vue_export-helper.js";
28
9
  import "../locale/lang";
29
- const { create: k, componentName: w } = f("step"), g = k({ props: { title: { type: String, default: "" }, content: { type: String, default: "" }, icon: { type: String, default: null }, iconColor: { type: String, default: "" }, size: { type: [String, Number], default: "12px" } }, emits: ["click-step"], setup(i2, { emit: l2, slots: c2 }) {
30
- const { proxy: r2 } = e(), p2 = t("parent");
31
- p2.relation(r2);
32
- const a2 = n({ dot: p2.props.progressDot }), u2 = s(() => p2.state.children.indexOf(r2) + 1), d2 = s(() => (() => {
33
- const e2 = u2.value;
34
- return e2 < +p2.props.current ? "finish" : e2 === +p2.props.current ? "process" : "wait";
35
- })()), m2 = s(() => ({ [w]: true, [`${w}-${d2.value}`]: true }));
36
- return __spreadProps(__spreadValues({}, o(a2)), { index: u2, classes: m2, handleClickStep: () => {
37
- p2.onEmit(u2.value);
38
- } });
39
- } }), x = { class: "nut-step-head" }, S = p("view", { class: "nut-step-line" }, null, -1), h = { key: 2, class: "nut-step-inner" }, $ = { class: "nut-step-main" }, C = { class: "nut-step-title" }, z = { key: 0 }, j = { key: 0, class: "nut-step-content" }, H = ["innerHTML"];
40
- var L = y(g, [["render", function(e2, t2, n2, s2, o2, f2) {
41
- const y2 = i("nut-icon");
42
- return l(), c("view", { class: r(e2.classes), onClick: t2[0] || (t2[0] = (...t3) => e2.handleClickStep && e2.handleClickStep(...t3)) }, [p("view", x, [S, p("view", { class: r(["nut-step-icon", [e2.dot ? "" : e2.icon ? "is-icon" : "is-text"]]) }, [e2.icon ? (l(), a(y2, { key: 0, class: "nut-step-icon-inner", color: e2.iconColor, name: e2.icon, size: e2.size }, null, 8, ["color", "name", "size"])) : e2.dot ? (l(), c(u, { key: 1 }, [], 64)) : (l(), c("view", h, d(e2.index), 1))], 2)]), p("view", $, [p("view", C, [e2.$slots.title ? m("", true) : (l(), c("span", z, d(e2.title), 1)), v(e2.$slots, "title")]), e2.content || e2.$slots.content ? (l(), c("view", j, [e2.$slots.content ? m("", true) : (l(), c("span", { key: 0, innerHTML: e2.content }, null, 8, H)), v(e2.$slots, "content")])) : m("", true)])], 2);
43
- }]]);
44
- export { L as default };
10
+ const { create, componentName } = createComponent("step");
11
+ const _sfc_main = create({
12
+ props: {
13
+ title: {
14
+ type: String,
15
+ default: ""
16
+ },
17
+ content: {
18
+ type: String,
19
+ default: ""
20
+ },
21
+ icon: {
22
+ type: String,
23
+ default: null
24
+ },
25
+ iconColor: {
26
+ type: String,
27
+ default: ""
28
+ },
29
+ size: {
30
+ type: [String, Number],
31
+ default: "12px"
32
+ }
33
+ },
34
+ emits: ["click-step"],
35
+ setup(props, { emit, slots }) {
36
+ const { proxy } = getCurrentInstance();
37
+ const parent = inject("parent");
38
+ parent["relation"](proxy);
39
+ const state = reactive({
40
+ dot: parent.props.progressDot
41
+ });
42
+ const index2 = computed(() => parent.state.children.indexOf(proxy) + 1);
43
+ const getCurrentStatus = () => {
44
+ const activeIndex = index2.value;
45
+ if (activeIndex < +parent.props.current)
46
+ return "finish";
47
+ return activeIndex === +parent.props.current ? "process" : "wait";
48
+ };
49
+ const status = computed(() => {
50
+ return getCurrentStatus();
51
+ });
52
+ const classes = computed(() => {
53
+ const prefixCls = componentName;
54
+ return {
55
+ [prefixCls]: true,
56
+ [`${prefixCls}-${status.value}`]: true
57
+ };
58
+ });
59
+ const handleClickStep = () => {
60
+ parent["onEmit"](index2.value);
61
+ };
62
+ return {
63
+ ...toRefs(state),
64
+ index: index2,
65
+ classes,
66
+ handleClickStep
67
+ };
68
+ }
69
+ });
70
+ const _hoisted_1 = { class: "nut-step-head" };
71
+ const _hoisted_2 = /* @__PURE__ */ createElementVNode("view", { class: "nut-step-line" }, null, -1);
72
+ const _hoisted_3 = {
73
+ key: 2,
74
+ class: "nut-step-inner"
75
+ };
76
+ const _hoisted_4 = { class: "nut-step-main" };
77
+ const _hoisted_5 = { class: "nut-step-title" };
78
+ const _hoisted_6 = { key: 0 };
79
+ const _hoisted_7 = {
80
+ key: 0,
81
+ class: "nut-step-content"
82
+ };
83
+ const _hoisted_8 = ["innerHTML"];
84
+ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
85
+ const _component_nut_icon = resolveComponent("nut-icon");
86
+ return openBlock(), createElementBlock("view", {
87
+ class: normalizeClass(_ctx.classes),
88
+ onClick: _cache[0] || (_cache[0] = (...args) => _ctx.handleClickStep && _ctx.handleClickStep(...args))
89
+ }, [
90
+ createElementVNode("view", _hoisted_1, [
91
+ _hoisted_2,
92
+ createElementVNode("view", {
93
+ class: normalizeClass(["nut-step-icon", [!_ctx.dot ? _ctx.icon ? "is-icon" : "is-text" : ""]])
94
+ }, [
95
+ _ctx.icon ? (openBlock(), createBlock(_component_nut_icon, {
96
+ key: 0,
97
+ class: "nut-step-icon-inner",
98
+ color: _ctx.iconColor,
99
+ name: _ctx.icon,
100
+ size: _ctx.size
101
+ }, null, 8, ["color", "name", "size"])) : _ctx.dot ? (openBlock(), createElementBlock(Fragment, { key: 1 }, [], 64)) : (openBlock(), createElementBlock("view", _hoisted_3, toDisplayString(_ctx.index), 1))
102
+ ], 2)
103
+ ]),
104
+ createElementVNode("view", _hoisted_4, [
105
+ createElementVNode("view", _hoisted_5, [
106
+ !_ctx.$slots.title ? (openBlock(), createElementBlock("span", _hoisted_6, toDisplayString(_ctx.title), 1)) : createCommentVNode("", true),
107
+ renderSlot(_ctx.$slots, "title")
108
+ ]),
109
+ _ctx.content || _ctx.$slots.content ? (openBlock(), createElementBlock("view", _hoisted_7, [
110
+ !_ctx.$slots.content ? (openBlock(), createElementBlock("span", {
111
+ key: 0,
112
+ innerHTML: _ctx.content
113
+ }, null, 8, _hoisted_8)) : createCommentVNode("", true),
114
+ renderSlot(_ctx.$slots, "content")
115
+ ])) : createCommentVNode("", true)
116
+ ])
117
+ ], 2);
118
+ }
119
+ var index = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render]]);
120
+ export { index as default };
@@ -1,23 +1,58 @@
1
1
  /*!
2
- * @nutui/nutui v3.1.22-beta.3 Wed Jun 15 2022 20:12:30 GMT+0800 (中国标准时间)
2
+ * @nutui/nutui v3.1.23-beta.0 Mon Jun 27 2022 17:55:50 GMT+0800 (中国标准时间)
3
3
  * (c) 2022 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
6
- import { reactive as t, computed as e, provide as o, h as r } from "vue";
7
- import { c as s } from "./component.js";
6
+ import { reactive, computed, provide, h } from "vue";
7
+ import { c as createComponent } from "./component.js";
8
8
  import "../locale/lang";
9
- const { create: n, componentName: p } = s("steps"), i = n({ props: { direction: { type: String, default: "horizontal" }, current: { type: [String, Number], default: "0" }, progressDot: { type: Boolean, default: false } }, emits: ["click-step"], setup(s2, { emit: n2, slots: i2 }) {
10
- const a = t({ children: [] }), c = e(() => {
11
- const t2 = p;
12
- return { [t2]: true, [`${t2}-${s2.direction}`]: true, [`${t2}-dot`]: !!s2.progressDot };
13
- });
14
- return o("parent", { relation: (t2) => {
15
- t2 && a.children.push(t2);
16
- }, state: a, props: s2, onEmit: (t2) => {
17
- n2("click-step", t2);
18
- } }), () => {
19
- var _a;
20
- return r("view", { class: c.value }, (_a = i2.default) == null ? void 0 : _a.call(i2));
21
- };
22
- } });
23
- export { i as default };
9
+ const { create, componentName } = createComponent("steps");
10
+ const _sfc_main = create({
11
+ props: {
12
+ direction: {
13
+ type: String,
14
+ default: "horizontal"
15
+ },
16
+ current: {
17
+ type: [String, Number],
18
+ default: "0"
19
+ },
20
+ progressDot: {
21
+ type: Boolean,
22
+ default: false
23
+ }
24
+ },
25
+ emits: ["click-step"],
26
+ setup(props, { emit, slots }) {
27
+ const state = reactive({
28
+ children: []
29
+ });
30
+ const classes = computed(() => {
31
+ const prefixCls = componentName;
32
+ return {
33
+ [prefixCls]: true,
34
+ [`${prefixCls}-${props.direction}`]: true,
35
+ [`${prefixCls}-dot`]: !!props.progressDot
36
+ };
37
+ });
38
+ const relation = (child) => {
39
+ child && state.children.push(child);
40
+ };
41
+ const onEmit = (index) => {
42
+ emit("click-step", index);
43
+ };
44
+ provide("parent", {
45
+ relation,
46
+ state,
47
+ props,
48
+ onEmit
49
+ });
50
+ return () => {
51
+ var _a;
52
+ return h("view", {
53
+ class: classes.value
54
+ }, (_a = slots.default) == null ? void 0 : _a.call(slots));
55
+ };
56
+ }
57
+ });
58
+ export { _sfc_main as default };
@@ -1,59 +1,144 @@
1
1
  /*!
2
- * @nutui/nutui v3.1.22-beta.3 Wed Jun 15 2022 20:12:30 GMT+0800 (中国标准时间)
2
+ * @nutui/nutui v3.1.23-beta.0 Mon Jun 27 2022 17:55:50 GMT+0800 (中国标准时间)
3
3
  * (c) 2022 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
6
- import { ref as t, reactive as e, computed as o, watch as i, onMounted as n, onUnmounted as r, h as s, unref as l } from "vue";
7
- import { c as a } from "./component.js";
8
- import { u as d } from "./index2.js";
6
+ import { ref, reactive, computed, watch, onMounted, onUnmounted, h, unref } from "vue";
7
+ import { c as createComponent } from "./component.js";
8
+ import { u as useRect } from "./index2.js";
9
9
  import "../locale/lang";
10
- const { componentName: f, create: p } = a("sticky"), m = p({ props: { position: { type: String, default: "top" }, top: { type: [Number, String], default: 0 }, bottom: { type: [Number, String], default: 0 }, container: { type: Object }, zIndex: { type: [Number, String], default: 2e3 } }, emits: ["change", "scroll"], setup(a2, { emit: p2, slots: m2 }) {
11
- const u = t(), c = e({ width: 0, height: 0, fixed: false, transform: 0 }), h = o(() => {
12
- const { fixed: t2, width: e2, height: o2 } = c;
13
- if (t2)
14
- return { width: `${e2}px`, height: `${o2}px` };
15
- }), x = o(() => {
16
- if (!c.fixed)
17
- return;
18
- const t2 = { width: `${c.width}px`, height: `${c.height}px`, [a2.position]: `${g.value}px`, zIndex: +a2.zIndex };
19
- return c.transform && (t2.transform = `translate3d(0, ${c.transform}px, 0)`), t2;
20
- }), g = o(() => a2.position === "top" ? a2.top : a2.bottom), w = () => !(!u.value || ((t2) => {
21
- const e2 = l(t2);
22
- if (!e2)
23
- return false;
24
- const o2 = window.getComputedStyle(e2), i2 = o2.display === "none", n2 = e2.offsetParent === null && o2.position !== "fixed";
25
- return i2 || n2;
26
- })(u)), v = () => {
27
- if (!w())
28
- return;
29
- const { container: t2, position: e2 } = a2, o2 = (i2 = window, Math.max(0, "scrollTop" in i2 ? i2.scrollTop : i2.pageYOffset));
30
- var i2;
31
- const n2 = d(u);
32
- if ((n2.width || n2.height) && (c.width = n2.width, c.height = n2.height), e2 === "top")
33
- if (t2) {
34
- const e3 = d(t2), o3 = e3.bottom - +g.value - c.height;
35
- c.fixed = +g.value > n2.top && e3.bottom > 0, c.transform = o3 < 0 ? o3 : 0;
36
- } else
37
- c.fixed = g.value > n2.top;
38
- else if (e2 === "bottom") {
39
- const e3 = document.documentElement.clientHeight;
40
- if (t2) {
41
- const o3 = d(t2), i3 = e3 - o3.top - +g.value - c.height;
42
- c.fixed = e3 - +g.value < n2.bottom && e3 > o3.top, c.transform = i3 < 0 ? -i3 : 0;
43
- } else
44
- c.fixed = e3 - +g.value < n2.bottom;
10
+ const { componentName, create } = createComponent("sticky");
11
+ const _sfc_main = create({
12
+ props: {
13
+ position: {
14
+ type: String,
15
+ default: "top"
16
+ },
17
+ top: {
18
+ type: [Number, String],
19
+ default: 0
20
+ },
21
+ bottom: {
22
+ type: [Number, String],
23
+ default: 0
24
+ },
25
+ container: {
26
+ type: Object
27
+ },
28
+ zIndex: {
29
+ type: [Number, String],
30
+ default: 2e3
45
31
  }
46
- p2("scroll", { top: o2, fixed: c.fixed });
47
- };
48
- return i(() => c.fixed, (t2) => {
49
- p2("change", t2);
50
- }), n(() => {
51
- window.addEventListener("scroll", v), v();
52
- }), r(() => {
53
- window.removeEventListener("scroll", v);
54
- }), () => {
55
- var _a;
56
- return s("view", { style: h.value, ref: u }, [s("view", { style: x.value, class: c.fixed ? `${f} nut-sticky--fixed` : f }, (_a = m2.default) == null ? void 0 : _a.call(m2))]);
57
- };
58
- } });
59
- export { m as default };
32
+ },
33
+ emits: ["change", "scroll"],
34
+ setup(props, { emit, slots }) {
35
+ const root = ref();
36
+ const state = reactive({
37
+ width: 0,
38
+ height: 0,
39
+ fixed: false,
40
+ transform: 0
41
+ });
42
+ const rootStyle = computed(() => {
43
+ const { fixed, width, height } = state;
44
+ if (fixed) {
45
+ return {
46
+ width: `${width}px`,
47
+ height: `${height}px`
48
+ };
49
+ }
50
+ });
51
+ const stickyStyle = computed(() => {
52
+ if (!state.fixed)
53
+ return;
54
+ const style = {
55
+ width: `${state.width}px`,
56
+ height: `${state.height}px`,
57
+ [props.position]: `${offset.value}px`,
58
+ zIndex: +props.zIndex
59
+ };
60
+ if (state.transform)
61
+ style.transform = `translate3d(0, ${state.transform}px, 0)`;
62
+ return style;
63
+ });
64
+ const offset = computed(() => {
65
+ return props.position === "top" ? props.top : props.bottom;
66
+ });
67
+ const isHidden = (elementRef) => {
68
+ const el = unref(elementRef);
69
+ if (!el)
70
+ return false;
71
+ const style = window.getComputedStyle(el);
72
+ const hidden = style.display === "none";
73
+ const parentHidden = el.offsetParent === null && style.position !== "fixed";
74
+ return hidden || parentHidden;
75
+ };
76
+ const isExistRoot = () => {
77
+ if (!root.value || isHidden(root))
78
+ return false;
79
+ return true;
80
+ };
81
+ const getScrollTop = (el) => {
82
+ return Math.max(0, "scrollTop" in el ? el.scrollTop : el.pageYOffset);
83
+ };
84
+ const renderFixed = () => {
85
+ var _a;
86
+ return h("view", {
87
+ style: stickyStyle.value,
88
+ class: state.fixed ? `${componentName} nut-sticky--fixed` : componentName
89
+ }, (_a = slots.default) == null ? void 0 : _a.call(slots));
90
+ };
91
+ const onScroll = () => {
92
+ if (!isExistRoot())
93
+ return;
94
+ const { container, position } = props;
95
+ const scrollTop = getScrollTop(window);
96
+ const rootRect = useRect(root);
97
+ if (rootRect.width || rootRect.height) {
98
+ state.width = rootRect.width;
99
+ state.height = rootRect.height;
100
+ }
101
+ if (position === "top") {
102
+ if (container) {
103
+ const containerRect = useRect(container);
104
+ const diff = containerRect.bottom - +offset.value - state.height;
105
+ state.fixed = +offset.value > rootRect.top && containerRect.bottom > 0;
106
+ state.transform = diff < 0 ? diff : 0;
107
+ } else {
108
+ state.fixed = offset.value > rootRect.top;
109
+ }
110
+ } else if (position === "bottom") {
111
+ const clientHeight = document.documentElement.clientHeight;
112
+ if (container) {
113
+ const containerRect = useRect(container);
114
+ const diff = clientHeight - containerRect.top - +offset.value - state.height;
115
+ state.fixed = clientHeight - +offset.value < rootRect.bottom && clientHeight > containerRect.top;
116
+ state.transform = diff < 0 ? -diff : 0;
117
+ } else {
118
+ state.fixed = clientHeight - +offset.value < rootRect.bottom;
119
+ }
120
+ }
121
+ emit("scroll", {
122
+ top: scrollTop,
123
+ fixed: state.fixed
124
+ });
125
+ };
126
+ watch(() => state.fixed, (val) => {
127
+ emit("change", val);
128
+ });
129
+ onMounted(() => {
130
+ window.addEventListener("scroll", onScroll);
131
+ onScroll();
132
+ });
133
+ onUnmounted(() => {
134
+ window.removeEventListener("scroll", onScroll);
135
+ });
136
+ return () => {
137
+ return h("view", {
138
+ style: rootStyle.value,
139
+ ref: root
140
+ }, [renderFixed()]);
141
+ };
142
+ }
143
+ });
144
+ export { _sfc_main as default };
@@ -1,41 +1,87 @@
1
- var __defProp = Object.defineProperty;
2
- var __defProps = Object.defineProperties;
3
- var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
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 = (a2, b2) => {
9
- for (var prop in b2 || (b2 = {}))
10
- if (__hasOwnProp.call(b2, prop))
11
- __defNormalProp(a2, prop, b2[prop]);
12
- if (__getOwnPropSymbols)
13
- for (var prop of __getOwnPropSymbols(b2)) {
14
- if (__propIsEnum.call(b2, prop))
15
- __defNormalProp(a2, prop, b2[prop]);
16
- }
17
- return a2;
18
- };
19
- var __spreadProps = (a2, b2) => __defProps(a2, __getOwnPropDescs(b2));
20
1
  /*!
21
- * @nutui/nutui v3.1.22-beta.3 Wed Jun 15 2022 20:12:30 GMT+0800 (中国标准时间)
2
+ * @nutui/nutui v3.1.23-beta.0 Mon Jun 27 2022 17:55:50 GMT+0800 (中国标准时间)
22
3
  * (c) 2022 @jdf2e.
23
4
  * Released under the MIT License.
24
5
  */
25
- import { reactive as e, computed as t, onMounted as i, toRefs as n, resolveComponent as s, openBlock as a, createElementBlock as l, normalizeClass as o, createElementVNode as r, withModifiers as c, toDisplayString as u, createVNode as d, normalizeStyle as p, renderSlot as m } from "vue";
26
- import { c as _ } from "./component.js";
27
- import { _ as b } from "./plugin-vue_export-helper.js";
6
+ import { reactive, computed, onMounted, toRefs, resolveComponent, openBlock, createElementBlock, normalizeClass, createElementVNode, withModifiers, toDisplayString, createVNode, normalizeStyle, renderSlot } from "vue";
7
+ import { c as createComponent } from "./component.js";
8
+ import { _ as _export_sfc } from "./plugin-vue_export-helper.js";
28
9
  import "../locale/lang";
29
- const { componentName: v, create: k } = _("subsidenavbar"), y = k({ props: { title: { type: String, default: "" }, ikey: { type: [String, Number], default: "" }, open: { type: Boolean, default: true } }, emits: ["title-click"], setup: (s2, a2) => {
30
- const l2 = e({ direction: "" }), o2 = t(() => ({ [v]: true })), r2 = t(() => ({ height: l2.direction ? "0px" : "auto" }));
31
- return i(() => {
32
- l2.direction = s2.open ? "" : "up";
33
- }), __spreadProps(__spreadValues({}, n(l2)), { classes: o2, style: r2, handleClick: () => {
34
- a2.emit("title-click"), l2.direction = l2.direction ? "" : "up";
35
- } });
36
- } }), f = ["ikey"], h = { class: "nut-subsidenavbar__title__text" }, g = { class: "nut-subsidenavbar__title__icon" };
37
- var w = b(y, [["render", function(e2, t2, i2, n2, _2, b2) {
38
- const v2 = s("nut-icon");
39
- return a(), l("view", { class: o(e2.classes), ikey: e2.ikey }, [r("view", { class: "nut-subsidenavbar__title", onClick: t2[0] || (t2[0] = c((...t3) => e2.handleClick && e2.handleClick(...t3), ["stop"])) }, [r("span", h, u(e2.title), 1), r("span", g, [d(v2, { name: "down-arrow", class: o(e2.direction) }, null, 8, ["class"])])]), r("view", { class: o(["nut-subsidenavbar__list", e2.direction ? "nutFadeOut" : "nutFadeIn"]), style: p(e2.style) }, [m(e2.$slots, "default")], 6)], 10, f);
40
- }]]);
41
- export { w as default };
10
+ const { componentName, create } = createComponent("subsidenavbar");
11
+ const _sfc_main = create({
12
+ props: {
13
+ title: {
14
+ type: String,
15
+ default: ""
16
+ },
17
+ ikey: {
18
+ type: [String, Number],
19
+ default: ""
20
+ },
21
+ open: {
22
+ type: Boolean,
23
+ default: true
24
+ }
25
+ },
26
+ emits: ["title-click"],
27
+ setup: (props, context) => {
28
+ const state = reactive({
29
+ direction: ""
30
+ });
31
+ const classes = computed(() => {
32
+ const prefixCls = componentName;
33
+ return {
34
+ [prefixCls]: true
35
+ };
36
+ });
37
+ const style = computed(() => {
38
+ return {
39
+ height: !state.direction ? "auto" : "0px"
40
+ };
41
+ });
42
+ const handleClick = () => {
43
+ context.emit("title-click");
44
+ state.direction = !state.direction ? "up" : "";
45
+ };
46
+ onMounted(() => {
47
+ state.direction = props.open ? "" : "up";
48
+ });
49
+ return {
50
+ ...toRefs(state),
51
+ classes,
52
+ style,
53
+ handleClick
54
+ };
55
+ }
56
+ });
57
+ const _hoisted_1 = ["ikey"];
58
+ const _hoisted_2 = { class: "nut-subsidenavbar__title__text" };
59
+ const _hoisted_3 = { class: "nut-subsidenavbar__title__icon" };
60
+ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
61
+ const _component_nut_icon = resolveComponent("nut-icon");
62
+ return openBlock(), createElementBlock("view", {
63
+ class: normalizeClass(_ctx.classes),
64
+ ikey: _ctx.ikey
65
+ }, [
66
+ createElementVNode("view", {
67
+ class: "nut-subsidenavbar__title",
68
+ onClick: _cache[0] || (_cache[0] = withModifiers((...args) => _ctx.handleClick && _ctx.handleClick(...args), ["stop"]))
69
+ }, [
70
+ createElementVNode("span", _hoisted_2, toDisplayString(_ctx.title), 1),
71
+ createElementVNode("span", _hoisted_3, [
72
+ createVNode(_component_nut_icon, {
73
+ name: "down-arrow",
74
+ class: normalizeClass(_ctx.direction)
75
+ }, null, 8, ["class"])
76
+ ])
77
+ ]),
78
+ createElementVNode("view", {
79
+ class: normalizeClass(["nut-subsidenavbar__list", !_ctx.direction ? "nutFadeIn" : "nutFadeOut"]),
80
+ style: normalizeStyle(_ctx.style)
81
+ }, [
82
+ renderSlot(_ctx.$slots, "default")
83
+ ], 6)
84
+ ], 10, _hoisted_1);
85
+ }
86
+ var index = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render]]);
87
+ export { index as default };