@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
package/popover/vue.js ADDED
@@ -0,0 +1,174 @@
1
+ import { mounted, computedTooltipId, destroyed, doToggle, doShow, doClose, handleFocus, handleClick, handleBlur, handleKeydown, handleAfterEnter, handleAfterLeave, handleMouseEnter, handleMouseLeave, handleDocumentClick, cleanup, wrapMounted } from './index';
2
+ import userPopper from '@opentiny/vue-renderless/common/deps/vue-popper';
3
+ export var api = ['state', 'handleAfterEnter', 'handleAfterLeave'];
4
+ var initState = function initState(_ref) {
5
+ var reactive = _ref.reactive,
6
+ computed = _ref.computed,
7
+ api = _ref.api,
8
+ popperElm = _ref.popperElm,
9
+ showPopper = _ref.showPopper,
10
+ referenceElm = _ref.referenceElm;
11
+ var state = reactive({
12
+ popperElm: popperElm,
13
+ showPopper: showPopper,
14
+ timer: null,
15
+ mounted: false,
16
+ referenceElm: referenceElm,
17
+ tooltipId: computed(function () {
18
+ return api.computedTooltipId();
19
+ })
20
+ });
21
+ return state;
22
+ };
23
+ var initApi = function initApi(_ref2) {
24
+ var api = _ref2.api,
25
+ props = _ref2.props,
26
+ state = _ref2.state,
27
+ refs = _ref2.refs,
28
+ emit = _ref2.emit,
29
+ doDestroy = _ref2.doDestroy,
30
+ constants = _ref2.constants;
31
+ Object.assign(api, {
32
+ state: state,
33
+ mounted: mounted({
34
+ api: api,
35
+ state: state,
36
+ constants: constants,
37
+ props: props
38
+ }),
39
+ cleanup: cleanup({
40
+ state: state,
41
+ props: props
42
+ }),
43
+ destroyed: destroyed({
44
+ state: state,
45
+ api: api
46
+ }),
47
+ doDestroy: doDestroy,
48
+ computedTooltipId: computedTooltipId(constants),
49
+ doShow: doShow(state),
50
+ doClose: doClose(state),
51
+ doToggle: doToggle(state),
52
+ handleClick: handleClick(state),
53
+ handleAfterEnter: handleAfterEnter(emit),
54
+ handleBlur: handleBlur({
55
+ props: props,
56
+ state: state
57
+ }),
58
+ handleFocus: handleFocus({
59
+ props: props,
60
+ state: state
61
+ }),
62
+ handleKeydown: handleKeydown({
63
+ api: api,
64
+ props: props
65
+ }),
66
+ handleMouseLeave: handleMouseLeave({
67
+ props: props,
68
+ state: state
69
+ }),
70
+ handleAfterLeave: handleAfterLeave({
71
+ emit: emit,
72
+ api: api
73
+ }),
74
+ handleMouseEnter: handleMouseEnter({
75
+ props: props,
76
+ state: state
77
+ }),
78
+ handleDocumentClick: handleDocumentClick({
79
+ refs: refs,
80
+ state: state
81
+ }),
82
+ wrapMounted: wrapMounted({
83
+ api: api,
84
+ props: props,
85
+ refs: refs,
86
+ state: state
87
+ })
88
+ });
89
+ };
90
+ var initWatch = function initWatch(_ref3) {
91
+ var watch = _ref3.watch,
92
+ props = _ref3.props,
93
+ state = _ref3.state,
94
+ emit = _ref3.emit;
95
+ watch(function () {
96
+ return state.showPopper;
97
+ }, function (val) {
98
+ if (props.disabled) {
99
+ return;
100
+ }
101
+ val ? emit('show') : emit('hide');
102
+ }, {
103
+ immediate: true
104
+ });
105
+ };
106
+ export var renderless = function renderless(props, _ref4, _ref5) {
107
+ var reactive = _ref4.reactive,
108
+ computed = _ref4.computed,
109
+ watch = _ref4.watch,
110
+ toRefs = _ref4.toRefs,
111
+ onBeforeUnmount = _ref4.onBeforeUnmount,
112
+ onMounted = _ref4.onMounted,
113
+ onUnmounted = _ref4.onUnmounted,
114
+ onActivated = _ref4.onActivated,
115
+ onDeactivated = _ref4.onDeactivated;
116
+ var $prefix = _ref5.$prefix,
117
+ emit = _ref5.emit,
118
+ refs = _ref5.refs,
119
+ slots = _ref5.slots,
120
+ nextTick = _ref5.nextTick;
121
+ var api = {};
122
+ var constants = {
123
+ IDPREFIX: "".concat($prefix.toLowerCase(), "-popover")
124
+ };
125
+ var options = {
126
+ emit: emit,
127
+ onBeforeUnmount: onBeforeUnmount,
128
+ nextTick: nextTick,
129
+ reactive: reactive,
130
+ props: props,
131
+ watch: watch,
132
+ onDeactivated: onDeactivated,
133
+ refs: refs,
134
+ slots: slots,
135
+ toRefs: toRefs
136
+ };
137
+ var _userPopper = userPopper(options),
138
+ showPopper = _userPopper.showPopper,
139
+ popperElm = _userPopper.popperElm,
140
+ referenceElm = _userPopper.referenceElm,
141
+ doDestroy = _userPopper.doDestroy;
142
+ var state = initState({
143
+ reactive: reactive,
144
+ computed: computed,
145
+ api: api,
146
+ popperElm: popperElm,
147
+ showPopper: showPopper,
148
+ referenceElm: referenceElm
149
+ });
150
+ initApi({
151
+ api: api,
152
+ constants: constants,
153
+ props: props,
154
+ state: state,
155
+ refs: refs,
156
+ emit: emit,
157
+ doDestroy: doDestroy
158
+ });
159
+ onDeactivated(function () {
160
+ api.destroyed();
161
+ api.cleanup();
162
+ });
163
+ onMounted(api.wrapMounted);
164
+ onActivated(api.mounted);
165
+ onUnmounted(api.destroyed);
166
+ onBeforeUnmount(api.cleanup);
167
+ initWatch({
168
+ watch: watch,
169
+ props: props,
170
+ state: state,
171
+ emit: emit
172
+ });
173
+ return api;
174
+ };
package/popup/index.js ADDED
@@ -0,0 +1,139 @@
1
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
3
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
4
+ import { on, off } from '@opentiny/vue-renderless/common/deps/dom';
5
+ import { touchStart, touchMove } from '@opentiny/vue-renderless/common/deps/touch';
6
+ import { getScroller } from '@opentiny/vue-renderless/dropdown-menu';
7
+ import { isNull } from '@opentiny/vue-renderless/common/type';
8
+ export var getStyle = function getStyle(props) {
9
+ return function () {
10
+ var style = _objectSpread({}, props.popupStyle);
11
+ if (!isNull(props.duration)) {
12
+ var key = props.position === 'center' ? 'animationDuration' : 'transitionDuration';
13
+ style[key] = "".concat(props.duration, "s");
14
+ }
15
+ return style;
16
+ };
17
+ };
18
+ export var watchValue = function watchValue(api) {
19
+ return function (value) {
20
+ var type = value ? 'open' : 'close';
21
+ api[type]();
22
+ };
23
+ };
24
+ export var open = function open(_ref) {
25
+ var api = _ref.api,
26
+ constants = _ref.constants,
27
+ emit = _ref.emit,
28
+ props = _ref.props,
29
+ state = _ref.state;
30
+ return function () {
31
+ if (state.opened) {
32
+ return;
33
+ }
34
+ if (props.zIndex !== undefined) {
35
+ state.context.zIndex = props.zIndex;
36
+ }
37
+ api.renderOverlay();
38
+ state.opened = true;
39
+ emit('open');
40
+ if (props.lockScroll) {
41
+ on(document, 'touchstart', touchStart);
42
+ on(document, 'touchmove', api.onTouchMove);
43
+ if (!state.context.lockCount) {
44
+ document.body.classList.add(constants.OVERFLOWHIDDEN);
45
+ }
46
+ state.context.lockCount++;
47
+ }
48
+ };
49
+ };
50
+ export var close = function close(_ref2) {
51
+ var api = _ref2.api,
52
+ constants = _ref2.constants,
53
+ emit = _ref2.emit,
54
+ props = _ref2.props,
55
+ state = _ref2.state;
56
+ return function () {
57
+ if (!state.opened) {
58
+ return;
59
+ }
60
+ if (props.lockScroll) {
61
+ state.context.lockCount--;
62
+ off(document, 'touchstart', touchStart);
63
+ off(document, 'touchmove', api.onTouchMove);
64
+ if (!state.context.lockCount) {
65
+ document.body.classList.remove(constants.OVERFLOWHIDDEN);
66
+ }
67
+ }
68
+ state.opened = false;
69
+ emit('update:modelValue', false);
70
+ emit('close');
71
+ };
72
+ };
73
+ export var onTouchMove = function onTouchMove(_ref3) {
74
+ var refs = _ref3.refs,
75
+ state = _ref3.state;
76
+ return function (event) {
77
+ touchMove(event);
78
+ var direction = state.deltaY > 0 ? '10' : '01';
79
+ var el = getScroller()(event.target, refs.$el);
80
+ var scrollHeight = el.scrollHeight,
81
+ offsetHeight = el.offsetHeight,
82
+ scrollTop = el.scrollTop;
83
+ var status = '11';
84
+ if (scrollTop === 0) {
85
+ status = offsetHeight >= scrollHeight ? '00' : '01';
86
+ } else if (scrollTop + offsetHeight >= scrollHeight) {
87
+ status = '10';
88
+ }
89
+ if (status !== '11' && state.direction === 'vertical' && !(parseInt(status, 2) & parseInt(direction, 2))) {
90
+ event.preventDefault();
91
+ }
92
+ };
93
+ };
94
+ export var renderOverlay = function renderOverlay(_ref4) {
95
+ var api = _ref4.api,
96
+ nextTick = _ref4.nextTick,
97
+ props = _ref4.props,
98
+ state = _ref4.state;
99
+ return function () {
100
+ if (!props.modelValue) {
101
+ return;
102
+ }
103
+ nextTick(function () {
104
+ api.updateZIndex(props.overlay ? 1 : 0);
105
+ if (props.overlay) {
106
+ state.zIndex = state.context.zIndex++;
107
+ }
108
+ });
109
+ };
110
+ };
111
+ export var updateZIndex = function updateZIndex(_ref5) {
112
+ var refs = _ref5.refs,
113
+ state = _ref5.state;
114
+ return function () {
115
+ var value = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
116
+ return refs.popup.style.zIndex = ++state.context.zIndex + value;
117
+ };
118
+ };
119
+ export var clickOverlay = function clickOverlay(_ref6) {
120
+ var api = _ref6.api,
121
+ props = _ref6.props,
122
+ emit = _ref6.emit;
123
+ return function () {
124
+ if (props.closeOnClickOverlay) {
125
+ api.close();
126
+ emit('click-overlay');
127
+ }
128
+ };
129
+ };
130
+ export var closed = function closed(emit) {
131
+ return function () {
132
+ return emit('closed');
133
+ };
134
+ };
135
+ export var opened = function opened(emit) {
136
+ return function () {
137
+ return emit('opened');
138
+ };
139
+ };
package/popup/vue.js ADDED
@@ -0,0 +1,129 @@
1
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
3
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
4
+ import { getStyle, watchValue, open, opened, closed, onTouchMove, close, renderOverlay, clickOverlay, updateZIndex } from './index';
5
+ export var api = ['state', 'open', 'close', 'clickOverlay', 'onTouchMove', 'opened', 'closed'];
6
+ var initState = function initState(_ref) {
7
+ var reactive = _ref.reactive,
8
+ computed = _ref.computed,
9
+ props = _ref.props,
10
+ api = _ref.api;
11
+ var state = reactive({
12
+ transitionName: computed(function () {
13
+ return props.transition || props.position === 'center' ? 'tiny-fade' : "tiny-popup-slide-".concat(props.position);
14
+ }),
15
+ style: computed(function () {
16
+ return api.getStyle();
17
+ }),
18
+ inited: computed(function () {
19
+ return state.inited || props.modelValue;
20
+ }),
21
+ opened: false,
22
+ startX: 0,
23
+ startY: 0,
24
+ deltaX: 0,
25
+ deltaY: 0,
26
+ offsetX: 0,
27
+ offsetY: 0,
28
+ direction: '',
29
+ shouldRender: computed(function () {
30
+ return state.inited || props.lazyRender;
31
+ }),
32
+ context: {
33
+ zIndex: 2000,
34
+ lockCount: 0,
35
+ stack: []
36
+ },
37
+ zIndex: props.zIndex,
38
+ overlayStyle: computed(function () {
39
+ return _objectSpread({
40
+ zIndex: state.zIndex
41
+ }, props.overlayStyle);
42
+ })
43
+ });
44
+ return state;
45
+ };
46
+ var initApi = function initApi(_ref2) {
47
+ var api = _ref2.api,
48
+ props = _ref2.props,
49
+ state = _ref2.state,
50
+ refs = _ref2.refs,
51
+ emit = _ref2.emit,
52
+ nextTick = _ref2.nextTick,
53
+ constants = _ref2.constants;
54
+ Object.assign(api, {
55
+ state: state,
56
+ opened: opened(emit),
57
+ closed: closed(emit),
58
+ getStyle: getStyle(props),
59
+ watchValue: watchValue(api),
60
+ updateZIndex: updateZIndex({
61
+ refs: refs,
62
+ state: state
63
+ }),
64
+ clickOverlay: clickOverlay({
65
+ api: api,
66
+ emit: emit,
67
+ props: props
68
+ }),
69
+ renderOverlay: renderOverlay({
70
+ api: api,
71
+ nextTick: nextTick,
72
+ props: props,
73
+ state: state
74
+ }),
75
+ onTouchMove: onTouchMove({
76
+ refs: refs,
77
+ state: state
78
+ }),
79
+ open: open({
80
+ api: api,
81
+ constants: constants,
82
+ emit: emit,
83
+ props: props,
84
+ state: state
85
+ }),
86
+ close: close({
87
+ api: api,
88
+ constants: constants,
89
+ emit: emit,
90
+ props: props,
91
+ state: state
92
+ })
93
+ });
94
+ };
95
+ export var renderless = function renderless(props, _ref3, _ref4) {
96
+ var computed = _ref3.computed,
97
+ onMounted = _ref3.onMounted,
98
+ reactive = _ref3.reactive,
99
+ watch = _ref3.watch,
100
+ nextTick = _ref3.nextTick;
101
+ var constants = _ref4.constants,
102
+ refs = _ref4.refs,
103
+ emit = _ref4.emit;
104
+ var api = {};
105
+ var state = initState({
106
+ reactive: reactive,
107
+ computed: computed,
108
+ props: props,
109
+ api: api
110
+ });
111
+ initApi({
112
+ api: api,
113
+ props: props,
114
+ state: state,
115
+ refs: refs,
116
+ emit: emit,
117
+ nextTick: nextTick,
118
+ constants: constants
119
+ });
120
+ watch(function () {
121
+ return props.modelValue;
122
+ }, api.watchValue, {
123
+ immediate: true
124
+ });
125
+ onMounted(function () {
126
+ props.modelValue && api.open();
127
+ });
128
+ return api;
129
+ };
@@ -0,0 +1,174 @@
1
+ export var computedBarStyle = function computedBarStyle(_ref) {
2
+ var api = _ref.api,
3
+ props = _ref.props;
4
+ return function () {
5
+ return {
6
+ width: props.percentage + '%',
7
+ backgroundColor: api.getCurrentColor(props.percentage)
8
+ };
9
+ };
10
+ };
11
+ export var computedRelativeStrokeWidth = function computedRelativeStrokeWidth(_ref2) {
12
+ var props = _ref2.props;
13
+ return function () {
14
+ return (props.strokeWidth / props.width * 100).toFixed(1);
15
+ };
16
+ };
17
+ export var computedRadius = function computedRadius(_ref3) {
18
+ var constants = _ref3.constants,
19
+ props = _ref3.props,
20
+ state = _ref3.state;
21
+ return function () {
22
+ return props.type === constants.PROGRESS_TYPE.CIRCLE || props.type === constants.PROGRESS_TYPE.DASHBOARD ? parseInt(50 - parseFloat(state.relativeStrokeWidth) / 2, 10) : 0;
23
+ };
24
+ };
25
+ export var computedTrackPath = function computedTrackPath(_ref4) {
26
+ var constants = _ref4.constants,
27
+ props = _ref4.props,
28
+ state = _ref4.state;
29
+ return function () {
30
+ var radiusValue = state.radius;
31
+ var isDashboardType = props.type === constants.PROGRESS_TYPE.DASHBOARD;
32
+ return "\n M 50 50\n m 0 ".concat(isDashboardType ? '' : '-').concat(radiusValue, "\n a ").concat(radiusValue, " ").concat(radiusValue, " 0 1 1 0 ").concat(isDashboardType ? '-' : '').concat(radiusValue * 2, "\n a ").concat(radiusValue, " ").concat(radiusValue, " 0 1 1 0 ").concat(isDashboardType ? '' : '-').concat(radiusValue * 2, "\n ");
33
+ };
34
+ };
35
+ export var computedPerimeter = function computedPerimeter(_ref5) {
36
+ var state = _ref5.state;
37
+ return function () {
38
+ return 2 * Math.PI * state.radius;
39
+ };
40
+ };
41
+ export var computedRate = function computedRate(_ref6) {
42
+ var constants = _ref6.constants,
43
+ props = _ref6.props;
44
+ return function () {
45
+ return props.type === constants.PROGRESS_TYPE.DASHBOARD ? 0.75 : 1;
46
+ };
47
+ };
48
+ export var computedStrokeDashoffset = function computedStrokeDashoffset(_ref7) {
49
+ var state = _ref7.state;
50
+ return function () {
51
+ return "".concat(-1 * state.perimeter * (1 - state.rate) / 2, "px");
52
+ };
53
+ };
54
+ export var computedTrailPathStyle = function computedTrailPathStyle(_ref8) {
55
+ var state = _ref8.state;
56
+ return function () {
57
+ return {
58
+ strokeDasharray: "".concat(state.perimeter * state.rate, "px, ").concat(state.perimeter, "px"),
59
+ strokeDashoffset: state.strokeDashoffset
60
+ };
61
+ };
62
+ };
63
+ export var computedCirclePathStyle = function computedCirclePathStyle(_ref9) {
64
+ var props = _ref9.props,
65
+ state = _ref9.state;
66
+ return function () {
67
+ return {
68
+ strokeDasharray: "".concat(state.perimeter * state.rate * (props.percentage / 100), "px, ").concat(state.perimeter, "px"),
69
+ strokeDashoffset: state.strokeDashoffset,
70
+ transition: 'stroke-dasharray 0.6s ease 0s, stroke 0.6s ease'
71
+ };
72
+ };
73
+ };
74
+ export var computedStroke = function computedStroke(_ref10) {
75
+ var api = _ref10.api,
76
+ constants = _ref10.constants,
77
+ props = _ref10.props;
78
+ return function () {
79
+ return props.color && api.getCurrentColor(props.percentage) || constants.STATUS_TO_COLOR[props.status] || constants.STATUS_DEFAULT_COLOR;
80
+ };
81
+ };
82
+ export var computedIconClass = function computedIconClass(_ref11) {
83
+ var constants = _ref11.constants,
84
+ props = _ref11.props;
85
+ return function () {
86
+ if (props.status === constants.PROGRESS_STATUS.SUCCESS) {
87
+ return props.type === constants.PROGRESS_TYPE.LINE ? constants.ICON_SUCCESS : constants.ICON_CIRCLE_SUCCESS;
88
+ } else if (props.status === constants.PROGRESS_STATUS.WARNING) {
89
+ return props.type === constants.PROGRESS_TYPE.LINE ? constants.ICON_WARNING : constants.ICON_CIRCLE_WARNING;
90
+ } else if (props.status === constants.PROGRESS_STATUS.EXCEPTION) {
91
+ return props.type === constants.PROGRESS_TYPE.LINE ? constants.ICON_EXCEPTION : constants.ICON_CIRCLE_EXCEPTION;
92
+ }
93
+ };
94
+ };
95
+ export var computedProgressTextSize = function computedProgressTextSize(_ref12) {
96
+ var constants = _ref12.constants,
97
+ props = _ref12.props;
98
+ return function () {
99
+ return props.type === constants.PROGRESS_TYPE.LINE ? 12 + props.strokeWidth * 0.4 : props.width * 0.111111 + 2;
100
+ };
101
+ };
102
+ export var computedContent = function computedContent(_ref13) {
103
+ var props = _ref13.props;
104
+ return function () {
105
+ return typeof props.format === 'function' ? props.format(props.percentage) || '' : "".concat(props.percentage, "%");
106
+ };
107
+ };
108
+ export var getCurrentColor = function getCurrentColor(_ref14) {
109
+ var api = _ref14.api,
110
+ props = _ref14.props;
111
+ return function (percentage) {
112
+ if (typeof props.color === 'function') {
113
+ return props.color(percentage);
114
+ } else if (typeof props.color === 'string') {
115
+ return props.color;
116
+ } else {
117
+ return api.getLevelColor(percentage);
118
+ }
119
+ };
120
+ };
121
+ export var getLevelColor = function getLevelColor(api) {
122
+ return function (percentage) {
123
+ var colorArray = api.getColorArray().sort(function (a, b) {
124
+ return a.percentage - b.percentage;
125
+ });
126
+ for (var i = 0; i < colorArray.length; i++) {
127
+ if (colorArray[i].percentage > percentage) {
128
+ return colorArray[i].color;
129
+ }
130
+ }
131
+ return colorArray[colorArray.length - 1].color;
132
+ };
133
+ };
134
+ export var getColorArray = function getColorArray(props) {
135
+ return function () {
136
+ var color = props.color;
137
+ var span = 100 / color.length;
138
+ return color.map(function (seriesColor, index) {
139
+ if (typeof seriesColor === 'string') {
140
+ return {
141
+ color: seriesColor,
142
+ progress: (index + 1) * span
143
+ };
144
+ }
145
+ return seriesColor;
146
+ });
147
+ };
148
+ };
149
+ export var customBeforeAppearHook = function customBeforeAppearHook(_ref15) {
150
+ var props = _ref15.props,
151
+ state = _ref15.state;
152
+ return function (el) {
153
+ if (props.type === 'line') {
154
+ el.style.width = 0;
155
+ } else if (props.type === 'circle') {
156
+ el.style.strokeDasharray = state.perimeter * state.content;
157
+ el.style.strokeDashoffset = state.perimeter;
158
+ }
159
+ };
160
+ };
161
+ export var customAppearHook = function customAppearHook(el) {
162
+ el.style.transition = 'all 0.5s';
163
+ };
164
+ export var customAfterAppearHook = function customAfterAppearHook(_ref16) {
165
+ var state = _ref16.state,
166
+ props = _ref16.props;
167
+ return function (el) {
168
+ if (props.type === 'line') {
169
+ el.style.width = state.barStyle.width;
170
+ } else if (props.type === 'circle') {
171
+ el.style.strokeDashoffset = 0;
172
+ }
173
+ };
174
+ };