@robot-admin/naive-ui-components 0.4.5 → 0.6.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 (181) hide show
  1. package/CHANGELOG.md +32 -0
  2. package/dist/C_ActionBar-jZPsiXtT.css.map +1 -0
  3. package/dist/C_ActionBar.css +205 -0
  4. package/dist/C_AntV-D2Zp2qQF.css.map +1 -0
  5. package/dist/C_AntV.css +398 -0
  6. package/dist/C_Barcode-Do1Ozsmh.css.map +1 -0
  7. package/dist/C_Barcode.css +39 -0
  8. package/dist/C_Breadcrumb.cjs +1 -0
  9. package/dist/C_Breadcrumb.d.cts +2 -0
  10. package/dist/C_Breadcrumb.d.ts +3 -0
  11. package/dist/C_Breadcrumb.js +1 -0
  12. package/dist/C_Breadcrumb.js.map +1 -0
  13. package/dist/C_Breadcrumb2.js +2 -0
  14. package/dist/C_Breadcrumb2.js.map +1 -0
  15. package/dist/C_Captcha-CZmAETly.css.map +1 -0
  16. package/dist/C_Captcha.css +109 -0
  17. package/dist/C_Captcha.d.cts +1 -1
  18. package/dist/C_Captcha.d.ts +1 -1
  19. package/dist/C_Cascade-Dq0S5Jkm.css.map +1 -0
  20. package/dist/C_Cascade.css +10 -0
  21. package/dist/C_Cascade.d.cts +1 -1
  22. package/dist/C_Cascade.d.ts +1 -1
  23. package/dist/C_City-DNKv4MpH.css.map +1 -0
  24. package/dist/C_City.css +132 -0
  25. package/dist/C_City.d.cts +1 -1
  26. package/dist/C_City.d.ts +1 -1
  27. package/dist/C_Code-avZjAnHD.css.map +1 -0
  28. package/dist/C_Code.css +8 -0
  29. package/dist/C_Code.d.cts +1 -1
  30. package/dist/C_Code.d.ts +1 -1
  31. package/dist/C_CollapsePanel-BpofCDyl.css.map +1 -0
  32. package/dist/C_CollapsePanel.css +171 -0
  33. package/dist/C_Cron-DqHQ92LN.css.map +1 -0
  34. package/dist/C_Cron.css +307 -0
  35. package/dist/C_Date.d.cts +1 -1
  36. package/dist/C_Date.d.ts +1 -1
  37. package/dist/C_Draggable-r6nhx3yM.css.map +1 -0
  38. package/dist/C_Draggable.css +238 -0
  39. package/dist/C_Editor-D0_6UhIa.css.map +1 -0
  40. package/dist/C_Editor.css +52 -0
  41. package/dist/C_Editor.d.cts +1 -1
  42. package/dist/C_Editor.d.ts +1 -1
  43. package/dist/C_FilePreview-BVarVvnD.css.map +1 -0
  44. package/dist/C_FilePreview.css +507 -0
  45. package/dist/C_Form-BciQUPpS.css.map +1 -0
  46. package/dist/C_Form.css +976 -0
  47. package/dist/C_FormSearch-Bmd2CmG6.css.map +1 -0
  48. package/dist/C_FormSearch.css +177 -0
  49. package/dist/C_FormulaEditor-3WG2vtQl.css.map +1 -0
  50. package/dist/C_FormulaEditor.css +502 -0
  51. package/dist/C_FullCalendar-1U4VlG7X.css.map +1 -0
  52. package/dist/C_FullCalendar.css +7 -0
  53. package/dist/C_GlobalSearch-B6wK3m3k.css.map +1 -0
  54. package/dist/C_GlobalSearch.css +616 -0
  55. package/dist/C_Guide.d.cts +1 -1
  56. package/dist/C_Guide.d.ts +1 -1
  57. package/dist/C_Icon.d.cts +1 -1
  58. package/dist/C_Icon.d.ts +1 -1
  59. package/dist/C_ImageCropper-D3L2-J_J.css.map +1 -0
  60. package/dist/C_ImageCropper.css +129 -0
  61. package/dist/C_Language.d.cts +1 -1
  62. package/dist/C_Language.d.ts +1 -1
  63. package/dist/C_Map-BCJmDnJT.css.map +1 -0
  64. package/dist/C_Map.css +29 -0
  65. package/dist/C_Markdown-7iBnLDtL.css.map +1 -0
  66. package/dist/C_Markdown.css +112 -0
  67. package/dist/C_Markdown.d.cts +1 -1
  68. package/dist/C_Markdown.d.ts +1 -1
  69. package/dist/C_Menu.cjs +1 -0
  70. package/dist/C_Menu.d.cts +2 -0
  71. package/dist/C_Menu.d.ts +3 -0
  72. package/dist/C_Menu.js +1 -0
  73. package/dist/C_Menu.js.map +1 -0
  74. package/dist/C_Menu2.js +2 -0
  75. package/dist/C_Menu2.js.map +1 -0
  76. package/dist/C_NotificationCenter-DT6fQ79O.css.map +1 -0
  77. package/dist/C_NotificationCenter.css +466 -0
  78. package/dist/C_Progress.d.cts +1 -1
  79. package/dist/C_Progress.d.ts +1 -1
  80. package/dist/C_QRCode-DMxSyogU.css.map +1 -0
  81. package/dist/C_QRCode.css +51 -0
  82. package/dist/C_Signature-B5fFz6RD.css.map +1 -0
  83. package/dist/C_Signature.css +79 -0
  84. package/dist/C_SplitPane-DuyzUhKB.css.map +1 -0
  85. package/dist/C_SplitPane.css +152 -0
  86. package/dist/C_Steps-DGwXxS2Y.css.map +1 -0
  87. package/dist/C_Steps.css +171 -0
  88. package/dist/C_Steps.d.cts +1 -1
  89. package/dist/C_Steps.d.ts +1 -1
  90. package/dist/C_Table-Dcam_tRs.css.map +1 -0
  91. package/dist/C_Table.css +527 -0
  92. package/dist/C_TagsView-DX3LecK1.css.map +1 -0
  93. package/dist/C_TagsView-DqOTa8bL.css.map +1 -0
  94. package/dist/C_TagsView.cjs +1 -0
  95. package/dist/C_TagsView.css +194 -0
  96. package/dist/C_TagsView.d.cts +2 -0
  97. package/dist/C_TagsView.d.ts +3 -0
  98. package/dist/C_TagsView.js +1 -0
  99. package/dist/C_TagsView.js.map +1 -0
  100. package/dist/C_TagsView2.js +2 -0
  101. package/dist/C_TagsView2.js.map +1 -0
  102. package/dist/C_Theme.d.cts +1 -1
  103. package/dist/C_Theme.d.ts +1 -1
  104. package/dist/C_Time-CKb_fwdm.css.map +1 -0
  105. package/dist/C_Time.css +23 -0
  106. package/dist/C_Tree-B-Le4hjQ.css.map +1 -0
  107. package/dist/C_Tree.css +142 -0
  108. package/dist/C_Upload-S30RmC9t.css.map +1 -0
  109. package/dist/C_Upload.css +251 -0
  110. package/dist/C_VideoPlayer-Cdgv4Zq0.css.map +1 -0
  111. package/dist/C_VideoPlayer.css +355 -0
  112. package/dist/C_VideoPlayer.d.ts +1 -1
  113. package/dist/C_VtableGantt-DB87-jdS.css.map +1 -0
  114. package/dist/C_VtableGantt.css +89 -0
  115. package/dist/C_VtableGantt.d.cts +1 -1
  116. package/dist/C_VtableGantt.d.ts +1 -1
  117. package/dist/C_WaterFall-C4HDqf-a.css.map +1 -0
  118. package/dist/C_WaterFall.css +73 -0
  119. package/dist/C_WorkFlow-Cy3HWA6A.css.map +1 -0
  120. package/dist/C_WorkFlow.css +1166 -0
  121. package/dist/_shared.cjs +1 -0
  122. package/dist/_shared.d.cts +2 -0
  123. package/dist/_shared.d.ts +2 -0
  124. package/dist/_shared.js +1 -0
  125. package/dist/chunk.js +1 -1
  126. package/dist/constants.d.ts +3 -3
  127. package/dist/constants2.d.ts +4 -4
  128. package/dist/constants3.d.ts +4 -4
  129. package/dist/constants4.d.ts +3 -3
  130. package/dist/constants5.d.ts +6 -3814
  131. package/dist/data.d.ts +3 -3
  132. package/dist/index.cjs +1 -1
  133. package/dist/index.cjs.map +1 -1
  134. package/dist/index.d.cts +40 -36
  135. package/dist/index.d.ts +45 -36
  136. package/dist/index.js +1 -1
  137. package/dist/index.js.map +1 -1
  138. package/dist/index10.vue.d.ts +23 -65
  139. package/dist/index11.vue.d.ts +64 -18
  140. package/dist/index12.vue.d.ts +17 -72
  141. package/dist/index13.vue.d.ts +72 -46
  142. package/dist/index14.vue.d.ts +57 -23
  143. package/dist/index15.vue.d.ts +48 -11
  144. package/dist/index16.vue.d.ts +23 -652
  145. package/dist/index17.vue.d.ts +88 -0
  146. package/dist/index18.vue.d.ts +18 -0
  147. package/dist/index19.vue.d.ts +662 -0
  148. package/dist/index2.vue.d.ts +1 -1
  149. package/dist/index3.vue.d.ts +20 -37
  150. package/dist/index4.vue.d.ts +37 -23
  151. package/dist/index5.vue.d.ts +22 -26
  152. package/dist/index6.vue.d.ts +24 -37
  153. package/dist/index7.vue.d.ts +36 -44
  154. package/dist/index8.vue.d.ts +40 -25
  155. package/dist/index9.vue.d.ts +34 -23
  156. package/dist/menuAdapter.d.ts +167 -0
  157. package/dist/menuAdapter.js +2 -0
  158. package/dist/menuAdapter.js.map +1 -0
  159. package/dist/resolver.cjs +1 -1
  160. package/dist/resolver.cjs.map +1 -1
  161. package/dist/resolver.d.cts +8 -1
  162. package/dist/resolver.d.ts +8 -1
  163. package/dist/resolver.js +1 -1
  164. package/dist/resolver.js.map +1 -1
  165. package/dist/style.css +243 -47
  166. package/dist/useCalendarEvents.d.ts +1 -1
  167. package/dist/useCollapsePanel.d.ts +5 -5
  168. package/dist/useCropperCore.d.ts +4 -4
  169. package/dist/useDraggableLayout.d.ts +4 -4
  170. package/dist/useDynamicFormState.d.ts +6 -6
  171. package/dist/useEdgeInteraction.d.ts +2 -7283
  172. package/dist/useInfiniteScroll.d.ts +2 -2
  173. package/dist/useModalEdit.d.ts +8 -8
  174. package/dist/useQRCode.d.ts +1 -1
  175. package/dist/useSearchState.d.ts +1 -1
  176. package/dist/useSignatureHistory.d.ts +1 -1
  177. package/dist/useSplitResize.d.ts +6 -6
  178. package/dist/useTimeSelection.d.ts +2 -2
  179. package/dist/useTreeOperations.d.ts +3 -3
  180. package/dist/useWorkflowValidation.d.ts +4 -4
  181. package/package.json +34 -33
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'\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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"}
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","C_Menu","C_Breadcrumb","C_TagsView"],"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'\nimport { C_Menu } from './components/C_Menu'\nimport { C_Breadcrumb } from './components/C_Breadcrumb'\nimport { C_TagsView } from './components/C_TagsView'\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 C_Menu,\n C_Breadcrumb,\n C_TagsView,\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'\nexport * from './components/C_Menu'\nexport * from './components/C_Breadcrumb'\nexport * from './components/C_TagsView'\n\n// ====== 共享类型 + 适配器 ======\nexport * from './components/_shared'\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 || (component as any).name || '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":"qtGAwBA,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,EAAwB,GAQ9B,SAAS,EAAiB,EAAc,EAA8B,CACpE,EAAa,iBAAiB,EAAM,EAAW,CAC/C,EAAgB,IAAI,EAAK,CAQ3B,SAAS,GAAe,EAAuC,CAEpC,CACvB,CAAC,aAAc,GAAW,CAC1B,CAAC,aAAc,GAAW,CAC1B,CAAC,OAAQ,GAAK,CACd,CAAC,OAAQ,EAAI,CACb,CAAC,MAAO,EAAI,CACZ,CAAC,MAAO,GAAI,CACZ,CAAC,OAAQ,EAAK,CACd,CAAC,QAAS,EAAK,CACf,CAAC,OAAQ,EAAK,CACd,CAAC,MAAO,EAAK,CACb,CAAC,WAAY,GAAS,CACtB,CAAC,OAAQ,GAAK,CACd,CAAC,SAAU,GAAO,CAClB,CAAC,KAAM,GAAG,CACV,CAAC,SAAU,GAAO,CACnB,CAEgB,SAAS,CAAC,EAAM,KAAY,CAC3C,EAAiB,EAAM,EAAO,EAC9B,CAGF,EAAa,UAAU,CACrB,oBAAqB,GACrB,UAAW,EAAQ,WAAa,IAAA,GAAY,EAAE,CAC/C,CAAC,CAGE,EAAQ,gBAAgB,QAC1B,EAAc,EAAQ,eAAe,CASzC,eAAe,EAAc,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,EAAiB,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,OACJ,CAEL,YAAe,EAGf,aAAe,GAAqB,EAAa,EAAS,CAC1D,cAAgB,GAAwB,EAAc,EAAU,CAChE,uBAA0B,MAAM,KAAK,EAAgB,CACtD,EASH,SAAgB,EAAe,EAAU,EAAkC,EAAE,CAAE,CAQ7E,GAP8C,CAC5C,WAAY,GACZ,eAAgB,EAAE,CAClB,GAAG,EACJ,CAG4B,CAGzB,OAAO,OAAW,MACpB,OAAO,KAAO,GAIhB,IAAM,EAAe,GAAc,CACnC,EAAI,QAAQ,mBAAoB,EAAa,CAC7C,EAAI,OAAO,iBAAiB,WAAa,EAEzC,QAAQ,IAAI,kEAAkE,CCvIhF,MAAM,GAA0B,CAC9BA,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACD,CAqED,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,EAAe,EAAK,EAAQ,UAAU,EAMzC"}
@@ -1,72 +1,30 @@
1
1
  import * as vue from "vue";
2
+ import "driver.js/dist/driver.css";
2
3
 
3
- //#region src/components/C_Icon/index.vue.d.ts
4
- interface IconProps {
5
- /** 图标名称/路径/组件实例 */
6
- name: string | any;
7
- /** 图标类型 */
8
- type?: 'iconify' | 'unocss' | 'component' | 'svg' | 'image';
9
- /** 图标颜色 */
10
- color?: string;
11
- /** 图标大小(px) */
12
- size?: number | string;
13
- /** SVG路径数据(仅type=svg时使用) */
14
- svgPath?: string;
15
- /** SVG viewBox(仅type=svg时使用) */
16
- viewBox?: string;
17
- /** 图片alt属性(仅type=image时使用) */
18
- alt?: string;
19
- /** 是否可点击 */
20
- clickable?: boolean;
21
- /** 加载状态 */
22
- loading?: boolean;
23
- /** 错误时的回退图标 */
24
- fallbackIcon?: string;
25
- /** 工具提示 */
26
- title?: string;
27
- /** 无障碍标签 */
28
- ariaLabel?: string;
29
- /** 自定义样式类 */
30
- customClass?: string;
31
- /** 旋转角度 */
32
- rotate?: number;
33
- /** 是否翻转 */
34
- flip?: 'horizontal' | 'vertical' | 'both';
35
- /** 传递给组件的额外属性(仅type=component时使用) */
36
- componentProps?: Record<string, any>;
4
+ //#region src/components/C_Guide/index.vue.d.ts
5
+ interface GuideStep {
6
+ element: string;
7
+ popover: {
8
+ title: string;
9
+ description: string;
10
+ side?: 'top' | 'right' | 'bottom' | 'left';
11
+ };
37
12
  }
38
- declare const __VLS_export: vue.DefineComponent<IconProps, {
39
- /** 重新验证配置 */validate: () => void; /** 是否有错误 */
40
- hasError: Readonly<vue.Ref<boolean, boolean>>; /** 错误信息 */
41
- errorMessage: Readonly<vue.Ref<string, string>>; /** DOM引用 */
42
- el: vue.Ref<HTMLElement | undefined, HTMLElement | undefined>;
43
- }, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
44
- click: (event: MouseEvent) => any;
45
- error: (type: string, error?: any) => any;
46
- load: () => any;
47
- }, string, vue.PublicProps, Readonly<IconProps> & Readonly<{
48
- onClick?: ((event: MouseEvent) => any) | undefined;
49
- onError?: ((type: string, error?: any) => any) | undefined;
50
- onLoad?: (() => any) | undefined;
51
- }>, {
52
- type: "iconify" | "unocss" | "component" | "svg" | "image";
53
- title: string;
54
- size: number | string;
55
- name: string | any;
56
- color: string;
57
- loading: boolean;
58
- flip: "horizontal" | "vertical" | "both";
59
- clickable: boolean;
60
- svgPath: string;
61
- viewBox: string;
62
- alt: string;
63
- fallbackIcon: string;
64
- ariaLabel: string;
65
- customClass: string;
66
- rotate: number;
67
- componentProps: Record<string, any>;
13
+ type __VLS_Props = {
14
+ steps?: GuideStep[];
15
+ doneBtnText?: string;
16
+ nextBtnText?: string;
17
+ prevBtnText?: string;
18
+ };
19
+ declare const __VLS_export: vue.DefineComponent<__VLS_Props, {
20
+ startGuide: () => void;
21
+ }, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
22
+ steps: GuideStep[];
23
+ doneBtnText: string;
24
+ nextBtnText: string;
25
+ prevBtnText: string;
68
26
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
69
27
  declare const _default: typeof __VLS_export;
70
28
  //#endregion
71
- export { _default as n, IconProps as t };
29
+ export { _default as n, GuideStep as t };
72
30
  //# sourceMappingURL=index10.vue.d.ts.map
@@ -1,26 +1,72 @@
1
1
  import * as vue from "vue";
2
2
 
3
- //#region src/components/C_Language/index.vue.d.ts
4
- interface LanguageOption {
5
- key: string;
6
- label: string;
7
- iconClass?: string;
3
+ //#region src/components/C_Icon/index.vue.d.ts
4
+ interface IconProps {
5
+ /** 图标名称/路径/组件实例 */
6
+ name: string | any;
7
+ /** 图标类型 */
8
+ type?: 'iconify' | 'unocss' | 'component' | 'svg' | 'image';
9
+ /** 图标颜色 */
10
+ color?: string;
11
+ /** 图标大小(px) */
12
+ size?: number | string;
13
+ /** SVG路径数据(仅type=svg时使用) */
14
+ svgPath?: string;
15
+ /** SVG viewBox(仅type=svg时使用) */
16
+ viewBox?: string;
17
+ /** 图片alt属性(仅type=image时使用) */
18
+ alt?: string;
19
+ /** 是否可点击 */
20
+ clickable?: boolean;
21
+ /** 加载状态 */
22
+ loading?: boolean;
23
+ /** 错误时的回退图标 */
24
+ fallbackIcon?: string;
25
+ /** 工具提示 */
26
+ title?: string;
27
+ /** 无障碍标签 */
28
+ ariaLabel?: string;
29
+ /** 自定义样式类 */
30
+ customClass?: string;
31
+ /** 旋转角度 */
32
+ rotate?: number;
33
+ /** 是否翻转 */
34
+ flip?: 'horizontal' | 'vertical' | 'both';
35
+ /** 传递给组件的额外属性(仅type=component时使用) */
36
+ componentProps?: Record<string, any>;
8
37
  }
9
- type __VLS_Props = {
10
- modelValue?: string;
11
- options?: LanguageOption[];
12
- };
13
- declare const __VLS_export: vue.DefineComponent<__VLS_Props, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
14
- change: (key: string) => any;
15
- "update:modelValue": (key: string) => any;
16
- }, string, vue.PublicProps, Readonly<__VLS_Props> & Readonly<{
17
- onChange?: ((key: string) => any) | undefined;
18
- "onUpdate:modelValue"?: ((key: string) => any) | undefined;
38
+ declare const __VLS_export: vue.DefineComponent<IconProps, {
39
+ /** 重新验证配置 */validate: () => void; /** 是否有错误 */
40
+ hasError: Readonly<vue.Ref<boolean, boolean>>; /** 错误信息 */
41
+ errorMessage: Readonly<vue.Ref<string, string>>; /** DOM引用 */
42
+ el: vue.Ref<HTMLElement | undefined, HTMLElement | undefined>;
43
+ }, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
44
+ error: (type: string, error?: any) => any;
45
+ click: (event: MouseEvent) => any;
46
+ load: () => any;
47
+ }, string, vue.PublicProps, Readonly<IconProps> & Readonly<{
48
+ onError?: ((type: string, error?: any) => any) | undefined;
49
+ onClick?: ((event: MouseEvent) => any) | undefined;
50
+ onLoad?: (() => any) | undefined;
19
51
  }>, {
20
- modelValue: string;
21
- options: LanguageOption[];
52
+ type: "iconify" | "unocss" | "component" | "svg" | "image";
53
+ size: number | string;
54
+ rotate: number;
55
+ name: string | any;
56
+ color: string;
57
+ loading: boolean;
58
+ flip: "horizontal" | "vertical" | "both";
59
+ title: string;
60
+ svgPath: string;
61
+ viewBox: string;
62
+ alt: string;
63
+ clickable: boolean;
64
+ fallbackIcon: string;
65
+ ariaLabel: string;
66
+ customClass: string;
67
+ componentProps: Record<string, any>;
22
68
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
23
69
  declare const _default: typeof __VLS_export;
24
70
  //#endregion
25
- export { _default as n, LanguageOption as t };
71
+ export { _default as n, IconProps as t };
26
72
  //# sourceMappingURL=index11.vue.d.ts.map
@@ -1,81 +1,26 @@
1
1
  import * as vue from "vue";
2
2
 
3
- //#region src/components/C_Markdown/index.vue.d.ts
4
- type InsertImageFunction = (config: {
5
- url: string;
6
- desc?: string;
7
- width?: string | number;
8
- height?: string | number;
9
- }) => void;
10
- interface Props {
11
- modelValue?: string;
12
- height?: string | number;
13
- disabled?: boolean;
14
- placeholder?: string;
15
- mode?: 'edit' | 'editable' | 'preview';
16
- toolbar?: object;
17
- uploadImageConfig?: {
18
- accept?: string;
19
- multiple?: boolean;
20
- [key: string]: any;
21
- };
22
- tocNavPosition?: 'left' | 'right';
23
- defaultFullscreen?: boolean;
24
- autofocus?: boolean;
25
- includeLevel?: number[];
26
- leftToolbar?: string;
27
- rightToolbar?: string;
28
- maxLength?: number;
29
- showWordCount?: boolean;
30
- autoSave?: boolean;
31
- autoSaveInterval?: number;
32
- /** 是否为暗色主题(外部传入) */
33
- isDark?: boolean;
3
+ //#region src/components/C_Language/index.vue.d.ts
4
+ interface LanguageOption {
5
+ key: string;
6
+ label: string;
7
+ iconClass?: string;
34
8
  }
35
- declare const __VLS_export: vue.DefineComponent<Props, {
36
- focus: () => void;
37
- getHtml: () => string;
38
- insertText: (text: string) => void;
39
- wordCount: vue.ComputedRef<number>;
40
- }, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
41
- change: (text: string, html: string) => any;
42
- "update:modelValue": (value: string) => any;
43
- save: (text: string, html: string) => any;
44
- "upload-image": (event: Event, insertImage: InsertImageFunction, files: FileList) => any;
45
- "fullscreen-change": (isFullscreen: boolean) => any;
46
- "copy-code-success": (text: string) => any;
47
- "word-count-change": (count: number) => any;
48
- "auto-save": (text: string) => any;
49
- "max-length-exceeded": (currentLength: number, maxLength: number) => any;
50
- }, string, vue.PublicProps, Readonly<Props> & Readonly<{
51
- onChange?: ((text: string, html: string) => any) | undefined;
52
- "onUpdate:modelValue"?: ((value: string) => any) | undefined;
53
- onSave?: ((text: string, html: string) => any) | undefined;
54
- "onUpload-image"?: ((event: Event, insertImage: InsertImageFunction, files: FileList) => any) | undefined;
55
- "onFullscreen-change"?: ((isFullscreen: boolean) => any) | undefined;
56
- "onCopy-code-success"?: ((text: string) => any) | undefined;
57
- "onWord-count-change"?: ((count: number) => any) | undefined;
58
- "onAuto-save"?: ((text: string) => any) | undefined;
59
- "onMax-length-exceeded"?: ((currentLength: number, maxLength: number) => any) | undefined;
9
+ type __VLS_Props = {
10
+ modelValue?: string;
11
+ options?: LanguageOption[];
12
+ };
13
+ declare const __VLS_export: vue.DefineComponent<__VLS_Props, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
14
+ "update:modelValue": (key: string) => any;
15
+ change: (key: string) => any;
16
+ }, string, vue.PublicProps, Readonly<__VLS_Props> & Readonly<{
17
+ "onUpdate:modelValue"?: ((key: string) => any) | undefined;
18
+ onChange?: ((key: string) => any) | undefined;
60
19
  }>, {
61
- height: string | number;
62
- disabled: boolean;
63
20
  modelValue: string;
64
- placeholder: string;
65
- mode: "edit" | "editable" | "preview";
66
- isDark: boolean;
67
- tocNavPosition: "left" | "right";
68
- defaultFullscreen: boolean;
69
- autofocus: boolean;
70
- includeLevel: number[];
71
- leftToolbar: string;
72
- rightToolbar: string;
73
- maxLength: number;
74
- showWordCount: boolean;
75
- autoSave: boolean;
76
- autoSaveInterval: number;
21
+ options: LanguageOption[];
77
22
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
78
23
  declare const _default: typeof __VLS_export;
79
24
  //#endregion
80
- export { _default as t };
25
+ export { _default as n, LanguageOption as t };
81
26
  //# sourceMappingURL=index12.vue.d.ts.map
@@ -1,55 +1,81 @@
1
1
  import * as vue from "vue";
2
- import { CSSProperties } from "vue";
3
2
 
4
- //#region src/components/C_Progress/index.vue.d.ts
5
- type CSS = CSSProperties | string;
3
+ //#region src/components/C_Markdown/index.vue.d.ts
4
+ type InsertImageFunction = (config: {
5
+ url: string;
6
+ desc?: string;
7
+ width?: string | number;
8
+ height?: string | number;
9
+ }) => void;
6
10
  interface Props {
7
- percentage: number | number[];
8
- isAnimation?: boolean;
9
- time?: number;
10
- type?: "line" | "circle" | "multiple-circle" | "dashboard";
11
- borderRadius?: number | string;
12
- circleGap?: number;
13
- color?: string | string[] | {
14
- stops: string[];
15
- } | Array<{
16
- stops: string[];
17
- }>;
18
- fillBorderRadius?: number | string;
19
- gapDegree?: number;
20
- gapOffsetDegree?: number;
21
- height?: number;
22
- indicatorPlacement?: "inside" | "outside";
23
- indicatorTextColor?: string;
24
- offsetDegree?: number;
25
- railColor?: string | string[];
26
- railStyle?: string | CSS | Array<string | CSS>;
27
- showIndicator?: boolean;
28
- status?: "default" | "success" | "error" | "warning" | "info";
29
- strokeWidth?: number;
30
- unit?: string;
11
+ modelValue?: string;
12
+ height?: string | number;
13
+ disabled?: boolean;
14
+ placeholder?: string;
15
+ mode?: 'edit' | 'editable' | 'preview';
16
+ toolbar?: object;
17
+ uploadImageConfig?: {
18
+ accept?: string;
19
+ multiple?: boolean;
20
+ [key: string]: any;
21
+ };
22
+ tocNavPosition?: 'left' | 'right';
23
+ defaultFullscreen?: boolean;
24
+ autofocus?: boolean;
25
+ includeLevel?: number[];
26
+ leftToolbar?: string;
27
+ rightToolbar?: string;
28
+ maxLength?: number;
29
+ showWordCount?: boolean;
30
+ autoSave?: boolean;
31
+ autoSaveInterval?: number;
32
+ /** 是否为暗色主题(外部传入) */
33
+ isDark?: boolean;
31
34
  }
32
- declare var __VLS_9: {};
33
- type __VLS_Slots = {} & {
34
- indicator?: (props: typeof __VLS_9) => any;
35
- };
36
- declare const __VLS_base: vue.DefineComponent<Props, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.PublicProps, Readonly<Props> & Readonly<{}>, {
37
- status: "default" | "success" | "error" | "warning" | "info";
38
- percentage: number | number[];
39
- isAnimation: boolean;
40
- time: number;
41
- indicatorPlacement: "inside" | "outside";
42
- showIndicator: boolean;
43
- strokeWidth: number;
44
- unit: string;
35
+ declare const __VLS_export: vue.DefineComponent<Props, {
36
+ focus: () => void;
37
+ getHtml: () => string;
38
+ insertText: (text: string) => void;
39
+ wordCount: vue.ComputedRef<number>;
40
+ }, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
41
+ "update:modelValue": (value: string) => any;
42
+ change: (text: string, html: string) => any;
43
+ save: (text: string, html: string) => any;
44
+ "upload-image": (event: Event, insertImage: InsertImageFunction, files: FileList) => any;
45
+ "fullscreen-change": (isFullscreen: boolean) => any;
46
+ "copy-code-success": (text: string) => any;
47
+ "word-count-change": (count: number) => any;
48
+ "auto-save": (text: string) => any;
49
+ "max-length-exceeded": (currentLength: number, maxLength: number) => any;
50
+ }, string, vue.PublicProps, Readonly<Props> & Readonly<{
51
+ "onUpdate:modelValue"?: ((value: string) => any) | undefined;
52
+ onChange?: ((text: string, html: string) => any) | undefined;
53
+ onSave?: ((text: string, html: string) => any) | undefined;
54
+ "onUpload-image"?: ((event: Event, insertImage: InsertImageFunction, files: FileList) => any) | undefined;
55
+ "onFullscreen-change"?: ((isFullscreen: boolean) => any) | undefined;
56
+ "onCopy-code-success"?: ((text: string) => any) | undefined;
57
+ "onWord-count-change"?: ((count: number) => any) | undefined;
58
+ "onAuto-save"?: ((text: string) => any) | undefined;
59
+ "onMax-length-exceeded"?: ((currentLength: number, maxLength: number) => any) | undefined;
60
+ }>, {
61
+ height: string | number;
62
+ modelValue: string;
63
+ placeholder: string;
64
+ disabled: boolean;
65
+ autoSave: boolean;
66
+ mode: "edit" | "editable" | "preview";
67
+ tocNavPosition: "left" | "right";
68
+ defaultFullscreen: boolean;
69
+ autofocus: boolean;
70
+ includeLevel: number[];
71
+ leftToolbar: string;
72
+ rightToolbar: string;
73
+ maxLength: number;
74
+ showWordCount: boolean;
75
+ autoSaveInterval: number;
76
+ isDark: boolean;
45
77
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
46
- declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
47
78
  declare const _default: typeof __VLS_export;
48
- type __VLS_WithSlots<T, S> = T & {
49
- new (): {
50
- $slots: S;
51
- };
52
- };
53
79
  //#endregion
54
80
  export { _default as t };
55
81
  //# sourceMappingURL=index13.vue.d.ts.map
@@ -1,33 +1,67 @@
1
+ import { a as RouteItem, t as MenuAdapterConfig } from "./menuAdapter.js";
1
2
  import * as vue from "vue";
3
+ import { DropdownProps, MenuInst, MenuOption } from "naive-ui/es";
4
+ import * as naive_ui_es_menu_src_interface0 from "naive-ui/es/menu/src/interface";
2
5
 
3
- //#region src/components/C_Steps/index.vue.d.ts
4
- interface StepItem {
5
- title: string;
6
- description?: string;
7
- time?: string;
8
- icon?: string;
9
- status?: "wait" | "process" | "finish" | "error";
10
- disabled?: boolean;
11
- detail?: string;
12
- }
6
+ //#region src/components/C_Menu/index.vue.d.ts
13
7
  type __VLS_Props = {
14
- steps: StepItem[];
15
- current?: number;
16
- direction?: "horizontal" | "vertical";
17
- clickable?: boolean;
8
+ /**
9
+ * 模式一:直传 NMenu 原生 MenuOption[]
10
+ * 与 `routes` 二选一,`options` 优先级更高
11
+ */
12
+ options?: MenuOption[];
13
+ /**
14
+ * 模式二:传入路由数据,自动转换为 MenuOption[]
15
+ * 兼容 Vue Router RouteRecordRaw / 后端 JSON 路由表
16
+ */
17
+ routes?: RouteItem[];
18
+ /**
19
+ * 适配器配置(仅 routes 模式生效)
20
+ * 可自定义 key/label/icon 取值、过滤逻辑等
21
+ */
22
+ adapterConfig?: MenuAdapterConfig;
23
+ /**
24
+ * 标签文本格式化函数(routes 模式的快捷方式)
25
+ * 等同于 `adapterConfig.labelFormatter`,但优先级更高
26
+ */
27
+ labelFormatter?: (label: string) => string; /** 当前激活的菜单 key */
28
+ value?: string; /** 菜单模式 */
29
+ mode?: 'vertical' | 'horizontal'; /** 是否折叠 */
30
+ collapsed?: boolean; /** 折叠宽度 */
31
+ collapsedWidth?: number; /** 折叠图标大小 */
32
+ collapsedIconSize?: number; /** 是否反色 */
33
+ inverted?: boolean; /** 主题覆盖 */
34
+ themeOverrides?: Record<string, any>; /** 缩进像素 */
35
+ indent?: number; /** 根缩进像素 */
36
+ rootIndent?: number; /** 下拉菜单属性(折叠模式) */
37
+ dropdownProps?: DropdownProps;
18
38
  };
19
- declare const __VLS_export: vue.DefineComponent<__VLS_Props, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
20
- change: (args_0: number) => any;
21
- "update:current": (args_0: number) => any;
39
+ declare const __VLS_export: vue.DefineComponent<__VLS_Props, {
40
+ showOption: (key: string) => void | undefined;
41
+ menuRef: vue.Ref<{
42
+ showOption: (key?: naive_ui_es_menu_src_interface0.Key) => void;
43
+ deriveResponsiveState: () => void;
44
+ } | null, MenuInst | {
45
+ showOption: (key?: naive_ui_es_menu_src_interface0.Key) => void;
46
+ deriveResponsiveState: () => void;
47
+ } | null>;
48
+ }, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
49
+ select: (key: string) => any;
50
+ "update:expandedKeys": (keys: string[]) => any;
22
51
  }, string, vue.PublicProps, Readonly<__VLS_Props> & Readonly<{
23
- onChange?: ((args_0: number) => any) | undefined;
24
- "onUpdate:current"?: ((args_0: number) => any) | undefined;
52
+ onSelect?: ((key: string) => any) | undefined;
53
+ "onUpdate:expandedKeys"?: ((keys: string[]) => any) | undefined;
25
54
  }>, {
26
- direction: "horizontal" | "vertical";
27
- current: number;
28
- clickable: boolean;
55
+ mode: "vertical" | "horizontal";
56
+ collapsed: boolean;
57
+ collapsedWidth: number;
58
+ collapsedIconSize: number;
59
+ inverted: boolean;
60
+ indent: number;
61
+ rootIndent: number;
62
+ dropdownProps: DropdownProps;
29
63
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
30
64
  declare const _default: typeof __VLS_export;
31
65
  //#endregion
32
- export { _default as n, StepItem as t };
66
+ export { _default as t };
33
67
  //# sourceMappingURL=index14.vue.d.ts.map