@geometra/router 1.1.2 → 1.2.1
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/dist/link.d.ts +10 -0
- package/dist/link.d.ts.map +1 -1
- package/dist/link.js +10 -0
- package/dist/link.js.map +1 -1
- package/dist/path.d.ts +6 -3
- package/dist/path.d.ts.map +1 -1
- package/dist/path.js +27 -7
- package/dist/path.js.map +1 -1
- package/dist/query.d.ts +3 -0
- package/dist/query.d.ts.map +1 -1
- package/dist/query.js +8 -1
- package/dist/query.js.map +1 -1
- package/dist/ranking.d.ts +11 -0
- package/dist/ranking.d.ts.map +1 -1
- package/dist/ranking.js +11 -0
- package/dist/ranking.js.map +1 -1
- package/package.json +2 -2
package/dist/link.d.ts
CHANGED
|
@@ -10,5 +10,15 @@ export type LinkProps = FlexProps & StyleProps & {
|
|
|
10
10
|
onClick?: (event: HitEvent) => void;
|
|
11
11
|
onKeyDown?: (event: KeyboardHitEvent) => void;
|
|
12
12
|
};
|
|
13
|
+
/**
|
|
14
|
+
* Declarative navigation target: a focusable box with link semantics (`role: link`, `tag: a`) and
|
|
15
|
+
* `cursor: pointer` unless overridden.
|
|
16
|
+
*
|
|
17
|
+
* - **Pointer**: `onClick` calls your handler first, then `router.navigate(to, { replace })`.
|
|
18
|
+
* - **Keyboard**: `onKeyDown` runs first; **Enter**, **Space** (`' '`), and legacy **Spacebar**
|
|
19
|
+
* then navigate the same way.
|
|
20
|
+
*
|
|
21
|
+
* Layout and style props are forwarded to {@link import('@geometra/core').box} like any other box element.
|
|
22
|
+
*/
|
|
13
23
|
export declare function link(props: LinkProps, children?: UIElement[]): BoxElement;
|
|
14
24
|
//# sourceMappingURL=link.d.ts.map
|
package/dist/link.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"link.d.ts","sourceRoot":"","sources":["../src/link.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,KAAK,UAAU,EAAE,KAAK,QAAQ,EAAE,KAAK,gBAAgB,EAAE,KAAK,aAAa,EAAE,KAAK,UAAU,EAAE,KAAK,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAChJ,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AACxC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEzC,MAAM,MAAM,SAAS,GAAG,SAAS,GAC/B,UAAU,GAAG;IACX,EAAE,EAAE,MAAM,CAAA;IACV,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;IAChC,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,QAAQ,CAAC,EAAE,aAAa,CAAA;IACxB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,IAAI,CAAA;IACnC,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,IAAI,CAAA;CAC9C,CAAA;AAMH,wBAAgB,IAAI,CAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,GAAE,SAAS,EAAO,GAAG,UAAU,CAoC7E"}
|
|
1
|
+
{"version":3,"file":"link.d.ts","sourceRoot":"","sources":["../src/link.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,KAAK,UAAU,EAAE,KAAK,QAAQ,EAAE,KAAK,gBAAgB,EAAE,KAAK,aAAa,EAAE,KAAK,UAAU,EAAE,KAAK,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAChJ,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AACxC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEzC,MAAM,MAAM,SAAS,GAAG,SAAS,GAC/B,UAAU,GAAG;IACX,EAAE,EAAE,MAAM,CAAA;IACV,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;IAChC,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,QAAQ,CAAC,EAAE,aAAa,CAAA;IACxB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,IAAI,CAAA;IACnC,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,IAAI,CAAA;CAC9C,CAAA;AAMH;;;;;;;;;GASG;AACH,wBAAgB,IAAI,CAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,GAAE,SAAS,EAAO,GAAG,UAAU,CAoC7E"}
|
package/dist/link.js
CHANGED
|
@@ -2,6 +2,16 @@ import { box } from '@geometra/core';
|
|
|
2
2
|
function isActivationKey(key) {
|
|
3
3
|
return key === 'Enter' || key === ' ' || key === 'Spacebar';
|
|
4
4
|
}
|
|
5
|
+
/**
|
|
6
|
+
* Declarative navigation target: a focusable box with link semantics (`role: link`, `tag: a`) and
|
|
7
|
+
* `cursor: pointer` unless overridden.
|
|
8
|
+
*
|
|
9
|
+
* - **Pointer**: `onClick` calls your handler first, then `router.navigate(to, { replace })`.
|
|
10
|
+
* - **Keyboard**: `onKeyDown` runs first; **Enter**, **Space** (`' '`), and legacy **Spacebar**
|
|
11
|
+
* then navigate the same way.
|
|
12
|
+
*
|
|
13
|
+
* Layout and style props are forwarded to {@link import('@geometra/core').box} like any other box element.
|
|
14
|
+
*/
|
|
5
15
|
export function link(props, children = []) {
|
|
6
16
|
const { to, router, replace, key, semantic, onClick, onKeyDown, cursor, ...styleAndLayout } = props;
|
|
7
17
|
return box({
|
package/dist/link.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"link.js","sourceRoot":"","sources":["../src/link.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAA8G,MAAM,gBAAgB,CAAA;AAehJ,SAAS,eAAe,CAAC,GAAW;IAClC,OAAO,GAAG,KAAK,OAAO,IAAI,GAAG,KAAK,GAAG,IAAI,GAAG,KAAK,UAAU,CAAA;AAC7D,CAAC;AAED,MAAM,UAAU,IAAI,CAAC,KAAgB,EAAE,WAAwB,EAAE;IAC/D,MAAM,EACJ,EAAE,EACF,MAAM,EACN,OAAO,EACP,GAAG,EACH,QAAQ,EACR,OAAO,EACP,SAAS,EACT,MAAM,EACN,GAAG,cAAc,EAClB,GAAG,KAAK,CAAA;IAET,OAAO,GAAG,CACR;QACE,GAAG,cAAc;QACjB,MAAM,EAAE,MAAM,IAAI,SAAS;QAC3B,GAAG;QACH,QAAQ,EAAE;YACR,GAAG,QAAQ;YACX,GAAG,EAAE,QAAQ,EAAE,GAAG,IAAI,GAAG;YACzB,IAAI,EAAE,QAAQ,EAAE,IAAI,IAAI,MAAM;SAC/B;QACD,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YACjB,OAAO,EAAE,CAAC,KAAK,CAAC,CAAA;YAChB,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CAAA;QAClC,CAAC;QACD,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE;YACnB,SAAS,EAAE,CAAC,KAAK,CAAC,CAAA;YAClB,IAAI,eAAe,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC/B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CAAA;YAClC,CAAC;QACH,CAAC;KACF,EACD,QAAQ,CACT,CAAA;AACH,CAAC"}
|
|
1
|
+
{"version":3,"file":"link.js","sourceRoot":"","sources":["../src/link.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAA8G,MAAM,gBAAgB,CAAA;AAehJ,SAAS,eAAe,CAAC,GAAW;IAClC,OAAO,GAAG,KAAK,OAAO,IAAI,GAAG,KAAK,GAAG,IAAI,GAAG,KAAK,UAAU,CAAA;AAC7D,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,IAAI,CAAC,KAAgB,EAAE,WAAwB,EAAE;IAC/D,MAAM,EACJ,EAAE,EACF,MAAM,EACN,OAAO,EACP,GAAG,EACH,QAAQ,EACR,OAAO,EACP,SAAS,EACT,MAAM,EACN,GAAG,cAAc,EAClB,GAAG,KAAK,CAAA;IAET,OAAO,GAAG,CACR;QACE,GAAG,cAAc;QACjB,MAAM,EAAE,MAAM,IAAI,SAAS;QAC3B,GAAG;QACH,QAAQ,EAAE;YACR,GAAG,QAAQ;YACX,GAAG,EAAE,QAAQ,EAAE,GAAG,IAAI,GAAG;YACzB,IAAI,EAAE,QAAQ,EAAE,IAAI,IAAI,MAAM;SAC/B;QACD,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YACjB,OAAO,EAAE,CAAC,KAAK,CAAC,CAAA;YAChB,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CAAA;QAClC,CAAC;QACD,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE;YACnB,SAAS,EAAE,CAAC,KAAK,CAAC,CAAA;YAClB,IAAI,eAAe,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC/B,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CAAA;YAClC,CAAC;QACH,CAAC;KACF,EACD,QAAQ,CACT,CAAA;AACH,CAAC"}
|
package/dist/path.d.ts
CHANGED
|
@@ -13,9 +13,12 @@ export type PathParams<Path extends string> = {
|
|
|
13
13
|
/**
|
|
14
14
|
* Build a pathname from a route pattern and {@link PathParams}. Static segments are copied as-is;
|
|
15
15
|
* dynamic `:id` and optional `:id?` are filled from `params`; splat `*rest` (or a lone `*`, key `'*'`)
|
|
16
|
-
* inserts the remainder with internal slashes preserved
|
|
17
|
-
*
|
|
18
|
-
*
|
|
16
|
+
* inserts the remainder with internal slashes preserved (slashes are not percent-encoded; string values are still
|
|
17
|
+
* passed through `String.prototype.toWellFormed` so lone surrogates match `:param` / query parity). For optional segments, `null`, `undefined`,
|
|
18
|
+
* empty string, a non-finite number (`NaN`, `±Infinity`), or a `BigInt` omits the segment (same as leaving the key unset).
|
|
19
|
+
* Required dynamic and splat params throw when missing, empty, non-finite numeric, or `BigInt`. `:param` values are
|
|
20
|
+
* percent-encoded after `String.prototype.toWellFormed` (parity with `stringifyQuery` in `query.ts`).
|
|
21
|
+
* Leading and trailing slashes on `pattern` are trimmed before building.
|
|
19
22
|
*/
|
|
20
23
|
export declare function buildPath<Path extends string>(pattern: Path, params: PathParams<Path>): string;
|
|
21
24
|
export {};
|
package/dist/path.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"path.d.ts","sourceRoot":"","sources":["../src/path.ts"],"names":[],"mappings":"AAAA,KAAK,gBAAgB,CAAC,IAAI,SAAS,MAAM,IACvC,IAAI,SAAS,GAAG,MAAM,IAAI,IAAI,MAAM,IAAI,EAAE,GACtC,gBAAgB,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,IAAI,CAAC,GAC/C,IAAI,SAAS,IAAI,MAAM,KAAK,GAAG,GAC7B,KAAK,GACL,IAAI,SAAS,IAAI,MAAM,KAAK,EAAE,GAC5B,KAAK,GACL,IAAI,SAAS,IAAI,MAAM,KAAK,EAAE,GAC5B,CAAC,KAAK,SAAS,EAAE,GAAG,GAAG,GAAG,KAAK,CAAC,GAChC,KAAK,CAAA;AAEjB,KAAK,wBAAwB,CAAC,IAAI,SAAS,MAAM,IAC/C,IAAI,SAAS,GAAG,MAAM,IAAI,IAAI,MAAM,IAAI,EAAE,GACtC,wBAAwB,CAAC,IAAI,CAAC,GAAG,wBAAwB,CAAC,IAAI,CAAC,GAC/D,IAAI,SAAS,IAAI,MAAM,KAAK,EAAE,GAC5B,CAAC,KAAK,SAAS,GAAG,MAAM,GAAG,GAAG,KAAK,GAAG,KAAK,CAAC,GAC5C,IAAI,SAAS,IAAI,MAAM,KAAK,EAAE,GAC5B,CAAC,KAAK,SAAS,EAAE,GAAG,GAAG,GAAG,KAAK,CAAC,GAChC,KAAK,CAAA;AAEf,KAAK,wBAAwB,CAAC,IAAI,SAAS,MAAM,IAAI,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,wBAAwB,CAAC,IAAI,CAAC,CAAC,CAAA;AAEpH;;;GAGG;AACH,MAAM,MAAM,UAAU,CAAC,IAAI,SAAS,MAAM,IAAI;KAC3C,CAAC,IAAI,wBAAwB,CAAC,IAAI,CAAC,GAAG,MAAM,GAAG,MAAM;CACvD,GAAG;KACD,CAAC,IAAI,wBAAwB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM;CACxD,CAAA;
|
|
1
|
+
{"version":3,"file":"path.d.ts","sourceRoot":"","sources":["../src/path.ts"],"names":[],"mappings":"AAAA,KAAK,gBAAgB,CAAC,IAAI,SAAS,MAAM,IACvC,IAAI,SAAS,GAAG,MAAM,IAAI,IAAI,MAAM,IAAI,EAAE,GACtC,gBAAgB,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,IAAI,CAAC,GAC/C,IAAI,SAAS,IAAI,MAAM,KAAK,GAAG,GAC7B,KAAK,GACL,IAAI,SAAS,IAAI,MAAM,KAAK,EAAE,GAC5B,KAAK,GACL,IAAI,SAAS,IAAI,MAAM,KAAK,EAAE,GAC5B,CAAC,KAAK,SAAS,EAAE,GAAG,GAAG,GAAG,KAAK,CAAC,GAChC,KAAK,CAAA;AAEjB,KAAK,wBAAwB,CAAC,IAAI,SAAS,MAAM,IAC/C,IAAI,SAAS,GAAG,MAAM,IAAI,IAAI,MAAM,IAAI,EAAE,GACtC,wBAAwB,CAAC,IAAI,CAAC,GAAG,wBAAwB,CAAC,IAAI,CAAC,GAC/D,IAAI,SAAS,IAAI,MAAM,KAAK,EAAE,GAC5B,CAAC,KAAK,SAAS,GAAG,MAAM,GAAG,GAAG,KAAK,GAAG,KAAK,CAAC,GAC5C,IAAI,SAAS,IAAI,MAAM,KAAK,EAAE,GAC5B,CAAC,KAAK,SAAS,EAAE,GAAG,GAAG,GAAG,KAAK,CAAC,GAChC,KAAK,CAAA;AAEf,KAAK,wBAAwB,CAAC,IAAI,SAAS,MAAM,IAAI,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,wBAAwB,CAAC,IAAI,CAAC,CAAC,CAAA;AAEpH;;;GAGG;AACH,MAAM,MAAM,UAAU,CAAC,IAAI,SAAS,MAAM,IAAI;KAC3C,CAAC,IAAI,wBAAwB,CAAC,IAAI,CAAC,GAAG,MAAM,GAAG,MAAM;CACvD,GAAG;KACD,CAAC,IAAI,wBAAwB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM;CACxD,CAAA;AA0BD;;;;;;;;;GASG;AACH,wBAAgB,SAAS,CAAC,IAAI,SAAS,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,GAAG,MAAM,CAkC9F"}
|
package/dist/path.js
CHANGED
|
@@ -2,14 +2,34 @@ function trimSlashes(value) {
|
|
|
2
2
|
return value.replace(/^\/+|\/+$/g, '');
|
|
3
3
|
}
|
|
4
4
|
function stringifyParam(value) {
|
|
5
|
-
|
|
5
|
+
// Lone surrogates make encodeURIComponent throw URIError; normalize first (parity with query.ts).
|
|
6
|
+
const s = typeof value === 'string' ? value.toWellFormed() : String(value);
|
|
7
|
+
return encodeURIComponent(s);
|
|
8
|
+
}
|
|
9
|
+
/** Splat remainders preserve internal slashes; still normalize ill-formed UTF-16 (parity with {@link stringifyParam}). */
|
|
10
|
+
function wellFormedSplatRemainder(value) {
|
|
11
|
+
const raw = typeof value === 'string' ? value.toWellFormed() : String(value);
|
|
12
|
+
return trimSlashes(raw);
|
|
13
|
+
}
|
|
14
|
+
/** True when a param value should participate in the path (non-finite numbers omitted; mirrors `stringifyQuery` in `query.ts`). */
|
|
15
|
+
function paramValuePresent(value) {
|
|
16
|
+
if (value == null || value === '')
|
|
17
|
+
return false;
|
|
18
|
+
if (typeof value === 'bigint')
|
|
19
|
+
return false;
|
|
20
|
+
if (typeof value === 'number' && !Number.isFinite(value))
|
|
21
|
+
return false;
|
|
22
|
+
return true;
|
|
6
23
|
}
|
|
7
24
|
/**
|
|
8
25
|
* Build a pathname from a route pattern and {@link PathParams}. Static segments are copied as-is;
|
|
9
26
|
* dynamic `:id` and optional `:id?` are filled from `params`; splat `*rest` (or a lone `*`, key `'*'`)
|
|
10
|
-
* inserts the remainder with internal slashes preserved
|
|
11
|
-
*
|
|
12
|
-
*
|
|
27
|
+
* inserts the remainder with internal slashes preserved (slashes are not percent-encoded; string values are still
|
|
28
|
+
* passed through `String.prototype.toWellFormed` so lone surrogates match `:param` / query parity). For optional segments, `null`, `undefined`,
|
|
29
|
+
* empty string, a non-finite number (`NaN`, `±Infinity`), or a `BigInt` omits the segment (same as leaving the key unset).
|
|
30
|
+
* Required dynamic and splat params throw when missing, empty, non-finite numeric, or `BigInt`. `:param` values are
|
|
31
|
+
* percent-encoded after `String.prototype.toWellFormed` (parity with `stringifyQuery` in `query.ts`).
|
|
32
|
+
* Leading and trailing slashes on `pattern` are trimmed before building.
|
|
13
33
|
*/
|
|
14
34
|
export function buildPath(pattern, params) {
|
|
15
35
|
const trimmed = trimSlashes(pattern);
|
|
@@ -21,17 +41,17 @@ export function buildPath(pattern, params) {
|
|
|
21
41
|
if (part.startsWith('*')) {
|
|
22
42
|
const key = part.slice(1) || '*';
|
|
23
43
|
const value = params[key];
|
|
24
|
-
if (value
|
|
44
|
+
if (!paramValuePresent(value)) {
|
|
25
45
|
throw new Error(`Missing required splat param: ${key}`);
|
|
26
46
|
}
|
|
27
|
-
out.push(
|
|
47
|
+
out.push(wellFormedSplatRemainder(value));
|
|
28
48
|
continue;
|
|
29
49
|
}
|
|
30
50
|
if (part.startsWith(':')) {
|
|
31
51
|
const optional = part.endsWith('?');
|
|
32
52
|
const key = optional ? part.slice(1, -1) : part.slice(1);
|
|
33
53
|
const value = params[key];
|
|
34
|
-
if (value
|
|
54
|
+
if (!paramValuePresent(value)) {
|
|
35
55
|
if (optional)
|
|
36
56
|
continue;
|
|
37
57
|
throw new Error(`Missing required path param: ${key}`);
|
package/dist/path.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"path.js","sourceRoot":"","sources":["../src/path.ts"],"names":[],"mappings":"AAgCA,SAAS,WAAW,CAAC,KAAa;IAChC,OAAO,KAAK,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAA;AACxC,CAAC;AAED,SAAS,cAAc,CAAC,KAAsB;IAC5C,OAAO,kBAAkB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"path.js","sourceRoot":"","sources":["../src/path.ts"],"names":[],"mappings":"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"}
|
package/dist/query.d.ts
CHANGED
|
@@ -11,6 +11,9 @@ export type ParsedQuery = Record<string, string | string[]>;
|
|
|
11
11
|
* `+` in values is treated as space. Duplicate keys collapse to `string[]` in encounter order.
|
|
12
12
|
* If decoding a segment throws, that segment is left as the raw string (see malformed `%` escapes).
|
|
13
13
|
* The returned object has a null prototype (see {@link ParsedQuery}).
|
|
14
|
+
*
|
|
15
|
+
* Any raw `#` and following characters are ignored (URL fragment delimiter), so accidental
|
|
16
|
+
* `?a=1#hash` input still parses like `location.search`. Encoded `#` inside values (`%23`) is unchanged.
|
|
14
17
|
*/
|
|
15
18
|
export declare function parseQuery(search: string): ParsedQuery;
|
|
16
19
|
/**
|
package/dist/query.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../src/query.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,CAAA;AACrE,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,UAAU,GAAG,UAAU,EAAE,CAAC,CAAA;AAClE;;;;GAIG;AACH,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC,CAAA;AAe3D
|
|
1
|
+
{"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../src/query.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,CAAA;AACrE,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,UAAU,GAAG,UAAU,EAAE,CAAC,CAAA;AAClE;;;;GAIG;AACH,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC,CAAA;AAe3D;;;;;;;;GAQG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,WAAW,CAyBtD;AAED;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,CAkBxD"}
|
package/dist/query.js
CHANGED
|
@@ -15,9 +15,16 @@ function encode(value) {
|
|
|
15
15
|
* `+` in values is treated as space. Duplicate keys collapse to `string[]` in encounter order.
|
|
16
16
|
* If decoding a segment throws, that segment is left as the raw string (see malformed `%` escapes).
|
|
17
17
|
* The returned object has a null prototype (see {@link ParsedQuery}).
|
|
18
|
+
*
|
|
19
|
+
* Any raw `#` and following characters are ignored (URL fragment delimiter), so accidental
|
|
20
|
+
* `?a=1#hash` input still parses like `location.search`. Encoded `#` inside values (`%23`) is unchanged.
|
|
18
21
|
*/
|
|
19
22
|
export function parseQuery(search) {
|
|
20
|
-
|
|
23
|
+
let input = search.startsWith('?') ? search.slice(1) : search;
|
|
24
|
+
const hashIdx = input.indexOf('#');
|
|
25
|
+
if (hashIdx >= 0) {
|
|
26
|
+
input = input.slice(0, hashIdx);
|
|
27
|
+
}
|
|
21
28
|
if (input === '')
|
|
22
29
|
return Object.create(null);
|
|
23
30
|
const result = Object.create(null);
|
package/dist/query.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query.js","sourceRoot":"","sources":["../src/query.ts"],"names":[],"mappings":"AASA,SAAS,MAAM,CAAC,KAAa;IAC3B,IAAI,CAAC;QACH,OAAO,kBAAkB,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAA;IACtD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAA;IACd,CAAC;AACH,CAAC;AAED,SAAS,MAAM,CAAC,KAAa;IAC3B,oFAAoF;IACpF,OAAO,kBAAkB,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,CAAA;AACjD,CAAC;AAED
|
|
1
|
+
{"version":3,"file":"query.js","sourceRoot":"","sources":["../src/query.ts"],"names":[],"mappings":"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"}
|
package/dist/ranking.d.ts
CHANGED
|
@@ -1,3 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Sum specificity scores for each path segment in `pattern` (after the same leading/trailing slash trim
|
|
3
|
+
* as {@link matchPath} / {@link buildPath}). Static segments weigh highest, then params, optional
|
|
4
|
+
* segments, then splats. Empty segments produced by doubled slashes (e.g. `/a//b`) count as extra
|
|
5
|
+
* static segments so ranking depth stays aligned with {@link matchPath} segment lists.
|
|
6
|
+
*/
|
|
1
7
|
export declare function scorePathPattern(pattern: string): number;
|
|
8
|
+
/**
|
|
9
|
+
* Comparator for sorting patterns from most specific to least: higher {@link scorePathPattern} wins;
|
|
10
|
+
* on a tie, the deeper pattern (more segments) wins. Return value follows `Array.prototype.sort` —
|
|
11
|
+
* negative when `a` should sort before `b` (i.e. `a` is more specific).
|
|
12
|
+
*/
|
|
2
13
|
export declare function comparePatternSpecificity(a: string, b: string): number;
|
|
3
14
|
//# sourceMappingURL=ranking.d.ts.map
|
package/dist/ranking.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ranking.d.ts","sourceRoot":"","sources":["../src/ranking.ts"],"names":[],"mappings":"AAuCA,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAGxD;AAED,wBAAgB,yBAAyB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAUtE"}
|
|
1
|
+
{"version":3,"file":"ranking.d.ts","sourceRoot":"","sources":["../src/ranking.ts"],"names":[],"mappings":"AAuCA;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAGxD;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAUtE"}
|
package/dist/ranking.js
CHANGED
|
@@ -33,10 +33,21 @@ function scoreSegment(segment) {
|
|
|
33
33
|
return 0;
|
|
34
34
|
}
|
|
35
35
|
}
|
|
36
|
+
/**
|
|
37
|
+
* Sum specificity scores for each path segment in `pattern` (after the same leading/trailing slash trim
|
|
38
|
+
* as {@link matchPath} / {@link buildPath}). Static segments weigh highest, then params, optional
|
|
39
|
+
* segments, then splats. Empty segments produced by doubled slashes (e.g. `/a//b`) count as extra
|
|
40
|
+
* static segments so ranking depth stays aligned with {@link matchPath} segment lists.
|
|
41
|
+
*/
|
|
36
42
|
export function scorePathPattern(pattern) {
|
|
37
43
|
const segments = parseRankedSegments(pattern);
|
|
38
44
|
return segments.reduce((total, segment) => total + scoreSegment(segment), 0);
|
|
39
45
|
}
|
|
46
|
+
/**
|
|
47
|
+
* Comparator for sorting patterns from most specific to least: higher {@link scorePathPattern} wins;
|
|
48
|
+
* on a tie, the deeper pattern (more segments) wins. Return value follows `Array.prototype.sort` —
|
|
49
|
+
* negative when `a` should sort before `b` (i.e. `a` is more specific).
|
|
50
|
+
*/
|
|
40
51
|
export function comparePatternSpecificity(a, b) {
|
|
41
52
|
const scoreA = scorePathPattern(a);
|
|
42
53
|
const scoreB = scorePathPattern(b);
|
package/dist/ranking.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ranking.js","sourceRoot":"","sources":["../src/ranking.ts"],"names":[],"mappings":"AAIA,SAAS,WAAW,CAAC,KAAa;IAChC,OAAO,KAAK,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAA;AACxC,CAAC;AAED,SAAS,mBAAmB,CAAC,OAAe;IAC1C,MAAM,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,CAAA;IACpC,IAAI,OAAO,KAAK,EAAE;QAAE,OAAO,EAAE,CAAA;IAE7B,OAAO,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACrC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,OAAO,EAAE,IAAI,EAAE,OAAgB,EAAE,CAAA;QAC3D,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACvB,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;YAC7B,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC;gBAAE,OAAO,EAAE,IAAI,EAAE,gBAAyB,EAAE,CAAA;YACnE,OAAO,EAAE,IAAI,EAAE,iBAA0B,EAAE,CAAA;QAC7C,CAAC;QACD,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,OAAO,EAAE,IAAI,EAAE,OAAgB,EAAE,CAAA;QAC3D,OAAO,EAAE,IAAI,EAAE,QAAiB,EAAE,CAAA;IACpC,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,OAAsB;IAC1C,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;QACrB,KAAK,QAAQ;YACX,OAAO,GAAG,CAAA;QACZ,KAAK,OAAO;YACV,OAAO,GAAG,CAAA;QACZ,KAAK,iBAAiB;YACpB,OAAO,GAAG,CAAA;QACZ,KAAK,gBAAgB;YACnB,OAAO,GAAG,CAAA;QACZ,KAAK,OAAO;YACV,OAAO,CAAC,CAAA;IACZ,CAAC;AACH,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,OAAe;IAC9C,MAAM,QAAQ,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAA;IAC7C,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,KAAK,GAAG,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAA;AAC9E,CAAC;AAED,MAAM,UAAU,yBAAyB,CAAC,CAAS,EAAE,CAAS;IAC5D,MAAM,MAAM,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAA;IAClC,MAAM,MAAM,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAA;IAClC,IAAI,MAAM,KAAK,MAAM;QAAE,OAAO,MAAM,GAAG,MAAM,CAAA;IAE7C,MAAM,MAAM,GAAG,mBAAmB,CAAC,CAAC,CAAC,CAAC,MAAM,CAAA;IAC5C,MAAM,MAAM,GAAG,mBAAmB,CAAC,CAAC,CAAC,CAAC,MAAM,CAAA;IAC5C,IAAI,MAAM,KAAK,MAAM;QAAE,OAAO,MAAM,GAAG,MAAM,CAAA;IAE7C,OAAO,CAAC,CAAA;AACV,CAAC"}
|
|
1
|
+
{"version":3,"file":"ranking.js","sourceRoot":"","sources":["../src/ranking.ts"],"names":[],"mappings":"AAIA,SAAS,WAAW,CAAC,KAAa;IAChC,OAAO,KAAK,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAA;AACxC,CAAC;AAED,SAAS,mBAAmB,CAAC,OAAe;IAC1C,MAAM,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,CAAA;IACpC,IAAI,OAAO,KAAK,EAAE;QAAE,OAAO,EAAE,CAAA;IAE7B,OAAO,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACrC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,OAAO,EAAE,IAAI,EAAE,OAAgB,EAAE,CAAA;QAC3D,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACvB,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;YAC7B,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC;gBAAE,OAAO,EAAE,IAAI,EAAE,gBAAyB,EAAE,CAAA;YACnE,OAAO,EAAE,IAAI,EAAE,iBAA0B,EAAE,CAAA;QAC7C,CAAC;QACD,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,OAAO,EAAE,IAAI,EAAE,OAAgB,EAAE,CAAA;QAC3D,OAAO,EAAE,IAAI,EAAE,QAAiB,EAAE,CAAA;IACpC,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,OAAsB;IAC1C,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;QACrB,KAAK,QAAQ;YACX,OAAO,GAAG,CAAA;QACZ,KAAK,OAAO;YACV,OAAO,GAAG,CAAA;QACZ,KAAK,iBAAiB;YACpB,OAAO,GAAG,CAAA;QACZ,KAAK,gBAAgB;YACnB,OAAO,GAAG,CAAA;QACZ,KAAK,OAAO;YACV,OAAO,CAAC,CAAA;IACZ,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAe;IAC9C,MAAM,QAAQ,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAA;IAC7C,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,KAAK,GAAG,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAA;AAC9E,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,yBAAyB,CAAC,CAAS,EAAE,CAAS;IAC5D,MAAM,MAAM,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAA;IAClC,MAAM,MAAM,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAA;IAClC,IAAI,MAAM,KAAK,MAAM;QAAE,OAAO,MAAM,GAAG,MAAM,CAAA;IAE7C,MAAM,MAAM,GAAG,mBAAmB,CAAC,CAAC,CAAC,CAAC,MAAM,CAAA;IAC5C,MAAM,MAAM,GAAG,mBAAmB,CAAC,CAAC,CAAC,CAAC,MAAM,CAAA;IAC5C,IAAI,MAAM,KAAK,MAAM;QAAE,OAAO,MAAM,GAAG,MAAM,CAAA;IAE7C,OAAO,CAAC,CAAA;AACV,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@geometra/router",
|
|
3
|
-
"version": "1.1
|
|
3
|
+
"version": "1.2.1",
|
|
4
4
|
"description": "Routing primitives for Geometra",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -34,6 +34,6 @@
|
|
|
34
34
|
"check": "tsc --noEmit"
|
|
35
35
|
},
|
|
36
36
|
"dependencies": {
|
|
37
|
-
"@geometra/core": "^1.1
|
|
37
|
+
"@geometra/core": "^1.2.1"
|
|
38
38
|
}
|
|
39
39
|
}
|