@pezkuwi/ui-settings 3.16.7 → 3.16.8

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 (120) hide show
  1. package/package.json +223 -6
  2. package/build/README.md +0 -40
  3. package/build/Settings.js +0 -172
  4. package/build/bundle.js +0 -5
  5. package/build/cjs/Settings.d.ts +0 -40
  6. package/build/cjs/Settings.js +0 -177
  7. package/build/cjs/bundle.d.ts +0 -5
  8. package/build/cjs/bundle.js +0 -19
  9. package/build/cjs/defaults/chains.js +0 -8
  10. package/build/cjs/defaults/crypto.js +0 -35
  11. package/build/cjs/defaults/endpoints.js +0 -11
  12. package/build/cjs/defaults/index.js +0 -80
  13. package/build/cjs/defaults/ledger.js +0 -45
  14. package/build/cjs/defaults/ss58.js +0 -16
  15. package/build/cjs/defaults/type.js +0 -4
  16. package/build/cjs/defaults/ui.js +0 -62
  17. package/build/cjs/index.js +0 -6
  18. package/build/cjs/packageDetect.js +0 -5
  19. package/build/cjs/packageInfo.js +0 -4
  20. package/build/cjs/types.js +0 -2
  21. package/build/defaults/chains.d.ts +0 -3
  22. package/build/defaults/chains.js +0 -5
  23. package/build/defaults/crypto.d.ts +0 -4
  24. package/build/defaults/crypto.js +0 -32
  25. package/build/defaults/endpoints.d.ts +0 -3
  26. package/build/defaults/endpoints.js +0 -8
  27. package/build/defaults/index.d.ts +0 -15
  28. package/build/defaults/index.js +0 -58
  29. package/build/defaults/ledger.d.ts +0 -5
  30. package/build/defaults/ledger.js +0 -42
  31. package/build/defaults/ss58.d.ts +0 -3
  32. package/build/defaults/ss58.js +0 -13
  33. package/build/defaults/type.d.ts +0 -1
  34. package/build/defaults/type.js +0 -1
  35. package/build/defaults/ui.d.ts +0 -10
  36. package/build/defaults/ui.js +0 -59
  37. package/build/index.d.ts +0 -3
  38. package/build/index.js +0 -3
  39. package/build/package.json +0 -254
  40. package/build/packageDetect.d.ts +0 -1
  41. package/build/packageDetect.js +0 -3
  42. package/build/packageInfo.d.ts +0 -6
  43. package/build/packageInfo.js +0 -1
  44. package/build/types.d.ts +0 -35
  45. package/build/types.js +0 -1
  46. package/src/Settings.ts +0 -236
  47. package/src/bundle.ts +0 -10
  48. package/src/defaults/chains.ts +0 -11
  49. package/src/defaults/crypto.ts +0 -39
  50. package/src/defaults/endpoints.ts +0 -14
  51. package/src/defaults/index.ts +0 -72
  52. package/src/defaults/ledger.ts +0 -50
  53. package/src/defaults/ss58.ts +0 -22
  54. package/src/defaults/type.ts +0 -5
  55. package/src/defaults/ui.ts +0 -73
  56. package/src/index.ts +0 -8
  57. package/src/packageDetect.ts +0 -11
  58. package/src/packageInfo.ts +0 -6
  59. package/src/types.ts +0 -42
  60. package/tsconfig.build.json +0 -9
  61. package/tsconfig.build.tsbuildinfo +0 -1
  62. /package/{build/LICENSE → LICENSE} +0 -0
  63. /package/{build-tsc/Settings.d.ts → Settings.d.ts} +0 -0
  64. /package/{build-tsc-esm/Settings.js → Settings.js} +0 -0
  65. /package/{build/bundle-pezkuwi-ui-settings.js → bundle-pezkuwi-ui-settings.js} +0 -0
  66. /package/{build-tsc/bundle.d.ts → bundle.d.ts} +0 -0
  67. /package/{build-tsc-esm/bundle.js → bundle.js} +0 -0
  68. /package/{build → cjs}/Settings.d.ts +0 -0
  69. /package/{build-tsc-cjs → cjs}/Settings.js +0 -0
  70. /package/{build → cjs}/bundle.d.ts +0 -0
  71. /package/{build-tsc-cjs → cjs}/bundle.js +0 -0
  72. /package/{build-tsc → cjs}/defaults/chains.d.ts +0 -0
  73. /package/{build-tsc-cjs → cjs}/defaults/chains.js +0 -0
  74. /package/{build-tsc → cjs}/defaults/crypto.d.ts +0 -0
  75. /package/{build-tsc-cjs → cjs}/defaults/crypto.js +0 -0
  76. /package/{build-tsc → cjs}/defaults/endpoints.d.ts +0 -0
  77. /package/{build-tsc-cjs → cjs}/defaults/endpoints.js +0 -0
  78. /package/{build-tsc → cjs}/defaults/index.d.ts +0 -0
  79. /package/{build-tsc-cjs → cjs}/defaults/index.js +0 -0
  80. /package/{build-tsc → cjs}/defaults/ledger.d.ts +0 -0
  81. /package/{build-tsc-cjs → cjs}/defaults/ledger.js +0 -0
  82. /package/{build-tsc → cjs}/defaults/ss58.d.ts +0 -0
  83. /package/{build-tsc-cjs → cjs}/defaults/ss58.js +0 -0
  84. /package/{build-tsc → cjs}/defaults/type.d.ts +0 -0
  85. /package/{build-tsc-cjs → cjs}/defaults/type.js +0 -0
  86. /package/{build-tsc → cjs}/defaults/ui.d.ts +0 -0
  87. /package/{build-tsc-cjs → cjs}/defaults/ui.js +0 -0
  88. /package/{build-tsc → cjs}/index.d.ts +0 -0
  89. /package/{build-tsc-cjs → cjs}/index.js +0 -0
  90. /package/{build/cjs → cjs}/package.json +0 -0
  91. /package/{build-tsc → cjs}/packageDetect.d.ts +0 -0
  92. /package/{build-tsc-cjs → cjs}/packageDetect.js +0 -0
  93. /package/{build-tsc → cjs}/packageInfo.d.ts +0 -0
  94. /package/{build-tsc-cjs → cjs}/packageInfo.js +0 -0
  95. /package/{build-tsc → cjs}/types.d.ts +0 -0
  96. /package/{build-tsc-cjs → cjs}/types.js +0 -0
  97. /package/{build/cjs/defaults → defaults}/chains.d.ts +0 -0
  98. /package/{build-tsc-esm/defaults → defaults}/chains.js +0 -0
  99. /package/{build/cjs/defaults → defaults}/crypto.d.ts +0 -0
  100. /package/{build-tsc-esm/defaults → defaults}/crypto.js +0 -0
  101. /package/{build/cjs/defaults → defaults}/endpoints.d.ts +0 -0
  102. /package/{build-tsc-esm/defaults → defaults}/endpoints.js +0 -0
  103. /package/{build/cjs/defaults → defaults}/index.d.ts +0 -0
  104. /package/{build-tsc-esm/defaults → defaults}/index.js +0 -0
  105. /package/{build/cjs/defaults → defaults}/ledger.d.ts +0 -0
  106. /package/{build-tsc-esm/defaults → defaults}/ledger.js +0 -0
  107. /package/{build/cjs/defaults → defaults}/ss58.d.ts +0 -0
  108. /package/{build-tsc-esm/defaults → defaults}/ss58.js +0 -0
  109. /package/{build/cjs/defaults → defaults}/type.d.ts +0 -0
  110. /package/{build-tsc-esm/defaults → defaults}/type.js +0 -0
  111. /package/{build/cjs/defaults → defaults}/ui.d.ts +0 -0
  112. /package/{build-tsc-esm/defaults → defaults}/ui.js +0 -0
  113. /package/{build/cjs/index.d.ts → index.d.ts} +0 -0
  114. /package/{build-tsc-esm/index.js → index.js} +0 -0
  115. /package/{build/cjs/packageDetect.d.ts → packageDetect.d.ts} +0 -0
  116. /package/{build-tsc-esm/packageDetect.js → packageDetect.js} +0 -0
  117. /package/{build/cjs/packageInfo.d.ts → packageInfo.d.ts} +0 -0
  118. /package/{build-tsc-esm/packageInfo.js → packageInfo.js} +0 -0
  119. /package/{build/cjs/types.d.ts → types.d.ts} +0 -0
  120. /package/{build-tsc-esm/types.js → types.js} +0 -0
package/package.json CHANGED
@@ -15,11 +15,231 @@
15
15
  },
16
16
  "sideEffects": [
17
17
  "./packageDetect.js",
18
- "./packageDetect.cjs"
18
+ "./cjs/packageDetect.js"
19
19
  ],
20
20
  "type": "module",
21
- "version": "3.16.7",
22
- "main": "index.js",
21
+ "version": "3.16.8",
22
+ "main": "./cjs/index.js",
23
+ "module": "./index.js",
24
+ "types": "./index.d.ts",
25
+ "exports": {
26
+ "./cjs/package.json": "./cjs/package.json",
27
+ "./cjs/*": "./cjs/*.js",
28
+ ".": {
29
+ "module": {
30
+ "types": "./index.d.ts",
31
+ "default": "./index.js"
32
+ },
33
+ "require": {
34
+ "types": "./cjs/index.d.ts",
35
+ "default": "./cjs/index.js"
36
+ },
37
+ "default": {
38
+ "types": "./index.d.ts",
39
+ "default": "./index.js"
40
+ }
41
+ },
42
+ "./bundle": {
43
+ "module": {
44
+ "types": "./bundle.d.ts",
45
+ "default": "./bundle.js"
46
+ },
47
+ "require": {
48
+ "types": "./cjs/bundle.d.ts",
49
+ "default": "./cjs/bundle.js"
50
+ },
51
+ "default": {
52
+ "types": "./bundle.d.ts",
53
+ "default": "./bundle.js"
54
+ }
55
+ },
56
+ "./defaults": {
57
+ "module": {
58
+ "types": "./defaults/index.d.ts",
59
+ "default": "./defaults/index.js"
60
+ },
61
+ "require": {
62
+ "types": "./cjs/defaults/index.d.ts",
63
+ "default": "./cjs/defaults/index.js"
64
+ },
65
+ "default": {
66
+ "types": "./defaults/index.d.ts",
67
+ "default": "./defaults/index.js"
68
+ }
69
+ },
70
+ "./defaults/chains": {
71
+ "module": {
72
+ "types": "./defaults/chains.d.ts",
73
+ "default": "./defaults/chains.js"
74
+ },
75
+ "require": {
76
+ "types": "./cjs/defaults/chains.d.ts",
77
+ "default": "./cjs/defaults/chains.js"
78
+ },
79
+ "default": {
80
+ "types": "./defaults/chains.d.ts",
81
+ "default": "./defaults/chains.js"
82
+ }
83
+ },
84
+ "./defaults/crypto": {
85
+ "module": {
86
+ "types": "./defaults/crypto.d.ts",
87
+ "default": "./defaults/crypto.js"
88
+ },
89
+ "require": {
90
+ "types": "./cjs/defaults/crypto.d.ts",
91
+ "default": "./cjs/defaults/crypto.js"
92
+ },
93
+ "default": {
94
+ "types": "./defaults/crypto.d.ts",
95
+ "default": "./defaults/crypto.js"
96
+ }
97
+ },
98
+ "./defaults/endpoints": {
99
+ "module": {
100
+ "types": "./defaults/endpoints.d.ts",
101
+ "default": "./defaults/endpoints.js"
102
+ },
103
+ "require": {
104
+ "types": "./cjs/defaults/endpoints.d.ts",
105
+ "default": "./cjs/defaults/endpoints.js"
106
+ },
107
+ "default": {
108
+ "types": "./defaults/endpoints.d.ts",
109
+ "default": "./defaults/endpoints.js"
110
+ }
111
+ },
112
+ "./defaults/ledger": {
113
+ "module": {
114
+ "types": "./defaults/ledger.d.ts",
115
+ "default": "./defaults/ledger.js"
116
+ },
117
+ "require": {
118
+ "types": "./cjs/defaults/ledger.d.ts",
119
+ "default": "./cjs/defaults/ledger.js"
120
+ },
121
+ "default": {
122
+ "types": "./defaults/ledger.d.ts",
123
+ "default": "./defaults/ledger.js"
124
+ }
125
+ },
126
+ "./defaults/ss58": {
127
+ "module": {
128
+ "types": "./defaults/ss58.d.ts",
129
+ "default": "./defaults/ss58.js"
130
+ },
131
+ "require": {
132
+ "types": "./cjs/defaults/ss58.d.ts",
133
+ "default": "./cjs/defaults/ss58.js"
134
+ },
135
+ "default": {
136
+ "types": "./defaults/ss58.d.ts",
137
+ "default": "./defaults/ss58.js"
138
+ }
139
+ },
140
+ "./defaults/type": {
141
+ "module": {
142
+ "types": "./defaults/type.d.ts",
143
+ "default": "./defaults/type.js"
144
+ },
145
+ "require": {
146
+ "types": "./cjs/defaults/type.d.ts",
147
+ "default": "./cjs/defaults/type.js"
148
+ },
149
+ "default": {
150
+ "types": "./defaults/type.d.ts",
151
+ "default": "./defaults/type.js"
152
+ }
153
+ },
154
+ "./defaults/ui": {
155
+ "module": {
156
+ "types": "./defaults/ui.d.ts",
157
+ "default": "./defaults/ui.js"
158
+ },
159
+ "require": {
160
+ "types": "./cjs/defaults/ui.d.ts",
161
+ "default": "./cjs/defaults/ui.js"
162
+ },
163
+ "default": {
164
+ "types": "./defaults/ui.d.ts",
165
+ "default": "./defaults/ui.js"
166
+ }
167
+ },
168
+ "./package.json": {
169
+ "require": "./cjs/package.json",
170
+ "default": "./package.json"
171
+ },
172
+ "./packageDetect": {
173
+ "module": {
174
+ "types": "./packageDetect.d.ts",
175
+ "default": "./packageDetect.js"
176
+ },
177
+ "require": {
178
+ "types": "./cjs/packageDetect.d.ts",
179
+ "default": "./cjs/packageDetect.js"
180
+ },
181
+ "default": {
182
+ "types": "./packageDetect.d.ts",
183
+ "default": "./packageDetect.js"
184
+ }
185
+ },
186
+ "./packageInfo.js": {
187
+ "module": {
188
+ "types": "./packageInfo.d.ts",
189
+ "default": "./packageInfo.js"
190
+ },
191
+ "require": {
192
+ "types": "./cjs/packageInfo.d.ts",
193
+ "default": "./cjs/packageInfo.js"
194
+ },
195
+ "default": {
196
+ "types": "./packageInfo.d.ts",
197
+ "default": "./packageInfo.js"
198
+ }
199
+ },
200
+ "./packageInfo": {
201
+ "module": {
202
+ "types": "./packageInfo.d.ts",
203
+ "default": "./packageInfo.js"
204
+ },
205
+ "require": {
206
+ "types": "./cjs/packageInfo.d.ts",
207
+ "default": "./cjs/packageInfo.js"
208
+ },
209
+ "default": {
210
+ "types": "./packageInfo.d.ts",
211
+ "default": "./packageInfo.js"
212
+ }
213
+ },
214
+ "./Settings": {
215
+ "module": {
216
+ "types": "./Settings.d.ts",
217
+ "default": "./Settings.js"
218
+ },
219
+ "require": {
220
+ "types": "./cjs/Settings.d.ts",
221
+ "default": "./cjs/Settings.js"
222
+ },
223
+ "default": {
224
+ "types": "./Settings.d.ts",
225
+ "default": "./Settings.js"
226
+ }
227
+ },
228
+ "./types": {
229
+ "module": {
230
+ "types": "./types.d.ts",
231
+ "default": "./types.js"
232
+ },
233
+ "require": {
234
+ "types": "./cjs/types.d.ts",
235
+ "default": "./cjs/types.js"
236
+ },
237
+ "default": {
238
+ "types": "./types.d.ts",
239
+ "default": "./types.js"
240
+ }
241
+ }
242
+ },
23
243
  "dependencies": {
24
244
  "@pezkuwi/networks": "^14.0.5",
25
245
  "@pezkuwi/util": "^14.0.5",
@@ -27,9 +247,6 @@
27
247
  "store": "^2.0.12",
28
248
  "tslib": "^2.8.1"
29
249
  },
30
- "devDependencies": {
31
- "@types/store": "^2.0.5"
32
- },
33
250
  "peerDependencies": {
34
251
  "@pezkuwi/networks": "*",
35
252
  "@pezkuwi/util": "*"
package/build/README.md DELETED
@@ -1,40 +0,0 @@
1
- # @pezkuwi/ui-settings
2
-
3
- Manages app settings including endpoints, themes and prefixes
4
-
5
- ## Usage Examples
6
-
7
- User preferences are set as a settings object in the browser's local storage.
8
-
9
- ```js
10
- import settings from '@pezkuwi/ui-settings';
11
-
12
- render () {
13
- // get api endpoint for the selected chain
14
- const WS_URL = settings.apiUrl();
15
-
16
- // get the selected il8n language
17
- const language = settings.il8nLang();
18
-
19
- // get all available il8n languages
20
- const languages = settings.availableLanguages();
21
-
22
- // update settings
23
- const updatedSettings = {
24
- ...settings,
25
- i18nLang: 'Arabic'
26
- }
27
- settings.set(updatedSettings);
28
-
29
- // NOTE: API currently does not handle hot reconnecting properly,
30
- so you need to manually reload the page after updating settings.
31
- window.location.reload();
32
- }
33
- ```
34
-
35
- ## Used by
36
-
37
- Apps that currently use the settings package
38
-
39
- * [pezkuwichain/apps](https://www.github.com/pezkuwichain/apps)
40
- * [paritytech/substrate-light-ui](https://github.com/paritytech/substrate-light-ui)
package/build/Settings.js DELETED
@@ -1,172 +0,0 @@
1
- import { EventEmitter } from 'eventemitter3';
2
- import store from 'store';
3
- import { hasProcess, isUndefined } from '@pezkuwi/util';
4
- import { CAMERA, CAMERA_DEFAULT, CRYPTOS, CRYPTOS_ETH, CRYPTOS_LEDGER, ENDPOINT_DEFAULT, ENDPOINTS, ICON_DEFAULT, ICONS, LANGUAGE_DEFAULT, LEDGER_APP, LEDGER_APP_DEFAULT, LEDGER_CONN, LEDGER_CONN_DEFAULT, LOCKING, LOCKING_DEFAULT, METADATA_UP, METADATA_UP_DEFAULT, NOTIFICATION_DEFAULT, PREFIX_DEFAULT, PREFIXES, STORAGE, STORAGE_DEFAULT, UIMODE_DEFAULT, UIMODES, UITHEME_DEFAULT, UITHEMES } from './defaults/index.js';
5
- function withDefault(options, option, fallback) {
6
- const _option = option || fallback;
7
- return options.some(({ value }) => value === _option)
8
- ? _option
9
- : fallback;
10
- }
11
- export class Settings {
12
- #emitter;
13
- #apiType;
14
- // will become deprecated for supporting substrate connect light clients. apiType structure should be used instead
15
- #apiUrl;
16
- #camera;
17
- #i18nLang;
18
- #icon;
19
- #ledgerApp;
20
- #ledgerConn;
21
- #locking;
22
- #metadataUp;
23
- #prefix;
24
- #storage;
25
- #uiMode;
26
- #uiTheme;
27
- #notification;
28
- constructor() {
29
- const settings = store.get('settings') || {};
30
- this.#emitter = new EventEmitter();
31
- // will become deprecated for supporting substrate connect light clients. apiType structure should be used instead
32
- this.#apiUrl = (typeof settings.apiUrl === 'string' && settings.apiUrl) || (hasProcess && process.env?.['WS_URL']) || ENDPOINT_DEFAULT.value;
33
- this.#apiType = { param: this.#apiUrl, type: 'json-rpc' };
34
- this.#camera = withDefault(CAMERA, settings.camera, CAMERA_DEFAULT);
35
- this.#ledgerApp = withDefault(LEDGER_APP, settings.ledgerApp, LEDGER_APP_DEFAULT);
36
- this.#ledgerConn = withDefault(LEDGER_CONN, settings.ledgerConn, LEDGER_CONN_DEFAULT);
37
- this.#i18nLang = settings.i18nLang || LANGUAGE_DEFAULT;
38
- this.#icon = settings.icon || ICON_DEFAULT;
39
- this.#locking = settings.locking || LOCKING_DEFAULT;
40
- this.#metadataUp = withDefault(METADATA_UP, settings.storage, METADATA_UP_DEFAULT);
41
- this.#notification = settings.notification || NOTIFICATION_DEFAULT;
42
- this.#prefix = isUndefined(settings.prefix) ? PREFIX_DEFAULT : settings.prefix;
43
- this.#storage = withDefault(STORAGE, settings.storage, STORAGE_DEFAULT);
44
- this.#uiMode = settings.uiMode || UIMODE_DEFAULT;
45
- this.#uiTheme = settings.uiTheme || UITHEME_DEFAULT;
46
- }
47
- get camera() {
48
- return this.#camera;
49
- }
50
- get apiType() {
51
- return this.#apiType;
52
- }
53
- get apiUrl() {
54
- return this.#apiUrl;
55
- }
56
- get i18nLang() {
57
- return this.#i18nLang;
58
- }
59
- get icon() {
60
- return this.#icon;
61
- }
62
- get notification() {
63
- return this.#notification;
64
- }
65
- get ledgerApp() {
66
- return this.#ledgerApp;
67
- }
68
- get ledgerConn() {
69
- return this.#ledgerConn;
70
- }
71
- get locking() {
72
- return this.#locking;
73
- }
74
- get metadataUp() {
75
- return this.#metadataUp;
76
- }
77
- get prefix() {
78
- return this.#prefix;
79
- }
80
- get storage() {
81
- return this.#storage;
82
- }
83
- get uiMode() {
84
- return this.#uiMode;
85
- }
86
- get uiTheme() {
87
- return this.#uiTheme;
88
- }
89
- get availableCamera() {
90
- return CAMERA;
91
- }
92
- get availableCryptos() {
93
- return CRYPTOS;
94
- }
95
- get availableCryptosEth() {
96
- return CRYPTOS_ETH;
97
- }
98
- get availableCryptosLedger() {
99
- return CRYPTOS_LEDGER;
100
- }
101
- get availableIcons() {
102
- return ICONS;
103
- }
104
- get availableLedgerApp() {
105
- return LEDGER_APP;
106
- }
107
- get availableLedgerConn() {
108
- return LEDGER_CONN;
109
- }
110
- get availableLocking() {
111
- return LOCKING;
112
- }
113
- get availableMetadataUp() {
114
- return METADATA_UP;
115
- }
116
- get availableNodes() {
117
- return ENDPOINTS;
118
- }
119
- get availablePrefixes() {
120
- return PREFIXES;
121
- }
122
- get availableStorage() {
123
- return STORAGE;
124
- }
125
- get availableUIModes() {
126
- return UIMODES;
127
- }
128
- get availableUIThemes() {
129
- return UITHEMES;
130
- }
131
- get() {
132
- return {
133
- apiType: this.#apiType,
134
- apiUrl: this.#apiUrl,
135
- camera: this.#camera,
136
- i18nLang: this.#i18nLang,
137
- icon: this.#icon,
138
- ledgerApp: this.#ledgerApp,
139
- ledgerConn: this.#ledgerConn,
140
- locking: this.#locking,
141
- metadataUp: this.#metadataUp,
142
- notification: this.#notification,
143
- prefix: this.#prefix,
144
- storage: this.#storage,
145
- uiMode: this.#uiMode,
146
- uiTheme: this.#uiTheme
147
- };
148
- }
149
- set(settings) {
150
- this.#apiType = settings.apiType || this.#apiType;
151
- this.#apiUrl = settings.apiUrl || this.#apiUrl;
152
- this.#camera = settings.camera || this.#camera;
153
- this.#ledgerConn = settings.ledgerConn || this.#ledgerConn;
154
- this.#ledgerApp = settings.ledgerApp || this.#ledgerApp;
155
- this.#i18nLang = settings.i18nLang || this.#i18nLang;
156
- this.#icon = settings.icon || this.#icon;
157
- this.#locking = settings.locking || this.#locking;
158
- this.#metadataUp = settings.metadataUp || this.#metadataUp;
159
- this.#notification = settings.notification || this.#notification;
160
- this.#prefix = isUndefined(settings.prefix) ? this.#prefix : settings.prefix;
161
- this.#storage = settings.storage || this.#storage;
162
- this.#uiMode = settings.uiMode || this.#uiMode;
163
- this.#uiTheme = settings.uiTheme || this.#uiTheme;
164
- const newValues = this.get();
165
- store.set('settings', newValues);
166
- this.#emitter.emit('change', newValues);
167
- }
168
- on(type, cb) {
169
- this.#emitter.on(type, cb);
170
- }
171
- }
172
- export const settings = new Settings();
package/build/bundle.js DELETED
@@ -1,5 +0,0 @@
1
- import { Settings, settings } from './Settings.js';
2
- export { chains } from './defaults/chains.js';
3
- export { ENDPOINT_DEFAULT, ICON_DEFAULT, ICON_DEFAULT_HOST, LANGUAGE_DEFAULT, LOCKING_DEFAULT, PREFIX_DEFAULT, UIMODE_DEFAULT, UITHEME_DEFAULT } from './defaults/index.js';
4
- export { packageInfo } from './packageInfo.js';
5
- export { Settings, settings };
@@ -1,40 +0,0 @@
1
- import type { Endpoint, Option, SettingsStruct } from './types.js';
2
- type ChangeCallback = (settings: SettingsStruct) => void;
3
- type OnTypes = 'change';
4
- export declare class Settings implements SettingsStruct {
5
- #private;
6
- constructor();
7
- get camera(): string;
8
- get apiType(): Endpoint;
9
- get apiUrl(): string;
10
- get i18nLang(): string;
11
- get icon(): string;
12
- get notification(): string;
13
- get ledgerApp(): string;
14
- get ledgerConn(): string;
15
- get locking(): string;
16
- get metadataUp(): string;
17
- get prefix(): number;
18
- get storage(): string;
19
- get uiMode(): string;
20
- get uiTheme(): string;
21
- get availableCamera(): Option[];
22
- get availableCryptos(): Option[];
23
- get availableCryptosEth(): Option[];
24
- get availableCryptosLedger(): Option[];
25
- get availableIcons(): Option[];
26
- get availableLedgerApp(): Option[];
27
- get availableLedgerConn(): Option[];
28
- get availableLocking(): Option[];
29
- get availableMetadataUp(): Option[];
30
- get availableNodes(): Option[];
31
- get availablePrefixes(): Option[];
32
- get availableStorage(): Option[];
33
- get availableUIModes(): Option[];
34
- get availableUIThemes(): Option[];
35
- get(): SettingsStruct;
36
- set(settings: Partial<SettingsStruct>): void;
37
- on(type: OnTypes, cb: ChangeCallback): void;
38
- }
39
- export declare const settings: Settings;
40
- export {};
@@ -1,177 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.settings = exports.Settings = void 0;
4
- const tslib_1 = require("tslib");
5
- const eventemitter3_1 = require("eventemitter3");
6
- const store_1 = tslib_1.__importDefault(require("store"));
7
- const util_1 = require("@pezkuwi/util");
8
- const index_js_1 = require("./defaults/index.js");
9
- function withDefault(options, option, fallback) {
10
- const _option = option || fallback;
11
- return options.some(({ value }) => value === _option)
12
- ? _option
13
- : fallback;
14
- }
15
- class Settings {
16
- #emitter;
17
- #apiType;
18
- // will become deprecated for supporting substrate connect light clients. apiType structure should be used instead
19
- #apiUrl;
20
- #camera;
21
- #i18nLang;
22
- #icon;
23
- #ledgerApp;
24
- #ledgerConn;
25
- #locking;
26
- #metadataUp;
27
- #prefix;
28
- #storage;
29
- #uiMode;
30
- #uiTheme;
31
- #notification;
32
- constructor() {
33
- const settings = store_1.default.get('settings') || {};
34
- this.#emitter = new eventemitter3_1.EventEmitter();
35
- // will become deprecated for supporting substrate connect light clients. apiType structure should be used instead
36
- this.#apiUrl = (typeof settings.apiUrl === 'string' && settings.apiUrl) || (util_1.hasProcess && process.env?.['WS_URL']) || index_js_1.ENDPOINT_DEFAULT.value;
37
- this.#apiType = { param: this.#apiUrl, type: 'json-rpc' };
38
- this.#camera = withDefault(index_js_1.CAMERA, settings.camera, index_js_1.CAMERA_DEFAULT);
39
- this.#ledgerApp = withDefault(index_js_1.LEDGER_APP, settings.ledgerApp, index_js_1.LEDGER_APP_DEFAULT);
40
- this.#ledgerConn = withDefault(index_js_1.LEDGER_CONN, settings.ledgerConn, index_js_1.LEDGER_CONN_DEFAULT);
41
- this.#i18nLang = settings.i18nLang || index_js_1.LANGUAGE_DEFAULT;
42
- this.#icon = settings.icon || index_js_1.ICON_DEFAULT;
43
- this.#locking = settings.locking || index_js_1.LOCKING_DEFAULT;
44
- this.#metadataUp = withDefault(index_js_1.METADATA_UP, settings.storage, index_js_1.METADATA_UP_DEFAULT);
45
- this.#notification = settings.notification || index_js_1.NOTIFICATION_DEFAULT;
46
- this.#prefix = (0, util_1.isUndefined)(settings.prefix) ? index_js_1.PREFIX_DEFAULT : settings.prefix;
47
- this.#storage = withDefault(index_js_1.STORAGE, settings.storage, index_js_1.STORAGE_DEFAULT);
48
- this.#uiMode = settings.uiMode || index_js_1.UIMODE_DEFAULT;
49
- this.#uiTheme = settings.uiTheme || index_js_1.UITHEME_DEFAULT;
50
- }
51
- get camera() {
52
- return this.#camera;
53
- }
54
- get apiType() {
55
- return this.#apiType;
56
- }
57
- get apiUrl() {
58
- return this.#apiUrl;
59
- }
60
- get i18nLang() {
61
- return this.#i18nLang;
62
- }
63
- get icon() {
64
- return this.#icon;
65
- }
66
- get notification() {
67
- return this.#notification;
68
- }
69
- get ledgerApp() {
70
- return this.#ledgerApp;
71
- }
72
- get ledgerConn() {
73
- return this.#ledgerConn;
74
- }
75
- get locking() {
76
- return this.#locking;
77
- }
78
- get metadataUp() {
79
- return this.#metadataUp;
80
- }
81
- get prefix() {
82
- return this.#prefix;
83
- }
84
- get storage() {
85
- return this.#storage;
86
- }
87
- get uiMode() {
88
- return this.#uiMode;
89
- }
90
- get uiTheme() {
91
- return this.#uiTheme;
92
- }
93
- get availableCamera() {
94
- return index_js_1.CAMERA;
95
- }
96
- get availableCryptos() {
97
- return index_js_1.CRYPTOS;
98
- }
99
- get availableCryptosEth() {
100
- return index_js_1.CRYPTOS_ETH;
101
- }
102
- get availableCryptosLedger() {
103
- return index_js_1.CRYPTOS_LEDGER;
104
- }
105
- get availableIcons() {
106
- return index_js_1.ICONS;
107
- }
108
- get availableLedgerApp() {
109
- return index_js_1.LEDGER_APP;
110
- }
111
- get availableLedgerConn() {
112
- return index_js_1.LEDGER_CONN;
113
- }
114
- get availableLocking() {
115
- return index_js_1.LOCKING;
116
- }
117
- get availableMetadataUp() {
118
- return index_js_1.METADATA_UP;
119
- }
120
- get availableNodes() {
121
- return index_js_1.ENDPOINTS;
122
- }
123
- get availablePrefixes() {
124
- return index_js_1.PREFIXES;
125
- }
126
- get availableStorage() {
127
- return index_js_1.STORAGE;
128
- }
129
- get availableUIModes() {
130
- return index_js_1.UIMODES;
131
- }
132
- get availableUIThemes() {
133
- return index_js_1.UITHEMES;
134
- }
135
- get() {
136
- return {
137
- apiType: this.#apiType,
138
- apiUrl: this.#apiUrl,
139
- camera: this.#camera,
140
- i18nLang: this.#i18nLang,
141
- icon: this.#icon,
142
- ledgerApp: this.#ledgerApp,
143
- ledgerConn: this.#ledgerConn,
144
- locking: this.#locking,
145
- metadataUp: this.#metadataUp,
146
- notification: this.#notification,
147
- prefix: this.#prefix,
148
- storage: this.#storage,
149
- uiMode: this.#uiMode,
150
- uiTheme: this.#uiTheme
151
- };
152
- }
153
- set(settings) {
154
- this.#apiType = settings.apiType || this.#apiType;
155
- this.#apiUrl = settings.apiUrl || this.#apiUrl;
156
- this.#camera = settings.camera || this.#camera;
157
- this.#ledgerConn = settings.ledgerConn || this.#ledgerConn;
158
- this.#ledgerApp = settings.ledgerApp || this.#ledgerApp;
159
- this.#i18nLang = settings.i18nLang || this.#i18nLang;
160
- this.#icon = settings.icon || this.#icon;
161
- this.#locking = settings.locking || this.#locking;
162
- this.#metadataUp = settings.metadataUp || this.#metadataUp;
163
- this.#notification = settings.notification || this.#notification;
164
- this.#prefix = (0, util_1.isUndefined)(settings.prefix) ? this.#prefix : settings.prefix;
165
- this.#storage = settings.storage || this.#storage;
166
- this.#uiMode = settings.uiMode || this.#uiMode;
167
- this.#uiTheme = settings.uiTheme || this.#uiTheme;
168
- const newValues = this.get();
169
- store_1.default.set('settings', newValues);
170
- this.#emitter.emit('change', newValues);
171
- }
172
- on(type, cb) {
173
- this.#emitter.on(type, cb);
174
- }
175
- }
176
- exports.Settings = Settings;
177
- exports.settings = new Settings();
@@ -1,5 +0,0 @@
1
- import { Settings, settings } from './Settings.js';
2
- export { chains } from './defaults/chains.js';
3
- export { ENDPOINT_DEFAULT, ICON_DEFAULT, ICON_DEFAULT_HOST, LANGUAGE_DEFAULT, LOCKING_DEFAULT, PREFIX_DEFAULT, UIMODE_DEFAULT, UITHEME_DEFAULT } from './defaults/index.js';
4
- export { packageInfo } from './packageInfo.js';
5
- export { Settings, settings };