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.
- package/README.md +610 -0
- package/assets/logo-colorful.svg +18 -0
- package/assets/logo-name.svg +7 -0
- package/assets/logo-transparent.svg +14 -0
- package/assets/logo.svg +8 -0
- package/dist/functions/ag-grid/generateLicense.d.ts +4 -0
- package/dist/functions/ag-grid/generateLicense.js +12 -0
- package/dist/functions/ag-grid/generateLicense.js.map +1 -0
- package/dist/functions/altool/createAltoolClient.d.ts +21 -0
- package/dist/functions/altool/createAltoolClient.js +59 -0
- package/dist/functions/altool/createAltoolClient.js.map +1 -0
- package/dist/functions/altool/getAppInfo.d.ts +13 -0
- package/dist/functions/altool/getAppInfo.js +92 -0
- package/dist/functions/altool/getAppInfo.js.map +1 -0
- package/dist/functions/altool/index.d.ts +10 -0
- package/dist/functions/altool/index.js +6 -0
- package/dist/functions/altool/index.js.map +1 -0
- package/dist/functions/altool/isApiKeyAuth.d.ts +2 -0
- package/dist/functions/altool/isApiKeyAuth.js +4 -0
- package/dist/functions/altool/isApiKeyAuth.js.map +1 -0
- package/dist/functions/altool/isCredentialsAuth.d.ts +2 -0
- package/dist/functions/altool/isCredentialsAuth.js +4 -0
- package/dist/functions/altool/isCredentialsAuth.js.map +1 -0
- package/dist/functions/altool/types.d.ts +26 -0
- package/dist/functions/altool/types.js +7 -0
- package/dist/functions/altool/types.js.map +1 -0
- package/dist/functions/altool/uploadApp.d.ts +6 -0
- package/dist/functions/altool/uploadApp.js +36 -0
- package/dist/functions/altool/uploadApp.js.map +1 -0
- package/dist/functions/altool/validateApp.d.ts +17 -0
- package/dist/functions/altool/validateApp.js +59 -0
- package/dist/functions/altool/validateApp.js.map +1 -0
- package/dist/functions/base64/strToBase64.d.ts +2 -0
- package/dist/functions/base64/strToBase64.js +6 -0
- package/dist/functions/base64/strToBase64.js.map +1 -0
- package/dist/functions/color-converter/COLOR_PATTERNS.d.ts +2 -0
- package/dist/functions/color-converter/COLOR_PATTERNS.js +9 -0
- package/dist/functions/color-converter/COLOR_PATTERNS.js.map +1 -0
- package/dist/functions/color-converter/colorPatterns.d.ts +4 -0
- package/dist/functions/color-converter/colorPatterns.js +41 -0
- package/dist/functions/color-converter/colorPatterns.js.map +1 -0
- package/dist/functions/color-converter/convertColor.d.ts +6 -0
- package/dist/functions/color-converter/convertColor.js +238 -0
- package/dist/functions/color-converter/convertColor.js.map +1 -0
- package/dist/functions/color-converter/detectColorFormat.d.ts +2 -0
- package/dist/functions/color-converter/detectColorFormat.js +19 -0
- package/dist/functions/color-converter/detectColorFormat.js.map +1 -0
- package/dist/functions/color-converter/getColorPatterns.d.ts +2 -0
- package/dist/functions/color-converter/getColorPatterns.js +11 -0
- package/dist/functions/color-converter/getColorPatterns.js.map +1 -0
- package/dist/functions/color-converter/getNamedColorMap.d.ts +2 -0
- package/dist/functions/color-converter/getNamedColorMap.js +19 -0
- package/dist/functions/color-converter/getNamedColorMap.js.map +1 -0
- package/dist/functions/color-converter/hexToRgb.d.ts +2 -0
- package/dist/functions/color-converter/hexToRgb.js +42 -0
- package/dist/functions/color-converter/hexToRgb.js.map +1 -0
- package/dist/functions/color-converter/hslToRgb.d.ts +2 -0
- package/dist/functions/color-converter/hslToRgb.js +78 -0
- package/dist/functions/color-converter/hslToRgb.js.map +1 -0
- package/dist/functions/color-converter/hueToRgb.d.ts +1 -0
- package/dist/functions/color-converter/hueToRgb.js +14 -0
- package/dist/functions/color-converter/hueToRgb.js.map +1 -0
- package/dist/functions/color-converter/isColorValue.d.ts +2 -0
- package/dist/functions/color-converter/isColorValue.js +79 -0
- package/dist/functions/color-converter/isColorValue.js.map +1 -0
- package/dist/functions/color-converter/normalizeColor.d.ts +1 -0
- package/dist/functions/color-converter/normalizeColor.js +49 -0
- package/dist/functions/color-converter/normalizeColor.js.map +1 -0
- package/dist/functions/color-converter/parseColorString.d.ts +15 -0
- package/dist/functions/color-converter/parseColorString.js +116 -0
- package/dist/functions/color-converter/parseColorString.js.map +1 -0
- package/dist/functions/color-converter/rgbToHex.d.ts +2 -0
- package/dist/functions/color-converter/rgbToHex.js +65 -0
- package/dist/functions/color-converter/rgbToHex.js.map +1 -0
- package/dist/functions/color-converter/standardizeColor.d.ts +1 -0
- package/dist/functions/color-converter/standardizeColor.js +147 -0
- package/dist/functions/color-converter/standardizeColor.js.map +1 -0
- package/dist/functions/debug/createDebugger.d.ts +20 -0
- package/dist/functions/debug/createDebugger.js +79 -0
- package/dist/functions/debug/createDebugger.js.map +1 -0
- package/dist/functions/desensitize/desensitizeName.d.ts +1 -0
- package/dist/functions/desensitize/desensitizeName.js +8 -0
- package/dist/functions/desensitize/desensitizeName.js.map +1 -0
- package/dist/functions/desensitize/desensitizePhone.d.ts +1 -0
- package/dist/functions/desensitize/desensitizePhone.js +8 -0
- package/dist/functions/desensitize/desensitizePhone.js.map +1 -0
- package/dist/functions/dom/detectOverflow.d.ts +8 -0
- package/dist/functions/dom/detectOverflow.js +17 -0
- package/dist/functions/dom/detectOverflow.js.map +1 -0
- package/dist/functions/dom/getElementRect.d.ts +3 -0
- package/dist/functions/dom/getElementRect.js +14 -0
- package/dist/functions/dom/getElementRect.js.map +1 -0
- package/dist/functions/dom/getRelativePosition.d.ts +3 -0
- package/dist/functions/dom/getRelativePosition.js +14 -0
- package/dist/functions/dom/getRelativePosition.js.map +1 -0
- package/dist/functions/dom/getViewportRect.d.ts +3 -0
- package/dist/functions/dom/getViewportRect.js +15 -0
- package/dist/functions/dom/getViewportRect.js.map +1 -0
- package/dist/functions/dom/getViewportSize.d.ts +5 -0
- package/dist/functions/dom/getViewportSize.js +7 -0
- package/dist/functions/dom/getViewportSize.js.map +1 -0
- package/dist/functions/image/generateMacIcons.d.ts +6 -0
- package/dist/functions/image/generateMacIcons.js +15 -0
- package/dist/functions/image/generateMacIcons.js.map +1 -0
- package/dist/functions/image/generateMacTrayIcon.d.ts +7 -0
- package/dist/functions/image/generateMacTrayIcon.js +15 -0
- package/dist/functions/image/generateMacTrayIcon.js.map +1 -0
- package/dist/functions/image/generatePaddedImage.d.ts +3 -0
- package/dist/functions/image/generatePaddedImage.js +14 -0
- package/dist/functions/image/generatePaddedImage.js.map +1 -0
- package/dist/functions/image/generatePwaIcons.d.ts +6 -0
- package/dist/functions/image/generatePwaIcons.js +15 -0
- package/dist/functions/image/generatePwaIcons.js.map +1 -0
- package/dist/functions/image/generateRoundedImage.d.ts +3 -0
- package/dist/functions/image/generateRoundedImage.js +17 -0
- package/dist/functions/image/generateRoundedImage.js.map +1 -0
- package/dist/functions/ipc/dispatchIpcRequest.d.ts +6 -0
- package/dist/functions/ipc/dispatchIpcRequest.js +10 -0
- package/dist/functions/ipc/dispatchIpcRequest.js.map +1 -0
- package/dist/functions/software/buildPathExecutables.d.ts +1 -0
- package/dist/functions/software/buildPathExecutables.js +4 -0
- package/dist/functions/software/buildPathExecutables.js.map +1 -0
- package/dist/functions/software/buildSoftwarePaths.d.ts +2 -0
- package/dist/functions/software/buildSoftwarePaths.js +22 -0
- package/dist/functions/software/buildSoftwarePaths.js.map +1 -0
- package/dist/functions/software/createConfigGenerator.d.ts +8 -0
- package/dist/functions/software/createConfigGenerator.js +13 -0
- package/dist/functions/software/createConfigGenerator.js.map +1 -0
- package/dist/functions/software/detectPlatform.d.ts +2 -0
- package/dist/functions/software/detectPlatform.js +4 -0
- package/dist/functions/software/detectPlatform.js.map +1 -0
- package/dist/functions/software/find.d.ts +2 -0
- package/dist/functions/software/find.js +12 -0
- package/dist/functions/software/find.js.map +1 -0
- package/dist/functions/software/findSoftware.d.ts +14 -0
- package/dist/functions/software/findSoftware.js +29 -0
- package/dist/functions/software/findSoftware.js.map +1 -0
- package/dist/functions/software/findSoftwareWithGenerator.d.ts +3 -0
- package/dist/functions/software/findSoftwareWithGenerator.js +8 -0
- package/dist/functions/software/findSoftwareWithGenerator.js.map +1 -0
- package/dist/functions/software/getConfigGenerator.d.ts +2 -0
- package/dist/functions/software/getConfigGenerator.js +10 -0
- package/dist/functions/software/getConfigGenerator.js.map +1 -0
- package/dist/functions/software/getEnvironmentSoftwarePath.d.ts +1 -0
- package/dist/functions/software/getEnvironmentSoftwarePath.js +4 -0
- package/dist/functions/software/getEnvironmentSoftwarePath.js.map +1 -0
- package/dist/functions/software/getSupportedSoftware.d.ts +1 -0
- package/dist/functions/software/getSupportedSoftware.js +5 -0
- package/dist/functions/software/getSupportedSoftware.js.map +1 -0
- package/dist/functions/software/parseEnvironmentPaths.d.ts +1 -0
- package/dist/functions/software/parseEnvironmentPaths.js +7 -0
- package/dist/functions/software/parseEnvironmentPaths.js.map +1 -0
- package/dist/functions/software/softwareConfigs.d.ts +2 -0
- package/dist/functions/software/softwareConfigs.js +148 -0
- package/dist/functions/software/softwareConfigs.js.map +1 -0
- package/dist/functions/software/softwareNameMap.d.ts +1 -0
- package/dist/functions/software/softwareNameMap.js +9 -0
- package/dist/functions/software/softwareNameMap.js.map +1 -0
- package/dist/functions/software/types.d.ts +11 -0
- package/dist/functions/software/types.js +2 -0
- package/dist/functions/software/types.js.map +1 -0
- package/dist/functions/string/camelCase.d.ts +1 -0
- package/dist/functions/string/camelCase.js +8 -0
- package/dist/functions/string/camelCase.js.map +1 -0
- package/dist/functions/string/capitalize.d.ts +1 -0
- package/dist/functions/string/capitalize.js +6 -0
- package/dist/functions/string/capitalize.js.map +1 -0
- package/dist/functions/string/escape.d.ts +1 -0
- package/dist/functions/string/escape.js +13 -0
- package/dist/functions/string/escape.js.map +1 -0
- package/dist/functions/string/kebabCase.d.ts +1 -0
- package/dist/functions/string/kebabCase.js +10 -0
- package/dist/functions/string/kebabCase.js.map +1 -0
- package/dist/functions/string/levenshtein.d.ts +1 -0
- package/dist/functions/string/levenshtein.js +27 -0
- package/dist/functions/string/levenshtein.js.map +1 -0
- package/dist/functions/string/mask.d.ts +1 -0
- package/dist/functions/string/mask.js +40 -0
- package/dist/functions/string/mask.js.map +1 -0
- package/dist/functions/string/normalize.d.ts +8 -0
- package/dist/functions/string/normalize.js +37 -0
- package/dist/functions/string/normalize.js.map +1 -0
- package/dist/functions/string/padEnd.d.ts +1 -0
- package/dist/functions/string/padEnd.js +8 -0
- package/dist/functions/string/padEnd.js.map +1 -0
- package/dist/functions/string/padStart.d.ts +1 -0
- package/dist/functions/string/padStart.js +8 -0
- package/dist/functions/string/padStart.js.map +1 -0
- package/dist/functions/string/palindrome.d.ts +3 -0
- package/dist/functions/string/palindrome.js +15 -0
- package/dist/functions/string/palindrome.js.map +1 -0
- package/dist/functions/string/pascalCase.d.ts +1 -0
- package/dist/functions/string/pascalCase.js +8 -0
- package/dist/functions/string/pascalCase.js.map +1 -0
- package/dist/functions/string/similarity.d.ts +1 -0
- package/dist/functions/string/similarity.js +38 -0
- package/dist/functions/string/similarity.js.map +1 -0
- package/dist/functions/string/snakeCase.d.ts +1 -0
- package/dist/functions/string/snakeCase.js +10 -0
- package/dist/functions/string/snakeCase.js.map +1 -0
- package/dist/functions/string/template.d.ts +4 -0
- package/dist/functions/string/template.js +21 -0
- package/dist/functions/string/template.js.map +1 -0
- package/dist/functions/string/unescape.d.ts +1 -0
- package/dist/functions/string/unescape.js +13 -0
- package/dist/functions/string/unescape.js.map +1 -0
- package/dist/functions/string/wordCount.d.ts +5 -0
- package/dist/functions/string/wordCount.js +11 -0
- package/dist/functions/string/wordCount.js.map +1 -0
- package/dist/functions/tencent-cloud/getSecret.d.ts +7 -0
- package/dist/functions/tencent-cloud/getSecret.js +19 -0
- package/dist/functions/tencent-cloud/getSecret.js.map +1 -0
- package/dist/functions/uniapp/app-plus/androidProjectConfigSteps.d.ts +13 -0
- package/dist/functions/uniapp/app-plus/androidProjectConfigSteps.js +175 -0
- package/dist/functions/uniapp/app-plus/androidProjectConfigSteps.js.map +1 -0
- package/dist/functions/uniapp/app-plus/androidProjectStrategy.d.ts +33 -0
- package/dist/functions/uniapp/app-plus/androidProjectStrategy.js +60 -0
- package/dist/functions/uniapp/app-plus/androidProjectStrategy.js.map +1 -0
- package/dist/functions/uniapp/app-plus/buildAndroidApp.d.ts +2 -0
- package/dist/functions/uniapp/app-plus/buildAndroidApp.js +75 -0
- package/dist/functions/uniapp/app-plus/buildAndroidApp.js.map +1 -0
- package/dist/functions/uniapp/app-plus/buildAndroidProject.d.ts +3 -0
- package/dist/functions/uniapp/app-plus/buildAndroidProject.js +60 -0
- package/dist/functions/uniapp/app-plus/buildAndroidProject.js.map +1 -0
- package/dist/functions/uniapp/app-plus/configureAndroidManifest.d.ts +5 -0
- package/dist/functions/uniapp/app-plus/configureAndroidManifest.js +51 -0
- package/dist/functions/uniapp/app-plus/configureAndroidManifest.js.map +1 -0
- package/dist/functions/uniapp/app-plus/configureAndroidProject.d.ts +3 -0
- package/dist/functions/uniapp/app-plus/configureAndroidProject.js +63 -0
- package/dist/functions/uniapp/app-plus/configureAndroidProject.js.map +1 -0
- package/dist/functions/uniapp/app-plus/configureBuildGradle.d.ts +9 -0
- package/dist/functions/uniapp/app-plus/configureBuildGradle.js +57 -0
- package/dist/functions/uniapp/app-plus/configureBuildGradle.js.map +1 -0
- package/dist/functions/uniapp/app-plus/configureDcloudControl.d.ts +5 -0
- package/dist/functions/uniapp/app-plus/configureDcloudControl.js +34 -0
- package/dist/functions/uniapp/app-plus/configureDcloudControl.js.map +1 -0
- package/dist/functions/uniapp/app-plus/configureStrings.d.ts +5 -0
- package/dist/functions/uniapp/app-plus/configureStrings.js +42 -0
- package/dist/functions/uniapp/app-plus/configureStrings.js.map +1 -0
- package/dist/functions/uniapp/app-plus/copyAppResources.d.ts +8 -0
- package/dist/functions/uniapp/app-plus/copyAppResources.js +25 -0
- package/dist/functions/uniapp/app-plus/copyAppResources.js.map +1 -0
- package/dist/functions/uniapp/app-plus/copyDirectory.d.ts +2 -0
- package/dist/functions/uniapp/app-plus/copyDirectory.js +18 -0
- package/dist/functions/uniapp/app-plus/copyDirectory.js.map +1 -0
- package/dist/functions/uniapp/app-plus/generateUniAppResources.d.ts +2 -0
- package/dist/functions/uniapp/app-plus/generateUniAppResources.js +35 -0
- package/dist/functions/uniapp/app-plus/generateUniAppResources.js.map +1 -0
- package/dist/functions/uniapp/app-plus/parseManifest.d.ts +14 -0
- package/dist/functions/uniapp/app-plus/parseManifest.js +44 -0
- package/dist/functions/uniapp/app-plus/parseManifest.js.map +1 -0
- package/dist/functions/uniapp/app-plus/validateOptions.d.ts +3 -0
- package/dist/functions/uniapp/app-plus/validateOptions.js +10 -0
- package/dist/functions/uniapp/app-plus/validateOptions.js.map +1 -0
- package/dist/functions/uniapp/waitForPages.d.ts +2 -0
- package/dist/functions/uniapp/waitForPages.js +19 -0
- package/dist/functions/uniapp/waitForPages.js.map +1 -0
- package/dist/functions/utils/compose.d.ts +1 -0
- package/dist/functions/utils/compose.js +10 -0
- package/dist/functions/utils/compose.js.map +1 -0
- package/dist/functions/utils/cond.d.ts +1 -0
- package/dist/functions/utils/cond.js +15 -0
- package/dist/functions/utils/cond.js.map +1 -0
- package/dist/functions/utils/curry.d.ts +1 -0
- package/dist/functions/utils/curry.js +13 -0
- package/dist/functions/utils/curry.js.map +1 -0
- package/dist/functions/utils/debounce.d.ts +1 -0
- package/dist/functions/utils/debounce.js +13 -0
- package/dist/functions/utils/debounce.js.map +1 -0
- package/dist/functions/utils/evolve.d.ts +3 -0
- package/dist/functions/utils/evolve.js +15 -0
- package/dist/functions/utils/evolve.js.map +1 -0
- package/dist/functions/utils/flow.d.ts +1 -0
- package/dist/functions/utils/flow.js +10 -0
- package/dist/functions/utils/flow.js.map +1 -0
- package/dist/functions/utils/isType.d.ts +11 -0
- package/dist/functions/utils/isType.js +30 -0
- package/dist/functions/utils/isType.js.map +1 -0
- package/dist/functions/utils/memoize.d.ts +1 -0
- package/dist/functions/utils/memoize.js +13 -0
- package/dist/functions/utils/memoize.js.map +1 -0
- package/dist/functions/utils/once.d.ts +1 -0
- package/dist/functions/utils/once.js +13 -0
- package/dist/functions/utils/once.js.map +1 -0
- package/dist/functions/utils/partial.d.ts +1 -0
- package/dist/functions/utils/partial.js +13 -0
- package/dist/functions/utils/partial.js.map +1 -0
- package/dist/functions/utils/pipe.d.ts +1 -0
- package/dist/functions/utils/pipe.js +10 -0
- package/dist/functions/utils/pipe.js.map +1 -0
- package/dist/functions/utils/retryWithBackoff.d.ts +9 -0
- package/dist/functions/utils/retryWithBackoff.js +30 -0
- package/dist/functions/utils/retryWithBackoff.js.map +1 -0
- package/dist/functions/utils/tap.d.ts +1 -0
- package/dist/functions/utils/tap.js +14 -0
- package/dist/functions/utils/tap.js.map +1 -0
- package/dist/functions/utils/throttle.d.ts +1 -0
- package/dist/functions/utils/throttle.js +11 -0
- package/dist/functions/utils/throttle.js.map +1 -0
- package/dist/functions/utils/until.d.ts +1 -0
- package/dist/functions/utils/until.js +10 -0
- package/dist/functions/utils/until.js.map +1 -0
- package/dist/functions/utils/validate.d.ts +8 -0
- package/dist/functions/utils/validate.js +45 -0
- package/dist/functions/utils/validate.js.map +1 -0
- package/dist/functions/vue/dynamicMount.d.ts +15 -0
- package/dist/functions/vue/dynamicMount.js +23 -0
- package/dist/functions/vue/dynamicMount.js.map +1 -0
- package/dist/functions/vue/isVNode.d.ts +2 -0
- package/dist/functions/vue/isVNode.js +4 -0
- package/dist/functions/vue/isVNode.js.map +1 -0
- package/dist/functions/vue/isVueComponent.d.ts +2 -0
- package/dist/functions/vue/isVueComponent.js +6 -0
- package/dist/functions/vue/isVueComponent.js.map +1 -0
- package/dist/functions/wechat/miniapp/downloadFile.d.ts +2 -0
- package/dist/functions/wechat/miniapp/downloadFile.js +39 -0
- package/dist/functions/wechat/miniapp/downloadFile.js.map +1 -0
- package/dist/hooks/useAi.d.ts +27 -0
- package/dist/hooks/useAi.js +163 -0
- package/dist/hooks/useAi.js.map +1 -0
- package/dist/hooks/useCache.d.ts +18 -0
- package/dist/hooks/useCache.js +82 -0
- package/dist/hooks/useCache.js.map +1 -0
- package/dist/hooks/useFetch.d.ts +3 -0
- package/dist/hooks/useFetch.js +154 -0
- package/dist/hooks/useFetch.js.map +1 -0
- package/dist/hooks/useLocalStorage.d.ts +4 -0
- package/dist/hooks/useLocalStorage.js +67 -0
- package/dist/hooks/useLocalStorage.js.map +1 -0
- package/dist/hooks/usePluginSystem.d.ts +11 -0
- package/dist/hooks/usePluginSystem.js +34 -0
- package/dist/hooks/usePluginSystem.js.map +1 -0
- package/dist/hooks/useRequest.d.ts +3 -0
- package/dist/hooks/useRequest.js +139 -0
- package/dist/hooks/useRequest.js.map +1 -0
- package/dist/hooks/useSessionStorage.d.ts +4 -0
- package/dist/hooks/useSessionStorage.js +67 -0
- package/dist/hooks/useSessionStorage.js.map +1 -0
- package/dist/hooks/useStorage.d.ts +3 -0
- package/dist/hooks/useStorage.js +64 -0
- package/dist/hooks/useStorage.js.map +1 -0
- package/dist/hooks/useStorageWithIndexedDB.d.ts +4 -0
- package/dist/hooks/useStorageWithIndexedDB.js +109 -0
- package/dist/hooks/useStorageWithIndexedDB.js.map +1 -0
- package/dist/hooks/useWASM.d.ts +4 -0
- package/dist/hooks/useWASM.js +267 -0
- package/dist/hooks/useWASM.js.map +1 -0
- package/dist/hooks/useWebWorker.d.ts +4 -0
- package/dist/hooks/useWebWorker.js +209 -0
- package/dist/hooks/useWebWorker.js.map +1 -0
- package/dist/hooks/useWorkerFunction.d.ts +4 -0
- package/dist/hooks/useWorkerFunction.js +191 -0
- package/dist/hooks/useWorkerFunction.js.map +1 -0
- package/dist/hooks/useWorkerPool.d.ts +4 -0
- package/dist/hooks/useWorkerPool.js +242 -0
- package/dist/hooks/useWorkerPool.js.map +1 -0
- package/package.json +145 -0
- package/references/browser.d.ts +175 -0
- package/references/browser.extension.d.ts +14 -0
- package/references/console.d.ts +164 -0
- package/references/crypto.d.ts +57 -0
- package/references/fetch.d.ts +269 -0
- package/references/json5.d.ts +28 -0
- package/references/node.d.ts +111 -0
- package/references/sharp.d.ts +19 -0
- package/references/storage.d.ts +112 -0
- package/references/timer.d.ts +46 -0
- package/references/uniapp.d.ts +9 -0
- package/references/url.d.ts +161 -0
- package/references/vue.d.ts +113 -0
- package/references/webassembly.d.ts +127 -0
- package/references/wechat.d.ts +49 -0
- package/references/worker.d.ts +207 -0
- package/references/xml.d.ts +56 -0
- package/types/altool.d.ts +65 -0
- package/types/android-build.d.ts +85 -0
- package/types/color.d.ts +115 -0
- package/types/geometry.d.ts +64 -0
- package/types/network.d.ts +184 -0
- package/types/storage.d.ts +49 -0
- package/types/util.d.ts +27 -0
- package/types/wasm.d.ts +217 -0
- 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":"AACA,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACvF,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAmCvD,MAAM,UAAU,YAAY,CAC1B,KAA8C,EAC9C,YAAyB,EACzB,UAOI,EAAE;IAEN,MAAM,EAAE,YAAY,GAAG,KAAK,EAAE,SAAS,GAAG,CAAC,EAAE,GAAG,OAAO,CAAA;IAMvD,SAAS,cAAc,CACrB,KAA8C;QAO9C,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACzB,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;gBACtB,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAA;gBAC9B,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;oBAC5E,MAAM,GAAG,GAAG,EAAE,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAA;oBACpE,IAAI,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC;wBACzB,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,KAAK,EAAE,CAAA;oBAC7E,CAAC;gBACH,CAAC;YACH,CAAC;YACD,OAAO,IAAI,CAAA;QACb,CAAC;QAGD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YAEhD,IAAI,GAAG,IAAI,KAAK,IAAI,GAAG,IAAI,KAAK,IAAI,GAAG,IAAI,KAAK,EAAE,CAAC;gBACjD,MAAM,GAAG,GAAG,KAAiB,CAAA;gBAC7B,IAAI,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC;oBACzB,MAAM,KAAK,GAAG,GAAG,IAAI,KAAK,CAAC,CAAC,CAAE,KAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;oBACjD,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,cAAc,EAAE,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,EAAE,CAAA;gBACtE,CAAC;YACH,CAAC;YAGD,IAAI,GAAG,IAAI,KAAK,IAAI,GAAG,IAAI,KAAK,IAAI,GAAG,IAAI,KAAK,EAAE,CAAC;gBACjD,MAAM,GAAG,GAAG,KAAiB,CAAA;gBAC7B,IAAI,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC;oBACzB,MAAM,GAAG,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAA;oBACjC,IAAI,GAAG,EAAE,CAAC;wBACR,MAAM,KAAK,GAAG,GAAG,IAAI,KAAK,CAAC,CAAC,CAAE,KAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;wBACjD,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,cAAc,EAAE,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,EAAE,CAAA;oBACtE,CAAC;gBACH,CAAC;YACH,CAAC;YAED,OAAO,IAAI,CAAA;QACb,CAAC;QAGD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAA;YAG5B,MAAM,MAAM,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAA;YACzC,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,OAAO,IAAI,CAAA;YACb,CAAC;YAED,QAAQ,MAAM,EAAE,CAAC;gBACf,KAAK,KAAK;oBACR,OAAO,aAAa,CAAC,OAAO,CAAC,CAAA;gBAE/B,KAAK,KAAK,CAAC;gBACX,KAAK,MAAM,CAAC,CAAC,CAAC;oBACZ,MAAM,WAAW,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAA;oBAC7C,IAAI,WAAW,CAAC,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,KAAK,IAAI,WAAW,CAAC,IAAI,KAAK,MAAM,CAAC,EAAE,CAAC;wBACvF,MAAM,KAAK,GAAG,WAAW,CAAC,KAAkC,CAAA;wBAC5D,OAAO;4BACL,GAAG,EAAE,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE;4BAC3C,KAAK,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC;4BACnB,cAAc,EAAE,WAAW,CAAC,IAAI;yBACjC,CAAA;oBACH,CAAC;oBACD,MAAK;gBACP,CAAC;gBAED,KAAK,KAAK,CAAC;gBACX,KAAK,MAAM,CAAC,CAAC,CAAC;oBACZ,MAAM,WAAW,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAA;oBAC7C,IAAI,WAAW,CAAC,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,KAAK,IAAI,WAAW,CAAC,IAAI,KAAK,MAAM,CAAC,EAAE,CAAC;wBACvF,MAAM,KAAK,GAAG,WAAW,CAAC,KAAkC,CAAA;wBAC5D,MAAM,GAAG,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAA;wBACnC,IAAI,GAAG,EAAE,CAAC;4BACR,OAAO;gCACL,GAAG;gCACH,KAAK,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC;gCACnB,cAAc,EAAE,WAAW,CAAC,IAAI;6BACjC,CAAA;wBACH,CAAC;oBACH,CAAC;oBACD,MAAK;gBACP,CAAC;gBAED,KAAK,OAAO,CAAC,CAAC,CAAC;oBACb,MAAM,aAAa,GAAG,gBAAgB,EAAE,CAAA;oBACxC,MAAM,QAAQ,GAAG,aAAa,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAA;oBACrD,IAAI,QAAQ,EAAE,CAAC;wBACb,MAAM,MAAM,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAA;wBACtC,IAAI,MAAM,EAAE,CAAC;4BACX,OAAO,EAAE,GAAG,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,CAAA;wBAC/C,CAAC;oBACH,CAAC;oBACD,MAAK;gBACP,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAA;IACb,CAAC;IAKD,SAAS,aAAa,CAAC,GAAW;QAKhC,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;QAEtC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;YACrC,OAAO,IAAI,CAAA;QACb,CAAC;QAED,IAAI,CAAS,EAAE,CAAS,EAAE,CAAS,EAAE,KAAK,GAAW,CAAC,CAAA;QAEtD,QAAQ,QAAQ,CAAC,MAAM,EAAE,CAAC;YACxB,KAAK,CAAC;gBACJ,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;gBAC3C,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;gBAC3C,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;gBAC3C,MAAK;YAEP,KAAK,CAAC;gBACJ,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;gBAC3C,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;gBAC3C,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;gBAC3C,KAAK,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAA;gBACrD,MAAK;YAEP,KAAK,CAAC;gBACJ,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;gBAC1C,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;gBAC1C,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;gBAC1C,MAAK;YAEP,KAAK,CAAC;gBACJ,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;gBAC1C,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;gBAC1C,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;gBAC1C,KAAK,GAAG,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAA;gBACpD,MAAK;YAEP;gBACE,OAAO,IAAI,CAAA;QACf,CAAC;QAED,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;YACrD,OAAO,IAAI,CAAA;QACb,CAAC;QAED,OAAO;YACL,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;YAChB,KAAK;YACL,cAAc,EAAE,KAAK;SACtB,CAAA;IACH,CAAC;IAKD,SAAS,gBAAgB,CAAC,GAAa;QACrC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,CAAA;QACnB,IAAI,CAAC,GAAG,CAAC;YAAE,CAAC,IAAI,GAAG,CAAA;QACnB,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAA;QACjD,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAA;QAEjD,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YACZ,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,CAAC,CAAA;YAChC,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAA;QACtC,CAAC;QAED,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QAC/C,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QAEnB,MAAM,WAAW,GAAG,CAAC,GAAG,GAAG,CAAA;QAC3B,MAAM,CAAC,GAAG,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW,GAAG,CAAC,GAAC,CAAC,CAAC,CAAA;QAC3C,MAAM,CAAC,GAAG,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC,CAAA;QACrC,MAAM,CAAC,GAAG,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW,GAAG,CAAC,GAAC,CAAC,CAAC,CAAA;QAE3C,OAAO;YACL,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,CAAC;YACtB,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,CAAC;YACtB,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,CAAC;SACvB,CAAA;IACH,CAAC;IAKD,SAAS,gBAAgB,CAAC,GAAa;QACrC,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,CAAA;QACrB,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,CAAA;QACrB,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,CAAA;QAErB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;QAC7B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;QAC7B,MAAM,IAAI,GAAG,GAAG,GAAG,GAAG,CAAA;QAEtB,IAAI,CAAC,GAAG,CAAC,CAAA;QACT,IAAI,CAAC,GAAG,CAAC,CAAA;QACT,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,CAAA;QAEzB,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;YACf,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,CAAA;YAEzD,QAAQ,GAAG,EAAE,CAAC;gBACZ,KAAK,CAAC;oBACJ,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;oBAC1C,MAAK;gBACP,KAAK,CAAC;oBACJ,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,CAAA;oBAC5B,MAAK;gBACP,KAAK,CAAC;oBACJ,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,CAAA;oBAC5B,MAAK;YACT,CAAC;QACH,CAAC;QAED,OAAO;YACL,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,CAAC;YACtB,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,CAAC;YACtB,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,CAAC;SACvB,CAAA;IACH,CAAC;IAKD,SAAS,YAAY,CACnB,GAAa,EACb,KAAa,EACb,YAAyB,EACzB,OAAuD;QAEvD,MAAM,EAAE,YAAY,GAAG,KAAK,EAAE,SAAS,GAAG,CAAC,EAAE,GAAG,OAAO,CAAA;QAGvD,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QACvD,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QACvD,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QACvD,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAA;QAEzC,QAAQ,YAAY,EAAE,CAAC;YACrB,KAAK,KAAK,CAAC,CAAC,CAAC;gBACX,MAAM,KAAK,GAAG,CAAC,KAAa,EAAU,EAAE;oBACtC,MAAM,GAAG,GAAG,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;oBAC9B,OAAO,GAAG,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAA;gBAC3C,CAAC,CAAA;gBAED,IAAI,MAAM,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,CAAA;gBAEjD,IAAI,YAAY,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC1B,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,CAAC,CAAA;oBACpC,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAA;gBAC3B,CAAC;gBAED,OAAO,MAAM,CAAA;YACf,CAAC;YAED,KAAK,KAAK;gBACR,OAAO,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAA;YAEhC,KAAK,MAAM;gBACT,OAAO,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAA;YAE1D,KAAK,KAAK,CAAC,CAAC,CAAC;gBACX,MAAM,GAAG,GAAG,gBAAgB,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;gBACzC,OAAO,OAAO,GAAG,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,CAAA;YAC9C,CAAC;YAED,KAAK,MAAM,CAAC,CAAC,CAAC;gBACZ,MAAM,GAAG,GAAG,gBAAgB,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;gBACzC,OAAO,QAAQ,GAAG,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAA;YACxE,CAAC;YAED,KAAK,OAAO,CAAC,CAAC,CAAC;gBAEb,MAAM,aAAa,GAAG,gBAAgB,EAAE,CAAA;gBACxC,MAAM,SAAS,GAAG,IAAI,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAA;gBAE3H,KAAK,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC;oBACxD,IAAI,GAAG,CAAC,WAAW,EAAE,KAAK,SAAS,CAAC,WAAW,EAAE,EAAE,CAAC;wBAClD,OAAO,IAAI,CAAA;oBACb,CAAC;gBACH,CAAC;gBAGD,OAAO,SAAS,CAAA;YAClB,CAAC;YAED;gBACE,OAAO,IAAI,CAAA;QACf,CAAC;IACH,CAAC;IAGD,MAAM,eAAe,GAAG,cAAc,CAAC,KAAK,CAAC,CAAA;IAC7C,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,OAAO,IAAI,CAAA;IACb,CAAC;IAED,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,eAAe,CAAA;IAGtC,OAAO,YAAY,CAAC,GAAG,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC,CAAA;AAC5E,CAAC"}
|
|
@@ -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,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,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,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,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,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
|