@vxrn/color-scheme 1.21.13 → 1.23.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/userScheme.cjs +1 -1
- package/dist/cjs/userScheme.native.js +6 -6
- package/dist/cjs/userScheme.native.js.map +1 -1
- package/dist/cjs/userSchemeAppearance.cjs +35 -0
- package/dist/cjs/userSchemeAppearance.native.js +42 -0
- package/dist/cjs/userSchemeAppearance.native.js.map +1 -0
- package/dist/esm/userScheme.native.js +6 -6
- package/dist/esm/userScheme.native.js.map +1 -1
- package/dist/esm/userSchemeAppearance.mjs +8 -0
- package/dist/esm/userSchemeAppearance.mjs.map +1 -0
- package/dist/esm/userSchemeAppearance.native.js +12 -0
- package/dist/esm/userSchemeAppearance.native.js.map +1 -0
- package/package.json +7 -7
- package/src/userScheme.ts +12 -8
- package/src/userSchemeAppearance.native.ts +14 -0
- package/src/userSchemeAppearance.ts +9 -0
- package/types/userScheme.d.ts.map +1 -1
- package/types/userSchemeAppearance.d.ts +5 -0
- package/types/userSchemeAppearance.d.ts.map +1 -0
- package/types/userSchemeAppearance.native.d.ts +5 -0
- package/types/userSchemeAppearance.native.d.ts.map +1 -0
package/dist/cjs/userScheme.cjs
CHANGED
|
@@ -32,9 +32,9 @@ __export(userScheme_exports, {
|
|
|
32
32
|
module.exports = __toCommonJS(userScheme_exports);
|
|
33
33
|
var import_use_isomorphic_layout_effect = require("@vxrn/use-isomorphic-layout-effect");
|
|
34
34
|
var import_react = require("react");
|
|
35
|
-
require("react-native-web");
|
|
36
35
|
var import_safeStorage = require("./safeStorage.cjs");
|
|
37
36
|
var import_systemScheme = require("./systemScheme.cjs");
|
|
37
|
+
require("./userSchemeAppearance.cjs");
|
|
38
38
|
const listeners = /* @__PURE__ */new Set();
|
|
39
39
|
const storageKey = "vxrn-scheme";
|
|
40
40
|
let _forceScheme = null;
|
|
@@ -34,9 +34,9 @@ __export(userScheme_exports, {
|
|
|
34
34
|
module.exports = __toCommonJS(userScheme_exports);
|
|
35
35
|
var import_use_isomorphic_layout_effect = require("@vxrn/use-isomorphic-layout-effect");
|
|
36
36
|
var import_react = require("react");
|
|
37
|
-
var import_react_native = require("react-native");
|
|
38
37
|
var import_safeStorage = require("./safeStorage.native.js");
|
|
39
38
|
require("./systemScheme.native.js");
|
|
39
|
+
var import_userSchemeAppearance = require("./userSchemeAppearance.native.js");
|
|
40
40
|
var listeners = /* @__PURE__ */new Set();
|
|
41
41
|
var storageKey = "vxrn-scheme";
|
|
42
42
|
var _forceScheme = null;
|
|
@@ -76,14 +76,14 @@ function getInitialSetting() {
|
|
|
76
76
|
return "system";
|
|
77
77
|
}
|
|
78
78
|
function getInitialValue(setting) {
|
|
79
|
-
if (setting === "system") return
|
|
79
|
+
if (setting === "system") return (0, import_userSchemeAppearance.getAppearanceScheme)();
|
|
80
80
|
return setting;
|
|
81
81
|
}
|
|
82
82
|
var initialSetting = getInitialSetting();
|
|
83
83
|
var currentSetting = initialSetting;
|
|
84
84
|
var currentValue = getInitialValue(initialSetting);
|
|
85
|
-
|
|
86
|
-
if (currentSetting === "system"
|
|
85
|
+
(0, import_userSchemeAppearance.addAppearanceChangeListener)(function () {
|
|
86
|
+
if (currentSetting === "system") updateValueFromSystem();
|
|
87
87
|
});
|
|
88
88
|
var isWebListening = false;
|
|
89
89
|
function startWebListener() {
|
|
@@ -98,7 +98,7 @@ function startWebListener() {
|
|
|
98
98
|
matcher === null || matcher === void 0 || (_matcher_addEventListener = matcher.addEventListener) == null || _matcher_addEventListener.call(matcher, "change", onSystemChange);
|
|
99
99
|
}
|
|
100
100
|
function resolveValue(setting) {
|
|
101
|
-
if (setting === "system") return
|
|
101
|
+
if (setting === "system") return (0, import_userSchemeAppearance.getAppearanceScheme)();
|
|
102
102
|
return setting;
|
|
103
103
|
}
|
|
104
104
|
function updateValueFromSystem() {
|
|
@@ -115,7 +115,7 @@ function updateScheme(setting) {
|
|
|
115
115
|
if (value !== currentValue || currentSetting !== setting) {
|
|
116
116
|
currentSetting = setting;
|
|
117
117
|
currentValue = value;
|
|
118
|
-
if (setting !== "system")
|
|
118
|
+
if (setting !== "system") (0, import_userSchemeAppearance.setAppearanceScheme)(value);else (0, import_userSchemeAppearance.setAppearanceScheme)("unspecified");
|
|
119
119
|
notifyListeners();
|
|
120
120
|
}
|
|
121
121
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["to","__toCommonJS","mod","__copyProps","__defProp","value","userScheme_exports","__export","getForceScheme","getUserScheme","onUserSchemeChange","setForceScheme","setUserScheme","useUserScheme","module","exports","import_use_isomorphic_layout_effect","require","import_react","
|
|
1
|
+
{"version":3,"names":["to","__toCommonJS","mod","__copyProps","__defProp","value","userScheme_exports","__export","getForceScheme","getUserScheme","onUserSchemeChange","setForceScheme","setUserScheme","useUserScheme","module","exports","import_use_isomorphic_layout_effect","require","import_react","import_safeStorage","import_userSchemeAppearance","listeners","Set","storageKey","_forceScheme","notifyListeners","forEach","listener","currentSetting","currentValue","restoreUnforcedScheme","stored","getStorageItem","resolveValue","scheme","wasForced","startWebListener","getInitialSetting","getInitialValue","setting","getAppearanceScheme","initialSetting","addAppearanceChangeListener","updateValueFromSystem","isWebListening","_window_matchMedia","_window","_matcher_addEventListener","matcher","window","matchMedia","call","onSystemChange","addEventListener","updateScheme","setAppearanceScheme","setStorageItem","add","delete","state","setState","useState","snapshot","resolvedState","useIsomorphicLayoutEffect","useMemo","set"],"sources":["../../src/userScheme.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __export = (target, all) => {
|
|
6
|
+
for (var name in all) __defProp(target, name, {
|
|
7
|
+
get: all[name],
|
|
8
|
+
enumerable: true
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __copyProps = (to, from, except, desc) => {
|
|
12
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
13
|
+
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
14
|
+
get: () => from[key],
|
|
15
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
21
|
+
value: true
|
|
22
|
+
}), mod);
|
|
23
|
+
var userSchemeAppearance_exports = {};
|
|
24
|
+
__export(userSchemeAppearance_exports, {
|
|
25
|
+
addAppearanceChangeListener: () => addAppearanceChangeListener,
|
|
26
|
+
getAppearanceScheme: () => getAppearanceScheme,
|
|
27
|
+
setAppearanceScheme: () => setAppearanceScheme
|
|
28
|
+
});
|
|
29
|
+
module.exports = __toCommonJS(userSchemeAppearance_exports);
|
|
30
|
+
var import_systemScheme = require("./systemScheme.cjs");
|
|
31
|
+
function getAppearanceScheme() {
|
|
32
|
+
return (0, import_systemScheme.getSystemScheme)();
|
|
33
|
+
}
|
|
34
|
+
function setAppearanceScheme(_scheme) {}
|
|
35
|
+
function addAppearanceChangeListener(_listener) {}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __export = (target, all) => {
|
|
8
|
+
for (var name in all) __defProp(target, name, {
|
|
9
|
+
get: all[name],
|
|
10
|
+
enumerable: true
|
|
11
|
+
});
|
|
12
|
+
};
|
|
13
|
+
var __copyProps = (to, from, except, desc) => {
|
|
14
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
15
|
+
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
16
|
+
get: () => from[key],
|
|
17
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
return to;
|
|
21
|
+
};
|
|
22
|
+
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
23
|
+
value: true
|
|
24
|
+
}), mod);
|
|
25
|
+
var userSchemeAppearance_native_exports = {};
|
|
26
|
+
__export(userSchemeAppearance_native_exports, {
|
|
27
|
+
addAppearanceChangeListener: () => addAppearanceChangeListener,
|
|
28
|
+
getAppearanceScheme: () => getAppearanceScheme,
|
|
29
|
+
setAppearanceScheme: () => setAppearanceScheme
|
|
30
|
+
});
|
|
31
|
+
module.exports = __toCommonJS(userSchemeAppearance_native_exports);
|
|
32
|
+
var import_react_native = require("react-native");
|
|
33
|
+
function getAppearanceScheme() {
|
|
34
|
+
return import_react_native.Appearance.getColorScheme() === "dark" ? "dark" : "light";
|
|
35
|
+
}
|
|
36
|
+
function setAppearanceScheme(scheme) {
|
|
37
|
+
import_react_native.Appearance.setColorScheme(scheme);
|
|
38
|
+
}
|
|
39
|
+
function addAppearanceChangeListener(listener) {
|
|
40
|
+
import_react_native.Appearance.addChangeListener(listener);
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=userSchemeAppearance.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["userSchemeAppearance_native_exports","__export","addAppearanceChangeListener","getAppearanceScheme","setAppearanceScheme","module","exports","__toCommonJS","import_react_native","require","Appearance","getColorScheme","scheme","setColorScheme","listener","addChangeListener"],"sources":["../../src/userSchemeAppearance.native.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,mCAAA;AAAAC,QAAA,CAAAD,mCAAA;EAAAE,2BAAA,EAAAA,CAAA,KAAAA,2BAAA;EAAAC,mBAAA,EAAAA,CAAA,KAAAA,mBAAA;EAAAC,mBAAA,EAAAA,CAAA,KAAAA;AAAA;AAAAC,MAAA,CAAAC,OAAA,GAAAC,YAAA,CAAAP,mCAAA;AAAA,IAAAQ,mBAAA,GAA2BC,OAAA;AACpB,SAASN,oBAAA,EAAsB;EAClC,OAAOK,mBAAA,CAAAE,UAAA,CAAWC,cAAA,CAAe,MAAM,SAAS,SAAS;AAC7D;AACO,SAASP,oBAAoBQ,MAAA,EAAQ;EACxCJ,mBAAA,CAAAE,UAAA,CAAWG,cAAA,CAAeD,MAAM;AACpC;AACO,SAASV,4BAA4BY,QAAA,EAAU;EAClDN,mBAAA,CAAAE,UAAA,CAAWK,iBAAA,CAAkBD,QAAQ;AACzC","ignoreList":[]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { useIsomorphicLayoutEffect } from "@vxrn/use-isomorphic-layout-effect";
|
|
2
2
|
import { useMemo, useState } from "react";
|
|
3
|
-
import { Appearance } from "react-native";
|
|
4
3
|
import { getStorageItem, setStorageItem } from "./safeStorage.native.js";
|
|
4
|
+
import { addAppearanceChangeListener, getAppearanceScheme, setAppearanceScheme } from "./userSchemeAppearance.native.js";
|
|
5
5
|
var listeners = /* @__PURE__ */new Set();
|
|
6
6
|
var storageKey = "vxrn-scheme";
|
|
7
7
|
var _forceScheme = null;
|
|
@@ -41,14 +41,14 @@ function getInitialSetting() {
|
|
|
41
41
|
return "system";
|
|
42
42
|
}
|
|
43
43
|
function getInitialValue(setting) {
|
|
44
|
-
if (setting === "system") return
|
|
44
|
+
if (setting === "system") return getAppearanceScheme();
|
|
45
45
|
return setting;
|
|
46
46
|
}
|
|
47
47
|
var initialSetting = getInitialSetting();
|
|
48
48
|
var currentSetting = initialSetting;
|
|
49
49
|
var currentValue = getInitialValue(initialSetting);
|
|
50
|
-
|
|
51
|
-
if (currentSetting === "system"
|
|
50
|
+
addAppearanceChangeListener(function () {
|
|
51
|
+
if (currentSetting === "system") updateValueFromSystem();
|
|
52
52
|
});
|
|
53
53
|
var isWebListening = false;
|
|
54
54
|
function startWebListener() {
|
|
@@ -63,7 +63,7 @@ function startWebListener() {
|
|
|
63
63
|
matcher === null || matcher === void 0 || (_matcher_addEventListener = matcher.addEventListener) == null || _matcher_addEventListener.call(matcher, "change", onSystemChange);
|
|
64
64
|
}
|
|
65
65
|
function resolveValue(setting) {
|
|
66
|
-
if (setting === "system") return
|
|
66
|
+
if (setting === "system") return getAppearanceScheme();
|
|
67
67
|
return setting;
|
|
68
68
|
}
|
|
69
69
|
function updateValueFromSystem() {
|
|
@@ -80,7 +80,7 @@ function updateScheme(setting) {
|
|
|
80
80
|
if (value !== currentValue || currentSetting !== setting) {
|
|
81
81
|
currentSetting = setting;
|
|
82
82
|
currentValue = value;
|
|
83
|
-
if (setting !== "system")
|
|
83
|
+
if (setting !== "system") setAppearanceScheme(value);else setAppearanceScheme("unspecified");
|
|
84
84
|
notifyListeners();
|
|
85
85
|
}
|
|
86
86
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useIsomorphicLayoutEffect","useMemo","useState","
|
|
1
|
+
{"version":3,"names":["useIsomorphicLayoutEffect","useMemo","useState","getStorageItem","setStorageItem","addAppearanceChangeListener","getAppearanceScheme","setAppearanceScheme","listeners","Set","storageKey","_forceScheme","notifyListeners","forEach","listener","currentSetting","currentValue","restoreUnforcedScheme","stored","resolveValue","setForceScheme","scheme","wasForced","startWebListener","getForceScheme","getInitialSetting","getInitialValue","setting","initialSetting","updateValueFromSystem","isWebListening","_window_matchMedia","_window","_matcher_addEventListener","matcher","window","matchMedia","call","onSystemChange","addEventListener","value","updateScheme","setUserScheme","getUserScheme","onUserSchemeChange","add","delete","useUserScheme","state","setState","snapshot","resolvedState","set"],"sources":["userScheme.native.js"],"sourcesContent":["import { useIsomorphicLayoutEffect } from \"@vxrn/use-isomorphic-layout-effect\";\nimport { useMemo, useState } from \"react\";\nimport { getStorageItem, setStorageItem } from \"./safeStorage\";\nimport { addAppearanceChangeListener, getAppearanceScheme, setAppearanceScheme } from \"./userSchemeAppearance\";\n\nvar listeners = /* @__PURE__ */ new Set();\nvar storageKey = \"vxrn-scheme\";\nvar _forceScheme = null;\nfunction notifyListeners() {\n\tlisteners.forEach(function(listener) {\n\t\tlistener(currentSetting, currentValue);\n\t});\n}\nfunction restoreUnforcedScheme() {\n\tvar stored = getStorageItem(storageKey);\n\tif (stored) {\n\t\tcurrentSetting = stored;\n\t\tcurrentValue = stored === \"system\" ? resolveValue(\"system\") : stored;\n\t\treturn;\n\t}\n\tcurrentSetting = \"system\";\n\tcurrentValue = resolveValue(\"system\");\n}\nfunction setForceScheme(scheme) {\n\tvar wasForced = _forceScheme;\n\tif (wasForced === scheme) return;\n\t_forceScheme = scheme;\n\tif (scheme) {\n\t\tcurrentSetting = scheme;\n\t\tcurrentValue = scheme;\n\t} else if (wasForced) {\n\t\trestoreUnforcedScheme();\n\t\tstartWebListener();\n\t}\n}\nfunction getForceScheme() {\n\treturn _forceScheme;\n}\nfunction getInitialSetting() {\n\tvar stored = getStorageItem(storageKey);\n\tif (stored === \"light\" || stored === \"dark\" || stored === \"system\") return stored;\n\treturn \"system\";\n}\nfunction getInitialValue(setting) {\n\tif (setting === \"system\") return getAppearanceScheme();\n\treturn setting;\n}\nvar initialSetting = getInitialSetting();\nvar currentSetting = initialSetting;\nvar currentValue = getInitialValue(initialSetting);\naddAppearanceChangeListener(function() {\n\tif (currentSetting === \"system\") updateValueFromSystem();\n});\nvar isWebListening = false;\nfunction startWebListener() {\n\tvar _window_matchMedia, _window, _matcher_addEventListener;\n\tif (isWebListening) return;\n\tisWebListening = true;\n\tvar matcher = typeof window !== \"undefined\" ? (_window_matchMedia = (_window = window).matchMedia) === null || _window_matchMedia === void 0 ? void 0 : _window_matchMedia.call(_window, \"(prefers-color-scheme: dark)\") : null;\n\tvar onSystemChange = function() {\n\t\tif (currentSetting === \"system\") updateValueFromSystem();\n\t};\n\tonSystemChange();\n\tmatcher === null || matcher === void 0 || (_matcher_addEventListener = matcher.addEventListener) == null || _matcher_addEventListener.call(matcher, \"change\", onSystemChange);\n}\nfunction resolveValue(setting) {\n\tif (setting === \"system\") return getAppearanceScheme();\n\treturn setting;\n}\nfunction updateValueFromSystem() {\n\tif (_forceScheme) return;\n\tvar value = resolveValue(\"system\");\n\tif (value !== currentValue) {\n\t\tcurrentValue = value;\n\t\tnotifyListeners();\n\t}\n}\nfunction updateScheme(setting) {\n\tif (_forceScheme) return;\n\tvar value = setting === \"system\" ? resolveValue(\"system\") : setting;\n\tif (value !== currentValue || currentSetting !== setting) {\n\t\tcurrentSetting = setting;\n\t\tcurrentValue = value;\n\t\tif (setting !== \"system\") setAppearanceScheme(value);\n\t\telse setAppearanceScheme(\"unspecified\");\n\t\tnotifyListeners();\n\t}\n}\nfunction setUserScheme(setting) {\n\tif (_forceScheme) return;\n\tsetStorageItem(storageKey, setting);\n\tupdateScheme(setting);\n}\nfunction getUserScheme() {\n\tif (_forceScheme) return {\n\t\tsetting: _forceScheme,\n\t\tvalue: _forceScheme\n\t};\n\treturn {\n\t\tsetting: currentSetting,\n\t\tvalue: currentValue\n\t};\n}\nfunction onUserSchemeChange(listener) {\n\tlisteners.add(listener);\n\tlistener(currentSetting, currentValue);\n\treturn function() {\n\t\tlisteners.delete(listener);\n\t};\n}\nfunction useUserScheme() {\n\tvar [state, setState] = useState(function() {\n\t\treturn getUserScheme();\n\t});\n\tvar snapshot = getUserScheme();\n\tvar resolvedState = state.setting === snapshot.setting && state.value === snapshot.value ? state : snapshot;\n\tuseIsomorphicLayoutEffect(function() {\n\t\tif (!_forceScheme) {\n\t\t\tvar stored = getStorageItem(storageKey);\n\t\t\tif (stored) updateScheme(stored);\n\t\t\tstartWebListener();\n\t\t}\n\t\treturn onUserSchemeChange(function(setting, value) {\n\t\t\tsetState({\n\t\t\t\tsetting,\n\t\t\t\tvalue\n\t\t\t});\n\t\t});\n\t}, []);\n\treturn useMemo(function() {\n\t\treturn {\n\t\t\tsetting: resolvedState.setting,\n\t\t\tvalue: resolvedState.value,\n\t\t\tset: setUserScheme\n\t\t};\n\t}, [resolvedState.setting, resolvedState.value]);\n}\n\nexport { getForceScheme, getUserScheme, onUserSchemeChange, setForceScheme, setUserScheme, useUserScheme };"],"mappings":"AAAA,SAASA,yBAAyB,QAAQ,oCAAoC;AAC9E,SAASC,OAAO,EAAEC,QAAQ,QAAQ,OAAO;AACzC,SAASC,cAAc,EAAEC,cAAc,QAAQ,yBAAe;AAC9D,SAASC,2BAA2B,EAAEC,mBAAmB,EAAEC,mBAAmB,QAAQ,kCAAwB;AAE9G,IAAIC,SAAS,GAAG,eAAgB,IAAIC,GAAG,CAAC,CAAC;AACzC,IAAIC,UAAU,GAAG,aAAa;AAC9B,IAAIC,YAAY,GAAG,IAAI;AACvB,SAASC,eAAeA,CAAA,EAAG;EAC1BJ,SAAS,CAACK,OAAO,CAAC,UAASC,QAAQ,EAAE;IACpCA,QAAQ,CAACC,cAAc,EAAEC,YAAY,CAAC;EACvC,CAAC,CAAC;AACH;AACA,SAASC,qBAAqBA,CAAA,EAAG;EAChC,IAAIC,MAAM,GAAGf,cAAc,CAACO,UAAU,CAAC;EACvC,IAAIQ,MAAM,EAAE;IACXH,cAAc,GAAGG,MAAM;IACvBF,YAAY,GAAGE,MAAM,KAAK,QAAQ,GAAGC,YAAY,CAAC,QAAQ,CAAC,GAAGD,MAAM;IACpE;EACD;EACAH,cAAc,GAAG,QAAQ;EACzBC,YAAY,GAAGG,YAAY,CAAC,QAAQ,CAAC;AACtC;AACA,SAASC,cAAcA,CAACC,MAAM,EAAE;EAC/B,IAAIC,SAAS,GAAGX,YAAY;EAC5B,IAAIW,SAAS,KAAKD,MAAM,EAAE;EAC1BV,YAAY,GAAGU,MAAM;EACrB,IAAIA,MAAM,EAAE;IACXN,cAAc,GAAGM,MAAM;IACvBL,YAAY,GAAGK,MAAM;EACtB,CAAC,MAAM,IAAIC,SAAS,EAAE;IACrBL,qBAAqB,CAAC,CAAC;IACvBM,gBAAgB,CAAC,CAAC;EACnB;AACD;AACA,SAASC,cAAcA,CAAA,EAAG;EACzB,OAAOb,YAAY;AACpB;AACA,SAASc,iBAAiBA,CAAA,EAAG;EAC5B,IAAIP,MAAM,GAAGf,cAAc,CAACO,UAAU,CAAC;EACvC,IAAIQ,MAAM,KAAK,OAAO,IAAIA,MAAM,KAAK,MAAM,IAAIA,MAAM,KAAK,QAAQ,EAAE,OAAOA,MAAM;EACjF,OAAO,QAAQ;AAChB;AACA,SAASQ,eAAeA,CAACC,OAAO,EAAE;EACjC,IAAIA,OAAO,KAAK,QAAQ,EAAE,OAAOrB,mBAAmB,CAAC,CAAC;EACtD,OAAOqB,OAAO;AACf;AACA,IAAIC,cAAc,GAAGH,iBAAiB,CAAC,CAAC;AACxC,IAAIV,cAAc,GAAGa,cAAc;AACnC,IAAIZ,YAAY,GAAGU,eAAe,CAACE,cAAc,CAAC;AAClDvB,2BAA2B,CAAC,YAAW;EACtC,IAAIU,cAAc,KAAK,QAAQ,EAAEc,qBAAqB,CAAC,CAAC;AACzD,CAAC,CAAC;AACF,IAAIC,cAAc,GAAG,KAAK;AAC1B,SAASP,gBAAgBA,CAAA,EAAG;EAC3B,IAAIQ,kBAAkB,EAAEC,OAAO,EAAEC,yBAAyB;EAC1D,IAAIH,cAAc,EAAE;EACpBA,cAAc,GAAG,IAAI;EACrB,IAAII,OAAO,GAAG,OAAOC,MAAM,KAAK,WAAW,GAAG,CAACJ,kBAAkB,GAAG,CAACC,OAAO,GAAGG,MAAM,EAAEC,UAAU,MAAM,IAAI,IAAIL,kBAAkB,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,kBAAkB,CAACM,IAAI,CAACL,OAAO,EAAE,8BAA8B,CAAC,GAAG,IAAI;EAC/N,IAAIM,cAAc,GAAG,SAAAA,CAAA,EAAW;IAC/B,IAAIvB,cAAc,KAAK,QAAQ,EAAEc,qBAAqB,CAAC,CAAC;EACzD,CAAC;EACDS,cAAc,CAAC,CAAC;EAChBJ,OAAO,KAAK,IAAI,IAAIA,OAAO,KAAK,KAAK,CAAC,IAAI,CAACD,yBAAyB,GAAGC,OAAO,CAACK,gBAAgB,KAAK,IAAI,IAAIN,yBAAyB,CAACI,IAAI,CAACH,OAAO,EAAE,QAAQ,EAAEI,cAAc,CAAC;AAC9K;AACA,SAASnB,YAAYA,CAACQ,OAAO,EAAE;EAC9B,IAAIA,OAAO,KAAK,QAAQ,EAAE,OAAOrB,mBAAmB,CAAC,CAAC;EACtD,OAAOqB,OAAO;AACf;AACA,SAASE,qBAAqBA,CAAA,EAAG;EAChC,IAAIlB,YAAY,EAAE;EAClB,IAAI6B,KAAK,GAAGrB,YAAY,CAAC,QAAQ,CAAC;EAClC,IAAIqB,KAAK,KAAKxB,YAAY,EAAE;IAC3BA,YAAY,GAAGwB,KAAK;IACpB5B,eAAe,CAAC,CAAC;EAClB;AACD;AACA,SAAS6B,YAAYA,CAACd,OAAO,EAAE;EAC9B,IAAIhB,YAAY,EAAE;EAClB,IAAI6B,KAAK,GAAGb,OAAO,KAAK,QAAQ,GAAGR,YAAY,CAAC,QAAQ,CAAC,GAAGQ,OAAO;EACnE,IAAIa,KAAK,KAAKxB,YAAY,IAAID,cAAc,KAAKY,OAAO,EAAE;IACzDZ,cAAc,GAAGY,OAAO;IACxBX,YAAY,GAAGwB,KAAK;IACpB,IAAIb,OAAO,KAAK,QAAQ,EAAEpB,mBAAmB,CAACiC,KAAK,CAAC,CAAC,KAChDjC,mBAAmB,CAAC,aAAa,CAAC;IACvCK,eAAe,CAAC,CAAC;EAClB;AACD;AACA,SAAS8B,aAAaA,CAACf,OAAO,EAAE;EAC/B,IAAIhB,YAAY,EAAE;EAClBP,cAAc,CAACM,UAAU,EAAEiB,OAAO,CAAC;EACnCc,YAAY,CAACd,OAAO,CAAC;AACtB;AACA,SAASgB,aAAaA,CAAA,EAAG;EACxB,IAAIhC,YAAY,EAAE,OAAO;IACxBgB,OAAO,EAAEhB,YAAY;IACrB6B,KAAK,EAAE7B;EACR,CAAC;EACD,OAAO;IACNgB,OAAO,EAAEZ,cAAc;IACvByB,KAAK,EAAExB;EACR,CAAC;AACF;AACA,SAAS4B,kBAAkBA,CAAC9B,QAAQ,EAAE;EACrCN,SAAS,CAACqC,GAAG,CAAC/B,QAAQ,CAAC;EACvBA,QAAQ,CAACC,cAAc,EAAEC,YAAY,CAAC;EACtC,OAAO,YAAW;IACjBR,SAAS,CAACsC,MAAM,CAAChC,QAAQ,CAAC;EAC3B,CAAC;AACF;AACA,SAASiC,aAAaA,CAAA,EAAG;EACxB,IAAI,CAACC,KAAK,EAAEC,QAAQ,CAAC,GAAG/C,QAAQ,CAAC,YAAW;IAC3C,OAAOyC,aAAa,CAAC,CAAC;EACvB,CAAC,CAAC;EACF,IAAIO,QAAQ,GAAGP,aAAa,CAAC,CAAC;EAC9B,IAAIQ,aAAa,GAAGH,KAAK,CAACrB,OAAO,KAAKuB,QAAQ,CAACvB,OAAO,IAAIqB,KAAK,CAACR,KAAK,KAAKU,QAAQ,CAACV,KAAK,GAAGQ,KAAK,GAAGE,QAAQ;EAC3GlD,yBAAyB,CAAC,YAAW;IACpC,IAAI,CAACW,YAAY,EAAE;MAClB,IAAIO,MAAM,GAAGf,cAAc,CAACO,UAAU,CAAC;MACvC,IAAIQ,MAAM,EAAEuB,YAAY,CAACvB,MAAM,CAAC;MAChCK,gBAAgB,CAAC,CAAC;IACnB;IACA,OAAOqB,kBAAkB,CAAC,UAASjB,OAAO,EAAEa,KAAK,EAAE;MAClDS,QAAQ,CAAC;QACRtB,OAAO;QACPa;MACD,CAAC,CAAC;IACH,CAAC,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;EACN,OAAOvC,OAAO,CAAC,YAAW;IACzB,OAAO;MACN0B,OAAO,EAAEwB,aAAa,CAACxB,OAAO;MAC9Ba,KAAK,EAAEW,aAAa,CAACX,KAAK;MAC1BY,GAAG,EAAEV;IACN,CAAC;EACF,CAAC,EAAE,CAACS,aAAa,CAACxB,OAAO,EAAEwB,aAAa,CAACX,KAAK,CAAC,CAAC;AACjD;AAEA,SAAShB,cAAc,EAAEmB,aAAa,EAAEC,kBAAkB,EAAExB,cAAc,EAAEsB,aAAa,EAAEK,aAAa","ignoreList":[]}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { getSystemScheme } from "./systemScheme.mjs";
|
|
2
|
+
function getAppearanceScheme() {
|
|
3
|
+
return getSystemScheme();
|
|
4
|
+
}
|
|
5
|
+
function setAppearanceScheme(_scheme) {}
|
|
6
|
+
function addAppearanceChangeListener(_listener) {}
|
|
7
|
+
export { addAppearanceChangeListener, getAppearanceScheme, setAppearanceScheme };
|
|
8
|
+
//# sourceMappingURL=userSchemeAppearance.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["getSystemScheme","getAppearanceScheme","setAppearanceScheme","_scheme","addAppearanceChangeListener","_listener"],"sources":["../../src/userSchemeAppearance.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,eAAA,QAAoC;AAEtC,SAASC,oBAAA,EAA8B;EAC5C,OAAOD,eAAA,CAAgB;AACzB;AAEO,SAASE,oBAAoBC,OAAA,EAAiC,CAAC;AAE/D,SAASC,4BAA4BC,SAAA,EAAuB,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { Appearance } from "react-native";
|
|
2
|
+
function getAppearanceScheme() {
|
|
3
|
+
return Appearance.getColorScheme() === "dark" ? "dark" : "light";
|
|
4
|
+
}
|
|
5
|
+
function setAppearanceScheme(scheme) {
|
|
6
|
+
Appearance.setColorScheme(scheme);
|
|
7
|
+
}
|
|
8
|
+
function addAppearanceChangeListener(listener) {
|
|
9
|
+
Appearance.addChangeListener(listener);
|
|
10
|
+
}
|
|
11
|
+
export { addAppearanceChangeListener, getAppearanceScheme, setAppearanceScheme };
|
|
12
|
+
//# sourceMappingURL=userSchemeAppearance.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["Appearance","getAppearanceScheme","getColorScheme","setAppearanceScheme","scheme","setColorScheme","addAppearanceChangeListener","listener","addChangeListener"],"sources":["../../src/userSchemeAppearance.native.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,UAAA,QAAkB;AACpB,SAASC,oBAAA,EAAsB;EAClC,OAAOD,UAAA,CAAWE,cAAA,CAAe,MAAM,SAAS,SAAS;AAC7D;AACO,SAASC,oBAAoBC,MAAA,EAAQ;EACxCJ,UAAA,CAAWK,cAAA,CAAeD,MAAM;AACpC;AACO,SAASE,4BAA4BC,QAAA,EAAU;EAClDP,UAAA,CAAWQ,iBAAA,CAAkBD,QAAQ;AACzC","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vxrn/color-scheme",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.23.0",
|
|
4
4
|
"sideEffects": false,
|
|
5
5
|
"exports": {
|
|
6
6
|
"./package.json": "./package.json",
|
|
@@ -31,17 +31,17 @@
|
|
|
31
31
|
"watch": "tamagui-build --watch"
|
|
32
32
|
},
|
|
33
33
|
"dependencies": {
|
|
34
|
-
"@vxrn/use-isomorphic-layout-effect": "1.
|
|
34
|
+
"@vxrn/use-isomorphic-layout-effect": "1.23.0"
|
|
35
35
|
},
|
|
36
36
|
"devDependencies": {
|
|
37
|
-
"@tamagui/build": "2.
|
|
38
|
-
"react": "19.2.
|
|
39
|
-
"react-native": "0.
|
|
37
|
+
"@tamagui/build": "2.6.2",
|
|
38
|
+
"react": "19.2.3",
|
|
39
|
+
"react-native": "0.86.2",
|
|
40
40
|
"vitest": "^4.1.0"
|
|
41
41
|
},
|
|
42
42
|
"peerDependencies": {
|
|
43
|
-
"react": "19.2.
|
|
44
|
-
"react-native": "0.
|
|
43
|
+
"react": "19.2.3",
|
|
44
|
+
"react-native": "0.86.2"
|
|
45
45
|
},
|
|
46
46
|
"publishConfig": {
|
|
47
47
|
"access": "public"
|
package/src/userScheme.ts
CHANGED
|
@@ -1,8 +1,12 @@
|
|
|
1
1
|
import { useIsomorphicLayoutEffect } from '@vxrn/use-isomorphic-layout-effect'
|
|
2
|
-
import {
|
|
3
|
-
import { Appearance } from 'react-native'
|
|
2
|
+
import { useMemo, useState } from 'react'
|
|
4
3
|
import { getStorageItem, setStorageItem } from './safeStorage'
|
|
5
4
|
import { getSystemScheme, type Scheme } from './systemScheme'
|
|
5
|
+
import {
|
|
6
|
+
addAppearanceChangeListener,
|
|
7
|
+
getAppearanceScheme,
|
|
8
|
+
setAppearanceScheme,
|
|
9
|
+
} from './userSchemeAppearance'
|
|
6
10
|
|
|
7
11
|
export type SchemeSetting = 'system' | 'light' | 'dark'
|
|
8
12
|
|
|
@@ -81,7 +85,7 @@ function getInitialSetting(): SchemeSetting {
|
|
|
81
85
|
function getInitialValue(setting: SchemeSetting): Scheme {
|
|
82
86
|
if (process.env.TAMAGUI_TARGET === 'native') {
|
|
83
87
|
if (setting === 'system') {
|
|
84
|
-
return
|
|
88
|
+
return getAppearanceScheme()
|
|
85
89
|
}
|
|
86
90
|
return setting
|
|
87
91
|
}
|
|
@@ -94,8 +98,8 @@ let currentValue: Scheme = getInitialValue(initialSetting)
|
|
|
94
98
|
|
|
95
99
|
// native: set up listener at module level
|
|
96
100
|
if (process.env.TAMAGUI_TARGET === 'native') {
|
|
97
|
-
|
|
98
|
-
if (currentSetting === 'system'
|
|
101
|
+
addAppearanceChangeListener(() => {
|
|
102
|
+
if (currentSetting === 'system') {
|
|
99
103
|
updateValueFromSystem()
|
|
100
104
|
}
|
|
101
105
|
})
|
|
@@ -125,7 +129,7 @@ function startWebListener() {
|
|
|
125
129
|
function resolveValue(setting: SchemeSetting): Scheme {
|
|
126
130
|
if (setting === 'system') {
|
|
127
131
|
if (process.env.TAMAGUI_TARGET === 'native') {
|
|
128
|
-
return
|
|
132
|
+
return getAppearanceScheme()
|
|
129
133
|
}
|
|
130
134
|
return getSystemScheme()
|
|
131
135
|
}
|
|
@@ -155,10 +159,10 @@ function updateScheme(setting: SchemeSetting) {
|
|
|
155
159
|
// only call setColorScheme for explicit light/dark
|
|
156
160
|
// calling it breaks the Appearance.addChangeListener for system changes
|
|
157
161
|
if (setting !== 'system') {
|
|
158
|
-
|
|
162
|
+
setAppearanceScheme(value)
|
|
159
163
|
} else {
|
|
160
164
|
// reset to null to re-enable system tracking
|
|
161
|
-
|
|
165
|
+
setAppearanceScheme('unspecified')
|
|
162
166
|
}
|
|
163
167
|
}
|
|
164
168
|
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Appearance } from 'react-native'
|
|
2
|
+
import type { Scheme } from './systemScheme'
|
|
3
|
+
|
|
4
|
+
export function getAppearanceScheme(): Scheme {
|
|
5
|
+
return Appearance.getColorScheme() === 'dark' ? 'dark' : 'light'
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
export function setAppearanceScheme(scheme: Scheme | 'unspecified') {
|
|
9
|
+
Appearance.setColorScheme(scheme)
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export function addAppearanceChangeListener(listener: () => void) {
|
|
13
|
+
Appearance.addChangeListener(listener)
|
|
14
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { getSystemScheme, type Scheme } from './systemScheme'
|
|
2
|
+
|
|
3
|
+
export function getAppearanceScheme(): Scheme {
|
|
4
|
+
return getSystemScheme()
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
export function setAppearanceScheme(_scheme: Scheme | 'unspecified') {}
|
|
8
|
+
|
|
9
|
+
export function addAppearanceChangeListener(_listener: () => void) {}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"userScheme.d.ts","sourceRoot":"","sources":["../src/userScheme.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"userScheme.d.ts","sourceRoot":"","sources":["../src/userScheme.ts"],"names":[],"mappings":"AAGA,OAAO,EAAmB,KAAK,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAO7D,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,OAAO,GAAG,MAAM,CAAA;AAEvD,MAAM,MAAM,UAAU,GAAG;IACvB,0DAA0D;IAC1D,OAAO,EAAE,aAAa,CAAA;IACtB,6CAA6C;IAC7C,KAAK,EAAE,MAAM,CAAA;IACb,gCAAgC;IAChC,GAAG,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,IAAI,CAAA;CACtC,CAAA;AAED,KAAK,cAAc,GAAG,CAAC,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;AA0BrE;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,QAcnD;AAED,wBAAgB,cAAc,IAAI,MAAM,GAAG,IAAI,CAE9C;AAsGD;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,aAAa,QAInD;AAED;;;;GAIG;AACH,wBAAgB,aAAa,IAAI;IAAE,OAAO,EAAE,aAAa,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAGzE;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,cAAc,cAM1D;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,aAAa,IAAI,UAAU,CAkC1C"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { type Scheme } from './systemScheme';
|
|
2
|
+
export declare function getAppearanceScheme(): Scheme;
|
|
3
|
+
export declare function setAppearanceScheme(_scheme: Scheme | 'unspecified'): void;
|
|
4
|
+
export declare function addAppearanceChangeListener(_listener: () => void): void;
|
|
5
|
+
//# sourceMappingURL=userSchemeAppearance.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"userSchemeAppearance.d.ts","sourceRoot":"","sources":["../src/userSchemeAppearance.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAE7D,wBAAgB,mBAAmB,IAAI,MAAM,CAE5C;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa,QAAI;AAEvE,wBAAgB,2BAA2B,CAAC,SAAS,EAAE,MAAM,IAAI,QAAI"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { Scheme } from './systemScheme';
|
|
2
|
+
export declare function getAppearanceScheme(): Scheme;
|
|
3
|
+
export declare function setAppearanceScheme(scheme: Scheme | 'unspecified'): void;
|
|
4
|
+
export declare function addAppearanceChangeListener(listener: () => void): void;
|
|
5
|
+
//# sourceMappingURL=userSchemeAppearance.native.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"userSchemeAppearance.native.d.ts","sourceRoot":"","sources":["../src/userSchemeAppearance.native.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAE5C,wBAAgB,mBAAmB,IAAI,MAAM,CAE5C;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa,QAEjE;AAED,wBAAgB,2BAA2B,CAAC,QAAQ,EAAE,MAAM,IAAI,QAE/D"}
|