@furystack/shades 8.0.9 → 8.0.10
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"location-service.d.ts","sourceRoot":"","sources":["../../src/services/location-service.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAClD,OAAO,EAAE,eAAe,EAAS,MAAM,kBAAkB,CAAA;AAGzD,qBACa,eAAgB,YAAW,UAAU;IACzC,OAAO;IAWd;;OAEG;IACI,qBAAqB,0BAAuD;IAEnF;;OAEG;IACI,qBAAqB,0BAAqC;IAEjE;;OAEG;IACI,uBAAuB,0BAA+C;IAEtE,mCAAmC,uBAEzC;IAEM,4BAA4B,mDAEjC;IAEK,WAAW;IAMlB,SAAgB,sBAAsB,oCAA0C;IAEhF;;;;;OAKG;IACI,cAAc,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"location-service.d.ts","sourceRoot":"","sources":["../../src/services/location-service.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAClD,OAAO,EAAE,eAAe,EAAS,MAAM,kBAAkB,CAAA;AAGzD,qBACa,eAAgB,YAAW,UAAU;IACzC,OAAO;IAWd;;OAEG;IACI,qBAAqB,0BAAuD;IAEnF;;OAEG;IACI,qBAAqB,0BAAqC;IAEjE;;OAEG;IACI,uBAAuB,0BAA+C;IAEtE,mCAAmC,uBAEzC;IAEM,4BAA4B,mDAEjC;IAEK,WAAW;IAMlB,SAAgB,sBAAsB,oCAA0C;IAEhF;;;;;OAKG;IACI,cAAc,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC;IAuBrD,OAAO,CAAC,eAAe,CAAY;IACnC,OAAO,CAAC,kBAAkB,CAAY;;CAoBvC"}
|
|
@@ -33,7 +33,8 @@ export let LocationService = class LocationService {
|
|
|
33
33
|
* @returns An observable with the current value (or default value) of the search param
|
|
34
34
|
*/
|
|
35
35
|
useSearchParam(key, defaultValue) {
|
|
36
|
-
|
|
36
|
+
const existing = this.searchParamObservables.get(key);
|
|
37
|
+
if (!existing) {
|
|
37
38
|
const actualValue = this.onDeserializedLocationSearchChanged.getValue()[key] ?? defaultValue;
|
|
38
39
|
const newObservable = new ObservableValue(actualValue);
|
|
39
40
|
this.searchParamObservables.set(key, newObservable);
|
|
@@ -44,10 +45,11 @@ export let LocationService = class LocationService {
|
|
|
44
45
|
});
|
|
45
46
|
this.onDeserializedLocationSearchChanged.subscribe((search) => {
|
|
46
47
|
const value = search[key] ?? defaultValue;
|
|
47
|
-
this.searchParamObservables.get(key)?.setValue(value
|
|
48
|
+
this.searchParamObservables.get(key)?.setValue(value);
|
|
48
49
|
});
|
|
50
|
+
return newObservable;
|
|
49
51
|
}
|
|
50
|
-
return
|
|
52
|
+
return existing;
|
|
51
53
|
}
|
|
52
54
|
constructor() {
|
|
53
55
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"location-service.js","sourceRoot":"","sources":["../../src/services/location-service.tsx"],"names":[],"mappings":";;;;;;;;;AACA,OAAO,EAAE,eAAe,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAA;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAA;AAEzE,WAAM,eAAe,GAArB,MAAM,eAAe;IACnB,OAAO;QACZ,MAAM,CAAC,mBAAmB,CAAC,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,CAAA;QACxD,MAAM,CAAC,mBAAmB,CAAC,YAAY,EAAE,IAAI,CAAC,WAAW,CAAC,CAAA;QAC1D,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,CAAA;QAC9B,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,CAAA;QACjC,IAAI,CAAC,qBAAqB,CAAC,OAAO,EAAE,CAAA;QACpC,IAAI,CAAC,uBAAuB,CAAC,OAAO,EAAE,CAAA;QACtC,IAAI,CAAC,mCAAmC,CAAC,OAAO,EAAE,CAAA;QAClD,IAAI,CAAC,4BAA4B,CAAC,OAAO,EAAE,CAAA;IAC7C,CAAC;IAyBM,WAAW;QAChB,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;QACtD,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;QAClD,IAAI,CAAC,uBAAuB,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;IACxD,CAAC;IAID;;;;;OAKG;IACI,cAAc,CAAI,GAAW,EAAE,YAAe;QACnD,
|
|
1
|
+
{"version":3,"file":"location-service.js","sourceRoot":"","sources":["../../src/services/location-service.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@furystack/shades",
|
|
3
|
-
"version": "8.0.
|
|
3
|
+
"version": "8.0.10",
|
|
4
4
|
"description": "Google Authentication Provider for FuryStack",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"scripts": {
|
|
@@ -45,7 +45,7 @@
|
|
|
45
45
|
},
|
|
46
46
|
"dependencies": {
|
|
47
47
|
"@furystack/inject": "^8.0.8",
|
|
48
|
-
"@furystack/rest": "^5.0.
|
|
48
|
+
"@furystack/rest": "^5.0.10",
|
|
49
49
|
"@furystack/utils": "^4.0.8",
|
|
50
50
|
"path-to-regexp": "^6.2.1",
|
|
51
51
|
"semaphore-async-await": "^1.5.1"
|
|
@@ -5,6 +5,7 @@ global.TextDecoder = TextDecoder as any
|
|
|
5
5
|
|
|
6
6
|
import { Injector } from '@furystack/inject'
|
|
7
7
|
import { using } from '@furystack/utils'
|
|
8
|
+
import { serializeValue } from '@furystack/rest'
|
|
8
9
|
import { LocationService } from './'
|
|
9
10
|
import { describe, it, expect, beforeEach, afterEach, vi } from 'vitest'
|
|
10
11
|
|
|
@@ -74,7 +75,7 @@ describe('LocationService', () => {
|
|
|
74
75
|
it('Should return the value from the query string', () => {
|
|
75
76
|
using(new Injector(), (i) => {
|
|
76
77
|
const service = i.getInstance(LocationService)
|
|
77
|
-
history.pushState(null, '',
|
|
78
|
+
history.pushState(null, '', `/loc1?test=${serializeValue(1)}`)
|
|
78
79
|
const testSearchParam = service.useSearchParam('test', 123)
|
|
79
80
|
expect(testSearchParam.getValue()).toBe(1)
|
|
80
81
|
})
|
|
@@ -83,10 +84,10 @@ describe('LocationService', () => {
|
|
|
83
84
|
it('should update the observable value on push / replace states', () => {
|
|
84
85
|
using(new Injector(), (i) => {
|
|
85
86
|
const service = i.getInstance(LocationService)
|
|
86
|
-
history.pushState(null, '',
|
|
87
|
+
history.pushState(null, '', `/loc1?test=${serializeValue(1)}`)
|
|
87
88
|
const testSearchParam = service.useSearchParam('test', 234)
|
|
88
89
|
expect(testSearchParam.getValue()).toBe(1)
|
|
89
|
-
history.replaceState(null, '',
|
|
90
|
+
history.replaceState(null, '', `/loc1?test=${serializeValue('2')}`)
|
|
90
91
|
expect(testSearchParam.getValue()).toBe('2')
|
|
91
92
|
})
|
|
92
93
|
})
|
|
@@ -94,10 +95,10 @@ describe('LocationService', () => {
|
|
|
94
95
|
it('Should update the URL based on search value change', () => {
|
|
95
96
|
using(new Injector(), (i) => {
|
|
96
97
|
const service = i.getInstance(LocationService)
|
|
97
|
-
history.pushState(null, '',
|
|
98
|
+
history.pushState(null, '', `/loc1?test=${serializeValue('2')}`)
|
|
98
99
|
const testSearchParam = service.useSearchParam('test', '')
|
|
99
100
|
testSearchParam.setValue('2')
|
|
100
|
-
expect(location.search).toBe('?test=
|
|
101
|
+
expect(location.search).toBe('?test=IjIi')
|
|
101
102
|
})
|
|
102
103
|
})
|
|
103
104
|
})
|
|
@@ -53,7 +53,9 @@ export class LocationService implements Disposable {
|
|
|
53
53
|
* @returns An observable with the current value (or default value) of the search param
|
|
54
54
|
*/
|
|
55
55
|
public useSearchParam<T>(key: string, defaultValue: T) {
|
|
56
|
-
|
|
56
|
+
const existing = this.searchParamObservables.get(key)
|
|
57
|
+
|
|
58
|
+
if (!existing) {
|
|
57
59
|
const actualValue = (this.onDeserializedLocationSearchChanged.getValue()[key] as T) ?? defaultValue
|
|
58
60
|
const newObservable = new ObservableValue(actualValue)
|
|
59
61
|
this.searchParamObservables.set(key, newObservable)
|
|
@@ -66,10 +68,11 @@ export class LocationService implements Disposable {
|
|
|
66
68
|
|
|
67
69
|
this.onDeserializedLocationSearchChanged.subscribe((search) => {
|
|
68
70
|
const value = (search[key] as T) ?? defaultValue
|
|
69
|
-
this.searchParamObservables.get(key)?.setValue(
|
|
71
|
+
this.searchParamObservables.get(key)?.setValue(value as T)
|
|
70
72
|
})
|
|
73
|
+
return newObservable
|
|
71
74
|
}
|
|
72
|
-
return
|
|
75
|
+
return existing as ObservableValue<T>
|
|
73
76
|
}
|
|
74
77
|
|
|
75
78
|
private pushStateTracer: Disposable
|