@herdingbits/trailhead-core 0.0.16 → 0.0.17
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 +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/shell.d.ts +10 -4
- package/dist/shell.d.ts.map +1 -1
- package/dist/shell.js +60 -27
- package/dist/types/public-api.d.ts +1 -1
- package/dist/types/public-api.d.ts.map +1 -1
- package/dist/types/shell-api.d.ts +45 -12
- package/dist/types/shell-api.d.ts.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -35,7 +35,7 @@ import { YourAdapter } from '@herdingbits/trailhead-your-design-system';
|
|
|
35
35
|
const shell = new Trailhead({
|
|
36
36
|
adapter: new YourAdapter(),
|
|
37
37
|
appBasePath: '/app', // URL prefix where SPAs are hosted
|
|
38
|
-
shellUrl: '/app', // URL where shell.js and
|
|
38
|
+
shellUrl: '/app', // URL where shell.js and shell.json are served (defaults to appBasePath)
|
|
39
39
|
apiUrl: 'https://api.example.com'
|
|
40
40
|
});
|
|
41
41
|
```
|
package/dist/index.d.ts
CHANGED
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,YAAY,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,YAAY,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC9C,YAAY,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC"}
|
package/dist/shell.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Trailhead Core Shell - Design system agnostic orchestration
|
|
3
3
|
*/
|
|
4
|
-
import type { NavItem } from "./types/shell-api.js";
|
|
4
|
+
import type { NavItem, AppEntry } from "./types/shell-api.js";
|
|
5
5
|
import type { DesignSystemAdapter } from "./adapters/types.js";
|
|
6
6
|
/**
|
|
7
7
|
* Configuration passed to the `Trailhead` constructor.
|
|
@@ -13,7 +13,7 @@ export interface ShellConfig {
|
|
|
13
13
|
appBasePath?: string;
|
|
14
14
|
/** Base URL prepended to all SPA HTTP requests made via `shell.http`. */
|
|
15
15
|
apiUrl?: string;
|
|
16
|
-
/** URL from which the shell bundle and static assets (e.g., `
|
|
16
|
+
/** URL from which the shell bundle and static assets (e.g., `shell.json`) are fetched. Defaults to `appBasePath`. */
|
|
17
17
|
shellUrl?: string;
|
|
18
18
|
}
|
|
19
19
|
/**
|
|
@@ -29,7 +29,8 @@ export interface ShellConfig {
|
|
|
29
29
|
* ```
|
|
30
30
|
*/
|
|
31
31
|
export declare class Trailhead {
|
|
32
|
-
private
|
|
32
|
+
private apps;
|
|
33
|
+
private nav;
|
|
33
34
|
private routeChangeCallbacks;
|
|
34
35
|
/** URL prefix under which SPAs are hosted. Empty string when hosted at the root. */
|
|
35
36
|
readonly appBasePath: string;
|
|
@@ -44,10 +45,15 @@ export declare class Trailhead {
|
|
|
44
45
|
*/
|
|
45
46
|
constructor(config: ShellConfig);
|
|
46
47
|
/**
|
|
47
|
-
* Returns the
|
|
48
|
+
* Returns the nav menu items loaded from `shell.json`.
|
|
48
49
|
* Adapters call this to render the shell's navigation menu.
|
|
49
50
|
*/
|
|
50
51
|
getNavigation(): NavItem[];
|
|
52
|
+
/**
|
|
53
|
+
* Returns the SPA registry loaded from `shell.json`.
|
|
54
|
+
* Adapters that manage their own routing call this to resolve which app to load.
|
|
55
|
+
*/
|
|
56
|
+
getApps(): AppEntry[];
|
|
51
57
|
/**
|
|
52
58
|
* Initialize shell
|
|
53
59
|
*/
|
package/dist/shell.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shell.d.ts","sourceRoot":"","sources":["../src/shell.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAY,OAAO,
|
|
1
|
+
{"version":3,"file":"shell.d.ts","sourceRoot":"","sources":["../src/shell.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAY,OAAO,EAAW,QAAQ,EAAiB,MAAM,sBAAsB,CAAC;AAChG,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAI/D;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,0FAA0F;IAC1F,OAAO,EAAE,mBAAmB,CAAC;IAE7B,wKAAwK;IACxK,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,yEAAyE;IACzE,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,qHAAqH;IACrH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;;;;;GAWG;AACH,qBAAa,SAAS;IACpB,OAAO,CAAC,IAAI,CAAkB;IAC9B,OAAO,CAAC,GAAG,CAAiB;IAC5B,OAAO,CAAC,oBAAoB,CAAqC;IAEjE,oFAAoF;IACpF,SAAgB,WAAW,EAAE,MAAM,CAAC;IACpC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAElC,6EAA6E;IAC7E,SAAgB,OAAO,EAAE,mBAAmB,CAAC;IAE7C;;;;;OAKG;gBACS,MAAM,EAAE,WAAW;IAO/B;;;OAGG;IACI,aAAa,IAAI,OAAO,EAAE;IAIjC;;;OAGG;IACI,OAAO,IAAI,QAAQ,EAAE;IAI5B;;OAEG;YACW,IAAI;IAwBlB;;OAEG;YACW,WAAW;IAUzB;;OAEG;IACH,OAAO,CAAC,SAAS;IAiFjB;;OAEG;YACW,cAAc;IAa5B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAmDxB;;OAEG;IACH,OAAO,CAAC,YAAY;IAMpB;;OAEG;IACH,OAAO,CAAC,QAAQ;IAIhB;;OAEG;IACH,OAAO,CAAC,WAAW;IAsBnB;;OAEG;IACH,OAAO,CAAC,eAAe;IAavB;;OAEG;YACW,UAAU;CAqDzB"}
|
package/dist/shell.js
CHANGED
|
@@ -20,7 +20,8 @@ export class Trailhead {
|
|
|
20
20
|
* @param config - Shell configuration
|
|
21
21
|
*/
|
|
22
22
|
constructor(config) {
|
|
23
|
-
this.
|
|
23
|
+
this.apps = [];
|
|
24
|
+
this.nav = [];
|
|
24
25
|
this.routeChangeCallbacks = [];
|
|
25
26
|
this.appBasePath = config.appBasePath || "";
|
|
26
27
|
this.shellUrl = config.shellUrl || this.appBasePath;
|
|
@@ -28,11 +29,18 @@ export class Trailhead {
|
|
|
28
29
|
this.init(config.apiUrl);
|
|
29
30
|
}
|
|
30
31
|
/**
|
|
31
|
-
* Returns the
|
|
32
|
+
* Returns the nav menu items loaded from `shell.json`.
|
|
32
33
|
* Adapters call this to render the shell's navigation menu.
|
|
33
34
|
*/
|
|
34
35
|
getNavigation() {
|
|
35
|
-
return this.
|
|
36
|
+
return this.nav;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Returns the SPA registry loaded from `shell.json`.
|
|
40
|
+
* Adapters that manage their own routing call this to resolve which app to load.
|
|
41
|
+
*/
|
|
42
|
+
getApps() {
|
|
43
|
+
return this.apps;
|
|
36
44
|
}
|
|
37
45
|
/**
|
|
38
46
|
* Initialize shell
|
|
@@ -149,12 +157,15 @@ export class Trailhead {
|
|
|
149
157
|
*/
|
|
150
158
|
async loadNavigation() {
|
|
151
159
|
try {
|
|
152
|
-
const response = await fetch(`${this.shellUrl}/
|
|
153
|
-
|
|
160
|
+
const response = await fetch(`${this.shellUrl}/shell.json`);
|
|
161
|
+
const manifest = await response.json();
|
|
162
|
+
this.apps = manifest.apps ?? [];
|
|
163
|
+
this.nav = manifest.nav ?? [];
|
|
154
164
|
}
|
|
155
165
|
catch (error) {
|
|
156
|
-
console.error("Failed to load
|
|
157
|
-
this.
|
|
166
|
+
console.error("Failed to load shell.json:", error);
|
|
167
|
+
this.apps = [];
|
|
168
|
+
this.nav = [];
|
|
158
169
|
}
|
|
159
170
|
}
|
|
160
171
|
/**
|
|
@@ -164,25 +175,47 @@ export class Trailhead {
|
|
|
164
175
|
const nav = document.getElementById("shell-navigation");
|
|
165
176
|
if (!nav)
|
|
166
177
|
return;
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
178
|
+
const isExternal = (href) => /^https?:\/\/|^\/\//.test(href);
|
|
179
|
+
const renderLink = (item, isChild = false) => {
|
|
180
|
+
const external = isExternal(item.href);
|
|
181
|
+
const fullHref = external ? item.href : `${this.appBasePath}${item.href}`;
|
|
182
|
+
return `<a href="${fullHref}"
|
|
183
|
+
class="shell-nav-item${isChild ? " shell-nav-item-child" : ""}"
|
|
184
|
+
data-path="${item.href}"
|
|
185
|
+
data-external="${external}">
|
|
186
|
+
<i class="shell-icon shell-icon-${item.icon ?? ""}"></i>
|
|
174
187
|
<span class="shell-nav-label">${item.label}</span>
|
|
175
|
-
</a
|
|
176
|
-
|
|
188
|
+
</a>`;
|
|
189
|
+
};
|
|
190
|
+
nav.innerHTML = [...this.nav]
|
|
191
|
+
.sort((a, b) => a.order - b.order)
|
|
192
|
+
.map((item) => {
|
|
193
|
+
switch (item.type) {
|
|
194
|
+
case "link":
|
|
195
|
+
return renderLink(item);
|
|
196
|
+
case "section":
|
|
197
|
+
return `<div class="shell-nav-section">
|
|
198
|
+
<span class="shell-nav-section-header">
|
|
199
|
+
<i class="shell-icon shell-icon-${item.icon ?? ""}"></i>
|
|
200
|
+
<span class="shell-nav-label">${item.label}</span>
|
|
201
|
+
</span>
|
|
202
|
+
${[...item.children].sort((a, b) => a.order - b.order).map((c) => renderLink(c, true)).join("")}
|
|
203
|
+
</div>`;
|
|
204
|
+
case "divider":
|
|
205
|
+
return `<hr class="shell-nav-divider" />`;
|
|
206
|
+
}
|
|
207
|
+
})
|
|
177
208
|
.join("");
|
|
178
209
|
nav.querySelectorAll("a").forEach((link) => {
|
|
179
|
-
link.
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
210
|
+
if (link.getAttribute("data-external") !== "true") {
|
|
211
|
+
link.addEventListener("click", (e) => {
|
|
212
|
+
e.preventDefault();
|
|
213
|
+
const path = link.getAttribute("data-path");
|
|
214
|
+
if (path) {
|
|
215
|
+
this.navigate(path);
|
|
216
|
+
}
|
|
217
|
+
});
|
|
218
|
+
}
|
|
186
219
|
});
|
|
187
220
|
}
|
|
188
221
|
/**
|
|
@@ -207,16 +240,16 @@ export class Trailhead {
|
|
|
207
240
|
if (this.appBasePath && path.startsWith(this.appBasePath)) {
|
|
208
241
|
path = path.substring(this.appBasePath.length) || "/";
|
|
209
242
|
}
|
|
210
|
-
const
|
|
211
|
-
if (
|
|
243
|
+
const app = this.apps.find((entry) => path.startsWith(entry.basePath));
|
|
244
|
+
if (app) {
|
|
212
245
|
// Skip loading if app is already mounted (dev mode)
|
|
213
246
|
const shellContent = document.getElementById("shell-content");
|
|
214
247
|
const rootElement = shellContent?.querySelector("#root");
|
|
215
248
|
const isAlreadyMounted = rootElement && rootElement.children.length > 0;
|
|
216
249
|
if (!isAlreadyMounted) {
|
|
217
|
-
this.loadPlugin(
|
|
250
|
+
this.loadPlugin(app.src, app.basePath);
|
|
218
251
|
}
|
|
219
|
-
this.updateActiveNav(
|
|
252
|
+
this.updateActiveNav(app.basePath);
|
|
220
253
|
}
|
|
221
254
|
}
|
|
222
255
|
/**
|
|
@@ -2,5 +2,5 @@
|
|
|
2
2
|
* Public Shell API - Only these types are exposed to plugin applications
|
|
3
3
|
* This file explicitly defines what's public vs internal
|
|
4
4
|
*/
|
|
5
|
-
export type { ShellAPI, ShellPlugin, FeedbackAPI, AlertVariant, HttpAPI, RequestOptions, Result, SuccessResult, ErrorResult, HttpError, NavigationAPI, NavItem, } from "./shell-api.js";
|
|
5
|
+
export type { ShellAPI, ShellPlugin, FeedbackAPI, AlertVariant, HttpAPI, RequestOptions, Result, SuccessResult, ErrorResult, HttpError, NavigationAPI, NavItem, NavLink, NavSection, NavDivider, AppEntry, ShellManifest, } from "./shell-api.js";
|
|
6
6
|
//# sourceMappingURL=public-api.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"public-api.d.ts","sourceRoot":"","sources":["../../src/types/public-api.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,YAAY,EACV,QAAQ,EACR,WAAW,EACX,WAAW,EACX,YAAY,EACZ,OAAO,EACP,cAAc,EACd,MAAM,EACN,aAAa,EACb,WAAW,EACX,SAAS,EACT,aAAa,EACb,OAAO,
|
|
1
|
+
{"version":3,"file":"public-api.d.ts","sourceRoot":"","sources":["../../src/types/public-api.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,YAAY,EACV,QAAQ,EACR,WAAW,EACX,WAAW,EACX,YAAY,EACZ,OAAO,EACP,cAAc,EACd,MAAM,EACN,aAAa,EACb,WAAW,EACX,SAAS,EACT,aAAa,EACb,OAAO,EACP,OAAO,EACP,UAAU,EACV,UAAU,EACV,QAAQ,EACR,aAAa,GACd,MAAM,gBAAgB,CAAC"}
|
|
@@ -448,25 +448,58 @@ export interface NavigationAPI {
|
|
|
448
448
|
onRouteChange(callback: (path: string) => void): () => void;
|
|
449
449
|
}
|
|
450
450
|
/**
|
|
451
|
-
*
|
|
452
|
-
*
|
|
453
|
-
* Defines a navigation menu item in `navigation.json`.
|
|
451
|
+
* SPA registration entry in `shell.json`.
|
|
452
|
+
* Describes a hosted application — where it lives and how to load it.
|
|
454
453
|
*/
|
|
455
|
-
export interface
|
|
456
|
-
/**
|
|
454
|
+
export interface AppEntry {
|
|
455
|
+
/** Unique identifier for this SPA (used in logs and as the CSS filename stem). */
|
|
457
456
|
id: string;
|
|
458
|
-
/**
|
|
459
|
-
|
|
460
|
-
/**
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
457
|
+
/** URL path prefix at which this SPA is mounted (e.g., `"/demo"`). Shell loads the app when the current URL starts with this value. */
|
|
458
|
+
basePath: string;
|
|
459
|
+
/** Asset directory name. Shell resolves `<appBasePath>/<src>/app.js` and `<appBasePath>/<src>/<src>.css`. */
|
|
460
|
+
src: string;
|
|
461
|
+
}
|
|
462
|
+
/**
|
|
463
|
+
* Parsed structure of `shell.json`.
|
|
464
|
+
*/
|
|
465
|
+
export interface ShellManifest {
|
|
466
|
+
apps: AppEntry[];
|
|
467
|
+
nav: NavItem[];
|
|
468
|
+
}
|
|
469
|
+
/** A leaf nav item that links to a URL or SPA route. */
|
|
470
|
+
export interface NavLink {
|
|
471
|
+
type: 'link';
|
|
472
|
+
/** Visible label rendered in the nav. */
|
|
464
473
|
label: string;
|
|
474
|
+
/** Icon identifier passed to the adapter's icon component. Naming convention is design-system-specific. */
|
|
475
|
+
icon?: string;
|
|
465
476
|
/** Lower numbers appear earlier in the menu. */
|
|
466
477
|
order: number;
|
|
467
|
-
/**
|
|
478
|
+
/** Absolute URL (browser handles navigation; shell does not intercept) or relative path (shell loads the matching SPA). */
|
|
479
|
+
href: string;
|
|
480
|
+
/** Called on each render to get a live count shown as a badge on this item. */
|
|
468
481
|
badge?: () => number;
|
|
469
482
|
}
|
|
483
|
+
/** A section header that groups a set of child links. Maximum nesting depth is one level. */
|
|
484
|
+
export interface NavSection {
|
|
485
|
+
type: 'section';
|
|
486
|
+
/** Visible label for the section header. */
|
|
487
|
+
label: string;
|
|
488
|
+
/** Icon identifier for the section header. */
|
|
489
|
+
icon?: string;
|
|
490
|
+
/** Lower numbers appear earlier in the menu. */
|
|
491
|
+
order: number;
|
|
492
|
+
/** Child link items. Only `NavLink` is allowed here — no nested sections. */
|
|
493
|
+
children: NavLink[];
|
|
494
|
+
}
|
|
495
|
+
/** A visual divider rendered between nav groups. */
|
|
496
|
+
export interface NavDivider {
|
|
497
|
+
type: 'divider';
|
|
498
|
+
/** Lower numbers appear earlier in the menu. */
|
|
499
|
+
order: number;
|
|
500
|
+
}
|
|
501
|
+
/** Discriminated union of all nav item types. */
|
|
502
|
+
export type NavItem = NavLink | NavSection | NavDivider;
|
|
470
503
|
/**
|
|
471
504
|
* Global window extension
|
|
472
505
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shell-api.d.ts","sourceRoot":"","sources":["../../src/types/shell-api.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"shell-api.d.ts","sourceRoot":"","sources":["../../src/types/shell-api.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@herdingbits/trailhead-core",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.17",
|
|
4
4
|
"description": "Simple application shell that orchestrates multiple SPAs. No webpack magic, just the browser's native module system.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|