@pie-players/pie-theme 0.3.46 → 0.3.48
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"color-schemes.js","sourceRoot":"","sources":["../src/color-schemes.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n\tnormalizePieThemeVariables,\n\ttype ThemeVariables,\n} from \"./theme-types.js\";\n\nexport type PieColorSchemePreview = {\n\tbg: string;\n\ttext: string;\n\tprimary: string;\n};\n\nexport type PieColorSchemeDefinition = {\n\tid: string;\n\tname: string;\n\tdescription?: string;\n\tvariables: ThemeVariables;\n\tpreview?: PieColorSchemePreview;\n};\n\nexport const BUILTIN_PIE_COLOR_SCHEMES: PieColorSchemeDefinition[] = [\n\t{\n\t\tid: \"default\",\n\t\tname: \"Default\",\n\t\tdescription: \"Standard PIE colors\",\n\t\tvariables: {},\n\t\tpreview: { bg: \"#ffffff\", text: \"#000000\", primary: \"#3f51b5\" },\n\t},\n\t{\n\t\tid: \"black-on-white\",\n\t\tname: \"Black on White\",\n\t\tdescription: \"High contrast for readability\",\n\t\tvariables: {\n\t\t\t\"--pie-background\": \"#ffffff\",\n\t\t\t\"--pie-background-dark\": \"#f5f5f5\",\n\t\t\t\"--pie-secondary-background\": \"#eeeeee\",\n\t\t\t\"--pie-dropdown-background\": \"#e0e0e0\",\n\t\t\t\"--pie-text\": \"#000000\",\n\t\t\t\"--pie-white\": \"#ffffff\",\n\t\t\t\"--pie-black\": \"#000000\",\n\t\t\t\"--pie-primary\": \"#0000cc\",\n\t\t\t\"--pie-primary-light\": \"#6666ff\",\n\t\t\t\"--pie-primary-dark\": \"#000088\",\n\t\t\t\"--pie-border\": \"#000000\",\n\t\t\t\"--pie-border-light\": \"#666666\",\n\t\t\t\"--pie-border-dark\": \"#000000\",\n\t\t\t\"--pie-button-bg\": \"#ffffff\",\n\t\t\t\"--pie-button-border\": \"#666666\",\n\t\t\t\"--pie-button-color\": \"#000000\",\n\t\t\t\"--pie-button-hover-bg\": \"#f5f5f5\",\n\t\t\t\"--pie-button-hover-border\": \"#000000\",\n\t\t\t\"--pie-button-hover-color\": \"#000000\",\n\t\t\t\"--pie-button-active-bg\": \"#eeeeee\",\n\t\t\t\"--pie-button-focus-outline\": \"#0000cc\",\n\t\t\t\"--pie-focus-checked\": \"#0066ff\",\n\t\t\t\"--pie-focus-checked-border\": \"#0000cc\",\n\t\t},\n\t\tpreview: { bg: \"#ffffff\", text: \"#000000\", primary: \"#0000cc\" },\n\t},\n\t{\n\t\tid: \"white-on-black\",\n\t\tname: \"White on Black\",\n\t\tdescription: \"Inverse high contrast\",\n\t\tvariables: {\n\t\t\t\"--pie-background\": \"#000000\",\n\t\t\t\"--pie-background-dark\": \"#1a1a1a\",\n\t\t\t\"--pie-secondary-background\": \"#222222\",\n\t\t\t\"--pie-dropdown-background\": \"#2a2a2a\",\n\t\t\t\"--pie-text\": \"#ffffff\",\n\t\t\t\"--pie-white\": \"#000000\",\n\t\t\t\"--pie-black\": \"#ffffff\",\n\t\t\t\"--pie-primary\": \"#ffff00\",\n\t\t\t\"--pie-primary-light\": \"#ffff99\",\n\t\t\t\"--pie-primary-dark\": \"#cccc00\",\n\t\t\t\"--pie-border\": \"#ffffff\",\n\t\t\t\"--pie-border-light\": \"#cccccc\",\n\t\t\t\"--pie-border-dark\": \"#ffffff\",\n\t\t\t\"--pie-button-bg\": \"#000000\",\n\t\t\t\"--pie-button-border\": \"#cccccc\",\n\t\t\t\"--pie-button-color\": \"#ffffff\",\n\t\t\t\"--pie-button-hover-bg\": \"#1a1a1a\",\n\t\t\t\"--pie-button-hover-border\": \"#ffffff\",\n\t\t\t\"--pie-button-hover-color\": \"#ffffff\",\n\t\t\t\"--pie-button-active-bg\": \"#222222\",\n\t\t\t\"--pie-button-focus-outline\": \"#ffff00\",\n\t\t\t\"--pie-focus-checked\": \"#ffff00\",\n\t\t\t\"--pie-focus-checked-border\": \"#ffff00\",\n\t\t},\n\t\tpreview: { bg: \"#000000\", text: \"#ffffff\", primary: \"#ffff00\" },\n\t},\n\t{\n\t\tid: \"rose-on-green\",\n\t\tname: \"Rose on Green\",\n\t\tdescription: \"Color blind friendly (protanopia/deuteranopia)\",\n\t\tvariables: {\n\t\t\t\"--pie-background\": \"#ccffcc\",\n\t\t\t\"--pie-background-dark\": \"#aaeedd\",\n\t\t\t\"--pie-secondary-background\": \"#99ddbb\",\n\t\t\t\"--pie-dropdown-background\": \"#88cc99\",\n\t\t\t\"--pie-text\": \"#3d0022\",\n\t\t\t\"--pie-white\": \"#ccffcc\",\n\t\t\t\"--pie-black\": \"#3d0022\",\n\t\t\t\"--pie-primary\": \"#660044\",\n\t\t\t\"--pie-primary-light\": \"#cc6699\",\n\t\t\t\"--pie-primary-dark\": \"#440033\",\n\t\t\t\"--pie-border\": \"#3d0022\",\n\t\t\t\"--pie-border-light\": \"#663344\",\n\t\t\t\"--pie-border-dark\": \"#220011\",\n\t\t\t\"--pie-button-bg\": \"#ccffcc\",\n\t\t\t\"--pie-button-border\": \"#663344\",\n\t\t\t\"--pie-button-color\": \"#3d0022\",\n\t\t\t\"--pie-button-hover-bg\": \"#aaeedd\",\n\t\t\t\"--pie-button-hover-border\": \"#3d0022\",\n\t\t\t\"--pie-button-hover-color\": \"#3d0022\",\n\t\t\t\"--pie-button-active-bg\": \"#99ddbb\",\n\t\t\t\"--pie-button-focus-outline\": \"#660044\",\n\t\t\t\"--pie-focus-checked\": \"#880055\",\n\t\t\t\"--pie-focus-checked-border\": \"#660044\",\n\t\t},\n\t\tpreview: { bg: \"#ccffcc\", text: \"#3d0022\", primary: \"#660044\" },\n\t},\n\t{\n\t\tid: \"yellow-on-blue\",\n\t\tname: \"Yellow on Blue\",\n\t\tdescription: \"Strong contrast scheme\",\n\t\tvariables: {\n\t\t\t\"--pie-background\": \"#000066\",\n\t\t\t\"--pie-background-dark\": \"#000055\",\n\t\t\t\"--pie-secondary-background\": \"#000044\",\n\t\t\t\"--pie-dropdown-background\": \"#000033\",\n\t\t\t\"--pie-text\": \"#ffff00\",\n\t\t\t\"--pie-white\": \"#000066\",\n\t\t\t\"--pie-black\": \"#ffff00\",\n\t\t\t\"--pie-primary\": \"#ffff66\",\n\t\t\t\"--pie-primary-light\": \"#ffffaa\",\n\t\t\t\"--pie-primary-dark\": \"#cccc00\",\n\t\t\t\"--pie-border\": \"#ffff00\",\n\t\t\t\"--pie-border-light\": \"#aaaa66\",\n\t\t\t\"--pie-border-dark\": \"#cccc00\",\n\t\t\t\"--pie-button-bg\": \"#000066\",\n\t\t\t\"--pie-button-border\": \"#aaaa66\",\n\t\t\t\"--pie-button-color\": \"#ffff00\",\n\t\t\t\"--pie-button-hover-bg\": \"#000055\",\n\t\t\t\"--pie-button-hover-border\": \"#ffff00\",\n\t\t\t\"--pie-button-hover-color\": \"#ffff00\",\n\t\t\t\"--pie-button-active-bg\": \"#000044\",\n\t\t\t\"--pie-button-focus-outline\": \"#ffff66\",\n\t\t\t\"--pie-focus-checked\": \"#ffff00\",\n\t\t\t\"--pie-focus-checked-border\": \"#cccc00\",\n\t\t},\n\t\tpreview: { bg: \"#000066\", text: \"#ffff00\", primary: \"#ffff66\" },\n\t},\n\t{\n\t\tid: \"black-on-rose\",\n\t\tname: \"Black on Rose\",\n\t\tdescription: \"Warm tinted background\",\n\t\tvariables: {\n\t\t\t\"--pie-background\": \"#ffccdd\",\n\t\t\t\"--pie-background-dark\": \"#ffb3cc\",\n\t\t\t\"--pie-secondary-background\": \"#ff99bb\",\n\t\t\t\"--pie-dropdown-background\": \"#ff88aa\",\n\t\t\t\"--pie-text\": \"#000000\",\n\t\t\t\"--pie-white\": \"#ffccdd\",\n\t\t\t\"--pie-black\": \"#000000\",\n\t\t\t\"--pie-primary\": \"#880044\",\n\t\t\t\"--pie-primary-light\": \"#dd6699\",\n\t\t\t\"--pie-primary-dark\": \"#550033\",\n\t\t\t\"--pie-border\": \"#000000\",\n\t\t\t\"--pie-border-light\": \"#555555\",\n\t\t\t\"--pie-border-dark\": \"#000000\",\n\t\t\t\"--pie-button-bg\": \"#ffccdd\",\n\t\t\t\"--pie-button-border\": \"#555555\",\n\t\t\t\"--pie-button-color\": \"#000000\",\n\t\t\t\"--pie-button-hover-bg\": \"#ffb3cc\",\n\t\t\t\"--pie-button-hover-border\": \"#000000\",\n\t\t\t\"--pie-button-hover-color\": \"#000000\",\n\t\t\t\"--pie-button-active-bg\": \"#ff99bb\",\n\t\t\t\"--pie-button-focus-outline\": \"#880044\",\n\t\t\t\"--pie-focus-checked\": \"#880044\",\n\t\t\t\"--pie-focus-checked-border\": \"#550033\",\n\t\t},\n\t\tpreview: { bg: \"#ffccdd\", text: \"#000000\", primary: \"#880044\" },\n\t},\n\t{\n\t\tid: \"light-gray-on-dark-gray\",\n\t\tname: \"Light Gray on Dark Gray\",\n\t\tdescription: \"Reduced brightness for light sensitivity\",\n\t\tvariables: {\n\t\t\t\"--pie-background\": \"#333333\",\n\t\t\t\"--pie-background-dark\": \"#2a2a2a\",\n\t\t\t\"--pie-secondary-background\": \"#222222\",\n\t\t\t\"--pie-dropdown-background\": \"#1a1a1a\",\n\t\t\t\"--pie-text\": \"#e0e0e0\",\n\t\t\t\"--pie-white\": \"#333333\",\n\t\t\t\"--pie-black\": \"#e0e0e0\",\n\t\t\t\"--pie-primary\": \"#aaaaaa\",\n\t\t\t\"--pie-primary-light\": \"#cccccc\",\n\t\t\t\"--pie-primary-dark\": \"#888888\",\n\t\t\t\"--pie-border\": \"#e0e0e0\",\n\t\t\t\"--pie-border-light\": \"#cccccc\",\n\t\t\t\"--pie-border-dark\": \"#ffffff\",\n\t\t\t\"--pie-button-bg\": \"#333333\",\n\t\t\t\"--pie-button-border\": \"#cccccc\",\n\t\t\t\"--pie-button-color\": \"#e0e0e0\",\n\t\t\t\"--pie-button-hover-bg\": \"#2a2a2a\",\n\t\t\t\"--pie-button-hover-border\": \"#ffffff\",\n\t\t\t\"--pie-button-hover-color\": \"#e0e0e0\",\n\t\t\t\"--pie-button-active-bg\": \"#222222\",\n\t\t\t\"--pie-button-focus-outline\": \"#aaaaaa\",\n\t\t\t\"--pie-focus-checked\": \"#cccccc\",\n\t\t\t\"--pie-focus-checked-border\": \"#aaaaaa\",\n\t\t},\n\t\tpreview: { bg: \"#333333\", text: \"#e0e0e0\", primary: \"#aaaaaa\" },\n\t},\n];\n\nconst builtInSchemeMap = new Map(\n\tBUILTIN_PIE_COLOR_SCHEMES.map((scheme) => [scheme.id, scheme]),\n);\nconst customSchemeMap = new Map<string, PieColorSchemeDefinition>();\n\nfunction normalizeScheme(\n\tscheme: PieColorSchemeDefinition,\n): PieColorSchemeDefinition | null {\n\tconst id = scheme.id?.trim();\n\tif (!id) {\n\t\treturn null;\n\t}\n\tconst name = scheme.name?.trim() || id;\n\tconst normalizedVars = normalizePieThemeVariables(scheme.variables);\n\tif (Object.keys(normalizedVars).length === 0 && id !== \"default\") {\n\t\tconsole.warn(\n\t\t\t`[pie-theme] color scheme \"${id}\" does not define valid --pie-* variables.`,\n\t\t);\n\t}\n\treturn {\n\t\tid,\n\t\tname,\n\t\tdescription: scheme.description,\n\t\tpreview: scheme.preview,\n\t\tvariables: normalizedVars,\n\t};\n}\n\nexport function listPieColorSchemes(): PieColorSchemeDefinition[] {\n\treturn [...builtInSchemeMap.values(), ...customSchemeMap.values()];\n}\n\nexport function getPieColorScheme(\n\tschemeId: string | null | undefined,\n): PieColorSchemeDefinition | undefined {\n\tif (!schemeId) {\n\t\treturn builtInSchemeMap.get(\"default\");\n\t}\n\treturn customSchemeMap.get(schemeId) ?? builtInSchemeMap.get(schemeId);\n}\n\nexport function resolvePieColorSchemeVariables(\n\tschemeId: string | null | undefined,\n): ThemeVariables {\n\treturn getPieColorScheme(schemeId)?.variables ?? {};\n}\n\nexport function registerPieColorSchemes(\n\tschemes: PieColorSchemeDefinition[],\n\toptions: { overwrite?: boolean } = {},\n): void {\n\tconst overwrite = options.overwrite ?? true;\n\tfor (const rawScheme of schemes) {\n\t\tconst scheme = normalizeScheme(rawScheme);\n\t\tif (!scheme) {\n\t\t\tcontinue;\n\t\t}\n\t\tif (!overwrite && customSchemeMap.has(scheme.id)) {\n\t\t\tcontinue;\n\t\t}\n\t\tcustomSchemeMap.set(scheme.id, scheme);\n\t}\n}\n\nexport function unregisterPieColorScheme(schemeId: string): void {\n\tif (!schemeId || builtInSchemeMap.has(schemeId)) {\n\t\treturn;\n\t}\n\tcustomSchemeMap.delete(schemeId);\n}\n\n"]}
|
|
1
|
+
{"version":3,"file":"color-schemes.js","sourceRoot":"","sources":["../src/color-schemes.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n\tnormalizePieThemeVariables,\n\ttype ThemeVariables,\n} from \"./theme-types.js\";\n\nexport type PieColorSchemePreview = {\n\tbg: string;\n\ttext: string;\n\tprimary: string;\n};\n\nexport type PieColorSchemeDefinition = {\n\tid: string;\n\tname: string;\n\tdescription?: string;\n\tvariables: ThemeVariables;\n\tpreview?: PieColorSchemePreview;\n};\n\nexport const BUILTIN_PIE_COLOR_SCHEMES: PieColorSchemeDefinition[] = [\n\t{\n\t\tid: \"default\",\n\t\tname: \"Default\",\n\t\tdescription: \"Standard PIE colors\",\n\t\tvariables: {},\n\t\tpreview: { bg: \"#ffffff\", text: \"#000000\", primary: \"#3f51b5\" },\n\t},\n\t{\n\t\tid: \"black-on-white\",\n\t\tname: \"Black on White\",\n\t\tdescription: \"High contrast for readability\",\n\t\tvariables: {\n\t\t\t\"--pie-background\": \"#ffffff\",\n\t\t\t\"--pie-background-dark\": \"#f5f5f5\",\n\t\t\t\"--pie-secondary-background\": \"#eeeeee\",\n\t\t\t\"--pie-dropdown-background\": \"#e0e0e0\",\n\t\t\t\"--pie-text\": \"#000000\",\n\t\t\t\"--pie-white\": \"#ffffff\",\n\t\t\t\"--pie-black\": \"#000000\",\n\t\t\t\"--pie-primary\": \"#0000cc\",\n\t\t\t\"--pie-primary-light\": \"#6666ff\",\n\t\t\t\"--pie-primary-dark\": \"#000088\",\n\t\t\t\"--pie-border\": \"#000000\",\n\t\t\t\"--pie-border-light\": \"#666666\",\n\t\t\t\"--pie-border-dark\": \"#000000\",\n\t\t\t\"--pie-button-bg\": \"#ffffff\",\n\t\t\t\"--pie-button-border\": \"#666666\",\n\t\t\t\"--pie-button-color\": \"#000000\",\n\t\t\t\"--pie-button-hover-bg\": \"#f5f5f5\",\n\t\t\t\"--pie-button-hover-border\": \"#000000\",\n\t\t\t\"--pie-button-hover-color\": \"#000000\",\n\t\t\t\"--pie-button-active-bg\": \"#eeeeee\",\n\t\t\t\"--pie-button-focus-outline\": \"#0000cc\",\n\t\t\t\"--pie-focus-checked\": \"#0066ff\",\n\t\t\t\"--pie-focus-checked-border\": \"#0000cc\",\n\t\t},\n\t\tpreview: { bg: \"#ffffff\", text: \"#000000\", primary: \"#0000cc\" },\n\t},\n\t{\n\t\tid: \"white-on-black\",\n\t\tname: \"White on Black\",\n\t\tdescription: \"Inverse high contrast\",\n\t\tvariables: {\n\t\t\t\"--pie-background\": \"#000000\",\n\t\t\t\"--pie-background-dark\": \"#1a1a1a\",\n\t\t\t\"--pie-secondary-background\": \"#222222\",\n\t\t\t\"--pie-dropdown-background\": \"#2a2a2a\",\n\t\t\t\"--pie-text\": \"#ffffff\",\n\t\t\t\"--pie-white\": \"#000000\",\n\t\t\t\"--pie-black\": \"#ffffff\",\n\t\t\t\"--pie-primary\": \"#ffff00\",\n\t\t\t\"--pie-primary-light\": \"#ffff99\",\n\t\t\t\"--pie-primary-dark\": \"#cccc00\",\n\t\t\t\"--pie-border\": \"#ffffff\",\n\t\t\t\"--pie-border-light\": \"#cccccc\",\n\t\t\t\"--pie-border-dark\": \"#ffffff\",\n\t\t\t\"--pie-button-bg\": \"#000000\",\n\t\t\t\"--pie-button-border\": \"#cccccc\",\n\t\t\t\"--pie-button-color\": \"#ffffff\",\n\t\t\t\"--pie-button-hover-bg\": \"#1a1a1a\",\n\t\t\t\"--pie-button-hover-border\": \"#ffffff\",\n\t\t\t\"--pie-button-hover-color\": \"#ffffff\",\n\t\t\t\"--pie-button-active-bg\": \"#222222\",\n\t\t\t\"--pie-button-focus-outline\": \"#ffff00\",\n\t\t\t\"--pie-focus-checked\": \"#ffff00\",\n\t\t\t\"--pie-focus-checked-border\": \"#ffff00\",\n\t\t},\n\t\tpreview: { bg: \"#000000\", text: \"#ffffff\", primary: \"#ffff00\" },\n\t},\n\t{\n\t\tid: \"rose-on-green\",\n\t\tname: \"Rose on Green\",\n\t\tdescription: \"Color blind friendly (protanopia/deuteranopia)\",\n\t\tvariables: {\n\t\t\t\"--pie-background\": \"#ccffcc\",\n\t\t\t\"--pie-background-dark\": \"#aaeedd\",\n\t\t\t\"--pie-secondary-background\": \"#99ddbb\",\n\t\t\t\"--pie-dropdown-background\": \"#88cc99\",\n\t\t\t\"--pie-text\": \"#3d0022\",\n\t\t\t\"--pie-white\": \"#ccffcc\",\n\t\t\t\"--pie-black\": \"#3d0022\",\n\t\t\t\"--pie-primary\": \"#660044\",\n\t\t\t\"--pie-primary-light\": \"#cc6699\",\n\t\t\t\"--pie-primary-dark\": \"#440033\",\n\t\t\t\"--pie-border\": \"#3d0022\",\n\t\t\t\"--pie-border-light\": \"#663344\",\n\t\t\t\"--pie-border-dark\": \"#220011\",\n\t\t\t\"--pie-button-bg\": \"#ccffcc\",\n\t\t\t\"--pie-button-border\": \"#663344\",\n\t\t\t\"--pie-button-color\": \"#3d0022\",\n\t\t\t\"--pie-button-hover-bg\": \"#aaeedd\",\n\t\t\t\"--pie-button-hover-border\": \"#3d0022\",\n\t\t\t\"--pie-button-hover-color\": \"#3d0022\",\n\t\t\t\"--pie-button-active-bg\": \"#99ddbb\",\n\t\t\t\"--pie-button-focus-outline\": \"#660044\",\n\t\t\t\"--pie-focus-checked\": \"#880055\",\n\t\t\t\"--pie-focus-checked-border\": \"#660044\",\n\t\t},\n\t\tpreview: { bg: \"#ccffcc\", text: \"#3d0022\", primary: \"#660044\" },\n\t},\n\t{\n\t\tid: \"yellow-on-blue\",\n\t\tname: \"Yellow on Blue\",\n\t\tdescription: \"Strong contrast scheme\",\n\t\tvariables: {\n\t\t\t\"--pie-background\": \"#000066\",\n\t\t\t\"--pie-background-dark\": \"#000055\",\n\t\t\t\"--pie-secondary-background\": \"#000044\",\n\t\t\t\"--pie-dropdown-background\": \"#000033\",\n\t\t\t\"--pie-text\": \"#ffff00\",\n\t\t\t\"--pie-white\": \"#000066\",\n\t\t\t\"--pie-black\": \"#ffff00\",\n\t\t\t\"--pie-primary\": \"#ffff66\",\n\t\t\t\"--pie-primary-light\": \"#ffffaa\",\n\t\t\t\"--pie-primary-dark\": \"#cccc00\",\n\t\t\t\"--pie-border\": \"#ffff00\",\n\t\t\t\"--pie-border-light\": \"#aaaa66\",\n\t\t\t\"--pie-border-dark\": \"#cccc00\",\n\t\t\t\"--pie-button-bg\": \"#000066\",\n\t\t\t\"--pie-button-border\": \"#aaaa66\",\n\t\t\t\"--pie-button-color\": \"#ffff00\",\n\t\t\t\"--pie-button-hover-bg\": \"#000055\",\n\t\t\t\"--pie-button-hover-border\": \"#ffff00\",\n\t\t\t\"--pie-button-hover-color\": \"#ffff00\",\n\t\t\t\"--pie-button-active-bg\": \"#000044\",\n\t\t\t\"--pie-button-focus-outline\": \"#ffff66\",\n\t\t\t\"--pie-focus-checked\": \"#ffff00\",\n\t\t\t\"--pie-focus-checked-border\": \"#cccc00\",\n\t\t},\n\t\tpreview: { bg: \"#000066\", text: \"#ffff00\", primary: \"#ffff66\" },\n\t},\n\t{\n\t\tid: \"black-on-rose\",\n\t\tname: \"Black on Rose\",\n\t\tdescription: \"Warm tinted background\",\n\t\tvariables: {\n\t\t\t\"--pie-background\": \"#ffccdd\",\n\t\t\t\"--pie-background-dark\": \"#ffb3cc\",\n\t\t\t\"--pie-secondary-background\": \"#ff99bb\",\n\t\t\t\"--pie-dropdown-background\": \"#ff88aa\",\n\t\t\t\"--pie-text\": \"#000000\",\n\t\t\t\"--pie-white\": \"#ffccdd\",\n\t\t\t\"--pie-black\": \"#000000\",\n\t\t\t\"--pie-primary\": \"#880044\",\n\t\t\t\"--pie-primary-light\": \"#dd6699\",\n\t\t\t\"--pie-primary-dark\": \"#550033\",\n\t\t\t\"--pie-border\": \"#000000\",\n\t\t\t\"--pie-border-light\": \"#555555\",\n\t\t\t\"--pie-border-dark\": \"#000000\",\n\t\t\t\"--pie-button-bg\": \"#ffccdd\",\n\t\t\t\"--pie-button-border\": \"#555555\",\n\t\t\t\"--pie-button-color\": \"#000000\",\n\t\t\t\"--pie-button-hover-bg\": \"#ffb3cc\",\n\t\t\t\"--pie-button-hover-border\": \"#000000\",\n\t\t\t\"--pie-button-hover-color\": \"#000000\",\n\t\t\t\"--pie-button-active-bg\": \"#ff99bb\",\n\t\t\t\"--pie-button-focus-outline\": \"#880044\",\n\t\t\t\"--pie-focus-checked\": \"#880044\",\n\t\t\t\"--pie-focus-checked-border\": \"#550033\",\n\t\t},\n\t\tpreview: { bg: \"#ffccdd\", text: \"#000000\", primary: \"#880044\" },\n\t},\n\t{\n\t\tid: \"light-gray-on-dark-gray\",\n\t\tname: \"Light Gray on Dark Gray\",\n\t\tdescription: \"Reduced brightness for light sensitivity\",\n\t\tvariables: {\n\t\t\t\"--pie-background\": \"#333333\",\n\t\t\t\"--pie-background-dark\": \"#2a2a2a\",\n\t\t\t\"--pie-secondary-background\": \"#222222\",\n\t\t\t\"--pie-dropdown-background\": \"#1a1a1a\",\n\t\t\t\"--pie-text\": \"#e0e0e0\",\n\t\t\t\"--pie-white\": \"#333333\",\n\t\t\t\"--pie-black\": \"#e0e0e0\",\n\t\t\t\"--pie-primary\": \"#aaaaaa\",\n\t\t\t\"--pie-primary-light\": \"#cccccc\",\n\t\t\t\"--pie-primary-dark\": \"#888888\",\n\t\t\t\"--pie-border\": \"#e0e0e0\",\n\t\t\t\"--pie-border-light\": \"#cccccc\",\n\t\t\t\"--pie-border-dark\": \"#ffffff\",\n\t\t\t\"--pie-button-bg\": \"#333333\",\n\t\t\t\"--pie-button-border\": \"#cccccc\",\n\t\t\t\"--pie-button-color\": \"#e0e0e0\",\n\t\t\t\"--pie-button-hover-bg\": \"#2a2a2a\",\n\t\t\t\"--pie-button-hover-border\": \"#ffffff\",\n\t\t\t\"--pie-button-hover-color\": \"#e0e0e0\",\n\t\t\t\"--pie-button-active-bg\": \"#222222\",\n\t\t\t\"--pie-button-focus-outline\": \"#aaaaaa\",\n\t\t\t\"--pie-focus-checked\": \"#cccccc\",\n\t\t\t\"--pie-focus-checked-border\": \"#aaaaaa\",\n\t\t},\n\t\tpreview: { bg: \"#333333\", text: \"#e0e0e0\", primary: \"#aaaaaa\" },\n\t},\n];\n\nconst builtInSchemeMap = new Map(\n\tBUILTIN_PIE_COLOR_SCHEMES.map((scheme) => [scheme.id, scheme]),\n);\nconst customSchemeMap = new Map<string, PieColorSchemeDefinition>();\n\nfunction normalizeScheme(\n\tscheme: PieColorSchemeDefinition,\n): PieColorSchemeDefinition | null {\n\tconst id = scheme.id?.trim();\n\tif (!id) {\n\t\treturn null;\n\t}\n\tconst name = scheme.name?.trim() || id;\n\tconst normalizedVars = normalizePieThemeVariables(scheme.variables);\n\tif (Object.keys(normalizedVars).length === 0 && id !== \"default\") {\n\t\tconsole.warn(\n\t\t\t`[pie-theme] color scheme \"${id}\" does not define valid --pie-* variables.`,\n\t\t);\n\t}\n\treturn {\n\t\tid,\n\t\tname,\n\t\tdescription: scheme.description,\n\t\tpreview: scheme.preview,\n\t\tvariables: normalizedVars,\n\t};\n}\n\nexport function listPieColorSchemes(): PieColorSchemeDefinition[] {\n\treturn [...builtInSchemeMap.values(), ...customSchemeMap.values()];\n}\n\nexport function getPieColorScheme(\n\tschemeId: string | null | undefined,\n): PieColorSchemeDefinition | undefined {\n\tif (!schemeId) {\n\t\treturn builtInSchemeMap.get(\"default\");\n\t}\n\treturn customSchemeMap.get(schemeId) ?? builtInSchemeMap.get(schemeId);\n}\n\nexport function resolvePieColorSchemeVariables(\n\tschemeId: string | null | undefined,\n): ThemeVariables {\n\treturn getPieColorScheme(schemeId)?.variables ?? {};\n}\n\nexport function registerPieColorSchemes(\n\tschemes: PieColorSchemeDefinition[],\n\toptions: { overwrite?: boolean } = {},\n): void {\n\tconst overwrite = options.overwrite ?? true;\n\tfor (const rawScheme of schemes) {\n\t\tconst scheme = normalizeScheme(rawScheme);\n\t\tif (!scheme) {\n\t\t\tcontinue;\n\t\t}\n\t\tif (!overwrite && customSchemeMap.has(scheme.id)) {\n\t\t\tcontinue;\n\t\t}\n\t\tcustomSchemeMap.set(scheme.id, scheme);\n\t}\n}\n\nexport function unregisterPieColorScheme(schemeId: string): void {\n\tif (!schemeId || builtInSchemeMap.has(schemeId)) {\n\t\treturn;\n\t}\n\tcustomSchemeMap.delete(schemeId);\n}\n"]}
|
package/dist/providers.js
CHANGED
package/dist/providers.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"providers.js","sourceRoot":"","sources":["../src/providers.ts"],"names":[],"mappings":"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","sourcesContent":["import { normalizePieThemeVariables, type ThemeVariables } from \"./theme-types.js\";\n\nexport interface ThemeProviderAdapter {\n\treadonly id: string;\n\tcanRead(target: HTMLElement): boolean;\n\tread(target: HTMLElement): ThemeVariables;\n}\n\nconst themeProviderRegistry = new Map<string, ThemeProviderAdapter>();\n\nfunction trimCssVar(value: string): string | undefined {\n\tconst trimmed = value.trim();\n\treturn trimmed ? trimmed : undefined;\n}\n\nfunction mixResolvedColors(args: {\n\tleft?: string;\n\tright?: string;\n\tleftWeight: string;\n}): string | undefined {\n\tif (!args.left || !args.right) {\n\t\treturn undefined;\n\t}\n\treturn `color-mix(in srgb, ${args.left} ${args.leftWeight}, ${args.right})`;\n}\n\nfunction mapComputedDaisyVars(computed: CSSStyleDeclaration): ThemeVariables {\n\tconst value = (key: string) => trimCssVar(computed.getPropertyValue(key));\n\treturn normalizePieThemeVariables({\n\t\t\"--pie-background\": value(\"--color-base-100\"),\n\t\t\"--pie-background-dark\": value(\"--color-base-200\"),\n\t\t\"--pie-secondary-background\": value(\"--color-base-200\"),\n\t\t\"--pie-dropdown-background\": value(\"--color-base-300\"),\n\t\t\"--pie-text\": value(\"--color-base-content\"),\n\t\t\"--pie-primary\": value(\"--color-primary\"),\n\t\t\"--pie-primary-light\": mixResolvedColors({\n\t\t\tleft: value(\"--color-primary\"),\n\t\t\tright: value(\"--color-base-100\"),\n\t\t\tleftWeight: \"60%\",\n\t\t}),\n\t\t\"--pie-primary-dark\": mixResolvedColors({\n\t\t\tleft: value(\"--color-primary\"),\n\t\t\tright: value(\"--color-base-content\"),\n\t\t\tleftWeight: \"75%\",\n\t\t}),\n\t\t\"--pie-faded-primary\": mixResolvedColors({\n\t\t\tleft: value(\"--color-primary\"),\n\t\t\tright: value(\"--color-base-100\"),\n\t\t\tleftWeight: \"20%\",\n\t\t}),\n\t\t\"--pie-secondary\": value(\"--color-secondary\"),\n\t\t\"--pie-secondary-light\": mixResolvedColors({\n\t\t\tleft: value(\"--color-secondary\"),\n\t\t\tright: value(\"--color-base-100\"),\n\t\t\tleftWeight: \"60%\",\n\t\t}),\n\t\t\"--pie-secondary-dark\": mixResolvedColors({\n\t\t\tleft: value(\"--color-secondary\"),\n\t\t\tright: value(\"--color-base-content\"),\n\t\t\tleftWeight: \"75%\",\n\t\t}),\n\t\t\"--pie-tertiary\": value(\"--color-accent\"),\n\t\t\"--pie-tertiary-light\": mixResolvedColors({\n\t\t\tleft: value(\"--color-accent\"),\n\t\t\tright: value(\"--color-base-100\"),\n\t\t\tleftWeight: \"60%\",\n\t\t}),\n\t\t\"--pie-border\": value(\"--color-base-300\"),\n\t\t\"--pie-border-light\": value(\"--color-base-200\"),\n\t\t\"--pie-border-dark\": value(\"--color-neutral\"),\n\t\t\"--pie-border-gray\": value(\"--color-base-300\"),\n\t\t\"--pie-correct\": value(\"--color-success\"),\n\t\t\"--pie-correct-secondary\": mixResolvedColors({\n\t\t\tleft: value(\"--color-success\"),\n\t\t\tright: value(\"--color-base-100\"),\n\t\t\tleftWeight: \"20%\",\n\t\t}),\n\t\t\"--pie-correct-tertiary\": value(\"--color-success\"),\n\t\t\"--pie-correct-icon\": value(\"--color-success\"),\n\t\t\"--pie-incorrect\": value(\"--color-error\"),\n\t\t\"--pie-incorrect-secondary\": mixResolvedColors({\n\t\t\tleft: value(\"--color-error\"),\n\t\t\tright: value(\"--color-base-100\"),\n\t\t\tleftWeight: \"20%\",\n\t\t}),\n\t\t\"--pie-incorrect-icon\": value(\"--color-error\"),\n\t\t\"--pie-missing\": value(\"--color-error\"),\n\t\t\"--pie-missing-icon\": value(\"--color-error\"),\n\t\t\"--pie-disabled\": value(\"--color-base-300\"),\n\t\t\"--pie-disabled-secondary\": value(\"--color-base-200\"),\n\t\t\"--pie-focus-checked\": mixResolvedColors({\n\t\t\tleft: value(\"--color-primary\"),\n\t\t\tright: value(\"--color-base-100\"),\n\t\t\tleftWeight: \"20%\",\n\t\t}),\n\t\t\"--pie-focus-checked-border\": value(\"--color-primary\"),\n\t\t\"--pie-focus-unchecked\": value(\"--color-base-200\"),\n\t\t\"--pie-focus-unchecked-border\": value(\"--color-base-300\"),\n\t\t\"--pie-blue-grey-100\": value(\"--color-base-100\"),\n\t\t\"--pie-blue-grey-300\": value(\"--color-base-200\"),\n\t\t\"--pie-blue-grey-600\": value(\"--color-base-300\"),\n\t\t\"--pie-blue-grey-900\": value(\"--color-base-content\"),\n\t\t\"--pie-black\": value(\"--color-neutral-content\"),\n\t\t\"--pie-white\": value(\"--color-base-100\"),\n\t\t\"--pie-button-bg\": value(\"--color-base-100\"),\n\t\t\"--pie-button-border\": value(\"--color-base-300\"),\n\t\t\"--pie-button-color\": value(\"--color-base-content\"),\n\t\t\"--pie-button-hover-bg\": value(\"--color-base-200\"),\n\t\t\"--pie-button-hover-border\": value(\"--color-base-300\"),\n\t\t\"--pie-button-hover-color\": value(\"--color-base-content\"),\n\t\t\"--pie-button-active-bg\": value(\"--color-base-300\"),\n\t\t\"--pie-button-focus-outline\": value(\"--color-primary\"),\n\t});\n}\n\nexport const DAISYUI_THEME_PROVIDER_ADAPTER: ThemeProviderAdapter = {\n\tid: \"daisyui\",\n\tcanRead(target) {\n\t\tconst computed = getComputedStyle(target);\n\t\treturn Boolean(\n\t\t\ttrimCssVar(computed.getPropertyValue(\"--color-base-100\")) ||\n\t\t\t\ttrimCssVar(computed.getPropertyValue(\"--color-base-content\")) ||\n\t\t\t\ttrimCssVar(computed.getPropertyValue(\"--color-primary\")),\n\t\t);\n\t},\n\tread(target) {\n\t\treturn mapComputedDaisyVars(getComputedStyle(target));\n\t},\n};\n\nthemeProviderRegistry.set(\n\tDAISYUI_THEME_PROVIDER_ADAPTER.id,\n\tDAISYUI_THEME_PROVIDER_ADAPTER,\n);\n\nexport function registerPieThemeProvider(adapter: ThemeProviderAdapter): void {\n\tif (!adapter?.id) {\n\t\treturn;\n\t}\n\tthemeProviderRegistry.set(adapter.id, adapter);\n}\n\nexport function unregisterPieThemeProvider(providerId: string): void {\n\tif (!providerId) {\n\t\treturn;\n\t}\n\tif (providerId === DAISYUI_THEME_PROVIDER_ADAPTER.id) {\n\t\treturn;\n\t}\n\tthemeProviderRegistry.delete(providerId);\n}\n\nexport function listPieThemeProviders(): ThemeProviderAdapter[] {\n\treturn [...themeProviderRegistry.values()];\n}\n\nexport function getPieThemeProvider(\n\tproviderId: string,\n): ThemeProviderAdapter | undefined {\n\treturn themeProviderRegistry.get(providerId);\n}\n\nexport function resolveProviderVariables(args: {\n\ttarget: HTMLElement;\n\tprovider?: string | null;\n}): ThemeVariables {\n\tconst providerMode = args.provider?.trim() || \"auto\";\n\tconst resolveFromTarget = (target: HTMLElement): ThemeVariables => {\n\t\tif (providerMode && providerMode !== \"auto\") {\n\t\t\tconst provider = themeProviderRegistry.get(providerMode);\n\t\t\tif (!provider || !provider.canRead(target)) {\n\t\t\t\treturn {};\n\t\t\t}\n\t\t\treturn normalizePieThemeVariables(provider.read(target));\n\t\t}\n\n\t\tfor (const provider of themeProviderRegistry.values()) {\n\t\t\tif (!provider.canRead(target)) {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\treturn normalizePieThemeVariables(provider.read(target));\n\t\t}\n\t\treturn {};\n\t};\n\n\tconst resolved = resolveFromTarget(args.target);\n\tif (Object.keys(resolved).length > 0) {\n\t\treturn resolved;\n\t}\n\n\tif (\n\t\ttypeof document !== \"undefined\" &&\n\t\targs.target !== document.documentElement\n\t) {\n\t\treturn resolveFromTarget(document.documentElement);\n\t}\n\n\treturn {};\n}\n\n"]}
|
|
1
|
+
{"version":3,"file":"providers.js","sourceRoot":"","sources":["../src/providers.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n\tnormalizePieThemeVariables,\n\ttype ThemeVariables,\n} from \"./theme-types.js\";\n\nexport interface ThemeProviderAdapter {\n\treadonly id: string;\n\tcanRead(target: HTMLElement): boolean;\n\tread(target: HTMLElement): ThemeVariables;\n}\n\nconst themeProviderRegistry = new Map<string, ThemeProviderAdapter>();\n\nfunction trimCssVar(value: string): string | undefined {\n\tconst trimmed = value.trim();\n\treturn trimmed ? trimmed : undefined;\n}\n\nfunction mixResolvedColors(args: {\n\tleft?: string;\n\tright?: string;\n\tleftWeight: string;\n}): string | undefined {\n\tif (!args.left || !args.right) {\n\t\treturn undefined;\n\t}\n\treturn `color-mix(in srgb, ${args.left} ${args.leftWeight}, ${args.right})`;\n}\n\nfunction mapComputedDaisyVars(computed: CSSStyleDeclaration): ThemeVariables {\n\tconst value = (key: string) => trimCssVar(computed.getPropertyValue(key));\n\treturn normalizePieThemeVariables({\n\t\t\"--pie-background\": value(\"--color-base-100\"),\n\t\t\"--pie-background-dark\": value(\"--color-base-200\"),\n\t\t\"--pie-secondary-background\": value(\"--color-base-200\"),\n\t\t\"--pie-dropdown-background\": value(\"--color-base-300\"),\n\t\t\"--pie-text\": value(\"--color-base-content\"),\n\t\t\"--pie-primary\": value(\"--color-primary\"),\n\t\t\"--pie-primary-light\": mixResolvedColors({\n\t\t\tleft: value(\"--color-primary\"),\n\t\t\tright: value(\"--color-base-100\"),\n\t\t\tleftWeight: \"60%\",\n\t\t}),\n\t\t\"--pie-primary-dark\": mixResolvedColors({\n\t\t\tleft: value(\"--color-primary\"),\n\t\t\tright: value(\"--color-base-content\"),\n\t\t\tleftWeight: \"75%\",\n\t\t}),\n\t\t\"--pie-faded-primary\": mixResolvedColors({\n\t\t\tleft: value(\"--color-primary\"),\n\t\t\tright: value(\"--color-base-100\"),\n\t\t\tleftWeight: \"20%\",\n\t\t}),\n\t\t\"--pie-secondary\": value(\"--color-secondary\"),\n\t\t\"--pie-secondary-light\": mixResolvedColors({\n\t\t\tleft: value(\"--color-secondary\"),\n\t\t\tright: value(\"--color-base-100\"),\n\t\t\tleftWeight: \"60%\",\n\t\t}),\n\t\t\"--pie-secondary-dark\": mixResolvedColors({\n\t\t\tleft: value(\"--color-secondary\"),\n\t\t\tright: value(\"--color-base-content\"),\n\t\t\tleftWeight: \"75%\",\n\t\t}),\n\t\t\"--pie-tertiary\": value(\"--color-accent\"),\n\t\t\"--pie-tertiary-light\": mixResolvedColors({\n\t\t\tleft: value(\"--color-accent\"),\n\t\t\tright: value(\"--color-base-100\"),\n\t\t\tleftWeight: \"60%\",\n\t\t}),\n\t\t\"--pie-border\": value(\"--color-base-300\"),\n\t\t\"--pie-border-light\": value(\"--color-base-200\"),\n\t\t\"--pie-border-dark\": value(\"--color-neutral\"),\n\t\t\"--pie-border-gray\": value(\"--color-base-300\"),\n\t\t\"--pie-correct\": value(\"--color-success\"),\n\t\t\"--pie-correct-secondary\": mixResolvedColors({\n\t\t\tleft: value(\"--color-success\"),\n\t\t\tright: value(\"--color-base-100\"),\n\t\t\tleftWeight: \"20%\",\n\t\t}),\n\t\t\"--pie-correct-tertiary\": value(\"--color-success\"),\n\t\t\"--pie-correct-icon\": value(\"--color-success\"),\n\t\t\"--pie-incorrect\": value(\"--color-error\"),\n\t\t\"--pie-incorrect-secondary\": mixResolvedColors({\n\t\t\tleft: value(\"--color-error\"),\n\t\t\tright: value(\"--color-base-100\"),\n\t\t\tleftWeight: \"20%\",\n\t\t}),\n\t\t\"--pie-incorrect-icon\": value(\"--color-error\"),\n\t\t\"--pie-missing\": value(\"--color-error\"),\n\t\t\"--pie-missing-icon\": value(\"--color-error\"),\n\t\t\"--pie-disabled\": value(\"--color-base-300\"),\n\t\t\"--pie-disabled-secondary\": value(\"--color-base-200\"),\n\t\t\"--pie-focus-checked\": mixResolvedColors({\n\t\t\tleft: value(\"--color-primary\"),\n\t\t\tright: value(\"--color-base-100\"),\n\t\t\tleftWeight: \"20%\",\n\t\t}),\n\t\t\"--pie-focus-checked-border\": value(\"--color-primary\"),\n\t\t\"--pie-focus-unchecked\": value(\"--color-base-200\"),\n\t\t\"--pie-focus-unchecked-border\": value(\"--color-base-300\"),\n\t\t\"--pie-blue-grey-100\": value(\"--color-base-100\"),\n\t\t\"--pie-blue-grey-300\": value(\"--color-base-200\"),\n\t\t\"--pie-blue-grey-600\": value(\"--color-base-300\"),\n\t\t\"--pie-blue-grey-900\": value(\"--color-base-content\"),\n\t\t\"--pie-black\": value(\"--color-neutral-content\"),\n\t\t\"--pie-white\": value(\"--color-base-100\"),\n\t\t\"--pie-button-bg\": value(\"--color-base-100\"),\n\t\t\"--pie-button-border\": value(\"--color-base-300\"),\n\t\t\"--pie-button-color\": value(\"--color-base-content\"),\n\t\t\"--pie-button-hover-bg\": value(\"--color-base-200\"),\n\t\t\"--pie-button-hover-border\": value(\"--color-base-300\"),\n\t\t\"--pie-button-hover-color\": value(\"--color-base-content\"),\n\t\t\"--pie-button-active-bg\": value(\"--color-base-300\"),\n\t\t\"--pie-button-focus-outline\": value(\"--color-primary\"),\n\t});\n}\n\nexport const DAISYUI_THEME_PROVIDER_ADAPTER: ThemeProviderAdapter = {\n\tid: \"daisyui\",\n\tcanRead(target) {\n\t\tconst computed = getComputedStyle(target);\n\t\treturn Boolean(\n\t\t\ttrimCssVar(computed.getPropertyValue(\"--color-base-100\")) ||\n\t\t\t\ttrimCssVar(computed.getPropertyValue(\"--color-base-content\")) ||\n\t\t\t\ttrimCssVar(computed.getPropertyValue(\"--color-primary\")),\n\t\t);\n\t},\n\tread(target) {\n\t\treturn mapComputedDaisyVars(getComputedStyle(target));\n\t},\n};\n\nthemeProviderRegistry.set(\n\tDAISYUI_THEME_PROVIDER_ADAPTER.id,\n\tDAISYUI_THEME_PROVIDER_ADAPTER,\n);\n\nexport function registerPieThemeProvider(adapter: ThemeProviderAdapter): void {\n\tif (!adapter?.id) {\n\t\treturn;\n\t}\n\tthemeProviderRegistry.set(adapter.id, adapter);\n}\n\nexport function unregisterPieThemeProvider(providerId: string): void {\n\tif (!providerId) {\n\t\treturn;\n\t}\n\tif (providerId === DAISYUI_THEME_PROVIDER_ADAPTER.id) {\n\t\treturn;\n\t}\n\tthemeProviderRegistry.delete(providerId);\n}\n\nexport function listPieThemeProviders(): ThemeProviderAdapter[] {\n\treturn [...themeProviderRegistry.values()];\n}\n\nexport function getPieThemeProvider(\n\tproviderId: string,\n): ThemeProviderAdapter | undefined {\n\treturn themeProviderRegistry.get(providerId);\n}\n\nexport function resolveProviderVariables(args: {\n\ttarget: HTMLElement;\n\tprovider?: string | null;\n}): ThemeVariables {\n\tconst providerMode = args.provider?.trim() || \"auto\";\n\tconst resolveFromTarget = (target: HTMLElement): ThemeVariables => {\n\t\tif (providerMode && providerMode !== \"auto\") {\n\t\t\tconst provider = themeProviderRegistry.get(providerMode);\n\t\t\tif (!provider || !provider.canRead(target)) {\n\t\t\t\treturn {};\n\t\t\t}\n\t\t\treturn normalizePieThemeVariables(provider.read(target));\n\t\t}\n\n\t\tfor (const provider of themeProviderRegistry.values()) {\n\t\t\tif (!provider.canRead(target)) {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\treturn normalizePieThemeVariables(provider.read(target));\n\t\t}\n\t\treturn {};\n\t};\n\n\tconst resolved = resolveFromTarget(args.target);\n\tif (Object.keys(resolved).length > 0) {\n\t\treturn resolved;\n\t}\n\n\tif (\n\t\ttypeof document !== \"undefined\" &&\n\t\targs.target !== document.documentElement\n\t) {\n\t\treturn resolveFromTarget(document.documentElement);\n\t}\n\n\treturn {};\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"theme-defaults.js","sourceRoot":"","sources":["../src/theme-defaults.ts"],"names":[],"mappings":"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","sourcesContent":["import type { ThemeVariables } from \"./theme-types.js\";\n\nexport const LIGHT_THEME_VARS: ThemeVariables = {\n\t\"--pie-text\": \"black\",\n\t\"--pie-disabled\": \"grey\",\n\t\"--pie-disabled-secondary\": \"#ababab\",\n\t\"--pie-correct\": \"#4caf50\",\n\t\"--pie-correct-secondary\": \"#e8f5e9\",\n\t\"--pie-correct-tertiary\": \"#0ea449\",\n\t\"--pie-correct-icon\": \"#087d38\",\n\t\"--pie-incorrect\": \"#ff9800\",\n\t\"--pie-incorrect-secondary\": \"#ffebee\",\n\t\"--pie-incorrect-icon\": \"#bf0d00\",\n\t\"--pie-missing\": \"#d32f2f\",\n\t\"--pie-missing-icon\": \"#6a78a1\",\n\t\"--pie-primary\": \"#3f51b5\",\n\t\"--pie-primary-light\": \"#9fa8da\",\n\t\"--pie-primary-dark\": \"#283593\",\n\t\"--pie-faded-primary\": \"#dcdafb\",\n\t\"--pie-secondary\": \"#f50057\",\n\t\"--pie-secondary-light\": \"#f48fb1\",\n\t\"--pie-secondary-dark\": \"#880e4f\",\n\t\"--pie-tertiary\": \"#146eb3\",\n\t\"--pie-tertiary-light\": \"#d0e2f0\",\n\t\"--pie-background\": \"rgba(255, 255, 255, 0)\",\n\t\"--pie-background-dark\": \"#ecedf1\",\n\t\"--pie-secondary-background\": \"rgba(241, 241, 241, 1)\",\n\t\"--pie-dropdown-background\": \"#e0e1e6\",\n\t\"--pie-border\": \"#9a9a9a\",\n\t\"--pie-border-light\": \"#d1d1d1\",\n\t\"--pie-border-dark\": \"#646464\",\n\t\"--pie-border-gray\": \"#7e8494\",\n\t\"--pie-black\": \"#000000\",\n\t\"--pie-white\": \"#ffffff\",\n\t\"--pie-focus-checked\": \"#bbdefb\",\n\t\"--pie-focus-checked-border\": \"#1565c0\",\n\t\"--pie-focus-unchecked\": \"#e0e0e0\",\n\t\"--pie-focus-unchecked-border\": \"#757575\",\n\t\"--pie-blue-grey-100\": \"#f3f5f7\",\n\t\"--pie-blue-grey-300\": \"#c0c3cf\",\n\t\"--pie-blue-grey-600\": \"#7e8494\",\n\t\"--pie-blue-grey-900\": \"#152452\",\n\t\"--pie-font-scale\": \"1\",\n\t\"--pie-button-bg\": \"#ffffff\",\n\t\"--pie-button-border\": \"#d1d5db\",\n\t\"--pie-button-color\": \"#374151\",\n\t\"--pie-button-hover-bg\": \"#f9fafb\",\n\t\"--pie-button-hover-border\": \"#9ca3af\",\n\t\"--pie-button-hover-color\": \"#111827\",\n\t\"--pie-button-active-bg\": \"#f3f4f6\",\n\t\"--pie-button-focus-outline\": \"#3b82f6\",\n};\n\nexport const DARK_THEME_VARS: ThemeVariables = {\n\t\"--pie-text\": \"#ffffff\",\n\t\"--pie-disabled\": \"#999999\",\n\t\"--pie-disabled-secondary\": \"#777777\",\n\t\"--pie-correct\": \"#00ff00\",\n\t\"--pie-correct-secondary\": \"#003300\",\n\t\"--pie-correct-tertiary\": \"#00cc00\",\n\t\"--pie-correct-icon\": \"#00ff00\",\n\t\"--pie-incorrect\": \"#ff3333\",\n\t\"--pie-incorrect-secondary\": \"#330000\",\n\t\"--pie-incorrect-icon\": \"#ff0000\",\n\t\"--pie-missing\": \"#ff6666\",\n\t\"--pie-missing-icon\": \"#6666ff\",\n\t\"--pie-primary\": \"#ffff00\",\n\t\"--pie-primary-light\": \"#ffff99\",\n\t\"--pie-primary-dark\": \"#cccc00\",\n\t\"--pie-faded-primary\": \"#666600\",\n\t\"--pie-secondary\": \"#ff00ff\",\n\t\"--pie-secondary-light\": \"#ff99ff\",\n\t\"--pie-secondary-dark\": \"#cc00cc\",\n\t\"--pie-tertiary\": \"#00ffff\",\n\t\"--pie-tertiary-light\": \"#99ffff\",\n\t\"--pie-background\": \"#000000\",\n\t\"--pie-background-dark\": \"#1a1a1a\",\n\t\"--pie-secondary-background\": \"#222222\",\n\t\"--pie-dropdown-background\": \"#2a2a2a\",\n\t\"--pie-border\": \"#ffffff\",\n\t\"--pie-border-light\": \"#cccccc\",\n\t\"--pie-border-dark\": \"#ffffff\",\n\t\"--pie-border-gray\": \"#aaaaaa\",\n\t\"--pie-black\": \"#ffffff\",\n\t\"--pie-white\": \"#000000\",\n\t\"--pie-focus-checked\": \"#ffff00\",\n\t\"--pie-focus-checked-border\": \"#ffff00\",\n\t\"--pie-focus-unchecked\": \"#666666\",\n\t\"--pie-focus-unchecked-border\": \"#ffffff\",\n\t\"--pie-blue-grey-100\": \"#2a2a2a\",\n\t\"--pie-blue-grey-300\": \"#555555\",\n\t\"--pie-blue-grey-600\": \"#999999\",\n\t\"--pie-blue-grey-900\": \"#ffffff\",\n\t\"--pie-font-scale\": \"1\",\n\t\"--pie-button-bg\": \"#1f2937\",\n\t\"--pie-button-border\": \"#4b5563\",\n\t\"--pie-button-color\": \"#f9fafb\",\n\t\"--pie-button-hover-bg\": \"#374151\",\n\t\"--pie-button-hover-border\": \"#6b7280\",\n\t\"--pie-button-hover-color\": \"#ffffff\",\n\t\"--pie-button-active-bg\": \"#4b5563\",\n\t\"--pie-button-focus-outline\": \"#93c5fd\",\n};\n
|
|
1
|
+
{"version":3,"file":"theme-defaults.js","sourceRoot":"","sources":["../src/theme-defaults.ts"],"names":[],"mappings":"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","sourcesContent":["import type { ThemeVariables } from \"./theme-types.js\";\n\nexport const LIGHT_THEME_VARS: ThemeVariables = {\n\t\"--pie-text\": \"black\",\n\t\"--pie-disabled\": \"grey\",\n\t\"--pie-disabled-secondary\": \"#ababab\",\n\t\"--pie-correct\": \"#4caf50\",\n\t\"--pie-correct-secondary\": \"#e8f5e9\",\n\t\"--pie-correct-tertiary\": \"#0ea449\",\n\t\"--pie-correct-icon\": \"#087d38\",\n\t\"--pie-incorrect\": \"#ff9800\",\n\t\"--pie-incorrect-secondary\": \"#ffebee\",\n\t\"--pie-incorrect-icon\": \"#bf0d00\",\n\t\"--pie-missing\": \"#d32f2f\",\n\t\"--pie-missing-icon\": \"#6a78a1\",\n\t\"--pie-primary\": \"#3f51b5\",\n\t\"--pie-primary-light\": \"#9fa8da\",\n\t\"--pie-primary-dark\": \"#283593\",\n\t\"--pie-faded-primary\": \"#dcdafb\",\n\t\"--pie-secondary\": \"#f50057\",\n\t\"--pie-secondary-light\": \"#f48fb1\",\n\t\"--pie-secondary-dark\": \"#880e4f\",\n\t\"--pie-tertiary\": \"#146eb3\",\n\t\"--pie-tertiary-light\": \"#d0e2f0\",\n\t\"--pie-background\": \"rgba(255, 255, 255, 0)\",\n\t\"--pie-background-dark\": \"#ecedf1\",\n\t\"--pie-secondary-background\": \"rgba(241, 241, 241, 1)\",\n\t\"--pie-dropdown-background\": \"#e0e1e6\",\n\t\"--pie-border\": \"#9a9a9a\",\n\t\"--pie-border-light\": \"#d1d1d1\",\n\t\"--pie-border-dark\": \"#646464\",\n\t\"--pie-border-gray\": \"#7e8494\",\n\t\"--pie-black\": \"#000000\",\n\t\"--pie-white\": \"#ffffff\",\n\t\"--pie-focus-checked\": \"#bbdefb\",\n\t\"--pie-focus-checked-border\": \"#1565c0\",\n\t\"--pie-focus-unchecked\": \"#e0e0e0\",\n\t\"--pie-focus-unchecked-border\": \"#757575\",\n\t\"--pie-blue-grey-100\": \"#f3f5f7\",\n\t\"--pie-blue-grey-300\": \"#c0c3cf\",\n\t\"--pie-blue-grey-600\": \"#7e8494\",\n\t\"--pie-blue-grey-900\": \"#152452\",\n\t\"--pie-font-scale\": \"1\",\n\t\"--pie-button-bg\": \"#ffffff\",\n\t\"--pie-button-border\": \"#d1d5db\",\n\t\"--pie-button-color\": \"#374151\",\n\t\"--pie-button-hover-bg\": \"#f9fafb\",\n\t\"--pie-button-hover-border\": \"#9ca3af\",\n\t\"--pie-button-hover-color\": \"#111827\",\n\t\"--pie-button-active-bg\": \"#f3f4f6\",\n\t\"--pie-button-focus-outline\": \"#3b82f6\",\n};\n\nexport const DARK_THEME_VARS: ThemeVariables = {\n\t\"--pie-text\": \"#ffffff\",\n\t\"--pie-disabled\": \"#999999\",\n\t\"--pie-disabled-secondary\": \"#777777\",\n\t\"--pie-correct\": \"#00ff00\",\n\t\"--pie-correct-secondary\": \"#003300\",\n\t\"--pie-correct-tertiary\": \"#00cc00\",\n\t\"--pie-correct-icon\": \"#00ff00\",\n\t\"--pie-incorrect\": \"#ff3333\",\n\t\"--pie-incorrect-secondary\": \"#330000\",\n\t\"--pie-incorrect-icon\": \"#ff0000\",\n\t\"--pie-missing\": \"#ff6666\",\n\t\"--pie-missing-icon\": \"#6666ff\",\n\t\"--pie-primary\": \"#ffff00\",\n\t\"--pie-primary-light\": \"#ffff99\",\n\t\"--pie-primary-dark\": \"#cccc00\",\n\t\"--pie-faded-primary\": \"#666600\",\n\t\"--pie-secondary\": \"#ff00ff\",\n\t\"--pie-secondary-light\": \"#ff99ff\",\n\t\"--pie-secondary-dark\": \"#cc00cc\",\n\t\"--pie-tertiary\": \"#00ffff\",\n\t\"--pie-tertiary-light\": \"#99ffff\",\n\t\"--pie-background\": \"#000000\",\n\t\"--pie-background-dark\": \"#1a1a1a\",\n\t\"--pie-secondary-background\": \"#222222\",\n\t\"--pie-dropdown-background\": \"#2a2a2a\",\n\t\"--pie-border\": \"#ffffff\",\n\t\"--pie-border-light\": \"#cccccc\",\n\t\"--pie-border-dark\": \"#ffffff\",\n\t\"--pie-border-gray\": \"#aaaaaa\",\n\t\"--pie-black\": \"#ffffff\",\n\t\"--pie-white\": \"#000000\",\n\t\"--pie-focus-checked\": \"#ffff00\",\n\t\"--pie-focus-checked-border\": \"#ffff00\",\n\t\"--pie-focus-unchecked\": \"#666666\",\n\t\"--pie-focus-unchecked-border\": \"#ffffff\",\n\t\"--pie-blue-grey-100\": \"#2a2a2a\",\n\t\"--pie-blue-grey-300\": \"#555555\",\n\t\"--pie-blue-grey-600\": \"#999999\",\n\t\"--pie-blue-grey-900\": \"#ffffff\",\n\t\"--pie-font-scale\": \"1\",\n\t\"--pie-button-bg\": \"#1f2937\",\n\t\"--pie-button-border\": \"#4b5563\",\n\t\"--pie-button-color\": \"#f9fafb\",\n\t\"--pie-button-hover-bg\": \"#374151\",\n\t\"--pie-button-hover-border\": \"#6b7280\",\n\t\"--pie-button-hover-color\": \"#ffffff\",\n\t\"--pie-button-active-bg\": \"#4b5563\",\n\t\"--pie-button-focus-outline\": \"#93c5fd\",\n};\n"]}
|
package/dist/theme-element.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { resolvePieColorSchemeVariables } from "./color-schemes.js";
|
|
2
2
|
import { DARK_THEME_VARS, LIGHT_THEME_VARS } from "./theme-defaults.js";
|
|
3
3
|
import { resolveProviderVariables } from "./providers.js";
|
|
4
|
-
import { isThemeMode, isThemeScope } from "./theme-types.js";
|
|
4
|
+
import { isThemeMode, isThemeScope, } from "./theme-types.js";
|
|
5
5
|
const HTMLElementBase = typeof HTMLElement === "undefined"
|
|
6
6
|
? class {
|
|
7
7
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"theme-element.js","sourceRoot":"","sources":["../src/theme-element.ts"],"names":[],"mappings":"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","sourcesContent":["import { resolvePieColorSchemeVariables } from \"./color-schemes.js\";\nimport { DARK_THEME_VARS, LIGHT_THEME_VARS } from \"./theme-defaults.js\";\nimport { resolveProviderVariables } from \"./providers.js\";\nimport { isThemeMode, isThemeScope, type ThemeMode, type ThemeScope, type ThemeVariables } from \"./theme-types.js\";\n\nconst HTMLElementBase =\n\ttypeof HTMLElement === \"undefined\"\n\t\t? (class {} as unknown as typeof HTMLElement)\n\t\t: HTMLElement;\n\nfunction defineThemeElementSafely(\n\ttagName: string,\n\telementConstructor: CustomElementConstructor,\n): void {\n\tif (customElements.get(tagName)) {\n\t\treturn;\n\t}\n\ttry {\n\t\tcustomElements.define(tagName, elementConstructor);\n\t} catch (error) {\n\t\tconst isDuplicate =\n\t\t\terror instanceof DOMException && error.name === \"NotSupportedError\";\n\t\tif (!isDuplicate || !customElements.get(tagName)) {\n\t\t\tthrow error;\n\t\t}\n\t}\n}\n\nfunction parseVariableOverrides(value: unknown): ThemeVariables {\n\tif (!value) {\n\t\treturn {};\n\t}\n\n\tif (typeof value === \"string\") {\n\t\ttry {\n\t\t\treturn parseVariableOverrides(JSON.parse(value) as unknown);\n\t\t} catch {\n\t\t\treturn {};\n\t\t}\n\t}\n\n\tif (typeof value !== \"object\") {\n\t\treturn {};\n\t}\n\n\tconst output: ThemeVariables = {};\n\tfor (const [key, rawValue] of Object.entries(\n\t\tvalue as Record<string, unknown>,\n\t)) {\n\t\tif (!key.startsWith(\"--\")) {\n\t\t\tcontinue;\n\t\t}\n\n\t\tif (typeof rawValue === \"string\") {\n\t\t\toutput[key] = rawValue;\n\t\t} else if (typeof rawValue === \"number\") {\n\t\t\toutput[key] = String(rawValue);\n\t\t}\n\t}\n\treturn output;\n}\n\nexport class PieThemeElement extends HTMLElementBase {\n\tstatic get observedAttributes() {\n\t\treturn [\"theme\", \"scope\", \"provider\", \"scheme\", \"variables\"];\n\t}\n\n\tprivate mediaQuery: MediaQueryList | null = null;\n\tprivate readonly onMediaChange = () => this.applyTheme();\n\tprivate previousKeys = new Set<string>();\n\tprivate variablesOverride: ThemeVariables = {};\n\n\tget theme(): ThemeMode {\n\t\tconst value = this.getAttribute(\"theme\");\n\t\treturn isThemeMode(value) ? value : \"light\";\n\t}\n\n\tset theme(value: ThemeMode) {\n\t\tthis.setAttribute(\"theme\", value);\n\t}\n\n\tget scope(): ThemeScope {\n\t\tconst value = this.getAttribute(\"scope\");\n\t\treturn isThemeScope(value) ? value : \"self\";\n\t}\n\n\tset scope(value: ThemeScope) {\n\t\tthis.setAttribute(\"scope\", value);\n\t}\n\n\tget variables(): ThemeVariables {\n\t\treturn { ...this.variablesOverride };\n\t}\n\n\tset variables(value: ThemeVariables) {\n\t\tthis.variablesOverride = parseVariableOverrides(value);\n\t\tthis.setAttribute(\"variables\", JSON.stringify(this.variablesOverride));\n\t\tthis.applyTheme();\n\t}\n\n\tget provider(): string {\n\t\treturn this.getAttribute(\"provider\")?.trim() || \"auto\";\n\t}\n\n\tset provider(value: string) {\n\t\tthis.setAttribute(\"provider\", value || \"auto\");\n\t}\n\n\tget scheme(): string {\n\t\treturn this.getAttribute(\"scheme\")?.trim() || \"default\";\n\t}\n\n\tset scheme(value: string) {\n\t\tthis.setAttribute(\"scheme\", value || \"default\");\n\t}\n\n\tconnectedCallback() {\n\t\tif (!this.style.display) {\n\t\t\tthis.style.display = \"contents\";\n\t\t}\n\t\tthis.setupAutoThemeListener();\n\t\tthis.applyTheme();\n\t}\n\n\tdisconnectedCallback() {\n\t\tif (this.mediaQuery) {\n\t\t\tthis.mediaQuery.removeEventListener(\"change\", this.onMediaChange);\n\t\t}\n\t\tthis.mediaQuery = null;\n\n\t\tif (this.scope === \"self\") {\n\t\t\tthis.clearPreviousKeys(this);\n\t\t\tthis.removeAttribute(\"data-theme\");\n\t\t\tthis.removeAttribute(\"data-color-scheme\");\n\t\t}\n\t}\n\n\tattributeChangedCallback(\n\t\tname: string,\n\t\toldValue: string | null,\n\t\tnewValue: string | null,\n\t) {\n\t\tif (oldValue === newValue) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (name === \"variables\") {\n\t\t\tthis.variablesOverride = parseVariableOverrides(newValue);\n\t\t}\n\n\t\tif (name === \"theme\") {\n\t\t\tthis.setupAutoThemeListener();\n\t\t}\n\n\t\tthis.applyTheme();\n\t}\n\n\tprotected getTarget(): HTMLElement {\n\t\tif (this.scope === \"document\") {\n\t\t\treturn document.documentElement;\n\t\t}\n\t\treturn this;\n\t}\n\n\tprotected applyTheme() {\n\t\tif (typeof document === \"undefined\" || typeof window === \"undefined\") {\n\t\t\treturn;\n\t\t}\n\n\t\tconst { effectiveTheme, dataTheme } = this.resolveThemeState();\n\t\tconst target = this.getTarget();\n\t\ttarget.setAttribute(\"data-theme\", dataTheme);\n\t\tif (this.scheme && this.scheme !== \"default\") {\n\t\t\ttarget.setAttribute(\"data-color-scheme\", this.scheme);\n\t\t} else {\n\t\t\ttarget.removeAttribute(\"data-color-scheme\");\n\t\t}\n\n\t\tconst themeVars =\n\t\t\teffectiveTheme === \"dark\" ? DARK_THEME_VARS : LIGHT_THEME_VARS;\n\t\tconst providerVars = resolveProviderVariables({\n\t\t\ttarget,\n\t\t\tprovider: this.provider,\n\t\t});\n\t\tconst schemeVars = resolvePieColorSchemeVariables(this.scheme);\n\t\tconst vars = {\n\t\t\t...themeVars,\n\t\t\t...providerVars,\n\t\t\t...schemeVars,\n\t\t\t...this.variablesOverride,\n\t\t};\n\n\t\tthis.clearPreviousKeys(target);\n\t\tfor (const [key, value] of Object.entries(vars)) {\n\t\t\ttarget.style.setProperty(key, value);\n\t\t}\n\t\tthis.previousKeys = new Set(Object.keys(vars));\n\t}\n\n\tprivate resolveThemeState(): {\n\t\teffectiveTheme: \"light\" | \"dark\";\n\t\tdataTheme: string;\n\t} {\n\t\tconst rawTheme = this.getAttribute(\"theme\")?.trim();\n\t\tif (rawTheme === \"auto\") {\n\t\t\tconst prefersDark = window.matchMedia(\n\t\t\t\t\"(prefers-color-scheme: dark)\",\n\t\t\t).matches;\n\t\t\tconst effectiveTheme = prefersDark ? \"dark\" : \"light\";\n\t\t\treturn { effectiveTheme, dataTheme: effectiveTheme };\n\t\t}\n\t\tif (rawTheme === \"dark\" || rawTheme === \"light\") {\n\t\t\treturn { effectiveTheme: rawTheme, dataTheme: rawTheme };\n\t\t}\n\t\t// Non-standard theme ids (for example DaisyUI theme names) map to\n\t\t// light base defaults while still driving provider resolution.\n\t\tif (rawTheme) {\n\t\t\treturn { effectiveTheme: \"light\", dataTheme: rawTheme };\n\t\t}\n\t\treturn { effectiveTheme: \"light\", dataTheme: \"light\" };\n\t}\n\n\tprivate clearPreviousKeys(target: HTMLElement) {\n\t\tfor (const key of this.previousKeys) {\n\t\t\ttarget.style.removeProperty(key);\n\t\t}\n\t}\n\n\tprivate setupAutoThemeListener() {\n\t\tif (typeof window === \"undefined\") {\n\t\t\treturn;\n\t\t}\n\n\t\tif (this.mediaQuery) {\n\t\t\tthis.mediaQuery.removeEventListener(\"change\", this.onMediaChange);\n\t\t\tthis.mediaQuery = null;\n\t\t}\n\n\t\tif (this.getAttribute(\"theme\")?.trim() === \"auto\") {\n\t\t\tthis.mediaQuery = window.matchMedia(\"(prefers-color-scheme: dark)\");\n\t\t\tthis.mediaQuery.addEventListener(\"change\", this.onMediaChange);\n\t\t}\n\t}\n}\n\nexport function definePieTheme(tagName = \"pie-theme\") {\n\tif (typeof customElements === \"undefined\") {\n\t\treturn;\n\t}\n\n\tdefineThemeElementSafely(tagName, PieThemeElement);\n}\n"]}
|
|
1
|
+
{"version":3,"file":"theme-element.js","sourceRoot":"","sources":["../src/theme-element.ts"],"names":[],"mappings":"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","sourcesContent":["import { resolvePieColorSchemeVariables } from \"./color-schemes.js\";\nimport { DARK_THEME_VARS, LIGHT_THEME_VARS } from \"./theme-defaults.js\";\nimport { resolveProviderVariables } from \"./providers.js\";\nimport {\n\tisThemeMode,\n\tisThemeScope,\n\ttype ThemeMode,\n\ttype ThemeScope,\n\ttype ThemeVariables,\n} from \"./theme-types.js\";\n\nconst HTMLElementBase =\n\ttypeof HTMLElement === \"undefined\"\n\t\t? (class {} as unknown as typeof HTMLElement)\n\t\t: HTMLElement;\n\nfunction defineThemeElementSafely(\n\ttagName: string,\n\telementConstructor: CustomElementConstructor,\n): void {\n\tif (customElements.get(tagName)) {\n\t\treturn;\n\t}\n\ttry {\n\t\tcustomElements.define(tagName, elementConstructor);\n\t} catch (error) {\n\t\tconst isDuplicate =\n\t\t\terror instanceof DOMException && error.name === \"NotSupportedError\";\n\t\tif (!isDuplicate || !customElements.get(tagName)) {\n\t\t\tthrow error;\n\t\t}\n\t}\n}\n\nfunction parseVariableOverrides(value: unknown): ThemeVariables {\n\tif (!value) {\n\t\treturn {};\n\t}\n\n\tif (typeof value === \"string\") {\n\t\ttry {\n\t\t\treturn parseVariableOverrides(JSON.parse(value) as unknown);\n\t\t} catch {\n\t\t\treturn {};\n\t\t}\n\t}\n\n\tif (typeof value !== \"object\") {\n\t\treturn {};\n\t}\n\n\tconst output: ThemeVariables = {};\n\tfor (const [key, rawValue] of Object.entries(\n\t\tvalue as Record<string, unknown>,\n\t)) {\n\t\tif (!key.startsWith(\"--\")) {\n\t\t\tcontinue;\n\t\t}\n\n\t\tif (typeof rawValue === \"string\") {\n\t\t\toutput[key] = rawValue;\n\t\t} else if (typeof rawValue === \"number\") {\n\t\t\toutput[key] = String(rawValue);\n\t\t}\n\t}\n\treturn output;\n}\n\nexport class PieThemeElement extends HTMLElementBase {\n\tstatic get observedAttributes() {\n\t\treturn [\"theme\", \"scope\", \"provider\", \"scheme\", \"variables\"];\n\t}\n\n\tprivate mediaQuery: MediaQueryList | null = null;\n\tprivate readonly onMediaChange = () => this.applyTheme();\n\tprivate previousKeys = new Set<string>();\n\tprivate variablesOverride: ThemeVariables = {};\n\n\tget theme(): ThemeMode {\n\t\tconst value = this.getAttribute(\"theme\");\n\t\treturn isThemeMode(value) ? value : \"light\";\n\t}\n\n\tset theme(value: ThemeMode) {\n\t\tthis.setAttribute(\"theme\", value);\n\t}\n\n\tget scope(): ThemeScope {\n\t\tconst value = this.getAttribute(\"scope\");\n\t\treturn isThemeScope(value) ? value : \"self\";\n\t}\n\n\tset scope(value: ThemeScope) {\n\t\tthis.setAttribute(\"scope\", value);\n\t}\n\n\tget variables(): ThemeVariables {\n\t\treturn { ...this.variablesOverride };\n\t}\n\n\tset variables(value: ThemeVariables) {\n\t\tthis.variablesOverride = parseVariableOverrides(value);\n\t\tthis.setAttribute(\"variables\", JSON.stringify(this.variablesOverride));\n\t\tthis.applyTheme();\n\t}\n\n\tget provider(): string {\n\t\treturn this.getAttribute(\"provider\")?.trim() || \"auto\";\n\t}\n\n\tset provider(value: string) {\n\t\tthis.setAttribute(\"provider\", value || \"auto\");\n\t}\n\n\tget scheme(): string {\n\t\treturn this.getAttribute(\"scheme\")?.trim() || \"default\";\n\t}\n\n\tset scheme(value: string) {\n\t\tthis.setAttribute(\"scheme\", value || \"default\");\n\t}\n\n\tconnectedCallback() {\n\t\tif (!this.style.display) {\n\t\t\tthis.style.display = \"contents\";\n\t\t}\n\t\tthis.setupAutoThemeListener();\n\t\tthis.applyTheme();\n\t}\n\n\tdisconnectedCallback() {\n\t\tif (this.mediaQuery) {\n\t\t\tthis.mediaQuery.removeEventListener(\"change\", this.onMediaChange);\n\t\t}\n\t\tthis.mediaQuery = null;\n\n\t\tif (this.scope === \"self\") {\n\t\t\tthis.clearPreviousKeys(this);\n\t\t\tthis.removeAttribute(\"data-theme\");\n\t\t\tthis.removeAttribute(\"data-color-scheme\");\n\t\t}\n\t}\n\n\tattributeChangedCallback(\n\t\tname: string,\n\t\toldValue: string | null,\n\t\tnewValue: string | null,\n\t) {\n\t\tif (oldValue === newValue) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (name === \"variables\") {\n\t\t\tthis.variablesOverride = parseVariableOverrides(newValue);\n\t\t}\n\n\t\tif (name === \"theme\") {\n\t\t\tthis.setupAutoThemeListener();\n\t\t}\n\n\t\tthis.applyTheme();\n\t}\n\n\tprotected getTarget(): HTMLElement {\n\t\tif (this.scope === \"document\") {\n\t\t\treturn document.documentElement;\n\t\t}\n\t\treturn this;\n\t}\n\n\tprotected applyTheme() {\n\t\tif (typeof document === \"undefined\" || typeof window === \"undefined\") {\n\t\t\treturn;\n\t\t}\n\n\t\tconst { effectiveTheme, dataTheme } = this.resolveThemeState();\n\t\tconst target = this.getTarget();\n\t\ttarget.setAttribute(\"data-theme\", dataTheme);\n\t\tif (this.scheme && this.scheme !== \"default\") {\n\t\t\ttarget.setAttribute(\"data-color-scheme\", this.scheme);\n\t\t} else {\n\t\t\ttarget.removeAttribute(\"data-color-scheme\");\n\t\t}\n\n\t\tconst themeVars =\n\t\t\teffectiveTheme === \"dark\" ? DARK_THEME_VARS : LIGHT_THEME_VARS;\n\t\tconst providerVars = resolveProviderVariables({\n\t\t\ttarget,\n\t\t\tprovider: this.provider,\n\t\t});\n\t\tconst schemeVars = resolvePieColorSchemeVariables(this.scheme);\n\t\tconst vars = {\n\t\t\t...themeVars,\n\t\t\t...providerVars,\n\t\t\t...schemeVars,\n\t\t\t...this.variablesOverride,\n\t\t};\n\n\t\tthis.clearPreviousKeys(target);\n\t\tfor (const [key, value] of Object.entries(vars)) {\n\t\t\ttarget.style.setProperty(key, value);\n\t\t}\n\t\tthis.previousKeys = new Set(Object.keys(vars));\n\t}\n\n\tprivate resolveThemeState(): {\n\t\teffectiveTheme: \"light\" | \"dark\";\n\t\tdataTheme: string;\n\t} {\n\t\tconst rawTheme = this.getAttribute(\"theme\")?.trim();\n\t\tif (rawTheme === \"auto\") {\n\t\t\tconst prefersDark = window.matchMedia(\n\t\t\t\t\"(prefers-color-scheme: dark)\",\n\t\t\t).matches;\n\t\t\tconst effectiveTheme = prefersDark ? \"dark\" : \"light\";\n\t\t\treturn { effectiveTheme, dataTheme: effectiveTheme };\n\t\t}\n\t\tif (rawTheme === \"dark\" || rawTheme === \"light\") {\n\t\t\treturn { effectiveTheme: rawTheme, dataTheme: rawTheme };\n\t\t}\n\t\t// Non-standard theme ids (for example DaisyUI theme names) map to\n\t\t// light base defaults while still driving provider resolution.\n\t\tif (rawTheme) {\n\t\t\treturn { effectiveTheme: \"light\", dataTheme: rawTheme };\n\t\t}\n\t\treturn { effectiveTheme: \"light\", dataTheme: \"light\" };\n\t}\n\n\tprivate clearPreviousKeys(target: HTMLElement) {\n\t\tfor (const key of this.previousKeys) {\n\t\t\ttarget.style.removeProperty(key);\n\t\t}\n\t}\n\n\tprivate setupAutoThemeListener() {\n\t\tif (typeof window === \"undefined\") {\n\t\t\treturn;\n\t\t}\n\n\t\tif (this.mediaQuery) {\n\t\t\tthis.mediaQuery.removeEventListener(\"change\", this.onMediaChange);\n\t\t\tthis.mediaQuery = null;\n\t\t}\n\n\t\tif (this.getAttribute(\"theme\")?.trim() === \"auto\") {\n\t\t\tthis.mediaQuery = window.matchMedia(\"(prefers-color-scheme: dark)\");\n\t\t\tthis.mediaQuery.addEventListener(\"change\", this.onMediaChange);\n\t\t}\n\t}\n}\n\nexport function definePieTheme(tagName = \"pie-theme\") {\n\tif (typeof customElements === \"undefined\") {\n\t\treturn;\n\t}\n\n\tdefineThemeElementSafely(tagName, PieThemeElement);\n}\n"]}
|
package/dist/theme-types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"theme-types.js","sourceRoot":"","sources":["../src/theme-types.ts"],"names":[],"mappings":"AAIA,MAAM,UAAU,WAAW,CAAC,KAAoB;IAC/C,OAAO,KAAK,KAAK,OAAO,IAAI,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,MAAM,CAAC;AAClE,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,KAAoB;IAChD,OAAO,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,UAAU,CAAC;AACjD,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,KAAc;IACxD,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACzC,OAAO,EAAE,CAAC;IACX,CAAC;IAED,MAAM,MAAM,GAAmB,EAAE,CAAC;IAClC,KAAK,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,
|
|
1
|
+
{"version":3,"file":"theme-types.js","sourceRoot":"","sources":["../src/theme-types.ts"],"names":[],"mappings":"AAIA,MAAM,UAAU,WAAW,CAAC,KAAoB;IAC/C,OAAO,KAAK,KAAK,OAAO,IAAI,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,MAAM,CAAC;AAClE,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,KAAoB;IAChD,OAAO,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,UAAU,CAAC;AACjD,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,KAAc;IACxD,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACzC,OAAO,EAAE,CAAC;IACX,CAAC;IAED,MAAM,MAAM,GAAmB,EAAE,CAAC;IAClC,KAAK,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAC3C,KAAgC,CAChC,EAAE,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC/B,SAAS;QACV,CAAC;QACD,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;YAClC,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC;YAChC,IAAI,OAAO,EAAE,CAAC;gBACb,MAAM,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC;YACvB,CAAC;QACF,CAAC;aAAM,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACzC,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;QAChC,CAAC;IACF,CAAC;IACD,OAAO,MAAM,CAAC;AACf,CAAC","sourcesContent":["export type ThemeMode = \"light\" | \"dark\" | \"auto\";\nexport type ThemeScope = \"self\" | \"document\";\nexport type ThemeVariables = Record<string, string>;\n\nexport function isThemeMode(value: string | null): value is ThemeMode {\n\treturn value === \"light\" || value === \"dark\" || value === \"auto\";\n}\n\nexport function isThemeScope(value: string | null): value is ThemeScope {\n\treturn value === \"self\" || value === \"document\";\n}\n\nexport function normalizePieThemeVariables(value: unknown): ThemeVariables {\n\tif (!value || typeof value !== \"object\") {\n\t\treturn {};\n\t}\n\n\tconst output: ThemeVariables = {};\n\tfor (const [key, rawValue] of Object.entries(\n\t\tvalue as Record<string, unknown>,\n\t)) {\n\t\tif (!key.startsWith(\"--pie-\")) {\n\t\t\tcontinue;\n\t\t}\n\t\tif (typeof rawValue === \"string\") {\n\t\t\tconst trimmed = rawValue.trim();\n\t\t\tif (trimmed) {\n\t\t\t\toutput[key] = trimmed;\n\t\t\t}\n\t\t} else if (typeof rawValue === \"number\") {\n\t\t\toutput[key] = String(rawValue);\n\t\t}\n\t}\n\treturn output;\n}\n"]}
|