app-settings-js 0.1.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/CHANGELOG.md +33 -0
- package/LICENSE +21 -0
- package/README.md +335 -0
- package/dist/client.d.cts +221 -0
- package/dist/client.d.ts +222 -0
- package/dist/client.d.ts.map +1 -0
- package/dist/datetime.d.cts +40 -0
- package/dist/datetime.d.ts +41 -0
- package/dist/datetime.d.ts.map +1 -0
- package/dist/errors.d.cts +61 -0
- package/dist/errors.d.ts +62 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/http.d.cts +62 -0
- package/dist/http.d.ts +63 -0
- package/dist/http.d.ts.map +1 -0
- package/dist/index.cjs +1004 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.cts +15 -0
- package/dist/index.d.ts +16 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +962 -0
- package/dist/index.js.map +1 -0
- package/dist/snapshot.d.cts +107 -0
- package/dist/snapshot.d.ts +108 -0
- package/dist/snapshot.d.ts.map +1 -0
- package/dist/store.d.cts +90 -0
- package/dist/store.d.ts +91 -0
- package/dist/store.d.ts.map +1 -0
- package/dist/types.d.cts +204 -0
- package/dist/types.d.ts +205 -0
- package/dist/types.d.ts.map +1 -0
- package/package.json +72 -0
- package/src/client.ts +572 -0
- package/src/datetime.ts +183 -0
- package/src/errors.ts +95 -0
- package/src/http.ts +314 -0
- package/src/index.ts +65 -0
- package/src/snapshot.ts +245 -0
- package/src/store.ts +316 -0
- package/src/types.ts +249 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/errors.ts","../src/http.ts","../src/datetime.ts","../src/snapshot.ts","../src/client.ts","../src/store.ts"],"mappings":"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","debugId":"944BEA4D442E434464756E2164756E21","names":[]}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
import type { Override, ResolveResponse, ResolvedSetting, SelectOption, SettingValue } from "./types.cjs";
|
|
2
|
+
/**
|
|
3
|
+
* A resolution, wrapped so reading a value is a one-liner.
|
|
4
|
+
*
|
|
5
|
+
* The instance is immutable and its identity only changes when the underlying
|
|
6
|
+
* data does, which is exactly what a UI framework needs to decide whether to
|
|
7
|
+
* re-render. {@link SettingsSnapshot.with} produces a new snapshot rather than
|
|
8
|
+
* mutating this one.
|
|
9
|
+
*/
|
|
10
|
+
export declare class SettingsSnapshot {
|
|
11
|
+
#private;
|
|
12
|
+
/** Every setting the resolution returned, in the server's order. */
|
|
13
|
+
readonly settings: readonly ResolvedSetting[];
|
|
14
|
+
/** The environment this was resolved in. */
|
|
15
|
+
readonly environment: string;
|
|
16
|
+
/** The platforms the resolution was filtered to, if any. */
|
|
17
|
+
readonly platforms: readonly string[];
|
|
18
|
+
/** The user this was resolved for, absent for a server resolution. */
|
|
19
|
+
readonly userId?: string;
|
|
20
|
+
/** The role the resolution ran as. */
|
|
21
|
+
readonly role: string;
|
|
22
|
+
/** When the server produced this. */
|
|
23
|
+
readonly resolvedAt: Date;
|
|
24
|
+
constructor(response: ResolveResponse);
|
|
25
|
+
/** The names of every setting present, useful for iterating a settings page. */
|
|
26
|
+
get names(): string[];
|
|
27
|
+
/** How many settings the resolution returned. */
|
|
28
|
+
get size(): number;
|
|
29
|
+
/** Whether a setting is present at all. Absent means the role cannot see it. */
|
|
30
|
+
has(name: string): boolean;
|
|
31
|
+
/** The whole resolved setting, or `undefined` if this role cannot see it. */
|
|
32
|
+
get(name: string): ResolvedSetting | undefined;
|
|
33
|
+
/**
|
|
34
|
+
* The effective value, untyped.
|
|
35
|
+
*
|
|
36
|
+
* `null` is returned both for a setting whose source is `UNSET` and for one
|
|
37
|
+
* genuinely set to null; {@link SettingsSnapshot.isSet} tells them apart.
|
|
38
|
+
*/
|
|
39
|
+
value(name: string): SettingValue;
|
|
40
|
+
/** Whether any layer, including the definition's default, supplied a value. */
|
|
41
|
+
isSet(name: string): boolean;
|
|
42
|
+
/** Which layer the effective value came from. */
|
|
43
|
+
source(name: string): ResolvedSetting["source"] | undefined;
|
|
44
|
+
/**
|
|
45
|
+
* A `BOOLEAN` value.
|
|
46
|
+
*
|
|
47
|
+
* @param fallback Returned when the setting is invisible to this role or unset.
|
|
48
|
+
* @throws {AppSettingsError} with code `type_mismatch` if the setting holds
|
|
49
|
+
* something other than a boolean, which means the wrong name was asked for.
|
|
50
|
+
*/
|
|
51
|
+
boolean(name: string, fallback?: boolean): boolean;
|
|
52
|
+
/** A `NUMBER` value. See {@link SettingsSnapshot.boolean} for the rules. */
|
|
53
|
+
number(name: string, fallback?: number): number;
|
|
54
|
+
/** A `STRING` or single-choice `SELECT` value. */
|
|
55
|
+
string(name: string, fallback?: string): string;
|
|
56
|
+
/** A `DATETIME` value, already parsed. */
|
|
57
|
+
date(name: string, fallback?: Date): Date | undefined;
|
|
58
|
+
/**
|
|
59
|
+
* A multi-choice `SELECT` value. A single-choice value is returned as a
|
|
60
|
+
* one-element array, so a caller need not branch on `multiple`.
|
|
61
|
+
*/
|
|
62
|
+
list<T = SettingValue>(name: string, fallback?: T[]): T[];
|
|
63
|
+
/**
|
|
64
|
+
* A `JSON` value, or any value at all, cast to the caller's type.
|
|
65
|
+
*
|
|
66
|
+
* Nothing is validated here: the server has already checked the value against
|
|
67
|
+
* the setting's own rules, and a `JSON` setting has none beyond being JSON.
|
|
68
|
+
*/
|
|
69
|
+
json<T = SettingValue>(name: string, fallback?: T): T;
|
|
70
|
+
/** The choices a `SELECT` offers, for rendering a picker. */
|
|
71
|
+
options(name: string): SelectOption[];
|
|
72
|
+
/** The group override that shaped this value, if one did. */
|
|
73
|
+
override(name: string): Override | undefined;
|
|
74
|
+
/**
|
|
75
|
+
* The override to tell the user about.
|
|
76
|
+
*
|
|
77
|
+
* An override marked `visible: false` is deliberately withheld: the user is
|
|
78
|
+
* not meant to observe that anything was overridden, so a UI should read this
|
|
79
|
+
* rather than {@link SettingsSnapshot.override}.
|
|
80
|
+
*/
|
|
81
|
+
visibleOverride(name: string): Override | undefined;
|
|
82
|
+
/**
|
|
83
|
+
* Whether a group policy is holding this value in place.
|
|
84
|
+
*
|
|
85
|
+
* This is the check for disabling a control: an enforced override beats
|
|
86
|
+
* whatever the user chooses, so writing to it would appear to do nothing.
|
|
87
|
+
*/
|
|
88
|
+
isEnforced(name: string): boolean;
|
|
89
|
+
/** Settings the user may actually change: personal scope, not enforced. */
|
|
90
|
+
editable(): ResolvedSetting[];
|
|
91
|
+
/** Every setting matching a predicate, for grouping a settings page. */
|
|
92
|
+
filter(predicate: (setting: ResolvedSetting) => boolean): ResolvedSetting[];
|
|
93
|
+
/** A plain `{ name: value }` object, handy for logging or a feature-flag map. */
|
|
94
|
+
toObject(): Record<string, SettingValue>;
|
|
95
|
+
/** The underlying response, for anything this class does not cover. */
|
|
96
|
+
toJSON(): ResolveResponse;
|
|
97
|
+
/**
|
|
98
|
+
* A new snapshot with one value replaced, leaving this one untouched.
|
|
99
|
+
*
|
|
100
|
+
* Used for an optimistic update: show the new value at once, then reconcile
|
|
101
|
+
* with whatever the next resolution says.
|
|
102
|
+
*/
|
|
103
|
+
with(name: string, value: SettingValue, source?: ResolvedSetting["source"]): SettingsSnapshot;
|
|
104
|
+
[Symbol.iterator](): IterableIterator<ResolvedSetting>;
|
|
105
|
+
}
|
|
106
|
+
/** Builds a snapshot from a raw resolution response. */
|
|
107
|
+
export declare function snapshotFrom(response: ResolveResponse): SettingsSnapshot;
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import type { Override, ResolveResponse, ResolvedSetting, SelectOption, SettingValue } from "./types.js";
|
|
2
|
+
/**
|
|
3
|
+
* A resolution, wrapped so reading a value is a one-liner.
|
|
4
|
+
*
|
|
5
|
+
* The instance is immutable and its identity only changes when the underlying
|
|
6
|
+
* data does, which is exactly what a UI framework needs to decide whether to
|
|
7
|
+
* re-render. {@link SettingsSnapshot.with} produces a new snapshot rather than
|
|
8
|
+
* mutating this one.
|
|
9
|
+
*/
|
|
10
|
+
export declare class SettingsSnapshot {
|
|
11
|
+
#private;
|
|
12
|
+
/** Every setting the resolution returned, in the server's order. */
|
|
13
|
+
readonly settings: readonly ResolvedSetting[];
|
|
14
|
+
/** The environment this was resolved in. */
|
|
15
|
+
readonly environment: string;
|
|
16
|
+
/** The platforms the resolution was filtered to, if any. */
|
|
17
|
+
readonly platforms: readonly string[];
|
|
18
|
+
/** The user this was resolved for, absent for a server resolution. */
|
|
19
|
+
readonly userId?: string;
|
|
20
|
+
/** The role the resolution ran as. */
|
|
21
|
+
readonly role: string;
|
|
22
|
+
/** When the server produced this. */
|
|
23
|
+
readonly resolvedAt: Date;
|
|
24
|
+
constructor(response: ResolveResponse);
|
|
25
|
+
/** The names of every setting present, useful for iterating a settings page. */
|
|
26
|
+
get names(): string[];
|
|
27
|
+
/** How many settings the resolution returned. */
|
|
28
|
+
get size(): number;
|
|
29
|
+
/** Whether a setting is present at all. Absent means the role cannot see it. */
|
|
30
|
+
has(name: string): boolean;
|
|
31
|
+
/** The whole resolved setting, or `undefined` if this role cannot see it. */
|
|
32
|
+
get(name: string): ResolvedSetting | undefined;
|
|
33
|
+
/**
|
|
34
|
+
* The effective value, untyped.
|
|
35
|
+
*
|
|
36
|
+
* `null` is returned both for a setting whose source is `UNSET` and for one
|
|
37
|
+
* genuinely set to null; {@link SettingsSnapshot.isSet} tells them apart.
|
|
38
|
+
*/
|
|
39
|
+
value(name: string): SettingValue;
|
|
40
|
+
/** Whether any layer, including the definition's default, supplied a value. */
|
|
41
|
+
isSet(name: string): boolean;
|
|
42
|
+
/** Which layer the effective value came from. */
|
|
43
|
+
source(name: string): ResolvedSetting["source"] | undefined;
|
|
44
|
+
/**
|
|
45
|
+
* A `BOOLEAN` value.
|
|
46
|
+
*
|
|
47
|
+
* @param fallback Returned when the setting is invisible to this role or unset.
|
|
48
|
+
* @throws {AppSettingsError} with code `type_mismatch` if the setting holds
|
|
49
|
+
* something other than a boolean, which means the wrong name was asked for.
|
|
50
|
+
*/
|
|
51
|
+
boolean(name: string, fallback?: boolean): boolean;
|
|
52
|
+
/** A `NUMBER` value. See {@link SettingsSnapshot.boolean} for the rules. */
|
|
53
|
+
number(name: string, fallback?: number): number;
|
|
54
|
+
/** A `STRING` or single-choice `SELECT` value. */
|
|
55
|
+
string(name: string, fallback?: string): string;
|
|
56
|
+
/** A `DATETIME` value, already parsed. */
|
|
57
|
+
date(name: string, fallback?: Date): Date | undefined;
|
|
58
|
+
/**
|
|
59
|
+
* A multi-choice `SELECT` value. A single-choice value is returned as a
|
|
60
|
+
* one-element array, so a caller need not branch on `multiple`.
|
|
61
|
+
*/
|
|
62
|
+
list<T = SettingValue>(name: string, fallback?: T[]): T[];
|
|
63
|
+
/**
|
|
64
|
+
* A `JSON` value, or any value at all, cast to the caller's type.
|
|
65
|
+
*
|
|
66
|
+
* Nothing is validated here: the server has already checked the value against
|
|
67
|
+
* the setting's own rules, and a `JSON` setting has none beyond being JSON.
|
|
68
|
+
*/
|
|
69
|
+
json<T = SettingValue>(name: string, fallback?: T): T;
|
|
70
|
+
/** The choices a `SELECT` offers, for rendering a picker. */
|
|
71
|
+
options(name: string): SelectOption[];
|
|
72
|
+
/** The group override that shaped this value, if one did. */
|
|
73
|
+
override(name: string): Override | undefined;
|
|
74
|
+
/**
|
|
75
|
+
* The override to tell the user about.
|
|
76
|
+
*
|
|
77
|
+
* An override marked `visible: false` is deliberately withheld: the user is
|
|
78
|
+
* not meant to observe that anything was overridden, so a UI should read this
|
|
79
|
+
* rather than {@link SettingsSnapshot.override}.
|
|
80
|
+
*/
|
|
81
|
+
visibleOverride(name: string): Override | undefined;
|
|
82
|
+
/**
|
|
83
|
+
* Whether a group policy is holding this value in place.
|
|
84
|
+
*
|
|
85
|
+
* This is the check for disabling a control: an enforced override beats
|
|
86
|
+
* whatever the user chooses, so writing to it would appear to do nothing.
|
|
87
|
+
*/
|
|
88
|
+
isEnforced(name: string): boolean;
|
|
89
|
+
/** Settings the user may actually change: personal scope, not enforced. */
|
|
90
|
+
editable(): ResolvedSetting[];
|
|
91
|
+
/** Every setting matching a predicate, for grouping a settings page. */
|
|
92
|
+
filter(predicate: (setting: ResolvedSetting) => boolean): ResolvedSetting[];
|
|
93
|
+
/** A plain `{ name: value }` object, handy for logging or a feature-flag map. */
|
|
94
|
+
toObject(): Record<string, SettingValue>;
|
|
95
|
+
/** The underlying response, for anything this class does not cover. */
|
|
96
|
+
toJSON(): ResolveResponse;
|
|
97
|
+
/**
|
|
98
|
+
* A new snapshot with one value replaced, leaving this one untouched.
|
|
99
|
+
*
|
|
100
|
+
* Used for an optimistic update: show the new value at once, then reconcile
|
|
101
|
+
* with whatever the next resolution says.
|
|
102
|
+
*/
|
|
103
|
+
with(name: string, value: SettingValue, source?: ResolvedSetting["source"]): SettingsSnapshot;
|
|
104
|
+
[Symbol.iterator](): IterableIterator<ResolvedSetting>;
|
|
105
|
+
}
|
|
106
|
+
/** Builds a snapshot from a raw resolution response. */
|
|
107
|
+
export declare function snapshotFrom(response: ResolveResponse): SettingsSnapshot;
|
|
108
|
+
//# sourceMappingURL=snapshot.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"snapshot.d.ts","sourceRoot":"","sources":["../src/snapshot.ts"],"names":[],"mappings":"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"}
|
package/dist/store.d.cts
ADDED
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
import type { AppSettingsClient } from "./client.cjs";
|
|
2
|
+
import { AppSettingsError } from "./errors.cjs";
|
|
3
|
+
import { SettingsSnapshot } from "./snapshot.cjs";
|
|
4
|
+
import type { ResolveResponse, SettingValue } from "./types.cjs";
|
|
5
|
+
/**
|
|
6
|
+
* A reactive store over one resolution.
|
|
7
|
+
*
|
|
8
|
+
* It deliberately knows nothing about any UI framework. What it exposes is the
|
|
9
|
+
* `subscribe` / `getSnapshot` pair that React's `useSyncExternalStore` wants,
|
|
10
|
+
* which is also the shape Vue, Svelte and Solid adapt to in a line or two.
|
|
11
|
+
*
|
|
12
|
+
* @example React, with no React-specific code in this package:
|
|
13
|
+
* const store = createSettingsStore(client, { userId: "alice" });
|
|
14
|
+
*
|
|
15
|
+
* function useSettings() {
|
|
16
|
+
* return useSyncExternalStore(store.subscribe, store.getSnapshot, store.getServerSnapshot);
|
|
17
|
+
* }
|
|
18
|
+
*/
|
|
19
|
+
/** What a subscriber reads. This object's identity changes only when something did. */
|
|
20
|
+
export interface SettingsState {
|
|
21
|
+
/**
|
|
22
|
+
* `idle` before the first load, `loading` during it, then `ready` or `error`.
|
|
23
|
+
* A background refresh leaves the status alone and raises `isValidating`.
|
|
24
|
+
*/
|
|
25
|
+
status: "idle" | "loading" | "ready" | "error";
|
|
26
|
+
/** The current resolution, or null before the first one arrives. */
|
|
27
|
+
snapshot: SettingsSnapshot | null;
|
|
28
|
+
/** Why the last load failed. Cleared by a successful one. */
|
|
29
|
+
error: AppSettingsError | null;
|
|
30
|
+
/** Whether a request is in flight, including a background refresh. */
|
|
31
|
+
isValidating: boolean;
|
|
32
|
+
/** When the current snapshot arrived, as epoch milliseconds. */
|
|
33
|
+
updatedAt: number | null;
|
|
34
|
+
}
|
|
35
|
+
/** How the store should resolve, and when it should do so again. */
|
|
36
|
+
export interface SettingsStoreOptions {
|
|
37
|
+
/** The user to resolve for. Omit for a server resolution. */
|
|
38
|
+
userId?: string;
|
|
39
|
+
/** Overrides the client's environment. */
|
|
40
|
+
environment?: string;
|
|
41
|
+
/** Restricts the resolution to these platforms. */
|
|
42
|
+
platform?: string | string[];
|
|
43
|
+
/** Resolves as this role instead of the key's own. */
|
|
44
|
+
role?: string;
|
|
45
|
+
/** Groups applied without stored membership. */
|
|
46
|
+
groupId?: string | string[];
|
|
47
|
+
/** Re-resolves on this interval. 0, the default, disables it. */
|
|
48
|
+
refreshIntervalMs?: number;
|
|
49
|
+
/** Re-resolves when the tab is focused again. Browsers only. */
|
|
50
|
+
revalidateOnFocus?: boolean;
|
|
51
|
+
/** Re-resolves when the network comes back. Browsers only. */
|
|
52
|
+
revalidateOnReconnect?: boolean;
|
|
53
|
+
/**
|
|
54
|
+
* A resolution already in hand, so the first render has data.
|
|
55
|
+
*
|
|
56
|
+
* This is the server-rendering path: resolve on the server, serialise the
|
|
57
|
+
* response into the page, and pass it here.
|
|
58
|
+
*/
|
|
59
|
+
initialData?: ResolveResponse | SettingsSnapshot;
|
|
60
|
+
/** Called on every failed load, for logging. Failures also land in the state. */
|
|
61
|
+
onError?: (error: AppSettingsError) => void;
|
|
62
|
+
}
|
|
63
|
+
/** The store returned by {@link createSettingsStore}. */
|
|
64
|
+
export interface SettingsStore {
|
|
65
|
+
/** Registers a listener and returns its unsubscribe function. */
|
|
66
|
+
subscribe: (listener: () => void) => () => void;
|
|
67
|
+
/** The current state. Stable between changes, as `useSyncExternalStore` requires. */
|
|
68
|
+
getSnapshot: () => SettingsState;
|
|
69
|
+
/** The state to render on a server, where nothing is ever fetched. */
|
|
70
|
+
getServerSnapshot: () => SettingsState;
|
|
71
|
+
/** Re-resolves now. Never rejects; the failure lands in the state. */
|
|
72
|
+
refresh: () => Promise<SettingsState>;
|
|
73
|
+
/**
|
|
74
|
+
* Writes a personal value and shows it immediately.
|
|
75
|
+
*
|
|
76
|
+
* The change is applied to the local snapshot before the request goes out and
|
|
77
|
+
* rolled back if it fails, so a control feels instant but never lies.
|
|
78
|
+
*
|
|
79
|
+
* @throws {AppSettingsError} if the write is rejected.
|
|
80
|
+
*/
|
|
81
|
+
set: (name: string, value: SettingValue) => Promise<void>;
|
|
82
|
+
/** Clears the user's own value, falling back to whatever lies beneath it. */
|
|
83
|
+
clear: (name: string) => Promise<void>;
|
|
84
|
+
/** Points the store at a different user, discarding the current snapshot. */
|
|
85
|
+
setUser: (userId: string | undefined) => void;
|
|
86
|
+
/** Stops timers and listeners. Safe to call more than once. */
|
|
87
|
+
dispose: () => void;
|
|
88
|
+
}
|
|
89
|
+
/** Builds a store. Nothing is fetched until something subscribes or refreshes. */
|
|
90
|
+
export declare function createSettingsStore(client: AppSettingsClient, options?: SettingsStoreOptions): SettingsStore;
|
package/dist/store.d.ts
ADDED
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import type { AppSettingsClient } from "./client.js";
|
|
2
|
+
import { AppSettingsError } from "./errors.js";
|
|
3
|
+
import { SettingsSnapshot } from "./snapshot.js";
|
|
4
|
+
import type { ResolveResponse, SettingValue } from "./types.js";
|
|
5
|
+
/**
|
|
6
|
+
* A reactive store over one resolution.
|
|
7
|
+
*
|
|
8
|
+
* It deliberately knows nothing about any UI framework. What it exposes is the
|
|
9
|
+
* `subscribe` / `getSnapshot` pair that React's `useSyncExternalStore` wants,
|
|
10
|
+
* which is also the shape Vue, Svelte and Solid adapt to in a line or two.
|
|
11
|
+
*
|
|
12
|
+
* @example React, with no React-specific code in this package:
|
|
13
|
+
* const store = createSettingsStore(client, { userId: "alice" });
|
|
14
|
+
*
|
|
15
|
+
* function useSettings() {
|
|
16
|
+
* return useSyncExternalStore(store.subscribe, store.getSnapshot, store.getServerSnapshot);
|
|
17
|
+
* }
|
|
18
|
+
*/
|
|
19
|
+
/** What a subscriber reads. This object's identity changes only when something did. */
|
|
20
|
+
export interface SettingsState {
|
|
21
|
+
/**
|
|
22
|
+
* `idle` before the first load, `loading` during it, then `ready` or `error`.
|
|
23
|
+
* A background refresh leaves the status alone and raises `isValidating`.
|
|
24
|
+
*/
|
|
25
|
+
status: "idle" | "loading" | "ready" | "error";
|
|
26
|
+
/** The current resolution, or null before the first one arrives. */
|
|
27
|
+
snapshot: SettingsSnapshot | null;
|
|
28
|
+
/** Why the last load failed. Cleared by a successful one. */
|
|
29
|
+
error: AppSettingsError | null;
|
|
30
|
+
/** Whether a request is in flight, including a background refresh. */
|
|
31
|
+
isValidating: boolean;
|
|
32
|
+
/** When the current snapshot arrived, as epoch milliseconds. */
|
|
33
|
+
updatedAt: number | null;
|
|
34
|
+
}
|
|
35
|
+
/** How the store should resolve, and when it should do so again. */
|
|
36
|
+
export interface SettingsStoreOptions {
|
|
37
|
+
/** The user to resolve for. Omit for a server resolution. */
|
|
38
|
+
userId?: string;
|
|
39
|
+
/** Overrides the client's environment. */
|
|
40
|
+
environment?: string;
|
|
41
|
+
/** Restricts the resolution to these platforms. */
|
|
42
|
+
platform?: string | string[];
|
|
43
|
+
/** Resolves as this role instead of the key's own. */
|
|
44
|
+
role?: string;
|
|
45
|
+
/** Groups applied without stored membership. */
|
|
46
|
+
groupId?: string | string[];
|
|
47
|
+
/** Re-resolves on this interval. 0, the default, disables it. */
|
|
48
|
+
refreshIntervalMs?: number;
|
|
49
|
+
/** Re-resolves when the tab is focused again. Browsers only. */
|
|
50
|
+
revalidateOnFocus?: boolean;
|
|
51
|
+
/** Re-resolves when the network comes back. Browsers only. */
|
|
52
|
+
revalidateOnReconnect?: boolean;
|
|
53
|
+
/**
|
|
54
|
+
* A resolution already in hand, so the first render has data.
|
|
55
|
+
*
|
|
56
|
+
* This is the server-rendering path: resolve on the server, serialise the
|
|
57
|
+
* response into the page, and pass it here.
|
|
58
|
+
*/
|
|
59
|
+
initialData?: ResolveResponse | SettingsSnapshot;
|
|
60
|
+
/** Called on every failed load, for logging. Failures also land in the state. */
|
|
61
|
+
onError?: (error: AppSettingsError) => void;
|
|
62
|
+
}
|
|
63
|
+
/** The store returned by {@link createSettingsStore}. */
|
|
64
|
+
export interface SettingsStore {
|
|
65
|
+
/** Registers a listener and returns its unsubscribe function. */
|
|
66
|
+
subscribe: (listener: () => void) => () => void;
|
|
67
|
+
/** The current state. Stable between changes, as `useSyncExternalStore` requires. */
|
|
68
|
+
getSnapshot: () => SettingsState;
|
|
69
|
+
/** The state to render on a server, where nothing is ever fetched. */
|
|
70
|
+
getServerSnapshot: () => SettingsState;
|
|
71
|
+
/** Re-resolves now. Never rejects; the failure lands in the state. */
|
|
72
|
+
refresh: () => Promise<SettingsState>;
|
|
73
|
+
/**
|
|
74
|
+
* Writes a personal value and shows it immediately.
|
|
75
|
+
*
|
|
76
|
+
* The change is applied to the local snapshot before the request goes out and
|
|
77
|
+
* rolled back if it fails, so a control feels instant but never lies.
|
|
78
|
+
*
|
|
79
|
+
* @throws {AppSettingsError} if the write is rejected.
|
|
80
|
+
*/
|
|
81
|
+
set: (name: string, value: SettingValue) => Promise<void>;
|
|
82
|
+
/** Clears the user's own value, falling back to whatever lies beneath it. */
|
|
83
|
+
clear: (name: string) => Promise<void>;
|
|
84
|
+
/** Points the store at a different user, discarding the current snapshot. */
|
|
85
|
+
setUser: (userId: string | undefined) => void;
|
|
86
|
+
/** Stops timers and listeners. Safe to call more than once. */
|
|
87
|
+
dispose: () => void;
|
|
88
|
+
}
|
|
89
|
+
/** Builds a store. Nothing is fetched until something subscribes or refreshes. */
|
|
90
|
+
export declare function createSettingsStore(client: AppSettingsClient, options?: SettingsStoreOptions): SettingsStore;
|
|
91
|
+
//# sourceMappingURL=store.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAsB,MAAM,aAAa,CAAC;AAEzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAEhE;;;;;;;;;;;;;GAaG;AAEH,uFAAuF;AACvF,MAAM,WAAW,aAAa;IAC5B;;;OAGG;IACH,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,GAAG,OAAO,CAAC;IAC/C,oEAAoE;IACpE,QAAQ,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAClC,6DAA6D;IAC7D,KAAK,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAC/B,sEAAsE;IACtE,YAAY,EAAE,OAAO,CAAC;IACtB,gEAAgE;IAChE,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AAED,oEAAoE;AACpE,MAAM,WAAW,oBAAoB;IACnC,6DAA6D;IAC7D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,0CAA0C;IAC1C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mDAAmD;IACnD,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC7B,sDAAsD;IACtD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,gDAAgD;IAChD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC5B,iEAAiE;IACjE,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gEAAgE;IAChE,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,8DAA8D;IAC9D,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC;;;;;OAKG;IACH,WAAW,CAAC,EAAE,eAAe,GAAG,gBAAgB,CAAC;IACjD,iFAAiF;IACjF,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,IAAI,CAAC;CAC7C;AAED,yDAAyD;AACzD,MAAM,WAAW,aAAa;IAC5B,iEAAiE;IACjE,SAAS,EAAE,CAAC,QAAQ,EAAE,MAAM,IAAI,KAAK,MAAM,IAAI,CAAC;IAChD,qFAAqF;IACrF,WAAW,EAAE,MAAM,aAAa,CAAC;IACjC,sEAAsE;IACtE,iBAAiB,EAAE,MAAM,aAAa,CAAC;IACvC,sEAAsE;IACtE,OAAO,EAAE,MAAM,OAAO,CAAC,aAAa,CAAC,CAAC;IACtC;;;;;;;OAOG;IACH,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1D,6EAA6E;IAC7E,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACvC,6EAA6E;IAC7E,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,KAAK,IAAI,CAAC;IAC9C,+DAA+D;IAC/D,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,kFAAkF;AAClF,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,iBAAiB,EACzB,OAAO,GAAE,oBAAyB,GACjC,aAAa,CAsLf"}
|