@opentiny/vue-renderless 3.21.2 → 3.23.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 (331) hide show
  1. package/amount/index.js +4 -4
  2. package/anchor/index.js +1 -1
  3. package/async-flowchart/index.js +1 -1
  4. package/autocomplete/index.js +4 -1
  5. package/autocomplete/vue.js +3 -3
  6. package/base-select/index.js +20 -21
  7. package/base-select/vue.js +2 -2
  8. package/calendar/index.js +2 -2
  9. package/calendar-bar/index.js +2 -2
  10. package/calendar-bar/vue.js +1 -1
  11. package/calendar-view/index.js +91 -25
  12. package/calendar-view/vue.js +6 -4
  13. package/card/index.js +1 -1
  14. package/card-template/index.js +1 -1
  15. package/carousel/index.js +4 -4
  16. package/carousel/vue.js +1 -1
  17. package/cascader/index.js +21 -11
  18. package/cascader/vue.js +6 -5
  19. package/cascader-menu/vue.js +2 -2
  20. package/cascader-mobile/index.js +1 -1
  21. package/cascader-node/vue.js +11 -1
  22. package/cascader-panel/index.js +4 -4
  23. package/cascader-panel/node.js +3 -4
  24. package/cascader-panel/vue.js +1 -1
  25. package/cascader-select/column-index.js +2 -2
  26. package/cascader-view/index.js +1 -1
  27. package/chart-bar/index.js +1 -1
  28. package/chart-candle/index.js +1 -1
  29. package/chart-core/deps/utils.js +6 -6
  30. package/chart-core/index.js +1 -1
  31. package/chart-funnel/index.js +1 -1
  32. package/chart-gauge/index.js +1 -1
  33. package/chart-line/index.js +1 -1
  34. package/chart-map/index.js +1 -1
  35. package/chart-pie/index.js +1 -1
  36. package/chart-radar/index.js +1 -1
  37. package/chart-sankey/index.js +1 -1
  38. package/chart-scatter/index.js +1 -1
  39. package/chart-waterfall/index.js +1 -1
  40. package/chart-wordcloud/index.js +1 -1
  41. package/checkbox/index.js +1 -1
  42. package/collapse-item/vue.js +1 -1
  43. package/column-list-item/index.js +1 -1
  44. package/common/deps/dom.js +20 -196
  45. package/common/deps/infinite-scroll.js +4 -43
  46. package/common/deps/popup-manager.js +1 -200
  47. package/container/index.js +2 -2
  48. package/crop/index.js +3 -3
  49. package/currency/index.js +2 -2
  50. package/date-panel/index.js +82 -26
  51. package/date-panel/vue.js +53 -21
  52. package/date-picker/vue.js +1 -1
  53. package/date-picker-mobile/index.js +1 -1
  54. package/date-range/index.js +74 -37
  55. package/date-range/vue.js +27 -23
  56. package/date-table/index.js +8 -5
  57. package/date-table/vue.js +1 -1
  58. package/dialog-box/index.js +3 -3
  59. package/dialog-box/vue.js +1 -1
  60. package/dialog-select/index.js +15 -4
  61. package/dialog-select/vue.js +7 -4
  62. package/drawer/index.js +2 -2
  63. package/drop-times/index.js +1 -1
  64. package/dropdown/index.js +11 -3
  65. package/dropdown/vue.js +2 -2
  66. package/dropdown-item/index.js +1 -1
  67. package/dropdown-item/mf.js +1 -1
  68. package/dropdown-menu/index.js +1 -1
  69. package/espace/vue.js +2 -2
  70. package/fall-menu/index.js +3 -3
  71. package/file-upload/index.js +16 -13
  72. package/file-upload/vue.js +2 -2
  73. package/filter/vue.js +1 -1
  74. package/filter-panel/vue.js +1 -2
  75. package/floating-button/index.js +1 -1
  76. package/flowchart/index.js +3 -3
  77. package/flowchart/vue.js +1 -1
  78. package/fluent-editor/index.js +5 -7
  79. package/fluent-editor/options.js +2 -2
  80. package/form/index.js +20 -2
  81. package/form-item/index.js +6 -6
  82. package/fullscreen/index.js +1 -1
  83. package/fullscreen/vue.js +1 -1
  84. package/grid/plugins/export.js +8 -2
  85. package/grid/plugins/exportExcel.js +3 -3
  86. package/grid/plugins/resize.js +2 -2
  87. package/grid/static/base/helperEqualCompare.js +1 -1
  88. package/grid/static/base/isPlainObject.js +1 -1
  89. package/grid/utils/common.js +2 -2
  90. package/grid/utils/dom.js +12 -7
  91. package/grid/utils/event.js +4 -4
  92. package/hrapprover/index.js +1 -1
  93. package/image/index.js +3 -3
  94. package/image-viewer/index.js +4 -6
  95. package/image-viewer/vue.js +1 -1
  96. package/input/index.js +2 -2
  97. package/input/vue.js +1 -1
  98. package/ip-address/index.js +17 -21
  99. package/ip-address/vue.js +1 -1
  100. package/link-menu/index.js +1 -1
  101. package/link-menu/vue.js +1 -1
  102. package/load-list/index.js +1 -1
  103. package/load-list/vue.js +4 -4
  104. package/loading/index.js +2 -2
  105. package/menu/vue.js +1 -1
  106. package/milestone/index.js +6 -45
  107. package/modal/index.js +5 -5
  108. package/month-range/index.js +48 -5
  109. package/month-range/vue.js +19 -15
  110. package/month-table/index.js +5 -5
  111. package/month-table/vue.js +1 -1
  112. package/nav-menu/index.js +7 -7
  113. package/notify/index.js +3 -3
  114. package/number-animation/index.js +53 -0
  115. package/number-animation/vue.js +27 -0
  116. package/numeric/index.js +5 -5
  117. package/option/index.js +1 -1
  118. package/option/vue.js +2 -1
  119. package/package.json +3 -2
  120. package/pager/index.js +28 -16
  121. package/pager/vue.js +27 -16
  122. package/panel/index.js +1 -1
  123. package/picker/index.js +28 -23
  124. package/picker/vue.js +6 -6
  125. package/picker-column/index.js +1 -1
  126. package/pop-upload/vue.js +1 -1
  127. package/popconfirm/vue.js +1 -1
  128. package/popeditor/index.js +6 -6
  129. package/popeditor/vue.js +2 -2
  130. package/popover/index.js +3 -3
  131. package/popover/vue.js +1 -1
  132. package/popup/index.js +3 -3
  133. package/pull-refresh/index.js +1 -1
  134. package/pull-refresh-mobile-first/index.js +1 -1
  135. package/pull-refresh-mobile-first/vue.js +4 -4
  136. package/quarter-panel/index.js +2 -2
  137. package/quarter-panel/vue.js +1 -1
  138. package/radio-group/index.js +1 -1
  139. package/rate/index.js +1 -1
  140. package/rate/vue.js +1 -1
  141. package/recycle-scroller/index.js +2 -2
  142. package/recycle-scroller/vue.js +1 -1
  143. package/rich-text/index.js +1 -1
  144. package/rich-text/table-module.js +2 -2
  145. package/river/river.js +1 -1
  146. package/river/vue.js +1 -1
  147. package/scrollbar/vue-bar.js +1 -1
  148. package/scrollbar/vue.js +1 -1
  149. package/search/index.js +3 -3
  150. package/select/index.js +26 -22
  151. package/select/vue.js +8 -7
  152. package/select-dropdown/vue.js +5 -5
  153. package/selected-box/index.js +1 -1
  154. package/signature/index.js +1 -1
  155. package/signature/vue.js +2 -2
  156. package/skeleton/index.js +1 -1
  157. package/slider/index.js +4 -4
  158. package/slider-button-group/slide-button.js +2 -2
  159. package/split/index.js +2 -2
  160. package/split/vue.js +1 -1
  161. package/statistic/index.js +1 -1
  162. package/steps/index.js +2 -3
  163. package/steps/slide-bar.js +2 -2
  164. package/sticky/vue.js +4 -4
  165. package/tab-bar/index.js +2 -2
  166. package/tab-item-mf/vue.js +1 -1
  167. package/tab-nav/index.js +4 -4
  168. package/tabbar/index.js +1 -1
  169. package/tabbar/vue.js +1 -1
  170. package/tabbar-item/index.js +1 -1
  171. package/tabs-mf/index.js +9 -5
  172. package/tabs-mf/vue-bar.js +5 -4
  173. package/tabs-mf/vue-swipe.js +1 -1
  174. package/tabs-mf/vue.js +2 -2
  175. package/tabs-mf/wheel.js +3 -3
  176. package/tag-group/vue.js +2 -2
  177. package/tall-storage/index.js +1 -1
  178. package/tall-storage/vue.js +1 -1
  179. package/time/index.js +1 -1
  180. package/time/vue.js +1 -1
  181. package/time-line/index.js +1 -1
  182. package/time-line-new/index.js +1 -1
  183. package/time-panel/index.js +2 -2
  184. package/time-panel/vue.js +1 -1
  185. package/time-range/index.js +1 -1
  186. package/time-range/vue.js +1 -1
  187. package/time-spinner/index.js +4 -4
  188. package/time-spinner/vue.js +1 -1
  189. package/timeline-item/index.js +1 -1
  190. package/toggle-menu/index.js +1 -1
  191. package/tooltip/index.js +2 -2
  192. package/tooltip/vue.js +2 -2
  193. package/top-box/index.js +3 -3
  194. package/transfer/index.js +42 -1
  195. package/transfer/vue.js +64 -24
  196. package/transfer-panel/index.js +6 -1
  197. package/tree/index.js +9 -9
  198. package/tree/vue.js +2 -2
  199. package/tree-node/index.js +1 -1
  200. package/tree-node/vue.js +1 -1
  201. package/tree-select/index.js +68 -22
  202. package/tree-select/vue.js +27 -3
  203. package/types/async-flowchart.type.d.ts +2 -14
  204. package/types/breadcrumb-item.type.d.ts +5 -1
  205. package/types/breadcrumb.type.d.ts +5 -1
  206. package/types/button-group.type.d.ts +5 -1
  207. package/types/button.type.d.ts +2 -2
  208. package/types/cascader.type.d.ts +6 -1
  209. package/types/date-table.type.d.ts +1 -120
  210. package/types/dropdown.type.d.ts +1 -1
  211. package/types/label.type.d.ts +1 -53
  212. package/types/loading.type.d.ts +12 -0
  213. package/types/numeric.type.d.ts +3 -22
  214. package/types/pager.type.d.ts +12 -7
  215. package/types/popconfirm.type.d.ts +2 -0
  216. package/types/steps.type.d.ts +1 -0
  217. package/types/tag-group.type.d.ts +2 -14
  218. package/types/tag.type.d.ts +4 -4
  219. package/types/tooltip.type.d.ts +3 -13
  220. package/types/transfer.type.d.ts +3 -0
  221. package/types/user-head.type.d.ts +0 -4
  222. package/upload/index.js +1 -1
  223. package/upload-list/index.js +1 -1
  224. package/upload-list/vue.js +4 -4
  225. package/user/index.js +7 -7
  226. package/user/vue.js +15 -2
  227. package/user-contact/vue.js +2 -2
  228. package/virtual-scroll-box/index.js +2 -2
  229. package/wizard/index.js +3 -3
  230. package/year-range/index.js +61 -11
  231. package/year-range/vue.js +33 -20
  232. package/year-table/index.js +10 -5
  233. package/avatar/index.js +0 -30
  234. package/avatar/vue.js +0 -22
  235. package/common/array.js +0 -115
  236. package/common/bigInt.js +0 -315
  237. package/common/browser.js +0 -81
  238. package/common/calendar/calendar.js +0 -97
  239. package/common/dataset/index.js +0 -99
  240. package/common/date.js +0 -354
  241. package/common/decimal.js +0 -155
  242. package/common/deps/ResizeObserver.js +0 -456
  243. package/common/deps/after-leave.js +0 -27
  244. package/common/deps/clickoutside.js +0 -75
  245. package/common/deps/date-util.js +0 -255
  246. package/common/deps/date.js +0 -286
  247. package/common/deps/debounce.js +0 -8
  248. package/common/deps/eSpaceCtrl.js +0 -304
  249. package/common/deps/fastdom/async.js +0 -41
  250. package/common/deps/fastdom/index.js +0 -9
  251. package/common/deps/fastdom/sandbox.js +0 -53
  252. package/common/deps/fastdom/singleton.js +0 -88
  253. package/common/deps/fullscreen/apis.js +0 -143
  254. package/common/deps/fullscreen/screenfull.js +0 -165
  255. package/common/deps/memorize.js +0 -124
  256. package/common/deps/observe-visibility.js +0 -106
  257. package/common/deps/popper.js +0 -616
  258. package/common/deps/repeat-click.js +0 -29
  259. package/common/deps/resize-event.js +0 -39
  260. package/common/deps/scroll-into-view.js +0 -29
  261. package/common/deps/scrollbar-width.js +0 -33
  262. package/common/deps/throttle.js +0 -45
  263. package/common/deps/touch-emulator.js +0 -103
  264. package/common/deps/touch.js +0 -37
  265. package/common/deps/tree-model/node.js +0 -475
  266. package/common/deps/tree-model/tree-store.js +0 -312
  267. package/common/deps/tree-model/util.js +0 -24
  268. package/common/deps/upload-ajax.js +0 -81
  269. package/common/deps/useEventListener.js +0 -54
  270. package/common/deps/useInstanceSlots.js +0 -22
  271. package/common/deps/useRect.js +0 -25
  272. package/common/deps/useRelation.js +0 -89
  273. package/common/deps/useTouch.js +0 -68
  274. package/common/deps/useUserAgent.js +0 -16
  275. package/common/deps/useWindowSize.js +0 -23
  276. package/common/deps/vue-emitter.js +0 -34
  277. package/common/deps/vue-popper.js +0 -180
  278. package/common/deps/vue-popup.js +0 -138
  279. package/common/event.js +0 -46
  280. package/common/form/const.js +0 -10
  281. package/common/function.js +0 -28
  282. package/common/global.js +0 -11
  283. package/common/index.js +0 -259
  284. package/common/object.js +0 -227
  285. package/common/prop-util.js +0 -43
  286. package/common/runtime.js +0 -79
  287. package/common/string.js +0 -417
  288. package/common/type.js +0 -66
  289. package/common/validate/index.js +0 -10
  290. package/common/validate/messages.js +0 -65
  291. package/common/validate/rules/enum.js +0 -12
  292. package/common/validate/rules/index.js +0 -18
  293. package/common/validate/rules/pattern.js +0 -20
  294. package/common/validate/rules/range.js +0 -52
  295. package/common/validate/rules/required.js +0 -11
  296. package/common/validate/rules/type.js +0 -100
  297. package/common/validate/rules/whitespace.js +0 -10
  298. package/common/validate/schema.js +0 -290
  299. package/common/validate/util.js +0 -211
  300. package/common/validate/validations/array.js +0 -22
  301. package/common/validate/validations/date.js +0 -31
  302. package/common/validate/validations/enum.js +0 -22
  303. package/common/validate/validations/float.js +0 -22
  304. package/common/validate/validations/index.js +0 -46
  305. package/common/validate/validations/integer.js +0 -22
  306. package/common/validate/validations/method.js +0 -21
  307. package/common/validate/validations/number.js +0 -25
  308. package/common/validate/validations/pattern.js +0 -21
  309. package/common/validate/validations/required.js +0 -11
  310. package/common/validate/validations/string.js +0 -33
  311. package/common/validate/validations/type.js +0 -29
  312. package/index-bar/index.js +0 -66
  313. package/index-bar/vue.js +0 -73
  314. package/index-bar-anchor/vue.js +0 -16
  315. package/label/index.js +0 -56
  316. package/label/vue.js +0 -26
  317. package/list/index.js +0 -13
  318. package/list/vue.js +0 -17
  319. package/mask/index.js +0 -13
  320. package/mask/vue.js +0 -18
  321. package/mini-picker/index.js +0 -165
  322. package/mini-picker/vue.js +0 -122
  323. package/multi-select/index.js +0 -394
  324. package/multi-select/vue.js +0 -113
  325. package/multi-select-item/index.js +0 -23
  326. package/multi-select-item/vue.js +0 -31
  327. package/toast/index.js +0 -7
  328. package/toast/vue.js +0 -19
  329. package/types/toast.type.d.ts +0 -63
  330. package/wheel/index.js +0 -165
  331. package/wheel/vue.js +0 -79
package/amount/index.js CHANGED
@@ -2,10 +2,10 @@ import {
2
2
  __spreadProps,
3
3
  __spreadValues
4
4
  } from "../chunk-G2ADBYYC.js";
5
- import { on, off } from "../common/deps/dom";
6
- import { formatNumber } from "../common/decimal";
7
- import { getMiniDecimal, equalsDecimal } from "../common/bigInt";
8
- import { isNumber } from "../common/type";
5
+ import { on, off } from "@opentiny/utils";
6
+ import { formatNumber } from "@opentiny/utils";
7
+ import { getMiniDecimal, equalsDecimal } from "@opentiny/utils";
8
+ import { isNumber } from "@opentiny/utils";
9
9
  const initService = (service) => {
10
10
  const { utils = {} } = service || {};
11
11
  const noopFn = () => null;
package/anchor/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import "../chunk-G2ADBYYC.js";
2
- import { addClass, removeClass } from "../common/deps/dom";
2
+ import { addClass, removeClass } from "@opentiny/utils";
3
3
  const getEleMentBySelect = (parent, selector) => (selector == null ? void 0 : selector.startsWith("#")) ? document.getElementById(selector.slice(1)) : parent.querySelector(selector);
4
4
  const setFixAnchor = ({ vm, props }) => () => {
5
5
  const { anchorWrapRef } = vm.$refs;
@@ -1,5 +1,5 @@
1
1
  import "../chunk-G2ADBYYC.js";
2
- import ResizeObserver from "../common/deps/ResizeObserver";
2
+ import { ResizeObserver } from "@opentiny/utils";
3
3
  const observeContainerSize = ({
4
4
  nextTick,
5
5
  vm,
@@ -1,5 +1,5 @@
1
1
  import "../chunk-G2ADBYYC.js";
2
- import { FORM_ITEM, FORM_EVENT } from "../common/form/const";
2
+ import { FORM_ITEM, FORM_EVENT } from "@opentiny/utils";
3
3
  const getData = ({
4
4
  props,
5
5
  state,
@@ -61,6 +61,9 @@ const handleFocus = ({
61
61
  }
62
62
  };
63
63
  const handleBlur = ({ emit, state, dispatch, props }) => () => {
64
+ if (!state.activated) {
65
+ return;
66
+ }
64
67
  state.suggestionDisabled = true;
65
68
  emit("blur");
66
69
  if (state.validateEvent) {
@@ -1,7 +1,7 @@
1
1
  import "../chunk-G2ADBYYC.js";
2
- import debounce from "../common/deps/debounce";
3
- import userPopper from "../common/deps/vue-popper";
4
- import { guid } from "../common/string";
2
+ import { debounce } from "@opentiny/utils";
3
+ import { userPopper } from "@opentiny/vue-hooks";
4
+ import { guid } from "@opentiny/utils";
5
5
  import {
6
6
  computedVisible,
7
7
  watchVisible,
@@ -2,24 +2,24 @@ import {
2
2
  __spreadProps,
3
3
  __spreadValues
4
4
  } from "../chunk-G2ADBYYC.js";
5
- import { find } from "../common/array";
6
- import { getObj, isEqual } from "../common/object";
7
- import { isKorean } from "../common/string";
8
- import scrollIntoView from "../common/deps/scroll-into-view";
9
- import PopupManager from "../common/deps/popup-manager";
10
- import debounce from "../common/deps/debounce";
11
- import { getDataset } from "../common/dataset";
12
- import Memorize from "../common/deps/memorize";
13
- import { isEmptyObject } from "../common/type";
14
- import { addResizeListener, removeResizeListener } from "../common/deps/resize-event";
15
- import { extend } from "../common/object";
16
- import { BROWSER_NAME } from "../common";
17
- import browserInfo from "../common/browser";
18
- import { isNull } from "../common/type";
19
- import { fastdom } from "../common/deps/fastdom";
5
+ import { find } from "@opentiny/utils";
6
+ import { getObj, isEqual } from "@opentiny/utils";
7
+ import { isKorean } from "@opentiny/utils";
8
+ import { scrollIntoView } from "@opentiny/utils";
9
+ import { PopupManager } from "@opentiny/utils";
10
+ import { debounce } from "@opentiny/utils";
11
+ import { getDataset } from "@opentiny/utils";
12
+ import { Memorize } from "@opentiny/utils";
13
+ import { isEmptyObject } from "@opentiny/utils";
14
+ import { addResizeListener, removeResizeListener } from "@opentiny/utils";
15
+ import { extend } from "@opentiny/utils";
16
+ import { BROWSER_NAME } from "@opentiny/utils";
17
+ import { browserInfo } from "@opentiny/utils";
18
+ import { isNull } from "@opentiny/utils";
19
+ import { fastdom } from "@opentiny/utils";
20
20
  import { deepClone } from "../picker-column";
21
21
  import { escapeRegexpString } from "../option";
22
- import { isBrowser } from "../common/browser";
22
+ import { isServer } from "@opentiny/utils";
23
23
  const handleComposition = ({ api, nextTick, state }) => (event) => {
24
24
  const text = event.target.value;
25
25
  if (event.type === "compositionend") {
@@ -222,7 +222,6 @@ const getResultOfSetSelected = ({ state, api, props }) => {
222
222
  return result;
223
223
  };
224
224
  const setSelected = ({ api, nextTick, props, vm, state }) => () => {
225
- var _a, _b, _c, _d;
226
225
  if (!props.multiple) {
227
226
  const option = getOptionOfSetSelected({ api, props });
228
227
  state.selected = option;
@@ -231,7 +230,7 @@ const setSelected = ({ api, nextTick, props, vm, state }) => () => {
231
230
  } else {
232
231
  const result = getResultOfSetSelected({ state, props, api });
233
232
  state.selectCls = result.length ? result.length === state.options.length ? "checked-sur" : "halfselect" : "check";
234
- if (!((_b = (_a = state.selected) == null ? void 0 : _a[0]) == null ? void 0 : _b.isTree) && !((_d = (_c = state.selected) == null ? void 0 : _c[0]) == null ? void 0 : _d.isGrid)) {
233
+ if (!vm.$slots.panel) {
235
234
  state.selected = result;
236
235
  }
237
236
  state.selected.length && (state.selectedLabel = "");
@@ -378,7 +377,7 @@ const resetInputHeight = ({ constants, nextTick, props, vm, state, api, designCo
378
377
  return;
379
378
  }
380
379
  nextTick(() => {
381
- var _a;
380
+ var _a, _b;
382
381
  if (!vm.$refs.reference) {
383
382
  return;
384
383
  }
@@ -393,7 +392,7 @@ const resetInputHeight = ({ constants, nextTick, props, vm, state, api, designCo
393
392
  }
394
393
  const sizeInMap = (designConfig == null ? void 0 : designConfig.state.initialInputHeight) || state.initialInputHeight || 32;
395
394
  const noSelected = state.selected.length === 0;
396
- const spacingHeight = designConfig ? (_a = designConfig.state) == null ? void 0 : _a.spacingHeight : constants.SPACING_HEIGHT;
395
+ const spacingHeight = (_b = (_a = designConfig == null ? void 0 : designConfig.state) == null ? void 0 : _a.spacingHeight) != null ? _b : constants.SPACING_HEIGHT;
397
396
  if (!state.isDisplayOnly) {
398
397
  if (!noSelected && tags) {
399
398
  fastdom.measure(() => {
@@ -1292,7 +1291,7 @@ const watchInitValue = ({ props, emit }) => (value) => {
1292
1291
  }
1293
1292
  };
1294
1293
  const watchShowClose = ({ nextTick, state, parent }) => () => {
1295
- if (!isBrowser)
1294
+ if (isServer)
1296
1295
  return;
1297
1296
  nextTick(() => {
1298
1297
  const parentEl = parent.$el;
@@ -102,8 +102,8 @@ import {
102
102
  computedShowTagText,
103
103
  isTagClosable
104
104
  } from "./index";
105
- import debounce from "../common/deps/debounce";
106
- import { isNumber } from "../common/type";
105
+ import { debounce } from "@opentiny/utils";
106
+ import { isNumber } from "@opentiny/utils";
107
107
  const api = [
108
108
  "state",
109
109
  "toggleCheckAll",
package/calendar/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import "../chunk-G2ADBYYC.js";
2
- import { copyArray } from "../common/object";
3
- import { lastMonth, nextMonth, getCalendar, transformArray, parseDate } from "../common/calendar/calendar";
2
+ import { copyArray } from "@opentiny/utils";
3
+ import { lastMonth, nextMonth, getCalendar, transformArray, parseDate } from "@opentiny/utils";
4
4
  const computedCalendar = ({ state }) => () => {
5
5
  const calendar = getCalendar(state.activeYear, state.activeMonth);
6
6
  const result = [];
@@ -1,6 +1,6 @@
1
1
  import "../chunk-G2ADBYYC.js";
2
- import { lastMonth, nextMonth } from "../common/calendar/calendar";
3
- import { getDirection } from "../common/deps/touch";
2
+ import { lastMonth, nextMonth } from "@opentiny/utils";
3
+ import { getDirection } from "@opentiny/utils";
4
4
  const normalConfig = (config, state) => {
5
5
  let { disabled, holiday, workday, mark } = config || {};
6
6
  const weekFirst = getWeekFirst(state, { config });
@@ -28,7 +28,7 @@ import {
28
28
  touchmove,
29
29
  touchend
30
30
  } from "./index";
31
- import throttle from "../common/deps/throttle";
31
+ import { throttle } from "@opentiny/utils";
32
32
  const api = [
33
33
  "state",
34
34
  "handleDraggerClick",
@@ -2,8 +2,8 @@ import {
2
2
  __spreadValues
3
3
  } from "../chunk-G2ADBYYC.js";
4
4
  import { cloneDeep } from "../chart-core/deps/utils";
5
- import { getDirection } from "../common/deps/touch";
6
- import { getDays, lastMonth, nextMonth, getCalendar, transformArray } from "../common/calendar/calendar";
5
+ import { getDirection } from "@opentiny/utils";
6
+ import { getDays, lastMonth, nextMonth, getCalendar, transformArray } from "@opentiny/utils";
7
7
  const getTime = (date) => new Date(date).getTime();
8
8
  const newSchedule = ({ emit }) => (date) => emit("new-schedule", date);
9
9
  const isShowNewSchedule = ({ props }) => (date) => props.showNewSchedule instanceof Function ? props.showNewSchedule(date) : false;
@@ -38,14 +38,13 @@ const getEventShowTime = ({ state }) => (type, event, date) => {
38
38
  const handleMouseenter = ({ state, vm }) => ($event, val) => {
39
39
  const tooltip = vm.$refs.tooltip;
40
40
  tooltip.state.referenceElm = $event.target;
41
- tooltip.state.popperElm && (tooltip.state.popperElm.style.display = "none");
42
- tooltip.doDestroy();
43
41
  state.eventTipContent = val;
44
- state.eventTipVisible = true;
45
- setTimeout(tooltip.updatePopper, 20);
42
+ setTimeout(tooltip.show(), 20);
46
43
  };
47
- const handleMouseleave = ({ state }) => () => {
48
- state.eventTipVisible = false;
44
+ const handleMouseleave = ({ vm }) => () => {
45
+ const tooltip = vm.$refs.tooltip;
46
+ tooltip.setExpectedState(false);
47
+ tooltip.debounceClose();
49
48
  };
50
49
  const isSelectedDate = ({ state }) => (day) => {
51
50
  if (day.isLast || day.isNext)
@@ -70,14 +69,30 @@ const parseDate = (time) => {
70
69
  } else {
71
70
  date = /* @__PURE__ */ new Date();
72
71
  }
73
- return {
74
- year: date.getFullYear(),
75
- month: date.getMonth() + 1,
76
- day: date.getDate(),
77
- hours: date.getHours(),
78
- minutes: date.getMinutes(),
79
- seconds: date.getSeconds()
80
- };
72
+ const timeParts = hasNoTime(time);
73
+ let timesPartsOne = {};
74
+ let timesPartsTwo = {};
75
+ if (!timeParts.hours) {
76
+ timesPartsOne = {
77
+ year: timeParts.year,
78
+ month: timeParts.month,
79
+ day: timeParts.day,
80
+ hours: 0,
81
+ minutes: 0,
82
+ seconds: 0
83
+ };
84
+ } else {
85
+ timesPartsTwo = {
86
+ year: date.getFullYear(),
87
+ month: date.getMonth() + 1,
88
+ day: date.getDate(),
89
+ hours: date.getHours(),
90
+ minutes: date.getMinutes(),
91
+ seconds: date.getSeconds()
92
+ };
93
+ }
94
+ const timePartsList = Object.assign(timesPartsOne, timesPartsTwo);
95
+ return timePartsList;
81
96
  };
82
97
  const computedCalendar = ({ props, state }) => (type) => {
83
98
  let year = state.activeYear;
@@ -114,6 +129,33 @@ const getCalendarItem = function(item, props, isFunction, type, isNext, isLast)
114
129
  }
115
130
  return res;
116
131
  };
132
+ const hasNoTime = (date) => {
133
+ const datetimeStr = date;
134
+ let hoursTime = 0;
135
+ let minutesTime = 0;
136
+ let secondsTime = 0;
137
+ const [datePart, timePart] = datetimeStr.split(" ");
138
+ const [year, month, day] = datePart && datePart.split("-");
139
+ if (timePart) {
140
+ const [hours, minutes, seconds] = timePart && timePart.split(":");
141
+ hoursTime = hours;
142
+ minutesTime = minutes;
143
+ secondsTime = seconds;
144
+ }
145
+ return {
146
+ year: Number(year),
147
+ month: Number(month),
148
+ day: Number(day),
149
+ hours: hoursTime,
150
+ minutes: minutesTime,
151
+ seconds: secondsTime
152
+ };
153
+ };
154
+ const timesToGMT8 = (date) => {
155
+ const originalDate = new Date(date);
156
+ const gmt8 = new Date(originalDate.getTime() + 15 * 60 * 60 * 1e3);
157
+ return gmt8;
158
+ };
117
159
  const handleEvents = ({ props, state }) => () => {
118
160
  let result = [];
119
161
  const dayMillisecond = 24 * 60 * 60 * 1e3;
@@ -141,14 +183,16 @@ const handleEvents = ({ props, state }) => () => {
141
183
  seconds: endSeconds
142
184
  } = parseDate(item.end);
143
185
  if ([lastYear, +state.activeYear, nextYear].includes(startYear) && [lastMon, +state.activeMonth, nextMon].includes(startMonth) || [lastYear, +state.activeYear, nextYear].includes(endYear) && [lastMon, +state.activeMonth, nextMon].includes(endMonth)) {
144
- item.start = getTime(item.start);
145
- item.end = getTime(item.end);
146
- item.startTime = makeUpZero(startHours) + ":" + makeUpZero(startMinutes) + ":" + makeUpZero(startSeconds);
147
- item.endTime = makeUpZero(endHours) + ":" + makeUpZero(endMinutes) + ":" + makeUpZero(endSeconds);
186
+ const timeStartPart = hasNoTime(item.start);
187
+ const timeEndPart = hasNoTime(item.end);
188
+ item.start = timeStartPart.hours ? getTime(item.start) : timesToGMT8(item.start);
189
+ item.end = timeEndPart.hours ? getTime(item.end) : timesToGMT8(item.end);
190
+ item.startTime = timeStartPart.hours ? makeUpZero(startHours) + ":" + makeUpZero(startMinutes) + ":" + makeUpZero(startSeconds) : "";
191
+ item.endTime = timeEndPart.hours ? makeUpZero(endHours) + ":" + makeUpZero(endMinutes) + ":" + makeUpZero(endSeconds) : "";
148
192
  item.startDay = startYear + "-" + startMonth + "-" + startDay;
149
193
  item.endDay = endYear + "-" + endMonth + "-" + endDay;
150
- const startTimestamp = getTime(startYear + "-" + startMonth + "-" + startDay);
151
- const endTimestamp = getTime(endYear + "-" + endMonth + "-" + endDay);
194
+ const startTimestamp = getTime(item.startDay);
195
+ const endTimestamp = getTime(item.endDay);
152
196
  const days = Math.abs(endTimestamp - startTimestamp) / dayMillisecond;
153
197
  item.dayNumber = days >= 1 ? days + 1 : 1;
154
198
  if (props.modes.includes("timeline")) {
@@ -189,7 +233,16 @@ function splitEvent(props, event) {
189
233
  }
190
234
  return result;
191
235
  }
192
- const selectDay = ({ state, emit }) => (day, i) => {
236
+ const computedSelectDay = ({ state }) => (day) => {
237
+ if (!day || !day.value || day.disabled)
238
+ return false;
239
+ if (state.multiSelect) {
240
+ return state.selectedDates.includes(day.value);
241
+ } else {
242
+ return state.selectedDate === day.value;
243
+ }
244
+ };
245
+ const selectDay = ({ props, state, emit, api }) => (day, i) => {
193
246
  if (!day || !day.value || day.disabled)
194
247
  return;
195
248
  state.activedWeekIndex = i;
@@ -203,9 +256,10 @@ const selectDay = ({ state, emit }) => (day, i) => {
203
256
  } else {
204
257
  state.selectedDates.push(date);
205
258
  }
259
+ const dateEvent = dealEvents(props, api, state.selectedDates);
206
260
  emit("update:modelValue", state.selectedDates);
207
261
  emit("selected-date-change", state.selectedDates);
208
- emit("date-click", date);
262
+ emit("date-click", state.selectedDates, dateEvent);
209
263
  } else {
210
264
  if (day.isNext) {
211
265
  const { year, month } = nextMonth(state.activeYear, state.activeMonth);
@@ -219,10 +273,21 @@ const selectDay = ({ state, emit }) => (day, i) => {
219
273
  }
220
274
  state.selectedDate = day.value.toString().length > 2 ? day.value : `${state.activeYear}-${state.activeMonth}-${day.value}`;
221
275
  state.showSelectedDateEvents = true;
276
+ const dateEvent = dealEvents(props, api, [state.selectedDate]);
222
277
  emit("update:modelValue", state.selectedDate);
223
- emit("date-click", state.selectedDate);
278
+ emit("date-click", state.selectedDate, dateEvent[0]);
224
279
  }
225
280
  };
281
+ const dealEvents = (props, api, date) => {
282
+ return date.map((item) => {
283
+ let event = api.getEventByTime(item, props._constants.DAY_START_TIME, props._constants.DAY_END_TIME);
284
+ event.forEach((e) => {
285
+ delete e.dayArr;
286
+ delete e.dayNumber;
287
+ });
288
+ return event;
289
+ });
290
+ };
226
291
  const getEventByMonth = ({ state }) => (year, month) => {
227
292
  const result = [];
228
293
  const days = getDays(Number(year), Number(month));
@@ -564,6 +629,7 @@ function resetTouchStatus(state) {
564
629
  export {
565
630
  computeCascaderOptions,
566
631
  computedCalendar,
632
+ computedSelectDay,
567
633
  currentDateChange,
568
634
  dateIsToday,
569
635
  genDayTimes,
@@ -2,6 +2,7 @@ import "../chunk-G2ADBYYC.js";
2
2
  import {
3
3
  computedCalendar,
4
4
  handleEvents,
5
+ computedSelectDay,
5
6
  selectDay,
6
7
  getEventByTime,
7
8
  isToday,
@@ -40,13 +41,14 @@ import {
40
41
  touchmove,
41
42
  touchend
42
43
  } from "./index";
43
- import throttle from "../common/deps/throttle";
44
+ import { throttle } from "@opentiny/utils";
44
45
  const api = [
45
46
  "state",
46
47
  "renderProxy",
47
48
  "isToday",
48
49
  "dateIsToday",
49
50
  "getEventByTime",
51
+ "computedSelectDay",
50
52
  "selectDay",
51
53
  "toToday",
52
54
  "getPrevWeek",
@@ -119,7 +121,6 @@ const initState = ({ reactive, props, computed, api: api2, images, modesIcon })
119
121
  showMonth: false,
120
122
  showSelectedDateEvents: false,
121
123
  multiSelect: computed(() => props.multiSelect),
122
- eventTipVisible: false,
123
124
  cascaderVisible: false,
124
125
  eventTipContent: {},
125
126
  activeYear: props.year,
@@ -255,7 +256,8 @@ const initApi = ({ vm, api: api2, state, t, props, emit, nextTick }) => {
255
256
  computeCascaderOptions: computeCascaderOptions(t),
256
257
  isToday: isToday(state),
257
258
  dateIsToday: dateIsToday(),
258
- selectDay: selectDay({ state, emit }),
259
+ selectDay: selectDay({ props, state, emit, api: api2 }),
260
+ computedSelectDay: computedSelectDay({ state }),
259
261
  getEventByTime: getEventByTime({ props, state }),
260
262
  toToday: toToday({ state, api: api2, nextTick }),
261
263
  getAllWednesdaysInYear: getAllWednesdaysInYear({ state }),
@@ -271,7 +273,7 @@ const initApi = ({ vm, api: api2, state, t, props, emit, nextTick }) => {
271
273
  goPrevMonth: throttle(50, true, goPrevMonth({ state })),
272
274
  goNextMonth: throttle(50, true, goNextMonth({ state })),
273
275
  handleMouseenter: handleMouseenter({ vm, state }),
274
- handleMouseleave: handleMouseleave({ state }),
276
+ handleMouseleave: handleMouseleave({ vm }),
275
277
  isSelectedDate: isSelectedDate({ state }),
276
278
  isStartOrEndDay: isStartOrEndDay({ state }),
277
279
  getDayBgColor: getDayBgColor({ props }),
package/card/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import "../chunk-G2ADBYYC.js";
2
- import { isNull } from "../common/type";
2
+ import { isNull } from "@opentiny/utils";
3
3
  const handelIconClick = ({ emit }) => (item, index, event) => {
4
4
  if (item.disabled)
5
5
  return;
@@ -1,5 +1,5 @@
1
1
  import "../chunk-G2ADBYYC.js";
2
- import PopupManager from "../common/deps/popup-manager";
2
+ import { PopupManager } from "@opentiny/utils";
3
3
  const toolClick = (showMoreTools) => (cb) => {
4
4
  typeof cb === "function" && cb();
5
5
  showMoreTools.value = false;
package/carousel/index.js CHANGED
@@ -1,8 +1,8 @@
1
1
  import "../chunk-G2ADBYYC.js";
2
- import throttle from "../common/deps/throttle";
3
- import { getDirection } from "../common/deps/touch";
4
- import { POSITION } from "../common";
5
- import emulate from "../common/deps/touch-emulator";
2
+ import { throttle } from "@opentiny/utils";
3
+ import { getDirection } from "@opentiny/utils";
4
+ import { POSITION } from "@opentiny/utils";
5
+ import { emulate } from "@opentiny/utils";
6
6
  const handleMouseEnter = ({ api, state }) => () => {
7
7
  state.hover = true;
8
8
  api.pauseTimer();
package/carousel/vue.js CHANGED
@@ -30,7 +30,7 @@ import {
30
30
  computedHasIndicators,
31
31
  canActive
32
32
  } from "./index";
33
- import { addResizeListener, removeResizeListener } from "../common/deps/resize-event";
33
+ import { addResizeListener, removeResizeListener } from "@opentiny/utils";
34
34
  const api = [
35
35
  "state",
36
36
  "items",
package/cascader/index.js CHANGED
@@ -1,10 +1,10 @@
1
1
  import "../chunk-G2ADBYYC.js";
2
- import browser, { isBrowser } from "../common/browser";
3
- import { isNull } from "../common/type";
4
- import debounce from "../common/deps/debounce";
5
- import { isEqual } from "../common/object";
6
- import { addResizeListener } from "../common/deps/resize-event";
7
- import { KEY_CODE, CASCADER } from "../common";
2
+ import { isServer, browserInfo } from "@opentiny/utils";
3
+ import { isNull } from "@opentiny/utils";
4
+ import { debounce } from "@opentiny/utils";
5
+ import { isEqual } from "@opentiny/utils";
6
+ import { addResizeListener } from "@opentiny/utils";
7
+ import { KEY_CODE, CASCADER } from "@opentiny/utils";
8
8
  const initMigratingProps = () => ({
9
9
  expandTrigger: { newProp: CASCADER.PropsExpandTri, type: String },
10
10
  changeOnSelect: { newProp: CASCADER.PropsCheckStric, type: Boolean },
@@ -46,6 +46,7 @@ const computePresentContent = ({ api, state }) => () => {
46
46
  };
47
47
  const watchValue = ({ api, state }) => (value) => {
48
48
  if (!isEqual(value, state.checkedValue)) {
49
+ state.userChangeValue = true;
49
50
  state.checkedValue = value;
50
51
  setTimeout(api.computePresentContent);
51
52
  }
@@ -56,7 +57,8 @@ const watchCheckedValue = ({
56
57
  dispatch,
57
58
  api,
58
59
  emit,
59
- state
60
+ state,
61
+ props
60
62
  }) => (value) => {
61
63
  state.presentText = state.presentTags.length ? "" : null;
62
64
  const { checkStrictly, multiple } = state.config;
@@ -71,8 +73,16 @@ const watchCheckedValue = ({
71
73
  state.multiple ? state.presentText : state.inputValue
72
74
  ]);
73
75
  });
74
- emit("update:modelValue", value);
75
- emit("change", value);
76
+ if (state.userChangeValue) {
77
+ if (props.changeCompat) {
78
+ emit("update:modelValue", value);
79
+ emit("change", value);
80
+ }
81
+ state.userChangeValue = false;
82
+ } else {
83
+ emit("update:modelValue", value);
84
+ emit("change", value);
85
+ }
76
86
  setTimeout(api.updateStyle);
77
87
  };
78
88
  const isEmpty = (val) => {
@@ -192,7 +202,7 @@ const handleInput = ({ api, state, vm }) => (val, event) => {
192
202
  const reference = vm.$refs.reference;
193
203
  const key = "init-flag";
194
204
  const value = "true";
195
- const isIE = browser.name === "ie";
205
+ const isIE = browserInfo.name === "ie";
196
206
  if (isIE && reference.getAttribute(key) !== value && !event.target.value) {
197
207
  reference.setAttribute(key, value);
198
208
  return;
@@ -237,7 +247,7 @@ const focusFirstNode = ({ vm, state }) => () => {
237
247
  }
238
248
  };
239
249
  const computePresentText = ({ props, state }) => () => {
240
- if (isBrowser) {
250
+ if (!isServer) {
241
251
  if (!isEmpty(state.checkedValue)) {
242
252
  const node = state.panel.getNodeByValue(state.checkedValue);
243
253
  if (node && (state.config.checkStrictly || node.isLeaf)) {
package/cascader/vue.js CHANGED
@@ -36,9 +36,9 @@ import {
36
36
  handleMouseenter,
37
37
  handleMouseleave
38
38
  } from "./index";
39
- import { removeResizeListener } from "../common/deps/resize-event";
40
- import userPopper from "../common/deps/vue-popper";
41
- import { DATEPICKER } from "../common";
39
+ import { removeResizeListener } from "@opentiny/utils";
40
+ import { userPopper } from "@opentiny/vue-hooks";
41
+ import { DATEPICKER } from "@opentiny/utils";
42
42
  const api = [
43
43
  "state",
44
44
  "getCheckedNodes",
@@ -104,7 +104,8 @@ const initState = ({
104
104
  isHidden: false,
105
105
  tooltipVisible: false,
106
106
  tooltipContent: "",
107
- tagTypeWhenMultiple: (designConfig == null ? void 0 : designConfig.tagTypeWhenMultiple) || ""
107
+ tagTypeWhenMultiple: (designConfig == null ? void 0 : designConfig.tagTypeWhenMultiple) || "",
108
+ userChangeValue: false
108
109
  });
109
110
  return state;
110
111
  };
@@ -145,7 +146,7 @@ const initApi = ({
145
146
  watchValue: watchValue({ api: api2, state }),
146
147
  computePresentTags: computePresentTags({ api: api2, props, state }),
147
148
  computePresentContent: computePresentContent({ api: api2, state }),
148
- watchCheckedValue: watchCheckedValue({ constants, dispatch, api: api2, nextTick, emit, state }),
149
+ watchCheckedValue: watchCheckedValue({ constants, dispatch, api: api2, nextTick, emit, state, props }),
149
150
  toggleDropDownVisible: toggleDropDownVisible({ emit, vm, state, updatePopper }),
150
151
  selfMounted: selfMounted({ api: api2, parent, props, vm, state }),
151
152
  handleBeforeUpdate: handleBeforeUpdate({ props, api: api2, state }),
@@ -1,7 +1,7 @@
1
1
  import "../chunk-G2ADBYYC.js";
2
2
  import { handleExpand, handleMouseMove, clearHoverZone } from "./index";
3
- import { CASCADER } from "../common";
4
- import { random } from "../common/string";
3
+ import { CASCADER } from "@opentiny/utils";
4
+ import { random } from "@opentiny/utils";
5
5
  const api = ["state", "handleMouseMove", "handleExpand"];
6
6
  const renderless = (props, { computed, reactive }, { vm, parent }) => {
7
7
  const api2 = {};
@@ -1,5 +1,5 @@
1
1
  import "../chunk-G2ADBYYC.js";
2
- import TreeStore from "../common/deps/tree-model/tree-store";
2
+ import { TreeStore } from "@opentiny/utils";
3
3
  const close = ({ state, emit }) => () => {
4
4
  state.search.show = false;
5
5
  emit("update:visible", false);
@@ -8,7 +8,7 @@ import {
8
8
  handleNodeClick
9
9
  } from "./index";
10
10
  const api = ["state", "handleMultiCheckChange", "handleCheckChange", "handleExpand", "handleNodeClick"];
11
- const renderless = (props, { computed, reactive, inject }, { dispatch }) => {
11
+ const renderless = (props, { computed, reactive, inject, watch }, { dispatch }) => {
12
12
  const parent = inject("panel");
13
13
  const api2 = {};
14
14
  const state = reactive({
@@ -24,6 +24,16 @@ const renderless = (props, { computed, reactive, inject }, { dispatch }) => {
24
24
  return parent.state.renderLabelFn ? parent.state.renderLabelFn({ node: props.node, data: props.node.data }) : props.node.label;
25
25
  })
26
26
  });
27
+ if (parent.state.config.expandTrigger !== "click") {
28
+ watch(
29
+ () => state.checkedValue,
30
+ (checkedValue) => {
31
+ if (checkedValue.includes(props.node.value)) {
32
+ api2.handleExpand();
33
+ }
34
+ }
35
+ );
36
+ }
27
37
  Object.assign(api2, {
28
38
  state,
29
39
  isInPath: isInPath(props),
@@ -1,9 +1,9 @@
1
1
  import "../chunk-G2ADBYYC.js";
2
- import { isNull } from "../common/type";
3
- import { isEqual } from "../common/object";
2
+ import { isNull } from "@opentiny/utils";
3
+ import { isEqual } from "@opentiny/utils";
4
4
  import { isEmpty } from "../cascader";
5
- import { KEY_CODE, CASCADER } from "../common";
6
- import scrollIntoViewCommon from "../common/deps/scroll-into-view";
5
+ import { KEY_CODE, CASCADER } from "@opentiny/utils";
6
+ import { scrollIntoView as scrollIntoViewCommon } from "@opentiny/utils";
7
7
  const watchCheckedValue = ({ api, emit, props, state }) => (value) => {
8
8
  if (!isEqual(value, props.modelValue)) {
9
9
  state.checkStrictly && api.calculateCheckedNodePaths();
@@ -1,7 +1,7 @@
1
1
  import "../chunk-G2ADBYYC.js";
2
- import { isEqual } from "../common/object";
3
- import { capitalize } from "../common/string";
4
- import { isNull } from "../common/type";
2
+ import { isEqual } from "@opentiny/utils";
3
+ import { capitalize } from "@opentiny/utils";
4
+ import { isNull } from "@opentiny/utils";
5
5
  let uid = 0;
6
6
  class Node {
7
7
  constructor(data, config, parentNode) {
@@ -106,7 +106,6 @@ class Node {
106
106
  this.setCheckState(checked);
107
107
  }
108
108
  syncCheckState(checkedValue) {
109
- const value = this.getValueByOption();
110
109
  const checked = this.isSameNode(checkedValue);
111
110
  this.doCheck(checked);
112
111
  }