cnhis-design-vue 3.1.7 → 3.1.8

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 (248) hide show
  1. package/es/node_modules/date-fns/esm/_lib/getTimezoneOffsetInMilliseconds/index.mjs +18 -0
  2. package/es/node_modules/date-fns/esm/_lib/requiredArgs/index.mjs +7 -0
  3. package/es/node_modules/date-fns/esm/compareAsc/index.mjs +56 -0
  4. package/es/node_modules/date-fns/esm/differenceInCalendarDays/index.mjs +53 -0
  5. package/es/node_modules/date-fns/esm/differenceInCalendarMonths/index.mjs +39 -0
  6. package/es/node_modules/date-fns/esm/differenceInDays/index.mjs +90 -0
  7. package/es/node_modules/date-fns/esm/differenceInMonths/index.mjs +63 -0
  8. package/es/node_modules/date-fns/esm/endOfDay/index.mjs +34 -0
  9. package/es/node_modules/date-fns/esm/endOfMonth/index.mjs +36 -0
  10. package/es/node_modules/date-fns/esm/isLastDayOfMonth/index.mjs +34 -0
  11. package/es/node_modules/date-fns/esm/startOfDay/index.mjs +34 -0
  12. package/es/node_modules/date-fns/esm/toDate/index.mjs +55 -0
  13. package/es/packages/big-table/index2.mjs +5 -3
  14. package/es/packages/big-table/src/BigTable.vue_vue_type_script_setup_true_lang.mjs +10 -11
  15. package/es/packages/big-table/src/components/NoData.vue_vue_type_script_setup_true_lang.mjs +0 -1
  16. package/es/packages/big-table/src/components/edit-form/edit-select-table.d.ts +1 -1
  17. package/es/packages/bpmn-workflow/index2.mjs +2 -2
  18. package/es/packages/bpmn-workflow/src/BpmnWorkflow.vue_vue_type_script_setup_true_lang.mjs +0 -1
  19. package/es/packages/button-print/index2.mjs +2 -2
  20. package/es/packages/button-print/src/ButtonPrint.vue_vue_type_script_setup_true_lang.mjs +6 -7
  21. package/es/packages/button-print/src/components/IdentityVerification.vue.d.ts +54 -107
  22. package/es/packages/button-print/src/components/IdentityVerification.vue_vue_type_script_setup_true_lang.mjs +0 -1
  23. package/es/packages/chunk-upload/index2.mjs +4 -2
  24. package/es/packages/chunk-upload/src/chunk-upload-new.vue_vue_type_script_setup_true_lang.mjs +2 -3
  25. package/es/packages/chunk-upload/src/vod-chunk-upload/vod-chunk-upload.vue_vue_type_script_setup_true_lang.mjs +11 -12
  26. package/es/packages/drag-layout/index.d.ts +294 -430
  27. package/es/packages/drag-layout/index2.mjs +4 -2
  28. package/es/packages/drag-layout/src/DragFormLeftItem.vue.d.ts +92 -119
  29. package/es/packages/drag-layout/src/DragFormLeftItem.vue_vue_type_script_setup_true_lang.mjs +0 -1
  30. package/es/packages/drag-layout/src/DragFormRightItem.vue.d.ts +77 -98
  31. package/es/packages/drag-layout/src/DragFormRightItem.vue_vue_type_script_setup_true_lang.mjs +0 -1
  32. package/es/packages/drag-layout/src/DragLayout.vue.d.ts +297 -430
  33. package/es/packages/drag-layout/src/DragLayout.vue_vue_type_script_setup_true_lang.mjs +44 -45
  34. package/es/packages/editor/index2.mjs +2 -2
  35. package/es/packages/field-set/index2.mjs +2 -2
  36. package/es/packages/field-set/src/FieldSet.vue_vue_type_script_setup_true_lang.mjs +4 -5
  37. package/es/packages/field-set/src/NewFieldSet.vue_vue_type_script_setup_true_lang.mjs +5 -8
  38. package/es/packages/form-render/index.mjs +10 -0
  39. package/es/packages/form-render/index2.mjs +15 -0
  40. package/es/packages/form-render/src/FormRender.mjs +2 -0
  41. package/es/packages/form-render/src/FormRender.vue_vue_type_script_setup_true_lang.mjs +91 -0
  42. package/es/packages/form-render/src/FormRender2.mjs +4 -0
  43. package/es/packages/form-render/src/components/cascader.d.ts +40 -0
  44. package/es/packages/form-render/src/components/cascader.mjs +1 -0
  45. package/es/packages/form-render/src/components/cascader2.mjs +108 -0
  46. package/es/packages/form-render/src/components/checkbox.d.ts +24 -0
  47. package/es/packages/form-render/src/components/checkbox.mjs +1 -0
  48. package/es/packages/form-render/src/components/checkbox2.mjs +42 -0
  49. package/es/packages/form-render/src/components/collapse.d.ts +31 -0
  50. package/es/packages/form-render/src/components/collapse.mjs +1 -0
  51. package/es/packages/form-render/src/components/collapse2.mjs +54 -0
  52. package/es/packages/form-render/src/components/combination.d.ts +142 -0
  53. package/es/packages/form-render/src/components/combination.mjs +1 -0
  54. package/es/packages/form-render/src/components/combination2.mjs +116 -0
  55. package/es/packages/form-render/src/components/date.d.ts +5033 -0
  56. package/es/packages/form-render/src/components/date.mjs +1 -0
  57. package/es/packages/form-render/src/components/date2.mjs +34 -0
  58. package/es/packages/form-render/src/components/formItem.d.ts +292 -0
  59. package/es/packages/form-render/src/components/formItem.mjs +1 -0
  60. package/es/packages/form-render/src/components/formItem2.mjs +22 -0
  61. package/es/packages/form-render/src/components/index.d.ts +15 -0
  62. package/es/packages/form-render/src/components/index.mjs +15 -0
  63. package/es/packages/form-render/src/components/index2.mjs +15 -0
  64. package/es/packages/form-render/src/components/input.d.ts +15 -0
  65. package/es/packages/form-render/src/components/input.mjs +1 -0
  66. package/es/packages/form-render/src/components/input2.mjs +40 -0
  67. package/es/packages/form-render/src/components/inputGroup.d.ts +11 -0
  68. package/es/packages/form-render/src/components/inputGroup.mjs +1 -0
  69. package/es/packages/form-render/src/components/inputGroup2.mjs +8 -0
  70. package/es/packages/{map/src/Map.vue.d.ts → form-render/src/components/inputNumber.d.ts} +1002 -1150
  71. package/es/packages/form-render/src/components/inputNumber.mjs +1 -0
  72. package/es/packages/form-render/src/components/inputNumber2.mjs +7 -0
  73. package/es/packages/form-render/src/components/labelSelect.d.ts +1 -0
  74. package/es/packages/form-render/src/components/labelSelect.mjs +1 -0
  75. package/es/packages/form-render/src/components/labelSelect2.mjs +18 -0
  76. package/es/packages/form-render/src/components/radio.d.ts +24 -0
  77. package/es/packages/form-render/src/components/radio.mjs +1 -0
  78. package/es/packages/form-render/src/components/radio2.mjs +44 -0
  79. package/es/packages/form-render/src/components/select.d.ts +29 -0
  80. package/es/packages/form-render/src/components/select.mjs +1 -0
  81. package/es/packages/form-render/src/components/select2.mjs +97 -0
  82. package/es/packages/form-render/src/components/slider.d.ts +347 -0
  83. package/es/packages/form-render/src/components/slider.mjs +1 -0
  84. package/es/packages/form-render/src/components/slider2.mjs +16 -0
  85. package/es/packages/form-render/src/components/switch.d.ts +21 -0
  86. package/es/packages/form-render/src/components/switch.mjs +1 -0
  87. package/es/packages/form-render/src/components/switch2.mjs +48 -0
  88. package/es/packages/form-render/src/components/textarea.d.ts +845 -0
  89. package/es/packages/form-render/src/components/textarea.mjs +1 -0
  90. package/es/packages/form-render/src/components/textarea2.mjs +11 -0
  91. package/es/packages/form-render/src/constants/index.d.ts +23 -0
  92. package/es/packages/form-render/src/constants/index.mjs +1 -0
  93. package/es/packages/form-render/src/constants/index2.mjs +24 -0
  94. package/es/packages/form-render/src/hooks/index.d.ts +9 -0
  95. package/es/packages/form-render/src/hooks/index.mjs +9 -0
  96. package/es/packages/form-render/src/hooks/useAsyncQueue.d.ts +60 -0
  97. package/es/packages/form-render/src/hooks/useAsyncQueue.mjs +1 -0
  98. package/es/packages/form-render/src/hooks/useAsyncQueue2.mjs +138 -0
  99. package/es/packages/form-render/src/hooks/useBusinessBinding.d.ts +13 -0
  100. package/es/packages/form-render/src/hooks/useBusinessBinding.mjs +1 -0
  101. package/es/packages/form-render/src/hooks/useBusinessBinding2.mjs +48 -0
  102. package/es/packages/form-render/src/hooks/useCommonLog.d.ts +3 -0
  103. package/es/packages/form-render/src/hooks/useCommonLog.mjs +1 -0
  104. package/es/packages/form-render/src/hooks/useCommonLog2.mjs +10 -0
  105. package/es/packages/form-render/src/hooks/useFieldList2Schema.d.ts +64 -0
  106. package/es/packages/form-render/src/hooks/useFieldList2Schema.mjs +1 -0
  107. package/es/packages/form-render/src/hooks/useFieldList2Schema2.mjs +184 -0
  108. package/es/packages/form-render/src/hooks/useFieldVisitor.d.ts +4 -0
  109. package/es/packages/form-render/src/hooks/useFieldVisitor.mjs +1 -0
  110. package/es/packages/form-render/src/hooks/useFieldVisitor2.mjs +38 -0
  111. package/es/packages/form-render/src/hooks/useFormField.d.ts +4 -0
  112. package/es/packages/form-render/src/hooks/useFormField.mjs +1 -0
  113. package/es/packages/form-render/src/hooks/useFormField2.mjs +9 -0
  114. package/es/packages/form-render/src/hooks/useFormRequest.d.ts +6 -0
  115. package/es/packages/form-render/src/hooks/useFormRequest.mjs +1 -0
  116. package/es/packages/form-render/src/hooks/useFormRequest2.mjs +12 -0
  117. package/es/packages/form-render/src/hooks/useFormValidator.d.ts +5 -0
  118. package/es/packages/form-render/src/hooks/useFormValidator.mjs +1 -0
  119. package/es/packages/form-render/src/hooks/useFormValidator2.mjs +48 -0
  120. package/es/packages/form-render/src/hooks/useTypeNormalize.d.ts +4 -0
  121. package/es/packages/form-render/src/hooks/useTypeNormalize.mjs +1 -0
  122. package/es/packages/form-render/src/hooks/useTypeNormalize2.mjs +37 -0
  123. package/es/packages/form-render/src/types/fieldItem.d.ts +44 -0
  124. package/es/packages/form-render/src/types/fieldItem.mjs +1 -0
  125. package/es/packages/form-render/src/types/index.d.ts +26 -0
  126. package/es/packages/form-render/src/types/index.mjs +1 -0
  127. package/es/packages/form-render/src/utils/index.d.ts +10 -0
  128. package/es/packages/form-render/src/utils/index.mjs +1 -0
  129. package/es/packages/form-render/src/utils/index2.mjs +59 -0
  130. package/es/packages/form-render/style/index.css +80 -0
  131. package/es/packages/form-render/style/index.less +116 -0
  132. package/es/packages/form-table/index2.mjs +2 -2
  133. package/es/packages/form-table/src/FormTable.vue_vue_type_script_setup_true_lang.mjs +0 -1
  134. package/es/packages/form-table/src/components/table-age.vue_vue_type_script_setup_true_lang.mjs +0 -1
  135. package/es/packages/form-table/src/components/table-date-picker.vue_vue_type_script_setup_true_lang.mjs +0 -1
  136. package/es/packages/form-table/src/components/table-digital.vue_vue_type_script_setup_true_lang.mjs +0 -1
  137. package/es/packages/form-table/src/components/table-input-password.vue_vue_type_script_setup_true_lang.mjs +0 -1
  138. package/es/packages/form-table/src/components/table-input.vue_vue_type_script_setup_true_lang.mjs +0 -1
  139. package/es/packages/form-table/src/components/table-month-picker.vue_vue_type_script_setup_true_lang.mjs +0 -1
  140. package/es/packages/form-table/src/components/table-search-more.vue_vue_type_script_setup_true_lang.mjs +0 -1
  141. package/es/packages/form-table/src/components/table-search.vue_vue_type_script_setup_true_lang.mjs +0 -1
  142. package/es/packages/form-table/src/components/table-select-multiple.vue_vue_type_script_setup_true_lang.mjs +0 -1
  143. package/es/packages/form-table/src/components/table-select.vue_vue_type_script_setup_true_lang.mjs +0 -1
  144. package/es/packages/form-table/src/components/table-textarea.vue_vue_type_script_setup_true_lang.mjs +0 -1
  145. package/es/packages/form-table/src/components/table-time-picker.vue_vue_type_script_setup_true_lang.mjs +0 -1
  146. package/es/packages/form-table/src/components/table-tree-select.vue_vue_type_script_setup_true_lang.mjs +0 -1
  147. package/es/packages/form-table/src/components/text-over-tooltip.vue_vue_type_script_setup_true_lang.mjs +0 -1
  148. package/es/packages/grid/index2.mjs +4 -2
  149. package/es/packages/index.css +81 -1
  150. package/es/packages/index.d.ts +5 -2
  151. package/es/packages/index.less +118 -1
  152. package/es/packages/index.mjs +10 -0
  153. package/es/packages/index2.mjs +7 -7
  154. package/es/packages/info-header/index2.mjs +2 -2
  155. package/es/packages/info-header/src/HiddenContent.vue_vue_type_script_setup_true_lang.mjs +0 -1
  156. package/es/packages/info-header/src/InfoHeader.vue_vue_type_script_setup_true_lang.mjs +0 -1
  157. package/es/packages/info-header/style/index.css +1 -1
  158. package/es/packages/info-header/style/index.less +1 -1
  159. package/es/packages/map/index2.mjs +2 -2
  160. package/es/packages/map/src/Map.vue_vue_type_script_setup_true_lang.mjs +5 -6
  161. package/es/packages/scale-view/index2.mjs +8 -6
  162. package/es/packages/scale-view/src/ScaleView.vue_vue_type_script_setup_true_lang.mjs +16 -14
  163. package/es/packages/scale-view/src/components/AnswerParse.vue_vue_type_script_setup_true_lang.mjs +2 -3
  164. package/es/packages/scale-view/src/components/EvaluateCountdown.vue_vue_type_script_setup_true_lang.mjs +1 -2
  165. package/es/packages/scale-view/src/components/EvaluatePage.vue_vue_type_script_setup_true_lang.mjs +3 -4
  166. package/es/packages/scale-view/src/components/NoData.vue_vue_type_script_setup_true_lang.mjs +0 -1
  167. package/es/packages/scale-view/src/components/ScaleScore2.mjs +1 -1
  168. package/es/packages/scale-view/src/components/composables/choose-common.d.ts +1 -1
  169. package/es/packages/scale-view/src/components/formitem/r-checkbox2.mjs +3 -3
  170. package/es/packages/scale-view/src/components/formitem/r-collection2.mjs +1 -1
  171. package/es/packages/scale-view/src/components/formitem/r-radio2.mjs +4 -4
  172. package/es/packages/scale-view/src/components/formitem/r-select2.mjs +3 -3
  173. package/es/packages/scale-view/src/components/formitem/text-over-tooltip/TextOverTooltip.vue.d.ts +2 -6
  174. package/es/packages/select-label/index2.mjs +3 -3
  175. package/es/packages/select-label/src/LabelFormContent.vue.d.ts +96 -303
  176. package/es/packages/select-label/src/LabelFormContent.vue_vue_type_script_setup_true_lang.mjs +4 -5
  177. package/es/packages/select-label/src/SelectLabel.vue_vue_type_script_setup_true_lang.mjs +19 -17
  178. package/es/packages/select-label/src/components/label-classify.vue.d.ts +68 -236
  179. package/es/packages/select-label/src/components/label-classify.vue_vue_type_script_setup_true_lang.mjs +0 -1
  180. package/es/packages/select-person/index2.mjs +2 -2
  181. package/es/packages/select-person/src/SearchTree.vue_vue_type_script_setup_true_lang.mjs +2 -3
  182. package/es/packages/select-person/src/SelectPerson.vue_vue_type_script_setup_true_lang.mjs +23 -24
  183. package/es/packages/time-line/index.d.ts +28 -47
  184. package/es/packages/time-line/index2.mjs +2 -2
  185. package/es/packages/time-line/src/TimeLine.vue.d.ts +28 -47
  186. package/es/packages/time-line/src/TimeLine.vue_vue_type_script_setup_true_lang.mjs +0 -1
  187. package/es/src/components/SelectPage/SelectPage.vue_vue_type_script_setup_true_lang.mjs +0 -1
  188. package/es/src/components/SvgIcon/SvgIcon.vue_vue_type_script_setup_true_lang.mjs +0 -1
  189. package/es/src/components/TextOverTooltip/TextOverTooltip.vue.d.ts +2 -6
  190. package/es/src/components/TextOverTooltip/TextOverTooltip.vue_vue_type_script_setup_true_lang.mjs +0 -1
  191. package/es/src/components/player-vod/index.vue_vue_type_script_setup_true_lang.mjs +0 -1
  192. package/es/src/utils/anime.d.ts +35 -0
  193. package/es/src/utils/anime.mjs +1 -0
  194. package/es/src/utils/anime2.mjs +126 -0
  195. package/es/src/utils/utilExpand.d.ts +1 -0
  196. package/es/src/utils/utilExpand.mjs +1 -0
  197. package/es/src/utils/utilExpand2.mjs +714 -0
  198. package/es/src/utils/vexutils2.mjs +2 -708
  199. package/md-plugin.ts +201 -0
  200. package/package.json +125 -119
  201. package/uno.config.ts +22 -0
  202. package/es/packages/big-table/index.d.ts +0 -2047
  203. package/es/packages/big-table/src/BigTable.vue.d.ts +0 -2046
  204. package/es/packages/big-table/src/components/NoData.vue.d.ts +0 -51
  205. package/es/packages/bpmn-workflow/index.d.ts +0 -74
  206. package/es/packages/bpmn-workflow/src/BpmnWorkflow.vue.d.ts +0 -77
  207. package/es/packages/button-print/index.d.ts +0 -7378
  208. package/es/packages/button-print/src/ButtonPrint.vue.d.ts +0 -7377
  209. package/es/packages/chunk-upload/index.d.ts +0 -1748
  210. package/es/packages/chunk-upload/src/chunk-upload-new.vue.d.ts +0 -1905
  211. package/es/packages/chunk-upload/src/vod-chunk-upload/vod-chunk-upload.vue.d.ts +0 -1749
  212. package/es/packages/field-set/index.d.ts +0 -5284
  213. package/es/packages/field-set/src/FieldSet.vue.d.ts +0 -2602
  214. package/es/packages/field-set/src/NewFieldSet.vue.d.ts +0 -2599
  215. package/es/packages/form-table/index.d.ts +0 -35928
  216. package/es/packages/form-table/src/FormTable.vue.d.ts +0 -35928
  217. package/es/packages/form-table/src/components/index.d.ts +0 -35687
  218. package/es/packages/form-table/src/components/table-age.vue.d.ts +0 -4308
  219. package/es/packages/form-table/src/components/table-date-picker.vue.d.ts +0 -5287
  220. package/es/packages/form-table/src/components/table-digital.vue.d.ts +0 -2919
  221. package/es/packages/form-table/src/components/table-input-password.vue.d.ts +0 -1627
  222. package/es/packages/form-table/src/components/table-input.vue.d.ts +0 -1584
  223. package/es/packages/form-table/src/components/table-month-picker.vue.d.ts +0 -5230
  224. package/es/packages/form-table/src/components/table-search-more.vue.d.ts +0 -1785
  225. package/es/packages/form-table/src/components/table-search.vue.d.ts +0 -3111
  226. package/es/packages/form-table/src/components/table-select-multiple.vue.d.ts +0 -1567
  227. package/es/packages/form-table/src/components/table-select.vue.d.ts +0 -1566
  228. package/es/packages/form-table/src/components/table-textarea.vue.d.ts +0 -1643
  229. package/es/packages/form-table/src/components/table-time-picker.vue.d.ts +0 -2674
  230. package/es/packages/form-table/src/components/table-tree-select.vue.d.ts +0 -1881
  231. package/es/packages/form-table/src/components/text-over-tooltip.vue.d.ts +0 -546
  232. package/es/packages/info-header/index.d.ts +0 -1846
  233. package/es/packages/info-header/src/HiddenContent.vue.d.ts +0 -363
  234. package/es/packages/info-header/src/InfoHeader.vue.d.ts +0 -1847
  235. package/es/packages/map/index.d.ts +0 -2315
  236. package/es/packages/scale-view/index.d.ts +0 -4297
  237. package/es/packages/scale-view/src/ScaleView.vue.d.ts +0 -4141
  238. package/es/packages/scale-view/src/components/AnswerParse.vue.d.ts +0 -72
  239. package/es/packages/scale-view/src/components/EvaluateCountdown.vue.d.ts +0 -150
  240. package/es/packages/scale-view/src/components/EvaluatePage.vue.d.ts +0 -1503
  241. package/es/packages/scale-view/src/components/NoData.vue.d.ts +0 -51
  242. package/es/packages/scale-view/src/hooks/use-component.d.ts +0 -2673
  243. package/es/packages/select-label/index.d.ts +0 -12120
  244. package/es/packages/select-label/src/SelectLabel.vue.d.ts +0 -7546
  245. package/es/packages/select-person/index.d.ts +0 -3502
  246. package/es/packages/select-person/src/SearchTree.vue.d.ts +0 -344
  247. package/es/packages/select-person/src/SelectPerson.vue.d.ts +0 -3505
  248. package/es/src/components/SelectPage/SelectPage.vue.d.ts +0 -1446
package/md-plugin.ts ADDED
@@ -0,0 +1,201 @@
1
+ import MarkdownIt from 'markdown-it';
2
+ import { parse, compileScript, compileTemplate, SFCDescriptor } from '@vue/compiler-sfc';
3
+ import { PluginOption } from 'vite';
4
+ import fs from 'fs';
5
+ import { resolve } from 'path';
6
+ import hljs from 'highlight.js';
7
+
8
+ type ComponentInfo = {
9
+ alias: string;
10
+ path: string;
11
+ title?: string;
12
+ description?: string;
13
+ code: string;
14
+ };
15
+
16
+ const demoMatcher = /(::: demo\s*([^]+?)\s:::)/g;
17
+ const tipMatcher = /(::: tip\s*(\S*)([^]+?)\s:::)/g;
18
+ const getVueImportMatcher = (flags?: string) =>
19
+ new RegExp('([\\\\/.a-zA-Z-_\\d]+\\.vue)(\\[.+?])?(\\{.+?})?', flags);
20
+
21
+ const isMdExtension = (id: string) => /\.md$/.test(id);
22
+
23
+ function highlight(str: string, lang = 'html') {
24
+ if (lang && hljs.getLanguage(lang)) {
25
+ try {
26
+ return (
27
+ '<pre><code class="hljs">' +
28
+ hljs.highlight(str, { language: lang, ignoreIllegals: true }).value +
29
+ '</code></pre>'
30
+ );
31
+ } catch (e) {
32
+ console.warn(e);
33
+ return '';
34
+ }
35
+ }
36
+ return '';
37
+ }
38
+
39
+ const md2html = MarkdownIt({ highlight });
40
+
41
+ function escape(code: string) {
42
+ return code
43
+ .replace(/<script/g, '\\<script')
44
+ .replace(/<\/script/g, '\\<\\/script')
45
+ .replace(/`/g, '\\`')
46
+ .replace(/\t/g, ' ');
47
+ }
48
+
49
+ function transformMd2Html(md: string) {
50
+ return md2html.render(md);
51
+ }
52
+
53
+ function parseDemo(html: string, id: string) {
54
+ let totalIndex = 0;
55
+ const resultComponents: ComponentInfo[] = [];
56
+
57
+ const resultCode = html.replace(demoMatcher, (_, wrapper, innerContent) => {
58
+ if (!wrapper || !innerContent) return '';
59
+
60
+ const vueDemos: string[] = innerContent.match(getVueImportMatcher('g')) || [];
61
+ const componentList = vueDemos.map(pathAndInfo => createComponentInfo(pathAndInfo));
62
+ resultComponents.push(...componentList);
63
+
64
+ return componentList.reduce((fin, cur) => {
65
+ return fin + generateTemplateString(cur, cur.alias);
66
+ }, '');
67
+ });
68
+
69
+ return { code: resultCode, components: resultComponents };
70
+
71
+ function generateTemplateString(info: ComponentInfo, alias: string) {
72
+ return `<demo-collapse>
73
+ ${generateTitleString(info)}
74
+ ${generateDescriptionString(info)}
75
+ <template #source>
76
+ <highlightjs :code="code__${alias}" />
77
+ </template>
78
+ <${info.alias}/>
79
+ </demo-collapse>\n`;
80
+ }
81
+
82
+ function generateTitleString(info: ComponentInfo) {
83
+ return info.title ? `<template #title>${info.title.replace(/[\[\]]/g, '')}</template>` : '';
84
+ }
85
+
86
+ function generateDescriptionString(info: ComponentInfo) {
87
+ return info.description
88
+ ? `<template #description>${info.description.replace(/[{}]/g, '')}</template>`
89
+ : '';
90
+ }
91
+
92
+ function createComponentInfo(pathAndInfo: string): ComponentInfo {
93
+ const [_, path, title, description] = pathAndInfo.match(getVueImportMatcher()) || [];
94
+ return {
95
+ alias: `Component${totalIndex++}`,
96
+ title,
97
+ description,
98
+ path: resolveIdPath(path),
99
+ code: getCodeFromPath(path)
100
+ };
101
+ }
102
+
103
+ function getCodeFromPath(path: string) {
104
+ return escape(fs.readFileSync(resolveIdPath(path), 'utf-8'));
105
+ }
106
+
107
+ function resolveIdPath(path: string) {
108
+ return resolve(id, '..', path).replace(/\\/g, '/');
109
+ }
110
+ }
111
+
112
+ function parseTip(html: string) {
113
+ return html.replace(tipMatcher, (_, __, type, content) => {
114
+ return `<n-alert type="${type}">${content}</n-alert>`;
115
+ });
116
+ }
117
+
118
+ function parseMarkdown(md: string, id: string) {
119
+ const html = transformMd2Html(md);
120
+ const res = parseDemo(html, id);
121
+ const code = parseTip(res.code);
122
+ return { code, components: res.components };
123
+ }
124
+
125
+ function transformMd2VueComponent(src: string, id: string) {
126
+ const { code, components } = parseMarkdown(src, id);
127
+ const { descriptor } = parse(generateSourceCode());
128
+
129
+ return combine(getTemplateCode(descriptor), getScriptCode(descriptor));
130
+
131
+ function generateSourceCode() {
132
+ return `
133
+ <template>
134
+ <div class='markdown'>
135
+ <anchor-list>
136
+ ${code}
137
+ </anchor-list>
138
+ </div>
139
+ </template>
140
+ <script>
141
+ ${generateImports()}
142
+ const __script={
143
+ components:{${generateComponents()}},
144
+ setup(){
145
+ ${generateVarDeclare()}
146
+ return {${generateSetupReturn()}}
147
+ }
148
+ };
149
+ export default __script;
150
+ </script>
151
+ `;
152
+ }
153
+
154
+ function getTemplateCode(descriptor: SFCDescriptor) {
155
+ return compileTemplate({
156
+ source: descriptor.template?.content ?? '',
157
+ id: '-1',
158
+ filename: 'index.vue'
159
+ }).code;
160
+ }
161
+
162
+ function getScriptCode(descriptor: SFCDescriptor) {
163
+ return compileScript(descriptor, { id: '-1' }).content;
164
+ }
165
+
166
+ function combine(template: string, script: string) {
167
+ return `${template}\n${script.replace(
168
+ 'export default',
169
+ '__script.render=render;\nexport default'
170
+ )}`;
171
+ }
172
+
173
+ function generateImports() {
174
+ return components.map(({ alias, path }) => `import ${alias} from "${path}";\n`).join('');
175
+ }
176
+
177
+ function generateComponents() {
178
+ return components.map(({ alias }) => `${alias}`).join(',');
179
+ }
180
+
181
+ function generateVarDeclare() {
182
+ return components.map(({ code, alias }) => `const code__${alias} = \`${code}\`;\n`).join('');
183
+ }
184
+
185
+ function generateSetupReturn() {
186
+ return `${components.map(({ alias }) => `code__${alias}`).join(',')}`;
187
+ }
188
+ }
189
+
190
+ export function MDPlugin(): PluginOption {
191
+ return {
192
+ name: 'MDPlugin',
193
+ transform(src, id) {
194
+ if (isMdExtension(id)) {
195
+ return {
196
+ code: transformMd2VueComponent(src, id)
197
+ };
198
+ }
199
+ }
200
+ };
201
+ }
package/package.json CHANGED
@@ -1,119 +1,125 @@
1
- {
2
- "name": "cnhis-design-vue",
3
- "private": false,
4
- "version": "3.1.7",
5
- "module": "es/packages/index.mjs",
6
- "main": "es/packages/index.mjs",
7
- "types": "es/packages/index.d.ts",
8
- "sideEffects": [
9
- "es/packages/**/style/*",
10
- "es/packages/*(.css,.less)"
11
- ],
12
- "scripts": {
13
- "dev": "vite --host --port 3200",
14
- "start": "gulp --require @esbuild-kit/cjs-loader -f build/gulpfile.ts",
15
- "build": "npm run start",
16
- "preview": "vite preview",
17
- "release": "standard-version"
18
- },
19
- "peerDependencies": {
20
- "naive-ui": "^2.29.0",
21
- "vue": ">=3.2.0",
22
- "vxe-table": "~4.2.1"
23
- },
24
- "dependencies": {
25
- "@highlightjs/vue-plugin": "^2.1.0",
26
- "@vicons/ionicons5": "^0.12.0",
27
- "@vueuse/core": "^8.6.0",
28
- "@vueuse/shared": "^8.6.0",
29
- "@wangeditor/editor": "^5.1.1",
30
- "@wangeditor/editor-for-vue": "^5.1.11",
31
- "axios": "^0.27.2",
32
- "babel-preset-typescript": "7.0.0-alpha.19",
33
- "bpmn-js": "^9.2.2",
34
- "crypto-js": "^4.1.1",
35
- "highlight.js": "^11.5.1",
36
- "lodash": "^4.17.21",
37
- "lodash-es": "^4.17.21",
38
- "lodash-unified": "^1.0.2",
39
- "moment": "^2.29.1",
40
- "naive-ui": "^2.29.0",
41
- "rimraf": "^3.0.2",
42
- "spark-md5": "^3.0.2",
43
- "type-fest": "^2.13.0",
44
- "v-viewer": "^3.0.10",
45
- "video.js": "^7.19.2",
46
- "videojs-contrib-hls": "^5.15.0",
47
- "viewerjs": "^1.10.5",
48
- "vue": "^3.2.36",
49
- "vue-simple-uploader": "^1.0.0-beta.5",
50
- "vuedraggable": "4.1.0",
51
- "vxe-table": "4.2.1",
52
- "xe-utils": "^3.5.4"
53
- },
54
- "devDependencies": {
55
- "@babel/cli": "^7.17.10",
56
- "@babel/core": "^7.18.2",
57
- "@babel/preset-env": "^7.18.2",
58
- "@babel/preset-typescript": "^7.17.12",
59
- "@esbuild-kit/cjs-loader": "^2.0.0",
60
- "@rollup/plugin-alias": "^3.1.9",
61
- "@rollup/plugin-commonjs": "^22.0.0",
62
- "@rollup/plugin-image": "^2.1.1",
63
- "@rollup/plugin-node-resolve": "^13.3.0",
64
- "@types/babel__core": "^7.1.19",
65
- "@types/fs-extra": "^9.0.13",
66
- "@types/gulp": "^4.0.9",
67
- "@types/gulp-less": "^0.0.32",
68
- "@types/lodash-es": "^4.17.6",
69
- "@types/node": "^17.0.38",
70
- "@types/replacestream": "^4.0.1",
71
- "@types/vue-router": "^2.0.0",
72
- "@vitejs/plugin-vue": "^2.3.3",
73
- "@vitejs/plugin-vue-jsx": "^1.3.10",
74
- "@vue/babel-preset-jsx": "^1.2.4",
75
- "@vue/compiler-sfc": "^3.2.33",
76
- "@vue/shared": "^3.2.36",
77
- "autoprefixer": "^10.4.7",
78
- "axios": "^0.27.2",
79
- "bpmn-js": "^9.2.2",
80
- "chalk": "^5.0.1",
81
- "consola": "^2.15.3",
82
- "cssnano": "^5.1.7",
83
- "esbuild": "^0.14.42",
84
- "eslint": "^8.10.0",
85
- "eslint-plugin-prettier": "^4.0.0",
86
- "eslint-plugin-vue": "^8.5.0",
87
- "fast-glob": "^3.2.11",
88
- "gulp": "^4.0.2",
89
- "gulp-cssimport": "^7.0.0",
90
- "gulp-less": "^5.0.0",
91
- "gulp-rename": "^2.0.0",
92
- "gulp-replace": "^1.1.3",
93
- "gulp-util": "^3.0.8",
94
- "less": "^4.1.2",
95
- "postcss": "^8.4.14",
96
- "replacestream": "^4.0.3",
97
- "rollup": "^2.75.5",
98
- "rollup-plugin-delete": "^2.0.0",
99
- "rollup-plugin-esbuild": "^4.9.1",
100
- "rollup-plugin-external-globals": "^0.6.1",
101
- "rollup-plugin-postcss": "^4.0.2",
102
- "rollup-plugin-terser": "^7.0.2",
103
- "rollup-plugin-typescript2": "^0.32.0",
104
- "rollup-plugin-vue": "^6.0.0",
105
- "standard-version": "^9.3.2",
106
- "ts-morph": "^15.1.0",
107
- "typescript": "4.6.4",
108
- "vite": "^2.9.9",
109
- "vue-tsc": "^0.29.8"
110
- },
111
- "browserslist": [
112
- "defaults",
113
- "not ie < 8",
114
- "last 2 versions",
115
- "> 1%",
116
- "iOS 7",
117
- "last 3 iOS versions"
118
- ]
119
- }
1
+ {
2
+ "name": "cnhis-design-vue",
3
+ "private": false,
4
+ "version": "3.1.8",
5
+ "module": "es/packages/index.mjs",
6
+ "main": "es/packages/index.mjs",
7
+ "types": "es/packages/index.d.ts",
8
+ "sideEffects": [
9
+ "es/packages/**/style/*",
10
+ "es/packages/*(.css,.less)"
11
+ ],
12
+ "scripts": {
13
+ "dev": "node --max-old-space-size=8192 node_modules/vite/bin/vite.js --host --port 3200",
14
+ "start": "gulp --require @esbuild-kit/cjs-loader -f build/gulpfile.ts",
15
+ "build": "npm run start",
16
+ "preview": "vite preview",
17
+ "release": "standard-version"
18
+ },
19
+ "peerDependencies": {
20
+ "naive-ui": "^2.29.0",
21
+ "vue": ">=3.2.0"
22
+ },
23
+ "dependencies": {
24
+ "@formily/core": "^2.1.9",
25
+ "@formily/vue": "^2.1.9",
26
+ "@highlightjs/vue-plugin": "^2.1.0",
27
+ "@vicons/ionicons5": "^0.12.0",
28
+ "@vueuse/core": "^8.6.0",
29
+ "@vueuse/shared": "^8.6.0",
30
+ "@wangeditor/editor": "^5.1.1",
31
+ "@wangeditor/editor-for-vue": "^5.1.11",
32
+ "axios": "^0.27.2",
33
+ "babel-preset-typescript": "7.0.0-alpha.19",
34
+ "bpmn-js": "^9.2.2",
35
+ "crypto-js": "^4.1.1",
36
+ "highlight.js": "^11.5.1",
37
+ "lodash": "^4.17.21",
38
+ "lodash-es": "^4.17.21",
39
+ "lodash-unified": "^1.0.2",
40
+ "moment": "^2.29.1",
41
+ "naive-ui": "^2.29.0",
42
+ "rimraf": "^3.0.2",
43
+ "spark-md5": "^3.0.2",
44
+ "type-fest": "^2.13.0",
45
+ "v-viewer": "^3.0.10",
46
+ "video.js": "^7.19.2",
47
+ "videojs-contrib-hls": "^5.15.0",
48
+ "viewerjs": "^1.10.5",
49
+ "vue": "^3.2.36",
50
+ "vue-simple-uploader": "^1.0.0-beta.5",
51
+ "vuedraggable": "4.1.0",
52
+ "vxe-table": "4.2.1",
53
+ "xe-utils": "^3.5.4"
54
+ },
55
+ "devDependencies": {
56
+ "@babel/cli": "^7.17.10",
57
+ "@babel/core": "^7.18.2",
58
+ "@babel/preset-env": "^7.18.2",
59
+ "@babel/preset-typescript": "^7.17.12",
60
+ "@esbuild-kit/cjs-loader": "^2.0.0",
61
+ "@rollup/plugin-alias": "^3.1.9",
62
+ "@rollup/plugin-commonjs": "^22.0.0",
63
+ "@rollup/plugin-image": "^2.1.1",
64
+ "@rollup/plugin-node-resolve": "^13.3.0",
65
+ "@types/babel__core": "^7.1.19",
66
+ "@types/fs-extra": "^9.0.13",
67
+ "@types/gulp": "^4.0.9",
68
+ "@types/gulp-less": "^0.0.32",
69
+ "@types/lodash-es": "^4.17.6",
70
+ "@types/markdown-it": "^12.2.3",
71
+ "@types/node": "^17.0.38",
72
+ "@types/replacestream": "^4.0.1",
73
+ "@types/vue-router": "^2.0.0",
74
+ "@vitejs/plugin-vue": "^2.3.3",
75
+ "@vitejs/plugin-vue-jsx": "^1.3.10",
76
+ "@vue/babel-preset-jsx": "^1.2.4",
77
+ "@vue/compiler-sfc": "^3.2.33",
78
+ "@vue/shared": "^3.2.36",
79
+ "autoprefixer": "^10.4.7",
80
+ "axios": "^0.27.2",
81
+ "bpmn-js": "^9.2.2",
82
+ "chalk": "^5.0.1",
83
+ "consola": "^2.15.3",
84
+ "cssnano": "^5.1.7",
85
+ "esbuild": "^0.14.42",
86
+ "eslint": "^8.10.0",
87
+ "eslint-plugin-prettier": "^4.0.0",
88
+ "eslint-plugin-vue": "^8.5.0",
89
+ "fast-glob": "^3.2.11",
90
+ "gulp": "^4.0.2",
91
+ "gulp-cssimport": "^7.0.0",
92
+ "gulp-less": "^5.0.0",
93
+ "gulp-rename": "^2.0.0",
94
+ "gulp-replace": "^1.1.3",
95
+ "gulp-util": "^3.0.8",
96
+ "less": "^4.1.2",
97
+ "markdown-it": "^13.0.1",
98
+ "postcss": "^8.4.14",
99
+ "replacestream": "^4.0.3",
100
+ "rollup": "^2.75.5",
101
+ "rollup-plugin-delete": "^2.0.0",
102
+ "rollup-plugin-esbuild": "^4.9.1",
103
+ "rollup-plugin-external-globals": "^0.6.1",
104
+ "rollup-plugin-postcss": "^4.0.2",
105
+ "rollup-plugin-terser": "^7.0.2",
106
+ "rollup-plugin-typescript2": "^0.32.0",
107
+ "rollup-plugin-vue": "^6.0.0",
108
+ "standard-version": "^9.3.2",
109
+ "ts-morph": "^15.1.0",
110
+ "typescript": "4.6.4",
111
+ "unocss": "^0.41.1",
112
+ "vite": "^2.9.9",
113
+ "vite-plugin-markdown": "^2.0.2",
114
+ "vue-tsc": "^0.29.8",
115
+ "xe-css": "^1.2.3"
116
+ },
117
+ "browserslist": [
118
+ "defaults",
119
+ "not ie < 8",
120
+ "last 2 versions",
121
+ "> 1%",
122
+ "iOS 7",
123
+ "last 3 iOS versions"
124
+ ]
125
+ }
package/uno.config.ts ADDED
@@ -0,0 +1,22 @@
1
+ import presetAttributify from '@unocss/preset-attributify';
2
+ import { XeCSSDefaultRules } from 'xe-css/dist/presets';
3
+ import Unocss from 'unocss/vite';
4
+
5
+ export const UnoConfig = Unocss({
6
+ rules: XeCSSDefaultRules.concat([
7
+ [/^fw-(\d+)$/, ([ weight]) => {
8
+ return { 'font-weight': weight };
9
+ }]
10
+ ]).map(item => {
11
+ return [
12
+ new RegExp(`${ item[0].toString().replace(/^\/\^(.+)\/$/, '^$1') }`),
13
+ (args: any[]) => {
14
+ return item[1](args.slice(1));
15
+ }
16
+ ];
17
+ }),
18
+ presets: [presetAttributify({})],
19
+ shortcuts: {
20
+ 'gray-border': 'bor-s-solid bor-w-1 bor-c-c5c5c5-20'
21
+ }
22
+ })