@utogether/udp-core 1.0.1 → 1.0.2

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 (239) hide show
  1. package/build/plugins.ts +13 -2
  2. package/dist/{403-JWjatlxJ.js → 403-B1rIjAAu.js} +7 -6
  3. package/dist/{404-BcdMJfPb.js → 404-mBqc2y4t.js} +14 -13
  4. package/dist/{500-bsa3F_cc.js → 500-BoI45Zdh.js} +10 -9
  5. package/dist/{AuthorityInfo-CqItgNs5.js → AuthorityInfo-B08NBIIn.js} +1 -1
  6. package/dist/AuthorityInfo.vue_vue_type_style_index_0_lang-BLP1SaiH.js +100 -0
  7. package/dist/{AuthorityPanel-BaLMwMgW.js → AuthorityPanel-BeBNiwqc.js} +1 -1
  8. package/dist/{AuthorityPanel.vue_vue_type_style_index_0_lang-C_bkqLD9.js → AuthorityPanel.vue_vue_type_style_index_0_lang-CIYmnP9-.js} +6 -6
  9. package/dist/{Company-DVff9IA7.js → Company-JGGyWEWH.js} +3 -3
  10. package/dist/{CompanyPanel-CNrdq4XE.js → CompanyPanel-BQ_cCmDx.js} +16 -16
  11. package/dist/{Department-CqcpfL4i.js → Department-z2iO6hwM.js} +10 -10
  12. package/dist/{DepartmentPanel-Bvti4LGu.js → DepartmentPanel-BtQe7zwU.js} +108 -78
  13. package/dist/{DesignPanel-CjykspE1.js → DesignPanel-7mhtVWas.js} +1 -1
  14. package/dist/{DesignPanel.vue_vue_type_style_index_0_lang-BK9EERdd.js → DesignPanel.vue_vue_type_style_index_0_lang-4EsHemj_.js} +24 -26
  15. package/dist/DictView-CjchV2Yk.js +109 -0
  16. package/dist/InvOrganization-Pn1O_XP0.js +74 -0
  17. package/dist/Org-BqytV_vi.js +39 -0
  18. package/dist/{Preview-Cm_7RhYU.js → Preview-CLpUUMay.js} +2 -2
  19. package/dist/{ReportDefine-CJVlQ--7.js → ReportDefine-Cz1KtEUF.js} +1 -1
  20. package/dist/{ReportDesign-B0unlrkt.js → ReportDesign-BaORYud4.js} +46 -46
  21. package/dist/{ReportQuery-BKuMCEvF.js → ReportQuery-CPCPXiXz.js} +5 -5
  22. package/dist/{ReportQueryFrom-DAngMJLU.js → ReportQueryFrom-C_AcrfkJ.js} +1 -1
  23. package/dist/{ReportQueryFrom.vue_vue_type_style_index_0_lang-CPpwmztJ.js → ReportQueryFrom.vue_vue_type_style_index_0_lang-Bm67ejay.js} +6 -5
  24. package/dist/{ReportTemplate-8YH3L8Pv.js → ReportTemplate-CFiNMz79.js} +26 -26
  25. package/dist/{Role-MxI30-0W.js → Role-B-XDoJd5.js} +6 -6
  26. package/dist/{RoleAssign-BzUY_y_y.js → RoleAssign-BolW8YVs.js} +9 -9
  27. package/dist/{RolePanel-DS_TErTn.js → RolePanel-2kfs5tw9.js} +1 -1
  28. package/dist/{RolePanel-CXdcvsR5.js → RolePanel-HilSuYns.js} +1 -1
  29. package/dist/RolePanel.vue_vue_type_script_setup_true_lang-CE4gApUY.js +132 -0
  30. package/dist/{RolePanel.vue_vue_type_script_setup_true_lang-Ddl-A7Zh.js → RolePanel.vue_vue_type_script_setup_true_lang-DPzgfAyV.js} +42 -36
  31. package/dist/{ScrollPanel.vue_vue_type_style_index_0_lang-DnchUgIF.js → ScrollPanel.vue_vue_type_style_index_0_lang-CCTH4RkH.js} +20 -20
  32. package/dist/{Staff-D7tXo_Gn.js → Staff-BTk3whFC.js} +3 -3
  33. package/dist/{StaffInfo-Bk8BY8PO.js → StaffInfo-d3AuSzlA.js} +1 -1
  34. package/dist/{StaffInfo.vue_vue_type_script_setup_true_lang-DqKwZi5f.js → StaffInfo.vue_vue_type_script_setup_true_lang-eOL4VlfE.js} +13 -13
  35. package/dist/{StaffPanel-VtpGCTIq.js → StaffPanel-DV-D4jjz.js} +1 -1
  36. package/dist/StaffPanel.vue_vue_type_script_setup_true_lang-4sFq3CEo.js +135 -0
  37. package/dist/{SysUser-D0Q6OvD7.js → SysUser-BnjYytws.js} +2 -2
  38. package/dist/{SysUserPanel-1_vrsANQ.js → SysUserPanel-CBoyD-Qi.js} +1 -1
  39. package/dist/SysUserPanel.vue_vue_type_script_setup_true_lang-PrTlTZR-.js +341 -0
  40. package/dist/{SystemMenu-9PG3vESE.js → SystemMenu-kYB_ZaUt.js} +49 -47
  41. package/dist/{UserInfo-qgXUEGwi.js → UserInfo-4dx97VBL.js} +1 -1
  42. package/dist/{UserInfo.vue_vue_type_style_index_0_lang-CN0C5rVk.js → UserInfo.vue_vue_type_style_index_0_lang-BpbC_ZDm.js} +35 -33
  43. package/dist/{childView-C7ZSA5fR.js → childView-CHPNfTEb.js} +1 -1
  44. package/dist/{childView-yV2QLwfA.js → childView-CKA_JgVZ.js} +1 -1
  45. package/dist/{childView.vue_vue_type_style_index_0_lang-DdKxPGdh.js → childView.vue_vue_type_style_index_0_lang-Bym2fQRd.js} +7 -7
  46. package/dist/childView.vue_vue_type_style_index_0_lang-W7bCtXeu.js +177 -0
  47. package/dist/{code-rule-95K1jr-u.js → code-rule-CbxuZg0-.js} +42 -41
  48. package/dist/core.es.js +19 -10
  49. package/dist/{cron-task-DGrQwOHs.js → cron-task-nTOpqQYf.js} +5 -5
  50. package/dist/flow-task-B07st2aD.js +10 -0
  51. package/dist/{frameView-7SmME93D.js → frameView-Z1tPUyCh.js} +15 -14
  52. package/dist/img/l_img.svg +1 -1
  53. package/dist/img/minicolors.png +0 -0
  54. package/dist/img/v_img.svg +1 -1
  55. package/dist/index-C3q8HoJM.js +4650 -0
  56. package/dist/{layoutView-C6WIVWGZ.js → layoutView--MGA9zUB.js} +1776 -1764
  57. package/dist/{log-in-e7D5Ss1P.js → log-in-CSYJDA6m.js} +36 -29
  58. package/dist/log-out-DiwGCg7p.js +130 -0
  59. package/dist/login-C6Y0ajDp.js +251 -0
  60. package/dist/{login-log-CvVnyGi3.js → login-log-C0V-_l3F.js} +6 -4
  61. package/dist/{lov-view-DoF5LqFQ.js → lov-view-Cmv7wZZ9.js} +9 -9
  62. package/dist/{menuInfo-CNzGQwOD.js → menuInfo-UeutJpOa.js} +1 -1
  63. package/dist/{menuInfo.vue_vue_type_style_index_0_lang-51SYxVc_.js → menuInfo.vue_vue_type_style_index_0_lang-CWX4Mu67.js} +144 -121
  64. package/dist/pda-app-B6w99SJo.js +710 -0
  65. package/dist/redirect-BqegffKC.js +15 -0
  66. package/dist/{resource-gVFFMO9l.js → resource-BybJvUv0.js} +17 -17
  67. package/dist/{su-welcome-BN_s_RX_.js → su-welcome-C1bmxHoY.js} +124 -126
  68. package/dist/sys-config-BnmIDnCj.js +370 -0
  69. package/dist/udp-core.css +1 -9
  70. package/dist/utogether-MlnyYtNS.js +4 -0
  71. package/index.ts +19 -6
  72. package/package.json +18 -17
  73. package/src/App.vue +2 -7
  74. package/src/api/http.ts +1 -4
  75. package/src/api/index.ts +5 -3
  76. package/src/api/user.ts +2 -2
  77. package/src/components/SuCharts/src/UserInfo.vue +3 -3
  78. package/src/components/SuScrollTree/ScrollPanel.vue +4 -9
  79. package/src/components/udp/content/index.vue +88 -0
  80. package/src/components/udp/form/form.vue +109 -0
  81. package/src/components/udp/grid/index.vue +524 -0
  82. package/src/components/udp/index.ts +5 -4
  83. package/src/components/udp/ut-stamp-badge/index.vue +271 -0
  84. package/src/components/udp/utils.ts +408 -40
  85. package/src/directives/permission/index.ts +1 -1
  86. package/src/layout/components/lay-navbar/index.vue +9 -7
  87. package/src/layout/components/lay-panel/index.vue +3 -3
  88. package/src/layout/components/lay-search/index.vue +1 -1
  89. package/src/layout/components/lay-select-org/index.vue +4 -9
  90. package/src/layout/components/lay-setting/index.vue +503 -510
  91. package/src/layout/components/lay-sidebar/breadCrumb.vue +1 -1
  92. package/src/layout/components/lay-sidebar/horizontal.vue +8 -6
  93. package/src/layout/components/lay-sidebar/mixNav.vue +260 -258
  94. package/src/layout/components/lay-sidebar/sidebar-logo.vue +101 -98
  95. package/src/layout/components/lay-tag/index.vue +598 -625
  96. package/src/layout/hooks/useDataThemeChange.ts +1 -1
  97. package/src/layout/hooks/useNav.ts +176 -173
  98. package/src/layout/hooks/useTag.ts +227 -233
  99. package/src/layout/layoutView.vue +215 -215
  100. package/src/layout/types.ts +93 -92
  101. package/src/main.ts +115 -109
  102. package/src/plugins/i18n/en.ts +26 -13
  103. package/src/plugins/i18n/module/u-workflow.ts +1 -1
  104. package/src/plugins/i18n/zh.ts +363 -337
  105. package/src/plugins/vxe-table/index.ts +74 -4
  106. package/src/plugins/vxe-table/render.tsx +186 -58
  107. package/src/router/index.ts +187 -183
  108. package/src/router/modules/flow.ts +35 -0
  109. package/src/router/modules/home.ts +32 -32
  110. package/src/router/modules/remaining.ts +1 -26
  111. package/src/router/utils.ts +420 -377
  112. package/src/store/modules/app.ts +2 -4
  113. package/src/store/modules/epTheme.ts +48 -49
  114. package/src/store/modules/multiTags.ts +15 -14
  115. package/src/store/modules/permission.ts +25 -15
  116. package/src/store/modules/system.ts +1 -3
  117. package/src/style/button.scss +11 -4
  118. package/src/style/login.css +1 -1
  119. package/src/style/tailwind.css +1 -68
  120. package/src/style/vxetable.scss +103 -11
  121. package/src/utils/authority/index.ts +1 -1
  122. package/src/utils/dataFormat/index.ts +223 -223
  123. package/src/utils/index.ts +3 -1
  124. package/src/utils/lifecycle.ts +39 -20
  125. package/src/utils/propTypes.ts +1 -6
  126. package/src/utils/storage/index.ts +2 -2
  127. package/src/utils/{http → udp/http}/index.ts +27 -30
  128. package/src/utils/{http → udp/http}/types.d.ts +2 -6
  129. package/src/views/login/login-view.vue +6 -20
  130. package/src/views/organization/company/CompanyPanel.vue +2 -2
  131. package/src/views/organization/department/Department.vue +58 -58
  132. package/src/views/organization/department/DepartmentPanel.vue +303 -283
  133. package/src/views/organization/inv-org/InvOrganization.vue +23 -9
  134. package/src/views/organization/org/Org.vue +9 -5
  135. package/src/views/organization/staff/StaffInfo.vue +127 -133
  136. package/src/views/organization/staff/StaffPanel.vue +162 -145
  137. package/src/views/system/cron/cron-task.vue +2 -12
  138. package/src/views/system/menu/AuthorityPanel.vue +2 -2
  139. package/src/views/system/menu/SystemMenu.vue +14 -20
  140. package/src/views/system/menu/menuInfo.vue +39 -23
  141. package/src/views/system/role/AuthorityInfo.vue +19 -15
  142. package/src/views/system/role/Role.vue +1 -5
  143. package/src/views/system/role/RolePanel.vue +11 -2
  144. package/src/views/system/role/UserInfo.vue +11 -9
  145. package/src/views/system/role-assign/RoleAssign.vue +2 -2
  146. package/src/views/system/role-assign/RolePanel.vue +12 -9
  147. package/src/views/system/sys/sys-config.vue +70 -21
  148. package/src/views/system/sysUser/SysUserPanel.vue +347 -278
  149. package/src/views/uapp/pda/pda-app.vue +48 -16
  150. package/src/views/udev/coderule/code-rule.vue +132 -121
  151. package/src/views/udev/dict/DictView.vue +118 -106
  152. package/src/views/udev/dict/childView.vue +183 -222
  153. package/src/views/udev/lov/childView.vue +1 -7
  154. package/src/views/ufile/aggregation/File.vue +5 -5
  155. package/src/views/ufile/file/water-mark.vue +14 -14
  156. package/src/views/uhome/components/menu-favorite.vue +314 -331
  157. package/src/views/uhome/su-welcome.vue +319 -339
  158. package/src/views/ulogin/login.vue +325 -316
  159. package/src/views/upms/interface/log-in.vue +100 -106
  160. package/src/views/upms/interface/log-out.vue +104 -107
  161. package/src/views/upms/user/login-log.vue +54 -60
  162. package/src/views/urpt/design/DesignPanel.vue +16 -35
  163. package/src/views/urpt/design/Preview.vue +1 -0
  164. package/src/views/urpt/design/ReportDesign.vue +17 -23
  165. package/src/views/urpt/static-resource/resource.vue +3 -3
  166. package/src/views/urpt/template/ReportTemplate.vue +7 -7
  167. package/src/views/utask/flow-task.vue +18 -0
  168. package/types/global.d.ts +231 -236
  169. package/vite.config.ts +13 -2
  170. package/dist/AuthorityInfo.vue_vue_type_style_index_0_lang-32L40GY2.js +0 -102
  171. package/dist/DictView-q7kR9K--.js +0 -95
  172. package/dist/InvOrganization-DI45LqZV.js +0 -260
  173. package/dist/Org-CZju_ZiR.js +0 -35
  174. package/dist/RolePanel.vue_vue_type_script_setup_true_lang-DJKu6PXz.js +0 -126
  175. package/dist/StaffPanel.vue_vue_type_script_setup_true_lang-C3Ixs12y.js +0 -111
  176. package/dist/SysUserPanel.vue_vue_type_script_setup_true_lang-C5XEmxsV.js +0 -288
  177. package/dist/childView.vue_vue_type_style_index_0_lang-bkmucBUL.js +0 -187
  178. package/dist/core.umd.js +0 -173
  179. package/dist/index-OswH7SsT.js +0 -9937
  180. package/dist/log-out--RRncZhN.js +0 -120
  181. package/dist/login-BhCMeCLS.js +0 -251
  182. package/dist/pda-app-nn3llDUx.js +0 -2209
  183. package/dist/redirect-CmMplDV4.js +0 -15
  184. package/dist/sys-config-DGutV-VX.js +0 -277
  185. package/dist/utogether-wFDCI28t.js +0 -182
  186. package/src/assets/images/empty.png +0 -0
  187. package/src/assets/images/logo.png +0 -0
  188. package/src/components/ReCountTo/README.md +0 -2
  189. package/src/components/ReCountTo/index.ts +0 -18
  190. package/src/components/ReCountTo/src/normal/index.tsx +0 -165
  191. package/src/components/ReCountTo/src/normal/props.ts +0 -37
  192. package/src/components/ReCountTo/src/rebound/index.tsx +0 -67
  193. package/src/components/ReCountTo/src/rebound/props.ts +0 -14
  194. package/src/components/ReCountTo/src/rebound/rebound.css +0 -77
  195. package/src/components/ReCropper/index.ts +0 -14
  196. package/src/components/ReCropper/src/index.tsx +0 -141
  197. package/src/components/ReFlicker/index.css +0 -39
  198. package/src/components/ReFlicker/index.ts +0 -50
  199. package/src/components/ReFlop/index.ts +0 -14
  200. package/src/components/ReFlop/src/Filpper.tsx +0 -99
  201. package/src/components/ReFlop/src/filpper.css +0 -184
  202. package/src/components/ReFlop/src/index.vue +0 -126
  203. package/src/components/ReFlowChart/index.ts +0 -24
  204. package/src/components/ReFlowChart/src/Control.vue +0 -139
  205. package/src/components/ReFlowChart/src/DataDialog.vue +0 -12
  206. package/src/components/ReFlowChart/src/NodePanel.vue +0 -151
  207. package/src/components/ReFlowChart/src/adpterForTurbo.ts +0 -160
  208. package/src/components/ReFlowChart/src/assets/iconfont/iconfont.css +0 -49
  209. package/src/components/ReFlowChart/src/assets/iconfont/iconfont.eot +0 -0
  210. package/src/components/ReFlowChart/src/assets/iconfont/iconfont.js +0 -61
  211. package/src/components/ReFlowChart/src/assets/iconfont/iconfont.json +0 -58
  212. package/src/components/ReFlowChart/src/assets/iconfont/iconfont.svg +0 -47
  213. package/src/components/ReFlowChart/src/assets/iconfont/iconfont.ttf +0 -0
  214. package/src/components/ReFlowChart/src/assets/iconfont/iconfont.woff +0 -0
  215. package/src/components/ReFlowChart/src/assets/iconfont/iconfont.woff2 +0 -0
  216. package/src/components/ReFlowChart/src/config.ts +0 -62
  217. package/src/components/ReSplitPane/index.css +0 -49
  218. package/src/components/ReSplitPane/index.tsx +0 -119
  219. package/src/components/ReSplitPane/resizer.css +0 -45
  220. package/src/components/ReSplitPane/resizer.tsx +0 -30
  221. package/src/components/SuCommon/card/components/Card.vue +0 -148
  222. package/src/components/SuCommon/card/components/DialogForm.vue +0 -127
  223. package/src/components/SuCommon/card/index.vue +0 -142
  224. package/src/components/SuCommon/icon-select/index.vue +0 -241
  225. package/src/components/SuCommon/table/index.vue +0 -208
  226. package/src/components/SuCommon/utils/index.ts +0 -103
  227. package/src/components/SuCommon/utils/slot.tsx +0 -50
  228. package/src/components/udp/form-upload.vue +0 -132
  229. package/src/components/udp/modal-form.vue +0 -180
  230. package/src/utils/udp/useRender.ts +0 -420
  231. package/src/views/components/contextmenu/basic.vue +0 -74
  232. package/src/views/components/contextmenu/context-menu.vue +0 -40
  233. package/src/views/components/contextmenu/menuDynamic.vue +0 -99
  234. package/src/views/components/contextmenu/menuGroup.vue +0 -71
  235. package/src/views/components/count-to/index.vue +0 -43
  236. package/src/views/components/cropping/index.vue +0 -59
  237. package/src/views/components/cropping/picture.jpeg +0 -0
  238. package/src/views/components/split-pane/index.vue +0 -82
  239. package/src/views/components/video/index.vue +0 -57
@@ -1,165 +0,0 @@
1
- import { defineComponent, reactive, computed, watch, onMounted, unref } from 'vue';
2
- import { countToProps } from './props';
3
- import { isNumber } from 'xe-utils';
4
-
5
- export default defineComponent({
6
- name: 'NormalNumber',
7
- props: countToProps,
8
- emits: ['mounted', 'callback'],
9
- setup(props, { emit }) {
10
- const state = reactive<{
11
- localStartVal: number;
12
- printVal: number | null;
13
- displayValue: string;
14
- paused: boolean;
15
- localDuration: number | null;
16
- startTime: number | null;
17
- timestamp: number | null;
18
- rAF: any;
19
- remaining: number | null;
20
- color: string;
21
- fontSize: string;
22
- }>({
23
- localStartVal: props.startVal,
24
- displayValue: formatNumber(props.startVal),
25
- printVal: null,
26
- paused: false,
27
- localDuration: props.duration,
28
- startTime: null,
29
- timestamp: null,
30
- remaining: null,
31
- rAF: null,
32
- color: null,
33
- fontSize: '16px'
34
- });
35
-
36
- const getCountDown = computed(() => {
37
- return props.startVal > props.endVal;
38
- });
39
-
40
- watch([() => props.startVal, () => props.endVal], () => {
41
- if (props.autoplay) {
42
- start();
43
- }
44
- });
45
-
46
- function start() {
47
- const { startVal, duration, color, fontSize } = props;
48
- state.localStartVal = startVal;
49
- state.startTime = null;
50
- state.localDuration = duration;
51
- state.paused = false;
52
- state.color = color;
53
- state.fontSize = fontSize;
54
- state.rAF = requestAnimationFrame(count);
55
- }
56
-
57
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
58
- function pauseResume() {
59
- if (state.paused) {
60
- resume();
61
- state.paused = false;
62
- } else {
63
- pause();
64
- state.paused = true;
65
- }
66
- }
67
-
68
- function pause() {
69
- cancelAnimationFrame(state.rAF);
70
- }
71
-
72
- function resume() {
73
- state.startTime = null;
74
- state.localDuration = +(state.remaining as number);
75
- state.localStartVal = +(state.printVal as number);
76
- requestAnimationFrame(count);
77
- }
78
-
79
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
80
- function reset() {
81
- state.startTime = null;
82
- cancelAnimationFrame(state.rAF);
83
- state.displayValue = formatNumber(props.startVal);
84
- }
85
-
86
- function count(timestamp: number) {
87
- const { useEasing, easingFn, endVal } = props;
88
- if (!state.startTime) state.startTime = timestamp;
89
- state.timestamp = timestamp;
90
- const progress = timestamp - state.startTime;
91
- state.remaining = (state.localDuration as number) - progress;
92
- if (useEasing) {
93
- if (unref(getCountDown)) {
94
- state.printVal =
95
- state.localStartVal -
96
- easingFn(progress, 0, state.localStartVal - endVal, state.localDuration as number);
97
- } else {
98
- state.printVal = easingFn(
99
- progress,
100
- state.localStartVal,
101
- endVal - state.localStartVal,
102
- state.localDuration as number
103
- );
104
- }
105
- } else {
106
- if (unref(getCountDown)) {
107
- state.printVal =
108
- state.localStartVal -
109
- (state.localStartVal - endVal) * (progress / (state.localDuration as number));
110
- } else {
111
- state.printVal =
112
- state.localStartVal +
113
- (endVal - state.localStartVal) * (progress / (state.localDuration as number));
114
- }
115
- }
116
- if (unref(getCountDown)) {
117
- state.printVal = state.printVal < endVal ? endVal : state.printVal;
118
- } else {
119
- state.printVal = state.printVal > endVal ? endVal : state.printVal;
120
- }
121
- state.displayValue = formatNumber(state.printVal);
122
- if (progress < (state.localDuration as number)) {
123
- state.rAF = requestAnimationFrame(count);
124
- } else {
125
- emit('callback');
126
- }
127
- }
128
-
129
- function formatNumber(num: number | string) {
130
- const { decimals, decimal, separator, suffix, prefix } = props;
131
- num = Number(num).toFixed(decimals);
132
- num += '';
133
- const x = num.split('.');
134
- let x1 = x[0];
135
- const x2 = x.length > 1 ? decimal + x[1] : '';
136
- const rgx = /(\d+)(\d{3})/;
137
- if (separator && !isNumber(separator)) {
138
- while (rgx.test(x1)) {
139
- x1 = x1.replace(rgx, '$1' + separator + '$2');
140
- }
141
- }
142
- return prefix + x1 + x2 + suffix;
143
- }
144
-
145
- onMounted(() => {
146
- if (props.autoplay) {
147
- start();
148
- }
149
- emit('mounted');
150
- });
151
-
152
- return () => (
153
- <>
154
- <span
155
- style={{
156
- color: props.color,
157
- fontSize: props.fontSize
158
- }}
159
- >
160
- {state.displayValue}
161
- </span>
162
- </>
163
- );
164
- }
165
- });
@@ -1,37 +0,0 @@
1
- /*
2
- * @Author: levi7754 levi7754@163.com
3
- * @Date: 2023-06-19 09:14:18
4
- * @LastEditors: levi7754 levi7754@163.com
5
- * @LastEditTime: 2023-10-09 11:05:26
6
- * @FilePath: /sitzone-mes/src/components/ReCountTo/src/normal/props.ts
7
- * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
8
- */
9
- import type { PropType } from 'vue';
10
- import propTypes from '@/utils/propTypes';
11
- export const countToProps = {
12
- startVal: propTypes.number.def(0),
13
- endVal: propTypes.number.def(2020),
14
- duration: propTypes.number.def(1300),
15
- autoplay: propTypes.bool.def(true),
16
- decimals: {
17
- type: Number as PropType<number>,
18
- required: false,
19
- default: 0,
20
- validator(value: number) {
21
- return value >= 0;
22
- }
23
- },
24
- color: propTypes.string.def(),
25
- fontSize: propTypes.string.def(),
26
- decimal: propTypes.string.def('.'),
27
- separator: propTypes.string.def(','),
28
- prefix: propTypes.string.def(''),
29
- suffix: propTypes.string.def(''),
30
- useEasing: propTypes.bool.def(true),
31
- easingFn: {
32
- type: Function as PropType<(t: number, b: number, c: number, d: number) => number>,
33
- default(t: number, b: number, c: number, d: number) {
34
- return (c * (-Math.pow(2, (-10 * t) / d) + 1) * 1024) / 1023 + b;
35
- }
36
- }
37
- };
@@ -1,67 +0,0 @@
1
- /*
2
- * @Author: wei.li
3
- * @Date: 2022-05-24 11:26:59
4
- * @LastEditors: wei.li
5
- * @LastEditTime: 2022-08-24 11:28:37
6
- * @Description: file content
7
- */
8
- import './rebound.css';
9
- import { defineComponent, ref, unref, onBeforeMount, onBeforeUnmount } from 'vue';
10
- import { reboundProps } from './props';
11
-
12
- export default defineComponent({
13
- name: 'ReboundNumber',
14
- props: reboundProps,
15
- setup(props) {
16
- const ulRef = ref();
17
- const timer = ref(null);
18
-
19
- onBeforeMount(() => {
20
- const ua = navigator.userAgent.toLowerCase();
21
- const testUA = regexp => regexp.test(ua);
22
- const isSafari = testUA(/safari/g) && !testUA(/chrome/g);
23
-
24
- // Safari浏览器的兼容代码
25
- isSafari &&
26
- (timer.value = setTimeout(() => {
27
- ulRef.value.setAttribute(
28
- 'style',
29
- `
30
- animation: none;
31
- transform: translateY(calc(var(--i) * -9.09%))
32
- `
33
- );
34
- }, props.delay * 1000));
35
- });
36
-
37
- onBeforeUnmount(() => {
38
- clearTimeout(unref(timer));
39
- });
40
-
41
- return () => (
42
- <>
43
- <div class="scroll-num" style={{ '--i': props.i, '--delay': props.delay }}>
44
- <ul ref="ulRef" style={{ fontSize: '32px' }}>
45
- <li>0</li>
46
- <li>1</li>
47
- <li>2</li>
48
- <li>3</li>
49
- <li>4</li>
50
- <li>5</li>
51
- <li>6</li>
52
- <li>7</li>
53
- <li>8</li>
54
- <li>9</li>
55
- <li>0</li>
56
- </ul>
57
-
58
- <svg width="0" height="0">
59
- <filter id="blur">
60
- <feGaussianBlur in="SourceGraphic" stdDeviation={`0 ${props.blur}`} />
61
- </filter>
62
- </svg>
63
- </div>
64
- </>
65
- );
66
- }
67
- });
@@ -1,14 +0,0 @@
1
- import type { PropType } from 'vue';
2
- import propTypes from '@/utils/propTypes';
3
- export const reboundProps = {
4
- delay: propTypes.number.def(1),
5
- blur: propTypes.number.def(2),
6
- i: {
7
- type: Number as PropType<number>,
8
- required: false,
9
- default: 0,
10
- validator(value: number) {
11
- return value < 10 && value >= 0 && Number.isInteger(value);
12
- }
13
- }
14
- };
@@ -1,77 +0,0 @@
1
- .scroll-num {
2
- width: var(--width, 20px);
3
- height: var(--height, calc(var(--width, 20px) * 1.8));
4
- color: var(--color, #333);
5
- font-size: var(--height, calc(var(--width, 20px) * 1.1));
6
- line-height: var(--height, calc(var(--width, 20px) * 1.8));
7
- text-align: center;
8
- overflow: hidden;
9
- animation: enhance-bounce-in-down 1s calc(var(--delay) * 1s) forwards;
10
- }
11
-
12
- ul {
13
- animation:
14
- move 0.3s linear infinite,
15
- bounce-in-down 1s calc(var(--delay) * 1s) forwards;
16
- }
17
-
18
- @keyframes move {
19
- from {
20
- transform: translateY(-90%);
21
- filter: url(#blur);
22
- }
23
-
24
- to {
25
- transform: translateY(1%);
26
- filter: url(#blur);
27
- }
28
- }
29
-
30
- @keyframes bounce-in-down {
31
- from {
32
- transform: translateY(calc(var(--i) * -9.09% - 7%));
33
- filter: none;
34
- }
35
-
36
- 25% {
37
- transform: translateY(calc(var(--i) * -9.09% + 3%));
38
- }
39
-
40
- 50% {
41
- transform: translateY(calc(var(--i) * -9.09% - 1%));
42
- }
43
-
44
- 70% {
45
- transform: translateY(calc(var(--i) * -9.09% + 0.6%));
46
- }
47
-
48
- 85% {
49
- transform: translateY(calc(var(--i) * -9.09% - 0.3%));
50
- }
51
-
52
- to {
53
- transform: translateY(calc(var(--i) * -9.09%));
54
- }
55
- }
56
-
57
- @keyframes enhance-bounce-in-down {
58
- 25% {
59
- transform: translateY(8%);
60
- }
61
-
62
- 50% {
63
- transform: translateY(-4%);
64
- }
65
-
66
- 70% {
67
- transform: translateY(2%);
68
- }
69
-
70
- 85% {
71
- transform: translateY(-1%);
72
- }
73
-
74
- to {
75
- transform: translateY(0);
76
- }
77
- }
@@ -1,14 +0,0 @@
1
- /*
2
- * @Author: wei.li
3
- * @Date: 2022-05-26 10:12:11
4
- * @LastEditors: wei.li
5
- * @LastEditTime: 2022-07-07 13:55:03
6
- * @Description: file content
7
- */
8
- import reCropper from './src';
9
- import { withInstall } from '@utogether/utils';
10
-
11
- /** ͼƬ�ü���� */
12
- export const ReCropper = withInstall(reCropper);
13
-
14
- export default ReCropper;
@@ -1,141 +0,0 @@
1
- import type { CSSProperties } from 'vue';
2
- import { defineComponent, onMounted, nextTick, ref, unref, computed, type PropType } from 'vue';
3
- import { templateRef } from '@vueuse/core';
4
- import { useAttrs } from '@utogether/utils';
5
-
6
- import Cropper from 'cropperjs';
7
- import 'cropperjs/dist/cropper.css';
8
-
9
- type Options = Cropper.Options;
10
-
11
- const defaultOptions: Cropper.Options = {
12
- aspectRatio: 16 / 9,
13
- zoomable: true,
14
- zoomOnTouch: true,
15
- zoomOnWheel: true,
16
- cropBoxMovable: true,
17
- cropBoxResizable: true,
18
- toggleDragModeOnDblclick: true,
19
- autoCrop: true,
20
- background: true,
21
- highlight: true,
22
- center: true,
23
- responsive: true,
24
- restore: true,
25
- checkCrossOrigin: true,
26
- checkOrientation: true,
27
- scalable: true,
28
- modal: true,
29
- guides: true,
30
- movable: true,
31
- rotatable: true
32
- };
33
-
34
- const props = {
35
- src: {
36
- type: String,
37
- required: true
38
- },
39
- alt: {
40
- type: String
41
- },
42
- width: {
43
- type: [String, Number],
44
- default: ''
45
- },
46
- height: {
47
- type: [String, Number],
48
- default: '360px'
49
- },
50
- crossorigin: {
51
- type: String || Object,
52
- default: undefined
53
- },
54
- imageStyle: {
55
- type: Object as PropType<CSSProperties>,
56
- default() {
57
- return {};
58
- }
59
- },
60
- options: {
61
- type: Object as PropType<Options>,
62
- default() {
63
- return {};
64
- }
65
- }
66
- };
67
-
68
- export default defineComponent({
69
- name: 'SuCropper',
70
- props,
71
- setup(props) {
72
- const cropper: any = ref<Nullable<Cropper>>(null);
73
- const imgElRef = templateRef<HTMLImageElement | null>('imgElRef', null);
74
-
75
- const isReady = ref<boolean>(false);
76
-
77
- const getImageStyle = computed((): CSSProperties => {
78
- return {
79
- height: props.height,
80
- width: props.width,
81
- maxWidth: '100%',
82
- ...props.imageStyle
83
- };
84
- });
85
-
86
- const getWrapperStyle = computed((): CSSProperties => {
87
- const { height, width } = props;
88
- return {
89
- width: `${width}`.replace(/px/, '') + 'px',
90
- height: `${height}`.replace(/px/, '') + 'px'
91
- };
92
- });
93
-
94
- function init() {
95
- const imgEl = unref(imgElRef);
96
- if (!imgEl) {
97
- return;
98
- }
99
- cropper.value = new Cropper(imgEl, {
100
- ...defaultOptions,
101
- ready: () => {
102
- isReady.value = true;
103
- },
104
- ...props.options
105
- });
106
- }
107
-
108
- onMounted(() => {
109
- nextTick(() => {
110
- init();
111
- });
112
- });
113
-
114
- return {
115
- props,
116
- imgElRef,
117
- cropper,
118
- getWrapperStyle,
119
- getImageStyle
120
- };
121
- },
122
-
123
- render() {
124
- return (
125
- <>
126
- <div
127
- class={useAttrs({ excludeListeners: true, excludeKeys: ['class'] })}
128
- style={this.getWrapperStyle}
129
- >
130
- <img
131
- ref="imgElRef"
132
- src={this.props.src}
133
- alt={this.props.alt}
134
- crossorigin={this.props.crossorigin}
135
- style={this.getImageStyle}
136
- />
137
- </div>
138
- </>
139
- );
140
- }
141
- });
@@ -1,39 +0,0 @@
1
- .point {
2
- width: var(--point-width);
3
- height: var(--point-height);
4
- background: var(--point-background);
5
- position: relative;
6
- border-radius: var(--point-border-radius);
7
- }
8
-
9
- .point-flicker:after {
10
- background: var(--point-background);
11
- }
12
-
13
- .point-flicker:before,
14
- .point-flicker:after {
15
- content: '';
16
- width: 100%;
17
- height: 100%;
18
- top: 0;
19
- left: 0;
20
- position: absolute;
21
- border-radius: var(--point-border-radius);
22
- animation: flicker 1.2s ease-out infinite;
23
- }
24
-
25
- @keyframes flicker {
26
- 0% {
27
- transform: scale(0.5);
28
- opacity: 1;
29
- }
30
-
31
- 30% {
32
- opacity: 1;
33
- }
34
-
35
- 100% {
36
- transform: scale(var(--point-scale));
37
- opacity: 0;
38
- }
39
- }
@@ -1,50 +0,0 @@
1
- /*
2
- * @Author: wei.li
3
- * @Date: 2022-05-24 11:26:59
4
- * @LastEditors: wei.li
5
- * @LastEditTime: 2024-07-02 08:42:13
6
- * @Description: 圆点、方形闪烁动画组件
7
- */
8
- import './index.css';
9
- import { h, defineComponent, type Component } from 'vue';
10
-
11
- export interface attrsType {
12
- width?: string;
13
- height?: string;
14
- borderRadius?: number | string;
15
- background?: string;
16
- scale?: number | string;
17
- }
18
-
19
- /**
20
- * 圆点、方形闪烁动画组件
21
- * @param width 可选 string 宽
22
- * @param height 可选 string 高
23
- * @param borderRadius 可选 number | string 传0为方形、传50%或者不传为圆形
24
- * @param background 可选 string 闪烁颜色
25
- * @param scale 可选 number | string 闪烁范围,默认2,值越大闪烁范围越大
26
- * @returns Component
27
- */
28
- export function useRenderFlicker(attrs?: attrsType): Component {
29
- return defineComponent({
30
- name: 'SuFlicker',
31
- render() {
32
- return h(
33
- 'div',
34
- {
35
- class: 'point point-flicker',
36
- style: {
37
- '--point-width': attrs?.width ?? '12px',
38
- '--point-height': attrs?.height ?? '12px',
39
- '--point-background': attrs?.background ?? 'var(--el-color-primary)',
40
- '--point-border-radius': attrs?.borderRadius ?? '50%',
41
- '--point-scale': attrs?.scale ?? '2'
42
- }
43
- },
44
- {
45
- default: () => []
46
- }
47
- );
48
- }
49
- });
50
- }
@@ -1,14 +0,0 @@
1
- /*
2
- * @Author: wei.li
3
- * @Date: 2022-05-26 10:12:11
4
- * @LastEditors: wei.li
5
- * @LastEditTime: 2022-07-07 13:55:14
6
- * @Description: file content
7
- */
8
- import reFlop from './src/index.vue';
9
- import { withInstall } from '@utogether/utils';
10
-
11
- /** ʱ�䷭����� */
12
- export const ReFlop = withInstall(reFlop);
13
-
14
- export default ReFlop;