@legendapp/state 2.0.0-next.8 → 2.0.0-next.9

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@legendapp/state",
3
- "version": "2.0.0-next.8",
3
+ "version": "2.0.0-next.9",
4
4
  "description": "legend-state",
5
5
  "sideEffects": false,
6
6
  "private": false,
package/persist.js CHANGED
@@ -135,12 +135,29 @@ if (process.env.NODE_ENV === 'development') {
135
135
  };
136
136
  }
137
137
 
138
+ function observablePersistRemoteSimple({ get, set }) {
139
+ return {
140
+ async get({ dateModified, onChange, onLoad }) {
141
+ const value = (await get({ dateModified }));
142
+ onChange({ value, dateModified: Date.now() });
143
+ onLoad();
144
+ },
145
+ async save({ valueAtPath, prevAtPath, path, pathTypes, value }) {
146
+ return set ? set({ valueAtPath, path, pathTypes, prevAtPath, value }) : {};
147
+ },
148
+ };
149
+ }
150
+
138
151
  const mapPersistences = new WeakMap();
139
152
  const persistState = state.observable({ inRemoteSync: false });
140
153
  const metadatas = new WeakMap();
141
154
  const promisesLocalSaves = new Set();
142
155
  function parseLocalConfig(config) {
143
- return state.isString(config) ? { table: config, config: { name: config } } : { table: config.name, config };
156
+ return config
157
+ ? state.isString(config)
158
+ ? { table: config, config: { name: config } }
159
+ : { table: config.name, config }
160
+ : {};
144
161
  }
145
162
  function doInOrder(arg1, arg2) {
146
163
  return state.isPromise(arg1) ? arg1.then(arg2) : arg2(arg1);
@@ -193,7 +210,9 @@ async function updateMetadataImmediate(obs, localState, obsState, persistOptions
193
210
  if (needsUpdate) {
194
211
  const metadata = Object.assign({}, oldMetadata, newMetadata);
195
212
  metadatas.set(obs, metadata);
196
- await persistenceLocal.updateMetadata(table, metadata, config);
213
+ if (persistenceLocal) {
214
+ await persistenceLocal.updateMetadata(table, metadata, config);
215
+ }
197
216
  if (modified) {
198
217
  obsState.dateModified.set(modified);
199
218
  }
@@ -349,6 +368,7 @@ async function doChange(changeInfo) {
349
368
  if (changesRemote.length > 0) {
350
369
  // Wait for remote to be ready before saving
351
370
  await state.when(() => obsState.isLoadedRemote.get() || (configRemote.allowSaveIfError && obsState.remoteError.get()));
371
+ const value = obs.peek();
352
372
  const saves = await Promise.all(changesRemote.map(async (change) => {
353
373
  const { path, valueAtPath, prevAtPath, pathTypes, pathStr } = change;
354
374
  // Save to remote persistence
@@ -361,6 +381,7 @@ async function doChange(changeInfo) {
361
381
  pathTypes,
362
382
  valueAtPath,
363
383
  prevAtPath,
384
+ value,
364
385
  })
365
386
  .then(({ changes, dateModified }) => ({ changes, dateModified, pathStr }));
366
387
  }));
@@ -513,7 +534,8 @@ async function loadLocal(obs, persistOptions, obsState, localState) {
513
534
  obsState.isLoadedLocal.set(true);
514
535
  }
515
536
  function persistObservable(obs, persistOptions) {
516
- const { remote, local } = persistOptions;
537
+ let { remote } = persistOptions;
538
+ const { local } = persistOptions;
517
539
  const remotePersistence = persistOptions.persistRemote || (observablePersistConfiguration === null || observablePersistConfiguration === void 0 ? void 0 : observablePersistConfiguration.persistRemote);
518
540
  const localState = {};
519
541
  const obsState = state.observable({
@@ -528,15 +550,25 @@ function persistObservable(obs, persistOptions) {
528
550
  if (local) {
529
551
  loadLocal(obs, persistOptions, obsState, localState);
530
552
  }
531
- if (remote) {
553
+ if (remote || remotePersistence) {
532
554
  if (!remotePersistence) {
533
555
  throw new Error('Remote persistence is not configured');
534
556
  }
535
- // Ensure there's only one instance of the persistence plugin
536
- if (!mapPersistences.has(remotePersistence)) {
537
- mapPersistences.set(remotePersistence, { persist: new remotePersistence() });
557
+ if (!remote) {
558
+ remote = {};
559
+ }
560
+ if (state.isObject(remotePersistence)) {
561
+ localState.persistenceRemote = observablePersistRemoteSimple(remotePersistence);
562
+ }
563
+ else {
564
+ // Ensure there's only one instance of the persistence plugin
565
+ if (!mapPersistences.has(remotePersistence)) {
566
+ mapPersistences.set(remotePersistence, {
567
+ persist: new remotePersistence(),
568
+ });
569
+ }
570
+ localState.persistenceRemote = mapPersistences.get(remotePersistence).persist;
538
571
  }
539
- localState.persistenceRemote = mapPersistences.get(remotePersistence).persist;
540
572
  let isSynced = false;
541
573
  const sync = async () => {
542
574
  var _a, _b;
@@ -544,7 +576,7 @@ function persistObservable(obs, persistOptions) {
544
576
  isSynced = true;
545
577
  localState.onSaveRemote = (_a = persistOptions.remote) === null || _a === void 0 ? void 0 : _a.onSaveRemote;
546
578
  const dateModified = (_b = metadatas.get(obs)) === null || _b === void 0 ? void 0 : _b.modified;
547
- localState.persistenceRemote.listen({
579
+ localState.persistenceRemote.get({
548
580
  state: obsState,
549
581
  obs,
550
582
  options: persistOptions,
@@ -552,7 +584,7 @@ function persistObservable(obs, persistOptions) {
552
584
  onLoad: () => {
553
585
  obsState.isLoadedRemote.set(true);
554
586
  },
555
- onChange: async ({ value, path, pathTypes, mode, dateModified }) => {
587
+ onChange: async ({ value, path = [], pathTypes = [], mode = 'set', dateModified }) => {
556
588
  // Note: value is the constructed value, path is used for setInObservableAtPath
557
589
  // to start the set into the observable from the path
558
590
  if (value !== undefined) {
@@ -633,7 +665,7 @@ function persistObservable(obs, persistOptions) {
633
665
  state.when(() => !local || obsState.isLoadedLocal.get(), sync);
634
666
  }
635
667
  }
636
- state.when(obsState.isLoadedLocal, function () {
668
+ state.when(!local || obsState.isLoadedLocal, function () {
637
669
  obs.onChange(onObsChange.bind(this, obs, obsState, localState, persistOptions));
638
670
  });
639
671
  return obsState;
package/persist.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"persist.js","sources":["../../src/persist/configureObservablePersistence.ts","../../src/persist/fieldTransformer.ts","../../src/persist/persistObservable.ts","../../persist.ts"],"sourcesContent":[null,null,null,null],"names":["symbolDelete","isString","isArray","isObject","constructObjectWithPath","deconstructObjectWithPath","observable","isPromise","when","isEmpty","mergeIntoObservable","internal","batch","setInObservableAtPath","setAtPath","internalState"],"mappings":"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"}
1
+ {"version":3,"file":"persist.js","sources":["../../src/persist/configureObservablePersistence.ts","../../src/persist/fieldTransformer.ts","../../src/persist/observablePersistRemoteSimple.ts","../../src/persist/persistObservable.ts","../../persist.ts"],"sourcesContent":[null,null,null,null,null],"names":["symbolDelete","isString","isArray","isObject","constructObjectWithPath","deconstructObjectWithPath","observable","isPromise","when","isEmpty","mergeIntoObservable","internal","batch","setInObservableAtPath","setAtPath","internalState"],"mappings":"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"}
package/persist.mjs CHANGED
@@ -133,12 +133,29 @@ if (process.env.NODE_ENV === 'development') {
133
133
  };
134
134
  }
135
135
 
136
+ function observablePersistRemoteSimple({ get, set }) {
137
+ return {
138
+ async get({ dateModified, onChange, onLoad }) {
139
+ const value = (await get({ dateModified }));
140
+ onChange({ value, dateModified: Date.now() });
141
+ onLoad();
142
+ },
143
+ async save({ valueAtPath, prevAtPath, path, pathTypes, value }) {
144
+ return set ? set({ valueAtPath, path, pathTypes, prevAtPath, value }) : {};
145
+ },
146
+ };
147
+ }
148
+
136
149
  const mapPersistences = new WeakMap();
137
150
  const persistState = observable({ inRemoteSync: false });
138
151
  const metadatas = new WeakMap();
139
152
  const promisesLocalSaves = new Set();
140
153
  function parseLocalConfig(config) {
141
- return isString(config) ? { table: config, config: { name: config } } : { table: config.name, config };
154
+ return config
155
+ ? isString(config)
156
+ ? { table: config, config: { name: config } }
157
+ : { table: config.name, config }
158
+ : {};
142
159
  }
143
160
  function doInOrder(arg1, arg2) {
144
161
  return isPromise(arg1) ? arg1.then(arg2) : arg2(arg1);
@@ -191,7 +208,9 @@ async function updateMetadataImmediate(obs, localState, obsState, persistOptions
191
208
  if (needsUpdate) {
192
209
  const metadata = Object.assign({}, oldMetadata, newMetadata);
193
210
  metadatas.set(obs, metadata);
194
- await persistenceLocal.updateMetadata(table, metadata, config);
211
+ if (persistenceLocal) {
212
+ await persistenceLocal.updateMetadata(table, metadata, config);
213
+ }
195
214
  if (modified) {
196
215
  obsState.dateModified.set(modified);
197
216
  }
@@ -347,6 +366,7 @@ async function doChange(changeInfo) {
347
366
  if (changesRemote.length > 0) {
348
367
  // Wait for remote to be ready before saving
349
368
  await when(() => obsState.isLoadedRemote.get() || (configRemote.allowSaveIfError && obsState.remoteError.get()));
369
+ const value = obs.peek();
350
370
  const saves = await Promise.all(changesRemote.map(async (change) => {
351
371
  const { path, valueAtPath, prevAtPath, pathTypes, pathStr } = change;
352
372
  // Save to remote persistence
@@ -359,6 +379,7 @@ async function doChange(changeInfo) {
359
379
  pathTypes,
360
380
  valueAtPath,
361
381
  prevAtPath,
382
+ value,
362
383
  })
363
384
  .then(({ changes, dateModified }) => ({ changes, dateModified, pathStr }));
364
385
  }));
@@ -511,7 +532,8 @@ async function loadLocal(obs, persistOptions, obsState, localState) {
511
532
  obsState.isLoadedLocal.set(true);
512
533
  }
513
534
  function persistObservable(obs, persistOptions) {
514
- const { remote, local } = persistOptions;
535
+ let { remote } = persistOptions;
536
+ const { local } = persistOptions;
515
537
  const remotePersistence = persistOptions.persistRemote || (observablePersistConfiguration === null || observablePersistConfiguration === void 0 ? void 0 : observablePersistConfiguration.persistRemote);
516
538
  const localState = {};
517
539
  const obsState = observable({
@@ -526,15 +548,25 @@ function persistObservable(obs, persistOptions) {
526
548
  if (local) {
527
549
  loadLocal(obs, persistOptions, obsState, localState);
528
550
  }
529
- if (remote) {
551
+ if (remote || remotePersistence) {
530
552
  if (!remotePersistence) {
531
553
  throw new Error('Remote persistence is not configured');
532
554
  }
533
- // Ensure there's only one instance of the persistence plugin
534
- if (!mapPersistences.has(remotePersistence)) {
535
- mapPersistences.set(remotePersistence, { persist: new remotePersistence() });
555
+ if (!remote) {
556
+ remote = {};
557
+ }
558
+ if (isObject(remotePersistence)) {
559
+ localState.persistenceRemote = observablePersistRemoteSimple(remotePersistence);
560
+ }
561
+ else {
562
+ // Ensure there's only one instance of the persistence plugin
563
+ if (!mapPersistences.has(remotePersistence)) {
564
+ mapPersistences.set(remotePersistence, {
565
+ persist: new remotePersistence(),
566
+ });
567
+ }
568
+ localState.persistenceRemote = mapPersistences.get(remotePersistence).persist;
536
569
  }
537
- localState.persistenceRemote = mapPersistences.get(remotePersistence).persist;
538
570
  let isSynced = false;
539
571
  const sync = async () => {
540
572
  var _a, _b;
@@ -542,7 +574,7 @@ function persistObservable(obs, persistOptions) {
542
574
  isSynced = true;
543
575
  localState.onSaveRemote = (_a = persistOptions.remote) === null || _a === void 0 ? void 0 : _a.onSaveRemote;
544
576
  const dateModified = (_b = metadatas.get(obs)) === null || _b === void 0 ? void 0 : _b.modified;
545
- localState.persistenceRemote.listen({
577
+ localState.persistenceRemote.get({
546
578
  state: obsState,
547
579
  obs,
548
580
  options: persistOptions,
@@ -550,7 +582,7 @@ function persistObservable(obs, persistOptions) {
550
582
  onLoad: () => {
551
583
  obsState.isLoadedRemote.set(true);
552
584
  },
553
- onChange: async ({ value, path, pathTypes, mode, dateModified }) => {
585
+ onChange: async ({ value, path = [], pathTypes = [], mode = 'set', dateModified }) => {
554
586
  // Note: value is the constructed value, path is used for setInObservableAtPath
555
587
  // to start the set into the observable from the path
556
588
  if (value !== undefined) {
@@ -631,7 +663,7 @@ function persistObservable(obs, persistOptions) {
631
663
  when(() => !local || obsState.isLoadedLocal.get(), sync);
632
664
  }
633
665
  }
634
- when(obsState.isLoadedLocal, function () {
666
+ when(!local || obsState.isLoadedLocal, function () {
635
667
  obs.onChange(onObsChange.bind(this, obs, obsState, localState, persistOptions));
636
668
  });
637
669
  return obsState;
package/persist.mjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"persist.mjs","sources":["../../src/persist/configureObservablePersistence.ts","../../src/persist/fieldTransformer.ts","../../src/persist/persistObservable.ts","../../persist.ts"],"sourcesContent":[null,null,null,null],"names":["internal","internalState"],"mappings":"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"}
1
+ {"version":3,"file":"persist.mjs","sources":["../../src/persist/configureObservablePersistence.ts","../../src/persist/fieldTransformer.ts","../../src/persist/observablePersistRemoteSimple.ts","../../src/persist/persistObservable.ts","../../persist.ts"],"sourcesContent":[null,null,null,null,null],"names":["internal","internalState"],"mappings":"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"}
@@ -161,7 +161,7 @@ export interface PersistOptions<T = any> {
161
161
  local?: string | PersistOptionsLocal<T>;
162
162
  remote?: PersistOptionsRemote<T>;
163
163
  persistLocal?: ClassConstructor<ObservablePersistLocal>;
164
- persistRemote?: ClassConstructor<ObservablePersistRemote>;
164
+ persistRemote?: ClassConstructor<ObservablePersistRemote> | ObservablePersistRemoteSimple<T>;
165
165
  }
166
166
  export interface PersistMetadata {
167
167
  id?: '__legend_metadata';
@@ -179,35 +179,51 @@ export interface ObservablePersistLocal {
179
179
  deleteMetadata(table: string, config: PersistOptionsLocal): Promise<any> | void;
180
180
  loadTable?(table: string, config: PersistOptionsLocal): Promise<any> | void;
181
181
  }
182
- export interface ObservablePersistRemoteSaveParams<T, T2> {
182
+ export interface ObservablePersistRemoteSaveParams<T> {
183
183
  state: Observable<ObservablePersistState>;
184
184
  obs: Observable<T>;
185
185
  options: PersistOptions<T>;
186
186
  path: string[];
187
187
  pathTypes: TypeAtPath[];
188
- valueAtPath: T2;
188
+ valueAtPath: unknown;
189
189
  prevAtPath: any;
190
+ value: T;
190
191
  }
191
- export interface ObservablePersistRemoteListenParams<T> {
192
+ export interface ObservablePersistRemoteGetParams<T> {
192
193
  state: Observable<ObservablePersistState>;
193
194
  obs: ObservableReadable<T>;
194
195
  options: PersistOptions<T>;
195
196
  dateModified?: number;
196
197
  onLoad: () => void;
197
198
  onChange: (params: {
198
- value: T;
199
- path: string[];
200
- pathTypes: TypeAtPath[];
201
- mode: 'assign' | 'set' | 'dateModified';
199
+ value: unknown;
200
+ path?: string[];
201
+ pathTypes?: TypeAtPath[];
202
+ mode?: 'assign' | 'set' | 'dateModified';
202
203
  dateModified: number | undefined;
203
204
  }) => void | Promise<void>;
204
205
  }
205
206
  export interface ObservablePersistRemote {
206
- save<T, T2>(params: ObservablePersistRemoteSaveParams<T, T2>): Promise<{
207
+ get<T>(params: ObservablePersistRemoteGetParams<T>): void;
208
+ save<T>(params: ObservablePersistRemoteSaveParams<T>): Promise<{
207
209
  changes?: object;
208
210
  dateModified?: number;
209
211
  }>;
210
- listen<T>(params: ObservablePersistRemoteListenParams<T>): void;
212
+ }
213
+ export interface ObservablePersistRemoteSimple<T> {
214
+ get(params: {
215
+ dateModified?: number;
216
+ }): Promise<T>;
217
+ set?(value: {
218
+ value: T;
219
+ valueAtPath: any;
220
+ prevAtPath: any;
221
+ path: string[];
222
+ pathTypes: string[];
223
+ }): Promise<{
224
+ changes?: object | undefined;
225
+ dateModified?: number;
226
+ }>;
211
227
  }
212
228
  export interface ObservablePersistState {
213
229
  isLoadedLocal: boolean;
@@ -335,7 +351,7 @@ export interface ObservablePersistenceConfigLocalOptions {
335
351
  }
336
352
  export interface ObservablePersistenceConfig {
337
353
  persistLocal?: ClassConstructor<ObservablePersistLocal>;
338
- persistRemote?: ClassConstructor<ObservablePersistRemote>;
354
+ persistRemote?: ClassConstructor<ObservablePersistRemote> | ObservablePersistRemoteSimple<any>;
339
355
  persistLocalOptions?: ObservablePersistenceConfigLocalOptions;
340
356
  saveTimeout?: number;
341
357
  dateModifiedKey?: string;
@@ -0,0 +1,2 @@
1
+ import type { ObservablePersistRemote, ObservablePersistRemoteSimple } from '@legendapp/state';
2
+ export declare function observablePersistRemoteSimple<T>({ get, set }: ObservablePersistRemoteSimple<T>): ObservablePersistRemote;
@@ -1,3 +1,3 @@
1
1
  import { Selector } from '@legendapp/state';
2
- import { UseSelectorOptions } from 'src/react/reactInterfaces';
2
+ import type { UseSelectorOptions } from './reactInterfaces';
3
3
  export declare function useSelector<T>(selector: Selector<T>, options?: UseSelectorOptions): T;