@hanzogui/theme 8.3.1 → 8.3.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. package/dist/cjs/_mutateTheme.js +135 -0
  2. package/dist/cjs/_mutateTheme.js.map +1 -0
  3. package/dist/cjs/addTheme.js +8 -0
  4. package/dist/cjs/addTheme.js.map +1 -0
  5. package/dist/cjs/index.js +10 -0
  6. package/dist/cjs/index.js.map +1 -0
  7. package/dist/cjs/package.json +1 -0
  8. package/dist/cjs/replaceTheme.js +9 -0
  9. package/dist/cjs/replaceTheme.js.map +1 -0
  10. package/dist/cjs/updateTheme.js +8 -0
  11. package/dist/cjs/updateTheme.js.map +1 -0
  12. package/dist/esm/_mutateTheme.js +131 -0
  13. package/dist/esm/_mutateTheme.js.map +1 -0
  14. package/dist/esm/addTheme.js +5 -0
  15. package/dist/esm/addTheme.js.map +1 -0
  16. package/dist/esm/index.js +5 -6
  17. package/dist/esm/index.js.map +1 -1
  18. package/dist/esm/replaceTheme.js +6 -0
  19. package/dist/esm/replaceTheme.js.map +1 -0
  20. package/dist/esm/updateTheme.js +5 -0
  21. package/dist/esm/updateTheme.js.map +1 -0
  22. package/package.json +21 -16
  23. package/src/addTheme.ts +1 -1
  24. package/src/index.ts +5 -5
  25. package/src/replaceTheme.ts +1 -1
  26. package/src/updateTheme.ts +1 -1
  27. package/types/index.d.ts +5 -5
  28. package/types/index.d.ts.map +1 -1
  29. package/dist/cjs/_mutateTheme.cjs +0 -141
  30. package/dist/cjs/_mutateTheme.native.js +0 -137
  31. package/dist/cjs/_mutateTheme.native.js.map +0 -1
  32. package/dist/cjs/addTheme.cjs +0 -35
  33. package/dist/cjs/addTheme.native.js +0 -38
  34. package/dist/cjs/addTheme.native.js.map +0 -1
  35. package/dist/cjs/index.cjs +0 -32
  36. package/dist/cjs/index.native.js +0 -35
  37. package/dist/cjs/index.native.js.map +0 -1
  38. package/dist/cjs/replaceTheme.cjs +0 -40
  39. package/dist/cjs/replaceTheme.native.js +0 -44
  40. package/dist/cjs/replaceTheme.native.js.map +0 -1
  41. package/dist/cjs/updateTheme.cjs +0 -39
  42. package/dist/cjs/updateTheme.native.js +0 -43
  43. package/dist/cjs/updateTheme.native.js.map +0 -1
  44. package/dist/esm/_mutateTheme.mjs +0 -115
  45. package/dist/esm/_mutateTheme.mjs.map +0 -1
  46. package/dist/esm/_mutateTheme.native.js +0 -108
  47. package/dist/esm/_mutateTheme.native.js.map +0 -1
  48. package/dist/esm/addTheme.mjs +0 -10
  49. package/dist/esm/addTheme.mjs.map +0 -1
  50. package/dist/esm/addTheme.native.js +0 -10
  51. package/dist/esm/addTheme.native.js.map +0 -1
  52. package/dist/esm/index.mjs +0 -6
  53. package/dist/esm/index.mjs.map +0 -1
  54. package/dist/esm/index.native.js +0 -6
  55. package/dist/esm/index.native.js.map +0 -1
  56. package/dist/esm/replaceTheme.mjs +0 -15
  57. package/dist/esm/replaceTheme.mjs.map +0 -1
  58. package/dist/esm/replaceTheme.native.js +0 -16
  59. package/dist/esm/replaceTheme.native.js.map +0 -1
  60. package/dist/esm/updateTheme.mjs +0 -14
  61. package/dist/esm/updateTheme.mjs.map +0 -1
  62. package/dist/esm/updateTheme.native.js +0 -15
  63. package/dist/esm/updateTheme.native.js.map +0 -1
@@ -0,0 +1,135 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.mutateThemes = mutateThemes;
4
+ exports._mutateTheme = _mutateTheme;
5
+ const constants_1 = require("@hanzogui/constants");
6
+ const start_transition_1 = require("@hanzogui/start-transition");
7
+ const web_1 = require("@hanzogui/web");
8
+ // more advanced helper used only internally in studio for now
9
+ function mutateThemes({ themes, batch, insertCSS = true, ...props }) {
10
+ const allThemesProxied = {};
11
+ const allThemesRaw = {};
12
+ for (const { name, theme } of themes) {
13
+ const res = _mutateTheme({
14
+ ...props,
15
+ name,
16
+ theme,
17
+ // we'll do one update at the end
18
+ avoidUpdate: true,
19
+ // always add which also replaces but doesnt fail first time
20
+ mutationType: 'add',
21
+ });
22
+ if (res) {
23
+ allThemesProxied[name] = res.theme;
24
+ allThemesRaw[name] = res.themeRaw;
25
+ }
26
+ }
27
+ const cssRules = insertCSS ? insertThemeCSS(allThemesRaw, batch) : [];
28
+ (0, start_transition_1.startTransition)(() => {
29
+ for (const themeName in allThemesProxied) {
30
+ const theme = allThemesProxied[themeName];
31
+ updateThemeConfig(themeName, theme);
32
+ }
33
+ updateThemeStates();
34
+ });
35
+ return {
36
+ themes: allThemesProxied,
37
+ themesRaw: allThemesRaw,
38
+ cssRules,
39
+ };
40
+ }
41
+ function _mutateTheme(props) {
42
+ if (constants_1.isServer) {
43
+ if (process.env.NODE_ENV === 'development') {
44
+ console.warn('Theme mutation is not supported on server side');
45
+ }
46
+ return;
47
+ }
48
+ const config = (0, web_1.getConfig)();
49
+ const { name: themeName, theme: themeIn, insertCSS, mutationType } = props;
50
+ if (process.env.NODE_ENV === 'development') {
51
+ if (!config) {
52
+ throw new Error('No config');
53
+ }
54
+ const theme = config.themes[props.name];
55
+ if (mutationType !== 'add' && !theme) {
56
+ throw new Error(`${mutationType === 'replace' ? 'Replace' : 'Update'} theme failed! Theme ${props.name} does not exist`);
57
+ }
58
+ }
59
+ const theme = {
60
+ ...(mutationType === 'update' ? (config.themes[themeName] ?? {}) : {}),
61
+ ...themeIn,
62
+ };
63
+ for (const key in theme) {
64
+ (0, web_1.ensureThemeVariable)(theme, key);
65
+ }
66
+ const themeProxied = (0, web_1.proxyThemeToParents)(themeName, theme);
67
+ const response = {
68
+ themeRaw: theme,
69
+ theme: themeProxied,
70
+ cssRules: [],
71
+ };
72
+ if (props.avoidUpdate) {
73
+ return response;
74
+ }
75
+ if (insertCSS) {
76
+ response.cssRules = insertThemeCSS({
77
+ [themeName]: theme,
78
+ });
79
+ }
80
+ updateThemeConfig(themeName, themeProxied);
81
+ updateThemeStates();
82
+ return response;
83
+ }
84
+ function updateThemeConfig(themeName, theme) {
85
+ const config = (0, web_1.getConfig)();
86
+ config.themes[themeName] = theme;
87
+ (0, web_1.updateConfig)('themes', config.themes);
88
+ }
89
+ function updateThemeStates() {
90
+ (0, web_1.forceUpdateThemes)();
91
+ }
92
+ function insertThemeCSS(themes, batch = false) {
93
+ if ("web" !== 'web') {
94
+ return [];
95
+ }
96
+ const config = (0, web_1.getConfig)();
97
+ let cssRules = [];
98
+ for (const themeName in themes) {
99
+ const theme = themes[themeName];
100
+ const rules = (0, web_1.getThemeCSSRules)({
101
+ config,
102
+ themeName,
103
+ names: [themeName],
104
+ hasDarkLight: true,
105
+ theme,
106
+ // Use mutated variable creator which starts from high index to avoid conflicts
107
+ useMutatedVariables: true,
108
+ });
109
+ cssRules = [...cssRules, ...rules];
110
+ if (!batch) {
111
+ updateStyle(`t_theme_style_${themeName}`, rules);
112
+ }
113
+ }
114
+ // Output ALL mutated auto variables (since updateStyle replaces the element)
115
+ if (web_1.mutatedAutoVariables.length > 0) {
116
+ const autoVarCSS = `:root{${web_1.mutatedAutoVariables.map((v) => `--${v.name}:${v.val}`).join(';')}}`;
117
+ updateStyle(`t_mutate_vars`, [autoVarCSS]);
118
+ }
119
+ if (batch) {
120
+ const id = typeof batch == 'string' ? batch : (0, web_1.simpleHash)(Object.keys(themes).join(''));
121
+ updateStyle(`t_theme_style_${id}`, cssRules);
122
+ }
123
+ return cssRules;
124
+ }
125
+ function updateStyle(id, rules) {
126
+ const existing = document.querySelector(`#${id}`);
127
+ const style = document.createElement('style');
128
+ style.id = id;
129
+ style.appendChild(document.createTextNode(rules.join('\n')));
130
+ document.head.appendChild(style);
131
+ if (existing) {
132
+ existing.parentElement?.removeChild(existing);
133
+ }
134
+ }
135
+ //# sourceMappingURL=_mutateTheme.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_mutateTheme.js","sourceRoot":"","sources":["../../src/_mutateTheme.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.addTheme = addTheme;
4
+ const _mutateTheme_ts_1 = require("./_mutateTheme.js");
5
+ function addTheme(props) {
6
+ return (0, _mutateTheme_ts_1._mutateTheme)({ ...props, insertCSS: true, mutationType: 'add' });
7
+ }
8
+ //# sourceMappingURL=addTheme.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addTheme.js","sourceRoot":"","sources":["../../src/addTheme.ts"],"names":[],"mappings":";;;AAEA,uDAAgD;AAEhD,kBAAyB,KAIxB;IACC,OAAO,IAAA,8BAAY,EAAC,EAAE,GAAG,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,CAAA;AACzE,CAAC"}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.mutateThemes = void 0;
4
+ const tslib_1 = require("tslib");
5
+ tslib_1.__exportStar(require("./addTheme.js"), exports);
6
+ tslib_1.__exportStar(require("./updateTheme.js"), exports);
7
+ tslib_1.__exportStar(require("./replaceTheme.js"), exports);
8
+ var _mutateTheme_ts_1 = require("./_mutateTheme.js");
9
+ Object.defineProperty(exports, "mutateThemes", { enumerable: true, get: function () { return _mutateTheme_ts_1.mutateThemes; } });
10
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;AAAA,wDAA6B;AAC7B,2DAAgC;AAChC,4DAAiC;AACjC,qDAAgD;AAAvC,+GAAA,YAAY,OAAA"}
@@ -0,0 +1 @@
1
+ { "type": "commonjs" }
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.replaceTheme = replaceTheme;
4
+ const _mutateTheme_ts_1 = require("./_mutateTheme.js");
5
+ function replaceTheme({ name, theme, }) {
6
+ const next = (0, _mutateTheme_ts_1._mutateTheme)({ name, theme, insertCSS: true, mutationType: 'replace' });
7
+ return next;
8
+ }
9
+ //# sourceMappingURL=replaceTheme.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"replaceTheme.js","sourceRoot":"","sources":["../../src/replaceTheme.ts"],"names":[],"mappings":";;;AAEA,uDAAgD;AAEhD,sBAA6B,EAC3B,IAAI,EACJ,KAAK,GAIN;IACC,MAAM,IAAI,GAAG,IAAA,8BAAY,EAAC,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC,CAAA;IACpF,OAAO,IAAI,CAAA;AACb,CAAC"}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.updateTheme = updateTheme;
4
+ const _mutateTheme_ts_1 = require("./_mutateTheme.js");
5
+ function updateTheme({ name, theme, }) {
6
+ return (0, _mutateTheme_ts_1._mutateTheme)({ name, theme, insertCSS: true, mutationType: 'update' });
7
+ }
8
+ //# sourceMappingURL=updateTheme.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"updateTheme.js","sourceRoot":"","sources":["../../src/updateTheme.ts"],"names":[],"mappings":";;;AAEA,uDAAgD;AAEhD,qBAA4B,EAC1B,IAAI,EACJ,KAAK,GAIN;IACC,OAAO,IAAA,8BAAY,EAAC,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC,CAAA;AAC/E,CAAC"}
@@ -0,0 +1,131 @@
1
+ import { isServer } from '@hanzogui/constants';
2
+ import { startTransition } from '@hanzogui/start-transition';
3
+ import { ensureThemeVariable, forceUpdateThemes, getConfig, getThemeCSSRules, mutatedAutoVariables, proxyThemeToParents, simpleHash, updateConfig, } from '@hanzogui/web';
4
+ // more advanced helper used only internally in studio for now
5
+ export function mutateThemes({ themes, batch, insertCSS = true, ...props }) {
6
+ const allThemesProxied = {};
7
+ const allThemesRaw = {};
8
+ for (const { name, theme } of themes) {
9
+ const res = _mutateTheme({
10
+ ...props,
11
+ name,
12
+ theme,
13
+ // we'll do one update at the end
14
+ avoidUpdate: true,
15
+ // always add which also replaces but doesnt fail first time
16
+ mutationType: 'add',
17
+ });
18
+ if (res) {
19
+ allThemesProxied[name] = res.theme;
20
+ allThemesRaw[name] = res.themeRaw;
21
+ }
22
+ }
23
+ const cssRules = insertCSS ? insertThemeCSS(allThemesRaw, batch) : [];
24
+ startTransition(() => {
25
+ for (const themeName in allThemesProxied) {
26
+ const theme = allThemesProxied[themeName];
27
+ updateThemeConfig(themeName, theme);
28
+ }
29
+ updateThemeStates();
30
+ });
31
+ return {
32
+ themes: allThemesProxied,
33
+ themesRaw: allThemesRaw,
34
+ cssRules,
35
+ };
36
+ }
37
+ export function _mutateTheme(props) {
38
+ if (isServer) {
39
+ if (process.env.NODE_ENV === 'development') {
40
+ console.warn('Theme mutation is not supported on server side');
41
+ }
42
+ return;
43
+ }
44
+ const config = getConfig();
45
+ const { name: themeName, theme: themeIn, insertCSS, mutationType } = props;
46
+ if (process.env.NODE_ENV === 'development') {
47
+ if (!config) {
48
+ throw new Error('No config');
49
+ }
50
+ const theme = config.themes[props.name];
51
+ if (mutationType !== 'add' && !theme) {
52
+ throw new Error(`${mutationType === 'replace' ? 'Replace' : 'Update'} theme failed! Theme ${props.name} does not exist`);
53
+ }
54
+ }
55
+ const theme = {
56
+ ...(mutationType === 'update' ? (config.themes[themeName] ?? {}) : {}),
57
+ ...themeIn,
58
+ };
59
+ for (const key in theme) {
60
+ ensureThemeVariable(theme, key);
61
+ }
62
+ const themeProxied = proxyThemeToParents(themeName, theme);
63
+ const response = {
64
+ themeRaw: theme,
65
+ theme: themeProxied,
66
+ cssRules: [],
67
+ };
68
+ if (props.avoidUpdate) {
69
+ return response;
70
+ }
71
+ if (insertCSS) {
72
+ response.cssRules = insertThemeCSS({
73
+ [themeName]: theme,
74
+ });
75
+ }
76
+ updateThemeConfig(themeName, themeProxied);
77
+ updateThemeStates();
78
+ return response;
79
+ }
80
+ function updateThemeConfig(themeName, theme) {
81
+ const config = getConfig();
82
+ config.themes[themeName] = theme;
83
+ updateConfig('themes', config.themes);
84
+ }
85
+ function updateThemeStates() {
86
+ forceUpdateThemes();
87
+ }
88
+ function insertThemeCSS(themes, batch = false) {
89
+ if ("web" !== 'web') {
90
+ return [];
91
+ }
92
+ const config = getConfig();
93
+ let cssRules = [];
94
+ for (const themeName in themes) {
95
+ const theme = themes[themeName];
96
+ const rules = getThemeCSSRules({
97
+ config,
98
+ themeName,
99
+ names: [themeName],
100
+ hasDarkLight: true,
101
+ theme,
102
+ // Use mutated variable creator which starts from high index to avoid conflicts
103
+ useMutatedVariables: true,
104
+ });
105
+ cssRules = [...cssRules, ...rules];
106
+ if (!batch) {
107
+ updateStyle(`t_theme_style_${themeName}`, rules);
108
+ }
109
+ }
110
+ // Output ALL mutated auto variables (since updateStyle replaces the element)
111
+ if (mutatedAutoVariables.length > 0) {
112
+ const autoVarCSS = `:root{${mutatedAutoVariables.map((v) => `--${v.name}:${v.val}`).join(';')}}`;
113
+ updateStyle(`t_mutate_vars`, [autoVarCSS]);
114
+ }
115
+ if (batch) {
116
+ const id = typeof batch == 'string' ? batch : simpleHash(Object.keys(themes).join(''));
117
+ updateStyle(`t_theme_style_${id}`, cssRules);
118
+ }
119
+ return cssRules;
120
+ }
121
+ function updateStyle(id, rules) {
122
+ const existing = document.querySelector(`#${id}`);
123
+ const style = document.createElement('style');
124
+ style.id = id;
125
+ style.appendChild(document.createTextNode(rules.join('\n')));
126
+ document.head.appendChild(style);
127
+ if (existing) {
128
+ existing.parentElement?.removeChild(existing);
129
+ }
130
+ }
131
+ //# sourceMappingURL=_mutateTheme.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_mutateTheme.js","sourceRoot":"","sources":["../../src/_mutateTheme.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import { _mutateTheme } from './_mutateTheme.js';
2
+ export function addTheme(props) {
3
+ return _mutateTheme({ ...props, insertCSS: true, mutationType: 'add' });
4
+ }
5
+ //# sourceMappingURL=addTheme.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addTheme.js","sourceRoot":"","sources":["../../src/addTheme.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAEhD,MAAM,UAAU,QAAQ,CAAC,KAIxB;IACC,OAAO,YAAY,CAAC,EAAE,GAAG,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,CAAA;AACzE,CAAC"}
package/dist/esm/index.js CHANGED
@@ -1,6 +1,5 @@
1
- export * from "./addTheme.mjs";
2
- export * from "./updateTheme.mjs";
3
- export * from "./replaceTheme.mjs";
4
- import { mutateThemes } from "./_mutateTheme.mjs";
5
- export { mutateThemes };
6
- //# sourceMappingURL=index.js.map
1
+ export * from './addTheme.js';
2
+ export * from './updateTheme.js';
3
+ export * from './replaceTheme.js';
4
+ export { mutateThemes } from './_mutateTheme.js';
5
+ //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["mutateThemes"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA,cAAc;AACd,cAAc;AACd,cAAc;AACd,SAASA,YAAA,QAAoB","ignoreList":[]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,kBAAkB,CAAA;AAChC,cAAc,mBAAmB,CAAA;AACjC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA"}
@@ -0,0 +1,6 @@
1
+ import { _mutateTheme } from './_mutateTheme.js';
2
+ export function replaceTheme({ name, theme, }) {
3
+ const next = _mutateTheme({ name, theme, insertCSS: true, mutationType: 'replace' });
4
+ return next;
5
+ }
6
+ //# sourceMappingURL=replaceTheme.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"replaceTheme.js","sourceRoot":"","sources":["../../src/replaceTheme.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAEhD,MAAM,UAAU,YAAY,CAAC,EAC3B,IAAI,EACJ,KAAK,GAIN;IACC,MAAM,IAAI,GAAG,YAAY,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC,CAAA;IACpF,OAAO,IAAI,CAAA;AACb,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { _mutateTheme } from './_mutateTheme.js';
2
+ export function updateTheme({ name, theme, }) {
3
+ return _mutateTheme({ name, theme, insertCSS: true, mutationType: 'update' });
4
+ }
5
+ //# sourceMappingURL=updateTheme.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"updateTheme.js","sourceRoot":"","sources":["../../src/updateTheme.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAEhD,MAAM,UAAU,WAAW,CAAC,EAC1B,IAAI,EACJ,KAAK,GAIN;IACC,OAAO,YAAY,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC,CAAA;AAC/E,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hanzogui/theme",
3
- "version": "8.3.1",
3
+ "version": "8.3.2",
4
4
  "source": "src/index.ts",
5
5
  "files": [
6
6
  "src",
@@ -9,40 +9,45 @@
9
9
  ],
10
10
  "type": "module",
11
11
  "sideEffects": false,
12
- "main": "dist/cjs",
13
- "module": "dist/esm",
12
+ "main": "./dist/cjs/index.js",
13
+ "module": "./dist/esm/index.js",
14
14
  "types": "./types/index.d.ts",
15
15
  "exports": {
16
16
  "./package.json": "./package.json",
17
17
  ".": {
18
18
  "types": "./types/index.d.ts",
19
- "react-native": "./dist/esm/index.native.js",
20
- "browser": "./dist/esm/index.mjs",
21
- "module": "./dist/esm/index.mjs",
22
- "import": "./dist/esm/index.mjs",
23
- "require": "./dist/cjs/index.cjs",
24
- "default": "./dist/esm/index.mjs"
19
+ "react-native": "./dist/esm/index.js",
20
+ "browser": "./dist/esm/index.js",
21
+ "module": "./dist/esm/index.js",
22
+ "import": "./dist/esm/index.js",
23
+ "require": "./dist/cjs/index.js",
24
+ "default": "./dist/esm/index.js"
25
25
  }
26
26
  },
27
27
  "publishConfig": {
28
28
  "access": "public"
29
29
  },
30
30
  "scripts": {
31
- "build": "hanzogui-build",
31
+ "build": "hanzogui-build --skip-native",
32
32
  "watch": "hanzogui-build --watch",
33
33
  "clean": "hanzogui-build clean",
34
34
  "clean:build": "hanzogui-build clean:build"
35
35
  },
36
36
  "dependencies": {
37
- "@hanzogui/constants": "8.3.1",
38
- "@hanzogui/start-transition": "8.3.1",
39
- "@hanzogui/web": "8.3.1"
37
+ "@hanzogui/constants": "8.3.2",
38
+ "@hanzogui/start-transition": "8.3.2",
39
+ "@hanzogui/web": "8.3.2"
40
40
  },
41
41
  "devDependencies": {
42
- "@hanzogui/build": "8.3.1",
43
- "react": ">=19"
42
+ "@hanzogui/build": "8.3.2",
43
+ "react": "19.2.8"
44
44
  },
45
45
  "peerDependencies": {
46
- "react": ">=19"
46
+ "react": ">=19.2.8"
47
+ },
48
+ "repository": {
49
+ "type": "git",
50
+ "url": "git+https://github.com/hanzoai/gui.git",
51
+ "directory": "pkgs/core/theme"
47
52
  }
48
53
  }
package/src/addTheme.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import type { ThemeDefinition, ThemeParsed } from '@hanzogui/web'
2
2
 
3
- import { _mutateTheme } from './_mutateTheme'
3
+ import { _mutateTheme } from './_mutateTheme.ts'
4
4
 
5
5
  export function addTheme(props: {
6
6
  name: string
package/src/index.ts CHANGED
@@ -1,5 +1,5 @@
1
- export * from './addTheme'
2
- export * from './updateTheme'
3
- export * from './replaceTheme'
4
- export { mutateThemes } from './_mutateTheme'
5
- export type { MutateOneThemeProps } from './_mutateTheme'
1
+ export * from './addTheme.ts'
2
+ export * from './updateTheme.ts'
3
+ export * from './replaceTheme.ts'
4
+ export { mutateThemes } from './_mutateTheme.ts'
5
+ export type { MutateOneThemeProps } from './_mutateTheme.ts'
@@ -1,6 +1,6 @@
1
1
  import type { ThemeDefinition } from '@hanzogui/web'
2
2
 
3
- import { _mutateTheme } from './_mutateTheme'
3
+ import { _mutateTheme } from './_mutateTheme.ts'
4
4
 
5
5
  export function replaceTheme({
6
6
  name,
@@ -1,6 +1,6 @@
1
1
  import type { ThemeDefinition, ThemeName } from '@hanzogui/web'
2
2
 
3
- import { _mutateTheme } from './_mutateTheme'
3
+ import { _mutateTheme } from './_mutateTheme.ts'
4
4
 
5
5
  export function updateTheme({
6
6
  name,
package/types/index.d.ts CHANGED
@@ -1,6 +1,6 @@
1
- export * from './addTheme';
2
- export * from './updateTheme';
3
- export * from './replaceTheme';
4
- export { mutateThemes } from './_mutateTheme';
5
- export type { MutateOneThemeProps } from './_mutateTheme';
1
+ export * from './addTheme.ts';
2
+ export * from './updateTheme.ts';
3
+ export * from './replaceTheme.ts';
4
+ export { mutateThemes } from './_mutateTheme.ts';
5
+ export type { MutateOneThemeProps } from './_mutateTheme.ts';
6
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA;AAC1B,cAAc,eAAe,CAAA;AAC7B,cAAc,gBAAgB,CAAA;AAC9B,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,YAAY,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,kBAAkB,CAAA;AAChC,cAAc,mBAAmB,CAAA;AACjC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,YAAY,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAA"}