@fuzdev/fuz_ui 0.183.2 → 0.184.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"declaration.svelte.d.ts","sourceRoot":"../src/lib/","sources":["../src/lib/declaration.svelte.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,KAAK,eAAe,EAGpB,MAAM,iCAAiC,CAAC;AAEzC,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,oBAAoB,CAAC;AAG/C;;GAEG;AACH,qBAAa,WAAW;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAiB;IACxC,QAAQ,CAAC,gBAAgB,EAAE,eAAe,CAAiB;IAE3D,OAAO,wCAAiC;IAExC;;OAEG;IACH,WAAW,SAA8B;IAEzC,IAAI,SAAwC;IAC5C,IAAI,4FAAwC;IAE5C;;OAEG;IACH,UAAU,qBAQR;IAEF;;OAEG;IACH,OAAO,SAA0D;IAEjE;;OAEG;IACH,gBAAgB,SAMd;IAEF;;OAEG;IACH,YAAY,qBAIV;IAEF;;OAEG;IACH,YAAY,SAAiE;IAE7E,cAAc,qBAAkD;IAChE,WAAW,qBAA+C;IAC1D,kBAAkB,qBAAsD;IACxE,UAAU;;;;;;;oBAA8C;IACxD,KAAK;;;;;;;;oBAAyC;IAC9C,WAAW,qBAA+C;IAC1D,kBAAkB,qBAAsD;IACxE,cAAc;;;;;oBAAkD;IAChE,OAAO,uBAA2C;IAClD,UAAU,uBAA8C;IACxD,MAAM;;;;oBAA0C;IAChD,KAAK,qBAAyC;IAC9C,QAAQ,uBAA4C;IACpD,QAAQ,uBAA4C;IACpD,OAAO,EAAE,KAAK,CAAC,eAAe,CAAC,GAAG,SAAS,CAEzC;IACF,UAAU,EAAE,KAAK,CAAC,eAAe,CAAC,GAAG,SAAS,CAE5C;IAEF,YAAY,UAA2D;IACvE,aAAa,UAAuC;IACpD,iBAAiB,UAAgC;IACjD,cAAc,UAA+D;IAC7E,SAAS,UAAqD;IAC9D,YAAY,UAAuE;gBAEvE,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE,eAAe;CAI7D"}
1
+ {"version":3,"file":"declaration.svelte.d.ts","sourceRoot":"../src/lib/","sources":["../src/lib/declaration.svelte.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,KAAK,eAAe,EAGpB,MAAM,iCAAiC,CAAC;AAEzC,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,oBAAoB,CAAC;AAG/C;;GAEG;AACH,qBAAa,WAAW;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAiB;IACxC,QAAQ,CAAC,gBAAgB,EAAE,eAAe,CAAiB;IAE3D,OAAO,wCAAiC;IAExC;;OAEG;IACH,WAAW,SAA8B;IAEzC,IAAI,SAAwC;IAC5C,IAAI,4FAAwC;IAE5C;;OAEG;IACH,UAAU,qBAQR;IAEF;;OAEG;IACH,OAAO,SAAoF;IAE3F;;OAEG;IACH,gBAAgB,SAMd;IAEF;;OAEG;IACH,YAAY,qBAIV;IAEF;;OAEG;IACH,YAAY,SAAiE;IAE7E,cAAc,qBAAkD;IAChE,WAAW,qBAA+C;IAC1D,kBAAkB,qBAAsD;IACxE,UAAU;;;;;;;oBAA8C;IACxD,KAAK;;;;;;;;oBAAyC;IAC9C,WAAW,qBAA+C;IAC1D,kBAAkB,qBAAsD;IACxE,cAAc;;;;;oBAAkD;IAChE,OAAO,uBAA2C;IAClD,UAAU,uBAA8C;IACxD,MAAM;;;;oBAA0C;IAChD,KAAK,qBAAyC;IAC9C,QAAQ,uBAA4C;IACpD,QAAQ,uBAA4C;IACpD,OAAO,EAAE,KAAK,CAAC,eAAe,CAAC,GAAG,SAAS,CAEzC;IACF,UAAU,EAAE,KAAK,CAAC,eAAe,CAAC,GAAG,SAAS,CAE5C;IAEF,YAAY,UAA2D;IACvE,aAAa,UAAuC;IACpD,iBAAiB,UAAgC;IACjD,cAAc,UAA+D;IAC7E,SAAS,UAAqD;IAC9D,YAAY,UAAuE;gBAEvE,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE,eAAe;CAI7D"}
@@ -22,7 +22,7 @@ export class Declaration {
22
22
  /**
23
23
  * API documentation URL.
24
24
  */
25
- url_api = $derived(`/docs/api/${this.module_path}#${this.name}`);
25
+ url_api = $derived(`/docs/api${this.library.url_prefix}/${this.module_path}#${this.name}`);
26
26
  /**
27
27
  * Generated TypeScript import statement.
28
28
  */
@@ -1,6 +1,10 @@
1
1
  import type { LibraryJson } from '@fuzdev/fuz_util/library_json.js';
2
2
  import { Declaration } from './declaration.svelte.js';
3
3
  import { Module } from './module.svelte.js';
4
+ /**
5
+ * Normalizes a URL prefix: ensures leading `/`, strips trailing `/`, returns `''` for falsy and non-string values.
6
+ */
7
+ export declare const parse_library_url_prefix: (value: unknown) => string;
4
8
  /**
5
9
  * Rich runtime representation of a library.
6
10
  *
@@ -12,6 +16,12 @@ import { Module } from './module.svelte.js';
12
16
  */
13
17
  export declare class Library {
14
18
  readonly library_json: LibraryJson;
19
+ /**
20
+ * URL path prefix for multi-package documentation sites.
21
+ * Prepended to `/docs/api/` paths in `Module.url_api` and `Declaration.url_api`.
22
+ * Default `''` preserves single-package behavior.
23
+ */
24
+ readonly url_prefix: string;
15
25
  package_json: {
16
26
  [x: string]: unknown;
17
27
  name: string;
@@ -171,7 +181,7 @@ export declare class Library {
171
181
  * Declaration lookup map by name. Provides O(1) lookup.
172
182
  */
173
183
  declaration_map: Map<string, Declaration>;
174
- constructor(library_json: LibraryJson);
184
+ constructor(library_json: LibraryJson, url_prefix?: string);
175
185
  /**
176
186
  * Look up a declaration by name.
177
187
  */
@@ -1 +1 @@
1
- {"version":3,"file":"library.svelte.d.ts","sourceRoot":"../src/lib/","sources":["../src/lib/library.svelte.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,kCAAkC,CAAC;AAGlE,OAAO,EAAC,WAAW,EAAC,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAC,MAAM,EAAC,MAAM,oBAAoB,CAAC;AAE1C;;;;;;;;GAQG;AACH,qBAAa,OAAO;IACnB,QAAQ,CAAC,YAAY,EAAE,WAAW,CAAiB;IAEnD,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAA4C;IACxD,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAA2C;IAEtD,IAAI,SAAoC;IACxC,SAAS,SAAyC;IAClD,QAAQ,wCAAwC;IAChD,UAAU,gBAA0C;IACpD,YAAY,+CAA4C;IACxD,QAAQ,+CAAwC;IAChD,QAAQ,SAAwC;IAChD,OAAO,+CAAuC;IAC9C,aAAa,+CAA6C;IAC1D,SAAS,UAAyC;IAElD;;OAEG;IACH,OAAO,gBAML;IAEF;;OAEG;IACH,OAAO,WAIL;IAEF;;OAEG;IACH,cAAc,WAA4E;IAE1F;;OAEG;IACH,YAAY,gBAAmE;IAE/E;;OAEG;IACH,eAAe,2BAAgE;gBAEnE,YAAY,EAAE,WAAW;IAIrC;;OAEG;IACH,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS;IAIzD;;OAEG;IACH,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAItC;;OAEG;IACH,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAI/C;;OAEG;IACH,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,CAAC,WAAW,CAAC;CAGtD;AAED,eAAO,MAAM,eAAe;;;;CAA4B,CAAC"}
1
+ {"version":3,"file":"library.svelte.d.ts","sourceRoot":"../src/lib/","sources":["../src/lib/library.svelte.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,kCAAkC,CAAC;AAIlE,OAAO,EAAC,WAAW,EAAC,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAC,MAAM,EAAC,MAAM,oBAAoB,CAAC;AAE1C;;GAEG;AACH,eAAO,MAAM,wBAAwB,GAAI,OAAO,OAAO,KAAG,MAGzD,CAAC;AAEF;;;;;;;;GAQG;AACH,qBAAa,OAAO;IACnB,QAAQ,CAAC,YAAY,EAAE,WAAW,CAAiB;IAEnD;;;;OAIG;IACH,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAE5B,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAA4C;IACxD,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAA2C;IAEtD,IAAI,SAAoC;IACxC,SAAS,SAAyC;IAClD,QAAQ,wCAAwC;IAChD,UAAU,gBAA0C;IACpD,YAAY,+CAA4C;IACxD,QAAQ,+CAAwC;IAChD,QAAQ,SAAwC;IAChD,OAAO,+CAAuC;IAC9C,aAAa,+CAA6C;IAC1D,SAAS,UAAyC;IAElD;;OAEG;IACH,OAAO,gBAML;IAEF;;OAEG;IACH,OAAO,WAIL;IAEF;;OAEG;IACH,cAAc,WAA4E;IAE1F;;OAEG;IACH,YAAY,gBAAmE;IAE/E;;OAEG;IACH,eAAe,2BAAgE;gBAEnE,YAAY,EAAE,WAAW,EAAE,UAAU,SAAK;IAKtD;;OAEG;IACH,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS;IAIzD;;OAEG;IACH,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAItC;;OAEG;IACH,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAI/C;;OAEG;IACH,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,CAAC,WAAW,CAAC;CAGtD;AAED,eAAO,MAAM,eAAe;;;;CAA4B,CAAC"}
@@ -1,6 +1,15 @@
1
+ import { ensure_start, strip_end } from '@fuzdev/fuz_util/string.js';
1
2
  import { create_context } from './context_helpers.js';
2
3
  import { Declaration } from './declaration.svelte.js';
3
4
  import { Module } from './module.svelte.js';
5
+ /**
6
+ * Normalizes a URL prefix: ensures leading `/`, strips trailing `/`, returns `''` for falsy and non-string values.
7
+ */
8
+ export const parse_library_url_prefix = (value) => {
9
+ if (!value || typeof value !== 'string')
10
+ return '';
11
+ return ensure_start(strip_end(value, '/'), '/');
12
+ };
4
13
  /**
5
14
  * Rich runtime representation of a library.
6
15
  *
@@ -12,6 +21,12 @@ import { Module } from './module.svelte.js';
12
21
  */
13
22
  export class Library {
14
23
  library_json = $state.raw();
24
+ /**
25
+ * URL path prefix for multi-package documentation sites.
26
+ * Prepended to `/docs/api/` paths in `Module.url_api` and `Declaration.url_api`.
27
+ * Default `''` preserves single-package behavior.
28
+ */
29
+ url_prefix;
15
30
  package_json = $derived(this.library_json.package_json);
16
31
  source_json = $derived(this.library_json.source_json);
17
32
  name = $derived(this.library_json.name);
@@ -50,8 +65,9 @@ export class Library {
50
65
  * Declaration lookup map by name. Provides O(1) lookup.
51
66
  */
52
67
  declaration_map = $derived(new Map(this.declarations.map((d) => [d.name, d])));
53
- constructor(library_json) {
68
+ constructor(library_json, url_prefix = '') {
54
69
  this.library_json = library_json;
70
+ this.url_prefix = parse_library_url_prefix(url_prefix);
55
71
  }
56
72
  /**
57
73
  * Look up a declaration by name.
@@ -1 +1 @@
1
- {"version":3,"file":"module.svelte.d.ts","sourceRoot":"../src/lib/","sources":["../src/lib/module.svelte.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,iCAAiC,CAAC;AAEhE,OAAO,EAAC,WAAW,EAAC,MAAM,yBAAyB,CAAC;AACpD,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,qBAAqB,CAAC;AAGjD;;GAEG;AACH,qBAAa,MAAM;IAClB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAiB;IAC1C,QAAQ,CAAC,WAAW,EAAE,UAAU,CAAiB;IAEjD;;OAEG;IACH,IAAI,SAAmC;IAEvC;;OAEG;IACH,WAAW,SAA8B;IAEzC,cAAc,qBAA6C;IAE3D;;OAEG;IACH,YAAY,gBAMV;IAEF;;OAEG;IACH,OAAO,SAAsC;IAE7C;;OAEG;IACH,UAAU,qBAIR;IAEF,gBAAgB,EAAE,OAAO,CAEvB;IAEF,kBAAkB,EAAE,OAAO,CAA+C;IAE1E;;OAEG;IACH,YAAY,uBAA2C;IAEvD;;OAEG;IACH,UAAU,uBAAyC;gBAEvC,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU;IAKrD;;OAEG;IACH,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS;CAG9D"}
1
+ {"version":3,"file":"module.svelte.d.ts","sourceRoot":"../src/lib/","sources":["../src/lib/module.svelte.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,iCAAiC,CAAC;AAEhE,OAAO,EAAC,WAAW,EAAC,MAAM,yBAAyB,CAAC;AACpD,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,qBAAqB,CAAC;AAGjD;;GAEG;AACH,qBAAa,MAAM;IAClB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAiB;IAC1C,QAAQ,CAAC,WAAW,EAAE,UAAU,CAAiB;IAEjD;;OAEG;IACH,IAAI,SAAmC;IAEvC;;OAEG;IACH,WAAW,SAA8B;IAEzC,cAAc,qBAA6C;IAE3D;;OAEG;IACH,YAAY,gBAMV;IAEF;;OAEG;IACH,OAAO,SAAgE;IAEvE;;OAEG;IACH,UAAU,qBAIR;IAEF,gBAAgB,EAAE,OAAO,CAEvB;IAEF,kBAAkB,EAAE,OAAO,CAA+C;IAE1E;;OAEG;IACH,YAAY,uBAA2C;IAEvD;;OAEG;IACH,UAAU,uBAAyC;gBAEvC,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU;IAKrD;;OAEG;IACH,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS;CAG9D"}
@@ -26,7 +26,7 @@ export class Module {
26
26
  /**
27
27
  * API documentation URL for this module.
28
28
  */
29
- url_api = $derived(`/docs/api/${this.path}`);
29
+ url_api = $derived(`/docs/api${this.library.url_prefix}/${this.path}`);
30
30
  /**
31
31
  * GitHub source URL.
32
32
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fuzdev/fuz_ui",
3
- "version": "0.183.2",
3
+ "version": "0.184.0",
4
4
  "description": "Svelte UI library",
5
5
  "motto": "friendly user zystem",
6
6
  "glyph": "🧶",
@@ -40,7 +40,7 @@ export class Declaration {
40
40
  /**
41
41
  * API documentation URL.
42
42
  */
43
- url_api = $derived(`/docs/api/${this.module_path}#${this.name}`);
43
+ url_api = $derived(`/docs/api${this.library.url_prefix}/${this.module_path}#${this.name}`);
44
44
 
45
45
  /**
46
46
  * Generated TypeScript import statement.
@@ -1,9 +1,18 @@
1
1
  import type {LibraryJson} from '@fuzdev/fuz_util/library_json.js';
2
+ import {ensure_start, strip_end} from '@fuzdev/fuz_util/string.js';
2
3
 
3
4
  import {create_context} from './context_helpers.js';
4
5
  import {Declaration} from './declaration.svelte.js';
5
6
  import {Module} from './module.svelte.js';
6
7
 
8
+ /**
9
+ * Normalizes a URL prefix: ensures leading `/`, strips trailing `/`, returns `''` for falsy and non-string values.
10
+ */
11
+ export const parse_library_url_prefix = (value: unknown): string => {
12
+ if (!value || typeof value !== 'string') return '';
13
+ return ensure_start(strip_end(value, '/'), '/');
14
+ };
15
+
7
16
  /**
8
17
  * Rich runtime representation of a library.
9
18
  *
@@ -16,6 +25,13 @@ import {Module} from './module.svelte.js';
16
25
  export class Library {
17
26
  readonly library_json: LibraryJson = $state.raw()!;
18
27
 
28
+ /**
29
+ * URL path prefix for multi-package documentation sites.
30
+ * Prepended to `/docs/api/` paths in `Module.url_api` and `Declaration.url_api`.
31
+ * Default `''` preserves single-package behavior.
32
+ */
33
+ readonly url_prefix: string;
34
+
19
35
  package_json = $derived(this.library_json.package_json);
20
36
  source_json = $derived(this.library_json.source_json);
21
37
 
@@ -65,8 +81,9 @@ export class Library {
65
81
  */
66
82
  declaration_map = $derived(new Map(this.declarations.map((d) => [d.name, d])));
67
83
 
68
- constructor(library_json: LibraryJson) {
84
+ constructor(library_json: LibraryJson, url_prefix = '') {
69
85
  this.library_json = library_json;
86
+ this.url_prefix = parse_library_url_prefix(url_prefix);
70
87
  }
71
88
 
72
89
  /**
@@ -37,7 +37,7 @@ export class Module {
37
37
  /**
38
38
  * API documentation URL for this module.
39
39
  */
40
- url_api = $derived(`/docs/api/${this.path}`);
40
+ url_api = $derived(`/docs/api${this.library.url_prefix}/${this.path}`);
41
41
 
42
42
  /**
43
43
  * GitHub source URL.