@xyo-network/react-app-settings 2.81.9 → 2.82.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/browser/components/DarkModeIconButton.d.cts +1 -0
- package/dist/browser/components/DarkModeIconButton.d.cts.map +1 -1
- package/dist/browser/components/DarkModeIconButton.d.mts +1 -0
- package/dist/browser/components/DarkModeIconButton.d.mts.map +1 -1
- package/dist/browser/components/DarkModeIconButton.d.ts +1 -0
- package/dist/browser/components/DarkModeIconButton.d.ts.map +1 -1
- package/dist/browser/components/index.d.cts +2 -2
- package/dist/browser/components/index.d.cts.map +1 -1
- package/dist/browser/components/index.d.mts +2 -2
- package/dist/browser/components/index.d.mts.map +1 -1
- package/dist/browser/components/index.d.ts +2 -2
- package/dist/browser/components/index.d.ts.map +1 -1
- package/dist/browser/contexts/AppSettings/Context.d.cts +1 -1
- package/dist/browser/contexts/AppSettings/Context.d.mts +1 -1
- package/dist/browser/contexts/AppSettings/Context.d.ts +1 -1
- package/dist/browser/contexts/AppSettings/Provider.d.cts +3 -3
- package/dist/browser/contexts/AppSettings/Provider.d.cts.map +1 -1
- package/dist/browser/contexts/AppSettings/Provider.d.mts +3 -3
- package/dist/browser/contexts/AppSettings/Provider.d.mts.map +1 -1
- package/dist/browser/contexts/AppSettings/Provider.d.ts +3 -3
- package/dist/browser/contexts/AppSettings/Provider.d.ts.map +1 -1
- package/dist/browser/contexts/AppSettings/Storage.d.cts +2 -2
- package/dist/browser/contexts/AppSettings/Storage.d.mts +2 -2
- package/dist/browser/contexts/AppSettings/Storage.d.ts +2 -2
- package/dist/browser/contexts/AppSettings/index.d.cts +6 -6
- package/dist/browser/contexts/AppSettings/index.d.cts.map +1 -1
- package/dist/browser/contexts/AppSettings/index.d.mts +6 -6
- package/dist/browser/contexts/AppSettings/index.d.mts.map +1 -1
- package/dist/browser/contexts/AppSettings/index.d.ts +6 -6
- package/dist/browser/contexts/AppSettings/index.d.ts.map +1 -1
- package/dist/browser/contexts/AppSettings/useAppSettings.d.cts +1 -1
- package/dist/browser/contexts/AppSettings/useAppSettings.d.mts +1 -1
- package/dist/browser/contexts/AppSettings/useAppSettings.d.ts +1 -1
- package/dist/browser/contexts/index.d.cts +1 -1
- package/dist/browser/contexts/index.d.mts +1 -1
- package/dist/browser/contexts/index.d.ts +1 -1
- package/dist/browser/index.cjs +108 -91
- package/dist/browser/index.cjs.map +1 -1
- package/dist/browser/index.d.cts +3 -3
- package/dist/browser/index.d.mts +3 -3
- package/dist/browser/index.d.ts +3 -3
- package/dist/browser/{index.js → index.mjs} +101 -92
- package/dist/browser/index.mjs.map +1 -0
- package/dist/neutral/components/DarkModeIconButton.d.cts +1 -0
- package/dist/neutral/components/DarkModeIconButton.d.cts.map +1 -1
- package/dist/neutral/components/DarkModeIconButton.d.mts +1 -0
- package/dist/neutral/components/DarkModeIconButton.d.mts.map +1 -1
- package/dist/neutral/components/DarkModeIconButton.d.ts +1 -0
- package/dist/neutral/components/DarkModeIconButton.d.ts.map +1 -1
- package/dist/neutral/components/index.d.cts +2 -2
- package/dist/neutral/components/index.d.cts.map +1 -1
- package/dist/neutral/components/index.d.mts +2 -2
- package/dist/neutral/components/index.d.mts.map +1 -1
- package/dist/neutral/components/index.d.ts +2 -2
- package/dist/neutral/components/index.d.ts.map +1 -1
- package/dist/neutral/contexts/AppSettings/Context.d.cts +1 -1
- package/dist/neutral/contexts/AppSettings/Context.d.mts +1 -1
- package/dist/neutral/contexts/AppSettings/Context.d.ts +1 -1
- package/dist/neutral/contexts/AppSettings/Provider.d.cts +3 -3
- package/dist/neutral/contexts/AppSettings/Provider.d.cts.map +1 -1
- package/dist/neutral/contexts/AppSettings/Provider.d.mts +3 -3
- package/dist/neutral/contexts/AppSettings/Provider.d.mts.map +1 -1
- package/dist/neutral/contexts/AppSettings/Provider.d.ts +3 -3
- package/dist/neutral/contexts/AppSettings/Provider.d.ts.map +1 -1
- package/dist/neutral/contexts/AppSettings/Storage.d.cts +2 -2
- package/dist/neutral/contexts/AppSettings/Storage.d.mts +2 -2
- package/dist/neutral/contexts/AppSettings/Storage.d.ts +2 -2
- package/dist/neutral/contexts/AppSettings/index.d.cts +6 -6
- package/dist/neutral/contexts/AppSettings/index.d.cts.map +1 -1
- package/dist/neutral/contexts/AppSettings/index.d.mts +6 -6
- package/dist/neutral/contexts/AppSettings/index.d.mts.map +1 -1
- package/dist/neutral/contexts/AppSettings/index.d.ts +6 -6
- package/dist/neutral/contexts/AppSettings/index.d.ts.map +1 -1
- package/dist/neutral/contexts/AppSettings/useAppSettings.d.cts +1 -1
- package/dist/neutral/contexts/AppSettings/useAppSettings.d.mts +1 -1
- package/dist/neutral/contexts/AppSettings/useAppSettings.d.ts +1 -1
- package/dist/neutral/contexts/index.d.cts +1 -1
- package/dist/neutral/contexts/index.d.mts +1 -1
- package/dist/neutral/contexts/index.d.ts +1 -1
- package/dist/neutral/index.cjs +108 -91
- package/dist/neutral/index.cjs.map +1 -1
- package/dist/neutral/index.d.cts +3 -3
- package/dist/neutral/index.d.mts +3 -3
- package/dist/neutral/index.d.ts +3 -3
- package/dist/neutral/{index.js → index.mjs} +101 -92
- package/dist/neutral/index.mjs.map +1 -0
- package/dist/node/components/DarkModeIconButton.d.cts +1 -0
- package/dist/node/components/DarkModeIconButton.d.cts.map +1 -1
- package/dist/node/components/DarkModeIconButton.d.mts +1 -0
- package/dist/node/components/DarkModeIconButton.d.mts.map +1 -1
- package/dist/node/components/DarkModeIconButton.d.ts +1 -0
- package/dist/node/components/DarkModeIconButton.d.ts.map +1 -1
- package/dist/node/components/index.d.cts +2 -2
- package/dist/node/components/index.d.cts.map +1 -1
- package/dist/node/components/index.d.mts +2 -2
- package/dist/node/components/index.d.mts.map +1 -1
- package/dist/node/components/index.d.ts +2 -2
- package/dist/node/components/index.d.ts.map +1 -1
- package/dist/node/contexts/AppSettings/Context.d.cts +1 -1
- package/dist/node/contexts/AppSettings/Context.d.mts +1 -1
- package/dist/node/contexts/AppSettings/Context.d.ts +1 -1
- package/dist/node/contexts/AppSettings/Provider.d.cts +3 -3
- package/dist/node/contexts/AppSettings/Provider.d.cts.map +1 -1
- package/dist/node/contexts/AppSettings/Provider.d.mts +3 -3
- package/dist/node/contexts/AppSettings/Provider.d.mts.map +1 -1
- package/dist/node/contexts/AppSettings/Provider.d.ts +3 -3
- package/dist/node/contexts/AppSettings/Provider.d.ts.map +1 -1
- package/dist/node/contexts/AppSettings/Storage.d.cts +2 -2
- package/dist/node/contexts/AppSettings/Storage.d.mts +2 -2
- package/dist/node/contexts/AppSettings/Storage.d.ts +2 -2
- package/dist/node/contexts/AppSettings/index.d.cts +6 -6
- package/dist/node/contexts/AppSettings/index.d.cts.map +1 -1
- package/dist/node/contexts/AppSettings/index.d.mts +6 -6
- package/dist/node/contexts/AppSettings/index.d.mts.map +1 -1
- package/dist/node/contexts/AppSettings/index.d.ts +6 -6
- package/dist/node/contexts/AppSettings/index.d.ts.map +1 -1
- package/dist/node/contexts/AppSettings/useAppSettings.d.cts +1 -1
- package/dist/node/contexts/AppSettings/useAppSettings.d.mts +1 -1
- package/dist/node/contexts/AppSettings/useAppSettings.d.ts +1 -1
- package/dist/node/contexts/index.d.cts +1 -1
- package/dist/node/contexts/index.d.mts +1 -1
- package/dist/node/contexts/index.d.ts +1 -1
- package/dist/node/index.cjs +108 -93
- package/dist/node/index.cjs.map +1 -1
- package/dist/node/index.d.cts +3 -3
- package/dist/node/index.d.mts +3 -3
- package/dist/node/index.d.ts +3 -3
- package/dist/node/{index.js → index.mjs} +101 -94
- package/dist/node/index.mjs.map +1 -0
- package/package.json +9 -9
- package/src/components/DarkModeIconButton.tsx +5 -4
- package/src/components/Developer.tsx +1 -1
- package/src/components/index.ts +2 -2
- package/src/contexts/AppSettings/Context.ts +2 -2
- package/src/contexts/AppSettings/Provider.tsx +21 -19
- package/src/contexts/AppSettings/Storage.ts +4 -4
- package/src/contexts/AppSettings/appSettingDefault.ts +1 -1
- package/src/contexts/AppSettings/index.ts +6 -6
- package/src/contexts/AppSettings/useAppSettings.ts +1 -1
- package/src/contexts/index.ts +1 -1
- package/src/index.ts +3 -3
- package/dist/browser/index.js.map +0 -1
- package/dist/neutral/index.js.map +0 -1
- package/dist/node/index.js.map +0 -1
package/dist/node/index.cjs
CHANGED
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
2
3
|
var __defProp = Object.defineProperty;
|
|
3
4
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
5
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
5
7
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
6
9
|
var __export = (target, all) => {
|
|
7
10
|
for (var name in all)
|
|
8
11
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
@@ -15,6 +18,14 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
15
18
|
}
|
|
16
19
|
return to;
|
|
17
20
|
};
|
|
21
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
22
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
23
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
24
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
25
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
26
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
27
|
+
mod
|
|
28
|
+
));
|
|
18
29
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
30
|
|
|
20
31
|
// src/index.ts
|
|
@@ -34,43 +45,44 @@ module.exports = __toCommonJS(src_exports);
|
|
|
34
45
|
// src/components/DarkModeIconButton.tsx
|
|
35
46
|
var import_icons_material = require("@mui/icons-material");
|
|
36
47
|
var import_material = require("@mui/material");
|
|
48
|
+
var import_react4 = __toESM(require("react"), 1);
|
|
37
49
|
|
|
38
50
|
// src/contexts/AppSettings/Context.ts
|
|
39
51
|
var import_react = require("react");
|
|
40
52
|
|
|
41
53
|
// src/contexts/AppSettings/Slug.ts
|
|
42
|
-
var AppSettingSlug
|
|
54
|
+
var AppSettingSlug;
|
|
55
|
+
(function(AppSettingSlug2) {
|
|
43
56
|
AppSettingSlug2["DarkMode"] = "darkmode";
|
|
44
57
|
AppSettingSlug2["Developer"] = "developer";
|
|
45
58
|
AppSettingSlug2["NavigationType"] = "navigationType";
|
|
46
59
|
AppSettingSlug2["NavigationCollapsed"] = "navigationCollapsed";
|
|
47
60
|
AppSettingSlug2["SeedPhrase"] = "seedPhrase";
|
|
48
61
|
AppSettingSlug2["MaxAccounts"] = "maxAccounts";
|
|
49
|
-
|
|
50
|
-
})(AppSettingSlug || {});
|
|
62
|
+
})(AppSettingSlug || (AppSettingSlug = {}));
|
|
51
63
|
|
|
52
64
|
// src/contexts/AppSettings/appSettingDefault.ts
|
|
53
|
-
var appSettingDefault = () => {
|
|
65
|
+
var appSettingDefault = /* @__PURE__ */ __name(() => {
|
|
54
66
|
return {
|
|
55
|
-
[
|
|
56
|
-
[
|
|
57
|
-
[
|
|
58
|
-
[
|
|
59
|
-
[
|
|
60
|
-
[
|
|
67
|
+
[AppSettingSlug.DarkMode]: false,
|
|
68
|
+
[AppSettingSlug.Developer]: false,
|
|
69
|
+
[AppSettingSlug.NavigationType]: "menu",
|
|
70
|
+
[AppSettingSlug.NavigationCollapsed]: false,
|
|
71
|
+
[AppSettingSlug.SeedPhrase]: "",
|
|
72
|
+
[AppSettingSlug.MaxAccounts]: 1
|
|
61
73
|
};
|
|
62
|
-
};
|
|
74
|
+
}, "appSettingDefault");
|
|
63
75
|
|
|
64
76
|
// src/contexts/AppSettings/Context.ts
|
|
65
77
|
var AppSettingsContext = (0, import_react.createContext)(appSettingDefault());
|
|
66
78
|
|
|
67
79
|
// src/contexts/AppSettings/Provider.tsx
|
|
68
|
-
var import_react2 = require("react");
|
|
80
|
+
var import_react2 = __toESM(require("react"), 1);
|
|
69
81
|
|
|
70
82
|
// src/contexts/AppSettings/StorageBase.ts
|
|
71
83
|
var import_assert = require("@xylabs/assert");
|
|
72
84
|
var import_react_shared = require("@xyo-network/react-shared");
|
|
73
|
-
var
|
|
85
|
+
var _AppSettingsStorageBase = class _AppSettingsStorageBase {
|
|
74
86
|
defaults;
|
|
75
87
|
prefix;
|
|
76
88
|
constructor(prefix = "AppSettings", defaults) {
|
|
@@ -143,133 +155,136 @@ var AppSettingsStorageBase = class {
|
|
|
143
155
|
localStorage.setItem(`${this.prefix}|${name}`, value.join(","));
|
|
144
156
|
}
|
|
145
157
|
};
|
|
158
|
+
__name(_AppSettingsStorageBase, "AppSettingsStorageBase");
|
|
159
|
+
var AppSettingsStorageBase = _AppSettingsStorageBase;
|
|
146
160
|
|
|
147
161
|
// src/contexts/AppSettings/Storage.ts
|
|
148
|
-
var
|
|
162
|
+
var _AppSettingsStorage = class _AppSettingsStorage extends AppSettingsStorageBase {
|
|
149
163
|
constructor(prefix = "AppSettings", defaults) {
|
|
150
|
-
super(prefix, {
|
|
164
|
+
super(prefix, {
|
|
165
|
+
...appSettingDefault(),
|
|
166
|
+
...defaults
|
|
167
|
+
});
|
|
151
168
|
}
|
|
152
169
|
get darkMode() {
|
|
153
|
-
return this.getBoolean(
|
|
170
|
+
return this.getBoolean(AppSettingSlug.DarkMode);
|
|
154
171
|
}
|
|
155
172
|
set darkMode(value) {
|
|
156
|
-
this.setBoolean(
|
|
173
|
+
this.setBoolean(AppSettingSlug.DarkMode, value);
|
|
157
174
|
}
|
|
158
175
|
get developerMode() {
|
|
159
|
-
return this.getBoolean(
|
|
176
|
+
return this.getBoolean(AppSettingSlug.Developer);
|
|
160
177
|
}
|
|
161
178
|
set developerMode(value) {
|
|
162
|
-
this.setBoolean(
|
|
179
|
+
this.setBoolean(AppSettingSlug.Developer, value);
|
|
163
180
|
}
|
|
164
181
|
get maxAccounts() {
|
|
165
|
-
return this.getNumber(
|
|
182
|
+
return this.getNumber(AppSettingSlug.MaxAccounts);
|
|
166
183
|
}
|
|
167
184
|
set maxAccounts(value) {
|
|
168
|
-
this.setNumber(
|
|
185
|
+
this.setNumber(AppSettingSlug.MaxAccounts, value);
|
|
169
186
|
}
|
|
170
187
|
get navigationCollapsed() {
|
|
171
|
-
return this.getBoolean(
|
|
188
|
+
return this.getBoolean(AppSettingSlug.NavigationCollapsed);
|
|
172
189
|
}
|
|
173
190
|
set navigationCollapsed(value) {
|
|
174
|
-
this.setBoolean(
|
|
191
|
+
this.setBoolean(AppSettingSlug.NavigationCollapsed, value);
|
|
175
192
|
}
|
|
176
193
|
get navigationType() {
|
|
177
|
-
return this.getString(
|
|
194
|
+
return this.getString(AppSettingSlug.NavigationType);
|
|
178
195
|
}
|
|
179
196
|
set navigationType(value) {
|
|
180
|
-
this.setString(
|
|
197
|
+
this.setString(AppSettingSlug.NavigationType, value);
|
|
181
198
|
}
|
|
182
199
|
get seedPhrase() {
|
|
183
|
-
return this.getString(
|
|
200
|
+
return this.getString(AppSettingSlug.SeedPhrase);
|
|
184
201
|
}
|
|
185
202
|
set seedPhrase(value) {
|
|
186
|
-
this.setString(
|
|
203
|
+
this.setString(AppSettingSlug.SeedPhrase, value);
|
|
187
204
|
}
|
|
188
205
|
};
|
|
206
|
+
__name(_AppSettingsStorage, "AppSettingsStorage");
|
|
207
|
+
var AppSettingsStorage = _AppSettingsStorage;
|
|
189
208
|
|
|
190
209
|
// src/contexts/AppSettings/Provider.tsx
|
|
191
|
-
var
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
const [
|
|
199
|
-
const [
|
|
200
|
-
const [
|
|
201
|
-
const
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
};
|
|
212
|
-
const changeNavigationType = (value2) => {
|
|
213
|
-
storage.navigationType = value2;
|
|
210
|
+
var AppSettingsProvider = /* @__PURE__ */ __name(({ storage, value, children, ...props }) => {
|
|
211
|
+
const storageMemo = (0, import_react2.useMemo)(() => storage ?? new AppSettingsStorage(), [
|
|
212
|
+
storage
|
|
213
|
+
]);
|
|
214
|
+
const [developerMode, setDeveloperMode] = (0, import_react2.useState)(storageMemo.developerMode);
|
|
215
|
+
const [darkMode, setDarkMode] = (0, import_react2.useState)(storageMemo.darkMode);
|
|
216
|
+
const [navigationType, setNavigationType] = (0, import_react2.useState)(storageMemo.navigationType);
|
|
217
|
+
const [navigationCollapsed, setNavigationCollapsed] = (0, import_react2.useState)(storageMemo.navigationCollapsed);
|
|
218
|
+
const [seedPhrase, setSeedPhrase] = (0, import_react2.useState)(storageMemo.seedPhrase);
|
|
219
|
+
const [maxAccounts, setMaxAccounts] = (0, import_react2.useState)(storageMemo.maxAccounts);
|
|
220
|
+
const enableDeveloperMode = /* @__PURE__ */ __name((value2) => {
|
|
221
|
+
storageMemo.developerMode = value2;
|
|
222
|
+
setDeveloperMode(storageMemo.developerMode);
|
|
223
|
+
}, "enableDeveloperMode");
|
|
224
|
+
const enableDarkMode = /* @__PURE__ */ __name((value2) => {
|
|
225
|
+
storageMemo.darkMode = value2;
|
|
226
|
+
setDarkMode(storageMemo.darkMode);
|
|
227
|
+
}, "enableDarkMode");
|
|
228
|
+
const changeNavigationType = /* @__PURE__ */ __name((value2) => {
|
|
229
|
+
storageMemo.navigationType = value2;
|
|
214
230
|
setNavigationType(value2);
|
|
215
|
-
};
|
|
216
|
-
const changeNavigationCollapsed = (value2) => {
|
|
217
|
-
|
|
231
|
+
}, "changeNavigationType");
|
|
232
|
+
const changeNavigationCollapsed = /* @__PURE__ */ __name((value2) => {
|
|
233
|
+
storageMemo.navigationCollapsed = value2;
|
|
218
234
|
setNavigationCollapsed(value2);
|
|
219
|
-
};
|
|
220
|
-
const changeSeedPhrase = (value2) => {
|
|
221
|
-
|
|
235
|
+
}, "changeNavigationCollapsed");
|
|
236
|
+
const changeSeedPhrase = /* @__PURE__ */ __name((value2) => {
|
|
237
|
+
storageMemo.seedPhrase = value2;
|
|
222
238
|
setSeedPhrase(value2);
|
|
223
|
-
};
|
|
224
|
-
const changeMaxAccounts = (value2) => {
|
|
225
|
-
|
|
239
|
+
}, "changeSeedPhrase");
|
|
240
|
+
const changeMaxAccounts = /* @__PURE__ */ __name((value2) => {
|
|
241
|
+
storageMemo.maxAccounts = value2;
|
|
226
242
|
setMaxAccounts(value2);
|
|
227
|
-
};
|
|
228
|
-
return /* @__PURE__ */ (
|
|
229
|
-
|
|
230
|
-
{
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
}
|
|
249
|
-
);
|
|
250
|
-
};
|
|
243
|
+
}, "changeMaxAccounts");
|
|
244
|
+
return /* @__PURE__ */ import_react2.default.createElement(AppSettingsContext.Provider, {
|
|
245
|
+
// eslint-disable-next-line @eslint-react/no-unstable-context-value
|
|
246
|
+
value: {
|
|
247
|
+
changeMaxAccounts,
|
|
248
|
+
changeNavigationCollapsed,
|
|
249
|
+
changeNavigationType,
|
|
250
|
+
changeSeedPhrase,
|
|
251
|
+
darkMode,
|
|
252
|
+
developerMode,
|
|
253
|
+
enableDarkMode,
|
|
254
|
+
enableDeveloperMode,
|
|
255
|
+
maxAccounts,
|
|
256
|
+
navigationCollapsed,
|
|
257
|
+
navigationType,
|
|
258
|
+
seedPhrase,
|
|
259
|
+
...value
|
|
260
|
+
},
|
|
261
|
+
...props
|
|
262
|
+
}, children);
|
|
263
|
+
}, "AppSettingsProvider");
|
|
251
264
|
|
|
252
265
|
// src/contexts/AppSettings/useAppSettings.ts
|
|
253
266
|
var import_react3 = require("react");
|
|
254
|
-
var useAppSettings = () => {
|
|
267
|
+
var useAppSettings = /* @__PURE__ */ __name(() => {
|
|
255
268
|
return (0, import_react3.useContext)(AppSettingsContext);
|
|
256
|
-
};
|
|
269
|
+
}, "useAppSettings");
|
|
257
270
|
|
|
258
271
|
// src/components/DarkModeIconButton.tsx
|
|
259
|
-
var
|
|
260
|
-
var DarkModeIconButton = (props) => {
|
|
272
|
+
var DarkModeIconButton = /* @__PURE__ */ __name((props) => {
|
|
261
273
|
const { darkMode, enableDarkMode } = useAppSettings();
|
|
262
|
-
const handleDarkModeChange = () => {
|
|
274
|
+
const handleDarkModeChange = /* @__PURE__ */ __name(() => {
|
|
263
275
|
enableDarkMode == null ? void 0 : enableDarkMode(!darkMode);
|
|
264
|
-
};
|
|
265
|
-
return /* @__PURE__ */
|
|
266
|
-
|
|
276
|
+
}, "handleDarkModeChange");
|
|
277
|
+
return /* @__PURE__ */ import_react4.default.createElement(import_material.IconButton, {
|
|
278
|
+
onClick: handleDarkModeChange,
|
|
279
|
+
...props
|
|
280
|
+
}, darkMode ? /* @__PURE__ */ import_react4.default.createElement(import_icons_material.DarkModeRounded, null) : /* @__PURE__ */ import_react4.default.createElement(import_icons_material.LightModeRounded, null));
|
|
281
|
+
}, "DarkModeIconButton");
|
|
267
282
|
|
|
268
283
|
// src/components/Developer.tsx
|
|
269
|
-
var Developer = ({ children = null }) => {
|
|
284
|
+
var Developer = /* @__PURE__ */ __name(({ children = null }) => {
|
|
270
285
|
const { developerMode } = useAppSettings();
|
|
271
286
|
return developerMode ? children : null;
|
|
272
|
-
};
|
|
287
|
+
}, "Developer");
|
|
273
288
|
// Annotate the CommonJS export names for ESM import in node:
|
|
274
289
|
0 && (module.exports = {
|
|
275
290
|
AppSettingSlug,
|
package/dist/node/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/index.ts","../../src/components/DarkModeIconButton.tsx","../../src/contexts/AppSettings/Context.ts","../../src/contexts/AppSettings/Slug.ts","../../src/contexts/AppSettings/appSettingDefault.ts","../../src/contexts/AppSettings/Provider.tsx","../../src/contexts/AppSettings/StorageBase.ts","../../src/contexts/AppSettings/Storage.ts","../../src/contexts/AppSettings/useAppSettings.ts","../../src/components/Developer.tsx"],"sourcesContent":["export * from './components/index.js'\nexport * from './contexts/index.js'\nexport * from './WebAppNavigationType.js'\n","import { DarkModeRounded as DarkModeRoundedIcon, LightModeRounded as LightModeRoundedIcon } from '@mui/icons-material'\nimport { IconButton, IconButtonProps } from '@mui/material'\n\nimport { useAppSettings } from '../contexts/index.js'\n\nexport const DarkModeIconButton: React.FC<IconButtonProps> = (props) => {\n const { darkMode, enableDarkMode } = useAppSettings()\n\n const handleDarkModeChange = () => {\n enableDarkMode?.(!darkMode)\n }\n\n return (\n <IconButton onClick={handleDarkModeChange} {...props}>\n {darkMode ?\n <DarkModeRoundedIcon />\n : <LightModeRoundedIcon />}\n </IconButton>\n )\n}\n","import { createContext } from 'react'\n\nimport { WebAppNavigationType } from '../../WebAppNavigationType.js'\nimport { appSettingDefault } from './appSettingDefault.js'\n\nexport interface AppSettingsContextProps {\n changeMaxAccounts?: (value: number) => void\n changeNavigationCollapsed?: (value: boolean) => void\n changeNavigationType?: (value: WebAppNavigationType) => void\n changeSeedPhrase?: (value: string) => void\n darkMode?: boolean\n developerMode?: boolean\n enableDarkMode?: (value: boolean) => void\n enableDeveloperMode?: (value: boolean) => void\n maxAccounts?: number\n navigationCollapsed?: boolean\n navigationType?: WebAppNavigationType\n seedPhrase?: string\n}\n\nexport const AppSettingsContext = createContext<AppSettingsContextProps>(appSettingDefault())\n","export enum AppSettingSlug {\n DarkMode = 'darkmode',\n Developer = 'developer',\n NavigationType = 'navigationType',\n NavigationCollapsed = 'navigationCollapsed',\n SeedPhrase = 'seedPhrase',\n MaxAccounts = 'maxAccounts',\n}\n","import { AppSettingSlug } from './Slug.js'\n\nexport const appSettingDefault = (): Record<string, unknown> => {\n return {\n [AppSettingSlug.DarkMode]: false,\n [AppSettingSlug.Developer]: false,\n [AppSettingSlug.NavigationType]: 'menu',\n [AppSettingSlug.NavigationCollapsed]: false,\n [AppSettingSlug.SeedPhrase]: '',\n [AppSettingSlug.MaxAccounts]: 1,\n }\n}\n","import { WithChildren } from '@xylabs/react-shared'\nimport { ProviderProps, useState } from 'react'\n\nimport { WebAppNavigationType } from '../../WebAppNavigationType.js'\nimport { AppSettingsContext, AppSettingsContextProps } from './Context.js'\nimport { AppSettingsStorage } from './Storage.js'\n\nexport interface AppSettingsProviderProps<T extends AppSettingsContextProps = AppSettingsContextProps> extends ProviderProps<T> {\n storage?: AppSettingsStorage\n}\n\nexport const AppSettingsProvider: React.FC<WithChildren<AppSettingsProviderProps>> = ({\n storage = new AppSettingsStorage(),\n value,\n children,\n ...props\n}) => {\n const [developerMode, setDeveloperMode] = useState(storage.developerMode)\n const [darkMode, setDarkMode] = useState(storage.darkMode)\n const [navigationType, setNavigationType] = useState(storage.navigationType)\n const [navigationCollapsed, setNavigationCollapsed] = useState(storage.navigationCollapsed)\n const [seedPhrase, setSeedPhrase] = useState(storage.seedPhrase)\n const [maxAccounts, setMaxAccounts] = useState(storage.maxAccounts)\n\n const enableDeveloperMode = (value: boolean) => {\n storage.developerMode = value\n setDeveloperMode(storage.developerMode)\n }\n\n const enableDarkMode = (value: boolean) => {\n storage.darkMode = value\n setDarkMode(storage.darkMode)\n }\n\n const changeNavigationType = (value: WebAppNavigationType) => {\n storage.navigationType = value\n setNavigationType(value)\n }\n\n const changeNavigationCollapsed = (value: boolean) => {\n storage.navigationCollapsed = value\n setNavigationCollapsed(value)\n }\n\n const changeSeedPhrase = (value: string) => {\n storage.seedPhrase = value\n setSeedPhrase(value)\n }\n\n const changeMaxAccounts = (value: number) => {\n storage.maxAccounts = value\n setMaxAccounts(value)\n }\n\n return (\n <AppSettingsContext.Provider\n value={{\n changeMaxAccounts,\n changeNavigationCollapsed,\n changeNavigationType,\n changeSeedPhrase,\n darkMode,\n developerMode,\n enableDarkMode,\n enableDeveloperMode,\n maxAccounts,\n navigationCollapsed,\n navigationType,\n seedPhrase,\n\n ...value,\n }}\n {...props}\n >\n {children}\n </AppSettingsContext.Provider>\n )\n}\n","import { assertEx } from '@xylabs/assert'\nimport { assertDefinedEx } from '@xyo-network/react-shared'\n\nexport class AppSettingsStorageBase {\n private defaults: Record<string, unknown>\n private prefix: string\n constructor(prefix = 'AppSettings', defaults?: Record<string, unknown>) {\n this.prefix = prefix\n this.defaults = defaults ?? {}\n }\n\n getBoolean(name: string): boolean {\n const storedValue = localStorage.getItem(`${this.prefix}|${name}`)\n if (!storedValue) {\n assertEx(typeof this.defaults[name] === 'boolean', () => 'Default value is not boolean')\n const defaultValue = this.defaults[name] as boolean\n assertEx(defaultValue !== undefined, () => `Missing Default for ${name}`)\n return defaultValue\n }\n return storedValue !== 'false'\n }\n\n getNumber(name: string): number {\n const storedValue = localStorage.getItem(`${this.prefix}|${name}`)\n if (!storedValue) {\n assertEx(typeof this.defaults[name] === 'number', () => 'Default value is not a number')\n const defaultValue = this.defaults[name] as number\n assertEx(defaultValue !== undefined, () => `Missing Default for ${name}`)\n return defaultValue\n }\n return Number.parseFloat(storedValue)\n }\n\n getObject<T>(name: string): T {\n const storedValue = localStorage.getItem(`${this.prefix}|${name}`)\n const parsedStoredValue = storedValue ? JSON.parse(storedValue) : null\n if (!parsedStoredValue) {\n assertEx(typeof this.defaults[name] === 'object', () => 'Default value is not object')\n return assertEx(this.defaults[name] as T, () => `Missing Default for ${name}`)\n }\n return parsedStoredValue as T\n }\n\n getString(name: string) {\n const storedValue = localStorage.getItem(`${this.prefix}|${name}`)\n if (!storedValue) {\n assertDefinedEx(typeof this.defaults[name] === 'string', 'Default value is not string')\n const defaultValue = this.defaults[name] as string\n assertEx(defaultValue !== undefined, () => `Missing Default for ${name}`)\n return defaultValue\n }\n return storedValue\n }\n\n getStringArray(name: string) {\n const storedValue = localStorage.getItem(`${this.prefix}|${name}`)?.split(',')\n if (!storedValue) {\n assertDefinedEx(Array.isArray(this.defaults[name]), 'Default value is not array')\n const defaultValue = this.defaults[name] as string[]\n assertEx(defaultValue !== undefined, () => `Missing Default for ${name}`)\n return defaultValue\n }\n return storedValue\n }\n\n setBoolean(name: string, value: boolean) {\n localStorage.setItem(`${this.prefix}|${name}`, JSON.stringify(value))\n }\n\n setNumber(name: string, value: number) {\n localStorage.setItem(`${this.prefix}|${name}`, JSON.stringify(value))\n }\n\n setObject<T>(name: string, value: T) {\n localStorage.setItem(`${this.prefix}|${name}`, JSON.stringify(value))\n }\n\n setString(name: string, value: string) {\n localStorage.setItem(`${this.prefix}|${name}`, value)\n }\n\n setStringArray(name: string, value: string[]) {\n localStorage.setItem(`${this.prefix}|${name}`, value.join(','))\n }\n}\n","import { WebAppNavigationType } from '../../WebAppNavigationType.js'\nimport { appSettingDefault } from './appSettingDefault.js'\nimport { AppSettingSlug } from './Slug.js'\nimport { AppSettingsStorageBase } from './StorageBase.js'\n\nexport class AppSettingsStorage extends AppSettingsStorageBase {\n constructor(prefix = 'AppSettings', defaults?: Record<string, unknown>) {\n super(prefix, { ...appSettingDefault(), ...defaults })\n }\n\n get darkMode() {\n return this.getBoolean(AppSettingSlug.DarkMode)\n }\n\n set darkMode(value: boolean) {\n this.setBoolean(AppSettingSlug.DarkMode, value)\n }\n\n get developerMode() {\n return this.getBoolean(AppSettingSlug.Developer)\n }\n\n set developerMode(value: boolean) {\n this.setBoolean(AppSettingSlug.Developer, value)\n }\n\n get maxAccounts() {\n return this.getNumber(AppSettingSlug.MaxAccounts)\n }\n\n set maxAccounts(value: number) {\n this.setNumber(AppSettingSlug.MaxAccounts, value)\n }\n\n get navigationCollapsed() {\n return this.getBoolean(AppSettingSlug.NavigationCollapsed)\n }\n\n set navigationCollapsed(value: boolean) {\n this.setBoolean(AppSettingSlug.NavigationCollapsed, value)\n }\n\n get navigationType() {\n return this.getString(AppSettingSlug.NavigationType) as WebAppNavigationType\n }\n\n set navigationType(value: WebAppNavigationType) {\n this.setString(AppSettingSlug.NavigationType, value)\n }\n\n get seedPhrase() {\n return this.getString(AppSettingSlug.SeedPhrase)\n }\n\n set seedPhrase(value: string) {\n this.setString(AppSettingSlug.SeedPhrase, value)\n }\n}\n","import { useContext } from 'react'\n\nimport { AppSettingsContext } from './Context.js'\n\nexport const useAppSettings = () => {\n return useContext(AppSettingsContext)\n}\n","import { ReactElement } from 'react'\n\nimport { useAppSettings } from '../contexts/index.js'\n\nexport const Developer: React.FC<{ children: ReactElement }> = ({ children = null }) => {\n const { developerMode } = useAppSettings()\n\n return developerMode ? children : null\n}\n"],"mappings":"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","names":["AppSettingSlug","import_react","value","import_react","import_jsx_runtime","DarkModeRoundedIcon","LightModeRoundedIcon"]}
|
|
1
|
+
{"version":3,"sources":["../../src/index.ts","../../src/components/DarkModeIconButton.tsx","../../src/contexts/AppSettings/Context.ts","../../src/contexts/AppSettings/Slug.ts","../../src/contexts/AppSettings/appSettingDefault.ts","../../src/contexts/AppSettings/Provider.tsx","../../src/contexts/AppSettings/StorageBase.ts","../../src/contexts/AppSettings/Storage.ts","../../src/contexts/AppSettings/useAppSettings.ts","../../src/components/Developer.tsx"],"sourcesContent":["export * from './components/index.ts'\nexport * from './contexts/index.ts'\nexport * from './WebAppNavigationType.ts'\n","import { DarkModeRounded as DarkModeRoundedIcon, LightModeRounded as LightModeRoundedIcon } from '@mui/icons-material'\nimport { IconButton, IconButtonProps } from '@mui/material'\nimport React from 'react'\n\nimport { useAppSettings } from '../contexts/index.ts'\n\nexport const DarkModeIconButton: React.FC<IconButtonProps> = (props) => {\n const { darkMode, enableDarkMode } = useAppSettings()\n\n const handleDarkModeChange = () => {\n enableDarkMode?.(!darkMode)\n }\n\n return (\n <IconButton onClick={handleDarkModeChange} {...props}>\n {darkMode\n ? <DarkModeRoundedIcon />\n : <LightModeRoundedIcon />}\n </IconButton>\n )\n}\n","import { createContext } from 'react'\n\nimport { WebAppNavigationType } from '../../WebAppNavigationType.ts'\nimport { appSettingDefault } from './appSettingDefault.ts'\n\nexport interface AppSettingsContextProps {\n changeMaxAccounts?: (value: number) => void\n changeNavigationCollapsed?: (value: boolean) => void\n changeNavigationType?: (value: WebAppNavigationType) => void\n changeSeedPhrase?: (value: string) => void\n darkMode?: boolean\n developerMode?: boolean\n enableDarkMode?: (value: boolean) => void\n enableDeveloperMode?: (value: boolean) => void\n maxAccounts?: number\n navigationCollapsed?: boolean\n navigationType?: WebAppNavigationType\n seedPhrase?: string\n}\n\nexport const AppSettingsContext = createContext<AppSettingsContextProps>(appSettingDefault())\n","export enum AppSettingSlug {\n DarkMode = 'darkmode',\n Developer = 'developer',\n NavigationType = 'navigationType',\n NavigationCollapsed = 'navigationCollapsed',\n SeedPhrase = 'seedPhrase',\n MaxAccounts = 'maxAccounts',\n}\n","import { AppSettingSlug } from './Slug.ts'\n\nexport const appSettingDefault = (): Record<string, unknown> => {\n return {\n [AppSettingSlug.DarkMode]: false,\n [AppSettingSlug.Developer]: false,\n [AppSettingSlug.NavigationType]: 'menu',\n [AppSettingSlug.NavigationCollapsed]: false,\n [AppSettingSlug.SeedPhrase]: '',\n [AppSettingSlug.MaxAccounts]: 1,\n }\n}\n","import { WithChildren } from '@xylabs/react-shared'\nimport React, { ProviderProps, useMemo, useState } from 'react'\n\nimport { WebAppNavigationType } from '../../WebAppNavigationType.ts'\nimport { AppSettingsContext, AppSettingsContextProps } from './Context.ts'\nimport { AppSettingsStorage } from './Storage.ts'\n\nexport interface AppSettingsProviderProps<T extends AppSettingsContextProps = AppSettingsContextProps> extends ProviderProps<T> {\n storage?: AppSettingsStorage\n}\n\nexport const AppSettingsProvider: React.FC<WithChildren<AppSettingsProviderProps>> = ({\n storage,\n value,\n children,\n ...props\n}) => {\n const storageMemo = useMemo(() => storage ?? new AppSettingsStorage(), [storage])\n const [developerMode, setDeveloperMode] = useState(storageMemo.developerMode)\n const [darkMode, setDarkMode] = useState(storageMemo.darkMode)\n const [navigationType, setNavigationType] = useState(storageMemo.navigationType)\n const [navigationCollapsed, setNavigationCollapsed] = useState(storageMemo.navigationCollapsed)\n const [seedPhrase, setSeedPhrase] = useState(storageMemo.seedPhrase)\n const [maxAccounts, setMaxAccounts] = useState(storageMemo.maxAccounts)\n\n const enableDeveloperMode = (value: boolean) => {\n storageMemo.developerMode = value\n setDeveloperMode(storageMemo.developerMode)\n }\n\n const enableDarkMode = (value: boolean) => {\n storageMemo.darkMode = value\n setDarkMode(storageMemo.darkMode)\n }\n\n const changeNavigationType = (value: WebAppNavigationType) => {\n storageMemo.navigationType = value\n setNavigationType(value)\n }\n\n const changeNavigationCollapsed = (value: boolean) => {\n storageMemo.navigationCollapsed = value\n setNavigationCollapsed(value)\n }\n\n const changeSeedPhrase = (value: string) => {\n storageMemo.seedPhrase = value\n setSeedPhrase(value)\n }\n\n const changeMaxAccounts = (value: number) => {\n storageMemo.maxAccounts = value\n setMaxAccounts(value)\n }\n\n return (\n <AppSettingsContext.Provider\n // eslint-disable-next-line @eslint-react/no-unstable-context-value\n value={{\n changeMaxAccounts,\n changeNavigationCollapsed,\n changeNavigationType,\n changeSeedPhrase,\n darkMode,\n developerMode,\n enableDarkMode,\n enableDeveloperMode,\n maxAccounts,\n navigationCollapsed,\n navigationType,\n seedPhrase,\n\n ...value,\n }}\n {...props}\n >\n {children}\n </AppSettingsContext.Provider>\n )\n}\n","import { assertEx } from '@xylabs/assert'\nimport { assertDefinedEx } from '@xyo-network/react-shared'\n\nexport class AppSettingsStorageBase {\n private defaults: Record<string, unknown>\n private prefix: string\n constructor(prefix = 'AppSettings', defaults?: Record<string, unknown>) {\n this.prefix = prefix\n this.defaults = defaults ?? {}\n }\n\n getBoolean(name: string): boolean {\n const storedValue = localStorage.getItem(`${this.prefix}|${name}`)\n if (!storedValue) {\n assertEx(typeof this.defaults[name] === 'boolean', () => 'Default value is not boolean')\n const defaultValue = this.defaults[name] as boolean\n assertEx(defaultValue !== undefined, () => `Missing Default for ${name}`)\n return defaultValue\n }\n return storedValue !== 'false'\n }\n\n getNumber(name: string): number {\n const storedValue = localStorage.getItem(`${this.prefix}|${name}`)\n if (!storedValue) {\n assertEx(typeof this.defaults[name] === 'number', () => 'Default value is not a number')\n const defaultValue = this.defaults[name] as number\n assertEx(defaultValue !== undefined, () => `Missing Default for ${name}`)\n return defaultValue\n }\n return Number.parseFloat(storedValue)\n }\n\n getObject<T>(name: string): T {\n const storedValue = localStorage.getItem(`${this.prefix}|${name}`)\n const parsedStoredValue = storedValue ? JSON.parse(storedValue) : null\n if (!parsedStoredValue) {\n assertEx(typeof this.defaults[name] === 'object', () => 'Default value is not object')\n return assertEx(this.defaults[name] as T, () => `Missing Default for ${name}`)\n }\n return parsedStoredValue as T\n }\n\n getString(name: string) {\n const storedValue = localStorage.getItem(`${this.prefix}|${name}`)\n if (!storedValue) {\n assertDefinedEx(typeof this.defaults[name] === 'string', 'Default value is not string')\n const defaultValue = this.defaults[name] as string\n assertEx(defaultValue !== undefined, () => `Missing Default for ${name}`)\n return defaultValue\n }\n return storedValue\n }\n\n getStringArray(name: string) {\n const storedValue = localStorage.getItem(`${this.prefix}|${name}`)?.split(',')\n if (!storedValue) {\n assertDefinedEx(Array.isArray(this.defaults[name]), 'Default value is not array')\n const defaultValue = this.defaults[name] as string[]\n assertEx(defaultValue !== undefined, () => `Missing Default for ${name}`)\n return defaultValue\n }\n return storedValue\n }\n\n setBoolean(name: string, value: boolean) {\n localStorage.setItem(`${this.prefix}|${name}`, JSON.stringify(value))\n }\n\n setNumber(name: string, value: number) {\n localStorage.setItem(`${this.prefix}|${name}`, JSON.stringify(value))\n }\n\n setObject<T>(name: string, value: T) {\n localStorage.setItem(`${this.prefix}|${name}`, JSON.stringify(value))\n }\n\n setString(name: string, value: string) {\n localStorage.setItem(`${this.prefix}|${name}`, value)\n }\n\n setStringArray(name: string, value: string[]) {\n localStorage.setItem(`${this.prefix}|${name}`, value.join(','))\n }\n}\n","import { WebAppNavigationType } from '../../WebAppNavigationType.ts'\nimport { appSettingDefault } from './appSettingDefault.ts'\nimport { AppSettingSlug } from './Slug.ts'\nimport { AppSettingsStorageBase } from './StorageBase.ts'\n\nexport class AppSettingsStorage extends AppSettingsStorageBase {\n constructor(prefix = 'AppSettings', defaults?: Record<string, unknown>) {\n super(prefix, { ...appSettingDefault(), ...defaults })\n }\n\n get darkMode() {\n return this.getBoolean(AppSettingSlug.DarkMode)\n }\n\n set darkMode(value: boolean) {\n this.setBoolean(AppSettingSlug.DarkMode, value)\n }\n\n get developerMode() {\n return this.getBoolean(AppSettingSlug.Developer)\n }\n\n set developerMode(value: boolean) {\n this.setBoolean(AppSettingSlug.Developer, value)\n }\n\n get maxAccounts() {\n return this.getNumber(AppSettingSlug.MaxAccounts)\n }\n\n set maxAccounts(value: number) {\n this.setNumber(AppSettingSlug.MaxAccounts, value)\n }\n\n get navigationCollapsed() {\n return this.getBoolean(AppSettingSlug.NavigationCollapsed)\n }\n\n set navigationCollapsed(value: boolean) {\n this.setBoolean(AppSettingSlug.NavigationCollapsed, value)\n }\n\n get navigationType() {\n return this.getString(AppSettingSlug.NavigationType) as WebAppNavigationType\n }\n\n set navigationType(value: WebAppNavigationType) {\n this.setString(AppSettingSlug.NavigationType, value)\n }\n\n get seedPhrase() {\n return this.getString(AppSettingSlug.SeedPhrase)\n }\n\n set seedPhrase(value: string) {\n this.setString(AppSettingSlug.SeedPhrase, value)\n }\n}\n","import { useContext } from 'react'\n\nimport { AppSettingsContext } from './Context.ts'\n\nexport const useAppSettings = () => {\n return useContext(AppSettingsContext)\n}\n","import { ReactElement } from 'react'\n\nimport { useAppSettings } from '../contexts/index.ts'\n\nexport const Developer: React.FC<{ children: ReactElement }> = ({ children = null }) => {\n const { developerMode } = useAppSettings()\n\n return developerMode ? children : null\n}\n"],"mappings":"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","names":["import_react","AppSettingSlug","appSettingDefault","AppSettingSlug","DarkMode","Developer","NavigationType","NavigationCollapsed","SeedPhrase","MaxAccounts","AppSettingsContext","createContext","appSettingDefault","import_react","AppSettingsStorageBase","defaults","prefix","constructor","getBoolean","name","storedValue","localStorage","getItem","assertEx","defaultValue","undefined","getNumber","Number","parseFloat","getObject","parsedStoredValue","JSON","parse","getString","assertDefinedEx","getStringArray","split","Array","isArray","setBoolean","value","setItem","stringify","setNumber","setObject","setString","setStringArray","join","AppSettingsStorage","AppSettingsStorageBase","constructor","prefix","defaults","appSettingDefault","darkMode","getBoolean","AppSettingSlug","DarkMode","value","setBoolean","developerMode","Developer","maxAccounts","getNumber","MaxAccounts","setNumber","navigationCollapsed","NavigationCollapsed","navigationType","getString","NavigationType","setString","seedPhrase","SeedPhrase","AppSettingsProvider","storage","value","children","props","storageMemo","useMemo","AppSettingsStorage","developerMode","setDeveloperMode","useState","darkMode","setDarkMode","navigationType","setNavigationType","navigationCollapsed","setNavigationCollapsed","seedPhrase","setSeedPhrase","maxAccounts","setMaxAccounts","enableDeveloperMode","enableDarkMode","changeNavigationType","changeNavigationCollapsed","changeSeedPhrase","changeMaxAccounts","React","AppSettingsContext","Provider","import_react","useAppSettings","useContext","AppSettingsContext","DarkModeIconButton","props","darkMode","enableDarkMode","useAppSettings","handleDarkModeChange","React","IconButton","onClick","DarkModeRoundedIcon","LightModeRoundedIcon","Developer","children","developerMode","useAppSettings"]}
|
package/dist/node/index.d.cts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export * from './components/index.
|
|
2
|
-
export * from './contexts/index.
|
|
3
|
-
export * from './WebAppNavigationType.
|
|
1
|
+
export * from './components/index.ts';
|
|
2
|
+
export * from './contexts/index.ts';
|
|
3
|
+
export * from './WebAppNavigationType.ts';
|
|
4
4
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/node/index.d.mts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export * from './components/index.
|
|
2
|
-
export * from './contexts/index.
|
|
3
|
-
export * from './WebAppNavigationType.
|
|
1
|
+
export * from './components/index.ts';
|
|
2
|
+
export * from './contexts/index.ts';
|
|
3
|
+
export * from './WebAppNavigationType.ts';
|
|
4
4
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/node/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export * from './components/index.
|
|
2
|
-
export * from './contexts/index.
|
|
3
|
-
export * from './WebAppNavigationType.
|
|
1
|
+
export * from './components/index.ts';
|
|
2
|
+
export * from './contexts/index.ts';
|
|
3
|
+
export * from './WebAppNavigationType.ts';
|
|
4
4
|
//# sourceMappingURL=index.d.ts.map
|