zcw-shared 1.2.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 (383) hide show
  1. package/README.md +610 -0
  2. package/assets/logo-colorful.svg +18 -0
  3. package/assets/logo-name.svg +7 -0
  4. package/assets/logo-transparent.svg +14 -0
  5. package/assets/logo.svg +8 -0
  6. package/dist/functions/ag-grid/generateLicense.d.ts +4 -0
  7. package/dist/functions/ag-grid/generateLicense.js +12 -0
  8. package/dist/functions/ag-grid/generateLicense.js.map +1 -0
  9. package/dist/functions/altool/createAltoolClient.d.ts +21 -0
  10. package/dist/functions/altool/createAltoolClient.js +59 -0
  11. package/dist/functions/altool/createAltoolClient.js.map +1 -0
  12. package/dist/functions/altool/getAppInfo.d.ts +13 -0
  13. package/dist/functions/altool/getAppInfo.js +92 -0
  14. package/dist/functions/altool/getAppInfo.js.map +1 -0
  15. package/dist/functions/altool/index.d.ts +10 -0
  16. package/dist/functions/altool/index.js +6 -0
  17. package/dist/functions/altool/index.js.map +1 -0
  18. package/dist/functions/altool/isApiKeyAuth.d.ts +2 -0
  19. package/dist/functions/altool/isApiKeyAuth.js +4 -0
  20. package/dist/functions/altool/isApiKeyAuth.js.map +1 -0
  21. package/dist/functions/altool/isCredentialsAuth.d.ts +2 -0
  22. package/dist/functions/altool/isCredentialsAuth.js +4 -0
  23. package/dist/functions/altool/isCredentialsAuth.js.map +1 -0
  24. package/dist/functions/altool/types.d.ts +26 -0
  25. package/dist/functions/altool/types.js +7 -0
  26. package/dist/functions/altool/types.js.map +1 -0
  27. package/dist/functions/altool/uploadApp.d.ts +6 -0
  28. package/dist/functions/altool/uploadApp.js +36 -0
  29. package/dist/functions/altool/uploadApp.js.map +1 -0
  30. package/dist/functions/altool/validateApp.d.ts +17 -0
  31. package/dist/functions/altool/validateApp.js +59 -0
  32. package/dist/functions/altool/validateApp.js.map +1 -0
  33. package/dist/functions/base64/strToBase64.d.ts +2 -0
  34. package/dist/functions/base64/strToBase64.js +6 -0
  35. package/dist/functions/base64/strToBase64.js.map +1 -0
  36. package/dist/functions/color-converter/COLOR_PATTERNS.d.ts +2 -0
  37. package/dist/functions/color-converter/COLOR_PATTERNS.js +9 -0
  38. package/dist/functions/color-converter/COLOR_PATTERNS.js.map +1 -0
  39. package/dist/functions/color-converter/colorPatterns.d.ts +4 -0
  40. package/dist/functions/color-converter/colorPatterns.js +41 -0
  41. package/dist/functions/color-converter/colorPatterns.js.map +1 -0
  42. package/dist/functions/color-converter/convertColor.d.ts +6 -0
  43. package/dist/functions/color-converter/convertColor.js +238 -0
  44. package/dist/functions/color-converter/convertColor.js.map +1 -0
  45. package/dist/functions/color-converter/detectColorFormat.d.ts +2 -0
  46. package/dist/functions/color-converter/detectColorFormat.js +19 -0
  47. package/dist/functions/color-converter/detectColorFormat.js.map +1 -0
  48. package/dist/functions/color-converter/getColorPatterns.d.ts +2 -0
  49. package/dist/functions/color-converter/getColorPatterns.js +11 -0
  50. package/dist/functions/color-converter/getColorPatterns.js.map +1 -0
  51. package/dist/functions/color-converter/getNamedColorMap.d.ts +2 -0
  52. package/dist/functions/color-converter/getNamedColorMap.js +19 -0
  53. package/dist/functions/color-converter/getNamedColorMap.js.map +1 -0
  54. package/dist/functions/color-converter/hexToRgb.d.ts +2 -0
  55. package/dist/functions/color-converter/hexToRgb.js +42 -0
  56. package/dist/functions/color-converter/hexToRgb.js.map +1 -0
  57. package/dist/functions/color-converter/hslToRgb.d.ts +2 -0
  58. package/dist/functions/color-converter/hslToRgb.js +78 -0
  59. package/dist/functions/color-converter/hslToRgb.js.map +1 -0
  60. package/dist/functions/color-converter/hueToRgb.d.ts +1 -0
  61. package/dist/functions/color-converter/hueToRgb.js +14 -0
  62. package/dist/functions/color-converter/hueToRgb.js.map +1 -0
  63. package/dist/functions/color-converter/isColorValue.d.ts +2 -0
  64. package/dist/functions/color-converter/isColorValue.js +79 -0
  65. package/dist/functions/color-converter/isColorValue.js.map +1 -0
  66. package/dist/functions/color-converter/normalizeColor.d.ts +1 -0
  67. package/dist/functions/color-converter/normalizeColor.js +49 -0
  68. package/dist/functions/color-converter/normalizeColor.js.map +1 -0
  69. package/dist/functions/color-converter/parseColorString.d.ts +15 -0
  70. package/dist/functions/color-converter/parseColorString.js +116 -0
  71. package/dist/functions/color-converter/parseColorString.js.map +1 -0
  72. package/dist/functions/color-converter/rgbToHex.d.ts +2 -0
  73. package/dist/functions/color-converter/rgbToHex.js +65 -0
  74. package/dist/functions/color-converter/rgbToHex.js.map +1 -0
  75. package/dist/functions/color-converter/standardizeColor.d.ts +1 -0
  76. package/dist/functions/color-converter/standardizeColor.js +147 -0
  77. package/dist/functions/color-converter/standardizeColor.js.map +1 -0
  78. package/dist/functions/debug/createDebugger.d.ts +20 -0
  79. package/dist/functions/debug/createDebugger.js +79 -0
  80. package/dist/functions/debug/createDebugger.js.map +1 -0
  81. package/dist/functions/desensitize/desensitizeName.d.ts +1 -0
  82. package/dist/functions/desensitize/desensitizeName.js +8 -0
  83. package/dist/functions/desensitize/desensitizeName.js.map +1 -0
  84. package/dist/functions/desensitize/desensitizePhone.d.ts +1 -0
  85. package/dist/functions/desensitize/desensitizePhone.js +8 -0
  86. package/dist/functions/desensitize/desensitizePhone.js.map +1 -0
  87. package/dist/functions/dom/detectOverflow.d.ts +8 -0
  88. package/dist/functions/dom/detectOverflow.js +17 -0
  89. package/dist/functions/dom/detectOverflow.js.map +1 -0
  90. package/dist/functions/dom/getElementRect.d.ts +3 -0
  91. package/dist/functions/dom/getElementRect.js +14 -0
  92. package/dist/functions/dom/getElementRect.js.map +1 -0
  93. package/dist/functions/dom/getRelativePosition.d.ts +3 -0
  94. package/dist/functions/dom/getRelativePosition.js +14 -0
  95. package/dist/functions/dom/getRelativePosition.js.map +1 -0
  96. package/dist/functions/dom/getViewportRect.d.ts +3 -0
  97. package/dist/functions/dom/getViewportRect.js +15 -0
  98. package/dist/functions/dom/getViewportRect.js.map +1 -0
  99. package/dist/functions/dom/getViewportSize.d.ts +5 -0
  100. package/dist/functions/dom/getViewportSize.js +7 -0
  101. package/dist/functions/dom/getViewportSize.js.map +1 -0
  102. package/dist/functions/image/generateMacIcons.d.ts +6 -0
  103. package/dist/functions/image/generateMacIcons.js +15 -0
  104. package/dist/functions/image/generateMacIcons.js.map +1 -0
  105. package/dist/functions/image/generateMacTrayIcon.d.ts +7 -0
  106. package/dist/functions/image/generateMacTrayIcon.js +15 -0
  107. package/dist/functions/image/generateMacTrayIcon.js.map +1 -0
  108. package/dist/functions/image/generatePaddedImage.d.ts +3 -0
  109. package/dist/functions/image/generatePaddedImage.js +14 -0
  110. package/dist/functions/image/generatePaddedImage.js.map +1 -0
  111. package/dist/functions/image/generatePwaIcons.d.ts +6 -0
  112. package/dist/functions/image/generatePwaIcons.js +15 -0
  113. package/dist/functions/image/generatePwaIcons.js.map +1 -0
  114. package/dist/functions/image/generateRoundedImage.d.ts +3 -0
  115. package/dist/functions/image/generateRoundedImage.js +17 -0
  116. package/dist/functions/image/generateRoundedImage.js.map +1 -0
  117. package/dist/functions/ipc/dispatchIpcRequest.d.ts +6 -0
  118. package/dist/functions/ipc/dispatchIpcRequest.js +10 -0
  119. package/dist/functions/ipc/dispatchIpcRequest.js.map +1 -0
  120. package/dist/functions/software/buildPathExecutables.d.ts +1 -0
  121. package/dist/functions/software/buildPathExecutables.js +4 -0
  122. package/dist/functions/software/buildPathExecutables.js.map +1 -0
  123. package/dist/functions/software/buildSoftwarePaths.d.ts +2 -0
  124. package/dist/functions/software/buildSoftwarePaths.js +22 -0
  125. package/dist/functions/software/buildSoftwarePaths.js.map +1 -0
  126. package/dist/functions/software/createConfigGenerator.d.ts +8 -0
  127. package/dist/functions/software/createConfigGenerator.js +13 -0
  128. package/dist/functions/software/createConfigGenerator.js.map +1 -0
  129. package/dist/functions/software/detectPlatform.d.ts +2 -0
  130. package/dist/functions/software/detectPlatform.js +4 -0
  131. package/dist/functions/software/detectPlatform.js.map +1 -0
  132. package/dist/functions/software/find.d.ts +2 -0
  133. package/dist/functions/software/find.js +12 -0
  134. package/dist/functions/software/find.js.map +1 -0
  135. package/dist/functions/software/findSoftware.d.ts +14 -0
  136. package/dist/functions/software/findSoftware.js +29 -0
  137. package/dist/functions/software/findSoftware.js.map +1 -0
  138. package/dist/functions/software/findSoftwareWithGenerator.d.ts +3 -0
  139. package/dist/functions/software/findSoftwareWithGenerator.js +8 -0
  140. package/dist/functions/software/findSoftwareWithGenerator.js.map +1 -0
  141. package/dist/functions/software/getConfigGenerator.d.ts +2 -0
  142. package/dist/functions/software/getConfigGenerator.js +10 -0
  143. package/dist/functions/software/getConfigGenerator.js.map +1 -0
  144. package/dist/functions/software/getEnvironmentSoftwarePath.d.ts +1 -0
  145. package/dist/functions/software/getEnvironmentSoftwarePath.js +4 -0
  146. package/dist/functions/software/getEnvironmentSoftwarePath.js.map +1 -0
  147. package/dist/functions/software/getSupportedSoftware.d.ts +1 -0
  148. package/dist/functions/software/getSupportedSoftware.js +5 -0
  149. package/dist/functions/software/getSupportedSoftware.js.map +1 -0
  150. package/dist/functions/software/parseEnvironmentPaths.d.ts +1 -0
  151. package/dist/functions/software/parseEnvironmentPaths.js +7 -0
  152. package/dist/functions/software/parseEnvironmentPaths.js.map +1 -0
  153. package/dist/functions/software/softwareConfigs.d.ts +2 -0
  154. package/dist/functions/software/softwareConfigs.js +148 -0
  155. package/dist/functions/software/softwareConfigs.js.map +1 -0
  156. package/dist/functions/software/softwareNameMap.d.ts +1 -0
  157. package/dist/functions/software/softwareNameMap.js +9 -0
  158. package/dist/functions/software/softwareNameMap.js.map +1 -0
  159. package/dist/functions/software/types.d.ts +11 -0
  160. package/dist/functions/software/types.js +2 -0
  161. package/dist/functions/software/types.js.map +1 -0
  162. package/dist/functions/string/camelCase.d.ts +1 -0
  163. package/dist/functions/string/camelCase.js +8 -0
  164. package/dist/functions/string/camelCase.js.map +1 -0
  165. package/dist/functions/string/capitalize.d.ts +1 -0
  166. package/dist/functions/string/capitalize.js +6 -0
  167. package/dist/functions/string/capitalize.js.map +1 -0
  168. package/dist/functions/string/escape.d.ts +1 -0
  169. package/dist/functions/string/escape.js +13 -0
  170. package/dist/functions/string/escape.js.map +1 -0
  171. package/dist/functions/string/kebabCase.d.ts +1 -0
  172. package/dist/functions/string/kebabCase.js +10 -0
  173. package/dist/functions/string/kebabCase.js.map +1 -0
  174. package/dist/functions/string/levenshtein.d.ts +1 -0
  175. package/dist/functions/string/levenshtein.js +27 -0
  176. package/dist/functions/string/levenshtein.js.map +1 -0
  177. package/dist/functions/string/mask.d.ts +1 -0
  178. package/dist/functions/string/mask.js +40 -0
  179. package/dist/functions/string/mask.js.map +1 -0
  180. package/dist/functions/string/normalize.d.ts +8 -0
  181. package/dist/functions/string/normalize.js +37 -0
  182. package/dist/functions/string/normalize.js.map +1 -0
  183. package/dist/functions/string/padEnd.d.ts +1 -0
  184. package/dist/functions/string/padEnd.js +8 -0
  185. package/dist/functions/string/padEnd.js.map +1 -0
  186. package/dist/functions/string/padStart.d.ts +1 -0
  187. package/dist/functions/string/padStart.js +8 -0
  188. package/dist/functions/string/padStart.js.map +1 -0
  189. package/dist/functions/string/palindrome.d.ts +3 -0
  190. package/dist/functions/string/palindrome.js +15 -0
  191. package/dist/functions/string/palindrome.js.map +1 -0
  192. package/dist/functions/string/pascalCase.d.ts +1 -0
  193. package/dist/functions/string/pascalCase.js +8 -0
  194. package/dist/functions/string/pascalCase.js.map +1 -0
  195. package/dist/functions/string/similarity.d.ts +1 -0
  196. package/dist/functions/string/similarity.js +38 -0
  197. package/dist/functions/string/similarity.js.map +1 -0
  198. package/dist/functions/string/snakeCase.d.ts +1 -0
  199. package/dist/functions/string/snakeCase.js +10 -0
  200. package/dist/functions/string/snakeCase.js.map +1 -0
  201. package/dist/functions/string/template.d.ts +4 -0
  202. package/dist/functions/string/template.js +21 -0
  203. package/dist/functions/string/template.js.map +1 -0
  204. package/dist/functions/string/unescape.d.ts +1 -0
  205. package/dist/functions/string/unescape.js +13 -0
  206. package/dist/functions/string/unescape.js.map +1 -0
  207. package/dist/functions/string/wordCount.d.ts +5 -0
  208. package/dist/functions/string/wordCount.js +11 -0
  209. package/dist/functions/string/wordCount.js.map +1 -0
  210. package/dist/functions/tencent-cloud/getSecret.d.ts +7 -0
  211. package/dist/functions/tencent-cloud/getSecret.js +19 -0
  212. package/dist/functions/tencent-cloud/getSecret.js.map +1 -0
  213. package/dist/functions/uniapp/app-plus/androidProjectConfigSteps.d.ts +13 -0
  214. package/dist/functions/uniapp/app-plus/androidProjectConfigSteps.js +175 -0
  215. package/dist/functions/uniapp/app-plus/androidProjectConfigSteps.js.map +1 -0
  216. package/dist/functions/uniapp/app-plus/androidProjectStrategy.d.ts +33 -0
  217. package/dist/functions/uniapp/app-plus/androidProjectStrategy.js +60 -0
  218. package/dist/functions/uniapp/app-plus/androidProjectStrategy.js.map +1 -0
  219. package/dist/functions/uniapp/app-plus/buildAndroidApp.d.ts +2 -0
  220. package/dist/functions/uniapp/app-plus/buildAndroidApp.js +75 -0
  221. package/dist/functions/uniapp/app-plus/buildAndroidApp.js.map +1 -0
  222. package/dist/functions/uniapp/app-plus/buildAndroidProject.d.ts +3 -0
  223. package/dist/functions/uniapp/app-plus/buildAndroidProject.js +60 -0
  224. package/dist/functions/uniapp/app-plus/buildAndroidProject.js.map +1 -0
  225. package/dist/functions/uniapp/app-plus/configureAndroidManifest.d.ts +5 -0
  226. package/dist/functions/uniapp/app-plus/configureAndroidManifest.js +51 -0
  227. package/dist/functions/uniapp/app-plus/configureAndroidManifest.js.map +1 -0
  228. package/dist/functions/uniapp/app-plus/configureAndroidProject.d.ts +3 -0
  229. package/dist/functions/uniapp/app-plus/configureAndroidProject.js +63 -0
  230. package/dist/functions/uniapp/app-plus/configureAndroidProject.js.map +1 -0
  231. package/dist/functions/uniapp/app-plus/configureBuildGradle.d.ts +9 -0
  232. package/dist/functions/uniapp/app-plus/configureBuildGradle.js +57 -0
  233. package/dist/functions/uniapp/app-plus/configureBuildGradle.js.map +1 -0
  234. package/dist/functions/uniapp/app-plus/configureDcloudControl.d.ts +5 -0
  235. package/dist/functions/uniapp/app-plus/configureDcloudControl.js +34 -0
  236. package/dist/functions/uniapp/app-plus/configureDcloudControl.js.map +1 -0
  237. package/dist/functions/uniapp/app-plus/configureStrings.d.ts +5 -0
  238. package/dist/functions/uniapp/app-plus/configureStrings.js +42 -0
  239. package/dist/functions/uniapp/app-plus/configureStrings.js.map +1 -0
  240. package/dist/functions/uniapp/app-plus/copyAppResources.d.ts +8 -0
  241. package/dist/functions/uniapp/app-plus/copyAppResources.js +25 -0
  242. package/dist/functions/uniapp/app-plus/copyAppResources.js.map +1 -0
  243. package/dist/functions/uniapp/app-plus/copyDirectory.d.ts +2 -0
  244. package/dist/functions/uniapp/app-plus/copyDirectory.js +18 -0
  245. package/dist/functions/uniapp/app-plus/copyDirectory.js.map +1 -0
  246. package/dist/functions/uniapp/app-plus/generateUniAppResources.d.ts +2 -0
  247. package/dist/functions/uniapp/app-plus/generateUniAppResources.js +35 -0
  248. package/dist/functions/uniapp/app-plus/generateUniAppResources.js.map +1 -0
  249. package/dist/functions/uniapp/app-plus/parseManifest.d.ts +14 -0
  250. package/dist/functions/uniapp/app-plus/parseManifest.js +44 -0
  251. package/dist/functions/uniapp/app-plus/parseManifest.js.map +1 -0
  252. package/dist/functions/uniapp/app-plus/validateOptions.d.ts +3 -0
  253. package/dist/functions/uniapp/app-plus/validateOptions.js +10 -0
  254. package/dist/functions/uniapp/app-plus/validateOptions.js.map +1 -0
  255. package/dist/functions/uniapp/waitForPages.d.ts +2 -0
  256. package/dist/functions/uniapp/waitForPages.js +19 -0
  257. package/dist/functions/uniapp/waitForPages.js.map +1 -0
  258. package/dist/functions/utils/compose.d.ts +1 -0
  259. package/dist/functions/utils/compose.js +10 -0
  260. package/dist/functions/utils/compose.js.map +1 -0
  261. package/dist/functions/utils/cond.d.ts +1 -0
  262. package/dist/functions/utils/cond.js +15 -0
  263. package/dist/functions/utils/cond.js.map +1 -0
  264. package/dist/functions/utils/curry.d.ts +1 -0
  265. package/dist/functions/utils/curry.js +13 -0
  266. package/dist/functions/utils/curry.js.map +1 -0
  267. package/dist/functions/utils/debounce.d.ts +1 -0
  268. package/dist/functions/utils/debounce.js +13 -0
  269. package/dist/functions/utils/debounce.js.map +1 -0
  270. package/dist/functions/utils/evolve.d.ts +3 -0
  271. package/dist/functions/utils/evolve.js +15 -0
  272. package/dist/functions/utils/evolve.js.map +1 -0
  273. package/dist/functions/utils/flow.d.ts +1 -0
  274. package/dist/functions/utils/flow.js +10 -0
  275. package/dist/functions/utils/flow.js.map +1 -0
  276. package/dist/functions/utils/isType.d.ts +11 -0
  277. package/dist/functions/utils/isType.js +30 -0
  278. package/dist/functions/utils/isType.js.map +1 -0
  279. package/dist/functions/utils/memoize.d.ts +1 -0
  280. package/dist/functions/utils/memoize.js +13 -0
  281. package/dist/functions/utils/memoize.js.map +1 -0
  282. package/dist/functions/utils/once.d.ts +1 -0
  283. package/dist/functions/utils/once.js +13 -0
  284. package/dist/functions/utils/once.js.map +1 -0
  285. package/dist/functions/utils/partial.d.ts +1 -0
  286. package/dist/functions/utils/partial.js +13 -0
  287. package/dist/functions/utils/partial.js.map +1 -0
  288. package/dist/functions/utils/pipe.d.ts +1 -0
  289. package/dist/functions/utils/pipe.js +10 -0
  290. package/dist/functions/utils/pipe.js.map +1 -0
  291. package/dist/functions/utils/retryWithBackoff.d.ts +9 -0
  292. package/dist/functions/utils/retryWithBackoff.js +30 -0
  293. package/dist/functions/utils/retryWithBackoff.js.map +1 -0
  294. package/dist/functions/utils/tap.d.ts +1 -0
  295. package/dist/functions/utils/tap.js +14 -0
  296. package/dist/functions/utils/tap.js.map +1 -0
  297. package/dist/functions/utils/throttle.d.ts +1 -0
  298. package/dist/functions/utils/throttle.js +11 -0
  299. package/dist/functions/utils/throttle.js.map +1 -0
  300. package/dist/functions/utils/until.d.ts +1 -0
  301. package/dist/functions/utils/until.js +10 -0
  302. package/dist/functions/utils/until.js.map +1 -0
  303. package/dist/functions/utils/validate.d.ts +8 -0
  304. package/dist/functions/utils/validate.js +45 -0
  305. package/dist/functions/utils/validate.js.map +1 -0
  306. package/dist/functions/vue/dynamicMount.d.ts +15 -0
  307. package/dist/functions/vue/dynamicMount.js +23 -0
  308. package/dist/functions/vue/dynamicMount.js.map +1 -0
  309. package/dist/functions/vue/isVNode.d.ts +2 -0
  310. package/dist/functions/vue/isVNode.js +4 -0
  311. package/dist/functions/vue/isVNode.js.map +1 -0
  312. package/dist/functions/vue/isVueComponent.d.ts +2 -0
  313. package/dist/functions/vue/isVueComponent.js +6 -0
  314. package/dist/functions/vue/isVueComponent.js.map +1 -0
  315. package/dist/functions/wechat/miniapp/downloadFile.d.ts +2 -0
  316. package/dist/functions/wechat/miniapp/downloadFile.js +39 -0
  317. package/dist/functions/wechat/miniapp/downloadFile.js.map +1 -0
  318. package/dist/hooks/useAi.d.ts +27 -0
  319. package/dist/hooks/useAi.js +163 -0
  320. package/dist/hooks/useAi.js.map +1 -0
  321. package/dist/hooks/useCache.d.ts +18 -0
  322. package/dist/hooks/useCache.js +82 -0
  323. package/dist/hooks/useCache.js.map +1 -0
  324. package/dist/hooks/useFetch.d.ts +3 -0
  325. package/dist/hooks/useFetch.js +154 -0
  326. package/dist/hooks/useFetch.js.map +1 -0
  327. package/dist/hooks/useLocalStorage.d.ts +4 -0
  328. package/dist/hooks/useLocalStorage.js +67 -0
  329. package/dist/hooks/useLocalStorage.js.map +1 -0
  330. package/dist/hooks/usePluginSystem.d.ts +11 -0
  331. package/dist/hooks/usePluginSystem.js +34 -0
  332. package/dist/hooks/usePluginSystem.js.map +1 -0
  333. package/dist/hooks/useRequest.d.ts +3 -0
  334. package/dist/hooks/useRequest.js +139 -0
  335. package/dist/hooks/useRequest.js.map +1 -0
  336. package/dist/hooks/useSessionStorage.d.ts +4 -0
  337. package/dist/hooks/useSessionStorage.js +67 -0
  338. package/dist/hooks/useSessionStorage.js.map +1 -0
  339. package/dist/hooks/useStorage.d.ts +3 -0
  340. package/dist/hooks/useStorage.js +64 -0
  341. package/dist/hooks/useStorage.js.map +1 -0
  342. package/dist/hooks/useStorageWithIndexedDB.d.ts +4 -0
  343. package/dist/hooks/useStorageWithIndexedDB.js +109 -0
  344. package/dist/hooks/useStorageWithIndexedDB.js.map +1 -0
  345. package/dist/hooks/useWASM.d.ts +4 -0
  346. package/dist/hooks/useWASM.js +267 -0
  347. package/dist/hooks/useWASM.js.map +1 -0
  348. package/dist/hooks/useWebWorker.d.ts +4 -0
  349. package/dist/hooks/useWebWorker.js +209 -0
  350. package/dist/hooks/useWebWorker.js.map +1 -0
  351. package/dist/hooks/useWorkerFunction.d.ts +4 -0
  352. package/dist/hooks/useWorkerFunction.js +191 -0
  353. package/dist/hooks/useWorkerFunction.js.map +1 -0
  354. package/dist/hooks/useWorkerPool.d.ts +4 -0
  355. package/dist/hooks/useWorkerPool.js +242 -0
  356. package/dist/hooks/useWorkerPool.js.map +1 -0
  357. package/package.json +145 -0
  358. package/references/browser.d.ts +175 -0
  359. package/references/browser.extension.d.ts +14 -0
  360. package/references/console.d.ts +164 -0
  361. package/references/crypto.d.ts +57 -0
  362. package/references/fetch.d.ts +269 -0
  363. package/references/json5.d.ts +28 -0
  364. package/references/node.d.ts +111 -0
  365. package/references/sharp.d.ts +19 -0
  366. package/references/storage.d.ts +112 -0
  367. package/references/timer.d.ts +46 -0
  368. package/references/uniapp.d.ts +9 -0
  369. package/references/url.d.ts +161 -0
  370. package/references/vue.d.ts +113 -0
  371. package/references/webassembly.d.ts +127 -0
  372. package/references/wechat.d.ts +49 -0
  373. package/references/worker.d.ts +207 -0
  374. package/references/xml.d.ts +56 -0
  375. package/types/altool.d.ts +65 -0
  376. package/types/android-build.d.ts +85 -0
  377. package/types/color.d.ts +115 -0
  378. package/types/geometry.d.ts +64 -0
  379. package/types/network.d.ts +184 -0
  380. package/types/storage.d.ts +49 -0
  381. package/types/util.d.ts +27 -0
  382. package/types/wasm.d.ts +217 -0
  383. package/types/worker.d.ts +364 -0
@@ -0,0 +1,238 @@
1
+ import { parseColorString, isValidRgbColor, isValidHslColor } from './parseColorString';
2
+ import { hueToRgb } from './hueToRgb';
3
+ import { getNamedColorMap } from './getNamedColorMap';
4
+ import { detectColorFormat } from './detectColorFormat';
5
+ export function convertColor(input, targetFormat, options = {}) {
6
+ const { includeAlpha = false, precision = 0 } = options;
7
+ function normalizeInput(input) {
8
+ if (Array.isArray(input)) {
9
+ if (input.length >= 3) {
10
+ const [r, g, b, a = 1] = input;
11
+ if (typeof r === 'number' && typeof g === 'number' && typeof b === 'number') {
12
+ const rgb = { r: Math.round(r), g: Math.round(g), b: Math.round(b) };
13
+ if (isValidRgbColor(rgb)) {
14
+ return { rgb, alpha: typeof a === 'number' ? a : 1, originalFormat: 'rgb' };
15
+ }
16
+ }
17
+ }
18
+ return null;
19
+ }
20
+ if (typeof input === 'object' && input !== null) {
21
+ if ('r' in input && 'g' in input && 'b' in input) {
22
+ const rgb = input;
23
+ if (isValidRgbColor(rgb)) {
24
+ const alpha = 'a' in input ? input.a : 1;
25
+ return { rgb, alpha, originalFormat: 'a' in input ? 'rgba' : 'rgb' };
26
+ }
27
+ }
28
+ if ('h' in input && 's' in input && 'l' in input) {
29
+ const hsl = input;
30
+ if (isValidHslColor(hsl)) {
31
+ const rgb = hslToRgbInternal(hsl);
32
+ if (rgb) {
33
+ const alpha = 'a' in input ? input.a : 1;
34
+ return { rgb, alpha, originalFormat: 'a' in input ? 'hsla' : 'hsl' };
35
+ }
36
+ }
37
+ }
38
+ return null;
39
+ }
40
+ if (typeof input === 'string') {
41
+ const trimmed = input.trim();
42
+ const format = detectColorFormat(trimmed);
43
+ if (!format) {
44
+ return null;
45
+ }
46
+ switch (format) {
47
+ case 'hex':
48
+ return parseHexColor(trimmed);
49
+ case 'rgb':
50
+ case 'rgba': {
51
+ const parseResult = parseColorString(trimmed);
52
+ if (parseResult.isValid && (parseResult.type === 'rgb' || parseResult.type === 'rgba')) {
53
+ const value = parseResult.value;
54
+ return {
55
+ rgb: { r: value.r, g: value.g, b: value.b },
56
+ alpha: value.a ?? 1,
57
+ originalFormat: parseResult.type
58
+ };
59
+ }
60
+ break;
61
+ }
62
+ case 'hsl':
63
+ case 'hsla': {
64
+ const parseResult = parseColorString(trimmed);
65
+ if (parseResult.isValid && (parseResult.type === 'hsl' || parseResult.type === 'hsla')) {
66
+ const value = parseResult.value;
67
+ const rgb = hslToRgbInternal(value);
68
+ if (rgb) {
69
+ return {
70
+ rgb,
71
+ alpha: value.a ?? 1,
72
+ originalFormat: parseResult.type
73
+ };
74
+ }
75
+ }
76
+ break;
77
+ }
78
+ case 'named': {
79
+ const namedColorMap = getNamedColorMap();
80
+ const hexValue = namedColorMap[trimmed.toLowerCase()];
81
+ if (hexValue) {
82
+ const result = parseHexColor(hexValue);
83
+ if (result) {
84
+ return { ...result, originalFormat: 'named' };
85
+ }
86
+ }
87
+ break;
88
+ }
89
+ }
90
+ }
91
+ return null;
92
+ }
93
+ function parseHexColor(hex) {
94
+ const cleanHex = hex.replace(/^#/, '');
95
+ if (!/^[0-9a-fA-F]+$/.test(cleanHex)) {
96
+ return null;
97
+ }
98
+ let r, g, b, alpha = 1;
99
+ switch (cleanHex.length) {
100
+ case 3:
101
+ r = parseInt(cleanHex[0] + cleanHex[0], 16);
102
+ g = parseInt(cleanHex[1] + cleanHex[1], 16);
103
+ b = parseInt(cleanHex[2] + cleanHex[2], 16);
104
+ break;
105
+ case 4:
106
+ r = parseInt(cleanHex[0] + cleanHex[0], 16);
107
+ g = parseInt(cleanHex[1] + cleanHex[1], 16);
108
+ b = parseInt(cleanHex[2] + cleanHex[2], 16);
109
+ alpha = parseInt(cleanHex[3] + cleanHex[3], 16) / 255;
110
+ break;
111
+ case 6:
112
+ r = parseInt(cleanHex.substring(0, 2), 16);
113
+ g = parseInt(cleanHex.substring(2, 4), 16);
114
+ b = parseInt(cleanHex.substring(4, 6), 16);
115
+ break;
116
+ case 8:
117
+ r = parseInt(cleanHex.substring(0, 2), 16);
118
+ g = parseInt(cleanHex.substring(2, 4), 16);
119
+ b = parseInt(cleanHex.substring(4, 6), 16);
120
+ alpha = parseInt(cleanHex.substring(6, 8), 16) / 255;
121
+ break;
122
+ default:
123
+ return null;
124
+ }
125
+ if (isNaN(r) || isNaN(g) || isNaN(b) || isNaN(alpha)) {
126
+ return null;
127
+ }
128
+ return {
129
+ rgb: { r, g, b },
130
+ alpha,
131
+ originalFormat: 'hex'
132
+ };
133
+ }
134
+ function hslToRgbInternal(hsl) {
135
+ let h = hsl.h % 360;
136
+ if (h < 0)
137
+ h += 360;
138
+ const s = Math.max(0, Math.min(100, hsl.s)) / 100;
139
+ const l = Math.max(0, Math.min(100, hsl.l)) / 100;
140
+ if (s === 0) {
141
+ const gray = Math.round(l * 255);
142
+ return { r: gray, g: gray, b: gray };
143
+ }
144
+ const q = l < 0.5 ? l * (1 + s) : l + s - l * s;
145
+ const p = 2 * l - q;
146
+ const hNormalized = h / 360;
147
+ const r = hueToRgb(p, q, hNormalized + 1 / 3);
148
+ const g = hueToRgb(p, q, hNormalized);
149
+ const b = hueToRgb(p, q, hNormalized - 1 / 3);
150
+ return {
151
+ r: Math.round(r * 255),
152
+ g: Math.round(g * 255),
153
+ b: Math.round(b * 255)
154
+ };
155
+ }
156
+ function rgbToHslInternal(rgb) {
157
+ const r = rgb.r / 255;
158
+ const g = rgb.g / 255;
159
+ const b = rgb.b / 255;
160
+ const max = Math.max(r, g, b);
161
+ const min = Math.min(r, g, b);
162
+ const diff = max - min;
163
+ let h = 0;
164
+ let s = 0;
165
+ const l = (max + min) / 2;
166
+ if (diff !== 0) {
167
+ s = l > 0.5 ? diff / (2 - max - min) : diff / (max + min);
168
+ switch (max) {
169
+ case r:
170
+ h = ((g - b) / diff + (g < b ? 6 : 0)) / 6;
171
+ break;
172
+ case g:
173
+ h = ((b - r) / diff + 2) / 6;
174
+ break;
175
+ case b:
176
+ h = ((r - g) / diff + 4) / 6;
177
+ break;
178
+ }
179
+ }
180
+ return {
181
+ h: Math.round(h * 360),
182
+ s: Math.round(s * 100),
183
+ l: Math.round(l * 100)
184
+ };
185
+ }
186
+ function formatOutput(rgb, alpha, targetFormat, options) {
187
+ const { includeAlpha = false, precision = 0 } = options;
188
+ const r = Math.max(0, Math.min(255, Math.round(rgb.r)));
189
+ const g = Math.max(0, Math.min(255, Math.round(rgb.g)));
190
+ const b = Math.max(0, Math.min(255, Math.round(rgb.b)));
191
+ const a = Math.max(0, Math.min(1, alpha));
192
+ switch (targetFormat) {
193
+ case 'hex': {
194
+ const toHex = (value) => {
195
+ const hex = value.toString(16);
196
+ return hex.length === 1 ? '0' + hex : hex;
197
+ };
198
+ let result = `#${toHex(r)}${toHex(g)}${toHex(b)}`;
199
+ if (includeAlpha || a < 1) {
200
+ const alphaHex = Math.round(a * 255);
201
+ result += toHex(alphaHex);
202
+ }
203
+ return result;
204
+ }
205
+ case 'rgb':
206
+ return `rgb(${r}, ${g}, ${b})`;
207
+ case 'rgba':
208
+ return `rgba(${r}, ${g}, ${b}, ${a.toFixed(precision)})`;
209
+ case 'hsl': {
210
+ const hsl = rgbToHslInternal({ r, g, b });
211
+ return `hsl(${hsl.h}, ${hsl.s}%, ${hsl.l}%)`;
212
+ }
213
+ case 'hsla': {
214
+ const hsl = rgbToHslInternal({ r, g, b });
215
+ return `hsla(${hsl.h}, ${hsl.s}%, ${hsl.l}%, ${a.toFixed(precision)})`;
216
+ }
217
+ case 'named': {
218
+ const namedColorMap = getNamedColorMap();
219
+ const targetHex = `#${r.toString(16).padStart(2, '0')}${g.toString(16).padStart(2, '0')}${b.toString(16).padStart(2, '0')}`;
220
+ for (const [name, hex] of Object.entries(namedColorMap)) {
221
+ if (hex.toLowerCase() === targetHex.toLowerCase()) {
222
+ return name;
223
+ }
224
+ }
225
+ return targetHex;
226
+ }
227
+ default:
228
+ return null;
229
+ }
230
+ }
231
+ const normalizedInput = normalizeInput(input);
232
+ if (!normalizedInput) {
233
+ return null;
234
+ }
235
+ const { rgb, alpha } = normalizedInput;
236
+ return formatOutput(rgb, alpha, targetFormat, { includeAlpha, precision });
237
+ }
238
+ //# sourceMappingURL=convertColor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"convertColor.js","sourceRoot":"","sources":["../../../src/functions/color-converter/convertColor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import type { ColorFormat } from '../../../types/color.d';
2
+ export declare function detectColorFormat(color: string): ColorFormat | undefined;
@@ -0,0 +1,19 @@
1
+ import { getColorPatterns } from './getColorPatterns';
2
+ export function detectColorFormat(color) {
3
+ const trimmedColor = color.trim();
4
+ const patterns = getColorPatterns();
5
+ if (patterns.hex.test(trimmedColor))
6
+ return 'hex';
7
+ if (patterns.rgba.test(trimmedColor))
8
+ return 'rgba';
9
+ if (patterns.rgb.test(trimmedColor))
10
+ return 'rgb';
11
+ if (patterns.hsla.test(trimmedColor))
12
+ return 'hsla';
13
+ if (patterns.hsl.test(trimmedColor))
14
+ return 'hsl';
15
+ if (patterns.namedColors.test(trimmedColor))
16
+ return 'named';
17
+ return undefined;
18
+ }
19
+ //# sourceMappingURL=detectColorFormat.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"detectColorFormat.js","sourceRoot":"","sources":["../../../src/functions/color-converter/detectColorFormat.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAwCrD,MAAM,UAAU,iBAAiB,CAAC,KAAa;IAC7C,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,EAAE,CAAA;IACjC,MAAM,QAAQ,GAAG,gBAAgB,EAAE,CAAA;IAInC,IAAI,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC;QAAE,OAAO,KAAK,CAAA;IACjD,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC;QAAE,OAAO,MAAM,CAAA;IACnD,IAAI,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC;QAAE,OAAO,KAAK,CAAA;IACjD,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC;QAAE,OAAO,MAAM,CAAA;IACnD,IAAI,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC;QAAE,OAAO,KAAK,CAAA;IACjD,IAAI,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC;QAAE,OAAO,OAAO,CAAA;IAE3D,OAAO,SAAS,CAAA;AAClB,CAAC"}
@@ -0,0 +1,2 @@
1
+ import type { ColorPatterns } from '../../../types/color.d';
2
+ export declare function getColorPatterns(): ColorPatterns;
@@ -0,0 +1,11 @@
1
+ export function getColorPatterns() {
2
+ return {
3
+ hex: /^#([0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})$/,
4
+ rgb: /^rgb\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)$/,
5
+ rgba: /^rgba\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*,\s*([\d.]+)\s*\)$/,
6
+ hsl: /^hsl\(\s*(\d+)\s*,\s*(\d+)%\s*,\s*(\d+)%\s*\)$/,
7
+ hsla: /^hsla\(\s*(\d+)\s*,\s*(\d+)%\s*,\s*(\d+)%\s*,\s*([\d.]+)\s*\)$/,
8
+ namedColors: /^(red|green|blue|yellow|orange|purple|pink|brown|black|white|gray|grey|cyan|magenta)$/i
9
+ };
10
+ }
11
+ //# sourceMappingURL=getColorPatterns.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getColorPatterns.js","sourceRoot":"","sources":["../../../src/functions/color-converter/getColorPatterns.ts"],"names":[],"mappings":"AAkCA,MAAM,UAAU,gBAAgB;IAC9B,OAAO;QAEL,GAAG,EAAE,kEAAkE;QAGvE,GAAG,EAAE,8CAA8C;QAGnD,IAAI,EAAE,8DAA8D;QAGpE,GAAG,EAAE,gDAAgD;QAGrD,IAAI,EAAE,gEAAgE;QAGtE,WAAW,EAAE,wFAAwF;KACtG,CAAA;AACH,CAAC"}
@@ -0,0 +1,2 @@
1
+ import type { NamedColorMap } from '../../../types/color.d';
2
+ export declare function getNamedColorMap(): NamedColorMap;
@@ -0,0 +1,19 @@
1
+ export function getNamedColorMap() {
2
+ return {
3
+ 'red': '#ff0000',
4
+ 'green': '#00ff00',
5
+ 'blue': '#0000ff',
6
+ 'yellow': '#ffff00',
7
+ 'orange': '#ffa500',
8
+ 'purple': '#800080',
9
+ 'pink': '#ffc0cb',
10
+ 'brown': '#a52a2a',
11
+ 'black': '#000000',
12
+ 'white': '#ffffff',
13
+ 'gray': '#808080',
14
+ 'grey': '#808080',
15
+ 'cyan': '#00ffff',
16
+ 'magenta': '#ff00ff'
17
+ };
18
+ }
19
+ //# sourceMappingURL=getNamedColorMap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getNamedColorMap.js","sourceRoot":"","sources":["../../../src/functions/color-converter/getNamedColorMap.ts"],"names":[],"mappings":"AAmCA,MAAM,UAAU,gBAAgB;IAC9B,OAAO;QACL,KAAK,EAAE,SAAS;QAChB,OAAO,EAAE,SAAS;QAClB,MAAM,EAAE,SAAS;QACjB,QAAQ,EAAE,SAAS;QACnB,QAAQ,EAAE,SAAS;QACnB,QAAQ,EAAE,SAAS;QACnB,MAAM,EAAE,SAAS;QACjB,OAAO,EAAE,SAAS;QAClB,OAAO,EAAE,SAAS;QAClB,OAAO,EAAE,SAAS;QAClB,MAAM,EAAE,SAAS;QACjB,MAAM,EAAE,SAAS;QACjB,MAAM,EAAE,SAAS;QACjB,SAAS,EAAE,SAAS;KACrB,CAAA;AACH,CAAC"}
@@ -0,0 +1,2 @@
1
+ import type { RgbColor } from '../../../types/color.d';
2
+ export declare function hexToRgb(hex: string): RgbColor | null;
@@ -0,0 +1,42 @@
1
+ export function hexToRgb(hex) {
2
+ if (!hex || typeof hex !== 'string') {
3
+ return null;
4
+ }
5
+ const cleanHex = hex.trim().replace(/^#/, '');
6
+ if (!/^[0-9a-fA-F]+$/.test(cleanHex)) {
7
+ return null;
8
+ }
9
+ let r, g, b;
10
+ switch (cleanHex.length) {
11
+ case 3:
12
+ r = parseInt(cleanHex[0] + cleanHex[0], 16);
13
+ g = parseInt(cleanHex[1] + cleanHex[1], 16);
14
+ b = parseInt(cleanHex[2] + cleanHex[2], 16);
15
+ break;
16
+ case 4:
17
+ r = parseInt(cleanHex[0] + cleanHex[0], 16);
18
+ g = parseInt(cleanHex[1] + cleanHex[1], 16);
19
+ b = parseInt(cleanHex[2] + cleanHex[2], 16);
20
+ break;
21
+ case 6:
22
+ r = parseInt(cleanHex.substring(0, 2), 16);
23
+ g = parseInt(cleanHex.substring(2, 4), 16);
24
+ b = parseInt(cleanHex.substring(4, 6), 16);
25
+ break;
26
+ case 8:
27
+ r = parseInt(cleanHex.substring(0, 2), 16);
28
+ g = parseInt(cleanHex.substring(2, 4), 16);
29
+ b = parseInt(cleanHex.substring(4, 6), 16);
30
+ break;
31
+ default:
32
+ return null;
33
+ }
34
+ if (isNaN(r) || isNaN(g) || isNaN(b)) {
35
+ return null;
36
+ }
37
+ if (r < 0 || r > 255 || g < 0 || g > 255 || b < 0 || b > 255) {
38
+ return null;
39
+ }
40
+ return { r, g, b };
41
+ }
42
+ //# sourceMappingURL=hexToRgb.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hexToRgb.js","sourceRoot":"","sources":["../../../src/functions/color-converter/hexToRgb.ts"],"names":[],"mappings":"AAuBA,MAAM,UAAU,QAAQ,CAAC,GAAW;IAElC,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QACpC,OAAO,IAAI,CAAA;IACb,CAAC;IAGD,MAAM,QAAQ,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;IAG7C,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;QACrC,OAAO,IAAI,CAAA;IACb,CAAC;IAGD,IAAI,CAAS,EAAE,CAAS,EAAE,CAAS,CAAA;IAEnC,QAAQ,QAAQ,CAAC,MAAM,EAAE,CAAC;QACxB,KAAK,CAAC;YAEJ,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;YAC3C,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;YAC3C,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;YAC3C,MAAK;QAEP,KAAK,CAAC;YAEJ,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;YAC3C,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;YAC3C,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;YAC3C,MAAK;QAEP,KAAK,CAAC;YAEJ,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;YAC1C,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;YAC1C,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;YAC1C,MAAK;QAEP,KAAK,CAAC;YAEJ,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;YAC1C,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;YAC1C,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;YAC1C,MAAK;QAEP;YACE,OAAO,IAAI,CAAA;IACf,CAAC;IAGD,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QACrC,OAAO,IAAI,CAAA;IACb,CAAC;IAGD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;QAC7D,OAAO,IAAI,CAAA;IACb,CAAC;IAED,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAA;AACpB,CAAC"}
@@ -0,0 +1,2 @@
1
+ import type { RgbColor, HslColor } from '../../../types/color.d';
2
+ export declare function hslToRgb(input: HslColor | string | number, saturation?: number, lightness?: number): RgbColor | null;
@@ -0,0 +1,78 @@
1
+ export function hslToRgb(input, saturation, lightness) {
2
+ let hsl = null;
3
+ if (typeof input === 'object' && input !== null) {
4
+ hsl = input;
5
+ }
6
+ else if (typeof input === 'string') {
7
+ hsl = parseHslString(input);
8
+ }
9
+ else if (typeof input === 'number' && typeof saturation === 'number' && typeof lightness === 'number') {
10
+ hsl = { h: input, s: saturation, l: lightness };
11
+ }
12
+ else {
13
+ return null;
14
+ }
15
+ if (!hsl) {
16
+ return null;
17
+ }
18
+ if (!isValidHslValue(hsl)) {
19
+ return null;
20
+ }
21
+ let h = hsl.h % 360;
22
+ if (h < 0)
23
+ h += 360;
24
+ const s = Math.max(0, Math.min(100, hsl.s)) / 100;
25
+ const l = Math.max(0, Math.min(100, hsl.l)) / 100;
26
+ if (s === 0) {
27
+ const gray = Math.round(l * 255);
28
+ return { r: gray, g: gray, b: gray };
29
+ }
30
+ const hueToRgb = (p, q, t) => {
31
+ if (t < 0)
32
+ t += 1;
33
+ if (t > 1)
34
+ t -= 1;
35
+ if (t < 1 / 6)
36
+ return p + (q - p) * 6 * t;
37
+ if (t < 1 / 2)
38
+ return q;
39
+ if (t < 2 / 3)
40
+ return p + (q - p) * (2 / 3 - t) * 6;
41
+ return p;
42
+ };
43
+ const q = l < 0.5 ? l * (1 + s) : l + s - l * s;
44
+ const p = 2 * l - q;
45
+ const hNormalized = h / 360;
46
+ const r = hueToRgb(p, q, hNormalized + 1 / 3);
47
+ const g = hueToRgb(p, q, hNormalized);
48
+ const b = hueToRgb(p, q, hNormalized - 1 / 3);
49
+ return {
50
+ r: Math.round(r * 255),
51
+ g: Math.round(g * 255),
52
+ b: Math.round(b * 255)
53
+ };
54
+ }
55
+ function parseHslString(hslString) {
56
+ if (!hslString || typeof hslString !== 'string') {
57
+ return null;
58
+ }
59
+ const trimmed = hslString.trim();
60
+ const match = trimmed.match(/^hsl\(\s*([\d.-]+)\s*,\s*([\d.-]+)%\s*,\s*([\d.-]+)%\s*\)$/i);
61
+ if (!match) {
62
+ return null;
63
+ }
64
+ const [, hStr, sStr, lStr] = match;
65
+ const h = parseFloat(hStr);
66
+ const s = parseFloat(sStr);
67
+ const l = parseFloat(lStr);
68
+ if (isNaN(h) || isNaN(s) || isNaN(l)) {
69
+ return null;
70
+ }
71
+ return { h, s, l };
72
+ }
73
+ function isValidHslValue(hsl) {
74
+ return (typeof hsl.h === 'number' && !isNaN(hsl.h) && isFinite(hsl.h) &&
75
+ typeof hsl.s === 'number' && !isNaN(hsl.s) && isFinite(hsl.s) &&
76
+ typeof hsl.l === 'number' && !isNaN(hsl.l) && isFinite(hsl.l));
77
+ }
78
+ //# sourceMappingURL=hslToRgb.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hslToRgb.js","sourceRoot":"","sources":["../../../src/functions/color-converter/hslToRgb.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export declare function hueToRgb(p: number, q: number, t: number): number;
@@ -0,0 +1,14 @@
1
+ export function hueToRgb(p, q, t) {
2
+ if (t < 0)
3
+ t += 1;
4
+ if (t > 1)
5
+ t -= 1;
6
+ if (t < 1 / 6)
7
+ return p + (q - p) * 6 * t;
8
+ if (t < 1 / 2)
9
+ return q;
10
+ if (t < 2 / 3)
11
+ return p + (q - p) * (2 / 3 - t) * 6;
12
+ return p;
13
+ }
14
+ //# sourceMappingURL=hueToRgb.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hueToRgb.js","sourceRoot":"","sources":["../../../src/functions/color-converter/hueToRgb.ts"],"names":[],"mappings":"AAqBA,MAAM,UAAU,QAAQ,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS;IACtD,IAAI,CAAC,GAAG,CAAC;QAAE,CAAC,IAAI,CAAC,CAAA;IACjB,IAAI,CAAC,GAAG,CAAC;QAAE,CAAC,IAAI,CAAC,CAAA;IACjB,IAAI,CAAC,GAAG,CAAC,GAAC,CAAC;QAAE,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IACvC,IAAI,CAAC,GAAG,CAAC,GAAC,CAAC;QAAE,OAAO,CAAC,CAAA;IACrB,IAAI,CAAC,GAAG,CAAC,GAAC,CAAC;QAAE,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAA;IAC/C,OAAO,CAAC,CAAA;AACV,CAAC"}
@@ -0,0 +1,2 @@
1
+ import type { ColorValidationResult } from '../../../types/color.d';
2
+ export declare function isColorValue(value: string): ColorValidationResult;
@@ -0,0 +1,79 @@
1
+ import { getColorPatterns } from './getColorPatterns';
2
+ export function isColorValue(value) {
3
+ if (!value || typeof value !== 'string') {
4
+ return { isValid: false, format: undefined };
5
+ }
6
+ const trimmedValue = value.trim();
7
+ if (!trimmedValue) {
8
+ return { isValid: false, format: undefined };
9
+ }
10
+ const COLOR_PATTERNS = getColorPatterns();
11
+ const formats = [
12
+ { format: 'hex', pattern: COLOR_PATTERNS.hex },
13
+ { format: 'rgb', pattern: COLOR_PATTERNS.rgb },
14
+ { format: 'rgba', pattern: COLOR_PATTERNS.rgba },
15
+ { format: 'hsl', pattern: COLOR_PATTERNS.hsl },
16
+ { format: 'hsla', pattern: COLOR_PATTERNS.hsla },
17
+ { format: 'named', pattern: COLOR_PATTERNS.namedColors }
18
+ ];
19
+ for (const { format, pattern } of formats) {
20
+ if (pattern.test(trimmedValue)) {
21
+ if (format === 'hex') {
22
+ const cleanHex = trimmedValue.replace('#', '');
23
+ if (![3, 4, 6, 8].includes(cleanHex.length)) {
24
+ continue;
25
+ }
26
+ if (!/^[0-9a-fA-F]+$/.test(cleanHex)) {
27
+ continue;
28
+ }
29
+ }
30
+ if (format === 'rgb' || format === 'rgba') {
31
+ const rgbMatch = trimmedValue.match(/rgba?\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*(?:,\s*([\d.]+)\s*)?\)/);
32
+ if (!rgbMatch) {
33
+ continue;
34
+ }
35
+ const [, r, g, b, a] = rgbMatch;
36
+ const rVal = parseInt(r);
37
+ const gVal = parseInt(g);
38
+ const bVal = parseInt(b);
39
+ if (isNaN(rVal) || rVal < 0 || rVal > 255 ||
40
+ isNaN(gVal) || gVal < 0 || gVal > 255 ||
41
+ isNaN(bVal) || bVal < 0 || bVal > 255) {
42
+ continue;
43
+ }
44
+ if (a !== undefined) {
45
+ const aVal = parseFloat(a);
46
+ if (isNaN(aVal) || aVal < 0 || aVal > 1) {
47
+ continue;
48
+ }
49
+ }
50
+ }
51
+ if (format === 'hsl' || format === 'hsla') {
52
+ const hslMatch = trimmedValue.match(/hsla?\(\s*(\d+)\s*,\s*(\d+)%\s*,\s*(\d+)%\s*(?:,\s*([\d.]+)\s*)?\)/);
53
+ if (!hslMatch) {
54
+ continue;
55
+ }
56
+ const [, h, s, l, a] = hslMatch;
57
+ const hVal = parseInt(h);
58
+ const sVal = parseInt(s);
59
+ const lVal = parseInt(l);
60
+ if (isNaN(hVal) || hVal < 0 || hVal > 360) {
61
+ continue;
62
+ }
63
+ if (isNaN(sVal) || sVal < 0 || sVal > 100 ||
64
+ isNaN(lVal) || lVal < 0 || lVal > 100) {
65
+ continue;
66
+ }
67
+ if (a !== undefined) {
68
+ const aVal = parseFloat(a);
69
+ if (isNaN(aVal) || aVal < 0 || aVal > 1) {
70
+ continue;
71
+ }
72
+ }
73
+ }
74
+ return { isValid: true, format };
75
+ }
76
+ }
77
+ return { isValid: false, format: undefined };
78
+ }
79
+ //# sourceMappingURL=isColorValue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isColorValue.js","sourceRoot":"","sources":["../../../src/functions/color-converter/isColorValue.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export declare function normalizeColor(color: string): string;
@@ -0,0 +1,49 @@
1
+ import { detectColorFormat } from './detectColorFormat';
2
+ export function normalizeColor(color) {
3
+ const trimmedColor = color.trim();
4
+ const detectedFormat = detectColorFormat(trimmedColor);
5
+ if (!detectedFormat) {
6
+ throw new Error(`无法识别颜色格式: ${color}`);
7
+ }
8
+ switch (detectedFormat) {
9
+ case 'hex':
10
+ return trimmedColor.toLowerCase();
11
+ case 'rgb': {
12
+ const match = trimmedColor.match(/rgb\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)/);
13
+ if (match) {
14
+ const [, r, g, b] = match;
15
+ return `rgb(${r}, ${g}, ${b})`;
16
+ }
17
+ return trimmedColor;
18
+ }
19
+ case 'rgba': {
20
+ const match = trimmedColor.match(/rgba\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*,\s*([\d.]+)\s*\)/);
21
+ if (match) {
22
+ const [, r, g, b, a] = match;
23
+ return `rgba(${r}, ${g}, ${b}, ${a})`;
24
+ }
25
+ return trimmedColor;
26
+ }
27
+ case 'hsl': {
28
+ const match = trimmedColor.match(/hsl\(\s*(\d+)\s*,\s*(\d+)%\s*,\s*(\d+)%\s*\)/);
29
+ if (match) {
30
+ const [, h, s, l] = match;
31
+ return `hsl(${h}, ${s}%, ${l}%)`;
32
+ }
33
+ return trimmedColor;
34
+ }
35
+ case 'hsla': {
36
+ const match = trimmedColor.match(/hsla\(\s*(\d+)\s*,\s*(\d+)%\s*,\s*(\d+)%\s*,\s*([\d.]+)\s*\)/);
37
+ if (match) {
38
+ const [, h, s, l, a] = match;
39
+ return `hsla(${h}, ${s}%, ${l}%, ${a})`;
40
+ }
41
+ return trimmedColor;
42
+ }
43
+ case 'named':
44
+ return trimmedColor.toLowerCase();
45
+ default:
46
+ return trimmedColor;
47
+ }
48
+ }
49
+ //# sourceMappingURL=normalizeColor.js.map