@a_ng_d/utils-ui-color-palette 1.4.2 → 1.4.3
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.
|
@@ -19,7 +19,7 @@ export default class Data {
|
|
|
19
19
|
makeStyleDictionaryTokens: () => string;
|
|
20
20
|
makeUniversalJson: () => string;
|
|
21
21
|
makeCssCustomProps: (colorSpace?: ColorSpaceConfiguration) => string;
|
|
22
|
-
|
|
22
|
+
makeScssVariables: (colorSpace?: ColorSpaceConfiguration) => string;
|
|
23
23
|
makeLessVariables: (colorSpace?: ColorSpaceConfiguration) => string;
|
|
24
24
|
makeTailwindConfig: () => {
|
|
25
25
|
[key: string]: any;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data.d.ts","sourceRoot":"","sources":["../../../src/modules/data/data.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,WAAW,EACX,WAAW,EAGZ,MAAM,iBAAiB,CAAA;AACxB,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EAEjB,kBAAkB,EAClB,iBAAiB,EACjB,uBAAuB,EACxB,MAAM,0BAA0B,CAAA;AAiBjC,MAAM,CAAC,OAAO,OAAO,IAAI;IACvB,OAAO,CAAC,IAAI,CAAmB;IAC/B,OAAO,CAAC,MAAM,CAA2B;IACzC,OAAO,CAAC,IAAI,CAAC,CAAmB;IAChC,OAAO,CAAC,WAAW,CAAa;IAChC,OAAO,CAAC,YAAY,CAAoB;gBAE5B,EACV,IAAI,EACJ,MAAM,EACN,IAAI,GACL,EAAE;QACD,IAAI,EAAE,iBAAiB,CAAA;QACvB,MAAM,EAAE,KAAK,CAAC,kBAAkB,CAAC,CAAA;QACjC,IAAI,CAAC,EAAE,iBAAiB,CAAA;KACzB;IAeD,eAAe,oBAmUd;IAED,eAAe,aACH,KAAK,CACX,eAAe,GACf,SAAS,GACT,aAAa,GACb,UAAU,GACV,IAAI,GACJ,KAAK,GACL,aAAa,GACb,OAAO,CACV,iBACc,KAAK,CAAC,WAAW,CAAC,mBA4ClC;IAED,gBAAgB,eAIf;IAED,cAAc,gBAAgB,uBAAuB,YAIpD;IAED,yBAAyB,eAIxB;IAED,iBAAiB,eAIhB;IAED,kBAAkB,gBAAgB,uBAAuB,YAIxD;IAED,
|
|
1
|
+
{"version":3,"file":"data.d.ts","sourceRoot":"","sources":["../../../src/modules/data/data.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,WAAW,EACX,WAAW,EAGZ,MAAM,iBAAiB,CAAA;AACxB,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EAEjB,kBAAkB,EAClB,iBAAiB,EACjB,uBAAuB,EACxB,MAAM,0BAA0B,CAAA;AAiBjC,MAAM,CAAC,OAAO,OAAO,IAAI;IACvB,OAAO,CAAC,IAAI,CAAmB;IAC/B,OAAO,CAAC,MAAM,CAA2B;IACzC,OAAO,CAAC,IAAI,CAAC,CAAmB;IAChC,OAAO,CAAC,WAAW,CAAa;IAChC,OAAO,CAAC,YAAY,CAAoB;gBAE5B,EACV,IAAI,EACJ,MAAM,EACN,IAAI,GACL,EAAE;QACD,IAAI,EAAE,iBAAiB,CAAA;QACvB,MAAM,EAAE,KAAK,CAAC,kBAAkB,CAAC,CAAA;QACjC,IAAI,CAAC,EAAE,iBAAiB,CAAA;KACzB;IAeD,eAAe,oBAmUd;IAED,eAAe,aACH,KAAK,CACX,eAAe,GACf,SAAS,GACT,aAAa,GACb,UAAU,GACV,IAAI,GACJ,KAAK,GACL,aAAa,GACb,OAAO,CACV,iBACc,KAAK,CAAC,WAAW,CAAC,mBA4ClC;IAED,gBAAgB,eAIf;IAED,cAAc,gBAAgB,uBAAuB,YAIpD;IAED,yBAAyB,eAIxB;IAED,iBAAiB,eAIhB;IAED,kBAAkB,gBAAgB,uBAAuB,YAIxD;IAED,iBAAiB,gBAAgB,uBAAuB,YAIvD;IAED,iBAAiB,gBAAgB,uBAAuB,YAIvD;IAED,kBAAkB;;MAIjB;IAED,WAAW,eAIV;IAED,SAAS,eAIR;IAED,WAAW,eAIV;IAED,aAAa,eAIZ;IAED,OAAO,kDAIN;IAED,mBAAmB,0BAWlB;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data.js","sources":["../../../src/formats/makeUniversalTokens.ts","../../../node_modules/@a_ng_d/figmug-utils/dist/modules/case/case.js","../../../src/formats/makeUIKit.ts","../../../src/formats/makeTailwindConfig.ts","../../../src/formats/makeSwiftUI.ts","../../../src/formats/makeStyleDictionaryTokens.ts","../../../src/formats/makeScssVariables.ts","../../../src/formats/makeResources.ts","../../../src/formats/makeNativeTokens.ts","../../../src/formats/makeLessVariables.ts","../../../src/formats/makeDtcgTokens.ts","../../../src/formats/makeCsv.ts","../../../src/formats/makeCssCustomProps.ts","../../../src/formats/makeCompose.ts","../../../src/modules/data/data.ts"],"sourcesContent":["import { PaletteData, PaletteDataShadeItem } from '@tps/data.types'\n\nconst makeUniversalTokens = (paletteData: PaletteData) => {\n const workingThemes =\n paletteData.themes.filter((theme) => theme.type === 'custom theme')\n .length === 0\n ? paletteData.themes.filter((theme) => theme.type === 'default theme')\n : paletteData.themes.filter((theme) => theme.type === 'custom theme'),\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n json: { [key: string]: any } = {}\n\n const model = (shade: PaletteDataShadeItem) => {\n if (isNaN(shade.hsl[0])) shade.hsl[0] = 0\n if (isNaN(shade.lch[2])) shade.lch[2] = 0\n if (isNaN(shade.oklch[2])) shade.oklch[2] = 0\n\n return {\n rgb: {\n r: Math.floor(shade.rgb[0]),\n g: Math.floor(shade.rgb[1]),\n b: Math.floor(shade.rgb[2]),\n },\n gl: {\n r: parseFloat(shade.gl[0].toFixed(3)),\n g: parseFloat(shade.gl[1].toFixed(3)),\n b: parseFloat(shade.gl[2].toFixed(3)),\n },\n lch: {\n l: Math.floor(shade.lch[0]),\n c: Math.floor(shade.lch[1]),\n h: Math.floor(shade.lch[2]),\n },\n oklch: {\n l: parseFloat(shade.oklch[0].toFixed(3)),\n c: parseFloat(shade.oklch[1].toFixed(3)),\n h: Math.floor(shade.oklch[2]),\n },\n lab: {\n l: Math.floor(shade.lab[0]),\n a: Math.floor(shade.lab[1]),\n b: Math.floor(shade.lab[2]),\n },\n oklab: {\n l: parseFloat(shade.oklab[0].toFixed(3)),\n a: parseFloat(shade.oklab[1].toFixed(3)),\n b: parseFloat(shade.oklab[2].toFixed(3)),\n },\n hsl: {\n h: Math.floor(shade.hsl[0]),\n s: Math.floor(shade.hsl[1] * 100),\n l: Math.floor(shade.hsl[2] * 100),\n },\n hsluv: {\n h: Math.floor(shade.hsluv[0]),\n s: Math.floor(shade.hsluv[1]),\n l: Math.floor(shade.hsluv[2]),\n },\n hex: shade.hex,\n description: shade.description,\n type: 'color shade/tint',\n }\n }\n\n const modelWithAlpha = (\n shade: PaletteDataShadeItem,\n source: PaletteDataShadeItem\n ) => {\n return {\n rgb: {\n r: Math.floor(source.rgb[0]),\n g: Math.floor(source.rgb[1]),\n b: Math.floor(source.rgb[2]),\n },\n gl: {\n r: parseFloat(source.gl[0].toFixed(3)),\n g: parseFloat(source.gl[1].toFixed(3)),\n b: parseFloat(source.gl[2].toFixed(3)),\n },\n lch: {\n l: Math.floor(source.lch[0]),\n c: Math.floor(source.lch[1]),\n h: Math.floor(source.lch[2]),\n },\n oklch: {\n l: parseFloat(source.oklch[0].toFixed(3)),\n c: parseFloat(source.oklch[1].toFixed(3)),\n h: Math.floor(source.oklch[2]),\n },\n lab: {\n l: Math.floor(source.lab[0]),\n a: Math.floor(source.lab[1]),\n b: Math.floor(source.lab[2]),\n },\n oklab: {\n l: parseFloat(source.oklab[0].toFixed(3)),\n a: parseFloat(source.oklab[1].toFixed(3)),\n b: parseFloat(source.oklab[2].toFixed(3)),\n },\n hsl: {\n h: Math.floor(source.hsl[0]),\n s: Math.floor(source.hsl[1] * 100),\n l: Math.floor(source.hsl[2] * 100),\n },\n hsluv: {\n h: Math.floor(source.hsluv[0]),\n s: Math.floor(source.hsluv[1]),\n l: Math.floor(source.hsluv[2]),\n },\n hex: source.hex,\n alpha: shade.alpha,\n description: shade.description,\n type: 'color shade/tint',\n }\n }\n\n if (workingThemes[0].type === 'custom theme')\n workingThemes.forEach((theme) => {\n json[theme.name] = {}\n theme.colors.forEach((color) => {\n const source = color.shades.find(\n (shade) => shade.type === 'source color'\n )\n\n json[theme.name][color.name] = {}\n color.shades.forEach((shade) => {\n if (shade && source)\n json[theme.name][color.name][shade.name] = shade.isTransparent\n ? modelWithAlpha(shade, source)\n : model(shade)\n })\n json[theme.name][color.name]['description'] = color.description\n json[theme.name][color.name]['type'] = 'color'\n })\n json[theme.name]['description'] = theme.description\n json[theme.name]['type'] = 'color mode'\n })\n else\n workingThemes.forEach((theme) => {\n theme.colors.forEach((color) => {\n const source = color.shades.find(\n (shade) => shade.type === 'source color'\n )\n\n json[color.name] = {}\n color.shades.forEach((shade) => {\n if (shade && source)\n json[color.name][shade.name] = shade.isTransparent\n ? modelWithAlpha(shade, source)\n : model(shade)\n })\n json[color.name]['description'] = color.description\n json[color.name]['type'] = 'color'\n })\n })\n\n json['description'] = paletteData.description\n json['type'] = 'color palette'\n\n return JSON.stringify(json, null, ' ')\n}\n\nexport default makeUniversalTokens\n","var r = Object.defineProperty;\nvar o = (s, e, t) => e in s ? r(s, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : s[e] = t;\nvar a = (s, e, t) => o(s, typeof e != \"symbol\" ? e + \"\" : e, t);\nclass p {\n constructor(e) {\n a(this, \"string\");\n a(this, \"doSnakeCase\", () => this.string.toLowerCase().split(\" \").join(\"_\").replace(/[@/$^%#&!?.,;:+=<>(){}\"«»]/g, \"\"));\n a(this, \"doPascalCase\", () => this.string.charAt(0).toUpperCase() + this.string.toLowerCase().replace(/[^a-zA-Z0-9]+(.)/g, (e) => e.toUpperCase()).replace(/[@/$^%#&!?.,;:+=<>(){}\"«» ]/g, \"\").slice(1));\n a(this, \"doKebabCase\", () => this.string.toLowerCase().split(\" \").join(\"-\").replace(/[@/$^%#&!?.,;:+=<>(){}\"«»]/g, \"\"));\n a(this, \"doCamelCase\", () => this.string.toLowerCase().replace(/[^a-zA-Z0-9]+(.)/g, (e) => e.toUpperCase()).replace(/[@/$^%#&!?.,;:+=<>(){}\"«» ]/g, \"\"));\n this.string = e;\n }\n}\nexport {\n p as default\n};\n//# sourceMappingURL=case.js.map\n","import { PaletteData } from '@tps/data.types'\nimport { Case } from '@a_ng_d/figmug-utils'\n\nconst makeUIKit = (paletteData: PaletteData) => {\n const workingThemes =\n paletteData.themes.filter((theme) => theme.type === 'custom theme')\n .length === 0\n ? paletteData.themes.filter((theme) => theme.type === 'default theme')\n : paletteData.themes.filter((theme) => theme.type === 'custom theme'),\n swift: Array<string> = []\n\n workingThemes.forEach((theme) => {\n const UIColors: Array<string> = []\n theme.colors.forEach((color) => {\n const source = color.shades.find((shade) => shade.type === 'source color')\n\n UIColors.push(`// ${color.name}`)\n color.shades.reverse().forEach((shade) => {\n UIColors.push(\n shade.isTransparent\n ? `static let ${new Case(color.name).doPascalCase()}${\n shade.name === 'source' ? 'Source' : shade.name\n } = UIColor(red: ${source?.gl[0].toFixed(\n 3\n )}, green: ${source?.gl[1].toFixed(3)}, blue: ${source?.gl[2].toFixed(\n 3\n )}, alpha: ${shade.alpha ?? 1})`\n : `static let ${new Case(color.name).doPascalCase()}${\n shade.name === 'source' ? 'Source' : shade.name\n } = UIColor(red: ${shade.gl[0].toFixed(\n 3\n )}, green: ${shade.gl[1].toFixed(3)}, blue: ${shade.gl[2].toFixed(\n 3\n )})`\n )\n })\n UIColors.push('')\n })\n UIColors.pop()\n if (workingThemes[0].type === 'custom theme')\n swift.push(\n `struct ${new Case(theme.name).doPascalCase()} {\\n ${UIColors.join(\n '\\n '\n )}\\n }`\n )\n else swift.push(`${UIColors.join('\\n ')}`)\n })\n\n return `import UIKit\\n\\nstruct Color {\\n ${swift.join('\\n\\n ')}\\n}`\n}\n\nexport default makeUIKit\n","import chroma from 'chroma-js'\nimport { PaletteData } from '@tps/data.types'\nimport { Case } from '@a_ng_d/figmug-utils'\n\nconst makeTailwindConfig = (paletteData: PaletteData) => {\n const workingThemes =\n paletteData.themes.filter((theme) => theme.type === 'custom theme')\n .length === 0\n ? paletteData.themes.filter((theme) => theme.type === 'default theme')\n : paletteData.themes.filter((theme) => theme.type === 'custom theme'),\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n json: { [key: string]: any } = {\n theme: {\n colors: {},\n },\n }\n\n paletteData.themes[0].colors.forEach((color) => {\n json['theme']['colors'][new Case(color.name).doKebabCase()] = {}\n })\n\n if (workingThemes[0].type === 'custom theme')\n workingThemes.forEach((theme) => {\n theme.colors.forEach((color) => {\n const source = color.shades.find(\n (shade) => shade.type === 'source color'\n )\n\n json['theme']['colors'][new Case(color.name).doKebabCase()][\n new Case(theme.name).doKebabCase()\n ] = {}\n color.shades.forEach((shade) => {\n json['theme']['colors'][new Case(color.name).doKebabCase()][\n new Case(theme.name).doKebabCase()\n ][new Case(shade.name).doKebabCase()] = shade.isTransparent\n ? chroma(source?.hex ?? '#000000')\n .alpha(shade.alpha ?? 1)\n .hex()\n : shade.hex\n })\n })\n })\n else\n workingThemes.forEach((theme) => {\n theme.colors.forEach((color) => {\n const source = color.shades.find(\n (shade) => shade.type === 'source color'\n )\n\n json['theme']['colors'][new Case(color.name).doKebabCase()] = {}\n color.shades.sort().forEach((shade) => {\n json['theme']['colors'][new Case(color.name).doKebabCase()][\n new Case(shade.name).doKebabCase()\n ] = shade.isTransparent\n ? chroma(source?.hex ?? '#000000')\n .alpha(shade.alpha ?? 1)\n .hex()\n : shade.hex\n })\n })\n })\n\n return json\n}\n\nexport default makeTailwindConfig\n","import { PaletteData } from '@tps/data.types'\nimport { Case } from '@a_ng_d/figmug-utils'\n\nconst makeSwiftUI = (paletteData: PaletteData) => {\n const workingThemes =\n paletteData.themes.filter((theme) => theme.type === 'custom theme')\n .length === 0\n ? paletteData.themes.filter((theme) => theme.type === 'default theme')\n : paletteData.themes.filter((theme) => theme.type === 'custom theme'),\n swift: Array<string> = []\n\n workingThemes.forEach((theme) => {\n theme.colors.forEach((color) => {\n const source = color.shades.find((shade) => shade.type === 'source color')\n const Colors: Array<string> = []\n\n Colors.push(\n `// ${\n workingThemes[0].type === 'custom theme' ? theme.name + ' - ' : ''\n }${color.name}`\n )\n color.shades.reverse().forEach((shade) => {\n Colors.push(\n shade.isTransparent\n ? `public let ${\n workingThemes[0].type === 'custom theme'\n ? new Case(theme.name + ' ' + color.name).doPascalCase()\n : new Case(color.name).doPascalCase()\n }${\n shade.name === 'source' ? 'Source' : shade.name\n } = Color(red: ${source?.gl[0].toFixed(\n 3\n )}, green: ${source?.gl[1].toFixed(3)}, blue: ${shade.gl[2].toFixed(\n 3\n )}).opacity(${shade.alpha ?? 1})`\n : `public let ${\n workingThemes[0].type === 'custom theme'\n ? new Case(theme.name + ' ' + color.name).doPascalCase()\n : new Case(color.name).doPascalCase()\n }${\n shade.name === 'source' ? 'Source' : shade.name\n } = Color(red: ${shade.gl[0].toFixed(\n 3\n )}, green: ${shade.gl[1].toFixed(3)}, blue: ${shade.gl[2].toFixed(\n 3\n )})`\n )\n })\n Colors.push('')\n Colors.forEach((color) => swift.push(color))\n })\n })\n\n swift.pop()\n\n return `import SwiftUI\\n\\npublic extension Color {\\n static let Token = Color.TokenColor()\\n struct TokenColor {\\n ${swift.join(\n '\\n '\n )}\\n }\\n}`\n}\n\nexport default makeSwiftUI\n","import chroma from 'chroma-js'\nimport {\n PaletteData,\n PaletteDataColorItem,\n PaletteDataShadeItem,\n} from '@tps/data.types'\n\nconst makeStyleDictionaryTokens = (paletteData: PaletteData) => {\n const workingThemes =\n paletteData.themes.filter((theme) => theme.type === 'custom theme')\n .length === 0\n ? paletteData.themes.filter((theme) => theme.type === 'default theme')\n : paletteData.themes.filter((theme) => theme.type === 'custom theme'),\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n json: { [key: string]: any } = {\n color: {},\n }\n\n const model = (\n color: PaletteDataColorItem,\n shade: PaletteDataShadeItem,\n source: PaletteDataShadeItem\n ) => {\n return {\n type: 'color',\n value: shade.isTransparent\n ? chroma(source.hex)\n .alpha(shade.alpha ?? 1)\n .hex()\n : shade.hex,\n comment:\n color.description !== ''\n ? color.description + ' - ' + shade.description\n : shade.description,\n }\n }\n\n paletteData.themes[0].colors.forEach((color) => {\n json['color'][color.name] = {}\n })\n\n if (workingThemes[0].type === 'custom theme')\n workingThemes.forEach((theme) => {\n theme.colors.forEach((color) => {\n const source = color.shades.find(\n (shade) => shade.type === 'source color'\n )\n\n json['color'][color.name][theme.name] = {}\n color.shades.forEach((shade) => {\n if (shade && source)\n json['color'][color.name][theme.name][shade.name] = model(\n color,\n shade,\n source\n )\n })\n })\n })\n else\n workingThemes.forEach((theme) => {\n theme.colors.forEach((color) => {\n const source = color.shades.find(\n (shade) => shade.type === 'source color'\n )\n\n json['color'][color.name] = {}\n color.shades.forEach((shade) => {\n if (shade && source)\n json['color'][color.name][shade.name] = model(color, shade, source)\n })\n })\n })\n\n return JSON.stringify(json, null, ' ')\n}\n\nexport default makeStyleDictionaryTokens\n","import chroma from 'chroma-js'\nimport { PaletteData, PaletteDataShadeItem } from '@tps/data.types'\nimport { ColorSpaceConfiguration } from '@tps/configuration.types'\nimport { Case } from '@a_ng_d/figmug-utils'\n\nconst makeScssVariables = (\n paletteData: PaletteData,\n colorSpace: ColorSpaceConfiguration\n) => {\n const workingThemes =\n paletteData.themes.filter((theme) => theme.type === 'custom theme')\n .length === 0\n ? paletteData.themes.filter((theme) => theme.type === 'default theme')\n : paletteData.themes.filter((theme) => theme.type === 'custom theme'),\n scss: Array<string> = []\n\n const setValueAccordingToColorSpace = (shade: PaletteDataShadeItem) => {\n if (isNaN(shade.hsl[0])) shade.hsl[0] = 0\n if (isNaN(shade.lch[2])) shade.lch[2] = 0\n\n const actions: { [action: string]: () => void } = {\n RGB: () =>\n `rgb(${Math.floor(shade.rgb[0])}, ${Math.floor(\n shade.rgb[1]\n )}, ${Math.floor(shade.rgb[2])})`,\n HEX: () => shade.hex,\n HSL: () =>\n `hsl(${Math.floor(shade.hsl[0])}, ${Math.floor(\n shade.hsl[1] * 100\n )}%, ${Math.floor(shade.hsl[2] * 100)}%)`,\n LCH: () =>\n `lch(${Math.floor(shade.lch[0])}%, ${Math.floor(\n shade.lch[1]\n )}, ${Math.floor(shade.lch[2])})`,\n P3: () =>\n `color(display-p3 ${shade.gl[0].toFixed(3)}, ${shade.gl[1].toFixed(\n 3\n )}, ${shade.gl[2].toFixed(3)})`,\n }\n\n return actions[colorSpace ?? 'RGB']?.()\n }\n\n const setValueAccordingToAlpha = (\n shade: PaletteDataShadeItem,\n source: PaletteDataShadeItem\n ) => {\n const actions: { [action: string]: () => void } = {\n RGB: () =>\n `rgba(${Math.floor(source.rgb[0])}, ${Math.floor(\n source.rgb[1]\n )}, ${Math.floor(source.rgb[2])}, ${shade.alpha?.toFixed(2) ?? 1})`,\n HEX: () =>\n chroma(source.hex)\n .alpha(shade.alpha ?? 1)\n .hex(),\n HSL: () =>\n `hsla(${Math.floor(source.hsl[0])}, ${Math.floor(\n source.hsl[1] * 100\n )}%, ${Math.floor(source.hsl[2] * 100)}%, ${shade.alpha?.toFixed(2) ?? 1})`,\n LCH: () =>\n `lch(${Math.floor(source.lch[0])}% ${Math.floor(\n source.lch[1]\n )} ${Math.floor(source.lch[2])} / ${shade.alpha?.toFixed(2) ?? 1})`,\n P3: () =>\n `color(display-p3 ${source.gl[0].toFixed(3)}, ${source.gl[1].toFixed(\n 3\n )}, ${source.gl[2].toFixed(3)}, ${shade.alpha?.toFixed(2) ?? 1})`,\n }\n\n return actions[colorSpace ?? 'RGB']?.()\n }\n\n workingThemes.forEach((theme) => {\n const rowScss: Array<string> = []\n\n if (theme.type === 'custom theme') {\n rowScss.push(`// ${theme.name} mode`)\n rowScss.push(`@mixin ${new Case(theme.name).doCamelCase()}-mode {`)\n }\n\n theme.colors.forEach((color) => {\n rowScss.push(`// ${color.name}`)\n color.shades.reverse().forEach((shade) => {\n const source = color.shades.find((c) => c.type === 'source color')\n const variableName = `$${new Case(color.name).doKebabCase()}-${shade.name}`\n\n if (source) {\n if (theme.type === 'custom theme') {\n rowScss.push(\n ` ${variableName}: ${shade.isTransparent ? setValueAccordingToAlpha(shade, source) : setValueAccordingToColorSpace(shade)};`\n )\n } else {\n rowScss.push(\n `${variableName}: ${shade.isTransparent ? setValueAccordingToAlpha(shade, source) : setValueAccordingToColorSpace(shade)};`\n )\n }\n }\n })\n rowScss.push('')\n })\n\n if (theme.type === 'custom theme') {\n rowScss.push(`}`)\n }\n\n scss.push(rowScss.join('\\n'))\n })\n\n scss.push(`\n// Color modes map\n$modes: (`)\n\n workingThemes\n .filter((theme) => theme.type === 'custom theme')\n .forEach((theme, index, array) => {\n const themeName = new Case(theme.name).doKebabCase()\n scss.push(\n ` '${themeName}': ${new Case(theme.name).doCamelCase()}-mode${index < array.length - 1 ? ',' : ''}`\n )\n })\n\n scss.push(`);\n\n// Mode application mixin\n@mixin with-color-mode() {\n @content;\n \n @each $mode, $mixin in $modes {\n .mode-#{$mode} & {\n @include #{$mixin};\n @content($mode);\n }\n }\n}`)\n\n return scss.join('\\n\\n')\n}\n\nexport default makeScssVariables\n","import chroma from 'chroma-js'\nimport { PaletteData } from '@tps/data.types'\nimport { Case } from '@a_ng_d/figmug-utils'\n\nconst makeResources = (paletteData: PaletteData) => {\n const workingThemes =\n paletteData.themes.filter((theme) => theme.type === 'custom theme')\n .length === 0\n ? paletteData.themes.filter((theme) => theme.type === 'default theme')\n : paletteData.themes.filter((theme) => theme.type === 'custom theme'),\n resources: Array<string> = []\n\n workingThemes.forEach((theme) => {\n theme.colors.forEach((color) => {\n const source = color.shades.find((shade) => shade.type === 'source color')\n const colors: Array<string> = []\n\n colors.push(\n `${'<'}!--${\n workingThemes[0].type === 'custom theme'\n ? `${theme.name} - ${color.name}--${'>'}`\n : `${color.name}--${'>'}`\n }`\n )\n color.shades.reverse().forEach((shade) => {\n colors.push(\n `<color name=\"${\n workingThemes[0].type === 'custom theme'\n ? new Case(theme.name + ' ' + color.name).doSnakeCase()\n : new Case(color.name).doSnakeCase()\n }_${shade.name}\">${\n shade.isTransparent\n ? chroma(source?.hex ?? '#000000')\n .alpha(shade.alpha ?? 1)\n .hex()\n : shade.hex\n }</color>`\n )\n })\n colors.push('')\n colors.forEach((color) => resources.push(color))\n })\n })\n\n resources.pop()\n\n return `<?xml version=\"1.0\" encoding=\"utf-8\"?>\\n<resources>\\n ${resources.join(\n '\\n '\n )}\\n</resources>`\n}\n\nexport default makeResources\n","import chroma from 'chroma-js'\nimport {\n PaletteData,\n PaletteDataColorItem,\n PaletteDataShadeItem,\n} from '@tps/data.types'\n\nconst makeNativeTokens = (paletteData: PaletteData) => {\n const workingThemes =\n paletteData.themes.filter((theme) => theme.type === 'custom theme')\n .length === 0\n ? paletteData.themes.filter((theme) => theme.type === 'default theme')\n : paletteData.themes.filter((theme) => theme.type === 'custom theme'),\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n json: { [key: string]: any } = {\n $themes: [],\n $metadata: {\n activeThemes: [],\n tokenSetOrder: [],\n activeSets: [],\n },\n }\n\n const paletteName = paletteData.name\n\n const model = (\n color: PaletteDataColorItem,\n shade: PaletteDataShadeItem,\n source: PaletteDataShadeItem\n ) => {\n return {\n $type: 'color',\n $value: shade.isTransparent\n ? chroma(source.hex)\n .alpha(shade.alpha ?? 1)\n .hex()\n : shade.hex,\n $description:\n color.description !== ''\n ? color.description + ' - ' + shade.description\n : shade.description,\n }\n }\n\n if (workingThemes[0].type === 'custom theme')\n workingThemes.forEach((theme) => {\n theme.colors.forEach((color) => {\n const source = color.shades.find(\n (shade) => shade.type === 'source color'\n )\n\n json[`${theme.name}/${color.name}`] = {}\n color.shades.forEach((shade) => {\n if (shade && source)\n json[`${theme.name}/${color.name}`][shade.name] = model(\n color,\n shade,\n source\n )\n })\n })\n })\n else\n workingThemes.forEach((theme) => {\n theme.colors.forEach((color) => {\n const source = color.shades.find(\n (shade) => shade.type === 'source color'\n )\n\n json[`${paletteName}/${color.name}`] = {}\n color.shades.forEach((shade) => {\n if (shade && source)\n json[`${paletteName}/${color.name}`][shade.name] = model(\n color,\n shade,\n source\n )\n })\n })\n })\n\n return JSON.stringify(json, null, ' ')\n}\n\nexport default makeNativeTokens\n","import chroma from 'chroma-js'\nimport { PaletteData, PaletteDataShadeItem } from '@tps/data.types'\nimport { ColorSpaceConfiguration } from '@tps/configuration.types'\nimport { Case } from '@a_ng_d/figmug-utils'\n\nconst makeLessVariables = (\n paletteData: PaletteData,\n colorSpace: ColorSpaceConfiguration\n) => {\n const workingThemes =\n paletteData.themes.filter((theme) => theme.type === 'custom theme')\n .length === 0\n ? paletteData.themes.filter((theme) => theme.type === 'default theme')\n : paletteData.themes.filter((theme) => theme.type === 'custom theme'),\n less: Array<string> = []\n\n const setValueAccordingToColorSpace = (shade: PaletteDataShadeItem) => {\n if (isNaN(shade.hsl[0])) shade.hsl[0] = 0\n if (isNaN(shade.lch[2])) shade.lch[2] = 0\n\n const actions: { [action: string]: () => void } = {\n RGB: () =>\n `rgb(${Math.floor(shade.rgb[0])}, ${Math.floor(\n shade.rgb[1]\n )}, ${Math.floor(shade.rgb[2])})`,\n HEX: () => shade.hex,\n HSL: () =>\n `hsl(${Math.floor(shade.hsl[0])}, ${Math.floor(\n shade.hsl[1] * 100\n )}%, ${Math.floor(shade.hsl[2] * 100)}%)`,\n LCH: () =>\n `lch(${Math.floor(shade.lch[0])}%, ${Math.floor(\n shade.lch[1]\n )}, ${Math.floor(shade.lch[2])})`,\n P3: () =>\n `color(display-p3 ${shade.gl[0].toFixed(3)}, ${shade.gl[1].toFixed(\n 3\n )}, ${shade.gl[2].toFixed(3)})`,\n }\n\n return actions[colorSpace ?? 'RGB']?.()\n }\n\n const setValueAccordingToAlpha = (\n shade: PaletteDataShadeItem,\n source: PaletteDataShadeItem\n ) => {\n const actions: { [action: string]: () => void } = {\n RGB: () =>\n `rgba(${Math.floor(source.rgb[0])}, ${Math.floor(\n source.rgb[1]\n )}, ${Math.floor(source.rgb[2])}, ${shade.alpha?.toFixed(2) ?? 1})`,\n HEX: () =>\n chroma(source.hex)\n .alpha(shade.alpha ?? 1)\n .hex(),\n HSL: () =>\n `hsla(${Math.floor(source.hsl[0])}, ${Math.floor(\n source.hsl[1] * 100\n )}%, ${Math.floor(source.hsl[2] * 100)}%, ${shade.alpha?.toFixed(2) ?? 1})`,\n LCH: () =>\n `lch(${Math.floor(source.lch[0])}% ${Math.floor(\n source.lch[1]\n )} ${Math.floor(source.lch[2])} / ${shade.alpha?.toFixed(2) ?? 1})`,\n P3: () =>\n `color(display-p3 ${source.gl[0].toFixed(3)}, ${source.gl[1].toFixed(\n 3\n )}, ${source.gl[2].toFixed(3)}, ${shade.alpha?.toFixed(2) ?? 1})`,\n }\n\n return actions[colorSpace ?? 'RGB']?.()\n }\n\n const defaultTheme = workingThemes.find(\n (theme) => theme.type === 'default theme'\n )\n\n if (defaultTheme) {\n const defaultVars: Array<string> = []\n\n defaultTheme.colors.forEach((color) => {\n defaultVars.push(`// ${color.name}`)\n color.shades.reverse().forEach((shade) => {\n const source = color.shades.find((c) => c.type === 'source color')\n const variableName = `@${new Case(color.name).doKebabCase()}-${shade.name}`\n\n if (source) {\n defaultVars.push(\n `${variableName}: ${shade.isTransparent ? setValueAccordingToAlpha(shade, source) : setValueAccordingToColorSpace(shade)};`\n )\n }\n })\n defaultVars.push('')\n })\n\n less.push(defaultVars.join('\\n'))\n }\n\n workingThemes\n .filter((theme) => theme.type === 'custom theme')\n .forEach((theme) => {\n const themeName = new Case(theme.name).doKebabCase()\n less.push(`\n// ${theme.name} mode\n#${themeName} {\n .mode() {`)\n\n const themeVars: Array<string> = []\n\n theme.colors.forEach((color) => {\n themeVars.push(` // ${color.name}`)\n color.shades.reverse().forEach((shade) => {\n const source = color.shades.find((c) => c.type === 'source color')\n const variableName = `@${new Case(color.name).doKebabCase()}-${shade.name}`\n\n if (source) {\n themeVars.push(\n ` ${variableName}: ${shade.isTransparent ? setValueAccordingToAlpha(shade, source) : setValueAccordingToColorSpace(shade)};`\n )\n }\n })\n themeVars.push('')\n })\n\n if (themeVars.length > 0) {\n themeVars.pop()\n }\n\n less.push(themeVars.join('\\n'))\n less.push(` }\n}`)\n })\n\n less.push(`\n// Mode application\n.apply-mode(@mode) {\n & when (@mode = default) {\n // Default mode variables are already available\n }`)\n\n workingThemes\n .filter((theme) => theme.type === 'custom theme')\n .forEach((theme) => {\n const themeName = new Case(theme.name).doKebabCase()\n less.push(`\n & when (@mode = ${themeName}) {\n #${themeName} > .mode();\n }`)\n })\n\n less.push(`}\n\n// Mode application via HTML attribute\n.with-mode(@selector) {\n @{selector} {\n @mode-content();\n }\n \n ${workingThemes\n .filter((theme) => theme.type === 'custom theme')\n .map((theme) => {\n const themeName = new Case(theme.name).doKebabCase()\n return `@{selector}[data-mode=\"${themeName}\"] {\n #${themeName} > .mode();\n @mode-content();\n }`\n })\n .join('\\n\\n ')}\n}`)\n\n return less.join('\\n\\n')\n}\n\nexport default makeLessVariables\n","import { PaletteData, PaletteDataShadeItem } from '@tps/data.types'\nimport { ColorSpaceConfiguration } from '@tps/configuration.types'\n\nconst makeDtcgTokens = (\n paletteData: PaletteData,\n colorSpace: ColorSpaceConfiguration\n) => {\n const workingThemes =\n paletteData.themes.filter((theme) => theme.type === 'custom theme')\n .length === 0\n ? paletteData.themes.filter((theme) => theme.type === 'default theme')\n : paletteData.themes.filter((theme) => theme.type === 'custom theme'),\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n json: { [key: string]: any } = {}\n\n const setValueAccordingToColorSpace = (shade: PaletteDataShadeItem) => {\n if (isNaN(shade.oklch[2])) shade.oklch[2] = 0\n\n const actions: { [action: string]: () => void } = {\n RGB: () => {\n return {\n colorSpace: 'srgb',\n components: [\n parseFloat(shade.gl[0].toFixed(3)),\n parseFloat(shade.gl[1].toFixed(3)),\n parseFloat(shade.gl[2].toFixed(3)),\n ],\n hex: shade.hex,\n }\n },\n OKLCH: () => {\n return {\n colorSpace: 'oklch',\n components: [\n parseFloat(shade.oklch[0].toFixed(3)),\n parseFloat(shade.oklch[1].toFixed(3)),\n parseFloat(shade.oklch[2].toFixed(0)),\n ],\n hex: shade.hex,\n }\n },\n }\n\n return actions[colorSpace ?? 'RGB']?.()\n }\n\n const setValueAccordingToColorSpaceAndAlpha = (\n source: PaletteDataShadeItem,\n shade: PaletteDataShadeItem\n ) => {\n const actions: { [action: string]: () => void } = {\n RGB: () => {\n return {\n colorSpace: 'srgb',\n components: [\n parseFloat(source.gl[0].toFixed(3)),\n parseFloat(source.gl[1].toFixed(3)),\n parseFloat(source.gl[2].toFixed(3)),\n ],\n hex: source.hex,\n alpha: shade.alpha,\n }\n },\n OKLCH: () => {\n return {\n colorSpace: 'oklch',\n components: [\n parseFloat(source.oklch[0].toFixed(3)),\n parseFloat(source.oklch[1].toFixed(3)),\n parseFloat(source.oklch[2].toFixed(0)),\n ],\n hex: source.hex,\n alpha: shade.alpha,\n }\n },\n }\n\n return actions[colorSpace ?? 'RGB']?.()\n }\n\n if (workingThemes[0].type === 'custom theme')\n workingThemes.forEach((theme) => {\n theme.colors.forEach((color) => {\n const source = color.shades.find(\n (shade) => shade.type === 'source color'\n )\n\n if (!json[color.name])\n json[color.name] = {\n $type: 'color',\n }\n\n color.shades.forEach((shade) => {\n if (!json[color.name][shade.name] && source)\n json[color.name][shade.name] = {\n $type: 'color',\n $value: shade.isTransparent\n ? setValueAccordingToColorSpaceAndAlpha(source, shade)\n : setValueAccordingToColorSpace(shade),\n $description:\n color.description !== ''\n ? color.description + ' - ' + shade.description\n : shade.description,\n $extensions: {\n mode: {},\n },\n }\n if (source)\n json[color.name][shade.name].$extensions.mode[theme.name] =\n shade.isTransparent\n ? setValueAccordingToColorSpaceAndAlpha(source, shade)\n : setValueAccordingToColorSpace(shade)\n })\n })\n })\n else\n workingThemes.forEach((theme) => {\n theme.colors.forEach((color) => {\n const source = color.shades.find(\n (shade) => shade.type === 'source color'\n )\n\n json[color.name] = {}\n color.shades.forEach((shade) => {\n if (shade && source)\n json[color.name][shade.name] = {\n $type: 'color',\n $value: shade.isTransparent\n ? setValueAccordingToColorSpaceAndAlpha(source, shade)\n : setValueAccordingToColorSpace(shade),\n $description:\n color.description !== ''\n ? color.description + ' - ' + shade.description\n : shade.description,\n }\n })\n })\n })\n\n return JSON.stringify(json, null, ' ')\n}\n\nexport default makeDtcgTokens\n","import { PaletteData } from '@tps/data.types'\n\ninterface colorCsv {\n name: string\n csv: string\n}\n\nexport interface modeCsv {\n name: string\n colors: Array<colorCsv>\n type: string\n}\n\nconst makeCsv = (paletteData: PaletteData) => {\n const workingThemes =\n paletteData.themes.filter((theme) => theme.type === 'custom theme')\n .length === 0\n ? paletteData.themes.filter((theme) => theme.type === 'default theme')\n : paletteData.themes.filter((theme) => theme.type === 'custom theme'),\n colorCsv: Array<colorCsv> = [],\n modeCsv: Array<modeCsv> = [],\n lightness: Array<string> = [],\n l: Array<number | string> = [],\n c: Array<number | string> = [],\n h: Array<number | string> = []\n\n workingThemes.forEach((theme) => {\n theme.colors.forEach((color) => {\n color.shades.forEach((shade) => {\n lightness.push(shade.name)\n l.push(Math.floor(shade.lch[0]))\n c.push(Math.floor(shade.lch[1]))\n h.push(Math.floor(shade.lch[2]))\n })\n colorCsv.push({\n name: color.name,\n csv: `${color.name},Lightness,Chroma,Hue\\n${lightness\n .map((stop, index) => `${stop},${l[index]},${c[index]},${h[index]}`)\n .join('\\n')}`,\n })\n lightness.splice(0, lightness.length)\n l.splice(0, l.length)\n c.splice(0, c.length)\n h.splice(0, h.length)\n })\n modeCsv.push({\n name: theme.name,\n colors: colorCsv.map((c) => {\n return c\n }),\n type: theme.type,\n })\n colorCsv.splice(0, colorCsv.length)\n })\n\n return modeCsv\n}\n\nexport default makeCsv\n","import chroma from 'chroma-js'\nimport { PaletteData, PaletteDataShadeItem } from '@tps/data.types'\nimport { ColorSpaceConfiguration } from '@tps/configuration.types'\nimport { Case } from '@a_ng_d/figmug-utils'\n\nconst makeCssCustomProps = (\n paletteData: PaletteData,\n colorSpace: ColorSpaceConfiguration\n) => {\n const workingThemes =\n paletteData.themes.filter((theme) => theme.type === 'custom theme')\n .length === 0\n ? paletteData.themes.filter((theme) => theme.type === 'default theme')\n : paletteData.themes.filter((theme) => theme.type === 'custom theme'),\n css: Array<string> = []\n\n const setValueAccordingToColorSpace = (shade: PaletteDataShadeItem) => {\n if (isNaN(shade.hsl[0])) shade.hsl[0] = 0\n if (isNaN(shade.lch[2])) shade.lch[2] = 0\n\n const actions: { [action: string]: () => void } = {\n RGB: () =>\n `rgb(${Math.floor(shade.rgb[0])}, ${Math.floor(\n shade.rgb[1]\n )}, ${Math.floor(shade.rgb[2])})`,\n HEX: () => shade.hex,\n HSL: () =>\n `hsl(${Math.floor(shade.hsl[0])} ${Math.floor(\n shade.hsl[1] * 100\n )}% ${Math.floor(shade.hsl[2] * 100)}%)`,\n LCH: () => {\n if (shade.lch[2] === null) shade.lch[2] = 0\n return `lch(${Math.floor(shade.lch[0])}% ${Math.floor(\n shade.lch[1]\n )} ${Math.floor(shade.lch[2])})`\n },\n P3: () =>\n `color(display-p3 ${shade.gl[0].toFixed(3)} ${shade.gl[1].toFixed(\n 3\n )} ${shade.gl[2].toFixed(3)})`,\n }\n\n return actions[colorSpace ?? 'RGB']?.()\n }\n\n const setValueAccordingToAlpha = (\n shade: PaletteDataShadeItem,\n source: PaletteDataShadeItem\n ) => {\n const actions: { [action: string]: () => void } = {\n RGB: () =>\n `rgb(${Math.floor(source.rgb[0])}, ${Math.floor(\n source.rgb[1]\n )}, ${Math.floor(source.rgb[2])} / ${shade.alpha?.toFixed(2) ?? 1})`,\n HEX: () =>\n chroma(source.hex)\n .alpha(shade.alpha ?? 1)\n .hex(),\n HSL: () =>\n `hsl(${Math.floor(source.hsl[0])} ${Math.floor(\n source.hsl[1] * 100\n )}% ${Math.floor(source.hsl[2] * 100)}% / ${shade.alpha?.toFixed(2) ?? 1})`,\n LCH: () =>\n `lch(${Math.floor(source.lch[0])}% ${Math.floor(\n source.lch[1]\n )} ${Math.floor(source.lch[2])} / ${shade.alpha?.toFixed(2) ?? 1})`,\n P3: () =>\n `color(display-p3 ${source.gl[0].toFixed(3)} ${source.gl[1].toFixed(\n 3\n )} ${source.gl[2].toFixed(3)} / ${shade.alpha?.toFixed(2) ?? 1})`,\n }\n\n return actions[colorSpace ?? 'RGB']?.()\n }\n\n workingThemes.forEach((theme) => {\n const rowCss: Array<string> = []\n theme.colors.forEach((color) => {\n rowCss.push(`/* ${color.name} */`)\n color.shades.reverse().forEach((shade) => {\n const source = color.shades.find((c) => c.type === 'source color')\n\n if (source)\n rowCss.push(\n `--${new Case(color.name).doKebabCase()}-${shade.name}: ${shade.isTransparent ? setValueAccordingToAlpha(shade, source) : setValueAccordingToColorSpace(shade)};`\n )\n })\n\n rowCss.push('')\n })\n rowCss.pop()\n css.push(\n `:root${\n theme.type === 'custom theme'\n ? `[data-theme='${new Case(theme.name).doKebabCase()}']`\n : ''\n } {\\n ${rowCss.join('\\n ')}\\n}`\n )\n })\n\n return css.join('\\n\\n')\n}\n\nexport default makeCssCustomProps\n","import chroma from 'chroma-js'\nimport { PaletteData } from '@tps/data.types'\nimport { Case } from '@a_ng_d/figmug-utils'\n\nconst makeCompose = (paletteData: PaletteData) => {\n const workingThemes =\n paletteData.themes.filter((theme) => theme.type === 'custom theme')\n .length === 0\n ? paletteData.themes.filter((theme) => theme.type === 'default theme')\n : paletteData.themes.filter((theme) => theme.type === 'custom theme'),\n kotlin: Array<string> = []\n\n workingThemes.forEach((theme) => {\n theme.colors.forEach((color) => {\n const source = color.shades.find((shade) => shade.type === 'source color')\n const colors: Array<string> = []\n\n colors.push(\n `// ${\n workingThemes[0].type === 'custom theme' ? theme.name + ' - ' : ''\n }${color.name}`\n )\n color.shades.reverse().forEach((shade) => {\n colors.push(\n `val ${\n workingThemes[0].type === 'custom theme'\n ? new Case(theme.name + ' ' + color.name).doSnakeCase()\n : new Case(color.name).doSnakeCase()\n }_${shade.name} = Color(${\n shade.isTransparent\n ? chroma(source?.hex ?? '#000000')\n .alpha(shade.alpha ?? 1)\n .hex()\n .replace('#', '0xFF')\n .toUpperCase()\n : shade.hex.replace('#', '0xFF').toUpperCase()\n })`\n )\n })\n colors.push('')\n colors.forEach((color) => kotlin.push(color))\n })\n })\n\n kotlin.pop()\n\n return `import androidx.compose.ui.graphics.Color\\n\\n${kotlin.join('\\n')}`\n}\n\nexport default makeCompose\n","import { Hsluv } from 'hsluv'\nimport chroma from 'chroma-js'\nimport {\n LibraryData,\n PaletteData,\n PaletteDataColorItem,\n PaletteDataThemeItem,\n} from '@tps/data.types'\nimport {\n MetaConfiguration,\n BaseConfiguration,\n ScaleConfiguration,\n ThemeConfiguration,\n FullConfiguration,\n ColorSpaceConfiguration,\n} from '@tps/configuration.types'\nimport { Channel, HexModel } from '@tps/color.types'\nimport Color from '@modules/color/color'\nimport makeUniversalTokens from '../../formats/makeUniversalTokens'\nimport makeUIKit from '../../formats/makeUIKit'\nimport makeTailwindConfig from '../../formats/makeTailwindConfig'\nimport makeSwiftUI from '../../formats/makeSwiftUI'\nimport makeStyleDictionaryTokens from '../../formats/makeStyleDictionaryTokens'\nimport makeScssVariables from '../../formats/makeScssVariables'\nimport makeResources from '../../formats/makeResources'\nimport makeNativeTokens from '../../formats/makeNativeTokens'\nimport makeLessVariables from '../../formats/makeLessVariables'\nimport makeDtcgTokens from '../../formats/makeDtcgTokens'\nimport makeCsv from '../../formats/makeCsv'\nimport makeCssCustomProps from '../../formats/makeCssCustomProps'\nimport makeCompose from '../../formats/makeCompose'\n\nexport default class Data {\n private base: BaseConfiguration\n private themes: Array<ThemeConfiguration>\n private meta?: MetaConfiguration\n private paletteData: PaletteData\n private currentScale: ScaleConfiguration\n\n constructor({\n base,\n themes,\n meta,\n }: {\n base: BaseConfiguration\n themes: Array<ThemeConfiguration>\n meta?: MetaConfiguration\n }) {\n this.base = base\n this.themes = themes\n this.meta = meta\n this.paletteData = {\n name: base.name ?? 'UI Color Palette',\n description: base.description,\n themes: [],\n type: 'palette',\n }\n this.currentScale =\n themes.find((theme) => theme.isEnabled)?.scale ??\n ({} as ScaleConfiguration)\n }\n\n makePaletteData = () => {\n this.themes.forEach((theme) => {\n const paletteDataThemeItem: PaletteDataThemeItem = {\n id: theme.id,\n name: theme.name,\n description: theme.description,\n colors: [],\n type: theme.type,\n }\n this.base.colors.forEach((color) => {\n const scaledColors = Object.entries(theme.scale)\n .reverse()\n .map((lightness) => {\n if (color.alpha.isEnabled) {\n const foregroundColorData = new Color({\n render: 'RGB',\n sourceColor: [\n color.rgb.r * 255,\n color.rgb.g * 255,\n color.rgb.b * 255,\n ],\n alpha: parseFloat((lightness[1] / 100).toFixed(2)),\n hueShifting:\n color.hue.shift !== undefined ? color.hue.shift : 0,\n chromaShifting:\n color.chroma.shift !== undefined ? color.chroma.shift : 100,\n algorithmVersion: this.base.algorithmVersion,\n visionSimulationMode: theme.visionSimulationMode,\n })\n const backgroundColorData = new Color({\n render: 'RGB',\n sourceColor: chroma(color.alpha.backgroundColor).rgb(),\n algorithmVersion: this.base.algorithmVersion,\n visionSimulationMode: theme.visionSimulationMode,\n })\n\n switch (this.base.colorSpace) {\n case 'LCH':\n return this.base.areSourceColorsLocked\n ? [\n lightness,\n foregroundColorData.setColorWithAlpha(),\n backgroundColorData.setColorWithAlpha(),\n ]\n : [\n lightness,\n foregroundColorData.lcha(),\n backgroundColorData.lcha(),\n ]\n case 'OKLCH':\n return this.base.areSourceColorsLocked\n ? [\n lightness,\n foregroundColorData.setColorWithAlpha(),\n backgroundColorData.setColorWithAlpha(),\n ]\n : [\n lightness,\n foregroundColorData.oklcha(),\n backgroundColorData.oklcha(),\n ]\n case 'LAB':\n return this.base.areSourceColorsLocked\n ? [\n lightness,\n foregroundColorData.setColorWithAlpha(),\n backgroundColorData.setColorWithAlpha(),\n ]\n : [\n lightness,\n foregroundColorData.laba(),\n backgroundColorData.laba(),\n ]\n case 'OKLAB':\n return this.base.areSourceColorsLocked\n ? [\n lightness,\n foregroundColorData.setColorWithAlpha(),\n backgroundColorData.setColorWithAlpha(),\n ]\n : [\n lightness,\n foregroundColorData.oklaba(),\n backgroundColorData.oklaba(),\n ]\n case 'HSL':\n return this.base.areSourceColorsLocked\n ? [\n lightness,\n foregroundColorData.setColorWithAlpha(),\n backgroundColorData.setColorWithAlpha(),\n ]\n : [\n lightness,\n foregroundColorData.hsla(),\n backgroundColorData.hsla(),\n ]\n case 'HSLUV':\n return this.base.areSourceColorsLocked\n ? [\n lightness,\n foregroundColorData.setColorWithAlpha(),\n backgroundColorData.setColorWithAlpha(),\n ]\n : [\n lightness,\n foregroundColorData.hsluva(),\n backgroundColorData.hsluva(),\n ]\n default:\n return [lightness, [0, 0, 0], [255, 255, 255]]\n }\n } else {\n const colorData = new Color({\n render: 'RGB',\n sourceColor: [\n color.rgb.r * 255,\n color.rgb.g * 255,\n color.rgb.b * 255,\n ],\n lightness: lightness[1],\n hueShifting:\n color.hue.shift !== undefined ? color.hue.shift : 0,\n chromaShifting:\n color.chroma.shift !== undefined ? color.chroma.shift : 100,\n algorithmVersion: this.base.algorithmVersion,\n visionSimulationMode: theme.visionSimulationMode,\n })\n\n switch (this.base.colorSpace) {\n case 'LCH':\n return [lightness, colorData.lch()]\n case 'OKLCH':\n return [lightness, colorData.oklch()]\n case 'LAB':\n return [lightness, colorData.lab()]\n case 'OKLAB':\n return [lightness, colorData.oklab()]\n case 'HSL':\n return [lightness, colorData.hsl()]\n case 'HSLUV':\n return [lightness, colorData.hsluv()]\n default:\n return [lightness, [0, 0, 0]]\n }\n }\n })\n\n const paletteDataColorItem: PaletteDataColorItem = {\n id: color.id,\n name: color.name,\n description: color.description,\n shades: [],\n type: 'color',\n },\n sourceColor: Channel = [\n color.rgb.r * 255,\n color.rgb.g * 255,\n color.rgb.b * 255,\n ]\n\n const sourceHsluv = new Hsluv()\n sourceHsluv.rgb_r = color.rgb.r\n sourceHsluv.rgb_g = color.rgb.g\n sourceHsluv.rgb_b = color.rgb.b\n sourceHsluv.rgbToHsluv()\n\n paletteDataColorItem.shades.push({\n name: 'source',\n description: 'Source color',\n hex: chroma(sourceColor).hex(),\n rgb: sourceColor,\n gl: chroma(sourceColor).gl(),\n lch: chroma(sourceColor).lch(),\n oklch: chroma(sourceColor).oklch(),\n lab: chroma(sourceColor).lab(),\n oklab: chroma(sourceColor).oklab(),\n hsl: chroma(sourceColor).hsl(),\n hsluv: [\n sourceHsluv.hsluv_h,\n sourceHsluv.hsluv_s,\n sourceHsluv.hsluv_l,\n ],\n type: 'source color',\n })\n\n const distances = scaledColors.map((shade) =>\n chroma.distance(\n chroma(sourceColor).hex(),\n chroma(shade[1] as Channel).hex(),\n 'rgb'\n )\n )\n const minDistanceIndex = distances.indexOf(Math.min(...distances))\n\n scaledColors.forEach((scaledColor, index) => {\n const distance: number = chroma.distance(\n chroma(sourceColor).hex(),\n chroma(scaledColor[1] as Channel).hex(),\n 'rgb'\n )\n const scaleName: string =\n Object.keys(this.currentScale).find(\n (key) => key === scaledColor[0][0]\n ) ?? '0'\n const newHsluv = new Hsluv()\n const simulatedSourceColorRgb = new Color({\n render: 'RGB',\n sourceColor: chroma(sourceColor).rgb(),\n visionSimulationMode: theme.visionSimulationMode,\n }).setColor() as Channel\n const simulatedSourceColorHex = new Color({\n render: 'HEX',\n sourceColor: chroma(sourceColor).rgb(),\n visionSimulationMode: theme.visionSimulationMode,\n }).setColor() as HexModel\n\n if (\n index === minDistanceIndex &&\n this.base.areSourceColorsLocked &&\n !color.alpha.isEnabled\n ) {\n newHsluv.rgb_r = Number(simulatedSourceColorRgb[0]) / 255\n newHsluv.rgb_g = Number(simulatedSourceColorRgb[1]) / 255\n newHsluv.rgb_b = Number(simulatedSourceColorRgb[2]) / 255\n } else {\n newHsluv.rgb_r = Number(scaledColor[1][0]) / 255\n newHsluv.rgb_g = Number(scaledColor[1][1]) / 255\n newHsluv.rgb_b = Number(scaledColor[1][2]) / 255\n }\n newHsluv.rgbToHsluv()\n\n paletteDataColorItem.shades.push({\n name: scaleName,\n description: `Shade/Tint color with ${typeof scaledColor[0][1] === 'number' ? scaledColor[0][1].toFixed(1) : scaledColor[0][1]}% of ${\n color.alpha.isEnabled ? 'opacity' : 'lightness'\n }`,\n hex:\n index === minDistanceIndex &&\n this.base.areSourceColorsLocked &&\n !color.alpha.isEnabled\n ? chroma(simulatedSourceColorHex).hex()\n : chroma(scaledColor[1] as Channel).hex(),\n rgb:\n index === minDistanceIndex &&\n this.base.areSourceColorsLocked &&\n !color.alpha.isEnabled\n ? chroma(simulatedSourceColorHex).rgb()\n : chroma(scaledColor[1] as Channel).rgb(),\n gl:\n index === minDistanceIndex &&\n this.base.areSourceColorsLocked &&\n !color.alpha.isEnabled\n ? chroma(simulatedSourceColorHex).gl()\n : chroma(scaledColor[1] as Channel).gl(),\n lch:\n index === minDistanceIndex &&\n this.base.areSourceColorsLocked &&\n !color.alpha.isEnabled\n ? chroma(simulatedSourceColorHex).lch()\n : chroma(scaledColor[1] as Channel).lch(),\n oklch:\n index === minDistanceIndex &&\n this.base.areSourceColorsLocked &&\n !color.alpha.isEnabled\n ? chroma(simulatedSourceColorHex).oklch()\n : chroma(scaledColor[1] as Channel).oklch(),\n lab:\n index === minDistanceIndex &&\n this.base.areSourceColorsLocked &&\n !color.alpha.isEnabled\n ? chroma(simulatedSourceColorHex).lab()\n : chroma(scaledColor[1] as Channel).lab(),\n oklab:\n index === minDistanceIndex &&\n this.base.areSourceColorsLocked &&\n !color.alpha.isEnabled\n ? chroma(simulatedSourceColorHex).oklab()\n : chroma(scaledColor[1] as Channel).oklab(),\n hsl:\n index === minDistanceIndex &&\n this.base.areSourceColorsLocked &&\n !color.alpha.isEnabled\n ? chroma(simulatedSourceColorHex).hsl()\n : chroma(scaledColor[1] as Channel).hsl(),\n hsluv: [newHsluv.hsluv_h, newHsluv.hsluv_s, newHsluv.hsluv_l],\n alpha: color.alpha.isEnabled\n ? parseFloat(((scaledColor[0][1] as number) / 100).toFixed(2))\n : undefined,\n backgroundColor:\n color.alpha.isEnabled && color.alpha.backgroundColor\n ? chroma(scaledColor[2] as Channel).rgb()\n : undefined,\n mixedColor:\n color.alpha.isEnabled && color.alpha.backgroundColor\n ? new Color({\n visionSimulationMode: theme.visionSimulationMode,\n }).mixColorsRgb(\n [\n ...(scaledColor[1] as Channel),\n parseFloat(\n ((scaledColor[0][1] as number) / 100).toFixed(2)\n ),\n ],\n [...(scaledColor[2] as Channel), 1]\n )\n : undefined,\n isClosestToRef: distance < 4 && !this.base.areSourceColorsLocked,\n isSourceColorLocked:\n index === minDistanceIndex &&\n this.base.areSourceColorsLocked &&\n !color.alpha.isEnabled,\n isTransparent: color.alpha.isEnabled,\n type: 'color shade/tint',\n })\n })\n\n paletteDataThemeItem.colors.push(paletteDataColorItem)\n })\n this.paletteData.themes.push(paletteDataThemeItem)\n })\n\n return this.paletteData\n }\n\n makeLibraryData = (\n options?: Array<\n | 'collection_id'\n | 'mode_id'\n | 'variable_id'\n | 'style_id'\n | 'gl'\n | 'hex'\n | 'description'\n | 'alpha'\n >,\n previousData?: Array<LibraryData>\n ) => {\n const paletteData = this.makePaletteData()\n\n const libraryData: Array<LibraryData> = paletteData.themes.flatMap(\n (theme) => {\n return theme.colors.flatMap((color) =>\n color.shades.flatMap((shade) => {\n const generatedId = `${theme.id}:${color.id}:${shade.name}`\n const previousItem = previousData?.find(\n (item) => item.id === generatedId\n )\n\n return {\n id: generatedId,\n paletteName: paletteData.name,\n themeName: theme.name,\n colorName: color.name,\n shadeName: shade.name,\n ...(options?.includes('alpha') && { alpha: shade.alpha ?? 1 }),\n ...(options?.includes('hex') && { hex: shade.hex }),\n ...(options?.includes('gl') && { gl: shade.gl }),\n ...(options?.includes('description') && {\n description: color.description,\n }),\n ...(options?.includes('collection_id') && {\n collectionId: previousItem?.collectionId,\n }),\n ...(options?.includes('mode_id') && {\n modeId: previousItem?.modeId,\n }),\n ...(options?.includes('variable_id') && {\n variableId: previousItem?.variableId,\n }),\n ...(options?.includes('style_id') && {\n styleId: previousItem?.styleId,\n }),\n }\n })\n )\n }\n )\n\n return libraryData\n }\n\n makeNativeTokens = () => {\n const paletteData = this.makePaletteData()\n\n return makeNativeTokens(paletteData)\n }\n\n makeDtcgTokens = (colorSpace: ColorSpaceConfiguration = 'RGB') => {\n const paletteData = this.makePaletteData()\n\n return makeDtcgTokens(paletteData, colorSpace)\n }\n\n makeStyleDictionaryTokens = () => {\n const paletteData = this.makePaletteData()\n\n return makeStyleDictionaryTokens(paletteData)\n }\n\n makeUniversalJson = () => {\n const paletteData = this.makePaletteData()\n\n return makeUniversalTokens(paletteData)\n }\n\n makeCssCustomProps = (colorSpace: ColorSpaceConfiguration = 'RGB') => {\n const paletteData = this.makePaletteData()\n\n return makeCssCustomProps(paletteData, colorSpace)\n }\n\n makeScssVariable = (colorSpace: ColorSpaceConfiguration = 'RGB') => {\n const paletteData = this.makePaletteData()\n\n return makeScssVariables(paletteData, colorSpace)\n }\n\n makeLessVariables = (colorSpace: ColorSpaceConfiguration = 'RGB') => {\n const paletteData = this.makePaletteData()\n\n return makeLessVariables(paletteData, colorSpace)\n }\n\n makeTailwindConfig = () => {\n const paletteData = this.makePaletteData()\n\n return makeTailwindConfig(paletteData)\n }\n\n makeSwiftUI = () => {\n const paletteData = this.makePaletteData()\n\n return makeSwiftUI(paletteData)\n }\n\n makeUIKit = () => {\n const paletteData = this.makePaletteData()\n\n return makeUIKit(paletteData)\n }\n\n makeCompose = () => {\n const paletteData = this.makePaletteData()\n\n return makeCompose(paletteData)\n }\n\n makeResources = () => {\n const paletteData = this.makePaletteData()\n\n return makeResources(paletteData)\n }\n\n makeCsv = () => {\n const paletteData = this.makePaletteData()\n\n return makeCsv(paletteData)\n }\n\n makePaletteFullData = () => {\n const fullPaletteData = {\n base: this.base,\n themes: this.themes,\n libraryData: this.makeLibraryData(),\n meta: this.meta,\n version: '2025.06',\n type: 'UI_COLOR_PALETTE',\n } as FullConfiguration\n\n return fullPaletteData\n }\n}\n"],"names":["makeUniversalTokens","paletteData","workingThemes","theme","json","model","shade","modelWithAlpha","source","color","r","o","s","e","t","a","p","makeUIKit","swift","UIColors","Case","makeTailwindConfig","chroma","makeSwiftUI","Colors","makeStyleDictionaryTokens","makeScssVariables","colorSpace","scss","setValueAccordingToColorSpace","actions","_a","setValueAccordingToAlpha","rowScss","c","variableName","index","array","themeName","makeResources","resources","colors","makeNativeTokens","paletteName","makeLessVariables","less","defaultTheme","defaultVars","themeVars","makeDtcgTokens","setValueAccordingToColorSpaceAndAlpha","makeCsv","colorCsv","modeCsv","lightness","l","h","stop","makeCssCustomProps","css","rowCss","makeCompose","kotlin","Data","base","themes","meta","__publicField","paletteDataThemeItem","scaledColors","foregroundColorData","Color","backgroundColorData","colorData","paletteDataColorItem","sourceColor","sourceHsluv","Hsluv","distances","minDistanceIndex","scaledColor","distance","scaleName","key","newHsluv","simulatedSourceColorRgb","simulatedSourceColorHex","options","previousData","generatedId","previousItem","item"],"mappings":"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","x_google_ignoreList":[1]}
|
|
1
|
+
{"version":3,"file":"data.js","sources":["../../../src/formats/makeUniversalTokens.ts","../../../node_modules/@a_ng_d/figmug-utils/dist/modules/case/case.js","../../../src/formats/makeUIKit.ts","../../../src/formats/makeTailwindConfig.ts","../../../src/formats/makeSwiftUI.ts","../../../src/formats/makeStyleDictionaryTokens.ts","../../../src/formats/makeScssVariables.ts","../../../src/formats/makeResources.ts","../../../src/formats/makeNativeTokens.ts","../../../src/formats/makeLessVariables.ts","../../../src/formats/makeDtcgTokens.ts","../../../src/formats/makeCsv.ts","../../../src/formats/makeCssCustomProps.ts","../../../src/formats/makeCompose.ts","../../../src/modules/data/data.ts"],"sourcesContent":["import { PaletteData, PaletteDataShadeItem } from '@tps/data.types'\n\nconst makeUniversalTokens = (paletteData: PaletteData) => {\n const workingThemes =\n paletteData.themes.filter((theme) => theme.type === 'custom theme')\n .length === 0\n ? paletteData.themes.filter((theme) => theme.type === 'default theme')\n : paletteData.themes.filter((theme) => theme.type === 'custom theme'),\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n json: { [key: string]: any } = {}\n\n const model = (shade: PaletteDataShadeItem) => {\n if (isNaN(shade.hsl[0])) shade.hsl[0] = 0\n if (isNaN(shade.lch[2])) shade.lch[2] = 0\n if (isNaN(shade.oklch[2])) shade.oklch[2] = 0\n\n return {\n rgb: {\n r: Math.floor(shade.rgb[0]),\n g: Math.floor(shade.rgb[1]),\n b: Math.floor(shade.rgb[2]),\n },\n gl: {\n r: parseFloat(shade.gl[0].toFixed(3)),\n g: parseFloat(shade.gl[1].toFixed(3)),\n b: parseFloat(shade.gl[2].toFixed(3)),\n },\n lch: {\n l: Math.floor(shade.lch[0]),\n c: Math.floor(shade.lch[1]),\n h: Math.floor(shade.lch[2]),\n },\n oklch: {\n l: parseFloat(shade.oklch[0].toFixed(3)),\n c: parseFloat(shade.oklch[1].toFixed(3)),\n h: Math.floor(shade.oklch[2]),\n },\n lab: {\n l: Math.floor(shade.lab[0]),\n a: Math.floor(shade.lab[1]),\n b: Math.floor(shade.lab[2]),\n },\n oklab: {\n l: parseFloat(shade.oklab[0].toFixed(3)),\n a: parseFloat(shade.oklab[1].toFixed(3)),\n b: parseFloat(shade.oklab[2].toFixed(3)),\n },\n hsl: {\n h: Math.floor(shade.hsl[0]),\n s: Math.floor(shade.hsl[1] * 100),\n l: Math.floor(shade.hsl[2] * 100),\n },\n hsluv: {\n h: Math.floor(shade.hsluv[0]),\n s: Math.floor(shade.hsluv[1]),\n l: Math.floor(shade.hsluv[2]),\n },\n hex: shade.hex,\n description: shade.description,\n type: 'color shade/tint',\n }\n }\n\n const modelWithAlpha = (\n shade: PaletteDataShadeItem,\n source: PaletteDataShadeItem\n ) => {\n return {\n rgb: {\n r: Math.floor(source.rgb[0]),\n g: Math.floor(source.rgb[1]),\n b: Math.floor(source.rgb[2]),\n },\n gl: {\n r: parseFloat(source.gl[0].toFixed(3)),\n g: parseFloat(source.gl[1].toFixed(3)),\n b: parseFloat(source.gl[2].toFixed(3)),\n },\n lch: {\n l: Math.floor(source.lch[0]),\n c: Math.floor(source.lch[1]),\n h: Math.floor(source.lch[2]),\n },\n oklch: {\n l: parseFloat(source.oklch[0].toFixed(3)),\n c: parseFloat(source.oklch[1].toFixed(3)),\n h: Math.floor(source.oklch[2]),\n },\n lab: {\n l: Math.floor(source.lab[0]),\n a: Math.floor(source.lab[1]),\n b: Math.floor(source.lab[2]),\n },\n oklab: {\n l: parseFloat(source.oklab[0].toFixed(3)),\n a: parseFloat(source.oklab[1].toFixed(3)),\n b: parseFloat(source.oklab[2].toFixed(3)),\n },\n hsl: {\n h: Math.floor(source.hsl[0]),\n s: Math.floor(source.hsl[1] * 100),\n l: Math.floor(source.hsl[2] * 100),\n },\n hsluv: {\n h: Math.floor(source.hsluv[0]),\n s: Math.floor(source.hsluv[1]),\n l: Math.floor(source.hsluv[2]),\n },\n hex: source.hex,\n alpha: shade.alpha,\n description: shade.description,\n type: 'color shade/tint',\n }\n }\n\n if (workingThemes[0].type === 'custom theme')\n workingThemes.forEach((theme) => {\n json[theme.name] = {}\n theme.colors.forEach((color) => {\n const source = color.shades.find(\n (shade) => shade.type === 'source color'\n )\n\n json[theme.name][color.name] = {}\n color.shades.forEach((shade) => {\n if (shade && source)\n json[theme.name][color.name][shade.name] = shade.isTransparent\n ? modelWithAlpha(shade, source)\n : model(shade)\n })\n json[theme.name][color.name]['description'] = color.description\n json[theme.name][color.name]['type'] = 'color'\n })\n json[theme.name]['description'] = theme.description\n json[theme.name]['type'] = 'color mode'\n })\n else\n workingThemes.forEach((theme) => {\n theme.colors.forEach((color) => {\n const source = color.shades.find(\n (shade) => shade.type === 'source color'\n )\n\n json[color.name] = {}\n color.shades.forEach((shade) => {\n if (shade && source)\n json[color.name][shade.name] = shade.isTransparent\n ? modelWithAlpha(shade, source)\n : model(shade)\n })\n json[color.name]['description'] = color.description\n json[color.name]['type'] = 'color'\n })\n })\n\n json['description'] = paletteData.description\n json['type'] = 'color palette'\n\n return JSON.stringify(json, null, ' ')\n}\n\nexport default makeUniversalTokens\n","var r = Object.defineProperty;\nvar o = (s, e, t) => e in s ? r(s, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : s[e] = t;\nvar a = (s, e, t) => o(s, typeof e != \"symbol\" ? e + \"\" : e, t);\nclass p {\n constructor(e) {\n a(this, \"string\");\n a(this, \"doSnakeCase\", () => this.string.toLowerCase().split(\" \").join(\"_\").replace(/[@/$^%#&!?.,;:+=<>(){}\"«»]/g, \"\"));\n a(this, \"doPascalCase\", () => this.string.charAt(0).toUpperCase() + this.string.toLowerCase().replace(/[^a-zA-Z0-9]+(.)/g, (e) => e.toUpperCase()).replace(/[@/$^%#&!?.,;:+=<>(){}\"«» ]/g, \"\").slice(1));\n a(this, \"doKebabCase\", () => this.string.toLowerCase().split(\" \").join(\"-\").replace(/[@/$^%#&!?.,;:+=<>(){}\"«»]/g, \"\"));\n a(this, \"doCamelCase\", () => this.string.toLowerCase().replace(/[^a-zA-Z0-9]+(.)/g, (e) => e.toUpperCase()).replace(/[@/$^%#&!?.,;:+=<>(){}\"«» ]/g, \"\"));\n this.string = e;\n }\n}\nexport {\n p as default\n};\n//# sourceMappingURL=case.js.map\n","import { PaletteData } from '@tps/data.types'\nimport { Case } from '@a_ng_d/figmug-utils'\n\nconst makeUIKit = (paletteData: PaletteData) => {\n const workingThemes =\n paletteData.themes.filter((theme) => theme.type === 'custom theme')\n .length === 0\n ? paletteData.themes.filter((theme) => theme.type === 'default theme')\n : paletteData.themes.filter((theme) => theme.type === 'custom theme'),\n swift: Array<string> = []\n\n workingThemes.forEach((theme) => {\n const UIColors: Array<string> = []\n theme.colors.forEach((color) => {\n const source = color.shades.find((shade) => shade.type === 'source color')\n\n UIColors.push(`// ${color.name}`)\n color.shades.reverse().forEach((shade) => {\n UIColors.push(\n shade.isTransparent\n ? `static let ${new Case(color.name).doPascalCase()}${\n shade.name === 'source' ? 'Source' : shade.name\n } = UIColor(red: ${source?.gl[0].toFixed(\n 3\n )}, green: ${source?.gl[1].toFixed(3)}, blue: ${source?.gl[2].toFixed(\n 3\n )}, alpha: ${shade.alpha ?? 1})`\n : `static let ${new Case(color.name).doPascalCase()}${\n shade.name === 'source' ? 'Source' : shade.name\n } = UIColor(red: ${shade.gl[0].toFixed(\n 3\n )}, green: ${shade.gl[1].toFixed(3)}, blue: ${shade.gl[2].toFixed(\n 3\n )})`\n )\n })\n UIColors.push('')\n })\n UIColors.pop()\n if (workingThemes[0].type === 'custom theme')\n swift.push(\n `struct ${new Case(theme.name).doPascalCase()} {\\n ${UIColors.join(\n '\\n '\n )}\\n }`\n )\n else swift.push(`${UIColors.join('\\n ')}`)\n })\n\n return `import UIKit\\n\\nstruct Color {\\n ${swift.join('\\n\\n ')}\\n}`\n}\n\nexport default makeUIKit\n","import chroma from 'chroma-js'\nimport { PaletteData } from '@tps/data.types'\nimport { Case } from '@a_ng_d/figmug-utils'\n\nconst makeTailwindConfig = (paletteData: PaletteData) => {\n const workingThemes =\n paletteData.themes.filter((theme) => theme.type === 'custom theme')\n .length === 0\n ? paletteData.themes.filter((theme) => theme.type === 'default theme')\n : paletteData.themes.filter((theme) => theme.type === 'custom theme'),\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n json: { [key: string]: any } = {\n theme: {\n colors: {},\n },\n }\n\n paletteData.themes[0].colors.forEach((color) => {\n json['theme']['colors'][new Case(color.name).doKebabCase()] = {}\n })\n\n if (workingThemes[0].type === 'custom theme')\n workingThemes.forEach((theme) => {\n theme.colors.forEach((color) => {\n const source = color.shades.find(\n (shade) => shade.type === 'source color'\n )\n\n json['theme']['colors'][new Case(color.name).doKebabCase()][\n new Case(theme.name).doKebabCase()\n ] = {}\n color.shades.forEach((shade) => {\n json['theme']['colors'][new Case(color.name).doKebabCase()][\n new Case(theme.name).doKebabCase()\n ][new Case(shade.name).doKebabCase()] = shade.isTransparent\n ? chroma(source?.hex ?? '#000000')\n .alpha(shade.alpha ?? 1)\n .hex()\n : shade.hex\n })\n })\n })\n else\n workingThemes.forEach((theme) => {\n theme.colors.forEach((color) => {\n const source = color.shades.find(\n (shade) => shade.type === 'source color'\n )\n\n json['theme']['colors'][new Case(color.name).doKebabCase()] = {}\n color.shades.sort().forEach((shade) => {\n json['theme']['colors'][new Case(color.name).doKebabCase()][\n new Case(shade.name).doKebabCase()\n ] = shade.isTransparent\n ? chroma(source?.hex ?? '#000000')\n .alpha(shade.alpha ?? 1)\n .hex()\n : shade.hex\n })\n })\n })\n\n return json\n}\n\nexport default makeTailwindConfig\n","import { PaletteData } from '@tps/data.types'\nimport { Case } from '@a_ng_d/figmug-utils'\n\nconst makeSwiftUI = (paletteData: PaletteData) => {\n const workingThemes =\n paletteData.themes.filter((theme) => theme.type === 'custom theme')\n .length === 0\n ? paletteData.themes.filter((theme) => theme.type === 'default theme')\n : paletteData.themes.filter((theme) => theme.type === 'custom theme'),\n swift: Array<string> = []\n\n workingThemes.forEach((theme) => {\n theme.colors.forEach((color) => {\n const source = color.shades.find((shade) => shade.type === 'source color')\n const Colors: Array<string> = []\n\n Colors.push(\n `// ${\n workingThemes[0].type === 'custom theme' ? theme.name + ' - ' : ''\n }${color.name}`\n )\n color.shades.reverse().forEach((shade) => {\n Colors.push(\n shade.isTransparent\n ? `public let ${\n workingThemes[0].type === 'custom theme'\n ? new Case(theme.name + ' ' + color.name).doPascalCase()\n : new Case(color.name).doPascalCase()\n }${\n shade.name === 'source' ? 'Source' : shade.name\n } = Color(red: ${source?.gl[0].toFixed(\n 3\n )}, green: ${source?.gl[1].toFixed(3)}, blue: ${shade.gl[2].toFixed(\n 3\n )}).opacity(${shade.alpha ?? 1})`\n : `public let ${\n workingThemes[0].type === 'custom theme'\n ? new Case(theme.name + ' ' + color.name).doPascalCase()\n : new Case(color.name).doPascalCase()\n }${\n shade.name === 'source' ? 'Source' : shade.name\n } = Color(red: ${shade.gl[0].toFixed(\n 3\n )}, green: ${shade.gl[1].toFixed(3)}, blue: ${shade.gl[2].toFixed(\n 3\n )})`\n )\n })\n Colors.push('')\n Colors.forEach((color) => swift.push(color))\n })\n })\n\n swift.pop()\n\n return `import SwiftUI\\n\\npublic extension Color {\\n static let Token = Color.TokenColor()\\n struct TokenColor {\\n ${swift.join(\n '\\n '\n )}\\n }\\n}`\n}\n\nexport default makeSwiftUI\n","import chroma from 'chroma-js'\nimport {\n PaletteData,\n PaletteDataColorItem,\n PaletteDataShadeItem,\n} from '@tps/data.types'\n\nconst makeStyleDictionaryTokens = (paletteData: PaletteData) => {\n const workingThemes =\n paletteData.themes.filter((theme) => theme.type === 'custom theme')\n .length === 0\n ? paletteData.themes.filter((theme) => theme.type === 'default theme')\n : paletteData.themes.filter((theme) => theme.type === 'custom theme'),\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n json: { [key: string]: any } = {\n color: {},\n }\n\n const model = (\n color: PaletteDataColorItem,\n shade: PaletteDataShadeItem,\n source: PaletteDataShadeItem\n ) => {\n return {\n type: 'color',\n value: shade.isTransparent\n ? chroma(source.hex)\n .alpha(shade.alpha ?? 1)\n .hex()\n : shade.hex,\n comment:\n color.description !== ''\n ? color.description + ' - ' + shade.description\n : shade.description,\n }\n }\n\n paletteData.themes[0].colors.forEach((color) => {\n json['color'][color.name] = {}\n })\n\n if (workingThemes[0].type === 'custom theme')\n workingThemes.forEach((theme) => {\n theme.colors.forEach((color) => {\n const source = color.shades.find(\n (shade) => shade.type === 'source color'\n )\n\n json['color'][color.name][theme.name] = {}\n color.shades.forEach((shade) => {\n if (shade && source)\n json['color'][color.name][theme.name][shade.name] = model(\n color,\n shade,\n source\n )\n })\n })\n })\n else\n workingThemes.forEach((theme) => {\n theme.colors.forEach((color) => {\n const source = color.shades.find(\n (shade) => shade.type === 'source color'\n )\n\n json['color'][color.name] = {}\n color.shades.forEach((shade) => {\n if (shade && source)\n json['color'][color.name][shade.name] = model(color, shade, source)\n })\n })\n })\n\n return JSON.stringify(json, null, ' ')\n}\n\nexport default makeStyleDictionaryTokens\n","import chroma from 'chroma-js'\nimport { PaletteData, PaletteDataShadeItem } from '@tps/data.types'\nimport { ColorSpaceConfiguration } from '@tps/configuration.types'\nimport { Case } from '@a_ng_d/figmug-utils'\n\nconst makeScssVariables = (\n paletteData: PaletteData,\n colorSpace: ColorSpaceConfiguration\n) => {\n const workingThemes =\n paletteData.themes.filter((theme) => theme.type === 'custom theme')\n .length === 0\n ? paletteData.themes.filter((theme) => theme.type === 'default theme')\n : paletteData.themes.filter((theme) => theme.type === 'custom theme'),\n scss: Array<string> = []\n\n const setValueAccordingToColorSpace = (shade: PaletteDataShadeItem) => {\n if (isNaN(shade.hsl[0])) shade.hsl[0] = 0\n if (isNaN(shade.lch[2])) shade.lch[2] = 0\n\n const actions: { [action: string]: () => void } = {\n RGB: () =>\n `rgb(${Math.floor(shade.rgb[0])}, ${Math.floor(\n shade.rgb[1]\n )}, ${Math.floor(shade.rgb[2])})`,\n HEX: () => shade.hex,\n HSL: () =>\n `hsl(${Math.floor(shade.hsl[0])}, ${Math.floor(\n shade.hsl[1] * 100\n )}%, ${Math.floor(shade.hsl[2] * 100)}%)`,\n LCH: () =>\n `lch(${Math.floor(shade.lch[0])}%, ${Math.floor(\n shade.lch[1]\n )}, ${Math.floor(shade.lch[2])})`,\n P3: () =>\n `color(display-p3 ${shade.gl[0].toFixed(3)}, ${shade.gl[1].toFixed(\n 3\n )}, ${shade.gl[2].toFixed(3)})`,\n }\n\n return actions[colorSpace ?? 'RGB']?.()\n }\n\n const setValueAccordingToAlpha = (\n shade: PaletteDataShadeItem,\n source: PaletteDataShadeItem\n ) => {\n const actions: { [action: string]: () => void } = {\n RGB: () =>\n `rgba(${Math.floor(source.rgb[0])}, ${Math.floor(\n source.rgb[1]\n )}, ${Math.floor(source.rgb[2])}, ${shade.alpha?.toFixed(2) ?? 1})`,\n HEX: () =>\n chroma(source.hex)\n .alpha(shade.alpha ?? 1)\n .hex(),\n HSL: () =>\n `hsla(${Math.floor(source.hsl[0])}, ${Math.floor(\n source.hsl[1] * 100\n )}%, ${Math.floor(source.hsl[2] * 100)}%, ${shade.alpha?.toFixed(2) ?? 1})`,\n LCH: () =>\n `lch(${Math.floor(source.lch[0])}% ${Math.floor(\n source.lch[1]\n )} ${Math.floor(source.lch[2])} / ${shade.alpha?.toFixed(2) ?? 1})`,\n P3: () =>\n `color(display-p3 ${source.gl[0].toFixed(3)}, ${source.gl[1].toFixed(\n 3\n )}, ${source.gl[2].toFixed(3)}, ${shade.alpha?.toFixed(2) ?? 1})`,\n }\n\n return actions[colorSpace ?? 'RGB']?.()\n }\n\n workingThemes.forEach((theme) => {\n const rowScss: Array<string> = []\n\n if (theme.type === 'custom theme') {\n rowScss.push(`// ${theme.name} mode`)\n rowScss.push(`@mixin ${new Case(theme.name).doCamelCase()}-mode {`)\n }\n\n theme.colors.forEach((color) => {\n rowScss.push(`// ${color.name}`)\n color.shades.reverse().forEach((shade) => {\n const source = color.shades.find((c) => c.type === 'source color')\n const variableName = `$${new Case(color.name).doKebabCase()}-${shade.name}`\n\n if (source) {\n if (theme.type === 'custom theme') {\n rowScss.push(\n ` ${variableName}: ${shade.isTransparent ? setValueAccordingToAlpha(shade, source) : setValueAccordingToColorSpace(shade)};`\n )\n } else {\n rowScss.push(\n `${variableName}: ${shade.isTransparent ? setValueAccordingToAlpha(shade, source) : setValueAccordingToColorSpace(shade)};`\n )\n }\n }\n })\n rowScss.push('')\n })\n\n if (theme.type === 'custom theme') {\n rowScss.push(`}`)\n }\n\n scss.push(rowScss.join('\\n'))\n })\n\n scss.push(`\n// Color modes map\n$modes: (`)\n\n workingThemes\n .filter((theme) => theme.type === 'custom theme')\n .forEach((theme, index, array) => {\n const themeName = new Case(theme.name).doKebabCase()\n scss.push(\n ` '${themeName}': ${new Case(theme.name).doCamelCase()}-mode${index < array.length - 1 ? ',' : ''}`\n )\n })\n\n scss.push(`);\n\n// Mode application mixin\n@mixin with-color-mode() {\n @content;\n \n @each $mode, $mixin in $modes {\n .mode-#{$mode} & {\n @include #{$mixin};\n @content($mode);\n }\n }\n}`)\n\n return scss.join('\\n\\n')\n}\n\nexport default makeScssVariables\n","import chroma from 'chroma-js'\nimport { PaletteData } from '@tps/data.types'\nimport { Case } from '@a_ng_d/figmug-utils'\n\nconst makeResources = (paletteData: PaletteData) => {\n const workingThemes =\n paletteData.themes.filter((theme) => theme.type === 'custom theme')\n .length === 0\n ? paletteData.themes.filter((theme) => theme.type === 'default theme')\n : paletteData.themes.filter((theme) => theme.type === 'custom theme'),\n resources: Array<string> = []\n\n workingThemes.forEach((theme) => {\n theme.colors.forEach((color) => {\n const source = color.shades.find((shade) => shade.type === 'source color')\n const colors: Array<string> = []\n\n colors.push(\n `${'<'}!--${\n workingThemes[0].type === 'custom theme'\n ? `${theme.name} - ${color.name}--${'>'}`\n : `${color.name}--${'>'}`\n }`\n )\n color.shades.reverse().forEach((shade) => {\n colors.push(\n `<color name=\"${\n workingThemes[0].type === 'custom theme'\n ? new Case(theme.name + ' ' + color.name).doSnakeCase()\n : new Case(color.name).doSnakeCase()\n }_${shade.name}\">${\n shade.isTransparent\n ? chroma(source?.hex ?? '#000000')\n .alpha(shade.alpha ?? 1)\n .hex()\n : shade.hex\n }</color>`\n )\n })\n colors.push('')\n colors.forEach((color) => resources.push(color))\n })\n })\n\n resources.pop()\n\n return `<?xml version=\"1.0\" encoding=\"utf-8\"?>\\n<resources>\\n ${resources.join(\n '\\n '\n )}\\n</resources>`\n}\n\nexport default makeResources\n","import chroma from 'chroma-js'\nimport {\n PaletteData,\n PaletteDataColorItem,\n PaletteDataShadeItem,\n} from '@tps/data.types'\n\nconst makeNativeTokens = (paletteData: PaletteData) => {\n const workingThemes =\n paletteData.themes.filter((theme) => theme.type === 'custom theme')\n .length === 0\n ? paletteData.themes.filter((theme) => theme.type === 'default theme')\n : paletteData.themes.filter((theme) => theme.type === 'custom theme'),\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n json: { [key: string]: any } = {\n $themes: [],\n $metadata: {\n activeThemes: [],\n tokenSetOrder: [],\n activeSets: [],\n },\n }\n\n const paletteName = paletteData.name\n\n const model = (\n color: PaletteDataColorItem,\n shade: PaletteDataShadeItem,\n source: PaletteDataShadeItem\n ) => {\n return {\n $type: 'color',\n $value: shade.isTransparent\n ? chroma(source.hex)\n .alpha(shade.alpha ?? 1)\n .hex()\n : shade.hex,\n $description:\n color.description !== ''\n ? color.description + ' - ' + shade.description\n : shade.description,\n }\n }\n\n if (workingThemes[0].type === 'custom theme')\n workingThemes.forEach((theme) => {\n theme.colors.forEach((color) => {\n const source = color.shades.find(\n (shade) => shade.type === 'source color'\n )\n\n json[`${theme.name}/${color.name}`] = {}\n color.shades.forEach((shade) => {\n if (shade && source)\n json[`${theme.name}/${color.name}`][shade.name] = model(\n color,\n shade,\n source\n )\n })\n })\n })\n else\n workingThemes.forEach((theme) => {\n theme.colors.forEach((color) => {\n const source = color.shades.find(\n (shade) => shade.type === 'source color'\n )\n\n json[`${paletteName}/${color.name}`] = {}\n color.shades.forEach((shade) => {\n if (shade && source)\n json[`${paletteName}/${color.name}`][shade.name] = model(\n color,\n shade,\n source\n )\n })\n })\n })\n\n return JSON.stringify(json, null, ' ')\n}\n\nexport default makeNativeTokens\n","import chroma from 'chroma-js'\nimport { PaletteData, PaletteDataShadeItem } from '@tps/data.types'\nimport { ColorSpaceConfiguration } from '@tps/configuration.types'\nimport { Case } from '@a_ng_d/figmug-utils'\n\nconst makeLessVariables = (\n paletteData: PaletteData,\n colorSpace: ColorSpaceConfiguration\n) => {\n const workingThemes =\n paletteData.themes.filter((theme) => theme.type === 'custom theme')\n .length === 0\n ? paletteData.themes.filter((theme) => theme.type === 'default theme')\n : paletteData.themes.filter((theme) => theme.type === 'custom theme'),\n less: Array<string> = []\n\n const setValueAccordingToColorSpace = (shade: PaletteDataShadeItem) => {\n if (isNaN(shade.hsl[0])) shade.hsl[0] = 0\n if (isNaN(shade.lch[2])) shade.lch[2] = 0\n\n const actions: { [action: string]: () => void } = {\n RGB: () =>\n `rgb(${Math.floor(shade.rgb[0])}, ${Math.floor(\n shade.rgb[1]\n )}, ${Math.floor(shade.rgb[2])})`,\n HEX: () => shade.hex,\n HSL: () =>\n `hsl(${Math.floor(shade.hsl[0])}, ${Math.floor(\n shade.hsl[1] * 100\n )}%, ${Math.floor(shade.hsl[2] * 100)}%)`,\n LCH: () =>\n `lch(${Math.floor(shade.lch[0])}%, ${Math.floor(\n shade.lch[1]\n )}, ${Math.floor(shade.lch[2])})`,\n P3: () =>\n `color(display-p3 ${shade.gl[0].toFixed(3)}, ${shade.gl[1].toFixed(\n 3\n )}, ${shade.gl[2].toFixed(3)})`,\n }\n\n return actions[colorSpace ?? 'RGB']?.()\n }\n\n const setValueAccordingToAlpha = (\n shade: PaletteDataShadeItem,\n source: PaletteDataShadeItem\n ) => {\n const actions: { [action: string]: () => void } = {\n RGB: () =>\n `rgba(${Math.floor(source.rgb[0])}, ${Math.floor(\n source.rgb[1]\n )}, ${Math.floor(source.rgb[2])}, ${shade.alpha?.toFixed(2) ?? 1})`,\n HEX: () =>\n chroma(source.hex)\n .alpha(shade.alpha ?? 1)\n .hex(),\n HSL: () =>\n `hsla(${Math.floor(source.hsl[0])}, ${Math.floor(\n source.hsl[1] * 100\n )}%, ${Math.floor(source.hsl[2] * 100)}%, ${shade.alpha?.toFixed(2) ?? 1})`,\n LCH: () =>\n `lch(${Math.floor(source.lch[0])}% ${Math.floor(\n source.lch[1]\n )} ${Math.floor(source.lch[2])} / ${shade.alpha?.toFixed(2) ?? 1})`,\n P3: () =>\n `color(display-p3 ${source.gl[0].toFixed(3)}, ${source.gl[1].toFixed(\n 3\n )}, ${source.gl[2].toFixed(3)}, ${shade.alpha?.toFixed(2) ?? 1})`,\n }\n\n return actions[colorSpace ?? 'RGB']?.()\n }\n\n const defaultTheme = workingThemes.find(\n (theme) => theme.type === 'default theme'\n )\n\n if (defaultTheme) {\n const defaultVars: Array<string> = []\n\n defaultTheme.colors.forEach((color) => {\n defaultVars.push(`// ${color.name}`)\n color.shades.reverse().forEach((shade) => {\n const source = color.shades.find((c) => c.type === 'source color')\n const variableName = `@${new Case(color.name).doKebabCase()}-${shade.name}`\n\n if (source) {\n defaultVars.push(\n `${variableName}: ${shade.isTransparent ? setValueAccordingToAlpha(shade, source) : setValueAccordingToColorSpace(shade)};`\n )\n }\n })\n defaultVars.push('')\n })\n\n less.push(defaultVars.join('\\n'))\n }\n\n workingThemes\n .filter((theme) => theme.type === 'custom theme')\n .forEach((theme) => {\n const themeName = new Case(theme.name).doKebabCase()\n less.push(`\n// ${theme.name} mode\n#${themeName} {\n .mode() {`)\n\n const themeVars: Array<string> = []\n\n theme.colors.forEach((color) => {\n themeVars.push(` // ${color.name}`)\n color.shades.reverse().forEach((shade) => {\n const source = color.shades.find((c) => c.type === 'source color')\n const variableName = `@${new Case(color.name).doKebabCase()}-${shade.name}`\n\n if (source) {\n themeVars.push(\n ` ${variableName}: ${shade.isTransparent ? setValueAccordingToAlpha(shade, source) : setValueAccordingToColorSpace(shade)};`\n )\n }\n })\n themeVars.push('')\n })\n\n if (themeVars.length > 0) {\n themeVars.pop()\n }\n\n less.push(themeVars.join('\\n'))\n less.push(` }\n}`)\n })\n\n less.push(`\n// Mode application\n.apply-mode(@mode) {\n & when (@mode = default) {\n // Default mode variables are already available\n }`)\n\n workingThemes\n .filter((theme) => theme.type === 'custom theme')\n .forEach((theme) => {\n const themeName = new Case(theme.name).doKebabCase()\n less.push(`\n & when (@mode = ${themeName}) {\n #${themeName} > .mode();\n }`)\n })\n\n less.push(`}\n\n// Mode application via HTML attribute\n.with-mode(@selector) {\n @{selector} {\n @mode-content();\n }\n \n ${workingThemes\n .filter((theme) => theme.type === 'custom theme')\n .map((theme) => {\n const themeName = new Case(theme.name).doKebabCase()\n return `@{selector}[data-mode=\"${themeName}\"] {\n #${themeName} > .mode();\n @mode-content();\n }`\n })\n .join('\\n\\n ')}\n}`)\n\n return less.join('\\n\\n')\n}\n\nexport default makeLessVariables\n","import { PaletteData, PaletteDataShadeItem } from '@tps/data.types'\nimport { ColorSpaceConfiguration } from '@tps/configuration.types'\n\nconst makeDtcgTokens = (\n paletteData: PaletteData,\n colorSpace: ColorSpaceConfiguration\n) => {\n const workingThemes =\n paletteData.themes.filter((theme) => theme.type === 'custom theme')\n .length === 0\n ? paletteData.themes.filter((theme) => theme.type === 'default theme')\n : paletteData.themes.filter((theme) => theme.type === 'custom theme'),\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n json: { [key: string]: any } = {}\n\n const setValueAccordingToColorSpace = (shade: PaletteDataShadeItem) => {\n if (isNaN(shade.oklch[2])) shade.oklch[2] = 0\n\n const actions: { [action: string]: () => void } = {\n RGB: () => {\n return {\n colorSpace: 'srgb',\n components: [\n parseFloat(shade.gl[0].toFixed(3)),\n parseFloat(shade.gl[1].toFixed(3)),\n parseFloat(shade.gl[2].toFixed(3)),\n ],\n hex: shade.hex,\n }\n },\n OKLCH: () => {\n return {\n colorSpace: 'oklch',\n components: [\n parseFloat(shade.oklch[0].toFixed(3)),\n parseFloat(shade.oklch[1].toFixed(3)),\n parseFloat(shade.oklch[2].toFixed(0)),\n ],\n hex: shade.hex,\n }\n },\n }\n\n return actions[colorSpace ?? 'RGB']?.()\n }\n\n const setValueAccordingToColorSpaceAndAlpha = (\n source: PaletteDataShadeItem,\n shade: PaletteDataShadeItem\n ) => {\n const actions: { [action: string]: () => void } = {\n RGB: () => {\n return {\n colorSpace: 'srgb',\n components: [\n parseFloat(source.gl[0].toFixed(3)),\n parseFloat(source.gl[1].toFixed(3)),\n parseFloat(source.gl[2].toFixed(3)),\n ],\n hex: source.hex,\n alpha: shade.alpha,\n }\n },\n OKLCH: () => {\n return {\n colorSpace: 'oklch',\n components: [\n parseFloat(source.oklch[0].toFixed(3)),\n parseFloat(source.oklch[1].toFixed(3)),\n parseFloat(source.oklch[2].toFixed(0)),\n ],\n hex: source.hex,\n alpha: shade.alpha,\n }\n },\n }\n\n return actions[colorSpace ?? 'RGB']?.()\n }\n\n if (workingThemes[0].type === 'custom theme')\n workingThemes.forEach((theme) => {\n theme.colors.forEach((color) => {\n const source = color.shades.find(\n (shade) => shade.type === 'source color'\n )\n\n if (!json[color.name])\n json[color.name] = {\n $type: 'color',\n }\n\n color.shades.forEach((shade) => {\n if (!json[color.name][shade.name] && source)\n json[color.name][shade.name] = {\n $type: 'color',\n $value: shade.isTransparent\n ? setValueAccordingToColorSpaceAndAlpha(source, shade)\n : setValueAccordingToColorSpace(shade),\n $description:\n color.description !== ''\n ? color.description + ' - ' + shade.description\n : shade.description,\n $extensions: {\n mode: {},\n },\n }\n if (source)\n json[color.name][shade.name].$extensions.mode[theme.name] =\n shade.isTransparent\n ? setValueAccordingToColorSpaceAndAlpha(source, shade)\n : setValueAccordingToColorSpace(shade)\n })\n })\n })\n else\n workingThemes.forEach((theme) => {\n theme.colors.forEach((color) => {\n const source = color.shades.find(\n (shade) => shade.type === 'source color'\n )\n\n json[color.name] = {}\n color.shades.forEach((shade) => {\n if (shade && source)\n json[color.name][shade.name] = {\n $type: 'color',\n $value: shade.isTransparent\n ? setValueAccordingToColorSpaceAndAlpha(source, shade)\n : setValueAccordingToColorSpace(shade),\n $description:\n color.description !== ''\n ? color.description + ' - ' + shade.description\n : shade.description,\n }\n })\n })\n })\n\n return JSON.stringify(json, null, ' ')\n}\n\nexport default makeDtcgTokens\n","import { PaletteData } from '@tps/data.types'\n\ninterface colorCsv {\n name: string\n csv: string\n}\n\nexport interface modeCsv {\n name: string\n colors: Array<colorCsv>\n type: string\n}\n\nconst makeCsv = (paletteData: PaletteData) => {\n const workingThemes =\n paletteData.themes.filter((theme) => theme.type === 'custom theme')\n .length === 0\n ? paletteData.themes.filter((theme) => theme.type === 'default theme')\n : paletteData.themes.filter((theme) => theme.type === 'custom theme'),\n colorCsv: Array<colorCsv> = [],\n modeCsv: Array<modeCsv> = [],\n lightness: Array<string> = [],\n l: Array<number | string> = [],\n c: Array<number | string> = [],\n h: Array<number | string> = []\n\n workingThemes.forEach((theme) => {\n theme.colors.forEach((color) => {\n color.shades.forEach((shade) => {\n lightness.push(shade.name)\n l.push(Math.floor(shade.lch[0]))\n c.push(Math.floor(shade.lch[1]))\n h.push(Math.floor(shade.lch[2]))\n })\n colorCsv.push({\n name: color.name,\n csv: `${color.name},Lightness,Chroma,Hue\\n${lightness\n .map((stop, index) => `${stop},${l[index]},${c[index]},${h[index]}`)\n .join('\\n')}`,\n })\n lightness.splice(0, lightness.length)\n l.splice(0, l.length)\n c.splice(0, c.length)\n h.splice(0, h.length)\n })\n modeCsv.push({\n name: theme.name,\n colors: colorCsv.map((c) => {\n return c\n }),\n type: theme.type,\n })\n colorCsv.splice(0, colorCsv.length)\n })\n\n return modeCsv\n}\n\nexport default makeCsv\n","import chroma from 'chroma-js'\nimport { PaletteData, PaletteDataShadeItem } from '@tps/data.types'\nimport { ColorSpaceConfiguration } from '@tps/configuration.types'\nimport { Case } from '@a_ng_d/figmug-utils'\n\nconst makeCssCustomProps = (\n paletteData: PaletteData,\n colorSpace: ColorSpaceConfiguration\n) => {\n const workingThemes =\n paletteData.themes.filter((theme) => theme.type === 'custom theme')\n .length === 0\n ? paletteData.themes.filter((theme) => theme.type === 'default theme')\n : paletteData.themes.filter((theme) => theme.type === 'custom theme'),\n css: Array<string> = []\n\n const setValueAccordingToColorSpace = (shade: PaletteDataShadeItem) => {\n if (isNaN(shade.hsl[0])) shade.hsl[0] = 0\n if (isNaN(shade.lch[2])) shade.lch[2] = 0\n\n const actions: { [action: string]: () => void } = {\n RGB: () =>\n `rgb(${Math.floor(shade.rgb[0])}, ${Math.floor(\n shade.rgb[1]\n )}, ${Math.floor(shade.rgb[2])})`,\n HEX: () => shade.hex,\n HSL: () =>\n `hsl(${Math.floor(shade.hsl[0])} ${Math.floor(\n shade.hsl[1] * 100\n )}% ${Math.floor(shade.hsl[2] * 100)}%)`,\n LCH: () => {\n if (shade.lch[2] === null) shade.lch[2] = 0\n return `lch(${Math.floor(shade.lch[0])}% ${Math.floor(\n shade.lch[1]\n )} ${Math.floor(shade.lch[2])})`\n },\n P3: () =>\n `color(display-p3 ${shade.gl[0].toFixed(3)} ${shade.gl[1].toFixed(\n 3\n )} ${shade.gl[2].toFixed(3)})`,\n }\n\n return actions[colorSpace ?? 'RGB']?.()\n }\n\n const setValueAccordingToAlpha = (\n shade: PaletteDataShadeItem,\n source: PaletteDataShadeItem\n ) => {\n const actions: { [action: string]: () => void } = {\n RGB: () =>\n `rgb(${Math.floor(source.rgb[0])}, ${Math.floor(\n source.rgb[1]\n )}, ${Math.floor(source.rgb[2])} / ${shade.alpha?.toFixed(2) ?? 1})`,\n HEX: () =>\n chroma(source.hex)\n .alpha(shade.alpha ?? 1)\n .hex(),\n HSL: () =>\n `hsl(${Math.floor(source.hsl[0])} ${Math.floor(\n source.hsl[1] * 100\n )}% ${Math.floor(source.hsl[2] * 100)}% / ${shade.alpha?.toFixed(2) ?? 1})`,\n LCH: () =>\n `lch(${Math.floor(source.lch[0])}% ${Math.floor(\n source.lch[1]\n )} ${Math.floor(source.lch[2])} / ${shade.alpha?.toFixed(2) ?? 1})`,\n P3: () =>\n `color(display-p3 ${source.gl[0].toFixed(3)} ${source.gl[1].toFixed(\n 3\n )} ${source.gl[2].toFixed(3)} / ${shade.alpha?.toFixed(2) ?? 1})`,\n }\n\n return actions[colorSpace ?? 'RGB']?.()\n }\n\n workingThemes.forEach((theme) => {\n const rowCss: Array<string> = []\n theme.colors.forEach((color) => {\n rowCss.push(`/* ${color.name} */`)\n color.shades.reverse().forEach((shade) => {\n const source = color.shades.find((c) => c.type === 'source color')\n\n if (source)\n rowCss.push(\n `--${new Case(color.name).doKebabCase()}-${shade.name}: ${shade.isTransparent ? setValueAccordingToAlpha(shade, source) : setValueAccordingToColorSpace(shade)};`\n )\n })\n\n rowCss.push('')\n })\n rowCss.pop()\n css.push(\n `:root${\n theme.type === 'custom theme'\n ? `[data-theme='${new Case(theme.name).doKebabCase()}']`\n : ''\n } {\\n ${rowCss.join('\\n ')}\\n}`\n )\n })\n\n return css.join('\\n\\n')\n}\n\nexport default makeCssCustomProps\n","import chroma from 'chroma-js'\nimport { PaletteData } from '@tps/data.types'\nimport { Case } from '@a_ng_d/figmug-utils'\n\nconst makeCompose = (paletteData: PaletteData) => {\n const workingThemes =\n paletteData.themes.filter((theme) => theme.type === 'custom theme')\n .length === 0\n ? paletteData.themes.filter((theme) => theme.type === 'default theme')\n : paletteData.themes.filter((theme) => theme.type === 'custom theme'),\n kotlin: Array<string> = []\n\n workingThemes.forEach((theme) => {\n theme.colors.forEach((color) => {\n const source = color.shades.find((shade) => shade.type === 'source color')\n const colors: Array<string> = []\n\n colors.push(\n `// ${\n workingThemes[0].type === 'custom theme' ? theme.name + ' - ' : ''\n }${color.name}`\n )\n color.shades.reverse().forEach((shade) => {\n colors.push(\n `val ${\n workingThemes[0].type === 'custom theme'\n ? new Case(theme.name + ' ' + color.name).doSnakeCase()\n : new Case(color.name).doSnakeCase()\n }_${shade.name} = Color(${\n shade.isTransparent\n ? chroma(source?.hex ?? '#000000')\n .alpha(shade.alpha ?? 1)\n .hex()\n .replace('#', '0xFF')\n .toUpperCase()\n : shade.hex.replace('#', '0xFF').toUpperCase()\n })`\n )\n })\n colors.push('')\n colors.forEach((color) => kotlin.push(color))\n })\n })\n\n kotlin.pop()\n\n return `import androidx.compose.ui.graphics.Color\\n\\n${kotlin.join('\\n')}`\n}\n\nexport default makeCompose\n","import { Hsluv } from 'hsluv'\nimport chroma from 'chroma-js'\nimport {\n LibraryData,\n PaletteData,\n PaletteDataColorItem,\n PaletteDataThemeItem,\n} from '@tps/data.types'\nimport {\n MetaConfiguration,\n BaseConfiguration,\n ScaleConfiguration,\n ThemeConfiguration,\n FullConfiguration,\n ColorSpaceConfiguration,\n} from '@tps/configuration.types'\nimport { Channel, HexModel } from '@tps/color.types'\nimport Color from '@modules/color/color'\nimport makeUniversalTokens from '../../formats/makeUniversalTokens'\nimport makeUIKit from '../../formats/makeUIKit'\nimport makeTailwindConfig from '../../formats/makeTailwindConfig'\nimport makeSwiftUI from '../../formats/makeSwiftUI'\nimport makeStyleDictionaryTokens from '../../formats/makeStyleDictionaryTokens'\nimport makeScssVariables from '../../formats/makeScssVariables'\nimport makeResources from '../../formats/makeResources'\nimport makeNativeTokens from '../../formats/makeNativeTokens'\nimport makeLessVariables from '../../formats/makeLessVariables'\nimport makeDtcgTokens from '../../formats/makeDtcgTokens'\nimport makeCsv from '../../formats/makeCsv'\nimport makeCssCustomProps from '../../formats/makeCssCustomProps'\nimport makeCompose from '../../formats/makeCompose'\n\nexport default class Data {\n private base: BaseConfiguration\n private themes: Array<ThemeConfiguration>\n private meta?: MetaConfiguration\n private paletteData: PaletteData\n private currentScale: ScaleConfiguration\n\n constructor({\n base,\n themes,\n meta,\n }: {\n base: BaseConfiguration\n themes: Array<ThemeConfiguration>\n meta?: MetaConfiguration\n }) {\n this.base = base\n this.themes = themes\n this.meta = meta\n this.paletteData = {\n name: base.name ?? 'UI Color Palette',\n description: base.description,\n themes: [],\n type: 'palette',\n }\n this.currentScale =\n themes.find((theme) => theme.isEnabled)?.scale ??\n ({} as ScaleConfiguration)\n }\n\n makePaletteData = () => {\n this.themes.forEach((theme) => {\n const paletteDataThemeItem: PaletteDataThemeItem = {\n id: theme.id,\n name: theme.name,\n description: theme.description,\n colors: [],\n type: theme.type,\n }\n this.base.colors.forEach((color) => {\n const scaledColors = Object.entries(theme.scale)\n .reverse()\n .map((lightness) => {\n if (color.alpha.isEnabled) {\n const foregroundColorData = new Color({\n render: 'RGB',\n sourceColor: [\n color.rgb.r * 255,\n color.rgb.g * 255,\n color.rgb.b * 255,\n ],\n alpha: parseFloat((lightness[1] / 100).toFixed(2)),\n hueShifting:\n color.hue.shift !== undefined ? color.hue.shift : 0,\n chromaShifting:\n color.chroma.shift !== undefined ? color.chroma.shift : 100,\n algorithmVersion: this.base.algorithmVersion,\n visionSimulationMode: theme.visionSimulationMode,\n })\n const backgroundColorData = new Color({\n render: 'RGB',\n sourceColor: chroma(color.alpha.backgroundColor).rgb(),\n algorithmVersion: this.base.algorithmVersion,\n visionSimulationMode: theme.visionSimulationMode,\n })\n\n switch (this.base.colorSpace) {\n case 'LCH':\n return this.base.areSourceColorsLocked\n ? [\n lightness,\n foregroundColorData.setColorWithAlpha(),\n backgroundColorData.setColorWithAlpha(),\n ]\n : [\n lightness,\n foregroundColorData.lcha(),\n backgroundColorData.lcha(),\n ]\n case 'OKLCH':\n return this.base.areSourceColorsLocked\n ? [\n lightness,\n foregroundColorData.setColorWithAlpha(),\n backgroundColorData.setColorWithAlpha(),\n ]\n : [\n lightness,\n foregroundColorData.oklcha(),\n backgroundColorData.oklcha(),\n ]\n case 'LAB':\n return this.base.areSourceColorsLocked\n ? [\n lightness,\n foregroundColorData.setColorWithAlpha(),\n backgroundColorData.setColorWithAlpha(),\n ]\n : [\n lightness,\n foregroundColorData.laba(),\n backgroundColorData.laba(),\n ]\n case 'OKLAB':\n return this.base.areSourceColorsLocked\n ? [\n lightness,\n foregroundColorData.setColorWithAlpha(),\n backgroundColorData.setColorWithAlpha(),\n ]\n : [\n lightness,\n foregroundColorData.oklaba(),\n backgroundColorData.oklaba(),\n ]\n case 'HSL':\n return this.base.areSourceColorsLocked\n ? [\n lightness,\n foregroundColorData.setColorWithAlpha(),\n backgroundColorData.setColorWithAlpha(),\n ]\n : [\n lightness,\n foregroundColorData.hsla(),\n backgroundColorData.hsla(),\n ]\n case 'HSLUV':\n return this.base.areSourceColorsLocked\n ? [\n lightness,\n foregroundColorData.setColorWithAlpha(),\n backgroundColorData.setColorWithAlpha(),\n ]\n : [\n lightness,\n foregroundColorData.hsluva(),\n backgroundColorData.hsluva(),\n ]\n default:\n return [lightness, [0, 0, 0], [255, 255, 255]]\n }\n } else {\n const colorData = new Color({\n render: 'RGB',\n sourceColor: [\n color.rgb.r * 255,\n color.rgb.g * 255,\n color.rgb.b * 255,\n ],\n lightness: lightness[1],\n hueShifting:\n color.hue.shift !== undefined ? color.hue.shift : 0,\n chromaShifting:\n color.chroma.shift !== undefined ? color.chroma.shift : 100,\n algorithmVersion: this.base.algorithmVersion,\n visionSimulationMode: theme.visionSimulationMode,\n })\n\n switch (this.base.colorSpace) {\n case 'LCH':\n return [lightness, colorData.lch()]\n case 'OKLCH':\n return [lightness, colorData.oklch()]\n case 'LAB':\n return [lightness, colorData.lab()]\n case 'OKLAB':\n return [lightness, colorData.oklab()]\n case 'HSL':\n return [lightness, colorData.hsl()]\n case 'HSLUV':\n return [lightness, colorData.hsluv()]\n default:\n return [lightness, [0, 0, 0]]\n }\n }\n })\n\n const paletteDataColorItem: PaletteDataColorItem = {\n id: color.id,\n name: color.name,\n description: color.description,\n shades: [],\n type: 'color',\n },\n sourceColor: Channel = [\n color.rgb.r * 255,\n color.rgb.g * 255,\n color.rgb.b * 255,\n ]\n\n const sourceHsluv = new Hsluv()\n sourceHsluv.rgb_r = color.rgb.r\n sourceHsluv.rgb_g = color.rgb.g\n sourceHsluv.rgb_b = color.rgb.b\n sourceHsluv.rgbToHsluv()\n\n paletteDataColorItem.shades.push({\n name: 'source',\n description: 'Source color',\n hex: chroma(sourceColor).hex(),\n rgb: sourceColor,\n gl: chroma(sourceColor).gl(),\n lch: chroma(sourceColor).lch(),\n oklch: chroma(sourceColor).oklch(),\n lab: chroma(sourceColor).lab(),\n oklab: chroma(sourceColor).oklab(),\n hsl: chroma(sourceColor).hsl(),\n hsluv: [\n sourceHsluv.hsluv_h,\n sourceHsluv.hsluv_s,\n sourceHsluv.hsluv_l,\n ],\n type: 'source color',\n })\n\n const distances = scaledColors.map((shade) =>\n chroma.distance(\n chroma(sourceColor).hex(),\n chroma(shade[1] as Channel).hex(),\n 'rgb'\n )\n )\n const minDistanceIndex = distances.indexOf(Math.min(...distances))\n\n scaledColors.forEach((scaledColor, index) => {\n const distance: number = chroma.distance(\n chroma(sourceColor).hex(),\n chroma(scaledColor[1] as Channel).hex(),\n 'rgb'\n )\n const scaleName: string =\n Object.keys(this.currentScale).find(\n (key) => key === scaledColor[0][0]\n ) ?? '0'\n const newHsluv = new Hsluv()\n const simulatedSourceColorRgb = new Color({\n render: 'RGB',\n sourceColor: chroma(sourceColor).rgb(),\n visionSimulationMode: theme.visionSimulationMode,\n }).setColor() as Channel\n const simulatedSourceColorHex = new Color({\n render: 'HEX',\n sourceColor: chroma(sourceColor).rgb(),\n visionSimulationMode: theme.visionSimulationMode,\n }).setColor() as HexModel\n\n if (\n index === minDistanceIndex &&\n this.base.areSourceColorsLocked &&\n !color.alpha.isEnabled\n ) {\n newHsluv.rgb_r = Number(simulatedSourceColorRgb[0]) / 255\n newHsluv.rgb_g = Number(simulatedSourceColorRgb[1]) / 255\n newHsluv.rgb_b = Number(simulatedSourceColorRgb[2]) / 255\n } else {\n newHsluv.rgb_r = Number(scaledColor[1][0]) / 255\n newHsluv.rgb_g = Number(scaledColor[1][1]) / 255\n newHsluv.rgb_b = Number(scaledColor[1][2]) / 255\n }\n newHsluv.rgbToHsluv()\n\n paletteDataColorItem.shades.push({\n name: scaleName,\n description: `Shade/Tint color with ${typeof scaledColor[0][1] === 'number' ? scaledColor[0][1].toFixed(1) : scaledColor[0][1]}% of ${\n color.alpha.isEnabled ? 'opacity' : 'lightness'\n }`,\n hex:\n index === minDistanceIndex &&\n this.base.areSourceColorsLocked &&\n !color.alpha.isEnabled\n ? chroma(simulatedSourceColorHex).hex()\n : chroma(scaledColor[1] as Channel).hex(),\n rgb:\n index === minDistanceIndex &&\n this.base.areSourceColorsLocked &&\n !color.alpha.isEnabled\n ? chroma(simulatedSourceColorHex).rgb()\n : chroma(scaledColor[1] as Channel).rgb(),\n gl:\n index === minDistanceIndex &&\n this.base.areSourceColorsLocked &&\n !color.alpha.isEnabled\n ? chroma(simulatedSourceColorHex).gl()\n : chroma(scaledColor[1] as Channel).gl(),\n lch:\n index === minDistanceIndex &&\n this.base.areSourceColorsLocked &&\n !color.alpha.isEnabled\n ? chroma(simulatedSourceColorHex).lch()\n : chroma(scaledColor[1] as Channel).lch(),\n oklch:\n index === minDistanceIndex &&\n this.base.areSourceColorsLocked &&\n !color.alpha.isEnabled\n ? chroma(simulatedSourceColorHex).oklch()\n : chroma(scaledColor[1] as Channel).oklch(),\n lab:\n index === minDistanceIndex &&\n this.base.areSourceColorsLocked &&\n !color.alpha.isEnabled\n ? chroma(simulatedSourceColorHex).lab()\n : chroma(scaledColor[1] as Channel).lab(),\n oklab:\n index === minDistanceIndex &&\n this.base.areSourceColorsLocked &&\n !color.alpha.isEnabled\n ? chroma(simulatedSourceColorHex).oklab()\n : chroma(scaledColor[1] as Channel).oklab(),\n hsl:\n index === minDistanceIndex &&\n this.base.areSourceColorsLocked &&\n !color.alpha.isEnabled\n ? chroma(simulatedSourceColorHex).hsl()\n : chroma(scaledColor[1] as Channel).hsl(),\n hsluv: [newHsluv.hsluv_h, newHsluv.hsluv_s, newHsluv.hsluv_l],\n alpha: color.alpha.isEnabled\n ? parseFloat(((scaledColor[0][1] as number) / 100).toFixed(2))\n : undefined,\n backgroundColor:\n color.alpha.isEnabled && color.alpha.backgroundColor\n ? chroma(scaledColor[2] as Channel).rgb()\n : undefined,\n mixedColor:\n color.alpha.isEnabled && color.alpha.backgroundColor\n ? new Color({\n visionSimulationMode: theme.visionSimulationMode,\n }).mixColorsRgb(\n [\n ...(scaledColor[1] as Channel),\n parseFloat(\n ((scaledColor[0][1] as number) / 100).toFixed(2)\n ),\n ],\n [...(scaledColor[2] as Channel), 1]\n )\n : undefined,\n isClosestToRef: distance < 4 && !this.base.areSourceColorsLocked,\n isSourceColorLocked:\n index === minDistanceIndex &&\n this.base.areSourceColorsLocked &&\n !color.alpha.isEnabled,\n isTransparent: color.alpha.isEnabled,\n type: 'color shade/tint',\n })\n })\n\n paletteDataThemeItem.colors.push(paletteDataColorItem)\n })\n this.paletteData.themes.push(paletteDataThemeItem)\n })\n\n return this.paletteData\n }\n\n makeLibraryData = (\n options?: Array<\n | 'collection_id'\n | 'mode_id'\n | 'variable_id'\n | 'style_id'\n | 'gl'\n | 'hex'\n | 'description'\n | 'alpha'\n >,\n previousData?: Array<LibraryData>\n ) => {\n const paletteData = this.makePaletteData()\n\n const libraryData: Array<LibraryData> = paletteData.themes.flatMap(\n (theme) => {\n return theme.colors.flatMap((color) =>\n color.shades.flatMap((shade) => {\n const generatedId = `${theme.id}:${color.id}:${shade.name}`\n const previousItem = previousData?.find(\n (item) => item.id === generatedId\n )\n\n return {\n id: generatedId,\n paletteName: paletteData.name,\n themeName: theme.name,\n colorName: color.name,\n shadeName: shade.name,\n ...(options?.includes('alpha') && { alpha: shade.alpha ?? 1 }),\n ...(options?.includes('hex') && { hex: shade.hex }),\n ...(options?.includes('gl') && { gl: shade.gl }),\n ...(options?.includes('description') && {\n description: color.description,\n }),\n ...(options?.includes('collection_id') && {\n collectionId: previousItem?.collectionId,\n }),\n ...(options?.includes('mode_id') && {\n modeId: previousItem?.modeId,\n }),\n ...(options?.includes('variable_id') && {\n variableId: previousItem?.variableId,\n }),\n ...(options?.includes('style_id') && {\n styleId: previousItem?.styleId,\n }),\n }\n })\n )\n }\n )\n\n return libraryData\n }\n\n makeNativeTokens = () => {\n const paletteData = this.makePaletteData()\n\n return makeNativeTokens(paletteData)\n }\n\n makeDtcgTokens = (colorSpace: ColorSpaceConfiguration = 'RGB') => {\n const paletteData = this.makePaletteData()\n\n return makeDtcgTokens(paletteData, colorSpace)\n }\n\n makeStyleDictionaryTokens = () => {\n const paletteData = this.makePaletteData()\n\n return makeStyleDictionaryTokens(paletteData)\n }\n\n makeUniversalJson = () => {\n const paletteData = this.makePaletteData()\n\n return makeUniversalTokens(paletteData)\n }\n\n makeCssCustomProps = (colorSpace: ColorSpaceConfiguration = 'RGB') => {\n const paletteData = this.makePaletteData()\n\n return makeCssCustomProps(paletteData, colorSpace)\n }\n\n makeScssVariables = (colorSpace: ColorSpaceConfiguration = 'RGB') => {\n const paletteData = this.makePaletteData()\n\n return makeScssVariables(paletteData, colorSpace)\n }\n\n makeLessVariables = (colorSpace: ColorSpaceConfiguration = 'RGB') => {\n const paletteData = this.makePaletteData()\n\n return makeLessVariables(paletteData, colorSpace)\n }\n\n makeTailwindConfig = () => {\n const paletteData = this.makePaletteData()\n\n return makeTailwindConfig(paletteData)\n }\n\n makeSwiftUI = () => {\n const paletteData = this.makePaletteData()\n\n return makeSwiftUI(paletteData)\n }\n\n makeUIKit = () => {\n const paletteData = this.makePaletteData()\n\n return makeUIKit(paletteData)\n }\n\n makeCompose = () => {\n const paletteData = this.makePaletteData()\n\n return makeCompose(paletteData)\n }\n\n makeResources = () => {\n const paletteData = this.makePaletteData()\n\n return makeResources(paletteData)\n }\n\n makeCsv = () => {\n const paletteData = this.makePaletteData()\n\n return makeCsv(paletteData)\n }\n\n makePaletteFullData = () => {\n const fullPaletteData = {\n base: this.base,\n themes: this.themes,\n libraryData: this.makeLibraryData(),\n meta: this.meta,\n version: '2025.06',\n type: 'UI_COLOR_PALETTE',\n } as FullConfiguration\n\n return fullPaletteData\n }\n}\n"],"names":["makeUniversalTokens","paletteData","workingThemes","theme","json","model","shade","modelWithAlpha","source","color","r","o","s","e","t","a","p","makeUIKit","swift","UIColors","Case","makeTailwindConfig","chroma","makeSwiftUI","Colors","makeStyleDictionaryTokens","makeScssVariables","colorSpace","scss","setValueAccordingToColorSpace","actions","_a","setValueAccordingToAlpha","rowScss","c","variableName","index","array","themeName","makeResources","resources","colors","makeNativeTokens","paletteName","makeLessVariables","less","defaultTheme","defaultVars","themeVars","makeDtcgTokens","setValueAccordingToColorSpaceAndAlpha","makeCsv","colorCsv","modeCsv","lightness","l","h","stop","makeCssCustomProps","css","rowCss","makeCompose","kotlin","Data","base","themes","meta","__publicField","paletteDataThemeItem","scaledColors","foregroundColorData","Color","backgroundColorData","colorData","paletteDataColorItem","sourceColor","sourceHsluv","Hsluv","distances","minDistanceIndex","scaledColor","distance","scaleName","key","newHsluv","simulatedSourceColorRgb","simulatedSourceColorHex","options","previousData","generatedId","previousItem","item"],"mappings":"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","x_google_ignoreList":[1]}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@a_ng_d/utils-ui-color-palette",
|
|
3
3
|
"private": false,
|
|
4
|
-
"version": "1.4.
|
|
4
|
+
"version": "1.4.3",
|
|
5
5
|
"description": "Core utilities library for UI Color Palette - a color management plugin for design tools. This library provides the foundational color manipulation, contrast calculation, and palette generation features used in the plugin.",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|