zcw-shared 1.3.0 → 1.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +223 -50
- package/dist/constants/colorPatterns.d.ts +2 -0
- package/dist/constants/colorPatterns.js +9 -0
- package/dist/constants/colorPatterns.js.map +1 -0
- package/dist/constants/namedColors.d.ts +2 -0
- package/dist/constants/namedColors.js +17 -0
- package/dist/constants/namedColors.js.map +1 -0
- package/dist/constants/softwareConfigs.d.ts +15 -0
- package/dist/constants/softwareConfigs.js +157 -0
- package/dist/constants/softwareConfigs.js.map +1 -0
- package/dist/functions/ag-grid/generateLicense.d.ts +1 -2
- package/dist/functions/ag-grid/generateLicense.js +2 -2
- package/dist/functions/ag-grid/generateLicense.js.map +1 -1
- package/dist/functions/altool/createAltoolClient.js +4 -10
- package/dist/functions/altool/createAltoolClient.js.map +1 -1
- package/dist/functions/altool/getAltoolAuth.d.ts +2 -0
- package/dist/functions/altool/getAltoolAuth.js +8 -0
- package/dist/functions/altool/getAltoolAuth.js.map +1 -0
- package/dist/functions/altool/getAppInfo.js +1 -54
- package/dist/functions/altool/getAppInfo.js.map +1 -1
- package/dist/functions/altool/parseAppInfoOutput.d.ts +2 -0
- package/dist/functions/altool/parseAppInfoOutput.js +55 -0
- package/dist/functions/altool/parseAppInfoOutput.js.map +1 -0
- package/dist/functions/altool/parseValidationOutput.d.ts +6 -0
- package/dist/functions/altool/parseValidationOutput.js +21 -0
- package/dist/functions/altool/parseValidationOutput.js.map +1 -0
- package/dist/functions/altool/validateApp.js +2 -21
- package/dist/functions/altool/validateApp.js.map +1 -1
- package/dist/functions/color/convertColor.d.ts +6 -0
- package/dist/functions/color/convertColor.js +308 -0
- package/dist/functions/color/convertColor.js.map +1 -0
- package/dist/functions/color/deduplicateColors.d.ts +4 -0
- package/dist/functions/color/deduplicateColors.js +55 -0
- package/dist/functions/color/deduplicateColors.js.map +1 -0
- package/dist/functions/color/detectColorFormat.d.ts +2 -0
- package/dist/functions/color/detectColorFormat.js +112 -0
- package/dist/functions/color/detectColorFormat.js.map +1 -0
- package/dist/functions/color/extractColors.d.ts +4 -0
- package/dist/functions/color/extractColors.js +98 -0
- package/dist/functions/color/extractColors.js.map +1 -0
- package/dist/functions/color-converter/convertColor.js +4 -230
- package/dist/functions/color-converter/convertColor.js.map +1 -1
- package/dist/functions/color-converter/createColorReference.d.ts +2 -0
- package/dist/functions/color-converter/createColorReference.js +12 -0
- package/dist/functions/color-converter/createColorReference.js.map +1 -0
- package/dist/functions/color-converter/extractColors.d.ts +2 -15
- package/dist/functions/color-converter/extractColors.js +9 -104
- package/dist/functions/color-converter/extractColors.js.map +1 -1
- package/dist/functions/color-converter/extractColorsFromLine.d.ts +2 -0
- package/dist/functions/color-converter/extractColorsFromLine.js +18 -0
- package/dist/functions/color-converter/extractColorsFromLine.js.map +1 -0
- package/dist/functions/color-converter/extractColorsGeneric.d.ts +2 -0
- package/dist/functions/color-converter/extractColorsGeneric.js +12 -0
- package/dist/functions/color-converter/extractColorsGeneric.js.map +1 -0
- package/dist/functions/color-converter/extractCssVariableReferences.d.ts +2 -0
- package/dist/functions/color-converter/extractCssVariableReferences.js +15 -0
- package/dist/functions/color-converter/extractCssVariableReferences.js.map +1 -0
- package/dist/functions/color-converter/extractThirdPartyVariableReferences.d.ts +2 -0
- package/dist/functions/color-converter/extractThirdPartyVariableReferences.js +15 -0
- package/dist/functions/color-converter/extractThirdPartyVariableReferences.js.map +1 -0
- package/dist/functions/color-converter/formatColorOutput.d.ts +5 -0
- package/dist/functions/color-converter/formatColorOutput.js +48 -0
- package/dist/functions/color-converter/formatColorOutput.js.map +1 -0
- package/dist/functions/color-converter/hslToRgbInternal.d.ts +2 -0
- package/dist/functions/color-converter/hslToRgbInternal.js +24 -0
- package/dist/functions/color-converter/hslToRgbInternal.js.map +1 -0
- package/dist/functions/color-converter/isValidColorValue.d.ts +1 -0
- package/dist/functions/color-converter/isValidColorValue.js +4 -0
- package/dist/functions/color-converter/isValidColorValue.js.map +1 -0
- package/dist/functions/color-converter/isValidHslColor.d.ts +2 -0
- package/dist/functions/color-converter/isValidHslColor.js +14 -0
- package/dist/functions/color-converter/isValidHslColor.js.map +1 -0
- package/dist/functions/color-converter/isValidRgbColor.d.ts +2 -0
- package/dist/functions/color-converter/isValidRgbColor.js +14 -0
- package/dist/functions/color-converter/isValidRgbColor.js.map +1 -0
- package/dist/functions/color-converter/normalizeColorInput.d.ts +6 -0
- package/dist/functions/color-converter/normalizeColorInput.js +94 -0
- package/dist/functions/color-converter/normalizeColorInput.js.map +1 -0
- package/dist/functions/color-converter/parseColorString.d.ts +0 -3
- package/dist/functions/color-converter/parseColorString.js +0 -27
- package/dist/functions/color-converter/parseColorString.js.map +1 -1
- package/dist/functions/color-converter/parseCssVariables.d.ts +2 -0
- package/dist/functions/color-converter/parseCssVariables.js +19 -0
- package/dist/functions/color-converter/parseCssVariables.js.map +1 -0
- package/dist/functions/color-converter/parseHexColor.d.ts +6 -0
- package/dist/functions/color-converter/parseHexColor.js +42 -0
- package/dist/functions/color-converter/parseHexColor.js.map +1 -0
- package/dist/functions/color-converter/rgbToHslInternal.d.ts +2 -0
- package/dist/functions/color-converter/rgbToHslInternal.js +31 -0
- package/dist/functions/color-converter/rgbToHslInternal.js.map +1 -0
- package/dist/functions/css/extractCssVariables.d.ts +12 -0
- package/dist/functions/css/extractCssVariables.js +53 -0
- package/dist/functions/css/extractCssVariables.js.map +1 -0
- package/dist/functions/dom/detectOverflow.js.map +1 -1
- package/dist/functions/dom/getElementRect.js.map +1 -1
- package/dist/functions/dom/getRelativePosition.js.map +1 -1
- package/dist/functions/dom/getViewportRect.js.map +1 -1
- package/dist/functions/dom/getViewportSize.js.map +1 -1
- package/dist/functions/image/generateMacIcons.js.map +1 -1
- package/dist/functions/image/generateMacTrayIcon.js.map +1 -1
- package/dist/functions/image/generatePaddedImage.js.map +1 -1
- package/dist/functions/image/generatePwaIcons.js.map +1 -1
- package/dist/functions/image/generateRoundedImage.js.map +1 -1
- package/dist/functions/ipc/dispatchIpcRequest.js +1 -1
- package/dist/functions/ipc/dispatchIpcRequest.js.map +1 -1
- package/dist/functions/software/buildPathExecutables.js +11 -1
- package/dist/functions/software/buildPathExecutables.js.map +1 -1
- package/dist/functions/software/buildSoftwarePaths.d.ts +1 -1
- package/dist/functions/software/createConfigGenerator.d.ts +1 -1
- package/dist/functions/software/detectPlatform.d.ts +1 -1
- package/dist/functions/software/detectPlatform.js +6 -1
- package/dist/functions/software/detectPlatform.js.map +1 -1
- package/dist/functions/software/find.js +1 -1
- package/dist/functions/software/find.js.map +1 -1
- package/dist/functions/software/findSoftware.d.ts +1 -2
- package/dist/functions/software/findSoftware.js +33 -19
- package/dist/functions/software/findSoftware.js.map +1 -1
- package/dist/functions/software/findSoftwareWithGenerator.d.ts +1 -1
- package/dist/functions/software/getConfigGenerator.d.ts +1 -1
- package/dist/functions/software/getEnvironmentSoftwarePath.js +5 -1
- package/dist/functions/software/getEnvironmentSoftwarePath.js.map +1 -1
- package/dist/functions/software/parseEnvironmentPaths.js +6 -2
- package/dist/functions/software/parseEnvironmentPaths.js.map +1 -1
- package/dist/functions/string/base64.d.ts +2 -0
- package/dist/functions/string/base64.js +6 -0
- package/dist/functions/string/base64.js.map +1 -0
- package/dist/functions/string/caseConverter.d.ts +20 -0
- package/dist/functions/string/caseConverter.js +101 -0
- package/dist/functions/string/caseConverter.js.map +1 -0
- package/dist/functions/string/desensitize.d.ts +13 -0
- package/dist/functions/string/desensitize.js +107 -0
- package/dist/functions/string/desensitize.js.map +1 -0
- package/dist/functions/string/htmlEscape.d.ts +17 -0
- package/dist/functions/string/htmlEscape.js +68 -0
- package/dist/functions/string/htmlEscape.js.map +1 -0
- package/dist/functions/string/pad.d.ts +14 -0
- package/dist/functions/string/pad.js +53 -0
- package/dist/functions/string/pad.js.map +1 -0
- package/dist/functions/string/similarity.js +1 -26
- package/dist/functions/string/similarity.js.map +1 -1
- package/dist/functions/tencent-cloud/getSecret.d.ts +1 -2
- package/dist/functions/tencent-cloud/getSecret.js +2 -3
- package/dist/functions/tencent-cloud/getSecret.js.map +1 -1
- package/dist/functions/uniapp/app-plus/androidProjectStrategy.d.ts +6 -20
- package/dist/functions/uniapp/app-plus/androidProjectStrategy.js +43 -48
- package/dist/functions/uniapp/app-plus/androidProjectStrategy.js.map +1 -1
- package/dist/functions/uniapp/app-plus/buildAndroidProject.js +2 -2
- package/dist/functions/uniapp/app-plus/buildAndroidProject.js.map +1 -1
- package/dist/functions/uniapp/app-plus/configureAndroidProject.js +2 -2
- package/dist/functions/uniapp/app-plus/configureAndroidProject.js.map +1 -1
- package/dist/functions/uniapp/waitForPages.d.ts +1 -1
- package/dist/functions/uniapp/waitForPages.js +3 -2
- package/dist/functions/uniapp/waitForPages.js.map +1 -1
- package/dist/functions/utils/flow.d.ts +1 -1
- package/dist/functions/utils/flow.js +5 -1
- package/dist/functions/utils/flow.js.map +1 -1
- package/dist/functions/vue/checkVueType.d.ts +8 -0
- package/dist/functions/vue/checkVueType.js +29 -0
- package/dist/functions/vue/checkVueType.js.map +1 -0
- package/dist/functions/vue/deduplicateColors.d.ts +2 -0
- package/dist/functions/vue/deduplicateColors.js +13 -0
- package/dist/functions/vue/deduplicateColors.js.map +1 -0
- package/dist/functions/vue/extractColorsFromVueFile.d.ts +3 -0
- package/dist/functions/vue/extractColorsFromVueFile.js +27 -0
- package/dist/functions/vue/extractColorsFromVueFile.js.map +1 -0
- package/dist/functions/vue/extractColorsFromVueSection.d.ts +3 -0
- package/dist/functions/vue/extractColorsFromVueSection.js +53 -0
- package/dist/functions/vue/extractColorsFromVueSection.js.map +1 -0
- package/dist/functions/vue/filterSections.d.ts +2 -0
- package/dist/functions/vue/filterSections.js +11 -0
- package/dist/functions/vue/filterSections.js.map +1 -0
- package/dist/functions/vue/parseVueFile.d.ts +2 -0
- package/dist/functions/vue/parseVueFile.js +53 -0
- package/dist/functions/vue/parseVueFile.js.map +1 -0
- package/dist/functions/vue/processVueFile.d.ts +3 -0
- package/dist/functions/vue/processVueFile.js +26 -0
- package/dist/functions/vue/processVueFile.js.map +1 -0
- package/dist/functions/vue/saveVueSection.d.ts +2 -0
- package/dist/functions/vue/saveVueSection.js +11 -0
- package/dist/functions/vue/saveVueSection.js.map +1 -0
- package/dist/hooks/useAltool.d.ts +68 -0
- package/dist/hooks/useAltool.js +350 -0
- package/dist/hooks/useAltool.js.map +1 -0
- package/package.json +26 -44
- package/types/color.d.ts +30 -3
- package/types/geometry.d.ts +3 -1
- package/types/software.d.ts +27 -0
- package/types/vue.d.ts +30 -0
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
export function deduplicateColors(colors) {
|
|
2
|
+
if (!colors || colors.length === 0) {
|
|
3
|
+
return [];
|
|
4
|
+
}
|
|
5
|
+
const seen = new Set();
|
|
6
|
+
const deduplicated = [];
|
|
7
|
+
for (const color of colors) {
|
|
8
|
+
const key = createUniqueKey(color);
|
|
9
|
+
if (!seen.has(key)) {
|
|
10
|
+
seen.add(key);
|
|
11
|
+
deduplicated.push(color);
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
return deduplicated;
|
|
15
|
+
}
|
|
16
|
+
function createUniqueKey(color) {
|
|
17
|
+
const normalizedValue = color.originalValue.toLowerCase().replace(/\s+/g, '');
|
|
18
|
+
return `${color.file}:${color.line}:${normalizedValue}:${color.context}`;
|
|
19
|
+
}
|
|
20
|
+
export function deduplicateColorsByValue(colors) {
|
|
21
|
+
if (!colors || colors.length === 0) {
|
|
22
|
+
return [];
|
|
23
|
+
}
|
|
24
|
+
const seenValues = new Set();
|
|
25
|
+
const deduplicated = [];
|
|
26
|
+
for (const color of colors) {
|
|
27
|
+
const normalizedValue = color.originalValue.toLowerCase().replace(/\s+/g, '');
|
|
28
|
+
if (!seenValues.has(normalizedValue)) {
|
|
29
|
+
seenValues.add(normalizedValue);
|
|
30
|
+
deduplicated.push(color);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
return deduplicated;
|
|
34
|
+
}
|
|
35
|
+
export function deduplicateColorsByStandardizedValue(colors, standardizeColor) {
|
|
36
|
+
if (!colors || colors.length === 0) {
|
|
37
|
+
return [];
|
|
38
|
+
}
|
|
39
|
+
const seenStandardizedValues = new Set();
|
|
40
|
+
const deduplicated = [];
|
|
41
|
+
for (const color of colors) {
|
|
42
|
+
try {
|
|
43
|
+
const standardizedValue = standardizeColor(color.originalValue);
|
|
44
|
+
if (!seenStandardizedValues.has(standardizedValue)) {
|
|
45
|
+
seenStandardizedValues.add(standardizedValue);
|
|
46
|
+
deduplicated.push(color);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
catch (error) {
|
|
50
|
+
deduplicated.push(color);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
return deduplicated;
|
|
54
|
+
}
|
|
55
|
+
//# sourceMappingURL=deduplicateColors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deduplicateColors.js","sourceRoot":"","sources":["../../../src/functions/color/deduplicateColors.ts"],"names":[],"mappings":"AA2BA,MAAM,UAAU,iBAAiB,CAAC,MAAwB;IACxD,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACnC,OAAO,EAAE,CAAA;IACX,CAAC;IAED,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAA;IAC9B,MAAM,YAAY,GAAqB,EAAE,CAAA;IAEzC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAE3B,MAAM,GAAG,GAAG,eAAe,CAAC,KAAK,CAAC,CAAA;QAElC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YACnB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;YACb,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAC1B,CAAC;IACH,CAAC;IAED,OAAO,YAAY,CAAA;AACrB,CAAC;AAMD,SAAS,eAAe,CAAC,KAAqB;IAE5C,MAAM,eAAe,GAAG,KAAK,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;IAG7E,OAAO,GAAG,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,IAAI,eAAe,IAAI,KAAK,CAAC,OAAO,EAAE,CAAA;AAC1E,CAAC;AAwBD,MAAM,UAAU,wBAAwB,CAAC,MAAwB;IAC/D,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACnC,OAAO,EAAE,CAAA;IACX,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,GAAG,EAAU,CAAA;IACpC,MAAM,YAAY,GAAqB,EAAE,CAAA;IAEzC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAE3B,MAAM,eAAe,GAAG,KAAK,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;QAE7E,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,CAAC;YACrC,UAAU,CAAC,GAAG,CAAC,eAAe,CAAC,CAAA;YAC/B,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAC1B,CAAC;IACH,CAAC;IAED,OAAO,YAAY,CAAA;AACrB,CAAC;AA6BD,MAAM,UAAU,oCAAoC,CAClD,MAAwB,EACxB,gBAA2C;IAE3C,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACnC,OAAO,EAAE,CAAA;IACX,CAAC;IAED,MAAM,sBAAsB,GAAG,IAAI,GAAG,EAAU,CAAA;IAChD,MAAM,YAAY,GAAqB,EAAE,CAAA;IAEzC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,CAAC;YAEH,MAAM,iBAAiB,GAAG,gBAAgB,CAAC,KAAK,CAAC,aAAa,CAAC,CAAA;YAE/D,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,iBAAiB,CAAC,EAAE,CAAC;gBACnD,sBAAsB,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAA;gBAC7C,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YAC1B,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAEf,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAC1B,CAAC;IACH,CAAC;IAED,OAAO,YAAY,CAAA;AACrB,CAAC"}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
import { COLOR_PATTERNS } from '../../constants/colorPatterns';
|
|
2
|
+
import { NAMED_COLOR_MAP } from '../../constants/namedColors';
|
|
3
|
+
export function detectColorFormat(color) {
|
|
4
|
+
if (!color || typeof color !== 'string') {
|
|
5
|
+
return { isValid: false, format: undefined };
|
|
6
|
+
}
|
|
7
|
+
const trimmedColor = color.trim();
|
|
8
|
+
if (!trimmedColor) {
|
|
9
|
+
return { isValid: false, format: undefined };
|
|
10
|
+
}
|
|
11
|
+
if (COLOR_PATTERNS.hex.test(trimmedColor)) {
|
|
12
|
+
return validateHexColor(trimmedColor);
|
|
13
|
+
}
|
|
14
|
+
if (COLOR_PATTERNS.rgba.test(trimmedColor)) {
|
|
15
|
+
return validateRgbaColor(trimmedColor);
|
|
16
|
+
}
|
|
17
|
+
if (COLOR_PATTERNS.rgb.test(trimmedColor)) {
|
|
18
|
+
return validateRgbColor(trimmedColor);
|
|
19
|
+
}
|
|
20
|
+
if (COLOR_PATTERNS.hsla.test(trimmedColor)) {
|
|
21
|
+
return validateHslaColor(trimmedColor);
|
|
22
|
+
}
|
|
23
|
+
if (COLOR_PATTERNS.hsl.test(trimmedColor)) {
|
|
24
|
+
return validateHslColor(trimmedColor);
|
|
25
|
+
}
|
|
26
|
+
if (COLOR_PATTERNS.namedColors.test(trimmedColor)) {
|
|
27
|
+
return validateNamedColor(trimmedColor);
|
|
28
|
+
}
|
|
29
|
+
return { isValid: false, format: undefined };
|
|
30
|
+
}
|
|
31
|
+
function validateHexColor(color) {
|
|
32
|
+
const hex = color.slice(1);
|
|
33
|
+
if (![3, 4, 6, 8].includes(hex.length)) {
|
|
34
|
+
return { isValid: false, format: undefined };
|
|
35
|
+
}
|
|
36
|
+
if (!/^[0-9a-fA-F]+$/.test(hex)) {
|
|
37
|
+
return { isValid: false, format: undefined };
|
|
38
|
+
}
|
|
39
|
+
return { isValid: true, format: 'hex' };
|
|
40
|
+
}
|
|
41
|
+
function validateRgbColor(color) {
|
|
42
|
+
const match = color.match(COLOR_PATTERNS.rgb);
|
|
43
|
+
if (!match) {
|
|
44
|
+
return { isValid: false, format: undefined };
|
|
45
|
+
}
|
|
46
|
+
const [, r, g, b] = match;
|
|
47
|
+
const red = parseInt(r, 10);
|
|
48
|
+
const green = parseInt(g, 10);
|
|
49
|
+
const blue = parseInt(b, 10);
|
|
50
|
+
if (red < 0 || red > 255 || green < 0 || green > 255 || blue < 0 || blue > 255) {
|
|
51
|
+
return { isValid: false, format: undefined };
|
|
52
|
+
}
|
|
53
|
+
return { isValid: true, format: 'rgb' };
|
|
54
|
+
}
|
|
55
|
+
function validateRgbaColor(color) {
|
|
56
|
+
const match = color.match(COLOR_PATTERNS.rgba);
|
|
57
|
+
if (!match) {
|
|
58
|
+
return { isValid: false, format: undefined };
|
|
59
|
+
}
|
|
60
|
+
const [, r, g, b, a] = match;
|
|
61
|
+
const red = parseInt(r, 10);
|
|
62
|
+
const green = parseInt(g, 10);
|
|
63
|
+
const blue = parseInt(b, 10);
|
|
64
|
+
const alpha = parseFloat(a);
|
|
65
|
+
if (red < 0 || red > 255 || green < 0 || green > 255 || blue < 0 || blue > 255) {
|
|
66
|
+
return { isValid: false, format: undefined };
|
|
67
|
+
}
|
|
68
|
+
if (alpha < 0 || alpha > 1 || isNaN(alpha)) {
|
|
69
|
+
return { isValid: false, format: undefined };
|
|
70
|
+
}
|
|
71
|
+
return { isValid: true, format: 'rgba' };
|
|
72
|
+
}
|
|
73
|
+
function validateHslColor(color) {
|
|
74
|
+
const match = color.match(COLOR_PATTERNS.hsl);
|
|
75
|
+
if (!match) {
|
|
76
|
+
return { isValid: false, format: undefined };
|
|
77
|
+
}
|
|
78
|
+
const [, h, s, l] = match;
|
|
79
|
+
const hue = parseInt(h, 10);
|
|
80
|
+
const saturation = parseInt(s, 10);
|
|
81
|
+
const lightness = parseInt(l, 10);
|
|
82
|
+
if (hue < 0 || hue > 360 || saturation < 0 || saturation > 100 || lightness < 0 || lightness > 100) {
|
|
83
|
+
return { isValid: false, format: undefined };
|
|
84
|
+
}
|
|
85
|
+
return { isValid: true, format: 'hsl' };
|
|
86
|
+
}
|
|
87
|
+
function validateHslaColor(color) {
|
|
88
|
+
const match = color.match(COLOR_PATTERNS.hsla);
|
|
89
|
+
if (!match) {
|
|
90
|
+
return { isValid: false, format: undefined };
|
|
91
|
+
}
|
|
92
|
+
const [, h, s, l, a] = match;
|
|
93
|
+
const hue = parseInt(h, 10);
|
|
94
|
+
const saturation = parseInt(s, 10);
|
|
95
|
+
const lightness = parseInt(l, 10);
|
|
96
|
+
const alpha = parseFloat(a);
|
|
97
|
+
if (hue < 0 || hue > 360 || saturation < 0 || saturation > 100 || lightness < 0 || lightness > 100) {
|
|
98
|
+
return { isValid: false, format: undefined };
|
|
99
|
+
}
|
|
100
|
+
if (alpha < 0 || alpha > 1 || isNaN(alpha)) {
|
|
101
|
+
return { isValid: false, format: undefined };
|
|
102
|
+
}
|
|
103
|
+
return { isValid: true, format: 'hsla' };
|
|
104
|
+
}
|
|
105
|
+
function validateNamedColor(color) {
|
|
106
|
+
const lowerColor = color.toLowerCase();
|
|
107
|
+
if (lowerColor in NAMED_COLOR_MAP) {
|
|
108
|
+
return { isValid: true, format: 'named' };
|
|
109
|
+
}
|
|
110
|
+
return { isValid: false, format: undefined };
|
|
111
|
+
}
|
|
112
|
+
//# sourceMappingURL=detectColorFormat.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"detectColorFormat.js","sourceRoot":"","sources":["../../../src/functions/color/detectColorFormat.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import { COLOR_PATTERNS } from '../../constants/colorPatterns';
|
|
2
|
+
import { detectColorFormat } from './detectColorFormat';
|
|
3
|
+
export function extractColors(text, filePath = '', options = {}) {
|
|
4
|
+
const { validOnly = true } = options;
|
|
5
|
+
if (!text || typeof text !== 'string') {
|
|
6
|
+
return [];
|
|
7
|
+
}
|
|
8
|
+
const colors = [];
|
|
9
|
+
const lines = text.split('\n');
|
|
10
|
+
lines.forEach((line, lineIndex) => {
|
|
11
|
+
const lineColors = extractColorsFromLine(line, lineIndex, filePath, { validOnly });
|
|
12
|
+
colors.push(...lineColors);
|
|
13
|
+
});
|
|
14
|
+
return colors;
|
|
15
|
+
}
|
|
16
|
+
function extractColorsFromLine(line, lineIndex, filePath, options) {
|
|
17
|
+
const { validOnly = true } = options;
|
|
18
|
+
const colors = [];
|
|
19
|
+
const hexMatches = findMatches(line, COLOR_PATTERNS.hex);
|
|
20
|
+
hexMatches.forEach(match => {
|
|
21
|
+
const validation = detectColorFormat(match.value);
|
|
22
|
+
if (!validOnly || validation.isValid) {
|
|
23
|
+
colors.push(createColorReference(match.value, validation.format || 'hex', lineIndex, filePath, line));
|
|
24
|
+
}
|
|
25
|
+
});
|
|
26
|
+
const rgbaMatches = findMatches(line, COLOR_PATTERNS.rgba);
|
|
27
|
+
rgbaMatches.forEach(match => {
|
|
28
|
+
const validation = detectColorFormat(match.value);
|
|
29
|
+
if (!validOnly || validation.isValid) {
|
|
30
|
+
colors.push(createColorReference(match.value, validation.format || 'rgba', lineIndex, filePath, line));
|
|
31
|
+
}
|
|
32
|
+
});
|
|
33
|
+
const rgbMatches = findMatches(line, COLOR_PATTERNS.rgb);
|
|
34
|
+
rgbMatches.forEach(match => {
|
|
35
|
+
if (!isOverlapping(match, rgbaMatches)) {
|
|
36
|
+
const validation = detectColorFormat(match.value);
|
|
37
|
+
if (!validOnly || validation.isValid) {
|
|
38
|
+
colors.push(createColorReference(match.value, validation.format || 'rgb', lineIndex, filePath, line));
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
const hslaMatches = findMatches(line, COLOR_PATTERNS.hsla);
|
|
43
|
+
hslaMatches.forEach(match => {
|
|
44
|
+
const validation = detectColorFormat(match.value);
|
|
45
|
+
if (!validOnly || validation.isValid) {
|
|
46
|
+
colors.push(createColorReference(match.value, validation.format || 'hsla', lineIndex, filePath, line));
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
const hslMatches = findMatches(line, COLOR_PATTERNS.hsl);
|
|
50
|
+
hslMatches.forEach(match => {
|
|
51
|
+
if (!isOverlapping(match, hslaMatches)) {
|
|
52
|
+
const validation = detectColorFormat(match.value);
|
|
53
|
+
if (!validOnly || validation.isValid) {
|
|
54
|
+
colors.push(createColorReference(match.value, validation.format || 'hsl', lineIndex, filePath, line));
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
});
|
|
58
|
+
const namedMatches = findMatches(line, COLOR_PATTERNS.namedColors);
|
|
59
|
+
namedMatches.forEach(match => {
|
|
60
|
+
if (!isOverlapping(match, [...hexMatches, ...rgbaMatches, ...rgbMatches, ...hslaMatches, ...hslMatches])) {
|
|
61
|
+
const validation = detectColorFormat(match.value);
|
|
62
|
+
if (!validOnly || validation.isValid) {
|
|
63
|
+
colors.push(createColorReference(match.value, validation.format || 'named', lineIndex, filePath, line));
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
});
|
|
67
|
+
return colors;
|
|
68
|
+
}
|
|
69
|
+
function findMatches(text, pattern) {
|
|
70
|
+
const matches = [];
|
|
71
|
+
const globalPattern = new RegExp(pattern.source, 'gi');
|
|
72
|
+
let match;
|
|
73
|
+
while ((match = globalPattern.exec(text)) !== null) {
|
|
74
|
+
matches.push({
|
|
75
|
+
value: match[0],
|
|
76
|
+
start: match.index,
|
|
77
|
+
end: match.index + match[0].length
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
return matches;
|
|
81
|
+
}
|
|
82
|
+
function isOverlapping(match, otherMatches) {
|
|
83
|
+
return otherMatches.some(other => {
|
|
84
|
+
return ((match.start >= other.start && match.start < other.end) ||
|
|
85
|
+
(match.end > other.start && match.end <= other.end) ||
|
|
86
|
+
(match.start <= other.start && match.end >= other.end));
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
function createColorReference(colorValue, format, lineIndex, filePath, context) {
|
|
90
|
+
return {
|
|
91
|
+
originalValue: colorValue,
|
|
92
|
+
format,
|
|
93
|
+
line: lineIndex + 1,
|
|
94
|
+
file: filePath,
|
|
95
|
+
context
|
|
96
|
+
};
|
|
97
|
+
}
|
|
98
|
+
//# sourceMappingURL=extractColors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"extractColors.js","sourceRoot":"","sources":["../../../src/functions/color/extractColors.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,238 +1,12 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import { getNamedColorMap } from './getNamedColorMap';
|
|
4
|
-
import { detectColorFormat } from './detectColorFormat';
|
|
1
|
+
import { normalizeColorInput } from './normalizeColorInput';
|
|
2
|
+
import { formatColorOutput } from './formatColorOutput';
|
|
5
3
|
export function convertColor(input, targetFormat, options = {}) {
|
|
6
4
|
const { includeAlpha = false, precision = 0 } = options;
|
|
7
|
-
|
|
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);
|
|
5
|
+
const normalizedInput = normalizeColorInput(input);
|
|
232
6
|
if (!normalizedInput) {
|
|
233
7
|
return null;
|
|
234
8
|
}
|
|
235
9
|
const { rgb, alpha } = normalizedInput;
|
|
236
|
-
return
|
|
10
|
+
return formatColorOutput(rgb, alpha, targetFormat, { includeAlpha, precision });
|
|
237
11
|
}
|
|
238
12
|
//# sourceMappingURL=convertColor.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"convertColor.js","sourceRoot":"","sources":["../../../src/functions/color-converter/convertColor.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"convertColor.js","sourceRoot":"","sources":["../../../src/functions/color-converter/convertColor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAC3D,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;IAGvD,MAAM,eAAe,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAA;IAClD,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,OAAO,IAAI,CAAA;IACb,CAAC;IAED,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,eAAe,CAAA;IAGtC,OAAO,iBAAiB,CAAC,GAAG,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC,CAAA;AACjF,CAAC"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import type { ColorReference } from '../../../types/color';
|
|
2
|
+
export declare function createColorReference(value: string, format: ColorReference['format'], file: string, line: number, context: string, originalValue: string, isVariableReference?: boolean, variableName?: string): ColorReference;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export function createColorReference(value, format, file, line, context, originalValue, isVariableReference = false, variableName) {
|
|
2
|
+
return {
|
|
3
|
+
originalValue,
|
|
4
|
+
format,
|
|
5
|
+
file,
|
|
6
|
+
line,
|
|
7
|
+
context: context.trim(),
|
|
8
|
+
isVariableReference,
|
|
9
|
+
variableName
|
|
10
|
+
};
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=createColorReference.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createColorReference.js","sourceRoot":"","sources":["../../../src/functions/color-converter/createColorReference.ts"],"names":[],"mappings":"AAsCA,MAAM,UAAU,oBAAoB,CAClC,KAAa,EACb,MAAgC,EAChC,IAAY,EACZ,IAAY,EACZ,OAAe,EACf,aAAqB,EACrB,sBAA+B,KAAK,EACpC,YAAqB;IAErB,OAAO;QACL,aAAa;QACb,MAAM;QACN,IAAI;QACJ,IAAI;QACJ,OAAO,EAAE,OAAO,CAAC,IAAI,EAAE;QACvB,mBAAmB;QACnB,YAAY;KACb,CAAA;AACH,CAAC"}
|
|
@@ -1,16 +1,3 @@
|
|
|
1
|
-
import
|
|
2
|
-
export
|
|
3
|
-
getColorPatterns: () => ColorPatterns;
|
|
4
|
-
standardizeColor: (color: string) => string;
|
|
5
|
-
detectColorFormat: (color: string) => ColorFormat | null;
|
|
6
|
-
isColorValue: (value: string) => {
|
|
7
|
-
isValid: boolean;
|
|
8
|
-
format?: ColorFormat;
|
|
9
|
-
};
|
|
10
|
-
}
|
|
11
|
-
export interface ColorExtractionOptions {
|
|
12
|
-
cssVariables?: Record<string, string>;
|
|
13
|
-
thirdPartyVariables?: Record<string, string>;
|
|
14
|
-
}
|
|
1
|
+
import { ColorReference, ColorExtractorDependencies, ColorExtractionOptions } from '../../../types/color';
|
|
2
|
+
export type { ColorExtractorDependencies, ColorExtractionOptions } from '../../../types/color';
|
|
15
3
|
export declare function extractColors(code: string, filePath: string, dependencies: ColorExtractorDependencies, options?: ColorExtractionOptions): ColorReference[];
|
|
16
|
-
export declare function extractColorsFromLine(line: string, filePath: string, lineNumber: number, dependencies: ColorExtractorDependencies, options?: ColorExtractionOptions): ColorReference[];
|