@robot-admin/naive-ui-components 0.4.4 → 0.5.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 (158) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/C_ActionBar-jZPsiXtT.css.map +1 -0
  3. package/dist/C_ActionBar.css +205 -0
  4. package/dist/{C_AntV-DGjscTWa.css.map → C_AntV-A3NXx_sF.css.map} +1 -1
  5. package/dist/C_AntV-D2Zp2qQF.css.map +1 -0
  6. package/dist/C_AntV.css +398 -0
  7. package/dist/C_AntV.js.map +1 -1
  8. package/dist/C_AntV2.js +1 -1
  9. package/dist/C_AntV2.js.map +1 -1
  10. package/dist/C_Barcode-Do1Ozsmh.css.map +1 -0
  11. package/dist/C_Barcode.css +39 -0
  12. package/dist/C_Captcha-CZmAETly.css.map +1 -0
  13. package/dist/C_Captcha.css +109 -0
  14. package/dist/C_Cascade-Dq0S5Jkm.css.map +1 -0
  15. package/dist/C_Cascade.css +10 -0
  16. package/dist/C_City-DNKv4MpH.css.map +1 -0
  17. package/dist/C_City.css +132 -0
  18. package/dist/C_Code-avZjAnHD.css.map +1 -0
  19. package/dist/C_Code.css +8 -0
  20. package/dist/C_CollapsePanel-BpofCDyl.css.map +1 -0
  21. package/dist/C_CollapsePanel.css +171 -0
  22. package/dist/C_Cron-DqHQ92LN.css.map +1 -0
  23. package/dist/C_Cron.css +307 -0
  24. package/dist/C_Draggable-r6nhx3yM.css.map +1 -0
  25. package/dist/C_Draggable.css +238 -0
  26. package/dist/C_Editor-D0_6UhIa.css.map +1 -0
  27. package/dist/C_Editor.css +52 -0
  28. package/dist/{C_FilePreview-B4XgTv-h.css.map → C_FilePreview-BVarVvnD.css.map} +1 -1
  29. package/dist/C_FilePreview-DHGlV4OR.css.map +1 -0
  30. package/dist/C_FilePreview.css +507 -0
  31. package/dist/C_FilePreview.js.map +1 -1
  32. package/dist/C_FilePreview2.js +1 -1
  33. package/dist/C_FilePreview2.js.map +1 -1
  34. package/dist/{C_Form-DLb9FtAb.css.map → C_Form-BciQUPpS.css.map} +1 -1
  35. package/dist/C_Form-CKHvXL3O.css.map +1 -0
  36. package/dist/C_Form.css +976 -0
  37. package/dist/C_Form.js.map +1 -1
  38. package/dist/C_Form2.js +1 -1
  39. package/dist/C_Form2.js.map +1 -1
  40. package/dist/{C_FormSearch-DlIEoh7X.css.map → C_FormSearch-Bmd2CmG6.css.map} +1 -1
  41. package/dist/C_FormSearch-DBNtnjaL.css.map +1 -0
  42. package/dist/C_FormSearch.css +177 -0
  43. package/dist/C_FormSearch.js.map +1 -1
  44. package/dist/C_FormSearch2.js +1 -1
  45. package/dist/C_FormSearch2.js.map +1 -1
  46. package/dist/C_FormulaEditor-3WG2vtQl.css.map +1 -0
  47. package/dist/C_FormulaEditor.css +502 -0
  48. package/dist/C_FullCalendar-1U4VlG7X.css.map +1 -0
  49. package/dist/C_FullCalendar-DLUdCtqf.css.map +1 -0
  50. package/dist/C_FullCalendar.css +7 -0
  51. package/dist/C_FullCalendar.js.map +1 -1
  52. package/dist/C_FullCalendar2.js +1 -1
  53. package/dist/C_FullCalendar2.js.map +1 -1
  54. package/dist/C_GlobalSearch-B6wK3m3k.css.map +1 -0
  55. package/dist/C_GlobalSearch.css +616 -0
  56. package/dist/C_Guide.js.map +1 -1
  57. package/dist/C_Guide2.js.map +1 -1
  58. package/dist/C_Icon.js.map +1 -1
  59. package/dist/C_Icon2.js.map +1 -1
  60. package/dist/C_ImageCropper-D3L2-J_J.css.map +1 -0
  61. package/dist/C_ImageCropper.css +129 -0
  62. package/dist/C_Language.js.map +1 -1
  63. package/dist/C_Language2.js.map +1 -1
  64. package/dist/C_Map-BCJmDnJT.css.map +1 -0
  65. package/dist/C_Map.css +29 -0
  66. package/dist/{C_Markdown-C2uiBVSW.css.map → C_Markdown-7iBnLDtL.css.map} +1 -1
  67. package/dist/C_Markdown-BbTvdFCl.css.map +1 -0
  68. package/dist/C_Markdown.css +112 -0
  69. package/dist/C_Markdown.js.map +1 -1
  70. package/dist/C_Markdown2.js +1 -1
  71. package/dist/C_Markdown2.js.map +1 -1
  72. package/dist/C_NotificationCenter-DT6fQ79O.css.map +1 -0
  73. package/dist/C_NotificationCenter.css +466 -0
  74. package/dist/C_QRCode-DMxSyogU.css.map +1 -0
  75. package/dist/C_QRCode.css +51 -0
  76. package/dist/C_Signature-B5fFz6RD.css.map +1 -0
  77. package/dist/C_Signature.css +79 -0
  78. package/dist/C_SplitPane-DuyzUhKB.css.map +1 -0
  79. package/dist/C_SplitPane.css +152 -0
  80. package/dist/C_Steps-DGwXxS2Y.css.map +1 -0
  81. package/dist/C_Steps.css +171 -0
  82. package/dist/{C_Table-C55H4kPr.css.map → C_Table-Dcam_tRs.css.map} +1 -1
  83. package/dist/C_Table-tbUx-R4H.css.map +1 -0
  84. package/dist/C_Table.css +527 -0
  85. package/dist/C_Table.js.map +1 -1
  86. package/dist/C_Table2.js +1 -1
  87. package/dist/C_Table2.js.map +1 -1
  88. package/dist/C_Theme.js.map +1 -1
  89. package/dist/C_Theme2.js.map +1 -1
  90. package/dist/C_Time-CKb_fwdm.css.map +1 -0
  91. package/dist/C_Time.css +23 -0
  92. package/dist/C_Tree-B-Le4hjQ.css.map +1 -0
  93. package/dist/C_Tree.css +142 -0
  94. package/dist/C_Upload-S30RmC9t.css.map +1 -0
  95. package/dist/C_Upload.css +251 -0
  96. package/dist/C_VideoPlayer-Cdgv4Zq0.css.map +1 -0
  97. package/dist/C_VideoPlayer.css +355 -0
  98. package/dist/C_VideoPlayer.d.ts +1 -1
  99. package/dist/C_VtableGantt-DB87-jdS.css.map +1 -0
  100. package/dist/C_VtableGantt.css +89 -0
  101. package/dist/C_WaterFall-C4HDqf-a.css.map +1 -0
  102. package/dist/C_WaterFall.css +73 -0
  103. package/dist/{C_WorkFlow-CSO86Cuc.css.map → C_WorkFlow-7F6op6qN.css.map} +1 -1
  104. package/dist/C_WorkFlow-Cy3HWA6A.css.map +1 -0
  105. package/dist/C_WorkFlow.css +1166 -0
  106. package/dist/C_WorkFlow.js.map +1 -1
  107. package/dist/C_WorkFlow2.js +1 -1
  108. package/dist/C_WorkFlow2.js.map +1 -1
  109. package/dist/chunk.js +1 -1
  110. package/dist/constants.d.ts +4 -4
  111. package/dist/constants2.d.ts +5 -5
  112. package/dist/constants3.d.ts +3 -3
  113. package/dist/constants4.d.ts +4 -4
  114. package/dist/constants5.d.ts +8 -3816
  115. package/dist/data.d.ts +1 -1
  116. package/dist/index.cjs.map +1 -1
  117. package/dist/index.d.ts +2 -1
  118. package/dist/index.js.map +1 -1
  119. package/dist/index.vue.d.ts +1 -1
  120. package/dist/index10.vue.d.ts +8 -8
  121. package/dist/index11.vue.d.ts +2 -2
  122. package/dist/index12.vue.d.ts +7 -7
  123. package/dist/index13.vue.d.ts +1 -1
  124. package/dist/index14.vue.d.ts +2 -2
  125. package/dist/index15.vue.d.ts +1 -1
  126. package/dist/index16.vue.d.ts +2 -2
  127. package/dist/index3.vue.d.ts +1 -1
  128. package/dist/index4.vue.d.ts +2 -2
  129. package/dist/index5.vue.d.ts +2 -2
  130. package/dist/index6.vue.d.ts +4 -4
  131. package/dist/index7.vue.d.ts +2 -2
  132. package/dist/index8.vue.d.ts +4 -4
  133. package/dist/index9.vue.d.ts +1 -1
  134. package/dist/resolver.cjs +1 -1
  135. package/dist/resolver.cjs.map +1 -1
  136. package/dist/resolver.d.cts +7 -0
  137. package/dist/resolver.d.ts +7 -0
  138. package/dist/resolver.js +1 -1
  139. package/dist/resolver.js.map +1 -1
  140. package/dist/style.css +481 -481
  141. package/dist/useCalendarEvents.d.ts +1 -1
  142. package/dist/useCollapsePanel.d.ts +1 -1
  143. package/dist/useCropperCore.d.ts +7 -7
  144. package/dist/useDraggableLayout.d.ts +2 -2
  145. package/dist/useDynamicFormState.d.ts +8 -8
  146. package/dist/useEdgeInteraction.d.ts +4 -7293
  147. package/dist/useFullscreen.d.ts +2 -2
  148. package/dist/useInfiniteScroll.d.ts +3 -3
  149. package/dist/useModalEdit.d.ts +41 -17
  150. package/dist/useQRCode.d.ts +3 -3
  151. package/dist/useSearchState.d.ts +3 -3
  152. package/dist/useSignatureHistory.d.ts +3 -3
  153. package/dist/useSplitResize.d.ts +3 -3
  154. package/dist/useTimeSelection.d.ts +2 -2
  155. package/dist/useTreeOperations.d.ts +3 -3
  156. package/dist/useWorkflowValidation.d.ts +5 -5
  157. package/package.json +32 -32
  158. package/dist/C_FullCalendar-BULCIlVK.css.map +0 -1
package/dist/data.d.ts CHANGED
@@ -23,8 +23,8 @@ declare const __VLS_export: vue.DefineComponent<__VLS_Props, {}, {}, {}, {}, vue
23
23
  onMarkerClick?: ((marker: MapMarker$1, event: any) => any) | undefined;
24
24
  }>, {
25
25
  height: string;
26
- zoom: number;
27
26
  center: [number, number];
27
+ zoom: number;
28
28
  markers: MapMarker$1[];
29
29
  amapKey: string;
30
30
  mapType: "osm" | "amap";
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","names":["hljs","javascript","typescript","json","xml","css","bash","yaml","markdown","java","csharp","go","python","C_Code","C_Icon","C_Upload","C_Barcode","C_Captcha","C_Cascade","C_Guide","C_Progress","C_Steps","C_ActionBar","C_Theme","C_Language","C_Date","C_Editor","C_Markdown","C_Map","C_City","C_VtableGantt","C_Signature","C_SplitPane","C_CollapsePanel","C_Time","C_FormSearch","C_Tree","C_QRCode","C_ImageCropper","C_Draggable","C_WaterFall","C_FullCalendar","C_NotificationCenter","C_Cron","C_FormulaEditor","C_AntV","C_VideoPlayer","C_FilePreview","C_WorkFlow","C_Form","C_Table","C_GlobalSearch"],"sources":["../src/plugins/highlight.ts","../src/index.ts"],"sourcesContent":["\r\n\r\nimport type { App } from 'vue'\r\nimport type { HLJSApi, LanguageFn } from 'highlight.js'\r\nimport hljs from 'highlight.js/lib/core'\r\n\r\n// 导入默认主题样式\r\nimport 'highlight.js/styles/github.css'\r\n\r\n// 默认支持的语言包(常用语言预加载)\r\nimport javascript from 'highlight.js/lib/languages/javascript'\r\nimport typescript from 'highlight.js/lib/languages/typescript'\r\nimport json from 'highlight.js/lib/languages/json'\r\nimport xml from 'highlight.js/lib/languages/xml' // HTML\r\nimport css from 'highlight.js/lib/languages/css'\r\nimport bash from 'highlight.js/lib/languages/bash'\r\nimport yaml from 'highlight.js/lib/languages/yaml'\r\nimport markdown from 'highlight.js/lib/languages/markdown'\r\nimport java from 'highlight.js/lib/languages/java'\r\nimport csharp from 'highlight.js/lib/languages/csharp'\r\nimport go from 'highlight.js/lib/languages/go'\r\nimport python from 'highlight.js/lib/languages/python'\r\n\r\n// 可选语言包映射(懒加载)\r\nconst OPTIONAL_LANGUAGES: Record<\r\n string,\r\n () => Promise<{ default: LanguageFn }>\r\n> = {\r\n cpp: () => import('highlight.js/lib/languages/cpp'),\r\n c: () => import('highlight.js/lib/languages/c'),\r\n php: () => import('highlight.js/lib/languages/php'),\r\n ruby: () => import('highlight.js/lib/languages/ruby'),\r\n rust: () => import('highlight.js/lib/languages/rust'),\r\n swift: () => import('highlight.js/lib/languages/swift'),\r\n kotlin: () => import('highlight.js/lib/languages/kotlin'),\r\n scss: () => import('highlight.js/lib/languages/scss'),\r\n less: () => import('highlight.js/lib/languages/less'),\r\n sql: () => import('highlight.js/lib/languages/sql'),\r\n dockerfile: () => import('highlight.js/lib/languages/dockerfile'),\r\n powershell: () => import('highlight.js/lib/languages/powershell'),\r\n}\r\n\r\n// 插件配置选项\r\nexport interface HighlightPluginOptions {\r\n autoDetect?: boolean\r\n extraLanguages?: string[]\r\n}\r\n\r\n// 状态管理\r\nconst loadedLanguages = new Set<string>()\r\nconst hlJsInstance: HLJSApi = hljs\r\n\r\n/**\r\n * * @description 注册语言包到 highlight.js 实例\r\n * ? @param name - 语言名称\r\n * ? @param languageFn - 语言定义函数\r\n * ! @return void\r\n */\r\nfunction registerLanguage(name: string, languageFn: LanguageFn): void {\r\n hlJsInstance.registerLanguage(name, languageFn)\r\n loadedLanguages.add(name)\r\n}\r\n\r\n/**\r\n * * @description 初始化核心配置,注册默认语言包\r\n * ? @param options - 插件配置选项\r\n * ! @return void\r\n */\r\nfunction initializeCore(options: HighlightPluginOptions): void {\r\n // 注册默认语言包\r\n const defaultLanguages = [\r\n ['javascript', javascript],\r\n ['typescript', typescript],\r\n ['json', json],\r\n ['html', xml],\r\n ['xml', xml],\r\n ['css', css],\r\n ['bash', bash],\r\n ['shell', bash],\r\n ['yaml', yaml],\r\n ['yml', yaml],\r\n ['markdown', markdown],\r\n ['java', java],\r\n ['csharp', csharp],\r\n ['go', go],\r\n ['python', python],\r\n ] as const\r\n\r\n defaultLanguages.forEach(([name, langFn]) => {\r\n registerLanguage(name, langFn)\r\n })\r\n\r\n // 配置 highlight.js\r\n hlJsInstance.configure({\r\n ignoreUnescapedHTML: true,\r\n languages: options.autoDetect ? undefined : [],\r\n })\r\n\r\n // 预加载额外语言\r\n if (options.extraLanguages?.length) {\r\n loadLanguages(options.extraLanguages)\r\n }\r\n}\r\n\r\n/**\r\n * * @description 批量加载多个语言包\r\n * ? @param languages - 要加载的语言名称数组\r\n * ! @return Promise<string[]> 成功加载的语言名称数组\r\n */\r\nasync function loadLanguages(languages: string[]): Promise<string[]> {\r\n const loadPromises = languages.map(lang => loadLanguage(lang))\r\n const results = await Promise.allSettled(loadPromises)\r\n\r\n return results\r\n .map((result, index) =>\r\n result.status === 'fulfilled' ? languages[index] : null\r\n )\r\n .filter(Boolean) as string[]\r\n}\r\n\r\n/**\r\n * * @description 动态加载单个语言包\r\n * ? @param language - 要加载的语言名称\r\n * ! @return Promise<boolean> 是否加载成功\r\n */\r\nasync function loadLanguage(language: string): Promise<boolean> {\r\n if (loadedLanguages.has(language)) {\r\n return true\r\n }\r\n\r\n const loader = OPTIONAL_LANGUAGES[language.toLowerCase()]\r\n if (!loader) {\r\n console.warn(`[HighlightPlugin] Language '${language}' not supported`)\r\n return false\r\n }\r\n\r\n try {\r\n const languageModule = await loader()\r\n registerLanguage(language, languageModule.default)\r\n console.log(`[HighlightPlugin] Language '${language}' loaded successfully`)\r\n return true\r\n } catch (error) {\r\n console.error(\r\n `[HighlightPlugin] Failed to load language '${language}':`,\r\n error\r\n )\r\n return false\r\n }\r\n}\r\n\r\n/**\r\n * * @description 获取 highlight 功能的 API 接口\r\n * ! @return highlight API 对象,包含所有可用方法\r\n */\r\nexport const useHighlight = () => {\r\n return {\r\n // 核心方法\r\n getHljs: () => hlJsInstance,\r\n\r\n // 语言管理\r\n loadLanguage: (language: string) => loadLanguage(language),\r\n loadLanguages: (languages: string[]) => loadLanguages(languages),\r\n getLoadedLanguages: () => Array.from(loadedLanguages),\r\n }\r\n}\r\n\r\n/**\r\n * * @description 安装 highlight.js 插件到 Vue 应用\r\n * ? @param app - Vue 应用实例\r\n * ? @param options - 插件配置选项\r\n * ! @return void\r\n */\r\nexport function setupHighlight(app: App, options: HighlightPluginOptions = {}) {\r\n const pluginOptions: HighlightPluginOptions = {\r\n autoDetect: false,\r\n extraLanguages: [],\r\n ...options,\r\n }\r\n\r\n // 初始化核心配置\r\n initializeCore(pluginOptions)\r\n\r\n // 挂载到全局\r\n if (typeof window !== 'undefined') {\r\n window.hljs = hlJsInstance\r\n }\r\n\r\n // 提供给 Vue 应用\r\n const highlightAPI = useHighlight()\r\n app.provide('highlightManager', highlightAPI)\r\n app.config.globalProperties.$highlight = highlightAPI\r\n\r\n console.log('[HighlightPlugin] 🎨 highlight.js plugin installed successfully')\r\n}\r\n\r\n// 导出默认配置\r\nexport const defaultHighlightOptions: HighlightPluginOptions = {\r\n autoDetect: false,\r\n extraLanguages: [],\r\n}\r\n\r\n// 类型声明\r\ndeclare global {\r\n interface Window {\r\n hljs: HLJSApi\r\n }\r\n}\r\n","import type { App, Component } from \"vue\";\n\n// ====== 全局样式由 sass CLI 编译到 dist/style.css,不再通过 JS 导入 ======\n\n// ====== 组件导入(仅用于 install 全量注册) ======\nimport { C_Code } from \"./components/C_Code\";\nimport { C_Icon } from \"./components/C_Icon\";\nimport { C_Upload } from \"./components/C_Upload\";\nimport { C_Barcode } from \"./components/C_Barcode\";\nimport { C_Captcha } from \"./components/C_Captcha\";\nimport { C_Cascade } from \"./components/C_Cascade\";\nimport { C_Guide } from \"./components/C_Guide\";\nimport { C_Progress } from \"./components/C_Progress\";\nimport { C_Steps } from \"./components/C_Steps\";\nimport { C_ActionBar } from \"./components/C_ActionBar\";\nimport { C_Theme } from \"./components/C_Theme\";\nimport { C_Language } from \"./components/C_Language\";\nimport { C_Date } from \"./components/C_Date\";\nimport { C_Editor } from \"./components/C_Editor\";\nimport { C_Markdown } from \"./components/C_Markdown\";\nimport { C_Map } from \"./components/C_Map\";\nimport { C_City } from \"./components/C_City\";\nimport { C_VtableGantt } from \"./components/C_VtableGantt\";\nimport { C_Signature } from \"./components/C_Signature\";\nimport { C_SplitPane } from \"./components/C_SplitPane\";\nimport { C_CollapsePanel } from \"./components/C_CollapsePanel\";\nimport { C_Time } from \"./components/C_Time\";\nimport { C_FormSearch } from \"./components/C_FormSearch\";\nimport { C_Tree } from \"./components/C_Tree\";\nimport { C_QRCode } from \"./components/C_QRCode\";\nimport { C_ImageCropper } from \"./components/C_ImageCropper\";\nimport { C_Draggable } from \"./components/C_Draggable\";\nimport { C_WaterFall } from \"./components/C_WaterFall\";\nimport { C_FullCalendar } from \"./components/C_FullCalendar\";\nimport { C_NotificationCenter } from \"./components/C_NotificationCenter\";\nimport { C_Cron } from \"./components/C_Cron\";\nimport { C_FormulaEditor } from \"./components/C_FormulaEditor\";\nimport { C_AntV } from \"./components/C_AntV\";\nimport { C_VideoPlayer } from \"./components/C_VideoPlayer\";\nimport { C_FilePreview } from \"./components/C_FilePreview\";\nimport { C_WorkFlow } from \"./components/C_WorkFlow\";\nimport { C_Form } from \"./components/C_Form\";\nimport { C_Table } from \"./components/C_Table\";\nimport { C_GlobalSearch } from './components/C_GlobalSearch'\n\n// ====== 插件 ======\nimport { setupHighlight, useHighlight } from \"./plugins/highlight\";\n\n// ====== 安装选项 ======\nexport interface ComponentLibOptions {\n highlight?: import(\"./plugins/highlight\").HighlightPluginOptions;\n}\n\n// ====== 组件列表(全量注册使用) ======\nconst components: Component[] = [\n C_Code,\n C_Icon,\n C_Upload,\n C_Barcode,\n C_Captcha,\n C_Cascade,\n C_Guide,\n C_Progress,\n C_Steps,\n C_ActionBar,\n C_Theme,\n C_Language,\n C_Date,\n C_Editor,\n C_Markdown,\n C_Map,\n C_City,\n C_VtableGantt,\n C_Signature,\n C_SplitPane,\n C_CollapsePanel,\n C_Time,\n C_FormSearch,\n C_Tree,\n C_QRCode,\n C_ImageCropper,\n C_Draggable,\n C_WaterFall,\n C_FullCalendar,\n C_NotificationCenter,\n C_Cron,\n C_FormulaEditor,\n C_AntV,\n C_VideoPlayer,\n C_FilePreview,\n C_WorkFlow,\n C_Form,\n C_Table,\n C_GlobalSearch,\n]\n\n// ====== Barrel Re-exports:所有组件 + composables + types + constants ======\nexport * from \"./components/C_Code\";\nexport * from \"./components/C_Icon\";\nexport * from \"./components/C_Upload\";\nexport * from \"./components/C_Barcode\";\nexport * from \"./components/C_Captcha\";\nexport * from \"./components/C_Cascade\";\nexport * from \"./components/C_Guide\";\nexport * from \"./components/C_Progress\";\nexport * from \"./components/C_Steps\";\nexport * from \"./components/C_ActionBar\";\nexport * from \"./components/C_Theme\";\nexport * from \"./components/C_Language\";\nexport * from \"./components/C_Date\";\nexport * from \"./components/C_Editor\";\nexport * from \"./components/C_Markdown\";\nexport * from \"./components/C_Map\";\nexport * from \"./components/C_City\";\nexport * from \"./components/C_VtableGantt\";\nexport * from \"./components/C_Signature\";\nexport * from \"./components/C_SplitPane\";\nexport * from \"./components/C_CollapsePanel\";\nexport * from \"./components/C_Time\";\nexport * from \"./components/C_FormSearch\";\nexport * from \"./components/C_Tree\";\nexport * from \"./components/C_QRCode\";\nexport * from \"./components/C_ImageCropper\";\nexport * from \"./components/C_Draggable\";\nexport * from \"./components/C_WaterFall\";\nexport * from \"./components/C_FullCalendar\";\nexport * from \"./components/C_NotificationCenter\";\nexport * from \"./components/C_Cron\";\nexport * from \"./components/C_FormulaEditor\";\nexport * from \"./components/C_AntV\";\nexport * from \"./components/C_VideoPlayer\";\nexport * from \"./components/C_FilePreview\";\nexport * from \"./components/C_WorkFlow\";\nexport * from \"./components/C_Form\";\nexport * from \"./components/C_Table\";\nexport * from './components/C_GlobalSearch'\n\n// ====== 工具函数(不属于任何组件的公共工具) ======\nexport { setItem, getItem, removeItem, removeAllItem } from \"./utils/storage\";\n\n// ====== 插件导出 ======\nexport { setupHighlight, useHighlight };\nexport type { HighlightPluginOptions } from \"./plugins/highlight\";\n\n// ====== 全量安装 ======\nconst install = (app: App, options: ComponentLibOptions = {}) => {\n components.forEach((component) => {\n const name =\n (component as any).__name ||\n (component as any).name ||\n \"UnknownComponent\";\n app.component(name, component);\n });\n\n if (options.highlight !== undefined) {\n setupHighlight(app, options.highlight);\n }\n};\n\nexport default {\n install,\n} satisfies { install: (app: App, options?: ComponentLibOptions) => void }\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.cjs","names":["hljs","javascript","typescript","json","xml","css","bash","yaml","markdown","java","csharp","go","python","C_Code","C_Icon","C_Upload","C_Barcode","C_Captcha","C_Cascade","C_Guide","C_Progress","C_Steps","C_ActionBar","C_Theme","C_Language","C_Date","C_Editor","C_Markdown","C_Map","C_City","C_VtableGantt","C_Signature","C_SplitPane","C_CollapsePanel","C_Time","C_FormSearch","C_Tree","C_QRCode","C_ImageCropper","C_Draggable","C_WaterFall","C_FullCalendar","C_NotificationCenter","C_Cron","C_FormulaEditor","C_AntV","C_VideoPlayer","C_FilePreview","C_WorkFlow","C_Form","C_Table","C_GlobalSearch"],"sources":["../src/plugins/highlight.ts","../src/index.ts"],"sourcesContent":["\r\n\r\nimport type { App } from 'vue'\r\nimport type { HLJSApi, LanguageFn } from 'highlight.js'\r\nimport hljs from 'highlight.js/lib/core'\r\n\r\n// 导入默认主题样式\r\nimport 'highlight.js/styles/github.css'\r\n\r\n// 默认支持的语言包(常用语言预加载)\r\nimport javascript from 'highlight.js/lib/languages/javascript'\r\nimport typescript from 'highlight.js/lib/languages/typescript'\r\nimport json from 'highlight.js/lib/languages/json'\r\nimport xml from 'highlight.js/lib/languages/xml' // HTML\r\nimport css from 'highlight.js/lib/languages/css'\r\nimport bash from 'highlight.js/lib/languages/bash'\r\nimport yaml from 'highlight.js/lib/languages/yaml'\r\nimport markdown from 'highlight.js/lib/languages/markdown'\r\nimport java from 'highlight.js/lib/languages/java'\r\nimport csharp from 'highlight.js/lib/languages/csharp'\r\nimport go from 'highlight.js/lib/languages/go'\r\nimport python from 'highlight.js/lib/languages/python'\r\n\r\n// 可选语言包映射(懒加载)\r\nconst OPTIONAL_LANGUAGES: Record<\r\n string,\r\n () => Promise<{ default: LanguageFn }>\r\n> = {\r\n cpp: () => import('highlight.js/lib/languages/cpp'),\r\n c: () => import('highlight.js/lib/languages/c'),\r\n php: () => import('highlight.js/lib/languages/php'),\r\n ruby: () => import('highlight.js/lib/languages/ruby'),\r\n rust: () => import('highlight.js/lib/languages/rust'),\r\n swift: () => import('highlight.js/lib/languages/swift'),\r\n kotlin: () => import('highlight.js/lib/languages/kotlin'),\r\n scss: () => import('highlight.js/lib/languages/scss'),\r\n less: () => import('highlight.js/lib/languages/less'),\r\n sql: () => import('highlight.js/lib/languages/sql'),\r\n dockerfile: () => import('highlight.js/lib/languages/dockerfile'),\r\n powershell: () => import('highlight.js/lib/languages/powershell'),\r\n}\r\n\r\n// 插件配置选项\r\nexport interface HighlightPluginOptions {\r\n autoDetect?: boolean\r\n extraLanguages?: string[]\r\n}\r\n\r\n// 状态管理\r\nconst loadedLanguages = new Set<string>()\r\nconst hlJsInstance: HLJSApi = hljs\r\n\r\n/**\r\n * * @description 注册语言包到 highlight.js 实例\r\n * ? @param name - 语言名称\r\n * ? @param languageFn - 语言定义函数\r\n * ! @return void\r\n */\r\nfunction registerLanguage(name: string, languageFn: LanguageFn): void {\r\n hlJsInstance.registerLanguage(name, languageFn)\r\n loadedLanguages.add(name)\r\n}\r\n\r\n/**\r\n * * @description 初始化核心配置,注册默认语言包\r\n * ? @param options - 插件配置选项\r\n * ! @return void\r\n */\r\nfunction initializeCore(options: HighlightPluginOptions): void {\r\n // 注册默认语言包\r\n const defaultLanguages = [\r\n ['javascript', javascript],\r\n ['typescript', typescript],\r\n ['json', json],\r\n ['html', xml],\r\n ['xml', xml],\r\n ['css', css],\r\n ['bash', bash],\r\n ['shell', bash],\r\n ['yaml', yaml],\r\n ['yml', yaml],\r\n ['markdown', markdown],\r\n ['java', java],\r\n ['csharp', csharp],\r\n ['go', go],\r\n ['python', python],\r\n ] as const\r\n\r\n defaultLanguages.forEach(([name, langFn]) => {\r\n registerLanguage(name, langFn)\r\n })\r\n\r\n // 配置 highlight.js\r\n hlJsInstance.configure({\r\n ignoreUnescapedHTML: true,\r\n languages: options.autoDetect ? undefined : [],\r\n })\r\n\r\n // 预加载额外语言\r\n if (options.extraLanguages?.length) {\r\n loadLanguages(options.extraLanguages)\r\n }\r\n}\r\n\r\n/**\r\n * * @description 批量加载多个语言包\r\n * ? @param languages - 要加载的语言名称数组\r\n * ! @return Promise<string[]> 成功加载的语言名称数组\r\n */\r\nasync function loadLanguages(languages: string[]): Promise<string[]> {\r\n const loadPromises = languages.map(lang => loadLanguage(lang))\r\n const results = await Promise.allSettled(loadPromises)\r\n\r\n return results\r\n .map((result, index) =>\r\n result.status === 'fulfilled' ? languages[index] : null\r\n )\r\n .filter(Boolean) as string[]\r\n}\r\n\r\n/**\r\n * * @description 动态加载单个语言包\r\n * ? @param language - 要加载的语言名称\r\n * ! @return Promise<boolean> 是否加载成功\r\n */\r\nasync function loadLanguage(language: string): Promise<boolean> {\r\n if (loadedLanguages.has(language)) {\r\n return true\r\n }\r\n\r\n const loader = OPTIONAL_LANGUAGES[language.toLowerCase()]\r\n if (!loader) {\r\n console.warn(`[HighlightPlugin] Language '${language}' not supported`)\r\n return false\r\n }\r\n\r\n try {\r\n const languageModule = await loader()\r\n registerLanguage(language, languageModule.default)\r\n console.log(`[HighlightPlugin] Language '${language}' loaded successfully`)\r\n return true\r\n } catch (error) {\r\n console.error(\r\n `[HighlightPlugin] Failed to load language '${language}':`,\r\n error\r\n )\r\n return false\r\n }\r\n}\r\n\r\n/**\r\n * * @description 获取 highlight 功能的 API 接口\r\n * ! @return highlight API 对象,包含所有可用方法\r\n */\r\nexport const useHighlight = () => {\r\n return {\r\n // 核心方法\r\n getHljs: () => hlJsInstance,\r\n\r\n // 语言管理\r\n loadLanguage: (language: string) => loadLanguage(language),\r\n loadLanguages: (languages: string[]) => loadLanguages(languages),\r\n getLoadedLanguages: () => Array.from(loadedLanguages),\r\n }\r\n}\r\n\r\n/**\r\n * * @description 安装 highlight.js 插件到 Vue 应用\r\n * ? @param app - Vue 应用实例\r\n * ? @param options - 插件配置选项\r\n * ! @return void\r\n */\r\nexport function setupHighlight(app: App, options: HighlightPluginOptions = {}) {\r\n const pluginOptions: HighlightPluginOptions = {\r\n autoDetect: false,\r\n extraLanguages: [],\r\n ...options,\r\n }\r\n\r\n // 初始化核心配置\r\n initializeCore(pluginOptions)\r\n\r\n // 挂载到全局\r\n if (typeof window !== 'undefined') {\r\n window.hljs = hlJsInstance\r\n }\r\n\r\n // 提供给 Vue 应用\r\n const highlightAPI = useHighlight()\r\n app.provide('highlightManager', highlightAPI)\r\n app.config.globalProperties.$highlight = highlightAPI\r\n\r\n console.log('[HighlightPlugin] 🎨 highlight.js plugin installed successfully')\r\n}\r\n\r\n// 导出默认配置\r\nexport const defaultHighlightOptions: HighlightPluginOptions = {\r\n autoDetect: false,\r\n extraLanguages: [],\r\n}\r\n\r\n// 类型声明\r\ndeclare global {\r\n interface Window {\r\n hljs: HLJSApi\r\n }\r\n}\r\n","import type { App, Component } from 'vue'\r\n\r\n// ====== 全局样式由 sass CLI 编译到 dist/style.css,不再通过 JS 导入 ======\r\n\r\n// ====== 组件导入(仅用于 install 全量注册) ======\r\nimport { C_Code } from './components/C_Code'\r\nimport { C_Icon } from './components/C_Icon'\r\nimport { C_Upload } from './components/C_Upload'\r\nimport { C_Barcode } from './components/C_Barcode'\r\nimport { C_Captcha } from './components/C_Captcha'\r\nimport { C_Cascade } from './components/C_Cascade'\r\nimport { C_Guide } from './components/C_Guide'\r\nimport { C_Progress } from './components/C_Progress'\r\nimport { C_Steps } from './components/C_Steps'\r\nimport { C_ActionBar } from './components/C_ActionBar'\r\nimport { C_Theme } from './components/C_Theme'\r\nimport { C_Language } from './components/C_Language'\r\nimport { C_Date } from './components/C_Date'\r\nimport { C_Editor } from './components/C_Editor'\r\nimport { C_Markdown } from './components/C_Markdown'\r\nimport { C_Map } from './components/C_Map'\r\nimport { C_City } from './components/C_City'\r\nimport { C_VtableGantt } from './components/C_VtableGantt'\r\nimport { C_Signature } from './components/C_Signature'\r\nimport { C_SplitPane } from './components/C_SplitPane'\r\nimport { C_CollapsePanel } from './components/C_CollapsePanel'\r\nimport { C_Time } from './components/C_Time'\r\nimport { C_FormSearch } from './components/C_FormSearch'\r\nimport { C_Tree } from './components/C_Tree'\r\nimport { C_QRCode } from './components/C_QRCode'\r\nimport { C_ImageCropper } from './components/C_ImageCropper'\r\nimport { C_Draggable } from './components/C_Draggable'\r\nimport { C_WaterFall } from './components/C_WaterFall'\r\nimport { C_FullCalendar } from './components/C_FullCalendar'\r\nimport { C_NotificationCenter } from './components/C_NotificationCenter'\r\nimport { C_Cron } from './components/C_Cron'\r\nimport { C_FormulaEditor } from './components/C_FormulaEditor'\r\nimport { C_AntV } from './components/C_AntV'\r\nimport { C_VideoPlayer } from './components/C_VideoPlayer'\r\nimport { C_FilePreview } from './components/C_FilePreview'\r\nimport { C_WorkFlow } from './components/C_WorkFlow'\r\nimport { C_Form } from './components/C_Form'\r\nimport { C_Table } from './components/C_Table'\r\nimport { C_GlobalSearch } from './components/C_GlobalSearch'\r\n\r\n// ====== 插件 ======\r\nimport { setupHighlight, useHighlight } from './plugins/highlight'\r\n\r\n// ====== 安装选项 ======\r\nexport interface ComponentLibOptions {\r\n highlight?: import('./plugins/highlight').HighlightPluginOptions\r\n}\r\n\r\n// ====== 组件列表(全量注册使用) ======\r\nconst components: Component[] = [\r\n C_Code,\r\n C_Icon,\r\n C_Upload,\r\n C_Barcode,\r\n C_Captcha,\r\n C_Cascade,\r\n C_Guide,\r\n C_Progress,\r\n C_Steps,\r\n C_ActionBar,\r\n C_Theme,\r\n C_Language,\r\n C_Date,\r\n C_Editor,\r\n C_Markdown,\r\n C_Map,\r\n C_City,\r\n C_VtableGantt,\r\n C_Signature,\r\n C_SplitPane,\r\n C_CollapsePanel,\r\n C_Time,\r\n C_FormSearch,\r\n C_Tree,\r\n C_QRCode,\r\n C_ImageCropper,\r\n C_Draggable,\r\n C_WaterFall,\r\n C_FullCalendar,\r\n C_NotificationCenter,\r\n C_Cron,\r\n C_FormulaEditor,\r\n C_AntV,\r\n C_VideoPlayer,\r\n C_FilePreview,\r\n C_WorkFlow,\r\n C_Form,\r\n C_Table,\r\n C_GlobalSearch,\r\n]\r\n\r\n// ====== Barrel Re-exports:所有组件 + composables + types + constants ======\r\nexport * from './components/C_Code'\r\nexport * from './components/C_Icon'\r\nexport * from './components/C_Upload'\r\nexport * from './components/C_Barcode'\r\nexport * from './components/C_Captcha'\r\nexport * from './components/C_Cascade'\r\nexport * from './components/C_Guide'\r\nexport * from './components/C_Progress'\r\nexport * from './components/C_Steps'\r\nexport * from './components/C_ActionBar'\r\nexport * from './components/C_Theme'\r\nexport * from './components/C_Language'\r\nexport * from './components/C_Date'\r\nexport * from './components/C_Editor'\r\nexport * from './components/C_Markdown'\r\nexport * from './components/C_Map'\r\nexport * from './components/C_City'\r\nexport * from './components/C_VtableGantt'\r\nexport * from './components/C_Signature'\r\nexport * from './components/C_SplitPane'\r\nexport * from './components/C_CollapsePanel'\r\nexport * from './components/C_Time'\r\nexport * from './components/C_FormSearch'\r\nexport * from './components/C_Tree'\r\nexport * from './components/C_QRCode'\r\nexport * from './components/C_ImageCropper'\r\nexport * from './components/C_Draggable'\r\nexport * from './components/C_WaterFall'\r\nexport * from './components/C_FullCalendar'\r\nexport * from './components/C_NotificationCenter'\r\nexport * from './components/C_Cron'\r\nexport * from './components/C_FormulaEditor'\r\nexport * from './components/C_AntV'\r\nexport * from './components/C_VideoPlayer'\r\nexport * from './components/C_FilePreview'\r\nexport * from './components/C_WorkFlow'\r\nexport * from './components/C_Form'\r\nexport * from './components/C_Table'\r\nexport * from './components/C_GlobalSearch'\r\n\r\n// ====== 工具函数(不属于任何组件的公共工具) ======\r\nexport { setItem, getItem, removeItem, removeAllItem } from './utils/storage'\r\n\r\n// ====== 插件导出 ======\r\nexport { setupHighlight, useHighlight }\r\nexport type { HighlightPluginOptions } from './plugins/highlight'\r\n\r\n// ====== 全量安装 ======\r\nconst install = (app: App, options: ComponentLibOptions = {}) => {\r\n components.forEach(component => {\r\n const name =\r\n (component as any).__name || (component as any).name || 'UnknownComponent'\r\n app.component(name, component)\r\n })\r\n\r\n if (options.highlight !== undefined) {\r\n setupHighlight(app, options.highlight)\r\n }\r\n}\r\n\r\nexport default {\r\n install,\r\n} satisfies { install: (app: App, options?: ComponentLibOptions) => void }\r\n"],"mappings":"yhEAwBA,MAAM,GAGF,CACF,QAAW,OAAO,kCAClB,MAAS,OAAO,gCAChB,QAAW,OAAO,kCAClB,SAAY,OAAO,mCACnB,SAAY,OAAO,mCACnB,UAAa,OAAO,oCACpB,WAAc,OAAO,qCACrB,SAAY,OAAO,mCACnB,SAAY,OAAO,mCACnB,QAAW,OAAO,kCAClB,eAAkB,OAAO,yCACzB,eAAkB,OAAO,yCAC1B,CASK,EAAkB,IAAI,IACtB,EAAwBA,EAAAA,QAQ9B,SAAS,GAAiB,EAAc,EAA8B,CACpE,EAAa,iBAAiB,EAAM,EAAW,CAC/C,EAAgB,IAAI,EAAK,CAQ3B,SAAS,GAAe,EAAuC,CAEpC,CACvB,CAAC,aAAcC,EAAAA,QAAW,CAC1B,CAAC,aAAcC,EAAAA,QAAW,CAC1B,CAAC,OAAQC,EAAAA,QAAK,CACd,CAAC,OAAQC,EAAAA,QAAI,CACb,CAAC,MAAOA,EAAAA,QAAI,CACZ,CAAC,MAAOC,EAAAA,QAAI,CACZ,CAAC,OAAQC,EAAAA,QAAK,CACd,CAAC,QAASA,EAAAA,QAAK,CACf,CAAC,OAAQC,EAAAA,QAAK,CACd,CAAC,MAAOA,EAAAA,QAAK,CACb,CAAC,WAAYC,EAAAA,QAAS,CACtB,CAAC,OAAQC,EAAAA,QAAK,CACd,CAAC,SAAUC,EAAAA,QAAO,CAClB,CAAC,KAAMC,EAAAA,QAAG,CACV,CAAC,SAAUC,EAAAA,QAAO,CACnB,CAEgB,SAAS,CAAC,EAAM,KAAY,CAC3C,GAAiB,EAAM,EAAO,EAC9B,CAGF,EAAa,UAAU,CACrB,oBAAqB,GACrB,UAAW,EAAQ,WAAa,IAAA,GAAY,EAAE,CAC/C,CAAC,CAGE,EAAQ,gBAAgB,QAC1B,GAAc,EAAQ,eAAe,CASzC,eAAe,GAAc,EAAwC,CACnE,IAAM,EAAe,EAAU,IAAI,GAAQ,EAAa,EAAK,CAAC,CAG9D,OAFgB,MAAM,QAAQ,WAAW,EAAa,EAGnD,KAAK,EAAQ,IACZ,EAAO,SAAW,YAAc,EAAU,GAAS,KACpD,CACA,OAAO,QAAQ,CAQpB,eAAe,EAAa,EAAoC,CAC9D,GAAI,EAAgB,IAAI,EAAS,CAC/B,MAAO,GAGT,IAAM,EAAS,GAAmB,EAAS,aAAa,EACxD,GAAI,CAAC,EAEH,OADA,QAAQ,KAAK,+BAA+B,EAAS,iBAAiB,CAC/D,GAGT,GAAI,CAIF,OAFA,GAAiB,GADM,MAAM,GAAQ,EACK,QAAQ,CAClD,QAAQ,IAAI,+BAA+B,EAAS,uBAAuB,CACpE,SACA,EAAO,CAKd,OAJA,QAAQ,MACN,8CAA8C,EAAS,IACvD,EACD,CACM,IAQX,MAAa,QACJ,CAEL,YAAe,EAGf,aAAe,GAAqB,EAAa,EAAS,CAC1D,cAAgB,GAAwB,GAAc,EAAU,CAChE,uBAA0B,MAAM,KAAK,EAAgB,CACtD,EASH,SAAgB,GAAe,EAAU,EAAkC,EAAE,CAAE,CAQ7E,GAP8C,CAC5C,WAAY,GACZ,eAAgB,EAAE,CAClB,GAAG,EACJ,CAG4B,CAGzB,OAAO,OAAW,MACpB,OAAO,KAAO,GAIhB,IAAM,EAAe,IAAc,CACnC,EAAI,QAAQ,mBAAoB,EAAa,CAC7C,EAAI,OAAO,iBAAiB,WAAa,EAEzC,QAAQ,IAAI,kEAAkE,CC1IhF,MAAM,GAA0B,CAC9BC,EAAAA,EACAC,EAAAA,EACAC,EAAAA,EACAC,GAAAA,EACAC,EAAAA,EACAC,EAAAA,EACAC,EAAAA,EACAC,EAAAA,EACAC,EAAAA,EACAC,EAAAA,EACAC,EAAAA,EACAC,EAAAA,EACAC,EAAAA,EACAC,EAAAA,EACAC,GAAAA,EACAC,EAAAA,EACAC,GAAAA,EACAC,EAAAA,EACAC,EAAAA,EACAC,EAAAA,EACAC,EAAAA,EACAC,EAAAA,EACAC,EAAAA,EACAC,EAAAA,EACAC,EAAAA,EACAC,EAAAA,EACAC,EAAAA,EACAC,EAAAA,EACAC,EAAAA,EACAC,EAAAA,EACAC,EAAAA,EACAC,EAAAA,EACAC,EAAAA,EACAC,EAAAA,EACAC,EAAAA,EACAC,EAAAA,EACAC,EAAAA,EACAC,EAAAA,EACAC,EAAAA,EACD,CA+DD,IAAA,GAAe,CACb,SAbe,EAAU,EAA+B,EAAE,GAAK,CAC/D,GAAW,QAAQ,GAAa,CAC9B,IAAM,EACH,EAAkB,QAAW,EAAkB,MAAQ,mBAC1D,EAAI,UAAU,EAAM,EAAU,EAC9B,CAEE,EAAQ,YAAc,IAAA,IACxB,GAAe,EAAK,EAAQ,UAAU,EAMzC"}
package/dist/index.d.ts CHANGED
@@ -1,6 +1,7 @@
1
1
  import { a as ActionDropdownItem, c as TableActionsEmits, i as ActionButtonType, l as TableActionsProps, n as ActionBarConfig, o as ActionGroupAlign, r as ActionButtonSize, s as ActionItem, t as _default } from "./index.vue.js";
2
2
  import "./C_ActionBar.js";
3
3
  import { A as SelectionConfig, C as KeyboardConfig, D as MouseWheelConfig, E as MinimapConfig, F as UMLClass, I as UMLDiagramData, L as UMLMethod, M as ThemeConfig, N as ToolbarAction, O as Position, P as UMLAttribute, R as UMLRelation, S as HistoryConfig, T as MenuItem, _ as ExportFormat, a as BPMNDiagramData, b as GraphExportOptions, c as ClipboardConfig, d as DiagramData, f as DiagramType, g as ERTable, h as ERRelation, i as _default$1, j as SnapshotConfig, k as ScrollerConfig, l as ConnectionConfig, m as ERField, n as useGraphExport, o as BPMNFlow, p as ERDiagramData, r as useGraphBase, s as BPMNNode, t as useEdgeInteraction, u as DiagramConfig, v as GraphConfig, w as LayoutOptions, x as GridConfig, y as GraphEvents, z as ValidationResult } from "./useEdgeInteraction.js";
4
+ import "./C_AntV.js";
4
5
  import { t as _default$2 } from "./index2.vue.js";
5
6
  import { t as _default$3 } from "./index3.vue.js";
6
7
  import { n as _default$4, t as CascadeItem } from "./index4.vue.js";
@@ -38,7 +39,7 @@ import { n as _default$31, t as ThemeMode } from "./index15.vue.js";
38
39
  import { a as TimeMode, i as TimeExpose, n as _default$32, o as TimeProps, r as TimeEmits, t as useTimeSelection } from "./useTimeSelection.js";
39
40
  import { a as ButtonType, c as StatusConfig, d as TreeExpose, f as TreeMode, h as TreeProps, i as ActionConfig, l as StatusType, m as TreeOption, n as presetConfigs$1, o as DropInfo, p as TreeNodeData, r as _default$33, s as IconConfig, t as useTreeOperations, u as TreeEmits } from "./useTreeOperations.js";
40
41
  import { _ as UploadFileStatus, a as useFileHash, b as UploadedChunksQueryFn, c as _default$34, d as InstantCheckFn, f as MergeChunksFn, g as UploadFileItem, h as UploadExpose, i as useChunkUpload, l as ChunkProgress, m as UploadEmits, n as getFileIcon, o as useDragDrop, p as UploadChunk, r as useUploadQueue, s as useUploadCore, t as formatFileSize, u as CustomUploadRequest, v as UploadProps, y as UploadRequestOptions } from "./constants4.js";
41
- import { A as ProgressData, B as VideoPlayerProps, C as AnalyticsReporter, D as PlaybackRate, E as Chapter, F as QuizType, H as VideoSourceType, I as SubtitleTrack, L as ThumbnailConfig, M as QualityDefinition, N as QualityLevel, O as PlayerInstance, P as QuizOption, R as VideoPlayerEmits, S as AnalyticsEventType, T as Bookmark, U as IDefinition, V as VideoQuiz, W as IPlayerOptions, _ as useBookmarks, a as KEYBOARD_SHORTCUTS, b as _default$35, c as SEEK_STEP, d as STORAGE_PREFIX, f as VOLUME_STEP, g as useChapters, h as useSubtitle, i as DEFAULT_VOLUME, j as ProgressReporter, k as PlayerState, l as SOURCE_TYPE_MAP, m as useProgressTracker, n as DEFAULT_PLAYBACK_RATE, o as PROGRESS_THROTTLE_INTERVAL, p as WATERMARK_DEFAULT_STYLE, r as DEFAULT_PLAYBACK_RATES, s as QUALITY_LABEL_MAP, t as DEFAULT_HEARTBEAT_INTERVAL, u as STORAGE_KEYS, v as usePlaybackControl, w as AntiCheatConfig, x as AnalyticsEvent, y as usePlayerCore, z as VideoPlayerExpose } from "./constants5.js";
42
+ import { A as PlayerInstance, B as VideoPlayerEmits, C as AnalyticsReporter, D as IDefinition, E as Chapter, F as QualityLevel, H as VideoPlayerProps, I as QuizOption, L as QuizType, M as ProgressData, N as ProgressReporter, O as IPlayerOptions, P as QualityDefinition, R as SubtitleTrack, S as AnalyticsEventType, T as Bookmark, U as VideoQuiz, V as VideoPlayerExpose, W as VideoSourceType, _ as useBookmarks, a as KEYBOARD_SHORTCUTS, b as _default$35, c as SEEK_STEP, d as STORAGE_PREFIX, f as VOLUME_STEP, g as useChapters, h as useSubtitle, i as DEFAULT_VOLUME, j as PlayerState, k as PlaybackRate, l as SOURCE_TYPE_MAP, m as useProgressTracker, n as DEFAULT_PLAYBACK_RATE, o as PROGRESS_THROTTLE_INTERVAL, p as WATERMARK_DEFAULT_STYLE, r as DEFAULT_PLAYBACK_RATES, s as QUALITY_LABEL_MAP, t as DEFAULT_HEARTBEAT_INTERVAL, u as STORAGE_KEYS, v as usePlaybackControl, w as AntiCheatConfig, x as AnalyticsEvent, y as usePlayerCore, z as ThumbnailConfig } from "./constants5.js";
42
43
  import "./C_VideoPlayer.js";
43
44
  import { a as presetConfigs, i as GanttTask, n as GanttOptions, r as GanttPreset, t as _default$36 } from "./index16.vue.js";
44
45
  import { _ as WaterFallLayoutItem, a as DEFAULT_BREAKPOINTS, c as INFINITE_SCROLL_THRESHOLD, d as InfiniteScrollStatus, f as WaterFallBreakpoint, g as WaterFallItem, h as WaterFallExpose, i as DEFAULT_ANIMATION_DURATION, l as SKELETON_HEIGHT_RANGE, m as WaterFallEmits, n as useWaterFallLayout, o as DEFAULT_GAP, p as WaterFallColumn, r as useResponsiveColumns, s as DEFAULT_SKELETON_COUNT, t as useInfiniteScroll, u as _default$37, v as WaterFallProps } from "./useInfiniteScroll.js";
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["C_Code","C_Icon","C_Upload","C_Barcode","C_Captcha","C_Cascade","C_Guide","C_Progress","C_Steps","C_ActionBar","C_Theme","C_Language","C_Date","C_Editor","C_Markdown","C_Map","C_City","C_VtableGantt","C_Signature","C_SplitPane","C_CollapsePanel","C_Time","C_FormSearch","C_Tree","C_QRCode","C_ImageCropper","C_Draggable","C_WaterFall","C_FullCalendar","C_NotificationCenter","C_Cron","C_FormulaEditor","C_AntV","C_VideoPlayer","C_FilePreview","C_WorkFlow","C_Form","C_Table","C_GlobalSearch"],"sources":["../src/plugins/highlight.ts","../src/index.ts"],"sourcesContent":["\r\n\r\nimport type { App } from 'vue'\r\nimport type { HLJSApi, LanguageFn } from 'highlight.js'\r\nimport hljs from 'highlight.js/lib/core'\r\n\r\n// 导入默认主题样式\r\nimport 'highlight.js/styles/github.css'\r\n\r\n// 默认支持的语言包(常用语言预加载)\r\nimport javascript from 'highlight.js/lib/languages/javascript'\r\nimport typescript from 'highlight.js/lib/languages/typescript'\r\nimport json from 'highlight.js/lib/languages/json'\r\nimport xml from 'highlight.js/lib/languages/xml' // HTML\r\nimport css from 'highlight.js/lib/languages/css'\r\nimport bash from 'highlight.js/lib/languages/bash'\r\nimport yaml from 'highlight.js/lib/languages/yaml'\r\nimport markdown from 'highlight.js/lib/languages/markdown'\r\nimport java from 'highlight.js/lib/languages/java'\r\nimport csharp from 'highlight.js/lib/languages/csharp'\r\nimport go from 'highlight.js/lib/languages/go'\r\nimport python from 'highlight.js/lib/languages/python'\r\n\r\n// 可选语言包映射(懒加载)\r\nconst OPTIONAL_LANGUAGES: Record<\r\n string,\r\n () => Promise<{ default: LanguageFn }>\r\n> = {\r\n cpp: () => import('highlight.js/lib/languages/cpp'),\r\n c: () => import('highlight.js/lib/languages/c'),\r\n php: () => import('highlight.js/lib/languages/php'),\r\n ruby: () => import('highlight.js/lib/languages/ruby'),\r\n rust: () => import('highlight.js/lib/languages/rust'),\r\n swift: () => import('highlight.js/lib/languages/swift'),\r\n kotlin: () => import('highlight.js/lib/languages/kotlin'),\r\n scss: () => import('highlight.js/lib/languages/scss'),\r\n less: () => import('highlight.js/lib/languages/less'),\r\n sql: () => import('highlight.js/lib/languages/sql'),\r\n dockerfile: () => import('highlight.js/lib/languages/dockerfile'),\r\n powershell: () => import('highlight.js/lib/languages/powershell'),\r\n}\r\n\r\n// 插件配置选项\r\nexport interface HighlightPluginOptions {\r\n autoDetect?: boolean\r\n extraLanguages?: string[]\r\n}\r\n\r\n// 状态管理\r\nconst loadedLanguages = new Set<string>()\r\nconst hlJsInstance: HLJSApi = hljs\r\n\r\n/**\r\n * * @description 注册语言包到 highlight.js 实例\r\n * ? @param name - 语言名称\r\n * ? @param languageFn - 语言定义函数\r\n * ! @return void\r\n */\r\nfunction registerLanguage(name: string, languageFn: LanguageFn): void {\r\n hlJsInstance.registerLanguage(name, languageFn)\r\n loadedLanguages.add(name)\r\n}\r\n\r\n/**\r\n * * @description 初始化核心配置,注册默认语言包\r\n * ? @param options - 插件配置选项\r\n * ! @return void\r\n */\r\nfunction initializeCore(options: HighlightPluginOptions): void {\r\n // 注册默认语言包\r\n const defaultLanguages = [\r\n ['javascript', javascript],\r\n ['typescript', typescript],\r\n ['json', json],\r\n ['html', xml],\r\n ['xml', xml],\r\n ['css', css],\r\n ['bash', bash],\r\n ['shell', bash],\r\n ['yaml', yaml],\r\n ['yml', yaml],\r\n ['markdown', markdown],\r\n ['java', java],\r\n ['csharp', csharp],\r\n ['go', go],\r\n ['python', python],\r\n ] as const\r\n\r\n defaultLanguages.forEach(([name, langFn]) => {\r\n registerLanguage(name, langFn)\r\n })\r\n\r\n // 配置 highlight.js\r\n hlJsInstance.configure({\r\n ignoreUnescapedHTML: true,\r\n languages: options.autoDetect ? undefined : [],\r\n })\r\n\r\n // 预加载额外语言\r\n if (options.extraLanguages?.length) {\r\n loadLanguages(options.extraLanguages)\r\n }\r\n}\r\n\r\n/**\r\n * * @description 批量加载多个语言包\r\n * ? @param languages - 要加载的语言名称数组\r\n * ! @return Promise<string[]> 成功加载的语言名称数组\r\n */\r\nasync function loadLanguages(languages: string[]): Promise<string[]> {\r\n const loadPromises = languages.map(lang => loadLanguage(lang))\r\n const results = await Promise.allSettled(loadPromises)\r\n\r\n return results\r\n .map((result, index) =>\r\n result.status === 'fulfilled' ? languages[index] : null\r\n )\r\n .filter(Boolean) as string[]\r\n}\r\n\r\n/**\r\n * * @description 动态加载单个语言包\r\n * ? @param language - 要加载的语言名称\r\n * ! @return Promise<boolean> 是否加载成功\r\n */\r\nasync function loadLanguage(language: string): Promise<boolean> {\r\n if (loadedLanguages.has(language)) {\r\n return true\r\n }\r\n\r\n const loader = OPTIONAL_LANGUAGES[language.toLowerCase()]\r\n if (!loader) {\r\n console.warn(`[HighlightPlugin] Language '${language}' not supported`)\r\n return false\r\n }\r\n\r\n try {\r\n const languageModule = await loader()\r\n registerLanguage(language, languageModule.default)\r\n console.log(`[HighlightPlugin] Language '${language}' loaded successfully`)\r\n return true\r\n } catch (error) {\r\n console.error(\r\n `[HighlightPlugin] Failed to load language '${language}':`,\r\n error\r\n )\r\n return false\r\n }\r\n}\r\n\r\n/**\r\n * * @description 获取 highlight 功能的 API 接口\r\n * ! @return highlight API 对象,包含所有可用方法\r\n */\r\nexport const useHighlight = () => {\r\n return {\r\n // 核心方法\r\n getHljs: () => hlJsInstance,\r\n\r\n // 语言管理\r\n loadLanguage: (language: string) => loadLanguage(language),\r\n loadLanguages: (languages: string[]) => loadLanguages(languages),\r\n getLoadedLanguages: () => Array.from(loadedLanguages),\r\n }\r\n}\r\n\r\n/**\r\n * * @description 安装 highlight.js 插件到 Vue 应用\r\n * ? @param app - Vue 应用实例\r\n * ? @param options - 插件配置选项\r\n * ! @return void\r\n */\r\nexport function setupHighlight(app: App, options: HighlightPluginOptions = {}) {\r\n const pluginOptions: HighlightPluginOptions = {\r\n autoDetect: false,\r\n extraLanguages: [],\r\n ...options,\r\n }\r\n\r\n // 初始化核心配置\r\n initializeCore(pluginOptions)\r\n\r\n // 挂载到全局\r\n if (typeof window !== 'undefined') {\r\n window.hljs = hlJsInstance\r\n }\r\n\r\n // 提供给 Vue 应用\r\n const highlightAPI = useHighlight()\r\n app.provide('highlightManager', highlightAPI)\r\n app.config.globalProperties.$highlight = highlightAPI\r\n\r\n console.log('[HighlightPlugin] 🎨 highlight.js plugin installed successfully')\r\n}\r\n\r\n// 导出默认配置\r\nexport const defaultHighlightOptions: HighlightPluginOptions = {\r\n autoDetect: false,\r\n extraLanguages: [],\r\n}\r\n\r\n// 类型声明\r\ndeclare global {\r\n interface Window {\r\n hljs: HLJSApi\r\n }\r\n}\r\n","import type { App, Component } from \"vue\";\n\n// ====== 全局样式由 sass CLI 编译到 dist/style.css,不再通过 JS 导入 ======\n\n// ====== 组件导入(仅用于 install 全量注册) ======\nimport { C_Code } from \"./components/C_Code\";\nimport { C_Icon } from \"./components/C_Icon\";\nimport { C_Upload } from \"./components/C_Upload\";\nimport { C_Barcode } from \"./components/C_Barcode\";\nimport { C_Captcha } from \"./components/C_Captcha\";\nimport { C_Cascade } from \"./components/C_Cascade\";\nimport { C_Guide } from \"./components/C_Guide\";\nimport { C_Progress } from \"./components/C_Progress\";\nimport { C_Steps } from \"./components/C_Steps\";\nimport { C_ActionBar } from \"./components/C_ActionBar\";\nimport { C_Theme } from \"./components/C_Theme\";\nimport { C_Language } from \"./components/C_Language\";\nimport { C_Date } from \"./components/C_Date\";\nimport { C_Editor } from \"./components/C_Editor\";\nimport { C_Markdown } from \"./components/C_Markdown\";\nimport { C_Map } from \"./components/C_Map\";\nimport { C_City } from \"./components/C_City\";\nimport { C_VtableGantt } from \"./components/C_VtableGantt\";\nimport { C_Signature } from \"./components/C_Signature\";\nimport { C_SplitPane } from \"./components/C_SplitPane\";\nimport { C_CollapsePanel } from \"./components/C_CollapsePanel\";\nimport { C_Time } from \"./components/C_Time\";\nimport { C_FormSearch } from \"./components/C_FormSearch\";\nimport { C_Tree } from \"./components/C_Tree\";\nimport { C_QRCode } from \"./components/C_QRCode\";\nimport { C_ImageCropper } from \"./components/C_ImageCropper\";\nimport { C_Draggable } from \"./components/C_Draggable\";\nimport { C_WaterFall } from \"./components/C_WaterFall\";\nimport { C_FullCalendar } from \"./components/C_FullCalendar\";\nimport { C_NotificationCenter } from \"./components/C_NotificationCenter\";\nimport { C_Cron } from \"./components/C_Cron\";\nimport { C_FormulaEditor } from \"./components/C_FormulaEditor\";\nimport { C_AntV } from \"./components/C_AntV\";\nimport { C_VideoPlayer } from \"./components/C_VideoPlayer\";\nimport { C_FilePreview } from \"./components/C_FilePreview\";\nimport { C_WorkFlow } from \"./components/C_WorkFlow\";\nimport { C_Form } from \"./components/C_Form\";\nimport { C_Table } from \"./components/C_Table\";\nimport { C_GlobalSearch } from './components/C_GlobalSearch'\n\n// ====== 插件 ======\nimport { setupHighlight, useHighlight } from \"./plugins/highlight\";\n\n// ====== 安装选项 ======\nexport interface ComponentLibOptions {\n highlight?: import(\"./plugins/highlight\").HighlightPluginOptions;\n}\n\n// ====== 组件列表(全量注册使用) ======\nconst components: Component[] = [\n C_Code,\n C_Icon,\n C_Upload,\n C_Barcode,\n C_Captcha,\n C_Cascade,\n C_Guide,\n C_Progress,\n C_Steps,\n C_ActionBar,\n C_Theme,\n C_Language,\n C_Date,\n C_Editor,\n C_Markdown,\n C_Map,\n C_City,\n C_VtableGantt,\n C_Signature,\n C_SplitPane,\n C_CollapsePanel,\n C_Time,\n C_FormSearch,\n C_Tree,\n C_QRCode,\n C_ImageCropper,\n C_Draggable,\n C_WaterFall,\n C_FullCalendar,\n C_NotificationCenter,\n C_Cron,\n C_FormulaEditor,\n C_AntV,\n C_VideoPlayer,\n C_FilePreview,\n C_WorkFlow,\n C_Form,\n C_Table,\n C_GlobalSearch,\n]\n\n// ====== Barrel Re-exports:所有组件 + composables + types + constants ======\nexport * from \"./components/C_Code\";\nexport * from \"./components/C_Icon\";\nexport * from \"./components/C_Upload\";\nexport * from \"./components/C_Barcode\";\nexport * from \"./components/C_Captcha\";\nexport * from \"./components/C_Cascade\";\nexport * from \"./components/C_Guide\";\nexport * from \"./components/C_Progress\";\nexport * from \"./components/C_Steps\";\nexport * from \"./components/C_ActionBar\";\nexport * from \"./components/C_Theme\";\nexport * from \"./components/C_Language\";\nexport * from \"./components/C_Date\";\nexport * from \"./components/C_Editor\";\nexport * from \"./components/C_Markdown\";\nexport * from \"./components/C_Map\";\nexport * from \"./components/C_City\";\nexport * from \"./components/C_VtableGantt\";\nexport * from \"./components/C_Signature\";\nexport * from \"./components/C_SplitPane\";\nexport * from \"./components/C_CollapsePanel\";\nexport * from \"./components/C_Time\";\nexport * from \"./components/C_FormSearch\";\nexport * from \"./components/C_Tree\";\nexport * from \"./components/C_QRCode\";\nexport * from \"./components/C_ImageCropper\";\nexport * from \"./components/C_Draggable\";\nexport * from \"./components/C_WaterFall\";\nexport * from \"./components/C_FullCalendar\";\nexport * from \"./components/C_NotificationCenter\";\nexport * from \"./components/C_Cron\";\nexport * from \"./components/C_FormulaEditor\";\nexport * from \"./components/C_AntV\";\nexport * from \"./components/C_VideoPlayer\";\nexport * from \"./components/C_FilePreview\";\nexport * from \"./components/C_WorkFlow\";\nexport * from \"./components/C_Form\";\nexport * from \"./components/C_Table\";\nexport * from './components/C_GlobalSearch'\n\n// ====== 工具函数(不属于任何组件的公共工具) ======\nexport { setItem, getItem, removeItem, removeAllItem } from \"./utils/storage\";\n\n// ====== 插件导出 ======\nexport { setupHighlight, useHighlight };\nexport type { HighlightPluginOptions } from \"./plugins/highlight\";\n\n// ====== 全量安装 ======\nconst install = (app: App, options: ComponentLibOptions = {}) => {\n components.forEach((component) => {\n const name =\n (component as any).__name ||\n (component as any).name ||\n \"UnknownComponent\";\n app.component(name, component);\n });\n\n if (options.highlight !== undefined) {\n setupHighlight(app, options.highlight);\n }\n};\n\nexport default {\n install,\n} satisfies { install: (app: App, options?: ComponentLibOptions) => void }\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["C_Code","C_Icon","C_Upload","C_Barcode","C_Captcha","C_Cascade","C_Guide","C_Progress","C_Steps","C_ActionBar","C_Theme","C_Language","C_Date","C_Editor","C_Markdown","C_Map","C_City","C_VtableGantt","C_Signature","C_SplitPane","C_CollapsePanel","C_Time","C_FormSearch","C_Tree","C_QRCode","C_ImageCropper","C_Draggable","C_WaterFall","C_FullCalendar","C_NotificationCenter","C_Cron","C_FormulaEditor","C_AntV","C_VideoPlayer","C_FilePreview","C_WorkFlow","C_Form","C_Table","C_GlobalSearch"],"sources":["../src/plugins/highlight.ts","../src/index.ts"],"sourcesContent":["\r\n\r\nimport type { App } from 'vue'\r\nimport type { HLJSApi, LanguageFn } from 'highlight.js'\r\nimport hljs from 'highlight.js/lib/core'\r\n\r\n// 导入默认主题样式\r\nimport 'highlight.js/styles/github.css'\r\n\r\n// 默认支持的语言包(常用语言预加载)\r\nimport javascript from 'highlight.js/lib/languages/javascript'\r\nimport typescript from 'highlight.js/lib/languages/typescript'\r\nimport json from 'highlight.js/lib/languages/json'\r\nimport xml from 'highlight.js/lib/languages/xml' // HTML\r\nimport css from 'highlight.js/lib/languages/css'\r\nimport bash from 'highlight.js/lib/languages/bash'\r\nimport yaml from 'highlight.js/lib/languages/yaml'\r\nimport markdown from 'highlight.js/lib/languages/markdown'\r\nimport java from 'highlight.js/lib/languages/java'\r\nimport csharp from 'highlight.js/lib/languages/csharp'\r\nimport go from 'highlight.js/lib/languages/go'\r\nimport python from 'highlight.js/lib/languages/python'\r\n\r\n// 可选语言包映射(懒加载)\r\nconst OPTIONAL_LANGUAGES: Record<\r\n string,\r\n () => Promise<{ default: LanguageFn }>\r\n> = {\r\n cpp: () => import('highlight.js/lib/languages/cpp'),\r\n c: () => import('highlight.js/lib/languages/c'),\r\n php: () => import('highlight.js/lib/languages/php'),\r\n ruby: () => import('highlight.js/lib/languages/ruby'),\r\n rust: () => import('highlight.js/lib/languages/rust'),\r\n swift: () => import('highlight.js/lib/languages/swift'),\r\n kotlin: () => import('highlight.js/lib/languages/kotlin'),\r\n scss: () => import('highlight.js/lib/languages/scss'),\r\n less: () => import('highlight.js/lib/languages/less'),\r\n sql: () => import('highlight.js/lib/languages/sql'),\r\n dockerfile: () => import('highlight.js/lib/languages/dockerfile'),\r\n powershell: () => import('highlight.js/lib/languages/powershell'),\r\n}\r\n\r\n// 插件配置选项\r\nexport interface HighlightPluginOptions {\r\n autoDetect?: boolean\r\n extraLanguages?: string[]\r\n}\r\n\r\n// 状态管理\r\nconst loadedLanguages = new Set<string>()\r\nconst hlJsInstance: HLJSApi = hljs\r\n\r\n/**\r\n * * @description 注册语言包到 highlight.js 实例\r\n * ? @param name - 语言名称\r\n * ? @param languageFn - 语言定义函数\r\n * ! @return void\r\n */\r\nfunction registerLanguage(name: string, languageFn: LanguageFn): void {\r\n hlJsInstance.registerLanguage(name, languageFn)\r\n loadedLanguages.add(name)\r\n}\r\n\r\n/**\r\n * * @description 初始化核心配置,注册默认语言包\r\n * ? @param options - 插件配置选项\r\n * ! @return void\r\n */\r\nfunction initializeCore(options: HighlightPluginOptions): void {\r\n // 注册默认语言包\r\n const defaultLanguages = [\r\n ['javascript', javascript],\r\n ['typescript', typescript],\r\n ['json', json],\r\n ['html', xml],\r\n ['xml', xml],\r\n ['css', css],\r\n ['bash', bash],\r\n ['shell', bash],\r\n ['yaml', yaml],\r\n ['yml', yaml],\r\n ['markdown', markdown],\r\n ['java', java],\r\n ['csharp', csharp],\r\n ['go', go],\r\n ['python', python],\r\n ] as const\r\n\r\n defaultLanguages.forEach(([name, langFn]) => {\r\n registerLanguage(name, langFn)\r\n })\r\n\r\n // 配置 highlight.js\r\n hlJsInstance.configure({\r\n ignoreUnescapedHTML: true,\r\n languages: options.autoDetect ? undefined : [],\r\n })\r\n\r\n // 预加载额外语言\r\n if (options.extraLanguages?.length) {\r\n loadLanguages(options.extraLanguages)\r\n }\r\n}\r\n\r\n/**\r\n * * @description 批量加载多个语言包\r\n * ? @param languages - 要加载的语言名称数组\r\n * ! @return Promise<string[]> 成功加载的语言名称数组\r\n */\r\nasync function loadLanguages(languages: string[]): Promise<string[]> {\r\n const loadPromises = languages.map(lang => loadLanguage(lang))\r\n const results = await Promise.allSettled(loadPromises)\r\n\r\n return results\r\n .map((result, index) =>\r\n result.status === 'fulfilled' ? languages[index] : null\r\n )\r\n .filter(Boolean) as string[]\r\n}\r\n\r\n/**\r\n * * @description 动态加载单个语言包\r\n * ? @param language - 要加载的语言名称\r\n * ! @return Promise<boolean> 是否加载成功\r\n */\r\nasync function loadLanguage(language: string): Promise<boolean> {\r\n if (loadedLanguages.has(language)) {\r\n return true\r\n }\r\n\r\n const loader = OPTIONAL_LANGUAGES[language.toLowerCase()]\r\n if (!loader) {\r\n console.warn(`[HighlightPlugin] Language '${language}' not supported`)\r\n return false\r\n }\r\n\r\n try {\r\n const languageModule = await loader()\r\n registerLanguage(language, languageModule.default)\r\n console.log(`[HighlightPlugin] Language '${language}' loaded successfully`)\r\n return true\r\n } catch (error) {\r\n console.error(\r\n `[HighlightPlugin] Failed to load language '${language}':`,\r\n error\r\n )\r\n return false\r\n }\r\n}\r\n\r\n/**\r\n * * @description 获取 highlight 功能的 API 接口\r\n * ! @return highlight API 对象,包含所有可用方法\r\n */\r\nexport const useHighlight = () => {\r\n return {\r\n // 核心方法\r\n getHljs: () => hlJsInstance,\r\n\r\n // 语言管理\r\n loadLanguage: (language: string) => loadLanguage(language),\r\n loadLanguages: (languages: string[]) => loadLanguages(languages),\r\n getLoadedLanguages: () => Array.from(loadedLanguages),\r\n }\r\n}\r\n\r\n/**\r\n * * @description 安装 highlight.js 插件到 Vue 应用\r\n * ? @param app - Vue 应用实例\r\n * ? @param options - 插件配置选项\r\n * ! @return void\r\n */\r\nexport function setupHighlight(app: App, options: HighlightPluginOptions = {}) {\r\n const pluginOptions: HighlightPluginOptions = {\r\n autoDetect: false,\r\n extraLanguages: [],\r\n ...options,\r\n }\r\n\r\n // 初始化核心配置\r\n initializeCore(pluginOptions)\r\n\r\n // 挂载到全局\r\n if (typeof window !== 'undefined') {\r\n window.hljs = hlJsInstance\r\n }\r\n\r\n // 提供给 Vue 应用\r\n const highlightAPI = useHighlight()\r\n app.provide('highlightManager', highlightAPI)\r\n app.config.globalProperties.$highlight = highlightAPI\r\n\r\n console.log('[HighlightPlugin] 🎨 highlight.js plugin installed successfully')\r\n}\r\n\r\n// 导出默认配置\r\nexport const defaultHighlightOptions: HighlightPluginOptions = {\r\n autoDetect: false,\r\n extraLanguages: [],\r\n}\r\n\r\n// 类型声明\r\ndeclare global {\r\n interface Window {\r\n hljs: HLJSApi\r\n }\r\n}\r\n","import type { App, Component } from 'vue'\r\n\r\n// ====== 全局样式由 sass CLI 编译到 dist/style.css,不再通过 JS 导入 ======\r\n\r\n// ====== 组件导入(仅用于 install 全量注册) ======\r\nimport { C_Code } from './components/C_Code'\r\nimport { C_Icon } from './components/C_Icon'\r\nimport { C_Upload } from './components/C_Upload'\r\nimport { C_Barcode } from './components/C_Barcode'\r\nimport { C_Captcha } from './components/C_Captcha'\r\nimport { C_Cascade } from './components/C_Cascade'\r\nimport { C_Guide } from './components/C_Guide'\r\nimport { C_Progress } from './components/C_Progress'\r\nimport { C_Steps } from './components/C_Steps'\r\nimport { C_ActionBar } from './components/C_ActionBar'\r\nimport { C_Theme } from './components/C_Theme'\r\nimport { C_Language } from './components/C_Language'\r\nimport { C_Date } from './components/C_Date'\r\nimport { C_Editor } from './components/C_Editor'\r\nimport { C_Markdown } from './components/C_Markdown'\r\nimport { C_Map } from './components/C_Map'\r\nimport { C_City } from './components/C_City'\r\nimport { C_VtableGantt } from './components/C_VtableGantt'\r\nimport { C_Signature } from './components/C_Signature'\r\nimport { C_SplitPane } from './components/C_SplitPane'\r\nimport { C_CollapsePanel } from './components/C_CollapsePanel'\r\nimport { C_Time } from './components/C_Time'\r\nimport { C_FormSearch } from './components/C_FormSearch'\r\nimport { C_Tree } from './components/C_Tree'\r\nimport { C_QRCode } from './components/C_QRCode'\r\nimport { C_ImageCropper } from './components/C_ImageCropper'\r\nimport { C_Draggable } from './components/C_Draggable'\r\nimport { C_WaterFall } from './components/C_WaterFall'\r\nimport { C_FullCalendar } from './components/C_FullCalendar'\r\nimport { C_NotificationCenter } from './components/C_NotificationCenter'\r\nimport { C_Cron } from './components/C_Cron'\r\nimport { C_FormulaEditor } from './components/C_FormulaEditor'\r\nimport { C_AntV } from './components/C_AntV'\r\nimport { C_VideoPlayer } from './components/C_VideoPlayer'\r\nimport { C_FilePreview } from './components/C_FilePreview'\r\nimport { C_WorkFlow } from './components/C_WorkFlow'\r\nimport { C_Form } from './components/C_Form'\r\nimport { C_Table } from './components/C_Table'\r\nimport { C_GlobalSearch } from './components/C_GlobalSearch'\r\n\r\n// ====== 插件 ======\r\nimport { setupHighlight, useHighlight } from './plugins/highlight'\r\n\r\n// ====== 安装选项 ======\r\nexport interface ComponentLibOptions {\r\n highlight?: import('./plugins/highlight').HighlightPluginOptions\r\n}\r\n\r\n// ====== 组件列表(全量注册使用) ======\r\nconst components: Component[] = [\r\n C_Code,\r\n C_Icon,\r\n C_Upload,\r\n C_Barcode,\r\n C_Captcha,\r\n C_Cascade,\r\n C_Guide,\r\n C_Progress,\r\n C_Steps,\r\n C_ActionBar,\r\n C_Theme,\r\n C_Language,\r\n C_Date,\r\n C_Editor,\r\n C_Markdown,\r\n C_Map,\r\n C_City,\r\n C_VtableGantt,\r\n C_Signature,\r\n C_SplitPane,\r\n C_CollapsePanel,\r\n C_Time,\r\n C_FormSearch,\r\n C_Tree,\r\n C_QRCode,\r\n C_ImageCropper,\r\n C_Draggable,\r\n C_WaterFall,\r\n C_FullCalendar,\r\n C_NotificationCenter,\r\n C_Cron,\r\n C_FormulaEditor,\r\n C_AntV,\r\n C_VideoPlayer,\r\n C_FilePreview,\r\n C_WorkFlow,\r\n C_Form,\r\n C_Table,\r\n C_GlobalSearch,\r\n]\r\n\r\n// ====== Barrel Re-exports:所有组件 + composables + types + constants ======\r\nexport * from './components/C_Code'\r\nexport * from './components/C_Icon'\r\nexport * from './components/C_Upload'\r\nexport * from './components/C_Barcode'\r\nexport * from './components/C_Captcha'\r\nexport * from './components/C_Cascade'\r\nexport * from './components/C_Guide'\r\nexport * from './components/C_Progress'\r\nexport * from './components/C_Steps'\r\nexport * from './components/C_ActionBar'\r\nexport * from './components/C_Theme'\r\nexport * from './components/C_Language'\r\nexport * from './components/C_Date'\r\nexport * from './components/C_Editor'\r\nexport * from './components/C_Markdown'\r\nexport * from './components/C_Map'\r\nexport * from './components/C_City'\r\nexport * from './components/C_VtableGantt'\r\nexport * from './components/C_Signature'\r\nexport * from './components/C_SplitPane'\r\nexport * from './components/C_CollapsePanel'\r\nexport * from './components/C_Time'\r\nexport * from './components/C_FormSearch'\r\nexport * from './components/C_Tree'\r\nexport * from './components/C_QRCode'\r\nexport * from './components/C_ImageCropper'\r\nexport * from './components/C_Draggable'\r\nexport * from './components/C_WaterFall'\r\nexport * from './components/C_FullCalendar'\r\nexport * from './components/C_NotificationCenter'\r\nexport * from './components/C_Cron'\r\nexport * from './components/C_FormulaEditor'\r\nexport * from './components/C_AntV'\r\nexport * from './components/C_VideoPlayer'\r\nexport * from './components/C_FilePreview'\r\nexport * from './components/C_WorkFlow'\r\nexport * from './components/C_Form'\r\nexport * from './components/C_Table'\r\nexport * from './components/C_GlobalSearch'\r\n\r\n// ====== 工具函数(不属于任何组件的公共工具) ======\r\nexport { setItem, getItem, removeItem, removeAllItem } from './utils/storage'\r\n\r\n// ====== 插件导出 ======\r\nexport { setupHighlight, useHighlight }\r\nexport type { HighlightPluginOptions } from './plugins/highlight'\r\n\r\n// ====== 全量安装 ======\r\nconst install = (app: App, options: ComponentLibOptions = {}) => {\r\n components.forEach(component => {\r\n const name =\r\n (component as any).__name || (component as any).name || 'UnknownComponent'\r\n app.component(name, component)\r\n })\r\n\r\n if (options.highlight !== undefined) {\r\n setupHighlight(app, options.highlight)\r\n }\r\n}\r\n\r\nexport default {\r\n install,\r\n} satisfies { install: (app: App, options?: ComponentLibOptions) => void }\r\n"],"mappings":"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"}
@@ -63,10 +63,10 @@ declare const __VLS_base: vue.DefineComponent<TableActionsProps, {}, {}, {}, {},
63
63
  "onDropdown-click"?: ((item: ActionDropdownItem, action: ActionItem) => any) | undefined;
64
64
  "onAction-click"?: ((action: ActionItem) => any) | undefined;
65
65
  }>, {
66
- config: ActionBarConfig;
67
66
  actions: ActionItem[];
68
67
  leftActions: ActionItem[];
69
68
  rightActions: ActionItem[];
69
+ config: ActionBarConfig;
70
70
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
71
71
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
72
72
  declare const _default: typeof __VLS_export;
@@ -5,7 +5,7 @@ interface IconProps {
5
5
  /** 图标名称/路径/组件实例 */
6
6
  name: string | any;
7
7
  /** 图标类型 */
8
- type?: "iconify" | "unocss" | "component" | "svg" | "image";
8
+ type?: 'iconify' | 'unocss' | 'component' | 'svg' | 'image';
9
9
  /** 图标颜色 */
10
10
  color?: string;
11
11
  /** 图标大小(px) */
@@ -31,7 +31,7 @@ interface IconProps {
31
31
  /** 旋转角度 */
32
32
  rotate?: number;
33
33
  /** 是否翻转 */
34
- flip?: "horizontal" | "vertical" | "both";
34
+ flip?: 'horizontal' | 'vertical' | 'both';
35
35
  /** 传递给组件的额外属性(仅type=component时使用) */
36
36
  componentProps?: Record<string, any>;
37
37
  }
@@ -41,29 +41,29 @@ declare const __VLS_export: vue.DefineComponent<IconProps, {
41
41
  errorMessage: Readonly<vue.Ref<string, string>>; /** DOM引用 */
42
42
  el: vue.Ref<HTMLElement | undefined, HTMLElement | undefined>;
43
43
  }, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
44
- click: (event: MouseEvent) => any;
45
44
  error: (type: string, error?: any) => any;
45
+ click: (event: MouseEvent) => any;
46
46
  load: () => any;
47
47
  }, string, vue.PublicProps, Readonly<IconProps> & Readonly<{
48
- onClick?: ((event: MouseEvent) => any) | undefined;
49
48
  onError?: ((type: string, error?: any) => any) | undefined;
49
+ onClick?: ((event: MouseEvent) => any) | undefined;
50
50
  onLoad?: (() => any) | undefined;
51
51
  }>, {
52
- clickable: boolean;
53
52
  type: "iconify" | "unocss" | "component" | "svg" | "image";
54
- title: string;
55
- size: number | string;
56
- rotate: number;
57
53
  name: string | any;
54
+ size: number | string;
55
+ title: string;
58
56
  color: string;
59
57
  loading: boolean;
60
58
  flip: "horizontal" | "vertical" | "both";
59
+ clickable: boolean;
61
60
  svgPath: string;
62
61
  viewBox: string;
63
62
  alt: string;
64
63
  fallbackIcon: string;
65
64
  ariaLabel: string;
66
65
  customClass: string;
66
+ rotate: number;
67
67
  componentProps: Record<string, any>;
68
68
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
69
69
  declare const _default: typeof __VLS_export;
@@ -11,11 +11,11 @@ type __VLS_Props = {
11
11
  options?: LanguageOption[];
12
12
  };
13
13
  declare const __VLS_export: vue.DefineComponent<__VLS_Props, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
14
- change: (key: string) => any;
15
14
  "update:modelValue": (key: string) => any;
15
+ change: (key: string) => any;
16
16
  }, string, vue.PublicProps, Readonly<__VLS_Props> & Readonly<{
17
- onChange?: ((key: string) => any) | undefined;
18
17
  "onUpdate:modelValue"?: ((key: string) => any) | undefined;
18
+ onChange?: ((key: string) => any) | undefined;
19
19
  }>, {
20
20
  modelValue: string;
21
21
  options: LanguageOption[];
@@ -12,14 +12,14 @@ interface Props {
12
12
  height?: string | number;
13
13
  disabled?: boolean;
14
14
  placeholder?: string;
15
- mode?: "edit" | "editable" | "preview";
15
+ mode?: 'edit' | 'editable' | 'preview';
16
16
  toolbar?: object;
17
17
  uploadImageConfig?: {
18
18
  accept?: string;
19
19
  multiple?: boolean;
20
20
  [key: string]: any;
21
21
  };
22
- tocNavPosition?: "left" | "right";
22
+ tocNavPosition?: 'left' | 'right';
23
23
  defaultFullscreen?: boolean;
24
24
  autofocus?: boolean;
25
25
  includeLevel?: number[];
@@ -38,8 +38,8 @@ declare const __VLS_export: vue.DefineComponent<Props, {
38
38
  insertText: (text: string) => void;
39
39
  wordCount: vue.ComputedRef<number>;
40
40
  }, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
41
- change: (text: string, html: string) => any;
42
41
  "update:modelValue": (value: string) => any;
42
+ change: (text: string, html: string) => any;
43
43
  save: (text: string, html: string) => any;
44
44
  "upload-image": (event: Event, insertImage: InsertImageFunction, files: FileList) => any;
45
45
  "fullscreen-change": (isFullscreen: boolean) => any;
@@ -48,8 +48,8 @@ declare const __VLS_export: vue.DefineComponent<Props, {
48
48
  "auto-save": (text: string) => any;
49
49
  "max-length-exceeded": (currentLength: number, maxLength: number) => any;
50
50
  }, string, vue.PublicProps, Readonly<Props> & Readonly<{
51
- onChange?: ((text: string, html: string) => any) | undefined;
52
51
  "onUpdate:modelValue"?: ((value: string) => any) | undefined;
52
+ onChange?: ((text: string, html: string) => any) | undefined;
53
53
  onSave?: ((text: string, html: string) => any) | undefined;
54
54
  "onUpload-image"?: ((event: Event, insertImage: InsertImageFunction, files: FileList) => any) | undefined;
55
55
  "onFullscreen-change"?: ((isFullscreen: boolean) => any) | undefined;
@@ -58,11 +58,11 @@ declare const __VLS_export: vue.DefineComponent<Props, {
58
58
  "onAuto-save"?: ((text: string) => any) | undefined;
59
59
  "onMax-length-exceeded"?: ((currentLength: number, maxLength: number) => any) | undefined;
60
60
  }>, {
61
- modelValue: string;
62
61
  height: string | number;
63
- disabled: boolean;
64
- placeholder: string;
62
+ modelValue: string;
65
63
  mode: "edit" | "editable" | "preview";
64
+ placeholder: string;
65
+ disabled: boolean;
66
66
  isDark: boolean;
67
67
  tocNavPosition: "left" | "right";
68
68
  defaultFullscreen: boolean;
@@ -35,12 +35,12 @@ type __VLS_Slots = {} & {
35
35
  };
36
36
  declare const __VLS_base: vue.DefineComponent<Props, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.PublicProps, Readonly<Props> & Readonly<{}>, {
37
37
  status: "default" | "success" | "error" | "warning" | "info";
38
- strokeWidth: number;
39
38
  time: number;
40
39
  percentage: number | number[];
41
40
  isAnimation: boolean;
42
41
  indicatorPlacement: "inside" | "outside";
43
42
  showIndicator: boolean;
43
+ strokeWidth: number;
44
44
  unit: string;
45
45
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
46
46
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
@@ -17,11 +17,11 @@ type __VLS_Props = {
17
17
  clickable?: boolean;
18
18
  };
19
19
  declare const __VLS_export: vue.DefineComponent<__VLS_Props, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
20
- "update:current": (args_0: number) => any;
21
20
  change: (args_0: number) => any;
21
+ "update:current": (args_0: number) => any;
22
22
  }, string, vue.PublicProps, Readonly<__VLS_Props> & Readonly<{
23
- "onUpdate:current"?: ((args_0: number) => any) | undefined;
24
23
  onChange?: ((args_0: number) => any) | undefined;
24
+ "onUpdate:current"?: ((args_0: number) => any) | undefined;
25
25
  }>, {
26
26
  current: number;
27
27
  direction: "horizontal" | "vertical";
@@ -1,7 +1,7 @@
1
1
  import * as vue from "vue";
2
2
 
3
3
  //#region src/components/C_Theme/index.vue.d.ts
4
- type ThemeMode = "system" | "light" | "dark";
4
+ type ThemeMode = 'system' | 'light' | 'dark';
5
5
  type __VLS_Props = {
6
6
  modelValue?: ThemeMode;
7
7
  };
@@ -647,12 +647,12 @@ declare const __VLS_export: vue.DefineComponent<Props, {
647
647
  onTaskClick?: ((task: GanttTask, event: Event) => any) | undefined;
648
648
  onTaskChange?: ((task: GanttTask, changes: any) => any) | undefined;
649
649
  }>, {
650
+ height: string | number;
651
+ data: GanttTask[];
650
652
  title: string;
651
653
  options: GanttOptions;
652
- height: string | number;
653
654
  showToolbar: boolean;
654
655
  theme: "light" | "dark";
655
- data: GanttTask[];
656
656
  preset: GanttPreset;
657
657
  showFullscreenButton: boolean;
658
658
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
@@ -34,8 +34,8 @@ declare const __VLS_export: vue.DefineComponent<CaptchaProps, {
34
34
  }) => any) | undefined;
35
35
  onFail?: ((error: string) => any) | undefined;
36
36
  }>, {
37
- disabled: boolean;
38
37
  theme: "light" | "dark";
38
+ disabled: boolean;
39
39
  triggerText: string;
40
40
  images: string[];
41
41
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
@@ -17,11 +17,11 @@ type __VLS_Props = {
17
17
  modelValue?: CascadeValue;
18
18
  };
19
19
  declare const __VLS_export: vue.DefineComponent<__VLS_Props, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
20
- change: (value: CascadeValue) => any;
21
20
  "update:modelValue": (value: CascadeValue) => any;
21
+ change: (value: CascadeValue) => any;
22
22
  }, string, vue.PublicProps, Readonly<__VLS_Props> & Readonly<{
23
- onChange?: ((value: CascadeValue) => any) | undefined;
24
23
  "onUpdate:modelValue"?: ((value: CascadeValue) => any) | undefined;
24
+ onChange?: ((value: CascadeValue) => any) | undefined;
25
25
  }>, {
26
26
  placeholders: string[];
27
27
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
@@ -14,11 +14,11 @@ type __VLS_Slots = {} & {
14
14
  trigger?: (props: typeof __VLS_9) => any;
15
15
  };
16
16
  declare const __VLS_base: vue.DefineComponent<Props, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {} & {
17
- change: (value: string) => any;
18
17
  "update:modelValue": (value: string) => any;
18
+ change: (value: string) => any;
19
19
  }, string, vue.PublicProps, Readonly<Props> & Readonly<{
20
- onChange?: ((value: string) => any) | undefined;
21
20
  "onUpdate:modelValue"?: ((value: string) => any) | undefined;
21
+ onChange?: ((value: string) => any) | undefined;
22
22
  }>, {
23
23
  placeholder: string;
24
24
  showLetters: boolean;
@@ -25,20 +25,20 @@ declare const __VLS_export: vue.DefineComponent<Props, {
25
25
  copyCode: typeof copyCode;
26
26
  toggleFullscreen: typeof toggleFullscreen;
27
27
  }, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
28
+ fullscreen: (isFullscreen: boolean) => any;
28
29
  copy: (code: string) => any;
29
30
  click: (event: MouseEvent) => any;
30
- fullscreen: (isFullscreen: boolean) => any;
31
31
  }, string, vue.PublicProps, Readonly<Props> & Readonly<{
32
+ onFullscreen?: ((isFullscreen: boolean) => any) | undefined;
32
33
  onCopy?: ((code: string) => any) | undefined;
33
34
  onClick?: ((event: MouseEvent) => any) | undefined;
34
- onFullscreen?: ((isFullscreen: boolean) => any) | undefined;
35
35
  }>, {
36
- code: string;
36
+ trim: boolean;
37
37
  language: string;
38
+ code: string;
38
39
  showHeader: boolean;
39
40
  showLineNumbers: boolean;
40
41
  wordWrap: boolean;
41
- trim: boolean;
42
42
  showFullscreen: boolean;
43
43
  autoLoadLanguage: boolean;
44
44
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
@@ -39,11 +39,11 @@ declare const __VLS_export: vue.DefineComponent<Props, {
39
39
  "onUpdate:dateTimeRange"?: ((value: DateRangeValue) => any) | undefined;
40
40
  "onUpdate:smartRange"?: ((value: DateRangeValue) => any) | undefined;
41
41
  }>, {
42
- disabled: boolean;
43
- placeholder: string;
44
42
  mode: DatePickerMode;
43
+ placeholder: string;
45
44
  startPlaceholder: string;
46
45
  endPlaceholder: string;
46
+ disabled: boolean;
47
47
  disabledBeforeToday: boolean;
48
48
  disabledAfterToday: boolean;
49
49
  valueFormat: string;
@@ -28,12 +28,12 @@ declare const __VLS_export: vue.DefineComponent<Props, {
28
28
  "onEditor-mounted"?: ((editor: any) => any) | undefined;
29
29
  "onEditor-change"?: ((html: string) => any) | undefined;
30
30
  }>, {
31
- modelValue: string;
32
31
  height: number;
33
- disabled: boolean;
34
- placeholder: string;
35
- theme: "light" | "dark";
32
+ modelValue: string;
36
33
  readonly: boolean;
34
+ theme: "light" | "dark";
35
+ placeholder: string;
36
+ disabled: boolean;
37
37
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
38
38
  declare const _default: typeof __VLS_export;
39
39
  //#endregion
@@ -7,7 +7,7 @@ interface GuideStep {
7
7
  popover: {
8
8
  title: string;
9
9
  description: string;
10
- side?: "top" | "right" | "bottom" | "left";
10
+ side?: 'top' | 'right' | 'bottom' | 'left';
11
11
  };
12
12
  }
13
13
  type __VLS_Props = {
package/dist/resolver.cjs CHANGED
@@ -1,2 +1,2 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=`@robot-admin/naive-ui-components`,t=`C_ActionBar.C_AntV.C_Barcode.C_Captcha.C_Cascade.C_City.C_Code.C_CollapsePanel.C_Cron.C_Date.C_Draggable.C_Editor.C_FilePreview.C_Form.C_FormSearch.C_FormulaEditor.C_FullCalendar.C_GlobalSearch.C_Guide.C_Icon.C_ImageCropper.C_Language.C_Map.C_Markdown.C_NotificationCenter.C_Progress.C_QRCode.C_Signature.C_SplitPane.C_Steps.C_Table.C_Theme.C_Time.C_Tree.C_Upload.C_VideoPlayer.C_VtableGantt.C_WaterFall.C_WorkFlow`.split(`.`),n=new Set(t);function r(t={}){let{importOnDemand:r=!1}=t;return{type:`component`,resolve:t=>{if(n.has(t))return{name:t,from:r?`${e}/${t}`:e}}}}exports.RobotNaiveUiResolver=r,exports.componentNames=t;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=`@robot-admin/naive-ui-components`,t=`C_ActionBar.C_AntV.C_Barcode.C_Captcha.C_Cascade.C_City.C_Code.C_CollapsePanel.C_Cron.C_Date.C_Draggable.C_Editor.C_FilePreview.C_Form.C_FormSearch.C_FormulaEditor.C_FullCalendar.C_GlobalSearch.C_Guide.C_Icon.C_ImageCropper.C_Language.C_Map.C_Markdown.C_NotificationCenter.C_Progress.C_QRCode.C_Signature.C_SplitPane.C_Steps.C_Table.C_Theme.C_Time.C_Tree.C_Upload.C_VideoPlayer.C_VtableGantt.C_WaterFall.C_WorkFlow`.split(`.`),n=new Set(t);function r(t={}){let{importOnDemand:r=!1,importStyle:i=!1}=t;return{type:`component`,resolve:t=>{if(n.has(t))return{name:t,from:r?`${e}/${t}`:e,sideEffects:r&&i?`${e}/${t}/style.css`:void 0}}}}exports.RobotNaiveUiResolver=r,exports.componentNames=t;
2
2
  //# sourceMappingURL=resolver.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"resolver.cjs","names":[],"sources":["../src/resolver.ts"],"sourcesContent":["/**\n * @robot-admin/naive-ui-components Resolver\n * 用于 unplugin-vue-components 的自动导入解析器\n *\n * @example\n * ```ts\n * // vite.config.ts\n * import Components from 'unplugin-vue-components/vite'\n * import { RobotNaiveUiResolver } from '@robot-admin/naive-ui-components/resolver'\n *\n * export default defineConfig({\n * plugins: [\n * Components({\n * resolvers: [RobotNaiveUiResolver()]\n * })\n * ]\n * })\n * ```\n */\n\nconst PKG_NAME = '@robot-admin/naive-ui-components'\n\n/** 组件库包含的所有组件名称 */\nexport const componentNames = [\n 'C_ActionBar',\n 'C_AntV',\n 'C_Barcode',\n 'C_Captcha',\n 'C_Cascade',\n 'C_City',\n 'C_Code',\n 'C_CollapsePanel',\n 'C_Cron',\n 'C_Date',\n 'C_Draggable',\n 'C_Editor',\n 'C_FilePreview',\n 'C_Form',\n 'C_FormSearch',\n 'C_FormulaEditor',\n 'C_FullCalendar',\n 'C_GlobalSearch',\n 'C_Guide',\n 'C_Icon',\n 'C_ImageCropper',\n 'C_Language',\n 'C_Map',\n 'C_Markdown',\n 'C_NotificationCenter',\n 'C_Progress',\n 'C_QRCode',\n 'C_Signature',\n 'C_SplitPane',\n 'C_Steps',\n 'C_Table',\n 'C_Theme',\n 'C_Time',\n 'C_Tree',\n 'C_Upload',\n 'C_VideoPlayer',\n 'C_VtableGantt',\n 'C_WaterFall',\n 'C_WorkFlow',\n] as const\n\n/** 组件名称类型 */\nexport type ComponentName = (typeof componentNames)[number]\n\n/** 组件名称集合(快速查找) */\nconst componentSet = new Set<string>(componentNames)\n\nexport interface RobotNaiveUiResolverOptions {\n /**\n * 按需导入:从子路径解析单个组件,减少打包体积\n * - false (默认): `import { C_Form } from '@robot-admin/naive-ui-components'`\n * - true: `import { C_Form } from '@robot-admin/naive-ui-components/C_Form'`\n */\n importOnDemand?: boolean\n}\n\n/**\n * @robot-admin/naive-ui-components 组件自动导入解析器\n *\n * 匹配组件库中所有 C_ 前缀的组件,自动解析导入路径。\n * 类似于 NaiveUiResolver、ElementPlusResolver 等成熟解析器的设计。\n */\nexport function RobotNaiveUiResolver(\n options: RobotNaiveUiResolverOptions = {}\n) {\n const { importOnDemand = false } = options\n\n return {\n type: 'component' as const,\n resolve: (name: string) => {\n if (componentSet.has(name)) {\n return {\n name,\n from: importOnDemand ? `${PKG_NAME}/${name}` : PKG_NAME,\n }\n }\n },\n }\n}\n"],"mappings":"mEAoBA,MAAM,EAAW,mCAGJ,EAAiB,2aAwC7B,CAMK,EAAe,IAAI,IAAY,EAAe,CAiBpD,SAAgB,EACd,EAAuC,EAAE,CACzC,CACA,GAAM,CAAE,iBAAiB,IAAU,EAEnC,MAAO,CACL,KAAM,YACN,QAAU,GAAiB,CACzB,GAAI,EAAa,IAAI,EAAK,CACxB,MAAO,CACL,OACA,KAAM,EAAiB,GAAG,EAAS,GAAG,IAAS,EAChD,EAGN"}
1
+ {"version":3,"file":"resolver.cjs","names":[],"sources":["../src/resolver.ts"],"sourcesContent":["/**\n * @robot-admin/naive-ui-components Resolver\n * 用于 unplugin-vue-components 的自动导入解析器\n *\n * @example\n * ```ts\n * // vite.config.ts\n * import Components from 'unplugin-vue-components/vite'\n * import { RobotNaiveUiResolver } from '@robot-admin/naive-ui-components/resolver'\n *\n * export default defineConfig({\n * plugins: [\n * Components({\n * resolvers: [RobotNaiveUiResolver()]\n * })\n * ]\n * })\n * ```\n */\n\nconst PKG_NAME = '@robot-admin/naive-ui-components'\n\n/** 组件库包含的所有组件名称 */\nexport const componentNames = [\n 'C_ActionBar',\n 'C_AntV',\n 'C_Barcode',\n 'C_Captcha',\n 'C_Cascade',\n 'C_City',\n 'C_Code',\n 'C_CollapsePanel',\n 'C_Cron',\n 'C_Date',\n 'C_Draggable',\n 'C_Editor',\n 'C_FilePreview',\n 'C_Form',\n 'C_FormSearch',\n 'C_FormulaEditor',\n 'C_FullCalendar',\n 'C_GlobalSearch',\n 'C_Guide',\n 'C_Icon',\n 'C_ImageCropper',\n 'C_Language',\n 'C_Map',\n 'C_Markdown',\n 'C_NotificationCenter',\n 'C_Progress',\n 'C_QRCode',\n 'C_Signature',\n 'C_SplitPane',\n 'C_Steps',\n 'C_Table',\n 'C_Theme',\n 'C_Time',\n 'C_Tree',\n 'C_Upload',\n 'C_VideoPlayer',\n 'C_VtableGantt',\n 'C_WaterFall',\n 'C_WorkFlow',\n] as const\n\n/** 组件名称类型 */\nexport type ComponentName = (typeof componentNames)[number]\n\n/** 组件名称集合(快速查找) */\nconst componentSet = new Set<string>(componentNames)\n\nexport interface RobotNaiveUiResolverOptions {\n /**\n * 按需导入:从子路径解析单个组件,减少打包体积\n * - false (默认): `import { C_Form } from '@robot-admin/naive-ui-components'`\n * - true: `import { C_Form } from '@robot-admin/naive-ui-components/C_Form'`\n */\n importOnDemand?: boolean\n /**\n * 按需导入组件样式(仅在 importOnDemand 为 true 时生效)\n * - false (默认): 需手动导入 style.css 全量样式\n * - true: 自动导入对应组件的独立样式 `@robot-admin/naive-ui-components/C_Form/style.css`\n */\n importStyle?: boolean\n}\n\n/**\n * @robot-admin/naive-ui-components 组件自动导入解析器\n *\n * 匹配组件库中所有 C_ 前缀的组件,自动解析导入路径。\n * 类似于 NaiveUiResolver、ElementPlusResolver 等成熟解析器的设计。\n */\nexport function RobotNaiveUiResolver(\n options: RobotNaiveUiResolverOptions = {}\n) {\n const { importOnDemand = false, importStyle = false } = options\n\n return {\n type: 'component' as const,\n resolve: (name: string) => {\n if (componentSet.has(name)) {\n const from = importOnDemand ? `${PKG_NAME}/${name}` : PKG_NAME\n const sideEffects =\n importOnDemand && importStyle\n ? `${PKG_NAME}/${name}/style.css`\n : undefined\n return {\n name,\n from,\n sideEffects,\n }\n }\n },\n }\n}\n"],"mappings":"mEAoBA,MAAM,EAAW,mCAGJ,EAAiB,2aAwC7B,CAMK,EAAe,IAAI,IAAY,EAAe,CAuBpD,SAAgB,EACd,EAAuC,EAAE,CACzC,CACA,GAAM,CAAE,iBAAiB,GAAO,cAAc,IAAU,EAExD,MAAO,CACL,KAAM,YACN,QAAU,GAAiB,CACzB,GAAI,EAAa,IAAI,EAAK,CAMxB,MAAO,CACL,OACA,KAPW,EAAiB,GAAG,EAAS,GAAG,IAAS,EAQpD,YANA,GAAkB,EACd,GAAG,EAAS,GAAG,EAAK,YACpB,IAAA,GAKL,EAGN"}
@@ -29,6 +29,12 @@ interface RobotNaiveUiResolverOptions {
29
29
  * - true: `import { C_Form } from '@robot-admin/naive-ui-components/C_Form'`
30
30
  */
31
31
  importOnDemand?: boolean;
32
+ /**
33
+ * 按需导入组件样式(仅在 importOnDemand 为 true 时生效)
34
+ * - false (默认): 需手动导入 style.css 全量样式
35
+ * - true: 自动导入对应组件的独立样式 `@robot-admin/naive-ui-components/C_Form/style.css`
36
+ */
37
+ importStyle?: boolean;
32
38
  }
33
39
  /**
34
40
  * @robot-admin/naive-ui-components 组件自动导入解析器
@@ -41,6 +47,7 @@ declare function RobotNaiveUiResolver(options?: RobotNaiveUiResolverOptions): {
41
47
  resolve: (name: string) => {
42
48
  name: string;
43
49
  from: string;
50
+ sideEffects: string | undefined;
44
51
  } | undefined;
45
52
  };
46
53
  //#endregion
@@ -29,6 +29,12 @@ interface RobotNaiveUiResolverOptions {
29
29
  * - true: `import { C_Form } from '@robot-admin/naive-ui-components/C_Form'`
30
30
  */
31
31
  importOnDemand?: boolean;
32
+ /**
33
+ * 按需导入组件样式(仅在 importOnDemand 为 true 时生效)
34
+ * - false (默认): 需手动导入 style.css 全量样式
35
+ * - true: 自动导入对应组件的独立样式 `@robot-admin/naive-ui-components/C_Form/style.css`
36
+ */
37
+ importStyle?: boolean;
32
38
  }
33
39
  /**
34
40
  * @robot-admin/naive-ui-components 组件自动导入解析器
@@ -41,6 +47,7 @@ declare function RobotNaiveUiResolver(options?: RobotNaiveUiResolverOptions): {
41
47
  resolve: (name: string) => {
42
48
  name: string;
43
49
  from: string;
50
+ sideEffects: string | undefined;
44
51
  } | undefined;
45
52
  };
46
53
  //#endregion
package/dist/resolver.js CHANGED
@@ -1,2 +1,2 @@
1
- const e=`@robot-admin/naive-ui-components`,t=`C_ActionBar.C_AntV.C_Barcode.C_Captcha.C_Cascade.C_City.C_Code.C_CollapsePanel.C_Cron.C_Date.C_Draggable.C_Editor.C_FilePreview.C_Form.C_FormSearch.C_FormulaEditor.C_FullCalendar.C_GlobalSearch.C_Guide.C_Icon.C_ImageCropper.C_Language.C_Map.C_Markdown.C_NotificationCenter.C_Progress.C_QRCode.C_Signature.C_SplitPane.C_Steps.C_Table.C_Theme.C_Time.C_Tree.C_Upload.C_VideoPlayer.C_VtableGantt.C_WaterFall.C_WorkFlow`.split(`.`),n=new Set(t);function r(t={}){let{importOnDemand:r=!1}=t;return{type:`component`,resolve:t=>{if(n.has(t))return{name:t,from:r?`${e}/${t}`:e}}}}export{r as RobotNaiveUiResolver,t as componentNames};
1
+ const e=`@robot-admin/naive-ui-components`,t=`C_ActionBar.C_AntV.C_Barcode.C_Captcha.C_Cascade.C_City.C_Code.C_CollapsePanel.C_Cron.C_Date.C_Draggable.C_Editor.C_FilePreview.C_Form.C_FormSearch.C_FormulaEditor.C_FullCalendar.C_GlobalSearch.C_Guide.C_Icon.C_ImageCropper.C_Language.C_Map.C_Markdown.C_NotificationCenter.C_Progress.C_QRCode.C_Signature.C_SplitPane.C_Steps.C_Table.C_Theme.C_Time.C_Tree.C_Upload.C_VideoPlayer.C_VtableGantt.C_WaterFall.C_WorkFlow`.split(`.`),n=new Set(t);function r(t={}){let{importOnDemand:r=!1,importStyle:i=!1}=t;return{type:`component`,resolve:t=>{if(n.has(t))return{name:t,from:r?`${e}/${t}`:e,sideEffects:r&&i?`${e}/${t}/style.css`:void 0}}}}export{r as RobotNaiveUiResolver,t as componentNames};
2
2
  //# sourceMappingURL=resolver.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"resolver.js","names":[],"sources":["../src/resolver.ts"],"sourcesContent":["/**\n * @robot-admin/naive-ui-components Resolver\n * 用于 unplugin-vue-components 的自动导入解析器\n *\n * @example\n * ```ts\n * // vite.config.ts\n * import Components from 'unplugin-vue-components/vite'\n * import { RobotNaiveUiResolver } from '@robot-admin/naive-ui-components/resolver'\n *\n * export default defineConfig({\n * plugins: [\n * Components({\n * resolvers: [RobotNaiveUiResolver()]\n * })\n * ]\n * })\n * ```\n */\n\nconst PKG_NAME = '@robot-admin/naive-ui-components'\n\n/** 组件库包含的所有组件名称 */\nexport const componentNames = [\n 'C_ActionBar',\n 'C_AntV',\n 'C_Barcode',\n 'C_Captcha',\n 'C_Cascade',\n 'C_City',\n 'C_Code',\n 'C_CollapsePanel',\n 'C_Cron',\n 'C_Date',\n 'C_Draggable',\n 'C_Editor',\n 'C_FilePreview',\n 'C_Form',\n 'C_FormSearch',\n 'C_FormulaEditor',\n 'C_FullCalendar',\n 'C_GlobalSearch',\n 'C_Guide',\n 'C_Icon',\n 'C_ImageCropper',\n 'C_Language',\n 'C_Map',\n 'C_Markdown',\n 'C_NotificationCenter',\n 'C_Progress',\n 'C_QRCode',\n 'C_Signature',\n 'C_SplitPane',\n 'C_Steps',\n 'C_Table',\n 'C_Theme',\n 'C_Time',\n 'C_Tree',\n 'C_Upload',\n 'C_VideoPlayer',\n 'C_VtableGantt',\n 'C_WaterFall',\n 'C_WorkFlow',\n] as const\n\n/** 组件名称类型 */\nexport type ComponentName = (typeof componentNames)[number]\n\n/** 组件名称集合(快速查找) */\nconst componentSet = new Set<string>(componentNames)\n\nexport interface RobotNaiveUiResolverOptions {\n /**\n * 按需导入:从子路径解析单个组件,减少打包体积\n * - false (默认): `import { C_Form } from '@robot-admin/naive-ui-components'`\n * - true: `import { C_Form } from '@robot-admin/naive-ui-components/C_Form'`\n */\n importOnDemand?: boolean\n}\n\n/**\n * @robot-admin/naive-ui-components 组件自动导入解析器\n *\n * 匹配组件库中所有 C_ 前缀的组件,自动解析导入路径。\n * 类似于 NaiveUiResolver、ElementPlusResolver 等成熟解析器的设计。\n */\nexport function RobotNaiveUiResolver(\n options: RobotNaiveUiResolverOptions = {}\n) {\n const { importOnDemand = false } = options\n\n return {\n type: 'component' as const,\n resolve: (name: string) => {\n if (componentSet.has(name)) {\n return {\n name,\n from: importOnDemand ? `${PKG_NAME}/${name}` : PKG_NAME,\n }\n }\n },\n }\n}\n"],"mappings":"AAoBA,MAAM,EAAW,mCAGJ,EAAiB,2aAwC7B,CAMK,EAAe,IAAI,IAAY,EAAe,CAiBpD,SAAgB,EACd,EAAuC,EAAE,CACzC,CACA,GAAM,CAAE,iBAAiB,IAAU,EAEnC,MAAO,CACL,KAAM,YACN,QAAU,GAAiB,CACzB,GAAI,EAAa,IAAI,EAAK,CACxB,MAAO,CACL,OACA,KAAM,EAAiB,GAAG,EAAS,GAAG,IAAS,EAChD,EAGN"}
1
+ {"version":3,"file":"resolver.js","names":[],"sources":["../src/resolver.ts"],"sourcesContent":["/**\n * @robot-admin/naive-ui-components Resolver\n * 用于 unplugin-vue-components 的自动导入解析器\n *\n * @example\n * ```ts\n * // vite.config.ts\n * import Components from 'unplugin-vue-components/vite'\n * import { RobotNaiveUiResolver } from '@robot-admin/naive-ui-components/resolver'\n *\n * export default defineConfig({\n * plugins: [\n * Components({\n * resolvers: [RobotNaiveUiResolver()]\n * })\n * ]\n * })\n * ```\n */\n\nconst PKG_NAME = '@robot-admin/naive-ui-components'\n\n/** 组件库包含的所有组件名称 */\nexport const componentNames = [\n 'C_ActionBar',\n 'C_AntV',\n 'C_Barcode',\n 'C_Captcha',\n 'C_Cascade',\n 'C_City',\n 'C_Code',\n 'C_CollapsePanel',\n 'C_Cron',\n 'C_Date',\n 'C_Draggable',\n 'C_Editor',\n 'C_FilePreview',\n 'C_Form',\n 'C_FormSearch',\n 'C_FormulaEditor',\n 'C_FullCalendar',\n 'C_GlobalSearch',\n 'C_Guide',\n 'C_Icon',\n 'C_ImageCropper',\n 'C_Language',\n 'C_Map',\n 'C_Markdown',\n 'C_NotificationCenter',\n 'C_Progress',\n 'C_QRCode',\n 'C_Signature',\n 'C_SplitPane',\n 'C_Steps',\n 'C_Table',\n 'C_Theme',\n 'C_Time',\n 'C_Tree',\n 'C_Upload',\n 'C_VideoPlayer',\n 'C_VtableGantt',\n 'C_WaterFall',\n 'C_WorkFlow',\n] as const\n\n/** 组件名称类型 */\nexport type ComponentName = (typeof componentNames)[number]\n\n/** 组件名称集合(快速查找) */\nconst componentSet = new Set<string>(componentNames)\n\nexport interface RobotNaiveUiResolverOptions {\n /**\n * 按需导入:从子路径解析单个组件,减少打包体积\n * - false (默认): `import { C_Form } from '@robot-admin/naive-ui-components'`\n * - true: `import { C_Form } from '@robot-admin/naive-ui-components/C_Form'`\n */\n importOnDemand?: boolean\n /**\n * 按需导入组件样式(仅在 importOnDemand 为 true 时生效)\n * - false (默认): 需手动导入 style.css 全量样式\n * - true: 自动导入对应组件的独立样式 `@robot-admin/naive-ui-components/C_Form/style.css`\n */\n importStyle?: boolean\n}\n\n/**\n * @robot-admin/naive-ui-components 组件自动导入解析器\n *\n * 匹配组件库中所有 C_ 前缀的组件,自动解析导入路径。\n * 类似于 NaiveUiResolver、ElementPlusResolver 等成熟解析器的设计。\n */\nexport function RobotNaiveUiResolver(\n options: RobotNaiveUiResolverOptions = {}\n) {\n const { importOnDemand = false, importStyle = false } = options\n\n return {\n type: 'component' as const,\n resolve: (name: string) => {\n if (componentSet.has(name)) {\n const from = importOnDemand ? `${PKG_NAME}/${name}` : PKG_NAME\n const sideEffects =\n importOnDemand && importStyle\n ? `${PKG_NAME}/${name}/style.css`\n : undefined\n return {\n name,\n from,\n sideEffects,\n }\n }\n },\n }\n}\n"],"mappings":"AAoBA,MAAM,EAAW,mCAGJ,EAAiB,2aAwC7B,CAMK,EAAe,IAAI,IAAY,EAAe,CAuBpD,SAAgB,EACd,EAAuC,EAAE,CACzC,CACA,GAAM,CAAE,iBAAiB,GAAO,cAAc,IAAU,EAExD,MAAO,CACL,KAAM,YACN,QAAU,GAAiB,CACzB,GAAI,EAAa,IAAI,EAAK,CAMxB,MAAO,CACL,OACA,KAPW,EAAiB,GAAG,EAAS,GAAG,IAAS,EAQpD,YANA,GAAkB,EACd,GAAG,EAAS,GAAG,EAAK,YACpB,IAAA,GAKL,EAGN"}