hys-ui 0.6.0 → 0.8.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 (268) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/LICENSE +19 -0
  3. package/dist/components/HysDataGrid/HysDataGrid.vue.js +1 -1
  4. package/dist/components/HysDataGrid/HysDataGrid2.vue.js +1055 -753
  5. package/dist/components/HysDataGrid/gridColumnLayout.js +46 -0
  6. package/dist/components/HysDataGrid/gridPresentation.js +17 -0
  7. package/dist/components/HysDataGrid/useGridContextMenu.js +33 -0
  8. package/dist/components/HysDatePicker/HysDatePicker.vue.js +102 -48
  9. package/dist/components/HysDatePicker/HysDatePickerControl.vue.js +2 -2
  10. package/dist/components/HysDatePicker/HysDatePickerControl2.vue.js +874 -532
  11. package/dist/components/HysDatePicker/HysDatePickerPanel.vue.js +2 -2
  12. package/dist/components/HysDatePicker/HysDatePickerPanel2.vue.js +209 -168
  13. package/dist/components/HysDateRangePicker/HysDateRangePicker.vue.js +102 -48
  14. package/dist/components/HysDescriptions/HysDescriptions.vue.js +7 -0
  15. package/dist/components/HysDescriptions/HysDescriptions2.vue.js +146 -0
  16. package/dist/components/HysForm/HysForm2.vue.js +9 -8
  17. package/dist/components/HysIcon/HysIcon.vue.js +373 -0
  18. package/dist/components/HysIcon/HysIcon2.vue.js +5 -0
  19. package/dist/components/HysIcon/IconGraphic/IconGraphic.vue.js +147 -0
  20. package/dist/components/HysIcon/IconGraphic/IconGraphic2.vue.js +4 -0
  21. package/dist/components/HysIcon/IconPickerPanel/IconPickerPanel.vue.js +7 -0
  22. package/dist/components/HysIcon/IconPickerPanel/IconPickerPanel2.vue.js +440 -0
  23. package/dist/components/HysIcon/IconReferenceGraphic/IconReferenceGraphic.vue.js +29 -0
  24. package/dist/components/HysIcon/IconReferenceGraphic/IconReferenceGraphic2.vue.js +4 -0
  25. package/dist/components/HysIcon/IconTooltip/IconTooltip.vue.js +19 -0
  26. package/dist/components/HysIcon/IconTooltip/IconTooltip2.vue.js +4 -0
  27. package/dist/components/HysIcon/builtins/access.js +180 -0
  28. package/dist/components/HysIcon/builtins/actions.js +327 -0
  29. package/dist/components/HysIcon/builtins/business.js +364 -0
  30. package/dist/components/HysIcon/builtins/catalog/access-1.json.js +51 -0
  31. package/dist/components/HysIcon/builtins/catalog/access-2.json.js +35 -0
  32. package/dist/components/HysIcon/builtins/catalog/accessibility.json.js +26 -0
  33. package/dist/components/HysIcon/builtins/catalog/arrows-1.json.js +45 -0
  34. package/dist/components/HysIcon/builtins/catalog/arrows-2.json.js +46 -0
  35. package/dist/components/HysIcon/builtins/catalog/arrows-3.json.js +42 -0
  36. package/dist/components/HysIcon/builtins/catalog/charts-1.json.js +50 -0
  37. package/dist/components/HysIcon/builtins/catalog/charts-2.json.js +13 -0
  38. package/dist/components/HysIcon/builtins/catalog/commerce.json.js +43 -0
  39. package/dist/components/HysIcon/builtins/catalog/communication-1.json.js +49 -0
  40. package/dist/components/HysIcon/builtins/catalog/communication-2.json.js +37 -0
  41. package/dist/components/HysIcon/builtins/catalog/design-1.json.js +61 -0
  42. package/dist/components/HysIcon/builtins/catalog/design-2.json.js +27 -0
  43. package/dist/components/HysIcon/builtins/catalog/development-1.json.js +58 -0
  44. package/dist/components/HysIcon/builtins/catalog/development-2.json.js +60 -0
  45. package/dist/components/HysIcon/builtins/catalog/development-3.json.js +25 -0
  46. package/dist/components/HysIcon/builtins/catalog/devices-1.json.js +52 -0
  47. package/dist/components/HysIcon/builtins/catalog/devices-2.json.js +55 -0
  48. package/dist/components/HysIcon/builtins/catalog/devices-3.json.js +23 -0
  49. package/dist/components/HysIcon/builtins/catalog/education.json.js +34 -0
  50. package/dist/components/HysIcon/builtins/catalog/emoji.json.js +24 -0
  51. package/dist/components/HysIcon/builtins/catalog/files-1.json.js +45 -0
  52. package/dist/components/HysIcon/builtins/catalog/files-2.json.js +47 -0
  53. package/dist/components/HysIcon/builtins/catalog/files-3.json.js +8 -0
  54. package/dist/components/HysIcon/builtins/catalog/food-1.json.js +67 -0
  55. package/dist/components/HysIcon/builtins/catalog/food-2.json.js +40 -0
  56. package/dist/components/HysIcon/builtins/catalog/home.json.js +36 -0
  57. package/dist/components/HysIcon/builtins/catalog/layout-1.json.js +46 -0
  58. package/dist/components/HysIcon/builtins/catalog/layout-2.json.js +45 -0
  59. package/dist/components/HysIcon/builtins/catalog/manifest.json.js +4 -0
  60. package/dist/components/HysIcon/builtins/catalog/maps-1.json.js +61 -0
  61. package/dist/components/HysIcon/builtins/catalog/maps-2.json.js +24 -0
  62. package/dist/components/HysIcon/builtins/catalog/media-1.json.js +57 -0
  63. package/dist/components/HysIcon/builtins/catalog/media-2.json.js +13 -0
  64. package/dist/components/HysIcon/builtins/catalog/medical.json.js +30 -0
  65. package/dist/components/HysIcon/builtins/catalog/nature.json.js +54 -0
  66. package/dist/components/HysIcon/builtins/catalog/recreation.json.js +51 -0
  67. package/dist/components/HysIcon/builtins/catalog/shapes.json.js +54 -0
  68. package/dist/components/HysIcon/builtins/catalog/text-1.json.js +52 -0
  69. package/dist/components/HysIcon/builtins/catalog/text-2.json.js +54 -0
  70. package/dist/components/HysIcon/builtins/catalog/text-3.json.js +58 -0
  71. package/dist/components/HysIcon/builtins/catalog/text-4.json.js +41 -0
  72. package/dist/components/HysIcon/builtins/catalog/time.json.js +39 -0
  73. package/dist/components/HysIcon/builtins/catalog/transport-1.json.js +57 -0
  74. package/dist/components/HysIcon/builtins/catalog/transport-2.json.js +7 -0
  75. package/dist/components/HysIcon/builtins/catalog/weather.json.js +46 -0
  76. package/dist/components/HysIcon/builtins/communication.js +314 -0
  77. package/dist/components/HysIcon/builtins/documents.js +315 -0
  78. package/dist/components/HysIcon/builtins/extendedCatalog.js +75 -0
  79. package/dist/components/HysIcon/builtins/iconInCategory.js +11 -0
  80. package/dist/components/HysIcon/builtins/media.js +255 -0
  81. package/dist/components/HysIcon/builtins/navigation.js +276 -0
  82. package/dist/components/HysIcon/builtins/technology.js +189 -0
  83. package/dist/components/HysIcon/iconBuiltins.js +228 -0
  84. package/dist/components/HysIcon/iconConfig.js +30 -0
  85. package/dist/components/HysIcon/iconRegistry.js +183 -0
  86. package/dist/components/HysIcon/iconSafety.js +191 -0
  87. package/dist/components/HysIcon/iconStyle.js +70 -0
  88. package/dist/components/HysIcon/useIconResource.js +75 -0
  89. package/dist/components/HysPopconfirm/HysPopconfirm.vue.js +7 -0
  90. package/dist/components/HysPopconfirm/HysPopconfirm2.vue.js +346 -0
  91. package/dist/components/HysPopconfirm/usePopconfirmAction.js +32 -0
  92. package/dist/components/HysResult/HysResult.vue.js +7 -0
  93. package/dist/components/HysResult/HysResult2.vue.js +124 -0
  94. package/dist/components/HysSpace/HysSpace.vue.js +7 -0
  95. package/dist/components/HysSpace/HysSpace2.vue.js +79 -0
  96. package/dist/components/HysSpace/spaceItems.js +17 -0
  97. package/dist/components/HysSpin/HysSpin.vue.js +7 -0
  98. package/dist/components/HysSpin/HysSpin2.vue.js +427 -0
  99. package/dist/components/HysSpin/SpinGlyph/SpinGlyph.vue.js +334 -0
  100. package/dist/components/HysSpin/SpinGlyph/SpinGlyph2.vue.js +5 -0
  101. package/dist/components/HysSpin/SpinPortal/SpinPortal.vue.js +7 -0
  102. package/dist/components/HysSpin/SpinPortal/SpinPortal2.vue.js +66 -0
  103. package/dist/components/HysSpin/SpinPortal/spinTarget.js +57 -0
  104. package/dist/components/HysSpin/spinCatalog.js +35 -0
  105. package/dist/components/HysSpin/spinConfig.js +32 -0
  106. package/dist/components/HysSpin/spinService.js +160 -0
  107. package/dist/components/HysSpin/spinStyle.js +39 -0
  108. package/dist/components/HysSpin/useHysSpinTask.js +92 -0
  109. package/dist/components/HysSpin/useSpinFullscreen.js +60 -0
  110. package/dist/components/HysSpin/useSpinVisibility.js +59 -0
  111. package/dist/components/HysSplitPane/HysSplitPane.vue.js +285 -204
  112. package/dist/components/HysSplitPane/splitPaneResize.js +75 -0
  113. package/dist/components/HysTabPane/HysTabPane.vue.js +49 -0
  114. package/dist/components/HysTabPane/HysTabPane2.vue.js +4 -0
  115. package/dist/components/HysTable/HysTable.vue.js +3 -3
  116. package/dist/components/HysTable/HysTable2.vue.js +412 -383
  117. package/dist/components/HysTable/tableSearch.js +24 -0
  118. package/dist/components/HysTabs/HysTabs.vue.js +172 -5
  119. package/dist/components/HysTabs/HysTabs2.vue.js +2 -275
  120. package/dist/components/HysTabs/TabsMore/TabsMore.vue.js +7 -0
  121. package/dist/components/HysTabs/TabsMore/TabsMore2.vue.js +133 -0
  122. package/dist/components/HysTabs/TabsPanels/TabsPanels.vue.js +161 -0
  123. package/dist/components/HysTabs/TabsPanels/TabsPanels2.vue.js +4 -0
  124. package/dist/components/HysTabs/TabsPrompts/TabsPrompts.vue.js +4 -0
  125. package/dist/components/HysTabs/TabsPrompts/TabsPrompts2.vue.js +88 -0
  126. package/dist/components/HysTabs/TabsSlot/TabsSlot.js +13 -0
  127. package/dist/components/HysTabs/TabsWorkbench/TabsWorkbench.vue.js +7 -0
  128. package/dist/components/HysTabs/TabsWorkbench/TabsWorkbench2.vue.js +687 -0
  129. package/dist/components/HysTabs/tabsConfig.js +35 -0
  130. package/dist/components/HysTabs/tabsItems.js +79 -0
  131. package/dist/components/HysTabs/tabsPersistence.js +118 -0
  132. package/dist/components/HysTabs/useHysRouteTabs.js +77 -0
  133. package/dist/components/HysTabs/useTabsDragGhost.js +47 -0
  134. package/dist/components/HysTabs/useTabsNav.js +127 -0
  135. package/dist/components/HysTabs/useTabsOverlays.js +52 -0
  136. package/dist/components/HysTabs/useTabsPanels.js +101 -0
  137. package/dist/components/HysTabs/useTabsPointer.js +131 -0
  138. package/dist/components/HysTabs/useTabsState.js +263 -0
  139. package/dist/composables/datePicker.js +153 -94
  140. package/dist/composables/datePickerModel.js +156 -0
  141. package/dist/composables/datePickerPanels.js +78 -0
  142. package/dist/composables/datePickerRules.js +166 -0
  143. package/dist/composables/floatingPosition.js +32 -13
  144. package/dist/composables/formLayout.js +20 -42
  145. package/dist/composables/popupSurfaceStyle.js +30 -0
  146. package/dist/composables/useContainerWidth.js +24 -0
  147. package/dist/composables/useDatePicker.js +274 -381
  148. package/dist/composables/useFloating.js +42 -41
  149. package/dist/composables/usePageVisibility.js +19 -0
  150. package/dist/composables/usePopupSurface.js +153 -162
  151. package/dist/composables/usePopupSurfaceInteractions.js +91 -90
  152. package/dist/composables/useSplitPaneDrag.js +29 -26
  153. package/dist/composables/useSvgInstanceId.js +15 -0
  154. package/dist/composables/useTable.js +321 -306
  155. package/dist/composables/useTabularRowNavigation.js +46 -0
  156. package/dist/index.js +229 -185
  157. package/dist/internal/MultiSplitPane.vue.js +246 -205
  158. package/dist/internal/PopupSurfacePanel.vue.js +2 -2
  159. package/dist/internal/PopupSurfacePanel2.vue.js +35 -30
  160. package/dist/style.css +1 -1
  161. package/dist/types/components/HysDataGrid/HysDataGrid.vue.d.ts +40 -2
  162. package/dist/types/components/HysDataGrid/gridColumnLayout.d.ts +22 -0
  163. package/dist/types/components/HysDataGrid/gridPresentation.d.ts +47 -0
  164. package/dist/types/components/HysDataGrid/useGridContextMenu.d.ts +14 -0
  165. package/dist/types/components/HysDatePicker/HysDatePicker.vue.d.ts +6 -9
  166. package/dist/types/components/HysDatePicker/HysDatePickerControl.vue.d.ts +12 -0
  167. package/dist/types/components/HysDatePicker/HysDatePickerPanel.vue.d.ts +6 -0
  168. package/dist/types/components/HysDateRangePicker/HysDateRangePicker.vue.d.ts +6 -9
  169. package/dist/types/components/HysDescriptions/HysDescriptions.vue.d.ts +20 -0
  170. package/dist/types/components/HysDescriptions/descriptionsTypes.d.ts +54 -0
  171. package/dist/types/components/HysForm/HysForm.vue.d.ts +1 -1
  172. package/dist/types/components/HysFormItem/HysFormItem.vue.d.ts +1 -1
  173. package/dist/types/components/HysIcon/HysIcon.vue.d.ts +76 -0
  174. package/dist/types/components/HysIcon/IconGraphic/IconGraphic.vue.d.ts +43 -0
  175. package/dist/types/components/HysIcon/IconPickerPanel/IconPickerPanel.vue.d.ts +17 -0
  176. package/dist/types/components/HysIcon/IconReferenceGraphic/IconReferenceGraphic.vue.d.ts +10 -0
  177. package/dist/types/components/HysIcon/IconTooltip/IconTooltip.vue.d.ts +11 -0
  178. package/dist/types/components/HysIcon/builtins/access.d.ts +15 -0
  179. package/dist/types/components/HysIcon/builtins/actions.d.ts +30 -0
  180. package/dist/types/components/HysIcon/builtins/business.d.ts +31 -0
  181. package/dist/types/components/HysIcon/builtins/communication.d.ts +27 -0
  182. package/dist/types/components/HysIcon/builtins/documents.d.ts +29 -0
  183. package/dist/types/components/HysIcon/builtins/extendedCatalog.d.ts +2 -0
  184. package/dist/types/components/HysIcon/builtins/iconInCategory.d.ts +2 -0
  185. package/dist/types/components/HysIcon/builtins/media.d.ts +24 -0
  186. package/dist/types/components/HysIcon/builtins/navigation.d.ts +30 -0
  187. package/dist/types/components/HysIcon/builtins/technology.d.ts +18 -0
  188. package/dist/types/components/HysIcon/iconBuiltins.d.ts +2 -0
  189. package/dist/types/components/HysIcon/iconConfig.d.ts +10 -0
  190. package/dist/types/components/HysIcon/iconRegistry.d.ts +5 -0
  191. package/dist/types/components/HysIcon/iconSafety.d.ts +8 -0
  192. package/dist/types/components/HysIcon/iconStyle.d.ts +6 -0
  193. package/dist/types/components/HysIcon/iconTypes.d.ts +192 -0
  194. package/dist/types/components/HysIcon/useIconResource.d.ts +14 -0
  195. package/dist/types/components/HysPopconfirm/HysPopconfirm.vue.d.ts +85 -0
  196. package/dist/types/components/HysPopconfirm/popconfirmTypes.d.ts +72 -0
  197. package/dist/types/components/HysPopconfirm/usePopconfirmAction.d.ts +6 -0
  198. package/dist/types/components/HysProgress/HysProgress.vue.d.ts +1 -1
  199. package/dist/types/components/HysResult/HysResult.vue.d.ts +22 -0
  200. package/dist/types/components/HysResult/resultTypes.d.ts +32 -0
  201. package/dist/types/components/HysSpace/HysSpace.vue.d.ts +15 -0
  202. package/dist/types/components/HysSpace/spaceItems.d.ts +9 -0
  203. package/dist/types/components/HysSpace/spaceTypes.d.ts +20 -0
  204. package/dist/types/components/HysSpin/HysSpin.vue.d.ts +84 -0
  205. package/dist/types/components/HysSpin/SpinGlyph/SpinGlyph.vue.d.ts +16 -0
  206. package/dist/types/components/HysSpin/SpinPortal/SpinPortal.vue.d.ts +21 -0
  207. package/dist/types/components/HysSpin/SpinPortal/spinTarget.d.ts +3 -0
  208. package/dist/types/components/HysSpin/spinCatalog.d.ts +122 -0
  209. package/dist/types/components/HysSpin/spinConfig.d.ts +10 -0
  210. package/dist/types/components/HysSpin/spinService.d.ts +7 -0
  211. package/dist/types/components/HysSpin/spinStyle.d.ts +5 -0
  212. package/dist/types/components/HysSpin/spinTypes.d.ts +133 -0
  213. package/dist/types/components/HysSpin/useHysSpinTask.d.ts +4 -0
  214. package/dist/types/components/HysSpin/useSpinFullscreen.d.ts +17 -0
  215. package/dist/types/components/HysSpin/useSpinVisibility.d.ts +10 -0
  216. package/dist/types/components/HysSplitPane/HysSplitPane.vue.d.ts +25 -2
  217. package/dist/types/components/HysSplitPane/splitPaneResize.d.ts +17 -0
  218. package/dist/types/components/HysTabPane/HysTabPane.vue.d.ts +11 -0
  219. package/dist/types/components/HysTable/HysTable.vue.d.ts +16 -10
  220. package/dist/types/components/HysTable/tableSearch.d.ts +2 -0
  221. package/dist/types/components/HysTabs/HysTabs.vue.d.ts +83 -74
  222. package/dist/types/components/HysTabs/TabsMore/TabsMore.vue.d.ts +14 -0
  223. package/dist/types/components/HysTabs/TabsPanels/TabsPanels.vue.d.ts +17 -0
  224. package/dist/types/components/HysTabs/TabsPrompts/TabsPrompts.vue.d.ts +7 -0
  225. package/dist/types/components/HysTabs/TabsSlot/TabsSlot.d.ts +9 -0
  226. package/dist/types/components/HysTabs/TabsWorkbench/TabsWorkbench.vue.d.ts +32 -0
  227. package/dist/types/components/HysTabs/tabsConfig.d.ts +4 -0
  228. package/dist/types/components/HysTabs/tabsItems.d.ts +14 -0
  229. package/dist/types/components/HysTabs/tabsPersistence.d.ts +6 -0
  230. package/dist/types/components/HysTabs/tabsTypes.d.ts +236 -0
  231. package/dist/types/components/HysTabs/useHysRouteTabs.d.ts +22 -0
  232. package/dist/types/components/HysTabs/useTabsDragGhost.d.ts +22 -0
  233. package/dist/types/components/HysTabs/useTabsNav.d.ts +20 -0
  234. package/dist/types/components/HysTabs/useTabsOverlays.d.ts +54 -0
  235. package/dist/types/components/HysTabs/useTabsPanels.d.ts +14 -0
  236. package/dist/types/components/HysTabs/useTabsPointer.d.ts +30 -0
  237. package/dist/types/components/HysTabs/useTabsState.d.ts +32 -0
  238. package/dist/types/components/HysTagInput/HysTagInput.vue.d.ts +2 -2
  239. package/dist/types/components/HysToast/toastPresentation.d.ts +1 -1
  240. package/dist/types/components/HysVirtualTable/HysVirtualTable.vue.d.ts +2 -2
  241. package/dist/types/composables/dataGrid.d.ts +34 -0
  242. package/dist/types/composables/datePicker.d.ts +14 -214
  243. package/dist/types/composables/datePickerModel.d.ts +63 -0
  244. package/dist/types/composables/datePickerPanels.d.ts +23 -0
  245. package/dist/types/composables/datePickerRules.d.ts +31 -0
  246. package/dist/types/composables/datePickerTypes.d.ts +277 -0
  247. package/dist/types/composables/floatingPosition.d.ts +1 -1
  248. package/dist/types/composables/formLayout.d.ts +1 -2
  249. package/dist/types/composables/popupSurfaceStyle.d.ts +7 -0
  250. package/dist/types/composables/table.d.ts +10 -1
  251. package/dist/types/composables/toastQueue.d.ts +4 -4
  252. package/dist/types/composables/toastQueueModel.d.ts +2 -2
  253. package/dist/types/composables/useColorPicker.d.ts +2 -4
  254. package/dist/types/composables/useContainerWidth.d.ts +2 -0
  255. package/dist/types/composables/useContextMenu.d.ts +2 -4
  256. package/dist/types/composables/useDatePicker.d.ts +20 -11
  257. package/dist/types/composables/useFloating.d.ts +4 -5
  258. package/dist/types/composables/usePageVisibility.d.ts +1 -0
  259. package/dist/types/composables/usePopupSurface.d.ts +9 -3
  260. package/dist/types/composables/usePopupSurfaceInteractions.d.ts +4 -2
  261. package/dist/types/composables/useSplitPaneDrag.d.ts +2 -2
  262. package/dist/types/composables/useSvgInstanceId.d.ts +1 -0
  263. package/dist/types/composables/useTable.d.ts +2 -0
  264. package/dist/types/composables/useTabularRowNavigation.d.ts +18 -0
  265. package/dist/types/index.d.ts +31 -3
  266. package/dist/types/internal/MultiSplitPane.vue.d.ts +10 -1
  267. package/dist/types/internal/PopupSurfacePanel.vue.d.ts +3 -0
  268. package/package.json +1 -1
@@ -0,0 +1,189 @@
1
+ import { iconInCategory as a } from "./iconInCategory.js";
2
+ const t = a("设备与网络"), s = {
3
+ monitor: t(
4
+ "显示器",
5
+ [
6
+ {
7
+ tag: "rect",
8
+ attrs: { width: "20", height: "14", x: "2", y: "3", rx: "2" }
9
+ },
10
+ { tag: "line", attrs: { x1: "8", x2: "16", y1: "21", y2: "21" } },
11
+ { tag: "line", attrs: { x1: "12", x2: "12", y1: "17", y2: "21" } }
12
+ ],
13
+ { keywords: ["桌面", "屏幕", "电脑"] }
14
+ ),
15
+ laptop: t(
16
+ "笔记本电脑",
17
+ [
18
+ {
19
+ tag: "path",
20
+ attrs: {
21
+ d: "M20 16V7a2 2 0 0 0-2-2H6a2 2 0 0 0-2 2v9m16 0H4m16 0 1.28 2.55a1 1 0 0 1-.9 1.45H3.62a1 1 0 0 1-.9-1.45L4 16"
22
+ }
23
+ }
24
+ ],
25
+ { keywords: ["电脑", "设备", "便携"] }
26
+ ),
27
+ tablet: t(
28
+ "平板电脑",
29
+ [
30
+ {
31
+ tag: "rect",
32
+ attrs: { width: "16", height: "20", x: "4", y: "2", rx: "2", ry: "2" }
33
+ },
34
+ { tag: "line", attrs: { x1: "12", x2: "12.01", y1: "18", y2: "18" } }
35
+ ],
36
+ { keywords: ["平板", "设备"] }
37
+ ),
38
+ smartphone: t(
39
+ "智能手机",
40
+ [
41
+ {
42
+ tag: "rect",
43
+ attrs: { width: "14", height: "20", x: "5", y: "2", rx: "2", ry: "2" }
44
+ },
45
+ { tag: "path", attrs: { d: "M12 18h.01" } }
46
+ ],
47
+ { keywords: ["移动端", "设备", "电话"] }
48
+ ),
49
+ battery: t(
50
+ "电池",
51
+ [
52
+ {
53
+ tag: "rect",
54
+ attrs: { width: "16", height: "10", x: "2", y: "7", rx: "2", ry: "2" }
55
+ },
56
+ { tag: "line", attrs: { x1: "22", x2: "22", y1: "11", y2: "13" } }
57
+ ],
58
+ { keywords: ["电量", "供电", "充电"] }
59
+ ),
60
+ "battery-charging": t(
61
+ "正在充电",
62
+ [
63
+ { tag: "path", attrs: { d: "M15 7h1a2 2 0 0 1 2 2v6a2 2 0 0 1-2 2h-2" } },
64
+ { tag: "path", attrs: { d: "M6 7H4a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2h1" } },
65
+ { tag: "path", attrs: { d: "m11 7-3 5h4l-3 5" } },
66
+ { tag: "line", attrs: { x1: "22", x2: "22", y1: "11", y2: "13" } }
67
+ ],
68
+ { keywords: ["电源", "电池", "供电"] }
69
+ ),
70
+ wifi: t(
71
+ "无线网络",
72
+ [
73
+ { tag: "path", attrs: { d: "M12 20h.01" } },
74
+ { tag: "path", attrs: { d: "M2 8.82a15 15 0 0 1 20 0" } },
75
+ { tag: "path", attrs: { d: "M5 12.859a10 10 0 0 1 14 0" } },
76
+ { tag: "path", attrs: { d: "M8.5 16.429a5 5 0 0 1 7 0" } }
77
+ ],
78
+ { keywords: ["联网", "无线", "热点"] }
79
+ ),
80
+ "wifi-off": t(
81
+ "无线网络断开",
82
+ [
83
+ { tag: "path", attrs: { d: "M12 20h.01" } },
84
+ { tag: "path", attrs: { d: "M8.5 16.429a5 5 0 0 1 7 0" } },
85
+ { tag: "path", attrs: { d: "M5 12.859a10 10 0 0 1 5.17-2.69" } },
86
+ { tag: "path", attrs: { d: "M19 12.859a10 10 0 0 0-2.007-1.523" } },
87
+ { tag: "path", attrs: { d: "M2 8.82a15 15 0 0 1 4.177-2.643" } },
88
+ { tag: "path", attrs: { d: "M22 8.82a15 15 0 0 0-11.288-3.764" } },
89
+ { tag: "path", attrs: { d: "m2 2 20 20" } }
90
+ ],
91
+ { keywords: ["断网", "离线", "无信号"] }
92
+ ),
93
+ signal: t(
94
+ "移动信号",
95
+ [
96
+ { tag: "path", attrs: { d: "M2 20h.01" } },
97
+ { tag: "path", attrs: { d: "M7 20v-4" } },
98
+ { tag: "path", attrs: { d: "M12 20v-8" } },
99
+ { tag: "path", attrs: { d: "M17 20V8" } },
100
+ { tag: "path", attrs: { d: "M22 4v16" } }
101
+ ],
102
+ { keywords: ["信号强度", "网络"] }
103
+ ),
104
+ bluetooth: t(
105
+ "蓝牙",
106
+ [{ tag: "path", attrs: { d: "m7 7 10 10-5 5V2l5 5L7 17" } }],
107
+ { keywords: ["无线连接", "设备"] }
108
+ ),
109
+ cloud: t(
110
+ "云端",
111
+ [
112
+ {
113
+ tag: "path",
114
+ attrs: { d: "M17.5 19H9a7 7 0 1 1 6.71-9h1.79a4.5 4.5 0 1 1 0 9Z" }
115
+ }
116
+ ],
117
+ { keywords: ["云服务", "远程"] }
118
+ ),
119
+ "cloud-upload": t(
120
+ "上传到云端",
121
+ [
122
+ { tag: "path", attrs: { d: "M12 13v8" } },
123
+ {
124
+ tag: "path",
125
+ attrs: {
126
+ d: "M4 14.899A7 7 0 1 1 15.71 8h1.79a4.5 4.5 0 0 1 2.5 8.242"
127
+ }
128
+ },
129
+ { tag: "path", attrs: { d: "m8 17 4-4 4 4" } }
130
+ ],
131
+ { keywords: ["网盘", "备份", "同步"] }
132
+ ),
133
+ "cloud-download": t(
134
+ "从云端下载",
135
+ [
136
+ { tag: "path", attrs: { d: "M12 13v8l-4-4" } },
137
+ { tag: "path", attrs: { d: "m12 21 4-4" } },
138
+ {
139
+ tag: "path",
140
+ attrs: {
141
+ d: "M4.393 15.269A7 7 0 1 1 15.71 8h1.79a4.5 4.5 0 0 1 2.436 8.284"
142
+ }
143
+ }
144
+ ],
145
+ { keywords: ["网盘", "取回", "同步"] }
146
+ ),
147
+ server: t(
148
+ "服务器",
149
+ [
150
+ {
151
+ tag: "rect",
152
+ attrs: { width: "20", height: "8", x: "2", y: "2", rx: "2", ry: "2" }
153
+ },
154
+ {
155
+ tag: "rect",
156
+ attrs: { width: "20", height: "8", x: "2", y: "14", rx: "2", ry: "2" }
157
+ },
158
+ { tag: "line", attrs: { x1: "6", x2: "6.01", y1: "6", y2: "6" } },
159
+ { tag: "line", attrs: { x1: "6", x2: "6.01", y1: "18", y2: "18" } }
160
+ ],
161
+ { keywords: ["后端", "主机", "机房"] }
162
+ ),
163
+ "hard-drive": t(
164
+ "硬盘",
165
+ [
166
+ { tag: "line", attrs: { x1: "22", x2: "2", y1: "12", y2: "12" } },
167
+ {
168
+ tag: "path",
169
+ attrs: {
170
+ d: "M5.45 5.11 2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z"
171
+ }
172
+ },
173
+ { tag: "line", attrs: { x1: "6", x2: "6.01", y1: "16", y2: "16" } },
174
+ { tag: "line", attrs: { x1: "10", x2: "10.01", y1: "16", y2: "16" } }
175
+ ],
176
+ { keywords: ["存储", "磁盘", "容量"] }
177
+ ),
178
+ terminal: t(
179
+ "终端",
180
+ [
181
+ { tag: "polyline", attrs: { points: "4 17 10 11 4 5" } },
182
+ { tag: "line", attrs: { x1: "12", x2: "20", y1: "19", y2: "19" } }
183
+ ],
184
+ { keywords: ["命令行", "控制台", "shell"] }
185
+ )
186
+ };
187
+ export {
188
+ s as devicesIcons
189
+ };
@@ -0,0 +1,228 @@
1
+ import { accountIcons as h } from "./builtins/access.js";
2
+ import { statusIcons as f, actionsIcons as d } from "./builtins/actions.js";
3
+ import { commerceIcons as u, dataIcons as v } from "./builtins/business.js";
4
+ import { timeIcons as M, communicationIcons as p } from "./builtins/communication.js";
5
+ import { editorIcons as g, filesIcons as y } from "./builtins/documents.js";
6
+ import { extendedBuiltinIcons as k } from "./builtins/extendedCatalog.js";
7
+ import { locationIcons as I, mediaIcons as b } from "./builtins/media.js";
8
+ import { directionsIcons as w, navigationIcons as Z } from "./builtins/navigation.js";
9
+ import { devicesIcons as C } from "./builtins/technology.js";
10
+ const r = (...l) => ({
11
+ type: "svg",
12
+ nodes: l
13
+ }), o = (l, a = {}) => ({ tag: "path", attrs: { d: l, ...a } }), t = (l, a, i, c = {}) => ({ tag: "circle", attrs: { cx: l, cy: a, r: i, ...c } }), e = (l, a, i, c = {}) => ({ source: r(o(l)), label: a, category: i, ...c }), n = "m12 2 3.1 6.3 7 .9-5.1 5 1.3 7-6.3-3.3-6.3 3.3 1.3-7-5.1-5 7-.9Z", m = "M20.8 8.8c0 4.1-8.8 9.2-8.8 9.2S3.2 12.9 3.2 8.8A4.7 4.7 0 0 1 12 6.5a4.7 4.7 0 0 1 8.8 2.3Z", s = "M3 7a2 2 0 0 1 2-2h5l2 2h7a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2Z", H = r(
14
+ {
15
+ tag: "defs",
16
+ children: [
17
+ {
18
+ tag: "linearGradient",
19
+ attrs: { id: "star", x2: "1", y2: "1" },
20
+ children: [
21
+ { tag: "stop", attrs: { offset: 0, "stop-color": "#4f81ff" } },
22
+ { tag: "stop", attrs: { offset: 1, "stop-color": "#a451ee" } }
23
+ ]
24
+ }
25
+ ]
26
+ },
27
+ o(n, { fill: "url(#star)", stroke: "none" })
28
+ ), z = {
29
+ namespace: "core",
30
+ version: "1",
31
+ icons: {
32
+ search: {
33
+ source: r(t(10.5, 10.5, 6), o("m16 16 4.5 4.5")),
34
+ label: "搜索",
35
+ category: "操作",
36
+ aliases: ["find"],
37
+ keywords: ["查找", "放大镜", "query"]
38
+ },
39
+ plus: e("M12 5v14M5 12h14", "添加", "操作", {
40
+ aliases: ["add"],
41
+ keywords: ["新增"]
42
+ }),
43
+ minus: e("M5 12h14", "减少", "操作"),
44
+ close: e("m6 6 12 12M18 6 6 18", "关闭", "操作", { aliases: ["x"] }),
45
+ check: e("m5 12 4.5 4.5L19 7", "勾选", "状态", {
46
+ aliases: ["done"],
47
+ keywords: ["完成", "确认"]
48
+ }),
49
+ success: {
50
+ source: r(t(12, 12, 9), o("m8 12 2.5 2.5L16 9")),
51
+ label: "成功",
52
+ category: "状态",
53
+ variants: {
54
+ filled: r(
55
+ t(12, 12, 10, { fill: "currentColor", stroke: "none" }),
56
+ o("m8 12 2.5 2.5L16 9", { stroke: "white" })
57
+ )
58
+ }
59
+ },
60
+ error: {
61
+ source: r(t(12, 12, 9), o("M12 8v5m0 3h.01")),
62
+ label: "错误",
63
+ category: "状态"
64
+ },
65
+ info: {
66
+ source: r(t(12, 12, 9), o("M12 11v5m0-8h.01")),
67
+ label: "信息",
68
+ category: "状态"
69
+ },
70
+ warning: e(
71
+ "M10.5 4.6a1.7 1.7 0 0 1 3 0l7.2 13A1.6 1.6 0 0 1 19.3 20H4.7a1.6 1.6 0 0 1-1.4-2.4ZM12 10v4m0 3h.01",
72
+ "警告",
73
+ "状态"
74
+ ),
75
+ help: {
76
+ source: r(
77
+ t(12, 12, 9),
78
+ o("M9.5 9a2.6 2.6 0 1 1 3.7 2.4c-1 .5-1.2 1-1.2 2.1m0 3h.01")
79
+ ),
80
+ label: "帮助",
81
+ category: "状态"
82
+ },
83
+ loader: e("M12 3a9 9 0 1 1-9 9", "加载", "状态", {
84
+ aliases: ["loading"]
85
+ }),
86
+ "arrow-right": e("M4 12h15m-6-6 6 6-6 6", "向右", "方向", {
87
+ directional: !0,
88
+ aliases: ["next"]
89
+ }),
90
+ "arrow-left": e("M20 12H5m6-6-6 6 6 6", "向左", "方向", {
91
+ directional: !0,
92
+ aliases: ["previous"]
93
+ }),
94
+ "arrow-up": e("M12 20V5m-6 6 6-6 6 6", "向上", "方向"),
95
+ "arrow-down": e("M12 4v15m-6-6 6 6 6-6", "向下", "方向"),
96
+ "chevron-right": e("m9 6 6 6-6 6", "右尖括号", "方向", {
97
+ directional: !0
98
+ }),
99
+ "chevron-down": e("m6 9 6 6 6-6", "下尖括号", "方向"),
100
+ home: e(
101
+ "m3 10 9-7 9 7v9a2 2 0 0 1-2 2h-4v-7H9v7H5a2 2 0 0 1-2-2Z",
102
+ "首页",
103
+ "导航"
104
+ ),
105
+ menu: e("M4 6h16M4 12h16M4 18h16", "菜单", "导航"),
106
+ user: {
107
+ source: r(
108
+ t(12, 8, 4),
109
+ o("M4 20v-2c0-2 2-4 4-4h8c2 0 4 2 4 4v2")
110
+ ),
111
+ label: "用户",
112
+ category: "导航"
113
+ },
114
+ settings: {
115
+ source: r(
116
+ t(12, 12, 3),
117
+ o(
118
+ "M12 2v3m0 14v3M2 12h3m14 0h3M5 5l2 2m10 10 2 2M5 19l2-2M17 7l2-2"
119
+ ),
120
+ t(12, 12, 7)
121
+ ),
122
+ label: "设置",
123
+ category: "操作"
124
+ },
125
+ refresh: e(
126
+ "M20 8a8 8 0 0 0-13-2L4 9m0-5v5h5m-5 7a8 8 0 0 0 13 2l3-3m0 5v-5h-5",
127
+ "刷新",
128
+ "操作"
129
+ ),
130
+ download: e("M12 3v12m-5-5 5 5 5-5M4 17v4h16v-4", "下载", "操作"),
131
+ upload: e("M12 16V4m-5 5 5-5 5 5M4 17v4h16v-4", "上传", "操作"),
132
+ file: e("M6 3h8l4 4v14H6Zm8 0v5h4M9 13h6m-6 4h6", "文件", "文件"),
133
+ folder: e(s, "文件夹", "文件", {
134
+ variants: {
135
+ filled: r(o(s, { fill: "currentColor" })),
136
+ duotone: r(
137
+ o(s, { fill: "currentColor", "fill-opacity": 0.25 }),
138
+ o("M3 10h18")
139
+ ),
140
+ multicolor: r(
141
+ o(s, { fill: "#f7bf58", stroke: "#ad6d12" }),
142
+ o("M3 10h18", { stroke: "#fff2cc" })
143
+ ),
144
+ flat: r(o(s, { fill: "currentColor", stroke: "none" })),
145
+ sharp: r(o("M3 5h7l2 2h9v12H3Z", { "stroke-linejoin": "miter" }))
146
+ }
147
+ }),
148
+ image: {
149
+ source: r(
150
+ { tag: "rect", attrs: { x: 3, y: 3, width: 18, height: 18, rx: 2 } },
151
+ t(8, 8, 2),
152
+ o("m4 17 5-5 4 4 3-3 5 5")
153
+ ),
154
+ label: "图片",
155
+ category: "文件"
156
+ },
157
+ copy: e("M8 8h12v12H8ZM4 16V4h12", "复制", "操作"),
158
+ link: e(
159
+ "M9 15l6-6m-8 4-2 2a3 3 0 1 0 4 4l3-3m0-8 3-3a3 3 0 1 1 4 4l-2 2",
160
+ "链接",
161
+ "操作"
162
+ ),
163
+ star: e(n, "收藏", "状态", {
164
+ keywords: ["favorite", "星星"],
165
+ variants: {
166
+ filled: r(o(n, { fill: "currentColor" })),
167
+ duotone: r(
168
+ o(n, { fill: "currentColor", "fill-opacity": 0.25 })
169
+ ),
170
+ gradient: H
171
+ }
172
+ }),
173
+ heart: e(m, "喜欢", "状态", {
174
+ variants: {
175
+ filled: r(o(m, { fill: "currentColor" })),
176
+ duotone: r(
177
+ o(m, { fill: "currentColor", "fill-opacity": 0.28 })
178
+ )
179
+ }
180
+ }),
181
+ cube: e(
182
+ "m12 3 8 4.5v9L12 21l-8-4.5v-9Zm0 9 8-4.5M12 12 4 7.5M12 12v9",
183
+ "立方体",
184
+ "形状",
185
+ {
186
+ variants: {
187
+ "3d": r(
188
+ o("m12 3 8 4.5-8 4.5-8-4.5Z", {
189
+ fill: "#86b4ff",
190
+ stroke: "none"
191
+ }),
192
+ o("m4 7.5 8 4.5v9l-8-4.5Z", { fill: "#527de0", stroke: "none" }),
193
+ o("m20 7.5-8 4.5v9l8-4.5Z", { fill: "#344da6", stroke: "none" })
194
+ )
195
+ }
196
+ }
197
+ ),
198
+ number: e("M9 4 6 20m12-16-3 16M4 9h16M3 15h16", "数字", "形状"),
199
+ "number-one": e("m9 7 3-3v16m-4 0h8", "数字 1", "形状"),
200
+ vue: {
201
+ source: r(
202
+ o("M2 4h4l6 10 6-10h4L12 21Z", { fill: "#42b883", stroke: "none" }),
203
+ o("M6 4h3l3 5 3-5h3l-6 10Z", { fill: "#35495e", stroke: "none" })
204
+ ),
205
+ label: "Vue",
206
+ category: "品牌",
207
+ keywords: ["vuejs", "框架"]
208
+ },
209
+ ...Z,
210
+ ...w,
211
+ ...d,
212
+ ...y,
213
+ ...h,
214
+ ...v,
215
+ ...u,
216
+ ...C,
217
+ ...p,
218
+ ...M,
219
+ ...b,
220
+ ...I,
221
+ ...g,
222
+ ...f,
223
+ ...k
224
+ }
225
+ };
226
+ export {
227
+ z as hysBuiltinIcons
228
+ };
@@ -0,0 +1,30 @@
1
+ import { getCurrentInstance as c, inject as l, computed as t, toValue as u, provide as f, shallowRef as y } from "vue";
2
+ import { hysIconRegistry as g } from "./iconRegistry.js";
3
+ const a = Symbol("HysIconConfig"), i = /* @__PURE__ */ new WeakMap(), o = y({});
4
+ function m(e) {
5
+ o.value = e;
6
+ }
7
+ function d() {
8
+ const e = c();
9
+ return (e && i.get(e)) ?? l(a, void 0) ?? {
10
+ registry: t(() => o.value.registry ?? g),
11
+ defaults: t(() => u(o.value.defaults) ?? {})
12
+ };
13
+ }
14
+ function I(e) {
15
+ const n = d(), r = {
16
+ registry: t(() => e.registry ?? n.registry.value),
17
+ defaults: t(() => ({
18
+ ...n.defaults.value,
19
+ ...u(e.defaults)
20
+ }))
21
+ };
22
+ f(a, r);
23
+ const s = c();
24
+ s && i.set(s, r);
25
+ }
26
+ export {
27
+ m as configureHysIcon,
28
+ I as provideHysIcons,
29
+ d as useIconConfig
30
+ };
@@ -0,0 +1,183 @@
1
+ import { shallowRef as P, readonly as x } from "vue";
2
+ import { hysBuiltinIcons as F } from "./iconBuiltins.js";
3
+ import { iconAssetUrl as M } from "./iconSafety.js";
4
+ const q = /^[a-z0-9][a-z0-9._-]{0,95}$/;
5
+ function y(a) {
6
+ const s = a.trim().toLowerCase();
7
+ if (!q.test(s))
8
+ throw new Error("Invalid icon identifier: " + a);
9
+ return s;
10
+ }
11
+ function U(a) {
12
+ const s = a.trim().toLowerCase();
13
+ return s.includes(":") ? s : "core:" + s;
14
+ }
15
+ function j(a) {
16
+ return !a || typeof a != "object" || !("type" in a) ? !1 : ["svg", "sprite", "image", "font", "text", "component"].includes(
17
+ String(a.type)
18
+ );
19
+ }
20
+ function W(a, s) {
21
+ let p = 0;
22
+ for (const l of a)
23
+ if (l === s[p] && ++p === s.length) return !0;
24
+ return !1;
25
+ }
26
+ function D(a, s, p) {
27
+ return a.includes(s) ? 0 : a.some((l) => l.startsWith(s)) ? 1 : a.some((l) => l.includes(s)) ? 2 : p && a.some((l) => W(l, s)) ? 3 : 1 / 0;
28
+ }
29
+ function N(a = {}) {
30
+ let s = /* @__PURE__ */ new Map(), p = /* @__PURE__ */ new Map();
31
+ const l = P(0), g = /* @__PURE__ */ new WeakMap(), v = /* @__PURE__ */ new WeakMap(), m = /* @__PURE__ */ new Map();
32
+ function k(n) {
33
+ const t = U(n);
34
+ return s.get(t) ?? s.get(p.get(t) ?? "");
35
+ }
36
+ function I(n, t) {
37
+ const e = /* @__PURE__ */ new Map();
38
+ for (const { record: r } of n.values())
39
+ for (const o of r.aliases) {
40
+ const i = n.has(o) || e.has(o);
41
+ if (i && t === "error")
42
+ throw new Error("Duplicate icon alias: " + o);
43
+ !n.has(o) && (!i || t === "replace") && e.set(o, r.name);
44
+ }
45
+ s = n, p = e, l.value++;
46
+ }
47
+ function b(n, t = "error") {
48
+ const e = y(n.namespace), r = new Map(s);
49
+ for (const [o, i] of Object.entries(n.icons)) {
50
+ const c = y(o), f = e + ":" + c;
51
+ if (r.has(f)) {
52
+ if (t === "error")
53
+ throw new Error("Duplicate icon name: " + f);
54
+ if (t === "keep") continue;
55
+ r.delete(f);
56
+ }
57
+ const u = typeof i == "function" || j(i) ? { source: i } : i;
58
+ if (!u.source && !Object.keys(u.variants ?? {}).length)
59
+ throw new Error("Icon requires a source: " + f);
60
+ const d = {
61
+ name: f,
62
+ namespace: e,
63
+ version: n.version,
64
+ label: u.label ?? c,
65
+ category: u.category ?? "其他",
66
+ keywords: u.keywords ?? [],
67
+ aliases: [
68
+ ...new Set(
69
+ (u.aliases ?? []).map((w) => e + ":" + y(w))
70
+ )
71
+ ],
72
+ variants: [
73
+ .../* @__PURE__ */ new Set([
74
+ ...u.source ? ["outline"] : [],
75
+ ...typeof u.source == "object" && u.source.type === "svg" ? ["round", "sharp", "bold", "thin"] : [],
76
+ ...Object.keys(u.variants ?? {})
77
+ ])
78
+ ],
79
+ directional: u.directional === !0
80
+ }, h = [f, c, ...d.aliases];
81
+ h.push(
82
+ ...d.aliases.map((w) => w.slice(e.length + 1))
83
+ ), r.set(f, {
84
+ entry: u,
85
+ record: d,
86
+ identifiers: h,
87
+ searchFields: [...h, d.label, ...d.keywords].map(
88
+ (w) => w.toLowerCase()
89
+ )
90
+ });
91
+ }
92
+ I(r, t);
93
+ }
94
+ function L(n) {
95
+ const t = y(n);
96
+ I(
97
+ new Map(
98
+ [...s].filter(([, e]) => e.record.namespace !== t)
99
+ ),
100
+ "keep"
101
+ );
102
+ }
103
+ function z(n, t = "outline") {
104
+ var r, o;
105
+ const e = (r = k(n)) == null ? void 0 : r.entry;
106
+ return e && ((e.variants && Object.hasOwn(e.variants, t) ? e.variants[t] : void 0) ?? e.source ?? ((o = e.variants) == null ? void 0 : o.outline) ?? Object.values(e.variants ?? {})[0]);
107
+ }
108
+ function R(n, t) {
109
+ const e = z(n, t);
110
+ return typeof e == "function" ? g.get(e) : e;
111
+ }
112
+ async function E(n, t) {
113
+ const e = z(n, t);
114
+ if (!e) throw new Error("Icon not found: " + n);
115
+ if (typeof e != "function") return e;
116
+ const r = g.get(e);
117
+ if (r) return r;
118
+ const o = v.get(e);
119
+ if (o) return o;
120
+ const i = Promise.resolve().then(e).then((c) => {
121
+ const f = c && "default" in c ? c.default : c;
122
+ if (!j(f)) throw new Error("Invalid icon source: " + n);
123
+ return g.set(e, f), f;
124
+ }).finally(() => v.delete(e));
125
+ return v.set(e, i), i;
126
+ }
127
+ async function S(n, t) {
128
+ if (n.type === "sprite" && !M(n.href, t, !0))
129
+ throw new Error("Invalid icon sprite URL");
130
+ if (n.type !== "image") return n;
131
+ const e = M(n.src, t);
132
+ if (!e) throw new Error("Invalid icon image URL");
133
+ if (typeof Image > "u") return n;
134
+ let r = m.get(e);
135
+ return r || (r = new Promise((o, i) => {
136
+ const c = new Image();
137
+ c.referrerPolicy = "no-referrer", c.onload = () => o(), c.onerror = () => i(new Error("Failed to preload icon image")), c.src = e;
138
+ }).catch((o) => {
139
+ throw m.delete(e), o;
140
+ }), m.set(e, r), m.size > 150 && m.delete(m.keys().next().value)), await r, n;
141
+ }
142
+ function C() {
143
+ return [...s.values()].map(({ record: n }) => n);
144
+ }
145
+ function O(n, t = {}) {
146
+ const e = n.trim().toLowerCase(), r = e ? e.split(/\s+/) : [], o = [];
147
+ for (const { record: i, identifiers: c, searchFields: f } of s.values()) {
148
+ if (t.namespace && i.namespace !== t.namespace || t.category && i.category !== t.category || t.variant && !i.variants.includes(t.variant))
149
+ continue;
150
+ const u = c.includes(e) ? -1 : r.reduce(
151
+ (d, h) => d + D(f, h, t.fuzzy !== !1),
152
+ 0
153
+ );
154
+ Number.isFinite(u) && o.push({ record: i, rank: u });
155
+ }
156
+ return r.length && o.sort((i, c) => i.rank - c.rank), o.map(({ record: i }) => i);
157
+ }
158
+ return a.builtins !== !1 && b(F), {
159
+ revision: x(l),
160
+ register: b,
161
+ unregister: L,
162
+ resolve: (n) => {
163
+ var t;
164
+ return (t = k(n)) == null ? void 0 : t.record;
165
+ },
166
+ get: R,
167
+ load: E,
168
+ list: C,
169
+ search: O,
170
+ preload: (n, t, e) => Promise.allSettled(
171
+ n.map(
172
+ (r) => E(r, t).then(
173
+ (o) => S(o, e)
174
+ )
175
+ )
176
+ )
177
+ };
178
+ }
179
+ const _ = N();
180
+ export {
181
+ N as createHysIconRegistry,
182
+ _ as hysIconRegistry
183
+ };