@opentiny/vue-renderless 3.1.0-alpha.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 (397) hide show
  1. package/action-sheet/index.js +28 -0
  2. package/action-sheet/vue.js +29 -0
  3. package/alert/index.js +23 -0
  4. package/alert/vue.js +37 -0
  5. package/autocomplete/index.js +175 -0
  6. package/autocomplete/vue.js +171 -0
  7. package/avatar/index.js +29 -0
  8. package/avatar/vue.js +24 -0
  9. package/badge/index.js +16 -0
  10. package/badge/vue.js +30 -0
  11. package/breadcrumb/vue.js +4 -0
  12. package/breadcrumb-item/vue.js +24 -0
  13. package/bulletin-board/index.js +21 -0
  14. package/bulletin-board/vue.js +36 -0
  15. package/button/index.js +19 -0
  16. package/button/vue.js +43 -0
  17. package/button-group/index.js +25 -0
  18. package/button-group/vue.js +51 -0
  19. package/calendar/index.js +279 -0
  20. package/calendar/vue.js +124 -0
  21. package/card-template/index.js +39 -0
  22. package/card-template/vue.js +34 -0
  23. package/carousel/index.js +206 -0
  24. package/carousel/vue.js +222 -0
  25. package/carousel-item/index.js +93 -0
  26. package/carousel-item/vue.js +57 -0
  27. package/cascader/index.js +511 -0
  28. package/cascader/vue.js +342 -0
  29. package/cascader-menu/index.js +41 -0
  30. package/cascader-menu/vue.js +36 -0
  31. package/cascader-node/index.js +63 -0
  32. package/cascader-node/vue.js +62 -0
  33. package/cascader-panel/index.js +359 -0
  34. package/cascader-panel/node.js +199 -0
  35. package/cascader-panel/store.js +80 -0
  36. package/cascader-panel/vue.js +217 -0
  37. package/checkbox/index.js +145 -0
  38. package/checkbox/vue.js +139 -0
  39. package/checkbox-button/index.js +102 -0
  40. package/checkbox-button/vue.js +150 -0
  41. package/checkbox-group/index.js +12 -0
  42. package/checkbox-group/vue.js +33 -0
  43. package/col/index.js +132 -0
  44. package/col/vue.js +34 -0
  45. package/collapse/index.js +45 -0
  46. package/collapse/vue.js +35 -0
  47. package/collapse-item/index.js +38 -0
  48. package/collapse-item/vue.js +48 -0
  49. package/common/array.js +120 -0
  50. package/common/bigInt.js +352 -0
  51. package/common/browser.js +69 -0
  52. package/common/dataset/index.js +135 -0
  53. package/common/date.js +352 -0
  54. package/common/decimal.js +203 -0
  55. package/common/deps/ResizeObserver.js +474 -0
  56. package/common/deps/after-leave.js +25 -0
  57. package/common/deps/clickoutside.js +61 -0
  58. package/common/deps/date-util.js +262 -0
  59. package/common/deps/date.js +308 -0
  60. package/common/deps/debounce.js +4 -0
  61. package/common/deps/dom.js +190 -0
  62. package/common/deps/fullscreen/apis.js +157 -0
  63. package/common/deps/fullscreen/screenfull.js +106 -0
  64. package/common/deps/letter-only.js +15 -0
  65. package/common/deps/memorize.js +149 -0
  66. package/common/deps/number-only.js +16 -0
  67. package/common/deps/popper.js +713 -0
  68. package/common/deps/popup-manager.js +179 -0
  69. package/common/deps/repeat-click.js +24 -0
  70. package/common/deps/requestAnimationFrame.js +25 -0
  71. package/common/deps/resize-event.js +29 -0
  72. package/common/deps/scroll-into-view.js +29 -0
  73. package/common/deps/scrollbar-width.js +25 -0
  74. package/common/deps/throttle.js +34 -0
  75. package/common/deps/touch.js +33 -0
  76. package/common/deps/tree-model/node.js +586 -0
  77. package/common/deps/tree-model/tree-store.js +377 -0
  78. package/common/deps/tree-model/util.js +14 -0
  79. package/common/deps/upload-ajax.js +71 -0
  80. package/common/deps/vue-emitter.js +30 -0
  81. package/common/deps/vue-popper.js +291 -0
  82. package/common/deps/vue-popup.js +211 -0
  83. package/common/event.js +17 -0
  84. package/common/index.js +288 -0
  85. package/common/object.js +228 -0
  86. package/common/runtime.js +52 -0
  87. package/common/string.js +446 -0
  88. package/common/type.js +65 -0
  89. package/common/validate/index.js +6 -0
  90. package/common/validate/messages.js +68 -0
  91. package/common/validate/rules/enum.js +8 -0
  92. package/common/validate/rules/index.js +14 -0
  93. package/common/validate/rules/pattern.js +16 -0
  94. package/common/validate/rules/range.js +62 -0
  95. package/common/validate/rules/required.js +13 -0
  96. package/common/validate/rules/type.js +110 -0
  97. package/common/validate/rules/whitespace.js +6 -0
  98. package/common/validate/schema.js +323 -0
  99. package/common/validate/util.js +198 -0
  100. package/common/validate/validations/array.js +25 -0
  101. package/common/validate/validations/date.js +35 -0
  102. package/common/validate/validations/enum.js +24 -0
  103. package/common/validate/validations/float.js +24 -0
  104. package/common/validate/validations/index.js +42 -0
  105. package/common/validate/validations/integer.js +24 -0
  106. package/common/validate/validations/method.js +23 -0
  107. package/common/validate/validations/number.js +27 -0
  108. package/common/validate/validations/pattern.js +23 -0
  109. package/common/validate/validations/required.js +15 -0
  110. package/common/validate/validations/string.js +29 -0
  111. package/common/validate/validations/type.js +25 -0
  112. package/common/xss.js +325 -0
  113. package/container/index.js +110 -0
  114. package/container/vue.js +63 -0
  115. package/credit-card/index.js +107 -0
  116. package/credit-card/vue.js +117 -0
  117. package/credit-card-form/index.js +143 -0
  118. package/credit-card-form/vue.js +150 -0
  119. package/crop/index.js +297 -0
  120. package/crop/vue.js +191 -0
  121. package/date-panel/index.js +584 -0
  122. package/date-panel/vue.js +319 -0
  123. package/date-picker/index.js +301 -0
  124. package/date-picker/vue.js +169 -0
  125. package/date-range/index.js +463 -0
  126. package/date-range/vue.js +297 -0
  127. package/date-table/index.js +457 -0
  128. package/date-table/vue.js +151 -0
  129. package/detail-page/index.js +135 -0
  130. package/detail-page/vue.js +145 -0
  131. package/dialog-box/index.js +268 -0
  132. package/dialog-box/vue.js +226 -0
  133. package/drop-times/index.js +23 -0
  134. package/drop-times/vue.js +28 -0
  135. package/dropdown/index.js +259 -0
  136. package/dropdown/vue.js +107 -0
  137. package/dropdown-item/index.js +155 -0
  138. package/dropdown-item/vue.js +124 -0
  139. package/dropdown-menu/index.js +148 -0
  140. package/dropdown-menu/vue.js +44 -0
  141. package/exception/index.js +13 -0
  142. package/exception/vue.js +25 -0
  143. package/fall-menu/index.js +121 -0
  144. package/fall-menu/vue.js +90 -0
  145. package/file-upload/index.js +1940 -0
  146. package/file-upload/vue.js +458 -0
  147. package/floatbar/index.js +10 -0
  148. package/floatbar/vue.js +17 -0
  149. package/form/index.js +186 -0
  150. package/form/vue.js +69 -0
  151. package/form-item/index.js +364 -0
  152. package/form-item/vue.js +210 -0
  153. package/fullscreen/index.js +138 -0
  154. package/fullscreen/vue.js +77 -0
  155. package/grid/core/index.js +3 -0
  156. package/grid/core/interceptor.js +38 -0
  157. package/grid/core/storeMap.js +19 -0
  158. package/grid/plugins/export.js +169 -0
  159. package/grid/plugins/exportExcel.js +749 -0
  160. package/grid/plugins/header.js +58 -0
  161. package/grid/plugins/resize.js +82 -0
  162. package/grid/static/array/arrayEach.js +12 -0
  163. package/grid/static/array/arrayIndexOf.js +11 -0
  164. package/grid/static/array/eachTree.js +32 -0
  165. package/grid/static/array/every.js +2 -0
  166. package/grid/static/array/filterTree.js +16 -0
  167. package/grid/static/array/find.js +3 -0
  168. package/grid/static/array/findTree.js +46 -0
  169. package/grid/static/array/helperCreateIterateHandle.js +59 -0
  170. package/grid/static/array/helperCreateTreeFunc.js +18 -0
  171. package/grid/static/array/includes.js +5 -0
  172. package/grid/static/array/lastArrayEach.js +6 -0
  173. package/grid/static/array/map.js +23 -0
  174. package/grid/static/array/mapTree.js +33 -0
  175. package/grid/static/array/slice.js +10 -0
  176. package/grid/static/array/sortBy.js +69 -0
  177. package/grid/static/array/sum.js +28 -0
  178. package/grid/static/array/toArray.js +7 -0
  179. package/grid/static/array/toTreeArray.js +24 -0
  180. package/grid/static/base/clear.js +44 -0
  181. package/grid/static/base/clone.js +18 -0
  182. package/grid/static/base/destructuring.js +18 -0
  183. package/grid/static/base/each.js +9 -0
  184. package/grid/static/base/eqNull.js +6 -0
  185. package/grid/static/base/findIndexOf.js +10 -0
  186. package/grid/static/base/get.js +42 -0
  187. package/grid/static/base/has.js +60 -0
  188. package/grid/static/base/hasOwnProp.js +4 -0
  189. package/grid/static/base/helperCreateGetObjects.js +26 -0
  190. package/grid/static/base/helperCreateInInObjectString.js +7 -0
  191. package/grid/static/base/helperCreateInTypeof.js +6 -0
  192. package/grid/static/base/helperCreateIndexOf.js +21 -0
  193. package/grid/static/base/helperCreateiterateIndexOf.js +21 -0
  194. package/grid/static/base/helperDefaultCompare.js +4 -0
  195. package/grid/static/base/helperDeleteProperty.js +8 -0
  196. package/grid/static/base/helperEqualCompare.js +60 -0
  197. package/grid/static/base/helperGetHGSKeys.js +4 -0
  198. package/grid/static/base/indexOf.js +3 -0
  199. package/grid/static/base/isArray.js +3 -0
  200. package/grid/static/base/isBoolean.js +4 -0
  201. package/grid/static/base/isDate.js +3 -0
  202. package/grid/static/base/isEmpty.js +8 -0
  203. package/grid/static/base/isEqual.js +11 -0
  204. package/grid/static/base/isFunction.js +4 -0
  205. package/grid/static/base/isNaN.js +5 -0
  206. package/grid/static/base/isNull.js +4 -0
  207. package/grid/static/base/isNumber.js +4 -0
  208. package/grid/static/base/isObject.js +5 -0
  209. package/grid/static/base/isPlainObject.js +2 -0
  210. package/grid/static/base/isRegExp.js +3 -0
  211. package/grid/static/base/isSet.js +5 -0
  212. package/grid/static/base/isString.js +4 -0
  213. package/grid/static/base/isUndefined.js +4 -0
  214. package/grid/static/base/keys.js +3 -0
  215. package/grid/static/base/lastEach.js +9 -0
  216. package/grid/static/base/remove.js +44 -0
  217. package/grid/static/base/set.js +43 -0
  218. package/grid/static/base/toJSONString.js +4 -0
  219. package/grid/static/base/toStringJSON.js +13 -0
  220. package/grid/static/base/uniqueId.js +5 -0
  221. package/grid/static/browse/browse.js +54 -0
  222. package/grid/static/function/property.js +7 -0
  223. package/grid/static/function/throttle.js +43 -0
  224. package/grid/static/index.js +55 -0
  225. package/grid/static/number/helperCreateToNumber.js +12 -0
  226. package/grid/static/number/toNumber.js +3 -0
  227. package/grid/static/object/assign.js +41 -0
  228. package/grid/static/object/extend.js +3 -0
  229. package/grid/static/object/lastObjectEach.js +8 -0
  230. package/grid/static/object/objectEach.js +11 -0
  231. package/grid/static/object/objectMap.js +20 -0
  232. package/grid/static/object/values.js +9 -0
  233. package/grid/static/static/staticDocument.js +4 -0
  234. package/grid/static/static/staticHGKeyRE.js +2 -0
  235. package/grid/static/static/staticParseInt.js +2 -0
  236. package/grid/static/static/staticStrUndefined.js +2 -0
  237. package/grid/static/static/staticWindow.js +4 -0
  238. package/grid/static/string/template.js +12 -0
  239. package/grid/static/string/toString.js +12 -0
  240. package/grid/utils/column.js +72 -0
  241. package/grid/utils/common.js +155 -0
  242. package/grid/utils/dom.js +213 -0
  243. package/grid/utils/event.js +40 -0
  244. package/grid/utils/index.js +5 -0
  245. package/image/index.js +187 -0
  246. package/image/vue.js +142 -0
  247. package/image-viewer/index.js +469 -0
  248. package/image-viewer/vue.js +243 -0
  249. package/input/index.js +319 -0
  250. package/input/vue.js +319 -0
  251. package/ip-address/index.js +370 -0
  252. package/ip-address/vue.js +185 -0
  253. package/layout/vue.js +4 -0
  254. package/link/index.js +10 -0
  255. package/link/vue.js +26 -0
  256. package/link-menu/index.js +146 -0
  257. package/link-menu/vue.js +138 -0
  258. package/list/index.js +13 -0
  259. package/list/vue.js +17 -0
  260. package/loading/index.js +29 -0
  261. package/loading/vue.js +28 -0
  262. package/milestone/index.js +92 -0
  263. package/milestone/vue.js +31 -0
  264. package/mini-picker/index.js +227 -0
  265. package/mini-picker/vue.js +142 -0
  266. package/modal/index.js +866 -0
  267. package/modal/vue.js +130 -0
  268. package/month-range/index.js +169 -0
  269. package/month-range/vue.js +104 -0
  270. package/month-table/index.js +232 -0
  271. package/month-table/vue.js +72 -0
  272. package/nav-menu/index.js +457 -0
  273. package/nav-menu/vue.js +187 -0
  274. package/notify/index.js +91 -0
  275. package/notify/vue.js +67 -0
  276. package/numeric/index.js +419 -0
  277. package/numeric/vue.js +218 -0
  278. package/option/index.js +79 -0
  279. package/option/vue.js +219 -0
  280. package/option-group/index.js +18 -0
  281. package/option-group/vue.js +37 -0
  282. package/package.json +179 -0
  283. package/pager-item/index.js +122 -0
  284. package/pager-item/vue.js +52 -0
  285. package/panel/index.js +30 -0
  286. package/panel/vue.js +26 -0
  287. package/picker/index.js +1039 -0
  288. package/picker/timezone.js +974 -0
  289. package/picker/vue.js +415 -0
  290. package/picker-column/index.js +261 -0
  291. package/picker-column/vue.js +163 -0
  292. package/pop-upload/index.js +324 -0
  293. package/pop-upload/vue.js +292 -0
  294. package/popeditor/index.js +884 -0
  295. package/popeditor/vue.js +368 -0
  296. package/popover/index.js +203 -0
  297. package/popover/vue.js +174 -0
  298. package/popup/index.js +139 -0
  299. package/popup/vue.js +129 -0
  300. package/progress/index.js +174 -0
  301. package/progress/vue.js +118 -0
  302. package/pull-refresh/index.js +104 -0
  303. package/pull-refresh/vue.js +64 -0
  304. package/radio/index.js +83 -0
  305. package/radio/vue.js +99 -0
  306. package/radio-button/index.js +58 -0
  307. package/radio-button/vue.js +70 -0
  308. package/radio-group/index.js +51 -0
  309. package/radio-group/vue.js +34 -0
  310. package/rate/index.js +254 -0
  311. package/rate/vue.js +158 -0
  312. package/row/index.js +19 -0
  313. package/row/vue.js +24 -0
  314. package/scroll-text/index.js +24 -0
  315. package/scroll-text/vue.js +31 -0
  316. package/scrollbar/index.js +127 -0
  317. package/scrollbar/vue-bar.js +49 -0
  318. package/scrollbar/vue.js +43 -0
  319. package/search/index.js +110 -0
  320. package/search/vue.js +110 -0
  321. package/select/index.js +1766 -0
  322. package/select/vue.js +693 -0
  323. package/select-dropdown/index.js +23 -0
  324. package/select-dropdown/vue.js +122 -0
  325. package/slide-bar/index.js +94 -0
  326. package/slide-bar/vue.js +58 -0
  327. package/slider/index.js +434 -0
  328. package/slider/vue.js +172 -0
  329. package/split/index.js +122 -0
  330. package/split/vue.js +131 -0
  331. package/steps/vue.js +4 -0
  332. package/switch/index.js +45 -0
  333. package/switch/vue.js +62 -0
  334. package/tab-bar/index.js +51 -0
  335. package/tab-bar/vue.js +16 -0
  336. package/tab-dropdown/index.js +11 -0
  337. package/tab-dropdown/vue.js +17 -0
  338. package/tab-item/index.js +37 -0
  339. package/tab-item/vue.js +49 -0
  340. package/tab-nav/index.js +247 -0
  341. package/tab-nav/vue.js +106 -0
  342. package/tabbar/index.js +32 -0
  343. package/tabbar/vue.js +54 -0
  344. package/tabbar-item/index.js +55 -0
  345. package/tabbar-item/vue.js +53 -0
  346. package/table/index.js +111 -0
  347. package/table/vue.js +66 -0
  348. package/tabs/index.js +174 -0
  349. package/tabs/vue.js +141 -0
  350. package/tag/index.js +14 -0
  351. package/tag/vue.js +13 -0
  352. package/tall-storage/index.js +161 -0
  353. package/tall-storage/vue-storage-box.js +25 -0
  354. package/tall-storage/vue.js +38 -0
  355. package/text-popup/index.js +75 -0
  356. package/text-popup/vue.js +64 -0
  357. package/time/index.js +121 -0
  358. package/time/vue.js +124 -0
  359. package/time-line/index.js +60 -0
  360. package/time-line/vue.js +49 -0
  361. package/time-panel/index.js +189 -0
  362. package/time-panel/scrollIntoView.js +23 -0
  363. package/time-panel/vue.js +110 -0
  364. package/time-range/index.js +199 -0
  365. package/time-range/vue.js +129 -0
  366. package/time-spinner/index.js +175 -0
  367. package/time-spinner/vue.js +122 -0
  368. package/toggle-menu/index.js +104 -0
  369. package/toggle-menu/vue.js +74 -0
  370. package/tooltip/index.js +171 -0
  371. package/tooltip/vue.js +133 -0
  372. package/top-box/index.js +81 -0
  373. package/top-box/vue.js +77 -0
  374. package/transfer/index.js +296 -0
  375. package/transfer/vue.js +138 -0
  376. package/transfer-panel/index.js +364 -0
  377. package/transfer-panel/vue.js +258 -0
  378. package/tree/index.js +642 -0
  379. package/tree/vue.js +268 -0
  380. package/tree-menu/index.js +124 -0
  381. package/tree-menu/vue.js +60 -0
  382. package/tree-node/index.js +271 -0
  383. package/tree-node/vue.js +211 -0
  384. package/upload/index.js +324 -0
  385. package/upload/vue.js +93 -0
  386. package/upload-dragger/index.js +50 -0
  387. package/upload-dragger/vue.js +27 -0
  388. package/upload-list/index.js +55 -0
  389. package/upload-list/vue.js +48 -0
  390. package/user-contact/index.js +13 -0
  391. package/user-contact/vue.js +20 -0
  392. package/user-head/index.js +71 -0
  393. package/user-head/vue.js +47 -0
  394. package/wizard/index.js +123 -0
  395. package/wizard/vue.js +45 -0
  396. package/year-table/index.js +40 -0
  397. package/year-table/vue.js +23 -0
@@ -0,0 +1,169 @@
1
+ import { getBoundary, clearDisplayValue, showPickerAndlockSrcoll, hookMounted, getMonthEndDay, getDisplayValue, getRanges, onConfirm, onCancel, getOrigiCol, getColumns, updateInnerValue, formatValue, onChange, updateColumnValue } from './index';
2
+ import { DATE } from '../common';
3
+ export var api = ['state', 'clearDisplayValue', 'showPickerAndlockSrcoll', 'hookMounted', 'onConfirm', 'onCancel', 'onChange'];
4
+ var setWatchFn = function setWatchFn(_ref) {
5
+ var api = _ref.api,
6
+ watch = _ref.watch,
7
+ props = _ref.props,
8
+ state = _ref.state,
9
+ emit = _ref.emit;
10
+ watch(function () {
11
+ return props.minDate;
12
+ }, function () {
13
+ return api.updateInnerValue();
14
+ }, {
15
+ lazy: true
16
+ });
17
+ watch(function () {
18
+ return props.visible;
19
+ }, function (value) {
20
+ return state.visible = value;
21
+ }, {
22
+ lazy: true
23
+ });
24
+ watch(function () {
25
+ return props.maxDate;
26
+ }, function () {
27
+ return api.updateInnerValue();
28
+ }, {
29
+ lazy: true
30
+ });
31
+ watch(function () {
32
+ return props.modelValue;
33
+ }, function (value) {
34
+ if (value) {
35
+ var val = api.formatValue(new Date(value));
36
+ if (val.valueOf() !== state.innerValue.valueOf()) {
37
+ state.innerValue = val;
38
+ }
39
+ state.displayValue = api.getDisplayValue();
40
+ }
41
+ }, {
42
+ immediate: true
43
+ });
44
+ watch(function () {
45
+ return state.columns;
46
+ }, function () {
47
+ return api.updateColumnValue();
48
+ }, {
49
+ lazy: true
50
+ });
51
+ watch(function () {
52
+ return state.innerValue;
53
+ }, function (value) {
54
+ return emit('input', value);
55
+ }, {
56
+ lazy: true
57
+ });
58
+ };
59
+ export var renderless = function renderless(props, context, _ref2, _ref3) {
60
+ var computed = _ref2.computed,
61
+ onMounted = _ref2.onMounted,
62
+ reactive = _ref2.reactive,
63
+ watch = _ref2.watch;
64
+ var constants = _ref3.constants,
65
+ emit = _ref3.emit,
66
+ nextTick = _ref3.nextTick,
67
+ refs = _ref3.refs,
68
+ parent = _ref3.parent;
69
+ var api = {
70
+ formatValue: formatValue(props),
71
+ getMonthEndDay: getMonthEndDay(constants),
72
+ hookMounted: hookMounted({
73
+ constants: constants,
74
+ parent: parent,
75
+ refs: refs,
76
+ nextTick: nextTick
77
+ })
78
+ };
79
+ var state = reactive({
80
+ visible: false,
81
+ innerValue: formatValue(props)(props.modelValue),
82
+ ranges: computed(function () {
83
+ return api.getRanges();
84
+ }),
85
+ originColumns: computed(function () {
86
+ return api.getOrigiCol();
87
+ }),
88
+ columns: computed(function () {
89
+ return api.getColumns();
90
+ }),
91
+ displayValue: '',
92
+ isReadonly: false,
93
+ clearable: props.clearable
94
+ });
95
+ Object.assign(api, {
96
+ state: state,
97
+ getOrigiCol: getOrigiCol(state),
98
+ onCancel: onCancel({
99
+ emit: emit,
100
+ state: state
101
+ }),
102
+ getColumns: getColumns({
103
+ props: props,
104
+ state: state
105
+ }),
106
+ clearDisplayValue: clearDisplayValue(state),
107
+ getDisplayValue: getDisplayValue({
108
+ constants: constants,
109
+ DATE: DATE,
110
+ props: props,
111
+ state: state
112
+ }),
113
+ showPickerAndlockSrcoll: showPickerAndlockSrcoll({
114
+ constants: constants,
115
+ state: state
116
+ }),
117
+ updateColumnValue: updateColumnValue({
118
+ constants: constants,
119
+ nextTick: nextTick,
120
+ props: props,
121
+ refs: refs,
122
+ state: state
123
+ })
124
+ });
125
+ api.getBoundary = getBoundary({
126
+ api: api,
127
+ constants: constants,
128
+ props: props
129
+ });
130
+ api.updateInnerValue = updateInnerValue({
131
+ api: api,
132
+ constants: constants,
133
+ props: props,
134
+ refs: refs,
135
+ state: state
136
+ });
137
+ api.getRanges = getRanges({
138
+ api: api,
139
+ constants: constants,
140
+ props: props,
141
+ state: state
142
+ });
143
+ setWatchFn({
144
+ api: api,
145
+ watch: watch,
146
+ props: props,
147
+ state: state,
148
+ emit: emit
149
+ });
150
+ onMounted(function () {
151
+ api.updateColumnValue();
152
+ nextTick(function () {
153
+ api.updateInnerValue();
154
+ });
155
+ });
156
+ return Object.assign(api, {
157
+ onConfirm: onConfirm({
158
+ api: api,
159
+ emit: emit,
160
+ state: state
161
+ }),
162
+ onChange: onChange({
163
+ api: api,
164
+ emit: emit,
165
+ refs: refs,
166
+ nextTick: nextTick
167
+ })
168
+ });
169
+ };
@@ -0,0 +1,463 @@
1
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
2
+ import { isDate, nextDate, parseDate, formatDate, modifyDate, modifyTime, nextYear, prevYear, nextMonth, prevMonth, modifyWithTimeString } from '@opentiny/vue-renderless/common/deps/date-util';
3
+ export var calcDefaultValue = function calcDefaultValue(defaultValue) {
4
+ if (Array.isArray(defaultValue)) {
5
+ return [new Date(defaultValue[0]), new Date(defaultValue[1])];
6
+ } else if (defaultValue) {
7
+ return [new Date(defaultValue), nextDate(new Date(defaultValue), 1)];
8
+ }
9
+ return [new Date(), nextDate(new Date(), 1)];
10
+ };
11
+ export var getMinVisibleDate = function getMinVisibleDate(_ref) {
12
+ var state = _ref.state,
13
+ t = _ref.t;
14
+ return function () {
15
+ if (state.dateUserInput.min !== null) return state.dateUserInput.min;
16
+ if (state.minDate) return formatDate(state.minDate, state.dateFormat, t);
17
+ return '';
18
+ };
19
+ };
20
+ export var getMaxVisibleDate = function getMaxVisibleDate(_ref2) {
21
+ var state = _ref2.state,
22
+ t = _ref2.t;
23
+ return function () {
24
+ if (state.dateUserInput.max !== null) return state.dateUserInput.max;
25
+ if (state.maxDate || state.minDate) {
26
+ return formatDate(state.maxDate || state.minDate, state.dateFormat, t);
27
+ }
28
+ return '';
29
+ };
30
+ };
31
+ export var getMinVisibleTime = function getMinVisibleTime(_ref3) {
32
+ var state = _ref3.state,
33
+ t = _ref3.t;
34
+ return function () {
35
+ if (state.timeUserInput.min !== null) return state.timeUserInput.min;
36
+ if (state.minDate) return formatDate(state.minDate, state.timeFormat, t);
37
+ return '';
38
+ };
39
+ };
40
+ export var getMaxVisibleTime = function getMaxVisibleTime(_ref4) {
41
+ var state = _ref4.state,
42
+ t = _ref4.t;
43
+ return function () {
44
+ if (state.timeUserInput.max !== null) return state.timeUserInput.max;
45
+ if (state.maxDate || state.minDate) {
46
+ return formatDate(state.maxDate || state.minDate, state.timeFormat, t);
47
+ }
48
+ return '';
49
+ };
50
+ };
51
+ export var getEnableMonthArrow = function getEnableMonthArrow(state) {
52
+ return function () {
53
+ var nextMonth = (state.leftMonth + 1) % 12;
54
+ var yearOffset = state.leftMonth + 1 >= 12 ? 1 : 0;
55
+ return state.unlinkPanels && new Date(state.leftYear + yearOffset, nextMonth) < new Date(state.rightYear, state.rightMonth);
56
+ };
57
+ };
58
+ export var watchMinDate = function watchMinDate(_ref5) {
59
+ var state = _ref5.state,
60
+ t = _ref5.t,
61
+ vm = _ref5.vm;
62
+ return function (value) {
63
+ state.dateUserInput.min = null;
64
+ state.timeUserInput.min = null;
65
+ var minTimePicker = vm.$refs.minTimePicker;
66
+ if (!minTimePicker) return;
67
+ if (state.maxDate && state.maxDate < state.minDate) {
68
+ var format = 'HH:mm:ss';
69
+ minTimePicker.state.selectableRange = [[parseDate(formatDate(state.minDate, format, t), format, t), parseDate('23:59:59', format, t)]];
70
+ }
71
+ if (value) {
72
+ minTimePicker.state.value = value;
73
+ }
74
+ };
75
+ };
76
+ export var watchMaxDate = function watchMaxDate(_ref6) {
77
+ var state = _ref6.state,
78
+ vm = _ref6.vm;
79
+ return function (value) {
80
+ state.dateUserInput.max = null;
81
+ state.timeUserInput.max = null;
82
+ var maxTimePicker = vm.$refs.maxTimePicker;
83
+ if (value && maxTimePicker) {
84
+ maxTimePicker.state.value = value;
85
+ }
86
+ };
87
+ };
88
+ export var watchMinTimePickerVisible = function watchMinTimePickerVisible(_ref7) {
89
+ var nextTick = _ref7.nextTick,
90
+ state = _ref7.state,
91
+ vm = _ref7.vm;
92
+ return function (value) {
93
+ if (value) {
94
+ nextTick(function () {
95
+ vm.$refs.minTimePicker.state.value = state.minDate;
96
+ });
97
+ }
98
+ };
99
+ };
100
+ export var watchMaxTimePickerVisible = function watchMaxTimePickerVisible(_ref8) {
101
+ var nextTick = _ref8.nextTick,
102
+ state = _ref8.state,
103
+ vm = _ref8.vm;
104
+ return function (value) {
105
+ if (value) {
106
+ nextTick(function () {
107
+ vm.$refs.maxTimePicker.state.value = state.maxDate;
108
+ });
109
+ }
110
+ };
111
+ };
112
+ export var watchValue = function watchValue(_ref9) {
113
+ var state = _ref9.state;
114
+ return function (value) {
115
+ if (!value) {
116
+ state.minDate = null;
117
+ state.maxDate = null;
118
+ } else if (Array.isArray(value)) {
119
+ state.minDate = isDate(value[0]) ? new Date(value[0]) : null;
120
+ state.maxDate = isDate(value[1]) ? new Date(value[1]) : null;
121
+ if (state.minDate) {
122
+ state.leftDate = state.minDate;
123
+ if (state.unlinkPanels && state.maxDate) {
124
+ var minDateYear = state.minDate.getFullYear();
125
+ var minDateMonth = state.minDate.getMonth();
126
+ var maxDateYear = state.maxDate.getFullYear();
127
+ var maxDateMonth = state.maxDate.getMonth();
128
+ state.rightDate = minDateYear === maxDateYear && minDateMonth === maxDateMonth ? nextMonth(state.maxDate) : state.maxDate;
129
+ } else {
130
+ state.rightDate = nextMonth(state.leftDate);
131
+ }
132
+ } else {
133
+ state.leftDate = calcDefaultValue(state.defaultValue)[0];
134
+ state.rightDate = nextMonth(state.leftDate);
135
+ }
136
+ }
137
+ };
138
+ };
139
+ export var watchDefault = function watchDefault(_ref10) {
140
+ var state = _ref10.state;
141
+ return function (value) {
142
+ if (!Array.isArray(state.value)) {
143
+ var _calcDefaultValue = calcDefaultValue(value),
144
+ _calcDefaultValue2 = _slicedToArray(_calcDefaultValue, 2),
145
+ left = _calcDefaultValue2[0],
146
+ right = _calcDefaultValue2[1];
147
+ state.leftDate = left;
148
+ state.rightDate = value && value[1] && state.unlinkPanels ? right : nextMonth(state.leftDate);
149
+ }
150
+ };
151
+ };
152
+ export var handleClear = function handleClear(_ref11) {
153
+ var emit = _ref11.emit,
154
+ state = _ref11.state;
155
+ return function () {
156
+ state.minDate = null;
157
+ state.maxDate = null;
158
+ state.leftDate = calcDefaultValue(state.defaultValue)[0];
159
+ state.rightDate = nextMonth(state.leftDate);
160
+ state.rangeState.selecting = false;
161
+ emit('pick', null);
162
+ };
163
+ };
164
+ export var handleChangeRange = function handleChangeRange(state) {
165
+ return function (val) {
166
+ state.minDate = val.minDate;
167
+ state.maxDate = val.maxDate;
168
+ state.rangeState = val.rangeState;
169
+ };
170
+ };
171
+ export var handleDateInput = function handleDateInput(_ref12) {
172
+ var state = _ref12.state,
173
+ t = _ref12.t;
174
+ return function (value, type) {
175
+ state.dateUserInput[type] = value;
176
+ if (value.length !== state.dateFormat.length) return;
177
+ var parsedValue = parseDate(value, state.dateFormat, t);
178
+ if (parsedValue) {
179
+ if (typeof state.disabledDate === 'function' && state.disabledDate(new Date(parsedValue))) {
180
+ return;
181
+ }
182
+ if (type === 'min') {
183
+ state.minDate = modifyDate(state.minDate || new Date(), parsedValue.getFullYear(), parsedValue.getMonth(), parsedValue.getDate());
184
+ state.leftDate = new Date(parsedValue);
185
+ if (!state.unlinkPanels) {
186
+ state.rightDate = nextMonth(state.leftDate);
187
+ }
188
+ } else {
189
+ state.maxDate = modifyDate(state.maxDate || new Date(), parsedValue.getFullYear(), parsedValue.getMonth(), parsedValue.getDate());
190
+ state.rightDate = new Date(parsedValue);
191
+ if (!state.unlinkPanels) {
192
+ state.leftDate = prevMonth(parsedValue);
193
+ }
194
+ }
195
+ }
196
+ };
197
+ };
198
+ export var handleDateChange = function handleDateChange(_ref13) {
199
+ var state = _ref13.state,
200
+ t = _ref13.t;
201
+ return function (value, type) {
202
+ var parsedValue = parseDate(value, state.dateFormat, t);
203
+ if (parsedValue) {
204
+ if (type === 'min') {
205
+ state.minDate = modifyDate(state.minDate || new Date(), parsedValue.getFullYear(), parsedValue.getMonth(), parsedValue.getDate());
206
+ if (state.minDate > state.maxDate) {
207
+ state.maxDate = state.minDate;
208
+ }
209
+ } else {
210
+ state.maxDate = modifyDate(state.maxDate || new Date(), parsedValue.getFullYear(), parsedValue.getMonth(), parsedValue.getDate());
211
+ if (state.maxDate < state.minDate) {
212
+ state.minDate = state.maxDate;
213
+ }
214
+ }
215
+ }
216
+ };
217
+ };
218
+ export var handleTimeInput = function handleTimeInput(_ref14) {
219
+ var state = _ref14.state,
220
+ t = _ref14.t;
221
+ return function (value, type) {
222
+ state.timeUserInput[type] = value;
223
+ if (value.length !== state.timeFormat.length) return;
224
+ var parsedValue = parseDate(value, state.timeFormat, t);
225
+ if (parsedValue) {
226
+ if (type === 'min') {
227
+ state.minDate = modifyTime(state.minDate, parsedValue.getHours(), parsedValue.getMinutes(), parsedValue.getSeconds());
228
+ } else {
229
+ state.maxDate = modifyTime(state.maxDate, parsedValue.getHours(), parsedValue.getMinutes(), parsedValue.getSeconds());
230
+ }
231
+ }
232
+ };
233
+ };
234
+ export var handleTimeChange = function handleTimeChange(_ref15) {
235
+ var state = _ref15.state,
236
+ t = _ref15.t,
237
+ vm = _ref15.vm;
238
+ return function (value, type) {
239
+ var parsedValue = parseDate(value, state.timeFormat, t);
240
+ if (parsedValue) {
241
+ if (type === 'min') {
242
+ state.minDate = modifyTime(state.minDate, parsedValue.getHours(), parsedValue.getMinutes(), parsedValue.getSeconds());
243
+ if (state.minDate > state.maxDate) {
244
+ state.maxDate = state.minDate;
245
+ }
246
+ vm.$refs.minTimePicker.state.value = state.minDate;
247
+ state.minTimePickerVisible = false;
248
+ } else {
249
+ state.maxDate = modifyTime(state.maxDate, parsedValue.getHours(), parsedValue.getMinutes(), parsedValue.getSeconds());
250
+ if (state.maxDate < state.minDate) {
251
+ state.minDate = state.maxDate;
252
+ }
253
+ vm.$refs.maxTimePicker.state.value = state.minDate;
254
+ state.maxTimePickerVisible = false;
255
+ }
256
+ }
257
+ };
258
+ };
259
+ export var handleRangePick = function handleRangePick(_ref16) {
260
+ var api = _ref16.api,
261
+ state = _ref16.state,
262
+ t = _ref16.t;
263
+ return function (val) {
264
+ var close = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
265
+ var defaultTime = state.defaultTime || [];
266
+ var minDate = modifyWithTimeString(val.minDate, defaultTime[0], t);
267
+ var maxDate = modifyWithTimeString(val.maxDate, defaultTime[1], t);
268
+ if (state.maxDate === maxDate && state.minDate === minDate) {
269
+ return;
270
+ }
271
+ state.onPick && state.onPick(val);
272
+ state.maxDate = maxDate;
273
+ state.minDate = minDate;
274
+ setTimeout(function () {
275
+ state.maxDate = maxDate;
276
+ state.minDate = minDate;
277
+ }, 10);
278
+ if (!close || state.showTime) {
279
+ return;
280
+ }
281
+ api.handleConfirm();
282
+ };
283
+ };
284
+ export var handleShortcutClick = function handleShortcutClick(api) {
285
+ return function (shortcut) {
286
+ if (shortcut.onClick) {
287
+ var picker = {
288
+ $emit: function $emit(type, _ref17) {
289
+ var _ref18 = _slicedToArray(_ref17, 2),
290
+ start = _ref18[0],
291
+ end = _ref18[1];
292
+ api.doPick(start, end);
293
+ }
294
+ };
295
+ shortcut.onClick(picker);
296
+ }
297
+ };
298
+ };
299
+ export var doPick = function doPick(emit) {
300
+ return function (start, end) {
301
+ emit('pick', [start, end], false);
302
+ };
303
+ };
304
+ export var handleMinTimePick = function handleMinTimePick(_ref19) {
305
+ var state = _ref19.state;
306
+ return function (value, visible, first) {
307
+ state.minDate = state.minDate || new Date();
308
+ if (value) {
309
+ state.minDate = modifyTime(state.minDate, value.getHours(), value.getMinutes(), value.getSeconds());
310
+ }
311
+ if (!first) {
312
+ state.minTimePickerVisible = visible;
313
+ }
314
+ if (!state.maxDate || state.maxDate && state.maxDate.getTime() < state.minDate.getTime()) {
315
+ state.maxDate = new Date(state.minDate);
316
+ }
317
+ };
318
+ };
319
+ export var handleMinTimeClose = function handleMinTimeClose(state) {
320
+ return function () {
321
+ return state.minTimePickerVisible = false;
322
+ };
323
+ };
324
+ export var handleMaxTimePick = function handleMaxTimePick(_ref20) {
325
+ var state = _ref20.state;
326
+ return function (value, visible, first) {
327
+ if (state.maxDate && value) {
328
+ state.maxDate = modifyTime(state.maxDate, value.getHours(), value.getMinutes(), value.getSeconds());
329
+ }
330
+ if (!first) {
331
+ state.maxTimePickerVisible = visible;
332
+ }
333
+ if (state.maxDate && state.minDate && state.minDate.getTime() > state.maxDate.getTime()) {
334
+ state.minDate = new Date(state.maxDate);
335
+ }
336
+ };
337
+ };
338
+ export var handleMaxTimeClose = function handleMaxTimeClose(state) {
339
+ return function () {
340
+ return state.maxTimePickerVisible = false;
341
+ };
342
+ };
343
+ export var leftPrevYear = function leftPrevYear(_ref21) {
344
+ var state = _ref21.state;
345
+ return function () {
346
+ state.leftDate = prevYear(state.leftDate);
347
+ if (!state.unlinkPanels) {
348
+ state.rightDate = nextMonth(state.leftDate);
349
+ }
350
+ };
351
+ };
352
+ export var leftPrevMonth = function leftPrevMonth(_ref22) {
353
+ var state = _ref22.state;
354
+ return function () {
355
+ state.leftDate = prevMonth(state.leftDate);
356
+ if (!state.unlinkPanels) {
357
+ state.rightDate = nextMonth(state.leftDate);
358
+ }
359
+ };
360
+ };
361
+ export var rightNextYear = function rightNextYear(_ref23) {
362
+ var state = _ref23.state;
363
+ return function () {
364
+ var leftDate = state.leftDate,
365
+ rightDate = state.rightDate,
366
+ unlinkPanels = state.unlinkPanels;
367
+ if (!unlinkPanels) {
368
+ state.leftDate = nextYear(leftDate);
369
+ state.rightDate = nextMonth(state.leftDate);
370
+ } else {
371
+ state.rightDate = nextYear(rightDate);
372
+ }
373
+ };
374
+ };
375
+ export var rightNextMonth = function rightNextMonth(_ref24) {
376
+ var state = _ref24.state;
377
+ return function () {
378
+ if (!state.unlinkPanels) {
379
+ state.leftDate = nextMonth(state.leftDate);
380
+ state.rightDate = nextMonth(state.leftDate);
381
+ } else {
382
+ state.rightDate = nextMonth(state.rightDate);
383
+ }
384
+ };
385
+ };
386
+ export var leftNextYear = function leftNextYear(_ref25) {
387
+ var state = _ref25.state;
388
+ return function () {
389
+ return state.leftDate = nextYear(state.leftDate);
390
+ };
391
+ };
392
+ export var leftNextMonth = function leftNextMonth(_ref26) {
393
+ var state = _ref26.state;
394
+ return function () {
395
+ return state.leftDate = nextMonth(state.leftDate);
396
+ };
397
+ };
398
+ export var rightPrevYear = function rightPrevYear(_ref27) {
399
+ var state = _ref27.state;
400
+ return function () {
401
+ return state.rightDate = prevYear(state.rightDate);
402
+ };
403
+ };
404
+ export var rightPrevMonth = function rightPrevMonth(_ref28) {
405
+ var state = _ref28.state;
406
+ return function () {
407
+ return state.rightDate = prevMonth(state.rightDate);
408
+ };
409
+ };
410
+ export var handleConfirm = function handleConfirm(_ref29) {
411
+ var api = _ref29.api,
412
+ emit = _ref29.emit,
413
+ state = _ref29.state;
414
+ return function () {
415
+ var visible = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
416
+ if (api.isValidValue([state.minDate, state.maxDate])) {
417
+ emit('pick', [state.minDate, state.maxDate], visible);
418
+ }
419
+ };
420
+ };
421
+ export var isValidValue = function isValidValue(_ref30) {
422
+ var state = _ref30.state;
423
+ return function (value) {
424
+ return Array.isArray(value) && value && value[0] && value[1] && isDate(value[0]) && isDate(value[1]) && value[0].getTime() <= value[1].getTime() && (typeof state.disabledDate === 'function' ? !state.disabledDate(value[0]) && !state.disabledDate(value[1]) : true);
425
+ };
426
+ };
427
+ export var resetView = function resetView(_ref31) {
428
+ var state = _ref31.state;
429
+ return function () {
430
+ state.minDate = state.value && isDate(state.value[0]) ? new Date(state.value[0]) : null;
431
+ state.maxDate = state.value && isDate(state.value[0]) ? new Date(state.value[1]) : null;
432
+ };
433
+ };
434
+ export var setTimeFormat = function setTimeFormat(_ref32) {
435
+ var nextTick = _ref32.nextTick,
436
+ vm = _ref32.vm,
437
+ state = _ref32.state;
438
+ return function () {
439
+ nextTick(function () {
440
+ vm.$refs.maxTimePicker.state.format = state.timeFormat;
441
+ vm.$refs.minTimePicker.state.format = state.timeFormat;
442
+ });
443
+ };
444
+ };
445
+ export var computerBtnDisabled = function computerBtnDisabled(_ref33) {
446
+ var state = _ref33.state,
447
+ api = _ref33.api;
448
+ return function () {
449
+ return !(state.minDate && state.maxDate && !state.selecting && api.isValidValue([state.minDate, state.maxDate]));
450
+ };
451
+ };
452
+ export var computerLabel = function computerLabel(_ref34) {
453
+ var state = _ref34.state,
454
+ t = _ref34.t;
455
+ return function (type) {
456
+ return "".concat(state[type].getFullYear(), " ").concat(t('ui.datepicker.year'), " ").concat(t("ui.datepicker.month".concat(state[type].getMonth() + 1)));
457
+ };
458
+ };
459
+ export var computerEnableYearArrow = function computerEnableYearArrow(state) {
460
+ return function () {
461
+ return state.unlinkPanels && state.rightYear * 12 + state.rightMonth - (state.leftYear * 12 + state.leftMonth + 1) >= 12;
462
+ };
463
+ };