@plumile/router 0.1.19 → 0.1.21
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/README.md +110 -180
- package/lib/esm/eslint-rules/no-direct-window-location-search.js +3 -3
- package/lib/esm/index.d.ts +0 -1
- package/lib/esm/index.d.ts.map +1 -1
- package/lib/esm/index.js +1 -2
- package/lib/esm/routing/Link.d.ts.map +1 -1
- package/lib/esm/routing/Link.js +14 -25
- package/lib/esm/routing/RouteComponentWrapper.js +2 -2
- package/lib/esm/routing/createRouter.d.ts.map +1 -1
- package/lib/esm/routing/createRouter.js +82 -108
- package/lib/esm/routing/index.d.ts +1 -1
- package/lib/esm/routing/index.d.ts.map +1 -1
- package/lib/esm/routing/index.js +2 -2
- package/lib/esm/routing/useAllQuery.js +1 -1
- package/lib/esm/routing/useFilters.js +10 -10
- package/lib/esm/routing/useQueryState.d.ts.map +1 -1
- package/lib/esm/routing/useQueryState.js +10 -45
- package/lib/esm/tools/buildCombinedSearch.d.ts +1 -5
- package/lib/esm/tools/buildCombinedSearch.d.ts.map +1 -1
- package/lib/esm/tools/buildCombinedSearch.js +6 -15
- package/lib/esm/tools.d.ts +2 -6
- package/lib/esm/tools.d.ts.map +1 -1
- package/lib/esm/tools.js +1 -1
- package/lib/esm/type-tests/query-infer.test-d.d.ts.map +1 -1
- package/lib/esm/type-tests/query-infer.test-d.js +2 -49
- package/lib/esm/type-tests/routes-inference.test-d.d.ts +0 -1
- package/lib/esm/type-tests/routes-inference.test-d.js +2 -49
- package/lib/esm/types.d.ts +2 -16
- package/lib/esm/types.d.ts.map +1 -1
- package/lib/esm/types.js +1 -1
- package/lib/tsconfig.esm.tsbuildinfo +1 -1
- package/lib/types/index.d.ts +0 -1
- package/lib/types/index.d.ts.map +1 -1
- package/lib/types/routing/Link.d.ts.map +1 -1
- package/lib/types/routing/createRouter.d.ts.map +1 -1
- package/lib/types/routing/index.d.ts +1 -1
- package/lib/types/routing/index.d.ts.map +1 -1
- package/lib/types/routing/useQueryState.d.ts.map +1 -1
- package/lib/types/tools/buildCombinedSearch.d.ts +1 -5
- package/lib/types/tools/buildCombinedSearch.d.ts.map +1 -1
- package/lib/types/tools.d.ts +2 -6
- package/lib/types/tools.d.ts.map +1 -1
- package/lib/types/type-tests/query-infer.test-d.d.ts.map +1 -1
- package/lib/types/type-tests/routes-inference.test-d.d.ts +0 -1
- package/lib/types/types.d.ts +2 -16
- package/lib/types/types.d.ts.map +1 -1
- package/package.json +4 -4
- package/lib/esm/routing/useTypedQuery.d.ts +0 -2
- package/lib/esm/routing/useTypedQuery.d.ts.map +0 -1
- package/lib/esm/routing/useTypedQuery.js +0 -36
- package/lib/esm/tools/buildSearch.d.ts +0 -6
- package/lib/esm/tools/buildSearch.d.ts.map +0 -1
- package/lib/esm/tools/buildSearch.js +0 -60
- package/lib/esm/tools/query-dsl.d.ts +0 -28
- package/lib/esm/tools/query-dsl.d.ts.map +0 -1
- package/lib/esm/tools/query-dsl.js +0 -250
- package/lib/types/routing/useTypedQuery.d.ts +0 -2
- package/lib/types/routing/useTypedQuery.d.ts.map +0 -1
- package/lib/types/tools/buildSearch.d.ts +0 -6
- package/lib/types/tools/buildSearch.d.ts.map +0 -1
- package/lib/types/tools/query-dsl.d.ts +0 -28
- package/lib/types/tools/query-dsl.d.ts.map +0 -1
|
@@ -5,9 +5,9 @@ export { default as RouteComponentWrapper } from './RouteComponentWrapper.js';
|
|
|
5
5
|
export { default as RouterRenderer } from './RouterRenderer.js';
|
|
6
6
|
export { default as RoutingContext } from './RoutingContext.js';
|
|
7
7
|
export { default as useQuery } from './useQuery.js';
|
|
8
|
-
export { default as useTypedQuery } from './useTypedQuery.js';
|
|
9
8
|
export { default as useNavigate } from './useNavigate.js';
|
|
10
9
|
export { default as useQueryState } from './useQueryState.js';
|
|
11
10
|
export { default as useFilters } from './useFilters.js';
|
|
12
11
|
export { default as useFilterDiagnostics } from './useFilterDiagnostics.js';
|
|
12
|
+
export { default as buildCombinedSearch } from '../tools/buildCombinedSearch.js';
|
|
13
13
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/routing/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/routing/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAI5D,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,WAAW,CAAC;AAG5C,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAGhE,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAG9E,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAGhE,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAEhE,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,eAAe,CAAC;AAGpD,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE1D,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAE9D,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAExD,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAG5E,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,iCAAiC,CAAC"}
|
package/lib/esm/routing/index.js
CHANGED
|
@@ -5,9 +5,9 @@ export { default as RouteComponentWrapper } from './RouteComponentWrapper.js';
|
|
|
5
5
|
export { default as RouterRenderer } from './RouterRenderer.js';
|
|
6
6
|
export { default as RoutingContext } from './RoutingContext.js';
|
|
7
7
|
export { default as useQuery } from './useQuery.js';
|
|
8
|
-
export { default as useTypedQuery } from './useTypedQuery.js';
|
|
9
8
|
export { default as useNavigate } from './useNavigate.js';
|
|
10
9
|
export { default as useQueryState } from './useQueryState.js';
|
|
11
10
|
export { default as useFilters } from './useFilters.js';
|
|
12
11
|
export { default as useFilterDiagnostics } from './useFilterDiagnostics.js';
|
|
13
|
-
|
|
12
|
+
export { default as buildCombinedSearch } from '../tools/buildCombinedSearch.js';
|
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcm91dGluZy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsT0FBTyxJQUFJLFlBQVksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBSTVELE9BQU8sRUFBRSxPQUFPLElBQUksSUFBSSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRzVDLE9BQU8sRUFBRSxPQUFPLElBQUksY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFHaEUsT0FBTyxFQUFFLE9BQU8sSUFBSSxxQkFBcUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRzlFLE9BQU8sRUFBRSxPQUFPLElBQUksY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFHaEUsT0FBTyxFQUFFLE9BQU8sSUFBSSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUVoRSxPQUFPLEVBQUUsT0FBTyxJQUFJLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUdwRCxPQUFPLEVBQUUsT0FBTyxJQUFJLFdBQVcsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRTFELE9BQU8sRUFBRSxPQUFPLElBQUksYUFBYSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFOUQsT0FBTyxFQUFFLE9BQU8sSUFBSSxVQUFVLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUV4RCxPQUFPLEVBQUUsT0FBTyxJQUFJLG9CQUFvQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFHNUUsT0FBTyxFQUFFLE9BQU8sSUFBSSxtQkFBbUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gTWFpbiByb3V0ZXIgZmFjdG9yeSBmdW5jdGlvblxuZXhwb3J0IHsgZGVmYXVsdCBhcyBjcmVhdGVSb3V0ZXIgfSBmcm9tICcuL2NyZWF0ZVJvdXRlci5qcyc7XG5cbi8vIE5hdmlnYXRpb24gY29tcG9uZW50IHdpdGggcHJlbG9hZGluZyBzdXBwb3J0XG4vLyBTdGFuZGFyZCAuanMgc3BlY2lmaWVyIChidWlsZCBwaXBlbGluZSByZXdyaXRlcyBmcm9tIFRTIHNvdXJjZSlcbmV4cG9ydCB7IGRlZmF1bHQgYXMgTGluayB9IGZyb20gJy4vTGluay5qcyc7XG5cbi8vIFJvdXRlIGNvbXBvbmVudCB3cmFwcGVyIGZvciBoYW5kbGluZyBpbmRpdmlkdWFsIHJvdXRlc1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBSb3V0ZUNvbXBvbmVudCB9IGZyb20gJy4vUm91dGVDb21wb25lbnQuanMnO1xuXG4vLyBJbnRlcm5hbCB3cmFwcGVyIGNvbXBvbmVudCBmb3Igcm91dGUgcmVuZGVyaW5nXG5leHBvcnQgeyBkZWZhdWx0IGFzIFJvdXRlQ29tcG9uZW50V3JhcHBlciB9IGZyb20gJy4vUm91dGVDb21wb25lbnRXcmFwcGVyLmpzJztcblxuLy8gTWFpbiByZW5kZXJlciBjb21wb25lbnQgdGhhdCBkaXNwbGF5cyBjdXJyZW50IHJvdXRlXG5leHBvcnQgeyBkZWZhdWx0IGFzIFJvdXRlclJlbmRlcmVyIH0gZnJvbSAnLi9Sb3V0ZXJSZW5kZXJlci5qcyc7XG5cbi8vIFJlYWN0IGNvbnRleHQgZm9yIHNoYXJpbmcgcm91dGVyIHN0YXRlXG5leHBvcnQgeyBkZWZhdWx0IGFzIFJvdXRpbmdDb250ZXh0IH0gZnJvbSAnLi9Sb3V0aW5nQ29udGV4dC5qcyc7XG4vLyBIb29rIHRvIGFjY2VzcyByYXcgcXVlcnkgcGFyYW1ldGVyc1xuZXhwb3J0IHsgZGVmYXVsdCBhcyB1c2VRdWVyeSB9IGZyb20gJy4vdXNlUXVlcnkuanMnO1xuLy8gSG9vayB0byBhY2Nlc3MgdHlwZWQgcXVlcnkgcGFyYW1ldGVyc1xuLy8gSG9vayB0byBuYXZpZ2F0ZSBwcm9ncmFtbWF0aWNhbGx5XG5leHBvcnQgeyBkZWZhdWx0IGFzIHVzZU5hdmlnYXRlIH0gZnJvbSAnLi91c2VOYXZpZ2F0ZS5qcyc7XG4vLyBIb29rIHRvIGJpbmQgYSBzcGVjaWZpYyBxdWVyeSBwYXJhbSB0byBjb21wb25lbnQgc3RhdGVcbmV4cG9ydCB7IGRlZmF1bHQgYXMgdXNlUXVlcnlTdGF0ZSB9IGZyb20gJy4vdXNlUXVlcnlTdGF0ZS5qcyc7XG4vLyBIb29rIHRvIGFjY2VzcyBhbmQgbXV0YXRlIGZpbHRlcnNcbmV4cG9ydCB7IGRlZmF1bHQgYXMgdXNlRmlsdGVycyB9IGZyb20gJy4vdXNlRmlsdGVycy5qcyc7XG4vLyBIb29rIHRvIGFjY2VzcyBmaWx0ZXIgZGlhZ25vc3RpY3NcbmV4cG9ydCB7IGRlZmF1bHQgYXMgdXNlRmlsdGVyRGlhZ25vc3RpY3MgfSBmcm9tICcuL3VzZUZpbHRlckRpYWdub3N0aWNzLmpzJztcblxuLy8gUHVibGljIGhlbHBlciBmb3IgdW5pZmllZCBmaWx0ZXItYmFzZWQgc2VhcmNoIGJ1aWxkaW5nIChQaGFzZSAyKVxuZXhwb3J0IHsgZGVmYXVsdCBhcyBidWlsZENvbWJpbmVkU2VhcmNoIH0gZnJvbSAnLi4vdG9vbHMvYnVpbGRDb21iaW5lZFNlYXJjaC5qcyc7XG4iXX0=
|
|
@@ -28,4 +28,4 @@ export default function useAllQuery(opts = {}) {
|
|
|
28
28
|
}, [ctx, opts.replace]);
|
|
29
29
|
return [rawQuery, setValue];
|
|
30
30
|
}
|
|
31
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlQWxsUXVlcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcm91dGluZy91c2VBbGxRdWVyeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFFLFVBQVUsRUFBRSxNQUFNLE9BQU8sQ0FBQztBQUNoRCxPQUFPLGNBQWMsTUFBTSxxQkFBcUIsQ0FBQztBQWlCakQsTUFBTSxDQUFDLE9BQU8sVUFBVSxXQUFXLENBQ2pDLE9BQTJCLEVBQUU7SUFFN0IsTUFBTSxHQUFHLEdBQUcsVUFBVSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQ3ZDLE1BQU0sS0FBSyxHQUFHLEdBQUcsRUFBRSxHQUFHLEVBQUUsQ0FBQztJQUV6QixNQUFNLFFBQVEsR0FBRyxLQUFLLEVBQUUsS0FBSyxDQUFDO0lBRTlCLE1BQU0sUUFBUSxHQUFHLFdBQVcsQ0FDMUIsQ0FBQyxJQUFPLEVBQUUsT0FBK0IsRUFBRSxFQUFFO1FBQzNDLElBQUksR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO1lBQ2hCLE9BQU87UUFDVCxDQUFDO1FBQ0QsTUFBTSxPQUFPLEdBQUcsT0FBTyxFQUFFLE9BQU8sSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDO1FBQ2pELE1BQU0sUUFBUSxHQUFHLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUUzQixNQUFNLE1BQU0sR0FBRyxFQUFFLEdBQUcsUUFBUSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ3JDLE1BQU0sSUFBSSxHQUE0QixFQUFFLENBQUM7UUFDekMsS0FBSyxNQUFNLENBQUMsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7WUFDcEMsSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN0QixDQUFDO1FBQ0QsS0FBSyxNQUFNLENBQUMsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7WUFDbEMsTUFBTSxDQUFDLEdBQUksSUFBZ0MsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUMvQyxJQUFJLENBQUMsS0FBSyxTQUFTLEVBQUUsQ0FBQztnQkFFcEIsT0FBTyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDakIsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDZCxDQUFDO1FBQ0gsQ0FBQztRQUNELEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFDekMsQ0FBQyxFQUNELENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FDcEIsQ0FBQztJQUVGLE9BQU8sQ0FBQyxRQUFhLEVBQUUsUUFBUSxDQUFDLENBQUM7QUFDbkMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHVzZUNhbGxiYWNrLCB1c2VDb250ZXh0IH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IFJvdXRpbmdDb250ZXh0IGZyb20gJy4vUm91dGluZ0NvbnRleHQuanMnO1xuXG4vKiogT3B0aW9ucyBmb3IgdXNlQWxsUXVlcnkgKi9cbmV4cG9ydCB0eXBlIFVzZUFsbFF1ZXJ5T3B0aW9ucyA9IHtcbiAgLyoqIFJlcGxhY2UgaW5zdGVhZCBvZiBwdXNoIHdoZW4gdXBkYXRpbmcgKHByZXZlbnRzIG5ldyBoaXN0b3J5IGVudHJ5KSAqL1xuICByZXBsYWNlPzogYm9vbGVhbjtcbn07XG5cbi8qKlxuICogQmlkaXJlY3Rpb25hbCBzdGF0ZSDihpQgVVJMIHN5bmNocm9uaXphdGlvbiBmb3IgYSBzaW5nbGUgcXVlcnkgcGFyYW0uXG4gKlxuICogQmVoYXZpb3VyczpcbiAqIC0gUmVhZHMgZnJvbSB0eXBlZFF1ZXJ5IChpZiBzY2hlbWEgcHJlc2VudCkgZWxzZSByYXcgcXVlcnkgYWdncmVnYXRpb24uXG4gKiAtIFdoZW4gc2V0dGluZyB2YWx1ZSB0byB1bmRlZmluZWQgKG9yIGRlZmF1bHQgd2l0aCBvbWl0SWZEZWZhdWx0KSB0aGUga2V5IGlzIHJlbW92ZWQuXG4gKiAtIFNlcmlhbGl6ZXMgdmlhIG5hdmlnYXRlICsgdW5pZmllZCBidWlsZENvbWJpbmVkU2VhcmNoIChzY2hlbWEgb3JkZXJpbmcgJiBvbWlzc2lvbiByZXNwZWN0ZWQpLlxuICogLSBTdGFibGUgaWRlbnRpdHkgZm9yIHNldHRlci5cbiAqL1xuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdXNlQWxsUXVlcnk8VCBleHRlbmRzIFJlY29yZDxzdHJpbmcsIHVua25vd24+PihcbiAgb3B0czogVXNlQWxsUXVlcnlPcHRpb25zID0ge30sXG4pOiBbVCB8IHVuZGVmaW5lZCwgKG5leHQ6IFQsIG5hdk9wdHM/OiB7IHJlcGxhY2U/OiBib29sZWFuIH0pID0+IHZvaWRdIHtcbiAgY29uc3QgY3R4ID0gdXNlQ29udGV4dChSb3V0aW5nQ29udGV4dCk7XG4gIGNvbnN0IGVudHJ5ID0gY3R4Py5nZXQoKTtcblxuICBjb25zdCByYXdRdWVyeSA9IGVudHJ5Py5xdWVyeTtcblxuICBjb25zdCBzZXRWYWx1ZSA9IHVzZUNhbGxiYWNrKFxuICAgIChuZXh0OiBULCBuYXZPcHRzPzogeyByZXBsYWNlPzogYm9vbGVhbiB9KSA9PiB7XG4gICAgICBpZiAoY3R4ID09IG51bGwpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgY29uc3QgcmVwbGFjZSA9IG5hdk9wdHM/LnJlcGxhY2UgPz8gb3B0cy5yZXBsYWNlO1xuICAgICAgY29uc3QgZW50cnlOb3cgPSBjdHguZ2V0KCk7XG4gICAgICAvLyBCYXNlIG9iamVjdDogc3RhcnQgZnJvbSBleGlzdGluZyB0eXBlZFF1ZXJ5IGlmIHByZXNlbnQgZWxzZSByYXcgcXVlcnkgY2xvbmVcbiAgICAgIGNvbnN0IHNvdXJjZSA9IHsgLi4uZW50cnlOb3cucXVlcnkgfTtcbiAgICAgIGNvbnN0IGJhc2U6IFJlY29yZDxzdHJpbmcsIHVua25vd24+ID0ge307XG4gICAgICBmb3IgKGNvbnN0IGsgb2YgT2JqZWN0LmtleXMoc291cmNlKSkge1xuICAgICAgICBiYXNlW2tdID0gc291cmNlW2tdO1xuICAgICAgfVxuICAgICAgZm9yIChjb25zdCBrIG9mIE9iamVjdC5rZXlzKG5leHQpKSB7XG4gICAgICAgIGNvbnN0IHYgPSAobmV4dCBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPilba107XG4gICAgICAgIGlmICh2ID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWR5bmFtaWMtZGVsZXRlXG4gICAgICAgICAgZGVsZXRlIGJhc2Vba107XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgYmFzZVtrXSA9IHY7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGN0eC5uYXZpZ2F0ZSh7IHF1ZXJ5OiBiYXNlLCByZXBsYWNlIH0pO1xuICAgIH0sXG4gICAgW2N0eCwgb3B0cy5yZXBsYWNlXSxcbiAgKTtcblxuICByZXR1cm4gW3Jhd1F1ZXJ5IGFzIFQsIHNldFZhbHVlXTtcbn1cbiJdfQ==
|
|
@@ -24,12 +24,12 @@ export default function useFilters() {
|
|
|
24
24
|
const ctx = useContext(RoutingContext);
|
|
25
25
|
const entry = ctx?.get();
|
|
26
26
|
const route = entry?.route;
|
|
27
|
-
const
|
|
27
|
+
const querySchema = useMemo(() => {
|
|
28
28
|
if (route == null)
|
|
29
29
|
return undefined;
|
|
30
30
|
const collected = [];
|
|
31
31
|
for (const r of route.route.routes) {
|
|
32
|
-
const maybe = r.
|
|
32
|
+
const maybe = r.querySchema;
|
|
33
33
|
if (maybe != null && typeof maybe === 'object') {
|
|
34
34
|
collected.push(maybe);
|
|
35
35
|
}
|
|
@@ -41,7 +41,7 @@ export default function useFilters() {
|
|
|
41
41
|
const currentFilters = useMemo(() => {
|
|
42
42
|
return entry?.filters ?? {};
|
|
43
43
|
}, [entry?.filters]);
|
|
44
|
-
const query = entry?.
|
|
44
|
+
const query = entry?.query;
|
|
45
45
|
const actions = useMemo(() => {
|
|
46
46
|
function navigateWith(nextFilters, replace) {
|
|
47
47
|
if (ctx == null)
|
|
@@ -52,32 +52,32 @@ export default function useFilters() {
|
|
|
52
52
|
}
|
|
53
53
|
return {
|
|
54
54
|
set(field, operator, value, opts) {
|
|
55
|
-
if (
|
|
55
|
+
if (querySchema == null)
|
|
56
56
|
return;
|
|
57
|
-
const next = setFilter(currentFilters,
|
|
57
|
+
const next = setFilter(currentFilters, querySchema, field, operator, value);
|
|
58
58
|
navigateWith(next, opts?.replace);
|
|
59
59
|
},
|
|
60
60
|
remove(field, operator, opts) {
|
|
61
|
-
if (
|
|
61
|
+
if (querySchema == null)
|
|
62
62
|
return;
|
|
63
63
|
const next = removeFilterOp(currentFilters, field, operator);
|
|
64
64
|
navigateWith(next, opts?.replace);
|
|
65
65
|
},
|
|
66
66
|
merge(patch, opts) {
|
|
67
|
-
if (
|
|
67
|
+
if (querySchema == null)
|
|
68
68
|
return;
|
|
69
69
|
const next = mergeFilters(currentFilters, patch);
|
|
70
70
|
navigateWith(next, opts?.replace);
|
|
71
71
|
},
|
|
72
72
|
clear(opts) {
|
|
73
|
-
if (
|
|
73
|
+
if (querySchema == null)
|
|
74
74
|
return;
|
|
75
75
|
if (isEmpty(currentFilters))
|
|
76
76
|
return;
|
|
77
77
|
navigateWith({}, opts?.replace);
|
|
78
78
|
},
|
|
79
79
|
};
|
|
80
|
-
}, [ctx, currentFilters,
|
|
80
|
+
}, [ctx, currentFilters, querySchema, query]);
|
|
81
81
|
return [currentFilters, actions];
|
|
82
82
|
}
|
|
83
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
83
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlRmlsdGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9yb3V0aW5nL3VzZUZpbHRlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsTUFBTSxPQUFPLENBQUM7QUFDNUMsT0FBTyxjQUFjLE1BQU0scUJBQXFCLENBQUM7QUFFakQsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLElBQUksY0FBYyxFQUM5QixZQUFZLEVBQ1osT0FBTyxHQUNSLE1BQU0sdUJBQXVCLENBQUM7QUFHL0IsU0FBUyxZQUFZLENBQUMsQ0FBVSxFQUFFLENBQVU7SUFDMUMsSUFBSSxDQUFDLEtBQUssQ0FBQztRQUFFLE9BQU8sSUFBSSxDQUFDO0lBQ3pCLElBQ0UsT0FBTyxDQUFDLEtBQUssUUFBUTtRQUNyQixDQUFDLEtBQUssSUFBSTtRQUNWLE9BQU8sQ0FBQyxLQUFLLFFBQVE7UUFDckIsQ0FBQyxLQUFLLElBQUksRUFDVixDQUFDO1FBQ0QsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBQ0QsTUFBTSxJQUFJLEdBQUcsQ0FBNEIsQ0FBQztJQUMxQyxNQUFNLElBQUksR0FBRyxDQUE0QixDQUFDO0lBQzFDLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDaEMsSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTTtRQUFFLE9BQU8sS0FBSyxDQUFDO0lBQzVELEtBQUssTUFBTSxDQUFDLElBQUksS0FBSztRQUFFLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUM7WUFBRSxPQUFPLEtBQUssQ0FBQztJQUM3RCxPQUFPLElBQUksQ0FBQztBQUNkLENBQUM7QUF1QkQsTUFBTSxDQUFDLE9BQU8sVUFBVSxVQUFVO0lBQ2hDLE1BQU0s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cUIsQ0FBQztvQkFBRSxPQUFPO2dCQUMzQyxZQUFZLENBQUMsRUFBRSxFQUFFLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQztZQUNsQyxDQUFDO1NBQ0YsQ0FBQztJQUNKLENBQUMsRUFBRSxDQUFDLEdBQUcsRUFBRSxjQUFjLEVBQUUsV0FBVyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFFOUMsT0FBTyxDQUFDLGNBQWMsRUFBRSxPQUFPLENBQUMsQ0FBQztBQUNuQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdXNlQ29udGV4dCwgdXNlTWVtbyB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBSb3V0aW5nQ29udGV4dCBmcm9tICcuL1JvdXRpbmdDb250ZXh0LmpzJztcbmltcG9ydCB0eXBlIHsgRmlsdGVyU2NoZW1hIH0gZnJvbSAnLi4vdHlwZXMuanMnO1xuaW1wb3J0IHtcbiAgc2V0RmlsdGVyLFxuICByZW1vdmVGaWx0ZXIgYXMgcmVtb3ZlRmlsdGVyT3AsXG4gIG1lcmdlRmlsdGVycyxcbiAgaXNFbXB0eSxcbn0gZnJvbSAnQHBsdW1pbGUvZmlsdGVyLXF1ZXJ5JztcblxuLyoqIEludGVybmFsIGhlbHBlcjogc2hhbGxvdyBlcXVhbGl0eSAqL1xuZnVuY3Rpb24gc2hhbGxvd0VxdWFsKGE6IHVua25vd24sIGI6IHVua25vd24pOiBib29sZWFuIHtcbiAgaWYgKGEgPT09IGIpIHJldHVybiB0cnVlO1xuICBpZiAoXG4gICAgdHlwZW9mIGEgIT09ICdvYmplY3QnIHx8XG4gICAgYSA9PT0gbnVsbCB8fFxuICAgIHR5cGVvZiBiICE9PSAnb2JqZWN0JyB8fFxuICAgIGIgPT09IG51bGxcbiAgKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG4gIGNvbnN0IGFPYmogPSBhIGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xuICBjb25zdCBiT2JqID0gYiBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcbiAgY29uc3QgYUtleXMgPSBPYmplY3Qua2V5cyhhT2JqKTtcbiAgaWYgKGFLZXlzLmxlbmd0aCAhPT0gT2JqZWN0LmtleXMoYk9iaikubGVuZ3RoKSByZXR1cm4gZmFsc2U7XG4gIGZvciAoY29uc3QgayBvZiBhS2V5cykgaWYgKGFPYmpba10gIT09IGJPYmpba10pIHJldHVybiBmYWxzZTtcbiAgcmV0dXJuIHRydWU7XG59XG5cbmV4cG9ydCB0eXBlIEZpbHRlckFjdGlvbnMgPSB7XG4gIHNldDogKFxuICAgIGZpZWxkOiBzdHJpbmcsXG4gICAgb3BlcmF0b3I6IHN0cmluZyxcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXJlZHVuZGFudC10eXBlLWNvbnN0aXR1ZW50c1xuICAgIHZhbHVlOiB1bmtub3duIHwgdW5kZWZpbmVkLFxuICAgIG9wdHM/OiB7IHJlcGxhY2U/OiBib29sZWFuIH0sXG4gICkgPT4gdm9pZDtcbiAgcmVtb3ZlOiAoXG4gICAgZmllbGQ6IHN0cmluZyxcbiAgICBvcGVyYXRvcj86IHN0cmluZyxcbiAgICBvcHRzPzogeyByZXBsYWNlPzogYm9vbGVhbiB9LFxuICApID0+IHZvaWQ7XG4gIG1lcmdlOiAocGF0Y2g6IFJlY29yZDxzdHJpbmcsIHVua25vd24+LCBvcHRzPzogeyByZXBsYWNlPzogYm9vbGVhbiB9KSA9PiB2b2lkO1xuICBjbGVhcjogKG9wdHM/OiB7IHJlcGxhY2U/OiBib29sZWFuIH0pID0+IHZvaWQ7XG59O1xuXG4vKipcbiAqIEhvb2sgcmV0dXJuaW5nIGN1cnJlbnQgZmlsdGVycyAodHlwZWQgaWYgc2NoZW1hIHByZXNlbnQpIGFuZCBhY3Rpb25zIHRvIG11dGF0ZSB0aGVtLlxuICogRmFsbGJhY2sgdG8gZW1wdHkgb2JqZWN0IHdoZW4gbm8gZmlsdGVyIHNjaGVtYS5cbiAqL1xuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdXNlRmlsdGVycygpOiBbUmVjb3JkPHN0cmluZywgdW5rbm93bj4sIEZpbHRlckFjdGlvbnNdIHtcbiAgY29uc3QgY3R4ID0gdXNlQ29udGV4dChSb3V0aW5nQ29udGV4dCk7XG4gIGNvbnN0IGVudHJ5ID0gY3R4Py5nZXQoKTtcbiAgY29uc3Qgcm91dGUgPSBlbnRyeT8ucm91dGU7XG4gIC8vIERpc2NvdmVyIGRlZXBlc3QgdW5pZmllZCBxdWVyeSBzY2hlbWEgKHdhcyBmaWx0ZXJTY2hlbWEgZHVyaW5nIG1pZ3JhdGlvbilcbiAgY29uc3QgcXVlcnlTY2hlbWE6IEZpbHRlclNjaGVtYSB8IHVuZGVmaW5lZCA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGlmIChyb3V0ZSA9PSBudWxsKSByZXR1cm4gdW5kZWZpbmVkO1xuICAgIGNvbnN0IGNvbGxlY3RlZDogRmlsdGVyU2NoZW1hW10gPSBbXTtcbiAgICBmb3IgKGNvbnN0IHIgb2Ygcm91dGUucm91dGUucm91dGVzKSB7XG4gICAgICBjb25zdCBtYXliZSA9IChyIGFzIHVua25vd24gYXMgeyBxdWVyeVNjaGVtYT86IHVua25vd24gfSkucXVlcnlTY2hlbWE7XG4gICAgICBpZiAobWF5YmUgIT0gbnVsbCAmJiB0eXBlb2YgbWF5YmUgPT09ICdvYmplY3QnKSB7XG4gICAgICAgIGNvbGxlY3RlZC5wdXNoKG1heWJlIGFzIEZpbHRlclNjaGVtYSk7XG4gICAgICB9XG4gICAgfVxuICAgIGlmIChjb2xsZWN0ZWQubGVuZ3RoID09PSAwKSByZXR1cm4gdW5kZWZpbmVkO1xuICAgIHJldHVybiBjb2xsZWN0ZWQuYXQoLTEpO1xuICB9LCBbcm91dGVdKTtcblxuICBjb25zdCBjdXJyZW50RmlsdGVyczogUmVjb3JkPHN0cmluZywgdW5rbm93bj4gPSB1c2VNZW1vKCgpID0+IHtcbiAgICByZXR1cm4gZW50cnk/LmZpbHRlcnMgPz8ge307XG4gIH0sIFtlbnRyeT8uZmlsdGVyc10pO1xuICBjb25zdCBxdWVyeSA9IGVudHJ5Py5xdWVyeTtcblxuICBjb25zdCBhY3Rpb25zOiBGaWx0ZXJBY3Rpb25zID0gdXNlTWVtbygoKSA9PiB7XG4gICAgLyoqIE5hdmlnYXRlIHdpdGggbmV3IGZpbHRlcnMgaWYgdGhleSBkaWZmZXIuICovXG4gICAgZnVuY3Rpb24gbmF2aWdhdGVXaXRoKFxuICAgICAgbmV4dEZpbHRlcnM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+LFxuICAgICAgcmVwbGFjZT86IGJvb2xlYW4sXG4gICAgKSB7XG4gICAgICBpZiAoY3R4ID09IG51bGwpIHJldHVybjtcbiAgICAgIC8vIEF2b2lkIG5hdmlnYXRpb24gaWYgc3RydWN0dXJhbGx5IGlkZW50aWNhbFxuICAgICAgaWYgKHNoYWxsb3dFcXVhbChjdXJyZW50RmlsdGVycywgbmV4dEZpbHRlcnMpKSByZXR1cm47XG4gICAgICBjdHgubmF2aWdhdGUoeyBxdWVyeTogcXVlcnkgYXMgYW55LCBmaWx0ZXJzOiBuZXh0RmlsdGVycywgcmVwbGFjZSB9KTtcbiAgICB9XG4gICAgcmV0dXJuIHtcbiAgICAgIHNldChmaWVsZCwgb3BlcmF0b3IsIHZhbHVlLCBvcHRzKSB7XG4gICAgICAgIGlmIChxdWVyeVNjaGVtYSA9PSBudWxsKSByZXR1cm47IC8vIGlnbm9yZSB3aGVuIG5vIHNjaGVtYVxuICAgICAgICBjb25zdCBuZXh0ID0gc2V0RmlsdGVyKFxuICAgICAgICAgIGN1cnJlbnRGaWx0ZXJzIGFzIGFueSxcbiAgICAgICAgICBxdWVyeVNjaGVtYSBhcyBhbnksXG4gICAgICAgICAgZmllbGQgYXMgYW55LFxuICAgICAgICAgIG9wZXJhdG9yIGFzIGFueSxcbiAgICAgICAgICB2YWx1ZSBhcyBhbnksXG4gICAgICAgICkgYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG4gICAgICAgIG5hdmlnYXRlV2l0aChuZXh0LCBvcHRzPy5yZXBsYWNlKTtcbiAgICAgIH0sXG4gICAgICByZW1vdmUoZmllbGQsIG9wZXJhdG9yLCBvcHRzKSB7XG4gICAgICAgIGlmIChxdWVyeVNjaGVtYSA9PSBudWxsKSByZXR1cm47XG4gICAgICAgIGNvbnN0IG5leHQgPSByZW1vdmVGaWx0ZXJPcChcbiAgICAgICAgICBjdXJyZW50RmlsdGVycyBhcyBhbnksXG4gICAgICAgICAgZmllbGQgYXMgYW55LFxuICAgICAgICAgIG9wZXJhdG9yIGFzIGFueSxcbiAgICAgICAgKSBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcbiAgICAgICAgbmF2aWdhdGVXaXRoKG5leHQsIG9wdHM/LnJlcGxhY2UpO1xuICAgICAgfSxcbiAgICAgIG1lcmdlKHBhdGNoLCBvcHRzKSB7XG4gICAgICAgIGlmIChxdWVyeVNjaGVtYSA9PSBudWxsKSByZXR1cm47XG4gICAgICAgIGNvbnN0IG5leHQgPSBtZXJnZUZpbHRlcnMoXG4gICAgICAgICAgY3VycmVudEZpbHRlcnMgYXMgYW55LFxuICAgICAgICAgIHBhdGNoIGFzIGFueSxcbiAgICAgICAgKSBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcbiAgICAgICAgbmF2aWdhdGVXaXRoKG5leHQsIG9wdHM/LnJlcGxhY2UpO1xuICAgICAgfSxcbiAgICAgIGNsZWFyKG9wdHMpIHtcbiAgICAgICAgaWYgKHF1ZXJ5U2NoZW1hID09IG51bGwpIHJldHVybjtcbiAgICAgICAgaWYgKGlzRW1wdHkoY3VycmVudEZpbHRlcnMgYXMgYW55KSkgcmV0dXJuO1xuICAgICAgICBuYXZpZ2F0ZVdpdGgoe30sIG9wdHM/LnJlcGxhY2UpO1xuICAgICAgfSxcbiAgICB9O1xuICB9LCBbY3R4LCBjdXJyZW50RmlsdGVycywgcXVlcnlTY2hlbWEsIHF1ZXJ5XSk7XG5cbiAgcmV0dXJuIFtjdXJyZW50RmlsdGVycywgYWN0aW9uc107XG59XG4iXX0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useQueryState.d.ts","sourceRoot":"","sources":["../../../src/routing/useQueryState.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"useQueryState.d.ts","sourceRoot":"","sources":["../../../src/routing/useQueryState.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,oBAAoB,CAAC,CAAC,IAAI;IAEpC,YAAY,CAAC,EAAE,CAAC,CAAC;IAEjB,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,GAAG,CAAC,EAAE,OAAO,CAAC;CACf,CAAC;AAWF,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,CAAC,GAAG,OAAO,EAC/C,GAAG,EAAE,MAAM,EACX,IAAI,GAAE,oBAAoB,CAAC,CAAC,CAAM,GACjC;IACD,CAAC,GAAG,SAAS;IACb,CAAC,IAAI,EAAE,CAAC,GAAG,SAAS,EAAE,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,OAAO,CAAA;KAAE,KAAK,IAAI;CAC/D,CA8CA"}
|
|
@@ -1,47 +1,17 @@
|
|
|
1
|
-
import { useCallback, useContext
|
|
1
|
+
import { useCallback, useContext } from 'react';
|
|
2
2
|
import RoutingContext from './RoutingContext.js';
|
|
3
3
|
export default function useQueryState(key, opts = {}) {
|
|
4
4
|
const ctx = useContext(RoutingContext);
|
|
5
5
|
const { defaultValue, omitIfDefault = true } = opts;
|
|
6
6
|
const entry = ctx?.get();
|
|
7
|
-
const route = entry?.route;
|
|
8
|
-
const schema = useMemo(() => {
|
|
9
|
-
if (route == null)
|
|
10
|
-
return undefined;
|
|
11
|
-
const collected = [];
|
|
12
|
-
for (const r of route.route.routes) {
|
|
13
|
-
const maybe = r.query;
|
|
14
|
-
if (maybe !== null &&
|
|
15
|
-
typeof maybe === 'object' &&
|
|
16
|
-
Object.values(maybe).some((v) => {
|
|
17
|
-
if (v == null || typeof v !== 'object')
|
|
18
|
-
return false;
|
|
19
|
-
if (!('parse' in v))
|
|
20
|
-
return false;
|
|
21
|
-
const candidate = v;
|
|
22
|
-
return typeof candidate.parse === 'function';
|
|
23
|
-
})) {
|
|
24
|
-
collected.push(maybe);
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
if (collected.length === 0)
|
|
28
|
-
return undefined;
|
|
29
|
-
return collected.at(-1);
|
|
30
|
-
}, [route]);
|
|
31
|
-
const typedQuery = entry?.typedQuery;
|
|
32
7
|
const rawQuery = entry?.query;
|
|
33
8
|
let current;
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
current = rawVal[rawVal.length - 1];
|
|
38
|
-
}
|
|
39
|
-
else if (rawVal != null) {
|
|
40
|
-
current = rawVal;
|
|
41
|
-
}
|
|
9
|
+
const rawVal = rawQuery?.[key];
|
|
10
|
+
if (Array.isArray(rawVal)) {
|
|
11
|
+
current = rawVal[rawVal.length - 1];
|
|
42
12
|
}
|
|
43
|
-
else if (
|
|
44
|
-
current =
|
|
13
|
+
else if (rawVal != null) {
|
|
14
|
+
current = rawVal;
|
|
45
15
|
}
|
|
46
16
|
if (current === undefined && defaultValue !== undefined) {
|
|
47
17
|
current = defaultValue;
|
|
@@ -51,17 +21,12 @@ export default function useQueryState(key, opts = {}) {
|
|
|
51
21
|
return;
|
|
52
22
|
const replace = navOpts?.replace ?? opts.replace;
|
|
53
23
|
const entryNow = ctx.get();
|
|
54
|
-
const source = entryNow.
|
|
24
|
+
const source = entryNow.query;
|
|
55
25
|
const base = {};
|
|
56
26
|
for (const k of Object.keys(source)) {
|
|
57
27
|
base[k] = source[k];
|
|
58
28
|
}
|
|
59
|
-
|
|
60
|
-
const isDefault = descriptor != null &&
|
|
61
|
-
descriptor.hasDefault &&
|
|
62
|
-
next === descriptor.defaultValue;
|
|
63
|
-
if (!(next === undefined ||
|
|
64
|
-
(omitIfDefault && (isDefault || next === defaultValue)))) {
|
|
29
|
+
if (!(next === undefined || (omitIfDefault && next === defaultValue))) {
|
|
65
30
|
base[key] = next;
|
|
66
31
|
}
|
|
67
32
|
else if (Object.prototype.hasOwnProperty.call(base, key)) {
|
|
@@ -74,7 +39,7 @@ export default function useQueryState(key, opts = {}) {
|
|
|
74
39
|
return;
|
|
75
40
|
}
|
|
76
41
|
ctx.navigate({ query: base, replace });
|
|
77
|
-
}, [ctx,
|
|
42
|
+
}, [ctx, key, omitIfDefault, defaultValue, opts.replace]);
|
|
78
43
|
return [current, setValue];
|
|
79
44
|
}
|
|
80
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlUXVlcnlTdGF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9yb3V0aW5nL3VzZVF1ZXJ5U3RhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLE1BQU0sT0FBTyxDQUFDO0FBQ3pELE9BQU8sY0FBYyxNQUFNLHFCQUFxQixDQUFDO0FBd0JqRCxNQUFNLENBQUMsT0FBTyxVQUFVLGFBQWEsQ0FDbkMsR0FBVyxFQUNYLE9BQWdDLEVBQUU7SUFLbEMsTUFBTSxHQUFHLEdBQUcsVUFBVSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQ3ZDLE1BQU0sRUFBRSxZQUFZLEVBQUUsYUFBYSxHQUFHLElBQUksRUFBRSxHQUFHLElBQUksQ0FBQztJQUNwRCxNQUFNLEtBQUssR0FBRyxHQUFHLEVBQUUsR0FBRyxFQUFFLENBQUM7SUFDekIsTUFBTSxLQUFLLEdBQUcsS0FBSyxFQUFFLEtBQUssQ0FBQztJQUczQixNQUFNLE1BQU0sR0FBNEIsT0FBTyxDQUFDLEdBQUcsRUFBRTtRQUNuRCxJQUFJLEtBQUssSUFBSSxJQUFJO1lBQUUsT0FBTyxTQUFTLENBQUM7UUFDcEMsTUFBTSxTQUFTLEdBQWtCLEVBQUUsQ0FBQztRQUNwQyxLQUFLLE1BQU0sQ0FBQyxJQUFJLEtBQUssQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDbkMsTUFBTSxLQUFLLEdBQUksQ0FBb0MsQ0FBQyxLQUFLLENBQUM7WUFDMUQsSUFDRSxLQUFLLEtBQUssSUFBSTtnQkFDZCxPQUFPLEtBQUssS0FBSyxRQUFRO2dCQUN6QixNQUFNLENBQUMsTUFBTSxDQUFDLEtBQWdDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtvQkFDekQsSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLE9BQU8sQ0FBQyxLQUFLLFFBQVE7d0JBQUUsT0FBTyxLQUFLLENBQUM7b0JB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TSxPQUFPLEdBQTRCLEVBQUUsQ0FBQztZQUM1QyxLQUFLLE1BQU0sQ0FBQyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztnQkFDbEMsSUFBSSxDQUFDLEtBQUssR0FBRztvQkFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3RDLENBQUM7WUFDRCxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDO1lBQzFDLE9BQU87UUFDVCxDQUFDO1FBQ0QsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUN6QyxDQUFDLEVBQ0QsQ0FBQyxHQUFHLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxhQUFhLEVBQUUsWUFBWSxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FDOUQsQ0FBQztJQUVGLE9BQU8sQ0FBQyxPQUF3QixFQUFFLFFBQVEsQ0FBQyxDQUFDO0FBQzlDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB1c2VDYWxsYmFjaywgdXNlQ29udGV4dCwgdXNlTWVtbyB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBSb3V0aW5nQ29udGV4dCBmcm9tICcuL1JvdXRpbmdDb250ZXh0LmpzJztcbmltcG9ydCB0eXBlIHsgUXVlcnlTY2hlbWEgfSBmcm9tICcuLi90eXBlcy5qcyc7XG5cbi8qKiBPcHRpb25zIGZvciB1c2VRdWVyeVN0YXRlICovXG5leHBvcnQgdHlwZSBVc2VRdWVyeVN0YXRlT3B0aW9uczxUPiA9IHtcbiAgLyoqIERlZmF1bHQgdmFsdWUgd2hlbiB0aGUga2V5IGlzIGFic2VudCAob3ZlcnJpZGVzIHNjaGVtYSBkZWZhdWx0IGZvciB0aGUgaG9vayBjb25zdW1lcikgKi9cbiAgZGVmYXVsdFZhbHVlPzogVDtcbiAgLyoqIElmIHRydWUsIG9taXQgdGhpcyBrZXkgd2hlbiB2YWx1ZSBlcXVhbHMgZGVmYXVsdFZhbHVlIChhbmQgc2NoZW1hIGRlZmF1bHQpICovXG4gIG9taXRJZkRlZmF1bHQ/OiBib29sZWFuO1xuICAvKiogUmVwbGFjZSBpbnN0ZWFkIG9mIHB1c2ggd2hlbiB1cGRhdGluZyAocHJldmVudHMgbmV3IGhpc3RvcnkgZW50cnkpICovXG4gIHJlcGxhY2U/OiBib29sZWFuO1xuICAvKiogVXNlIHJhdyAodW50eXBlZCkgcXVlcnkgdmFsdWUgcmF0aGVyIHRoYW4gdHlwZWRRdWVyeSAoZmFsbGJhY2sgZm9yIG1pZ3JhdGlvbikgKi9cbiAgcmF3PzogYm9vbGVhbjtcbn07XG5cbi8qKlxuICogQmlkaXJlY3Rpb25hbCBzdGF0ZSDihpQgVVJMIHN5bmNocm9uaXphdGlvbiBmb3IgYSBzaW5nbGUgcXVlcnkgcGFyYW0uXG4gKlxuICogQmVoYXZpb3VyczpcbiAqIC0gUmVhZHMgZnJvbSB0eXBlZFF1ZXJ5IChpZiBzY2hlbWEgcHJlc2VudCkgZWxzZSByYXcgcXVlcnkgYWdncmVnYXRpb24uXG4gKiAtIFdoZW4gc2V0dGluZyB2YWx1ZSB0byB1bmRlZmluZWQgKG9yIGRlZmF1bHQgd2l0aCBvbWl0SWZEZWZhdWx0KSB0aGUga2V5IGlzIHJlbW92ZWQuXG4gKiAtIFNlcmlhbGl6ZXMgdGhyb3VnaCBleGlzdGluZyBuYXZpZ2F0ZStidWlsZFNlYXJjaCBwaXBlbGluZSAoc2NoZW1hIGF3YXJlIG9yZGVyaW5nICYgb21pc3Npb24pLlxuICogLSBTdGFibGUgaWRlbnRpdHkgZm9yIHNldHRlci5cbiAqL1xuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdXNlUXVlcnlTdGF0ZTxUID0gdW5rbm93bj4oXG4gIGtleTogc3RyaW5nLFxuICBvcHRzOiBVc2VRdWVyeVN0YXRlT3B0aW9uczxUPiA9IHt9LFxuKTogW1xuICBUIHwgdW5kZWZpbmVkLFxuICAobmV4dDogVCB8IHVuZGVmaW5lZCwgbmF2T3B0cz86IHsgcmVwbGFjZT86IGJvb2xlYW4gfSkgPT4gdm9pZCxcbl0ge1xuICBjb25zdCBjdHggPSB1c2VDb250ZXh0KFJvdXRpbmdDb250ZXh0KTtcbiAgY29uc3QgeyBkZWZhdWx0VmFsdWUsIG9taXRJZkRlZmF1bHQgPSB0cnVlIH0gPSBvcHRzO1xuICBjb25zdCBlbnRyeSA9IGN0eD8uZ2V0KCk7XG4gIGNvbnN0IHJvdXRlID0gZW50cnk/LnJvdXRlO1xuXG4gIC8vIEV4dHJhY3QgZGVlcGVzdCBzY2hlbWEgKHNhbWUgaGV1cmlzdGljIGFzIHVzZVR5cGVkUXVlcnkpXG4gIGNvbnN0IHNjaGVtYTogUXVlcnlTY2hlbWEgfCB1bmRlZmluZWQgPSB1c2VNZW1vKCgpID0+IHtcbiAgICBpZiAocm91dGUgPT0gbnVsbCkgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICBjb25zdCBjb2xsZWN0ZWQ6IFF1ZXJ5U2NoZW1hW10gPSBbXTtcbiAgICBmb3IgKGNvbnN0IHIgb2Ygcm91dGUucm91dGUucm91dGVzKSB7XG4gICAgICBjb25zdCBtYXliZSA9IChyIGFzIHVua25vd24gYXMgeyBxdWVyeT86IHVua25vd24gfSkucXVlcnk7XG4gICAgICBpZiAoXG4gICAgICAgIG1heWJlICE9PSBudWxsICYmXG4gICAgICAgIHR5cGVvZiBtYXliZSA9PT0gJ29iamVjdCcgJiZcbiAgICAgICAgT2JqZWN0LnZhbHVlcyhtYXliZSBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPikuc29tZSgodikgPT4ge1xuICAgICAgICAgIGlmICh2ID09IG51bGwgfHwgdHlwZW9mIHYgIT09ICdvYmplY3QnKSByZXR1cm4gZmFsc2U7XG4gICAgICAgICAgaWYgKCEoJ3BhcnNlJyBpbiAodiBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPikpKSByZXR1cm4gZmFsc2U7XG4gICAgICAgICAgY29uc3QgY2FuZGlkYXRlID0gdiBhcyB7IHBhcnNlPzogdW5rbm93biB9O1xuICAgICAgICAgIHJldHVybiB0eXBlb2YgY2FuZGlkYXRlLnBhcnNlID09PSAnZnVuY3Rpb24nO1xuICAgICAgICB9KVxuICAgICAgKSB7XG4gICAgICAgIGNvbGxlY3RlZC5wdXNoKG1heWJlIGFzIFF1ZXJ5U2NoZW1hKTtcbiAgICAgIH1cbiAgICB9XG4gICAgaWYgKGNvbGxlY3RlZC5sZW5ndGggPT09IDApIHJldHVybiB1bmRlZmluZWQ7XG4gICAgcmV0dXJuIGNvbGxlY3RlZC5hdCgtMSk7XG4gIH0sIFtyb3V0ZV0pO1xuXG4gIGNvbnN0IHR5cGVkUXVlcnkgPSBlbnRyeT8udHlwZWRRdWVyeTtcbiAgY29uc3QgcmF3UXVlcnkgPSBlbnRyeT8ucXVlcnk7XG5cbiAgbGV0IGN1cnJlbnQ6IHVua25vd247XG4gIGlmIChvcHRzLnJhdyB8fCBzY2hlbWEgPT0gbnVsbCkge1xuICAgIGNvbnN0IHJhd1ZhbCA9IHJhd1F1ZXJ5Py5ba2V5XTtcbiAgICBpZiAoQXJyYXkuaXNBcnJheShyYXdWYWwpKSB7XG4gICAgICAvLyBwaWNrIGxhc3QgZm9yIHN5bW1ldHJ5IHdpdGggdHlwZWQgcGFyc2luZyBvZiBwcmltaXRpdmVzXG4gICAgICBjdXJyZW50ID0gcmF3VmFsW3Jhd1ZhbC5sZW5ndGggLSAxXTtcbiAgICB9IGVsc2UgaWYgKHJhd1ZhbCAhPSBudWxsKSB7XG4gICAgICBjdXJyZW50ID0gcmF3VmFsO1xuICAgIH1cbiAgfSBlbHNlIGlmICh0eXBlZFF1ZXJ5ICE9IG51bGwpIHtcbiAgICBjdXJyZW50ID0gdHlwZWRRdWVyeVtrZXldO1xuICB9XG4gIGlmIChjdXJyZW50ID09PSB1bmRlZmluZWQgJiYgZGVmYXVsdFZhbHVlICE9PSB1bmRlZmluZWQpIHtcbiAgICBjdXJyZW50ID0gZGVmYXVsdFZhbHVlO1xuICB9XG5cbiAgY29uc3Qgc2V0VmFsdWUgPSB1c2VDYWxsYmFjayhcbiAgICAobmV4dDogVCB8IHVuZGVmaW5lZCwgbmF2T3B0cz86IHsgcmVwbGFjZT86IGJvb2xlYW4gfSkgPT4ge1xuICAgICAgaWYgKGN0eCA9PSBudWxsKSByZXR1cm47XG4gICAgICBjb25zdCByZXBsYWNlID0gbmF2T3B0cz8ucmVwbGFjZSA/PyBvcHRzLnJlcGxhY2U7XG4gICAgICBjb25zdCBlbnRyeU5vdyA9IGN0eC5nZXQoKTtcbiAgICAgIC8vIEJhc2Ugb2JqZWN0OiBzdGFydCBmcm9tIGV4aXN0aW5nIHR5cGVkUXVlcnkgaWYgcHJlc2VudCBlbHNlIHJhdyBxdWVyeSBjbG9uZVxuICAgICAgY29uc3Qgc291cmNlID0gZW50cnlOb3cudHlwZWRRdWVyeSA/PyBlbnRyeU5vdy5xdWVyeTtcbiAgICAgIGNvbnN0IGJhc2U6IFJlY29yZDxzdHJpbmcsIHVua25vd24+ID0ge307XG4gICAgICBmb3IgKGNvbnN0IGsgb2YgT2JqZWN0LmtleXMoc291cmNlKSkge1xuICAgICAgICBiYXNlW2tdID0gc291cmNlW2tdO1xuICAgICAgfVxuICAgICAgY29uc3QgZGVzY3JpcHRvciA9IHNjaGVtYT8uW2tleV07XG4gICAgICBjb25zdCBpc0RlZmF1bHQgPVxuICAgICAgICBkZXNjcmlwdG9yICE9IG51bGwgJiZcbiAgICAgICAgZGVzY3JpcHRvci5oYXNEZWZhdWx0ICYmXG4gICAgICAgIG5leHQgPT09IGRlc2NyaXB0b3IuZGVmYXVsdFZhbHVlO1xuICAgICAgaWYgKFxuICAgICAgICAhKFxuICAgICAgICAgIG5leHQgPT09IHVuZGVmaW5lZCB8fFxuICAgICAgICAgIChvbWl0SWZEZWZhdWx0ICYmIChpc0RlZmF1bHQgfHwgbmV4dCA9PT0gZGVmYXVsdFZhbHVlKSlcbiAgICAgICAgKVxuICAgICAgKSB7XG4gICAgICAgIGJhc2Vba2V5XSA9IG5leHQ7XG4gICAgICB9IGVsc2UgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChiYXNlLCBrZXkpKSB7XG4gICAgICAgIC8vIHJlYnVpbGQgd2l0aG91dCBrZXlcbiAgICAgICAgY29uc3QgcmVidWlsdDogUmVjb3JkPHN0cmluZywgdW5rbm93bj4gPSB7fTtcbiAgICAgICAgZm9yIChjb25zdCBrIG9mIE9iamVjdC5rZXlzKGJhc2UpKSB7XG4gICAgICAgICAgaWYgKGsgIT09IGtleSkgcmVidWlsdFtrXSA9IGJhc2Vba107XG4gICAgICAgIH1cbiAgICAgICAgY3R4Lm5hdmlnYXRlKHsgcXVlcnk6IHJlYnVpbHQsIHJlcGxhY2UgfSk7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIGN0eC5uYXZpZ2F0ZSh7IHF1ZXJ5OiBiYXNlLCByZXBsYWNlIH0pO1xuICAgIH0sXG4gICAgW2N0eCwgc2NoZW1hLCBrZXksIG9taXRJZkRlZmF1bHQsIGRlZmF1bHRWYWx1ZSwgb3B0cy5yZXBsYWNlXSxcbiAgKTtcblxuICByZXR1cm4gW2N1cnJlbnQgYXMgVCB8IHVuZGVmaW5lZCwgc2V0VmFsdWVdO1xufVxuIl19
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlUXVlcnlTdGF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9yb3V0aW5nL3VzZVF1ZXJ5U3RhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxVQUFVLEVBQUUsTUFBTSxPQUFPLENBQUM7QUFDaEQsT0FBTyxjQUFjLE1BQU0scUJBQXFCLENBQUM7QUF1QmpELE1BQU0sQ0FBQyxPQUFPLFVBQVUsYUFBYSxDQUNuQyxHQUFXLEVBQ1gsT0FBZ0MsRUFBRTtJQUtsQyxNQUFNLEdBQUcsR0FBRyxVQUFVLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDdkMsTUFBTSxFQUFFLFlBQVksRUFBRSxhQUFhLEdBQUcsSUFBSSxFQUFFLEdBQUcsSUFBSSxDQUFDO0lBQ3BELE1BQU0sS0FBSyxHQUFHLEdBQUcsRUFBRSxHQUFHLEVBQUUsQ0FBQztJQUN6QixNQUFNLFFBQVEsR0FBRyxLQUFLLEVBQUUsS0FBSyxDQUFDO0lBRTlCLElBQUksT0FBZ0IsQ0FBQztJQUNyQixNQUFNLE1BQU0sR0FBRyxRQUFRLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUMvQixJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUUxQixPQUFPLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDdEMsQ0FBQztTQUFNLElBQUksTUFBTSxJQUFJLElBQUksRUFBRSxDQUFDO1FBQzFCLE9BQU8sR0FBRyxNQUFNLENBQUM7SUFDbkIsQ0FBQztJQUNELElBQUksT0FBTyxLQUFLLFNBQVMsSUFBSSxZQUFZLEtBQUssU0FBUyxFQUFFLENBQUM7UUFDeEQsT0FBTyxHQUFHLFlBQVksQ0FBQztJQUN6QixDQUFDO0lBRUQsTUFBTSxRQUFRLEdBQUcsV0FBVyxDQUMxQixDQUFDLElBQW1CLEVBQUUsT0FBK0IsRUFBRSxFQUFFO1FBQ3ZELElBQUksR0FBRyxJQUFJLElBQUk7WUFBRSxPQUFPO1FBQ3hCLE1BQU0sT0FBTyxHQUFHLE9BQU8sRUFBRSxPQUFPLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUNqRCxNQUFNLFFBQVEsR0FBRyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUM7UUFFM0IsTUFBTSxNQUFNLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQztRQUM5QixNQUFNLElBQUksR0FBNEIsRUFBRSxDQUFDO1FBQ3pDLEtBQUssTUFBTSxDQUFDLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1lBQ3BDLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDdEIsQ0FBQztRQUNELElBQUksQ0FBQyxDQUFDLElBQUksS0FBSyxTQUFTLElBQUksQ0FBQyxhQUFhLElBQUksSUFBSSxLQUFLLFlBQVksQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUN0RSxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDO1FBQ25CLENBQUM7YUFBTSxJQUFJLE1BQU0sQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUUzRCxNQUFNLE9BQU8sR0FBNEIsRUFBRSxDQUFDO1lBQzVDLEtBQUssTUFBTSxDQUFDLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO2dCQUNsQyxJQUFJLENBQUMsS0FBSyxHQUFHO29CQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDdEMsQ0FBQztZQUNELEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7WUFDMUMsT0FBTztRQUNULENBQUM7UUFDRCxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDO0lBQ3pDLENBQUMsRUFDRCxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsYUFBYSxFQUFFLFlBQVksRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQ3RELENBQUM7SUFFRixPQUFPLENBQUMsT0FBd0IsRUFBRSxRQUFRLENBQUMsQ0FBQztBQUM5QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdXNlQ2FsbGJhY2ssIHVzZUNvbnRleHQgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgUm91dGluZ0NvbnRleHQgZnJvbSAnLi9Sb3V0aW5nQ29udGV4dC5qcyc7XG5cbi8qKiBPcHRpb25zIGZvciB1c2VRdWVyeVN0YXRlICovXG5leHBvcnQgdHlwZSBVc2VRdWVyeVN0YXRlT3B0aW9uczxUPiA9IHtcbiAgLyoqIERlZmF1bHQgdmFsdWUgd2hlbiB0aGUga2V5IGlzIGFic2VudCAob3ZlcnJpZGVzIHNjaGVtYSBkZWZhdWx0IGZvciB0aGUgaG9vayBjb25zdW1lcikgKi9cbiAgZGVmYXVsdFZhbHVlPzogVDtcbiAgLyoqIElmIHRydWUsIG9taXQgdGhpcyBrZXkgd2hlbiB2YWx1ZSBlcXVhbHMgZGVmYXVsdFZhbHVlIChhbmQgc2NoZW1hIGRlZmF1bHQpICovXG4gIG9taXRJZkRlZmF1bHQ/OiBib29sZWFuO1xuICAvKiogUmVwbGFjZSBpbnN0ZWFkIG9mIHB1c2ggd2hlbiB1cGRhdGluZyAocHJldmVudHMgbmV3IGhpc3RvcnkgZW50cnkpICovXG4gIHJlcGxhY2U/OiBib29sZWFuO1xuICAvKiogKExlZ2FjeSkgcmF3IGZsYWcgcmV0YWluZWQgZm9yIGJhY2t3YXJkcyBjb21wYXQg4oCTIG5vIGVmZmVjdCAodHlwZWQgbW9kZWwgcmVtb3ZlZCkgKi9cbiAgcmF3PzogYm9vbGVhbjtcbn07XG5cbi8qKlxuICogQmlkaXJlY3Rpb25hbCBzdGF0ZSDihpQgVVJMIHN5bmNocm9uaXphdGlvbiBmb3IgYSBzaW5nbGUgcXVlcnkgcGFyYW0uXG4gKlxuICogQmVoYXZpb3VyczpcbiAqIC0gUmVhZHMgZnJvbSByYXcgcXVlcnkgYWdncmVnYXRpb24gKHR5cGVkIHF1ZXJ5IHJlbW92ZWQpLlxuICogLSBXaGVuIHNldHRpbmcgdmFsdWUgdG8gdW5kZWZpbmVkIChvciBkZWZhdWx0IHdpdGggb21pdElmRGVmYXVsdCkgdGhlIGtleSBpcyByZW1vdmVkLlxuICogLSBTZXJpYWxpemVzIHZpYSBuYXZpZ2F0ZSArIHVuaWZpZWQgYnVpbGRDb21iaW5lZFNlYXJjaCAoc2NoZW1hIG9yZGVyaW5nICYgb21pc3Npb24gcmVzcGVjdGVkKS5cbiAqIC0gU3RhYmxlIGlkZW50aXR5IGZvciBzZXR0ZXIuXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHVzZVF1ZXJ5U3RhdGU8VCA9IHVua25vd24+KFxuICBrZXk6IHN0cmluZyxcbiAgb3B0czogVXNlUXVlcnlTdGF0ZU9wdGlvbnM8VD4gPSB7fSxcbik6IFtcbiAgVCB8IHVuZGVmaW5lZCxcbiAgKG5leHQ6IFQgfCB1bmRlZmluZWQsIG5hdk9wdHM/OiB7IHJlcGxhY2U/OiBib29sZWFuIH0pID0+IHZvaWQsXG5dIHtcbiAgY29uc3QgY3R4ID0gdXNlQ29udGV4dChSb3V0aW5nQ29udGV4dCk7XG4gIGNvbnN0IHsgZGVmYXVsdFZhbHVlLCBvbWl0SWZEZWZhdWx0ID0gdHJ1ZSB9ID0gb3B0cztcbiAgY29uc3QgZW50cnkgPSBjdHg/LmdldCgpO1xuICBjb25zdCByYXdRdWVyeSA9IGVudHJ5Py5xdWVyeTtcblxuICBsZXQgY3VycmVudDogdW5rbm93bjtcbiAgY29uc3QgcmF3VmFsID0gcmF3UXVlcnk/LltrZXldO1xuICBpZiAoQXJyYXkuaXNBcnJheShyYXdWYWwpKSB7XG4gICAgLy8gcGljayBsYXN0IGZvciBzeW1tZXRyeSB3aXRoIHR5cGVkIHBhcnNpbmcgb2YgcHJpbWl0aXZlc1xuICAgIGN1cnJlbnQgPSByYXdWYWxbcmF3VmFsLmxlbmd0aCAtIDFdO1xuICB9IGVsc2UgaWYgKHJhd1ZhbCAhPSBudWxsKSB7XG4gICAgY3VycmVudCA9IHJhd1ZhbDtcbiAgfVxuICBpZiAoY3VycmVudCA9PT0gdW5kZWZpbmVkICYmIGRlZmF1bHRWYWx1ZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgY3VycmVudCA9IGRlZmF1bHRWYWx1ZTtcbiAgfVxuXG4gIGNvbnN0IHNldFZhbHVlID0gdXNlQ2FsbGJhY2soXG4gICAgKG5leHQ6IFQgfCB1bmRlZmluZWQsIG5hdk9wdHM/OiB7IHJlcGxhY2U/OiBib29sZWFuIH0pID0+IHtcbiAgICAgIGlmIChjdHggPT0gbnVsbCkgcmV0dXJuO1xuICAgICAgY29uc3QgcmVwbGFjZSA9IG5hdk9wdHM/LnJlcGxhY2UgPz8gb3B0cy5yZXBsYWNlO1xuICAgICAgY29uc3QgZW50cnlOb3cgPSBjdHguZ2V0KCk7XG4gICAgICAvLyBCYXNlIG9iamVjdDogc3RhcnQgZnJvbSBleGlzdGluZyByYXcgcXVlcnkgY2xvbmUgKHR5cGVkIG1vZGVsIHJlbW92ZWQpXG4gICAgICBjb25zdCBzb3VyY2UgPSBlbnRyeU5vdy5xdWVyeTtcbiAgICAgIGNvbnN0IGJhc2U6IFJlY29yZDxzdHJpbmcsIHVua25vd24+ID0ge307XG4gICAgICBmb3IgKGNvbnN0IGsgb2YgT2JqZWN0LmtleXMoc291cmNlKSkge1xuICAgICAgICBiYXNlW2tdID0gc291cmNlW2tdO1xuICAgICAgfVxuICAgICAgaWYgKCEobmV4dCA9PT0gdW5kZWZpbmVkIHx8IChvbWl0SWZEZWZhdWx0ICYmIG5leHQgPT09IGRlZmF1bHRWYWx1ZSkpKSB7XG4gICAgICAgIGJhc2Vba2V5XSA9IG5leHQ7XG4gICAgICB9IGVsc2UgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChiYXNlLCBrZXkpKSB7XG4gICAgICAgIC8vIHJlYnVpbGQgd2l0aG91dCBrZXlcbiAgICAgICAgY29uc3QgcmVidWlsdDogUmVjb3JkPHN0cmluZywgdW5rbm93bj4gPSB7fTtcbiAgICAgICAgZm9yIChjb25zdCBrIG9mIE9iamVjdC5rZXlzKGJhc2UpKSB7XG4gICAgICAgICAgaWYgKGsgIT09IGtleSkgcmVidWlsdFtrXSA9IGJhc2Vba107XG4gICAgICAgIH1cbiAgICAgICAgY3R4Lm5hdmlnYXRlKHsgcXVlcnk6IHJlYnVpbHQsIHJlcGxhY2UgfSk7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIGN0eC5uYXZpZ2F0ZSh7IHF1ZXJ5OiBiYXNlLCByZXBsYWNlIH0pO1xuICAgIH0sXG4gICAgW2N0eCwga2V5LCBvbWl0SWZEZWZhdWx0LCBkZWZhdWx0VmFsdWUsIG9wdHMucmVwbGFjZV0sXG4gICk7XG5cbiAgcmV0dXJuIFtjdXJyZW50IGFzIFQgfCB1bmRlZmluZWQsIHNldFZhbHVlXTtcbn1cbiJdfQ==
|
|
@@ -1,11 +1,7 @@
|
|
|
1
1
|
import { type Schema as FilterSchema } from '@plumile/filter-query';
|
|
2
|
-
import type { QuerySchema } from '../types.js';
|
|
3
2
|
export declare function buildCombinedSearch(opts: {
|
|
4
|
-
query?: Record<string, unknown>;
|
|
5
|
-
querySchema?: QuerySchema;
|
|
6
3
|
filters?: Record<string, unknown>;
|
|
7
|
-
|
|
8
|
-
omitQueryDefaults?: boolean;
|
|
4
|
+
querySchema?: FilterSchema;
|
|
9
5
|
}): string;
|
|
10
6
|
export default buildCombinedSearch;
|
|
11
7
|
//# sourceMappingURL=buildCombinedSearch.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildCombinedSearch.d.ts","sourceRoot":"","sources":["../../../src/tools/buildCombinedSearch.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"buildCombinedSearch.d.ts","sourceRoot":"","sources":["../../../src/tools/buildCombinedSearch.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,MAAM,IAAI,YAAY,EAC5B,MAAM,uBAAuB,CAAC;AAM/B,wBAAgB,mBAAmB,CAAC,IAAI,EAAE;IACxC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,WAAW,CAAC,EAAE,YAAY,CAAC;CAC5B,GAAG,MAAM,CAaT;AAED,eAAe,mBAAmB,CAAC"}
|
|
@@ -1,28 +1,19 @@
|
|
|
1
|
-
import { buildSearch } from './buildSearch.js';
|
|
2
1
|
import { stringify as stringifyFilters, } from '@plumile/filter-query';
|
|
3
2
|
export function buildCombinedSearch(opts) {
|
|
4
|
-
const {
|
|
5
|
-
const queryPart = buildSearch(query, querySchema, {
|
|
6
|
-
omitDefaults: omitQueryDefaults,
|
|
7
|
-
sortKeys: true,
|
|
8
|
-
});
|
|
3
|
+
const { filters, querySchema } = opts;
|
|
9
4
|
let filterPart = '';
|
|
10
|
-
if (
|
|
5
|
+
if (querySchema != null && filters != null) {
|
|
11
6
|
try {
|
|
12
|
-
const raw = stringifyFilters(filters,
|
|
7
|
+
const raw = stringifyFilters(filters, querySchema);
|
|
13
8
|
if (raw !== '')
|
|
14
9
|
filterPart = raw;
|
|
15
10
|
}
|
|
16
11
|
catch {
|
|
17
12
|
}
|
|
18
13
|
}
|
|
19
|
-
if (queryPart === '' && filterPart === '')
|
|
20
|
-
return '';
|
|
21
|
-
if (queryPart === '')
|
|
22
|
-
return `?${filterPart}`;
|
|
23
14
|
if (filterPart === '')
|
|
24
|
-
return
|
|
25
|
-
return
|
|
15
|
+
return '';
|
|
16
|
+
return `?${filterPart}`;
|
|
26
17
|
}
|
|
27
18
|
export default buildCombinedSearch;
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGRDb21iaW5lZFNlYXJjaC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90b29scy9idWlsZENvbWJpbmVkU2VhcmNoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLElBQUksZ0JBQWdCLEdBRTlCLE1BQU0sdUJBQXVCLENBQUM7QUFNL0IsTUFBTSxVQUFVLG1CQUFtQixDQUFDLElBR25DO0lBQ0MsTUFBTSxFQUFFLE9BQU8sRUFBRSxXQUFXLEVBQUUsR0FBRyxJQUFJLENBQUM7SUFDdEMsSUFBSSxVQUFVLEdBQUcsRUFBRSxDQUFDO0lBQ3BCLElBQUksV0FBVyxJQUFJLElBQUksSUFBSSxPQUFPLElBQUksSUFBSSxFQUFFLENBQUM7UUFDM0MsSUFBSSxDQUFDO1lBQ0gsTUFBTSxHQUFHLEdBQUcsZ0JBQWdCLENBQUMsT0FBYyxFQUFFLFdBQWtCLENBQUMsQ0FBQztZQUNqRSxJQUFJLEdBQUcsS0FBSyxFQUFFO2dCQUFFLFVBQVUsR0FBRyxHQUFHLENBQUM7UUFDbkMsQ0FBQztRQUFDLE1BQU0sQ0FBQztRQUVULENBQUM7SUFDSCxDQUFDO0lBQ0QsSUFBSSxVQUFVLEtBQUssRUFBRTtRQUFFLE9BQU8sRUFBRSxDQUFDO0lBQ2pDLE9BQU8sSUFBSSxVQUFVLEVBQUUsQ0FBQztBQUMxQixDQUFDO0FBRUQsZUFBZSxtQkFBbUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIHN0cmluZ2lmeSBhcyBzdHJpbmdpZnlGaWx0ZXJzLFxuICB0eXBlIFNjaGVtYSBhcyBGaWx0ZXJTY2hlbWEsXG59IGZyb20gJ0BwbHVtaWxlL2ZpbHRlci1xdWVyeSc7XG5cbi8qKlxuICogQnVpbGQgYSBzZWFyY2ggc3RyaW5nIGZyb20gZmlsdGVycyBvbmx5ICh1bmlmaWVkIG1vZGVsKS5cbiAqIFJldHVybnMgJycgd2hlbiBubyBmaWx0ZXJzIHByZXNlbnQsIGVsc2Ugc3RyaW5nIHN0YXJ0aW5nIHdpdGggJz8nLlxuICovXG5leHBvcnQgZnVuY3Rpb24gYnVpbGRDb21iaW5lZFNlYXJjaChvcHRzOiB7XG4gIGZpbHRlcnM/OiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcbiAgcXVlcnlTY2hlbWE/OiBGaWx0ZXJTY2hlbWE7XG59KTogc3RyaW5nIHtcbiAgY29uc3QgeyBmaWx0ZXJzLCBxdWVyeVNjaGVtYSB9ID0gb3B0cztcbiAgbGV0IGZpbHRlclBhcnQgPSAnJztcbiAgaWYgKHF1ZXJ5U2NoZW1hICE9IG51bGwgJiYgZmlsdGVycyAhPSBudWxsKSB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHJhdyA9IHN0cmluZ2lmeUZpbHRlcnMoZmlsdGVycyBhcyBhbnksIHF1ZXJ5U2NoZW1hIGFzIGFueSk7XG4gICAgICBpZiAocmF3ICE9PSAnJykgZmlsdGVyUGFydCA9IHJhdzsgLy8gcmF3IGhhcyBubyBsZWFkaW5nID8gYnkgZGVzaWduIGluIGZpbHRlci1xdWVyeVxuICAgIH0gY2F0Y2gge1xuICAgICAgLy8gSWdub3JlIHNlcmlhbGl6YXRpb24gZXJyb3JzOyB0cmVhdCBhcyBhYnNlbnQgZmlsdGVyc1xuICAgIH1cbiAgfVxuICBpZiAoZmlsdGVyUGFydCA9PT0gJycpIHJldHVybiAnJztcbiAgcmV0dXJuIGA/JHtmaWx0ZXJQYXJ0fWA7XG59XG5cbmV4cG9ydCBkZWZhdWx0IGJ1aWxkQ29tYmluZWRTZWFyY2g7XG4iXX0=
|
package/lib/esm/tools.d.ts
CHANGED
|
@@ -1,11 +1,7 @@
|
|
|
1
1
|
import type { ParamData } from 'path-to-regexp';
|
|
2
|
-
import type { PrepareResult, PreparedMatch, Route, RouterMatchedRoute
|
|
2
|
+
import type { PrepareResult, PreparedMatch, Route, RouterMatchedRoute } from './types.js';
|
|
3
3
|
import type { FlatRoute } from './builder.js';
|
|
4
4
|
export declare function getMatchedRoute<TParams extends ParamData>(routes: FlatRoute<TParams>[], location: Location): RouterMatchedRoute<TParams> | null;
|
|
5
5
|
export declare function prepareMatch<TParams extends ParamData>(match: RouterMatchedRoute<TParams> | null, query?: Record<string, unknown>): PreparedMatch<TParams>;
|
|
6
|
-
export declare function r<TPrepared extends PrepareResult = PrepareResult, TVariables extends ParamData = ParamData, TQuery extends Record<string, unknown> = Record<string, unknown
|
|
7
|
-
query: TSchema;
|
|
8
|
-
} : Route<TPrepared, TVariables, TQuery>) & {
|
|
9
|
-
query?: TSchema;
|
|
10
|
-
}): Route<TPrepared, TVariables, TSchema extends QuerySchema ? InferQuery<TSchema> : TQuery>;
|
|
6
|
+
export declare function r<TPrepared extends PrepareResult = PrepareResult, TVariables extends ParamData = ParamData, TQuery extends Record<string, unknown> = Record<string, unknown>>(route: Route<TPrepared, TVariables, TQuery>): Route<TPrepared, TVariables, TQuery>;
|
|
11
7
|
//# sourceMappingURL=tools.d.ts.map
|
package/lib/esm/tools.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEhD,OAAO,KAAK,EACV,aAAa,EACb,aAAa,EAEb,KAAK,EACL,kBAAkB,
|
|
1
|
+
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEhD,OAAO,KAAK,EACV,aAAa,EACb,aAAa,EAEb,KAAK,EACL,kBAAkB,EACnB,MAAM,YAAY,CAAC;AAEpB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAW9C,wBAAgB,eAAe,CAAC,OAAO,SAAS,SAAS,EACvD,MAAM,EAAE,SAAS,CAAC,OAAO,CAAC,EAAE,EAC5B,QAAQ,EAAE,QAAQ,GACjB,kBAAkB,CAAC,OAAO,CAAC,GAAG,IAAI,CAepC;AAUD,wBAAgB,YAAY,CAAC,OAAO,SAAS,SAAS,EACpD,KAAK,EAAE,kBAAkB,CAAC,OAAO,CAAC,GAAG,IAAI,EACzC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,aAAa,CAAC,OAAO,CAAC,CAmDxB;AAwBD,wBAAgB,CAAC,CACf,SAAS,SAAS,aAAa,GAAG,aAAa,EAC/C,UAAU,SAAS,SAAS,GAAG,SAAS,EACxC,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAEhE,KAAK,EAAE,KAAK,CAAC,SAAS,EAAE,UAAU,EAAE,MAAM,CAAC,GAC1C,KAAK,CAAC,SAAS,EAAE,UAAU,EAAE,MAAM,CAAC,CAEtC"}
|
package/lib/esm/tools.js
CHANGED
|
@@ -56,4 +56,4 @@ export function prepareMatch(match, query) {
|
|
|
56
56
|
export function r(route) {
|
|
57
57
|
return route;
|
|
58
58
|
}
|
|
59
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdG9vbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBcUJBLE1BQU0sVUFBVSxlQUFlLENBQzdCLE1BQTRCLEVBQzVCLFFBQWtCO0lBRWxCLEtBQUssTUFBTSxLQUFLLElBQUksTUFBTSxFQUFFLENBQUM7UUFDM0IsTUFBTSxLQUFLLEdBQUcsS0FBSyxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDckQsSUFBSSxLQUFLLEtBQUssS0FBSyxFQUFFLENBQUM7WUFDcEIsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsR0FBRyxLQUFLLENBQUM7WUFDL0IsT0FBTztnQkFDTCxLQUFLO2dCQUNMLEtBQUs7Z0JBQ0wsSUFBSTtnQkFDSixNQUFNO2FBQ1AsQ0FBQztRQUNKLENBQUM7SUFDSCxDQUFDO0lBRUQsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDO0FBVUQsTUFBTSxVQUFVLFlBQVksQ0FDMUIsS0FBeUMsRUFDekMsS0FBK0I7SUFNL0IsSUFBSSxLQUFLLElBQUksSUFBSSxFQUFFLENBQUM7UUFDbEIsT0FBTztZQUNMLEtBQUs7WUFDTCxNQUFNLEVBQUUsRUFBRTtTQUNYLENBQUM7SUFDSixDQUFDO0lBRUQsTUFBTSxZQUFZLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQztJQUVqQyxNQUFNLE1BQU0sR0FBeUIsS0FBSyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7UUFDcEUsTUFBTSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxHQUFHLEtBQUssQ0FBQztRQUV0RCxJQUFJLFNBQWtCLENBQUM7UUFDdkIsSUFBSSxRQUFtQyxDQUFDO1FBRXhDLElBQUksT0FBTyxJQUFJLElBQUksRUFBRSxDQUFDO1lBQ3BCLFFBQVEsR0FBRyxPQUFPLENBQUM7Z0JBQ2pCLEtBQUs7Z0JBQ0wsWUFBWTtnQkFDWixZQUFZO2dCQUVaLFNBQVMsRUFBRSxFQUFFLEdBQUcsS0FBSyxDQUFDLE1BQU0sRUFBRTtnQkFDOUIsS0FBSyxFQUFFLEtBQUssSUFBSSxFQUFFO2FBQ25CLENBQUMsQ0FBQztRQUNMLENBQUM7UUFFRCxJQUFJLFlBQVksSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUN6QixTQUFTLEdBQUcsWUFBWSxDQUFDLEdBQUcsRUFBRSxDQUFDO1lBQy9CLElBQUksU0FBUyxJQUFJLElBQUksRUFBRSxDQUFDO2dCQUV0QixZQUFZLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDdEIsQ0FBQztRQUNILENBQUM7UUFDRCxPQUFPO1lBQ0wsSUFBSTtZQUNKLFFBQVE7WUFDUixVQUFVLEVBQUUsWUFBWSxDQUFDLFVBQVUsSUFBSSxJQUFJO1lBQzNDLE1BQU07WUFDTixZQUFZO1NBQ2IsQ0FBQztJQUNKLENBQUMsQ0FBQyxDQUFDO0lBRUgsT0FBTztRQUNMLEtBQUs7UUFDTCxNQUFNO0tBQ1AsQ0FBQztBQUNKLENBQUM7QUF3QkQsTUFBTSxVQUFVLENBQUMsQ0FLZixLQUEyQztJQUUzQyxPQUFPLEtBQUssQ0FBQztBQUNmLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFBhcmFtRGF0YSB9IGZyb20gJ3BhdGgtdG8tcmVnZXhwJztcblxuaW1wb3J0IHR5cGUge1xuICBQcmVwYXJlUmVzdWx0LFxuICBQcmVwYXJlZE1hdGNoLFxuICBQcmVwYXJlZE1hdGNoUm91dGUsXG4gIFJvdXRlLFxuICBSb3V0ZXJNYXRjaGVkUm91dGUsXG59IGZyb20gJy4vdHlwZXMuanMnO1xuXG5pbXBvcnQgdHlwZSB7IEZsYXRSb3V0ZSB9IGZyb20gJy4vYnVpbGRlci5qcyc7XG5cbi8qKlxuICogRmluZHMgdGhlIGZpcnN0IHJvdXRlIHRoYXQgbWF0Y2hlcyB0aGUgZ2l2ZW4gbG9jYXRpb24uXG4gKiBJdGVyYXRlcyB0aHJvdWdoIGFsbCByb3V0ZXMgYW5kIHJldHVybnMgdGhlIGZpcnN0IG1hdGNoIGZvdW5kLlxuICpcbiAqIEB0ZW1wbGF0ZSBUUGFyYW1zIC0gUm91dGUgcGFyYW1ldGVyIHR5cGVzIGV4dHJhY3RlZCBmcm9tIHRoZSBVUkwgcGF0aFxuICogQHBhcmFtIHJvdXRlcyAtIEFycmF5IG9mIGZsYXQgcm91dGVzIHRvIHNlYXJjaCB0aHJvdWdoXG4gKiBAcGFyYW0gbG9jYXRpb24gLSBCcm93c2VyIGxvY2F0aW9uIG9iamVjdCBjb250YWluaW5nIHBhdGhuYW1lIHRvIG1hdGNoXG4gKiBAcmV0dXJucyBUaGUgbWF0Y2hlZCByb3V0ZSB3aXRoIGV4dHJhY3RlZCBwYXJhbWV0ZXJzLCBvciBudWxsIGlmIG5vIG1hdGNoXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRNYXRjaGVkUm91dGU8VFBhcmFtcyBleHRlbmRzIFBhcmFtRGF0YT4oXG4gIHJvdXRlczogRmxhdFJvdXRlPFRQYXJhbXM+W10sXG4gIGxvY2F0aW9uOiBMb2NhdGlvbixcbik6IFJvdXRlck1hdGNoZWRSb3V0ZTxUUGFyYW1zPiB8IG51bGwge1xuICBmb3IgKGNvbnN0IHJvdXRlIG9mIHJvdXRlcykge1xuICAgIGNvbnN0IG1hdGNoID0gcm91dGUubWF0Y2hGdW5jdGlvbihsb2NhdGlvbi5wYXRobmFtZSk7XG4gICAgaWYgKG1hdGNoICE9PSBmYWxzZSkge1xuICAgICAgY29uc3QgeyBwYXRoLCBwYXJhbXMgfSA9IG1hdGNoO1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgbWF0Y2gsXG4gICAgICAgIHJvdXRlLFxuICAgICAgICBwYXRoLFxuICAgICAgICBwYXJhbXMsXG4gICAgICB9O1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBudWxsO1xufVxuXG4vKipcbiAqIFByZXBhcmVzIGEgbWF0Y2hlZCByb3V0ZSBmb3IgcmVuZGVyaW5nIGJ5IGxvYWRpbmcgY29tcG9uZW50cyBhbmQgZXhlY3V0aW5nIHByZXBhcmUgZnVuY3Rpb25zLlxuICogVGhpcyBmdW5jdGlvbiBwcm9jZXNzZXMgdGhlIHJvdXRlIGhpZXJhcmNoeSBhbmQgbG9hZHMgYW55IHJlcXVpcmVkIGRhdGEgb3IgY29tcG9uZW50cy5cbiAqXG4gKiBAdGVtcGxhdGUgVFBhcmFtcyAtIFJvdXRlIHBhcmFtZXRlciB0eXBlcyBleHRyYWN0ZWQgZnJvbSB0aGUgVVJMIHBhdGhcbiAqIEBwYXJhbSBtYXRjaCAtIFRoZSBtYXRjaGVkIHJvdXRlIHRvIHByZXBhcmUsIG9yIG51bGwgaWYgbm8gcm91dGUgbWF0Y2hlZFxuICogQHJldHVybnMgUHJlcGFyZWQgbWF0Y2ggd2l0aCBsb2FkZWQgY29tcG9uZW50cyBhbmQgZGF0YSByZWFkeSBmb3IgcmVuZGVyaW5nXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBwcmVwYXJlTWF0Y2g8VFBhcmFtcyBleHRlbmRzIFBhcmFtRGF0YT4oXG4gIG1hdGNoOiBSb3V0ZXJNYXRjaGVkUm91dGU8VFBhcmFtcz4gfCBudWxsLFxuICBxdWVyeT86IFJlY29yZDxzdHJpbmcsIHVua25vd24+LFxuKTogUHJlcGFyZWRNYXRjaDxUUGFyYW1zPiB7XG4gIC8vIE5PVEU6IFJ1bnRpbWUgcmV0YWlucyBhIGdlbmVyaWMgUHJlcGFyZWRSZXN1bHQ7IHR5cGUtbGV2ZWwgbmFycm93aW5nIGlzIGFjaGlldmVkIGV4dGVybmFsbHlcbiAgLy8gdGhyb3VnaCB0aGUgcm91dGUgdW5pb24gYW5kIFByZXBhcmVkQWNjZXNzIGhlbHBlcnMuIFdlIGludGVudGlvbmFsbHkgYXZvaWQgaW5qZWN0aW5nXG4gIC8vIGdlbmVyaWMgcGFyYW1ldGVycyBoZXJlIHRvIGtlZXAgcnVudGltZSBsaWdodHdlaWdodCB3aGlsZSBzdGlsbCBlbmFibGluZyBjb21waWxlLXRpbWVcbiAgLy8gZGlzY3JpbWluYXRpb24gaW4gdXNlcmxhbmQgdmlhIGNyZWF0ZVJvdXRlciBnZW5lcmljcy5cbiAgaWYgKG1hdGNoID09IG51bGwpIHtcbiAgICByZXR1cm4ge1xuICAgICAgbWF0Y2gsXG4gICAgICByb3V0ZXM6IFtdLFxuICAgIH07XG4gIH1cblxuICBjb25zdCBtYXRjaGVkUm91dGUgPSBtYXRjaC5yb3V0ZTtcblxuICBjb25zdCByb3V0ZXM6IFByZXBhcmVkTWF0Y2hSb3V0ZVtdID0gbWF0Y2gucm91dGUucm91dGVzLm1hcCgocm91dGUpID0+IHtcbiAgICBjb25zdCB7IHBhdGgsIHByZXBhcmUsIHJlc291cmNlUGFnZSwgcmVuZGVyIH0gPSByb3V0ZTtcblxuICAgIGxldCBDb21wb25lbnQ6IHVua25vd247XG4gICAgbGV0IHByZXBhcmVkOiBQcmVwYXJlUmVzdWx0IHwgdW5kZWZpbmVkO1xuXG4gICAgaWYgKHByZXBhcmUgIT0gbnVsbCkge1xuICAgICAgcHJlcGFyZWQgPSBwcmVwYXJlKHtcbiAgICAgICAgbWF0Y2gsXG4gICAgICAgIG1hdGNoZWRSb3V0ZSxcbiAgICAgICAgcmVzb3VyY2VQYWdlLFxuICAgICAgICAvLyBGaXggT2JqZWN0LmNyZWF0ZShudWxsKSBpc3N1ZSBpbiBwYXRoLXRvLXJlZ2V4cFxuICAgICAgICB2YXJpYWJsZXM6IHsgLi4ubWF0Y2gucGFyYW1zIH0sXG4gICAgICAgIHF1ZXJ5OiBxdWVyeSA/PyB7fSxcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGlmIChyZXNvdXJjZVBhZ2UgIT0gbnVsbCkge1xuICAgICAgQ29tcG9uZW50ID0gcmVzb3VyY2VQYWdlLmdldCgpO1xuICAgICAgaWYgKENvbXBvbmVudCA9PSBudWxsKSB7XG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZmxvYXRpbmctcHJvbWlzZXNcbiAgICAgICAgcmVzb3VyY2VQYWdlLmxvYWQoKTsgLy8gZWFnZXJseSBsb2FkXG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiB7XG4gICAgICBwYXRoLFxuICAgICAgcHJlcGFyZWQsXG4gICAgICByZWRpcmVjdFRvOiBtYXRjaGVkUm91dGUucmVkaXJlY3RUbyA/PyBudWxsLFxuICAgICAgcmVuZGVyLFxuICAgICAgcmVzb3VyY2VQYWdlLFxuICAgIH07XG4gIH0pO1xuXG4gIHJldHVybiB7XG4gICAgbWF0Y2gsXG4gICAgcm91dGVzLFxuICB9O1xufVxuXG4vKipcbiAqIFR5cGUgaGVscGVyIGZ1bmN0aW9uIGZvciBjcmVhdGluZyBzdHJvbmdseS10eXBlZCByb3V0ZSBkZWZpbml0aW9ucy5cbiAqIFRoaXMgZnVuY3Rpb24gZG9lc24ndCBtb2RpZnkgdGhlIHJvdXRlLCBpdCBqdXN0IHByb3ZpZGVzIFR5cGVTY3JpcHQgdHlwZSBpbmZlcmVuY2UuXG4gKlxuICogQHRlbXBsYXRlIFRQcmVwYXJlZCAtIFRoZSB0eXBlIG9mIHByZXBhcmVkIGRhdGEgcmV0dXJuZWQgYnkgdGhlIHJvdXRlJ3MgcHJlcGFyZSBmdW5jdGlvblxuICogQHRlbXBsYXRlIFRWYXJpYWJsZXMgLSBSb3V0ZSBwYXJhbWV0ZXIgdHlwZXMgZXh0cmFjdGVkIGZyb20gdGhlIFVSTCBwYXRoXG4gKiBAcGFyYW0gcm91dGUgLSBUaGUgcm91dGUgY29uZmlndXJhdGlvbiB0byB0eXBlXG4gKiBAcmV0dXJucyBUaGUgc2FtZSByb3V0ZSB3aXRoIHByb3BlciBUeXBlU2NyaXB0IHR5cGVzXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNvbnN0IHVzZXJSb3V0ZSA9IHI8eyB1c2VyOiBVc2VyIH0sIHsgaWQ6IHN0cmluZyB9Pih7XG4gKiAgIHBhdGg6ICcvdXNlcnMvOmlkJyxcbiAqICAgcHJlcGFyZTogKHsgdmFyaWFibGVzIH0pID0+IGZldGNoVXNlcih2YXJpYWJsZXMuaWQpLFxuICogfSk7XG4gKiBgYGBcbiAqL1xuLyoqXG4gKiBSb3V0ZSBoZWxwZXIgd2l0aCBjb25kaXRpb25hbCBxdWVyeSBzY2hlbWEgaW5mZXJlbmNlLiBJZiBhIGBxdWVyeWAgc2NoZW1hIG9iamVjdCBpcyBwcmVzZW50LFxuICogdGhlIHJlc3VsdGluZyByb3V0ZSdzIHRoaXJkIGdlbmVyaWMgcGFyYW1ldGVyIGlzIGluZmVycmVkIGZyb20gZGVzY3JpcHRvciBtYXA7IG90aGVyd2lzZSBpdFxuICogZmFsbHMgYmFjayB0byB0aGUgcHJvdmlkZWQgZ2VuZXJpYyAoZGVmYXVsdCBSZWNvcmQ8c3RyaW5nLHVua25vd24+KS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHI8XG4gIFRQcmVwYXJlZCBleHRlbmRzIFByZXBhcmVSZXN1bHQgPSBQcmVwYXJlUmVzdWx0LFxuICBUVmFyaWFibGVzIGV4dGVuZHMgUGFyYW1EYXRhID0gUGFyYW1EYXRhLFxuICBUUXVlcnkgZXh0ZW5kcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiA9IFJlY29yZDxzdHJpbmcsIHVua25vd24+LFxuPihcbiAgcm91dGU6IFJvdXRlPFRQcmVwYXJlZCwgVFZhcmlhYmxlcywgVFF1ZXJ5Pixcbik6IFJvdXRlPFRQcmVwYXJlZCwgVFZhcmlhYmxlcywgVFF1ZXJ5PiB7XG4gIHJldHVybiByb3V0ZTtcbn1cbiJdfQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query-infer.test-d.d.ts","sourceRoot":"","sources":["../../../src/type-tests/query-infer.test-d.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"query-infer.test-d.d.ts","sourceRoot":"","sources":["../../../src/type-tests/query-infer.test-d.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC"}
|
|
@@ -1,49 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
page: q.default(q.number(), 1),
|
|
4
|
-
tag: q.array(q.string()),
|
|
5
|
-
mode: q.optional(q.enum('list', 'grid')),
|
|
6
|
-
flag: q.optional(q.boolean()),
|
|
7
|
-
raw: q.string(),
|
|
8
|
-
};
|
|
9
|
-
const parsed1 = parseTypedQuery(schema1, {
|
|
10
|
-
page: '2',
|
|
11
|
-
tag: ['a', 'b'],
|
|
12
|
-
mode: 'list',
|
|
13
|
-
flag: '1',
|
|
14
|
-
raw: 'x',
|
|
15
|
-
});
|
|
16
|
-
_consume(parsed1);
|
|
17
|
-
expectType(parsed1.page);
|
|
18
|
-
expectType(parsed1.tag);
|
|
19
|
-
expectType(parsed1.mode);
|
|
20
|
-
expectType(parsed1.flag);
|
|
21
|
-
expectType(parsed1.raw);
|
|
22
|
-
expectType(parsed1.page);
|
|
23
|
-
expectType(parsed1.tag);
|
|
24
|
-
const schema2 = { a: q.default(q.optional(q.number()), 5) };
|
|
25
|
-
const parsed2 = parseTypedQuery(schema2, {});
|
|
26
|
-
expectType(parsed2.a);
|
|
27
|
-
expectType(parsed2.a);
|
|
28
|
-
const schema3 = { tags: q.array(q.string()) };
|
|
29
|
-
const parsed3 = parseTypedQuery(schema3, {});
|
|
30
|
-
expectType(parsed3.tags);
|
|
31
|
-
expectType(parsed3.tags);
|
|
32
|
-
parsed1.page;
|
|
33
|
-
parsed2.a;
|
|
34
|
-
parsed3.tags.length;
|
|
35
|
-
const routeWithQuery = {
|
|
36
|
-
path: '/x/:id',
|
|
37
|
-
query: { page: q.number() },
|
|
38
|
-
prepare: ({ variables, query }) => ({
|
|
39
|
-
value: Number(variables.id) + query.page,
|
|
40
|
-
}),
|
|
41
|
-
};
|
|
42
|
-
routeWithQuery.prepare?.({
|
|
43
|
-
match: undefined,
|
|
44
|
-
matchedRoute: undefined,
|
|
45
|
-
resourcePage: undefined,
|
|
46
|
-
variables: { id: '1' },
|
|
47
|
-
query: { page: 2 },
|
|
48
|
-
});
|
|
49
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktaW5mZXIudGVzdC1kLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3R5cGUtdGVzdHMvcXVlcnktaW5mZXIudGVzdC1kLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBLE9BQU8sRUFBRSxDQUFDLEVBQUUsZUFBZSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFNM0QsTUFBTSxPQUFPLEdBQUc7SUFDZCxJQUFJLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQzlCLEdBQUcsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUN4QixJQUFJLEVBQUUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQztJQUN4QyxJQUFJLEVBQUUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDN0IsR0FBRyxFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUU7Q0FDUCxDQUFDO0FBS1gsTUFBTSxPQUFPLEdBQUcsZUFBZSxDQUFDLE9BQU8sRUFBRTtJQUN2QyxJQUFJLEVBQUUsR0FBRztJQUNULEdBQUcsRUFBRSxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUM7SUFDZixJQUFJLEVBQUUsTUFBTTtJQUNaLElBQUksRUFBRSxHQUFHO0lBQ1QsR0FBRyxFQUFFLEdBQUc7Q0FDVCxDQUFDLENBQUM7QUFHSCxRQUFRLENBQTZCLE9BQU8sQ0FBQyxDQUFDO0FBRTlDLFVBQVUsQ0FBUyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7QUFDakMsVUFBVSxDQUFXLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUNsQyxVQUFVLENBQThCLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUN0RCxVQUFVLENBQXNCLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUM5QyxVQUFVLENBQVMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBR2hDLFVBQVUsQ0FBUyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7QUFFakMsVUFBVSxDQUFTLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUtoQyxNQUFNLE9BQU8sR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQVcsQ0FBQztBQUNyRSxNQUFNLE9BQU8sR0FBRyxlQUFlLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0FBRTdDLFVBQVUsQ0FBcUIsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBRTFDLFVBQVUsQ0FBUyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFHOUIsTUFBTSxPQUFPLEdBQUcsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBVyxDQUFDO0FBQ3ZELE1BQU0sT0FBTyxHQUFHLGVBQWUsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLENBQUM7QUFDN0MsVUFBVSxDQUFXLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUVuQyxVQUFVLENBQVMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0FBR2pDLE9BQU8sQ0FBQyxJQUFJLENBQUM7QUFDYixPQUFPLENBQUMsQ0FBQyxDQUFDO0FBQ1YsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUM7QUFVcEIsTUFBTSxjQUFjLEdBQTZCO0lBQy9DLElBQUksRUFBRSxRQUFRO0lBQ2QsS0FBSyxFQUFFLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRTtJQUMzQixPQUFPLEVBQUUsQ0FBQyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNsQyxLQUFLLEVBQUUsTUFBTSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsR0FBRyxLQUFLLENBQUMsSUFBSTtLQUN6QyxDQUFDO0NBQ0gsQ0FBQztBQUVGLGNBQWMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUV2QixLQUFLLEVBQUUsU0FBUztJQUVoQixZQUFZLEVBQUUsU0FBZ0I7SUFDOUIsWUFBWSxFQUFFLFNBQVM7SUFDdkIsU0FBUyxFQUFFLEVBQUUsRUFBRSxFQUFFLEdBQUcsRUFBRTtJQUN0QixLQUFLLEVBQUUsRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFO0NBQ25CLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlICovXG4vLyBUeXBlIEluZmVyZW5jZSBUZXN0cyBmb3IgUGx1bWlsZSBSb3V0ZXIgUXVlcnkgRFNMXG4vLyBUaGVzZSBhc3NlcnRpb25zIHJlbHkgb24gVHlwZVNjcmlwdCBjb21waWxlLXRpbWUgY2hlY2tpbmcuXG5cbmltcG9ydCB7IHEsIHBhcnNlVHlwZWRRdWVyeSB9IGZyb20gJy4uL3Rvb2xzL3F1ZXJ5LWRzbC5qcyc7XG5pbXBvcnQgdHlwZSB7IEluZmVyUXVlcnksIFJvdXRlIH0gZnJvbSAnLi4vdHlwZXMuanMnO1xuXG5kZWNsYXJlIGZ1bmN0aW9uIGV4cGVjdFR5cGU8VD4oX3ZhbHVlOiBUKTogdm9pZDtcblxuLy8gU2NoZW1hIDFcbmNvbnN0IHNjaGVtYTEgPSB7XG4gIHBhZ2U6IHEuZGVmYXVsdChxLm51bWJlcigpLCAxKSxcbiAgdGFnOiBxLmFycmF5KHEuc3RyaW5nKCkpLFxuICBtb2RlOiBxLm9wdGlvbmFsKHEuZW51bSgnbGlzdCcsICdncmlkJykpLFxuICBmbGFnOiBxLm9wdGlvbmFsKHEuYm9vbGVhbigpKSxcbiAgcmF3OiBxLnN0cmluZygpLFxufSBhcyBjb25zdDtcblxuLy8gSGVscGVyIHRvIGNvbnN1bWUgdHlwZXMgbGF0ZXJcbmRlY2xhcmUgZnVuY3Rpb24gX2NvbnN1bWU8VD4oX3Y6IFQpOiB2b2lkO1xuXG5jb25zdCBwYXJzZWQxID0gcGFyc2VUeXBlZFF1ZXJ5KHNjaGVtYTEsIHtcbiAgcGFnZTogJzInLFxuICB0YWc6IFsnYScsICdiJ10sXG4gIG1vZGU6ICdsaXN0JyxcbiAgZmxhZzogJzEnLFxuICByYXc6ICd4Jyxcbn0pO1xuXG4vLyBDb25zdW1lIGluZmVycmVkIHR5cGUgKGFmdGVyIGRlZmluaXRpb24gdG8gYXZvaWQgdGVtcG9yYWwgZGVhZCB6b25lIGlzc3Vlcylcbl9jb25zdW1lPEluZmVyUXVlcnk8dHlwZW9mIHNjaGVtYTE+PihwYXJzZWQxKTtcblxuZXhwZWN0VHlwZTxudW1iZXI+KHBhcnNlZDEucGFnZSk7XG5leHBlY3RUeXBlPHN0cmluZ1tdPihwYXJzZWQxLnRhZyk7XG5leHBlY3RUeXBlPCdsaXN0JyB8ICdncmlkJyB8IHVuZGVmaW5lZD4ocGFyc2VkMS5tb2RlKTtcbmV4cGVjdFR5cGU8Ym9vbGVhbiB8IHVuZGVmaW5lZD4ocGFyc2VkMS5mbGFnKTtcbmV4cGVjdFR5cGU8c3RyaW5nPihwYXJzZWQxLnJhdyk7XG5cbi8vIEB0cy1leHBlY3QtZXJyb3IgcGFnZSBpcyBudW1iZXJcbmV4cGVjdFR5cGU8c3RyaW5nPihwYXJzZWQxLnBhZ2UpO1xuLy8gQHRzLWV4cGVjdC1lcnJvciB0YWcgaXMgc3RyaW5nW11cbmV4cGVjdFR5cGU8c3RyaW5nPihwYXJzZWQxLnRhZyk7XG4vLyBSZW1vdmUgaW5jb3JyZWN0IGV4cGVjdGF0aW9uOiByYXcgaXMgcmVxdWlyZWQgc3RyaW5nOyBhc3NlcnRpbmcgYnJvYWRlciB0eXBlIHNob3VsZCBlcnJvci5cbi8vIChyYXcgbmVnYXRpdmUgdGVzdCBvbWl0dGVkOiB3aWRlbmluZyB0byBzdHJpbmcgfCB1bmRlZmluZWQgd291bGQgbm90IGVycm9yIGluIFRTKVxuXG4vLyBTY2hlbWEgMiAob3B0aW9uYWwgKyBkZWZhdWx0KVxuY29uc3Qgc2NoZW1hMiA9IHsgYTogcS5kZWZhdWx0KHEub3B0aW9uYWwocS5udW1iZXIoKSksIDUpIH0gYXMgY29uc3Q7XG5jb25zdCBwYXJzZWQyID0gcGFyc2VUeXBlZFF1ZXJ5KHNjaGVtYTIsIHt9KTtcbi8vIEN1cnJlbnQgSW5mZXJRdWVyeSBrZWVwcyBvcHRpb25hbCBmbGFnIGV2ZW4gd2l0aCBkZWZhdWx0ID0+IG51bWJlciB8IHVuZGVmaW5lZFxuZXhwZWN0VHlwZTxudW1iZXIgfCB1bmRlZmluZWQ+KHBhcnNlZDIuYSk7XG4vLyBAdHMtZXhwZWN0LWVycm9yIGEgaXMgbm90IGEgc3RyaW5nXG5leHBlY3RUeXBlPHN0cmluZz4ocGFyc2VkMi5hKTtcblxuLy8gU2NoZW1hIDMgYXJyYXkgb25seVxuY29uc3Qgc2NoZW1hMyA9IHsgdGFnczogcS5hcnJheShxLnN0cmluZygpKSB9IGFzIGNvbnN0O1xuY29uc3QgcGFyc2VkMyA9IHBhcnNlVHlwZWRRdWVyeShzY2hlbWEzLCB7fSk7XG5leHBlY3RUeXBlPHN0cmluZ1tdPihwYXJzZWQzLnRhZ3MpO1xuLy8gQHRzLWV4cGVjdC1lcnJvciB0YWdzIGlzIHN0cmluZ1tdXG5leHBlY3RUeXBlPHN0cmluZz4ocGFyc2VkMy50YWdzKTtcblxuLy8gVXNlIGluZmVycmVkIHR5cGVzIHRvIGF2b2lkIHVudXNlZCB3YXJuaW5nc1xucGFyc2VkMS5wYWdlO1xucGFyc2VkMi5hO1xucGFyc2VkMy50YWdzLmxlbmd0aDtcblxuZXhwb3J0IHt9O1xuXG4vLyBSb3V0ZSBnZW5lcmljIHdpdGggZXhwbGljaXQgVFF1ZXJ5XG5pbnRlcmZhY2UgUHJlcERhdGEge1xuICB2YWx1ZTogbnVtYmVyO1xufVxudHlwZSBWYXJzID0geyBpZDogc3RyaW5nOyBbazogc3RyaW5nXTogc3RyaW5nIH07XG50eXBlIFEgPSB7IHBhZ2U6IG51bWJlciB9O1xuY29uc3Qgcm91dGVXaXRoUXVlcnk6IFJvdXRlPFByZXBEYXRhLCBWYXJzLCBRPiA9IHtcbiAgcGF0aDogJy94LzppZCcsXG4gIHF1ZXJ5OiB7IHBhZ2U6IHEubnVtYmVyKCkgfSxcbiAgcHJlcGFyZTogKHsgdmFyaWFibGVzLCBxdWVyeSB9KSA9PiAoe1xuICAgIHZhbHVlOiBOdW1iZXIodmFyaWFibGVzLmlkKSArIHF1ZXJ5LnBhZ2UsXG4gIH0pLFxufTtcbi8vIEVuc3VyZSBwcmVwYXJlIHJlY2VpdmVzIGNvcnJlY3QgdHlwZXNcbnJvdXRlV2l0aFF1ZXJ5LnByZXBhcmU/Lih7XG4gIC8vIEB0cy1leHBlY3QtZXJyb3IgbWF0Y2ggbWlzc2luZ1xuICBtYXRjaDogdW5kZWZpbmVkLFxuICAvLyBtaW5pbWFsIGNhc3QgZm9yIHJlcXVpcmVkIGZpZWxkcyBpbiB0aGlzIGlzb2xhdGVkIHRlc3QgY29udGV4dFxuICBtYXRjaGVkUm91dGU6IHVuZGVmaW5lZCBhcyBhbnksXG4gIHJlc291cmNlUGFnZTogdW5kZWZpbmVkLFxuICB2YXJpYWJsZXM6IHsgaWQ6ICcxJyB9LFxuICBxdWVyeTogeyBwYWdlOiAyIH0sXG59KTtcbiJdfQ==
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktaW5mZXIudGVzdC1kLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3R5cGUtdGVzdHMvcXVlcnktaW5mZXIudGVzdC1kLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBMZWdhY3kgcXVlcnkgRFNMIHR5cGUgaW5mZXJlbmNlIHRlc3QgcmVtb3ZlZC5cbi8vIEludGVudGlvbmFsIGVtcHR5IGZpbGUgdG8gc2F0aXNmeSB0c2J1aWxkIHdpdGhvdXQgbGVnYWN5IHN5bWJvbHMuXG5leHBvcnQge307XG4iXX0=
|
|
@@ -1,49 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
const plansRoute = r({
|
|
4
|
-
path: '/plans',
|
|
5
|
-
query: schema,
|
|
6
|
-
prepare: () => {
|
|
7
|
-
return { plansLoaded: true };
|
|
8
|
-
},
|
|
9
|
-
});
|
|
10
|
-
const userRoute = r({
|
|
11
|
-
path: '/users/:id',
|
|
12
|
-
prepare: ({ variables }) => {
|
|
13
|
-
return { userId: variables.id };
|
|
14
|
-
},
|
|
15
|
-
});
|
|
16
|
-
const searchRoute = r({
|
|
17
|
-
path: '/search',
|
|
18
|
-
query: { q: q.string() },
|
|
19
|
-
prepare: ({ query }) => {
|
|
20
|
-
return { term: query.q };
|
|
21
|
-
},
|
|
22
|
-
});
|
|
23
|
-
const { context } = createRouter([plansRoute, userRoute, searchRoute]);
|
|
24
|
-
const entry = context.get();
|
|
25
|
-
function __consume(_v) {
|
|
26
|
-
}
|
|
27
|
-
if (entry.route?.path === '/plans') {
|
|
28
|
-
const typed = entry.typedQuery;
|
|
29
|
-
if (typed != null) {
|
|
30
|
-
__consume(typed.page);
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
if (entry.route?.path === '/users/:id') {
|
|
34
|
-
const prepared = entry.preparedMatch.routes.find((r) => {
|
|
35
|
-
return r.path === '/users/:id';
|
|
36
|
-
})?.prepared;
|
|
37
|
-
if (prepared != null) {
|
|
38
|
-
__consume(prepared.userId);
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
if (entry.route?.path === '/search') {
|
|
42
|
-
const p = entry.preparedMatch.routes.find((r) => {
|
|
43
|
-
return r.path === '/search';
|
|
44
|
-
})?.prepared;
|
|
45
|
-
if (p != null) {
|
|
46
|
-
__consume(p.term);
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGVzLWluZmVyZW5jZS50ZXN0LWQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdHlwZS10ZXN0cy9yb3V0ZXMtaW5mZXJlbmNlLnRlc3QtZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxZQUFZLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFHakQsTUFBTSxNQUFNLEdBQUcsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFXLENBQUM7QUFFN0MsTUFBTSxVQUFVLEdBQUcsQ0FBQyxDQUFDO0lBQ25CLElBQUksRUFBRSxRQUFRO0lBQ2QsS0FBSyxFQUFFLE1BQU07SUFDYixPQUFPLEVBQUUsR0FBRyxFQUFFO1FBQ1osT0FBTyxFQUFFLFdBQVcsRUFBRSxJQUFhLEVBQUUsQ0FBQztJQUN4QyxDQUFDO0NBQ0YsQ0FBQyxDQUFDO0FBRUgsTUFBTSxTQUFTLEdBQUcsQ0FBQyxDQUFxQztJQUN0RCxJQUFJLEVBQUUsWUFBWTtJQUNsQixPQUFPLEVBQUUsQ0FBQyxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUU7UUFDekIsT0FBTyxFQUFFLE1BQU0sRUFBRSxTQUFTLENBQUMsRUFBRSxFQUFFLENBQUM7SUFDbEMsQ0FBQztDQUNGLENBQUMsQ0FBQztBQUVILE1BQU0sV0FBVyxHQUFHLENBQUMsQ0FBQztJQUNwQixJQUFJLEVBQUUsU0FBUztJQUNmLEtBQUssRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQVc7SUFDakMsT0FBTyxFQUFFLENBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFO1FBQ3JCLE9BQU8sRUFBRSxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQzNCLENBQUM7Q0FDRixDQUFDLENBQUM7QUFFSCxNQUFNLEVBQUUsT0FBTyxFQUFFLEdBQUcsWUFBWSxDQUFDLENBQUMsVUFBVSxFQUFFLFNBQVMsRUFBRSxXQUFXLENBQVUsQ0FBQyxDQUFDO0FBR2hGLE1BQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQztBQUc1QixTQUFTLFNBQVMsQ0FBSSxFQUFLO0FBRTNCLENBQUM7QUFDRCxJQUFJLEtBQUssQ0FBQyxLQUFLLEVBQUUsSUFBSSxLQUFLLFFBQVEsRUFBRSxDQUFDO0lBQ25DLE1BQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxVQUEyQyxDQUFDO0lBQ2hFLElBQUksS0FBSyxJQUFJLElBQUksRUFBRSxDQUFDO1FBQ2xCLFNBQVMsQ0FBcUIsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzVDLENBQUM7QUFDSCxDQUFDO0FBQ0QsSUFBSSxLQUFLLENBQUMsS0FBSyxFQUFFLElBQUksS0FBSyxZQUFZLEVBQUUsQ0FBQztJQUN2QyxNQUFNLFFBQVEsR0FBRyxLQUFLLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtRQUNyRCxPQUFPLENBQUMsQ0FBQyxJQUFJLEtBQUssWUFBWSxDQUFDO0lBQ2pDLENBQUMsQ0FBQyxFQUFFLFFBQTBDLENBQUM7SUFDL0MsSUFBSSxRQUFRLElBQUksSUFBSSxFQUFFLENBQUM7UUFDckIsU0FBUyxDQUFTLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNyQyxDQUFDO0FBQ0gsQ0FBQztBQUNELElBQUksS0FBSyxDQUFDLEtBQUssRUFBRSxJQUFJLEtBQUssU0FBUyxFQUFFLENBQUM7SUFDcEMsTUFBTSxDQUFDLEdBQUcsS0FBSyxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7UUFDOUMsT0FBTyxDQUFDLENBQUMsSUFBSSxLQUFLLFNBQVMsQ0FBQztJQUM5QixDQUFDLENBQUMsRUFBRSxRQUFvRCxDQUFDO0lBQ3pELElBQUksQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDO1FBQ2QsU0FBUyxDQUFxQixDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDeEMsQ0FBQztBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyByLCBxLCBjcmVhdGVSb3V0ZXIgfSBmcm9tICcuLi9pbmRleC5qcyc7XG5cbi8vIEJhc2ljIHF1ZXJ5IHNjaGVtYVxuY29uc3Qgc2NoZW1hID0geyBwYWdlOiBxLm51bWJlcigpIH0gYXMgY29uc3Q7XG5cbmNvbnN0IHBsYW5zUm91dGUgPSByKHtcbiAgcGF0aDogJy9wbGFucycsXG4gIHF1ZXJ5OiBzY2hlbWEsXG4gIHByZXBhcmU6ICgpID0+IHtcbiAgICByZXR1cm4geyBwbGFuc0xvYWRlZDogdHJ1ZSBhcyBjb25zdCB9O1xuICB9LFxufSk7XG5cbmNvbnN0IHVzZXJSb3V0ZSA9IHI8eyB1c2VySWQ6IHN0cmluZyB9LCB7IGlkOiBzdHJpbmcgfT4oe1xuICBwYXRoOiAnL3VzZXJzLzppZCcsXG4gIHByZXBhcmU6ICh7IHZhcmlhYmxlcyB9KSA9PiB7XG4gICAgcmV0dXJuIHsgdXNlcklkOiB2YXJpYWJsZXMuaWQgfTtcbiAgfSxcbn0pO1xuXG5jb25zdCBzZWFyY2hSb3V0ZSA9IHIoe1xuICBwYXRoOiAnL3NlYXJjaCcsXG4gIHF1ZXJ5OiB7IHE6IHEuc3RyaW5nKCkgfSBhcyBjb25zdCxcbiAgcHJlcGFyZTogKHsgcXVlcnkgfSkgPT4ge1xuICAgIHJldHVybiB7IHRlcm06IHF1ZXJ5LnEgfTtcbiAgfSxcbn0pO1xuXG5jb25zdCB7IGNvbnRleHQgfSA9IGNyZWF0ZVJvdXRlcihbcGxhbnNSb3V0ZSwgdXNlclJvdXRlLCBzZWFyY2hSb3V0ZV0gYXMgY29uc3QpO1xuXG4vLyBOYXJyb3dpbmcgdGVzdHMgKGNvbXBpbGUtdGltZSBvbmx5KVxuY29uc3QgZW50cnkgPSBjb250ZXh0LmdldCgpO1xuLyoqIE5vLW9wIHNpbmsgdG8gZm9yY2UgdHlwZSBldmFsdWF0aW9uIHdpdGhvdXQgcnVudGltZSB1c2FnZSAqL1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFyc1xuZnVuY3Rpb24gX19jb25zdW1lPFQ+KF92OiBUKTogdm9pZCB7XG4gIC8qIG5vb3AgKi9cbn1cbmlmIChlbnRyeS5yb3V0ZT8ucGF0aCA9PT0gJy9wbGFucycpIHtcbiAgY29uc3QgdHlwZWQgPSBlbnRyeS50eXBlZFF1ZXJ5IGFzIHsgcGFnZT86IG51bWJlciB9IHwgdW5kZWZpbmVkO1xuICBpZiAodHlwZWQgIT0gbnVsbCkge1xuICAgIF9fY29uc3VtZTxudW1iZXIgfCB1bmRlZmluZWQ+KHR5cGVkLnBhZ2UpO1xuICB9XG59XG5pZiAoZW50cnkucm91dGU/LnBhdGggPT09ICcvdXNlcnMvOmlkJykge1xuICBjb25zdCBwcmVwYXJlZCA9IGVudHJ5LnByZXBhcmVkTWF0Y2gucm91dGVzLmZpbmQoKHIpID0+IHtcbiAgICByZXR1cm4gci5wYXRoID09PSAnL3VzZXJzLzppZCc7XG4gIH0pPy5wcmVwYXJlZCBhcyB7IHVzZXJJZDogc3RyaW5nIH0gfCB1bmRlZmluZWQ7XG4gIGlmIChwcmVwYXJlZCAhPSBudWxsKSB7XG4gICAgX19jb25zdW1lPHN0cmluZz4ocHJlcGFyZWQudXNlcklkKTtcbiAgfVxufVxuaWYgKGVudHJ5LnJvdXRlPy5wYXRoID09PSAnL3NlYXJjaCcpIHtcbiAgY29uc3QgcCA9IGVudHJ5LnByZXBhcmVkTWF0Y2gucm91dGVzLmZpbmQoKHIpID0+IHtcbiAgICByZXR1cm4gci5wYXRoID09PSAnL3NlYXJjaCc7XG4gIH0pPy5wcmVwYXJlZCBhcyB7IHRlcm06IHN0cmluZyB8IHVuZGVmaW5lZCB9IHwgdW5kZWZpbmVkO1xuICBpZiAocCAhPSBudWxsKSB7XG4gICAgX19jb25zdW1lPHN0cmluZyB8IHVuZGVmaW5lZD4ocC50ZXJtKTtcbiAgfVxufVxuIl19
|
|
1
|
+
"use strict";
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGVzLWluZmVyZW5jZS50ZXN0LWQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdHlwZS10ZXN0cy9yb3V0ZXMtaW5mZXJlbmNlLnRlc3QtZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiLyoqIFBsYWNlaG9sZGVyIGxlZ2FjeSB0eXBlIHRlc3QgcmVtb3ZlZCAoUXVlcnlTY2hlbWEgRFNMIGRlcHJlY2F0ZWQpLiAqL1xuIl19
|
package/lib/esm/types.d.ts
CHANGED
|
@@ -45,21 +45,9 @@ export type RouteEntry<TVariables extends ParamData> = {
|
|
|
45
45
|
forceRerender: boolean;
|
|
46
46
|
rawSearch?: string;
|
|
47
47
|
query: Record<string, string | string[]>;
|
|
48
|
-
typedQuery?: Record<string, unknown>;
|
|
49
48
|
filters?: Record<string, unknown>;
|
|
50
49
|
filterDiagnostics?: FilterDiagnostic[];
|
|
51
|
-
|
|
52
|
-
export type QueryDescriptor<T> = {
|
|
53
|
-
__type: T;
|
|
54
|
-
parse: (values: string[]) => T | undefined;
|
|
55
|
-
serialize: (value: T) => string[];
|
|
56
|
-
optional?: boolean;
|
|
57
|
-
hasDefault?: boolean;
|
|
58
|
-
defaultValue?: T;
|
|
59
|
-
};
|
|
60
|
-
export type QuerySchema = Record<string, QueryDescriptor<any>>;
|
|
61
|
-
export type InferQuery<S extends QuerySchema> = {
|
|
62
|
-
[K in keyof S]: S[K] extends QueryDescriptor<infer O> ? S[K]['optional'] extends true ? S[K]['hasDefault'] extends true ? O : O | undefined : O : never;
|
|
50
|
+
activeQuerySchema?: FilterSchema;
|
|
63
51
|
};
|
|
64
52
|
export type RouterRedirectStatus = 301 | 302;
|
|
65
53
|
export type MatchedRoute<TVariables extends ParamData> = {
|
|
@@ -86,8 +74,7 @@ export type Route<TPrepared extends PrepareResult, TVariables extends ParamData
|
|
|
86
74
|
path?: string;
|
|
87
75
|
prepare?: RoutePrepare<TPrepared, TVariables, TQueryShape>;
|
|
88
76
|
render?: RouteRender<TPrepared, TVariables, TQueryShape>;
|
|
89
|
-
|
|
90
|
-
filterSchema?: FilterSchema;
|
|
77
|
+
querySchema?: FilterSchema;
|
|
91
78
|
};
|
|
92
79
|
export type RouteComponentProps<TVariables extends ParamData, TQueryShape extends Record<string, unknown> = Record<string, unknown>> = {
|
|
93
80
|
children: ReactElement;
|
|
@@ -134,7 +121,6 @@ export type QueryShapeMap<Routes extends readonly AnyRoute[]> = {
|
|
|
134
121
|
};
|
|
135
122
|
export interface PreparedAccess<Routes extends readonly AnyRoute[]> {
|
|
136
123
|
getPrepared: <P extends PathsOf<Routes>>(path: P) => PreparedMap<Routes>[P];
|
|
137
|
-
getTypedQuery: <P extends PathsOf<Routes>>(path: P) => QueryShapeMap<Routes>[P] | undefined;
|
|
138
124
|
}
|
|
139
125
|
export type NavigateInputForPath<Routes extends readonly AnyRoute[], P extends PathsOf<Routes>> = {
|
|
140
126
|
pathname: P;
|