@franzzemen/brokenstock-shell 0.4.2 → 0.4.4
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/package.json
CHANGED
|
@@ -109,12 +109,29 @@ declare const SHELL_AUTH_URLS: InjectionToken<ShellAuthUrls>;
|
|
|
109
109
|
*/
|
|
110
110
|
declare const SHELL_COMMANDS: InjectionToken<CommandDefinition[]>;
|
|
111
111
|
declare const SHELL_POST_LOGIN_ROUTE: InjectionToken<string>;
|
|
112
|
+
/**
|
|
113
|
+
* Whether this app shares one session across every window of the browser
|
|
114
|
+
* (multiple-windows PRD D2/D7).
|
|
115
|
+
*
|
|
116
|
+
* ⚠ OFF unless an app opts in, and only `broken-stock` does. Turning it on puts
|
|
117
|
+
* the sign-in token in browser storage, where any script on the origin can read
|
|
118
|
+
* it and it persists on disk. The admin apps send their renewal cookie
|
|
119
|
+
* cross-site and can change other people's data, which makes that a materially
|
|
120
|
+
* different exposure — extending this to them is a separate decision, not a
|
|
121
|
+
* default.
|
|
122
|
+
*/
|
|
123
|
+
declare const SHELL_SHARED_SESSION: InjectionToken<boolean>;
|
|
112
124
|
|
|
113
125
|
interface ShellConfig {
|
|
114
126
|
appName: string;
|
|
115
127
|
menuItems: MenuItem[];
|
|
116
128
|
authUrls: ShellAuthUrls;
|
|
117
129
|
commands?: CommandDefinition[];
|
|
130
|
+
/**
|
|
131
|
+
* Share one session across every window of the browser. Defaults to false.
|
|
132
|
+
* See {@link SHELL_SHARED_SESSION} for why this is opt-in.
|
|
133
|
+
*/
|
|
134
|
+
sharedSession?: boolean;
|
|
118
135
|
}
|
|
119
136
|
declare function provideShellConfig(config: ShellConfig): EnvironmentProviders;
|
|
120
137
|
|
|
@@ -673,6 +690,41 @@ declare class ThinkingService {
|
|
|
673
690
|
static ɵprov: _angular_core.ɵɵInjectableDeclaration<ThinkingService>;
|
|
674
691
|
}
|
|
675
692
|
|
|
693
|
+
/** Deliberately outside `bs.pref.` — see the header. */
|
|
694
|
+
declare const SESSION_TOKEN_KEY = "bs.auth.token";
|
|
695
|
+
declare class SessionTokenStore {
|
|
696
|
+
#private;
|
|
697
|
+
get available(): boolean;
|
|
698
|
+
/**
|
|
699
|
+
* The stored token, or undefined.
|
|
700
|
+
*
|
|
701
|
+
* A stored value that is not a well-formed bearer is treated as absent and
|
|
702
|
+
* removed. It cannot be authenticated with, and leaving it there would make
|
|
703
|
+
* every later read fail the same way with nothing to explain it.
|
|
704
|
+
*/
|
|
705
|
+
read(): BearerToken | undefined;
|
|
706
|
+
/**
|
|
707
|
+
* Stores the token. THROWS on failure — see the header.
|
|
708
|
+
*
|
|
709
|
+
* @throws if the value is not a bearer token, or the write does not stick.
|
|
710
|
+
*/
|
|
711
|
+
write(token: BearerToken): void;
|
|
712
|
+
clear(): void;
|
|
713
|
+
/**
|
|
714
|
+
* Calls back when ANOTHER window changes the token.
|
|
715
|
+
*
|
|
716
|
+
* `storage` does not fire in the window that made the change, which is
|
|
717
|
+
* correct — that window is the one doing it and has already acted.
|
|
718
|
+
*
|
|
719
|
+
* ⚠ `event.key === null` is what `localStorage.clear()` produces, and it means
|
|
720
|
+
* everything went, this key included. Treating it as "not our key" is how a
|
|
721
|
+
* whole-storage clear silently fails to sign the user out.
|
|
722
|
+
*/
|
|
723
|
+
onExternalChange(handler: (token: BearerToken | undefined) => void): () => void;
|
|
724
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SessionTokenStore, never>;
|
|
725
|
+
static ɵprov: _angular_core.ɵɵInjectableDeclaration<SessionTokenStore>;
|
|
726
|
+
}
|
|
727
|
+
|
|
676
728
|
type ThemeMode = 'dark';
|
|
677
729
|
declare class ThemeService {
|
|
678
730
|
readonly mode: _angular_core.WritableSignal<"dark">;
|
|
@@ -760,9 +812,36 @@ declare class AuthenticationService {
|
|
|
760
812
|
readonly userSession: _angular_core.WritableSignal<UserSession | undefined>;
|
|
761
813
|
readonly conflictSessions: _angular_core.WritableSignal<SessionSummary[] | undefined>;
|
|
762
814
|
readonly pendingCredentials: _angular_core.WritableSignal<Credentials | undefined>;
|
|
815
|
+
constructor();
|
|
816
|
+
/**
|
|
817
|
+
* The bearer for outbound calls.
|
|
818
|
+
*
|
|
819
|
+
* READ-THROUGH, not a cached copy, whenever the session is shared across
|
|
820
|
+
* windows (PRD D2/D10). A copy is only as fresh as the last `storage` event
|
|
821
|
+
* delivered, and the consumer that matters most is outside the request path:
|
|
822
|
+
* the market-tape socket re-presents this token on a sixty-second heartbeat,
|
|
823
|
+
* and the server closes the socket with a code the client does NOT retry if it
|
|
824
|
+
* is stale. A window that was frozen when the event fired would lose its live
|
|
825
|
+
* prices permanently. Reading through removes the question of which window
|
|
826
|
+
* holds which token.
|
|
827
|
+
*/
|
|
763
828
|
get auth(): BearerToken;
|
|
764
829
|
refresh(): Promise<boolean>;
|
|
765
830
|
clearConflict(): void;
|
|
831
|
+
/**
|
|
832
|
+
* The session is gone and cannot be recovered — renewal failed permanently,
|
|
833
|
+
* or another window signed out.
|
|
834
|
+
*
|
|
835
|
+
* ⚠ THIS EXISTS BECAUSE THERE ARE TWO SIGN-OUT PATHS AND ONLY ONE USED TO
|
|
836
|
+
* CLEAR THE TOKEN. `logout()` went through `#clearSession()`; the 401
|
|
837
|
+
* interceptor set the signals and navigated but left `#auth` alone. Harmless
|
|
838
|
+
* while the token lived only in memory and died with the tab — but once it is
|
|
839
|
+
* in storage, a dead token left behind means every later window marks itself
|
|
840
|
+
* signed in, passes the guard, renders, 401s and bounces to the login screen.
|
|
841
|
+
* The reload fix would have become "the app flashes, then throws me out",
|
|
842
|
+
* which is harder to diagnose than the behaviour it replaced.
|
|
843
|
+
*/
|
|
844
|
+
sessionLost(): void;
|
|
766
845
|
logout(): void;
|
|
767
846
|
login(credentials: Credentials, force?: boolean): Promise<void>;
|
|
768
847
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AuthenticationService, never>;
|
|
@@ -935,6 +1014,6 @@ declare class ConfirmDialog {
|
|
|
935
1014
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ConfirmDialog, "shell-confirm-dialog", never, {}, {}, never, never, true, never>;
|
|
936
1015
|
}
|
|
937
1016
|
|
|
938
|
-
export { AuthenticationService, CLEAR_USAGE, CommandRegistryService, CommandService, CommandTerminal, ConfirmDialog, FAQ_CONTENT_LOADER, FAQ_DEV_EDITOR, FAQ_DEV_MODE, FAQ_DEV_WORKSPACE_ROOT, FAQ_PUBLIC_PUBLISHER, FAQ_PUBLIC_SITE_BASE_URL, FaqAuthoringPanel, FaqHistoryService, FaqMarkdownRendererService, FaqModal, FaqService, HELP_USAGE, HttpFaqContentLoader, KeyboardShortcutService, Login, MainContent, PublicFaqIndex, PublicFaqPage, PublicFaqToc, RegexValidatorDirective, SHELL_APP_NAME, SHELL_AUTH_URLS, SHELL_COMMANDS, SHELL_MENU_ITEMS, SHELL_POST_LOGIN_ROUTE, Shell, SideMenu, StatusBar, TerminalFocusService, TerminalVisibilityService, ThemeService, ThinkingService, audienceAllowed, authGuard, authInterceptor, buildFallbackChain, guestGuard, provideShellConfig, tokenize };
|
|
1017
|
+
export { AuthenticationService, CLEAR_USAGE, CommandRegistryService, CommandService, CommandTerminal, ConfirmDialog, FAQ_CONTENT_LOADER, FAQ_DEV_EDITOR, FAQ_DEV_MODE, FAQ_DEV_WORKSPACE_ROOT, FAQ_PUBLIC_PUBLISHER, FAQ_PUBLIC_SITE_BASE_URL, FaqAuthoringPanel, FaqHistoryService, FaqMarkdownRendererService, FaqModal, FaqService, HELP_USAGE, HttpFaqContentLoader, KeyboardShortcutService, Login, MainContent, PublicFaqIndex, PublicFaqPage, PublicFaqToc, RegexValidatorDirective, SESSION_TOKEN_KEY, SHELL_APP_NAME, SHELL_AUTH_URLS, SHELL_COMMANDS, SHELL_MENU_ITEMS, SHELL_POST_LOGIN_ROUTE, SHELL_SHARED_SESSION, SessionTokenStore, Shell, SideMenu, StatusBar, TerminalFocusService, TerminalVisibilityService, ThemeService, ThinkingService, audienceAllowed, authGuard, authInterceptor, buildFallbackChain, guestGuard, provideShellConfig, tokenize };
|
|
939
1018
|
export type { CommandAvailability, CommandDefinition, CommandHistoryEntry, CommandLexiconEntry, CommandResult, ConfirmDialogData, FaqAudience, FaqContentLoader, FaqDevEditor, FaqEntry, FaqFrontmatter, FaqManifest, FaqPublicPublisher, FaqRegistrationHandle, FaqRenderContext, FaqRenderOptions, FaqResolution, MenuItem, ParsedFaq, Severity, ShellAuthUrls, ShellConfig, ShortcutRegistration, ThemeMode };
|
|
940
1019
|
//# sourceMappingURL=franzzemen-brokenstock-shell.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"franzzemen-brokenstock-shell.d.ts","sources":["../../src/lib/types/command.types.ts","../../src/lib/types/menu.types.ts","../../src/lib/tokens/shell-tokens.ts","../../src/lib/provide-shell-config.ts","../../src/lib/guards/auth.guard.ts","../../src/lib/guards/guest.guard.ts","../../src/lib/interceptors/auth.interceptor.ts","../../src/lib/directives/regex-validator.directive.ts","../../src/lib/faq/faq.types.ts","../../src/lib/faq/faq-content-loader.token.ts","../../src/lib/faq/faq-markdown-renderer.service.ts","../../src/lib/faq/http-faq-content-loader.service.ts","../../src/lib/faq/faq.service.ts","../../src/lib/faq/faq-history.service.ts","../../src/lib/faq/faq-modal/faq-modal.ts","../../src/lib/faq/faq-dev-mode.token.ts","../../src/lib/faq/faq-authoring-panel/faq-authoring-panel.ts","../../src/lib/faq/public-faq-index/public-faq-index.ts","../../src/lib/faq/public-faq-page/public-faq-page.ts","../../src/lib/faq/public-faq-toc/public-faq-toc.ts","../../src/lib/faq/faq-seo.tokens.ts","../../src/lib/services/thinking.service.ts","../../src/lib/services/theme.service.ts","../../src/lib/services/terminal-focus.service.ts","../../src/lib/services/terminal-visibility.service.ts","../../src/lib/services/keyboard-shortcut.service.ts","../../src/lib/services/authentication.service.ts","../../src/lib/services/command-registry.service.ts","../../src/lib/services/command.service.ts","../../src/lib/commands/command.utils.ts","../../src/lib/components/shell/shell.ts","../../src/lib/components/side-menu/side-menu.ts","../../src/lib/components/status-bar/status-bar.ts","../../src/lib/components/main-content/main-content.ts","../../src/lib/components/command-terminal/command-terminal.ts","../../src/lib/components/login/login.ts","../../src/lib/components/confirm-dialog/confirm-dialog.ts"],"mappings":";;;;;;;;;;;;AAMM,KAAM,QAAQ;UAEH,aAAa;;;eAGjB,IAAI;eACJ,QAAQ;;AAEpB;UAEgB,mBAAmB;;YAE1B,aAAa;;AAEtB;AAED;;;AAGG;UACc,mBAAmB;AAClC;AACA;AACA;AACA;AACA,yBAAqB,CAAC,CAAC,OAAO;AAC9B;AACD;AAED;;;;;AAKG;UACc,mBAAmB;;;AAGnC;AAED;;AAEG;AACG,UAAW,iBAAkB,SAAQ,mBAAmB;AAC5D;;;;;;;;;;;AAWG;oBACa,mBAAmB;AAEnC,6BAAyB,aAAa,GAAG,OAAO,CAAC,aAAa;AAC/D;;UCjEgB,QAAQ;;;;;AAKvB;;;AAGG;AACH;AACA;;;;;;;;;;AAUG;AACH;AACA;;;;AAIG;AACH;AACD;;UCxBgB,aAAa;;;;AAI7B;AAED,cAAa,cAAc,EAAA,cAAA;AAC3B,cAAa,gBAAgB,EAAA,cAAA,CAAA,QAAA;AAC7B,cAAa,eAAe,EAAA,cAAA,CAAA,aAAA;AAE5B;;;AAGG;AACH,cAAa,cAAc,EAAA,cAAA,CAAA,iBAAA;AAE3B,cAAa,sBAAsB,EAAA,cAAA;;
|
|
1
|
+
{"version":3,"file":"franzzemen-brokenstock-shell.d.ts","sources":["../../src/lib/types/command.types.ts","../../src/lib/types/menu.types.ts","../../src/lib/tokens/shell-tokens.ts","../../src/lib/provide-shell-config.ts","../../src/lib/guards/auth.guard.ts","../../src/lib/guards/guest.guard.ts","../../src/lib/interceptors/auth.interceptor.ts","../../src/lib/directives/regex-validator.directive.ts","../../src/lib/faq/faq.types.ts","../../src/lib/faq/faq-content-loader.token.ts","../../src/lib/faq/faq-markdown-renderer.service.ts","../../src/lib/faq/http-faq-content-loader.service.ts","../../src/lib/faq/faq.service.ts","../../src/lib/faq/faq-history.service.ts","../../src/lib/faq/faq-modal/faq-modal.ts","../../src/lib/faq/faq-dev-mode.token.ts","../../src/lib/faq/faq-authoring-panel/faq-authoring-panel.ts","../../src/lib/faq/public-faq-index/public-faq-index.ts","../../src/lib/faq/public-faq-page/public-faq-page.ts","../../src/lib/faq/public-faq-toc/public-faq-toc.ts","../../src/lib/faq/faq-seo.tokens.ts","../../src/lib/services/thinking.service.ts","../../src/lib/services/session-token-store.ts","../../src/lib/services/theme.service.ts","../../src/lib/services/terminal-focus.service.ts","../../src/lib/services/terminal-visibility.service.ts","../../src/lib/services/keyboard-shortcut.service.ts","../../src/lib/services/authentication.service.ts","../../src/lib/services/command-registry.service.ts","../../src/lib/services/command.service.ts","../../src/lib/commands/command.utils.ts","../../src/lib/components/shell/shell.ts","../../src/lib/components/side-menu/side-menu.ts","../../src/lib/components/status-bar/status-bar.ts","../../src/lib/components/main-content/main-content.ts","../../src/lib/components/command-terminal/command-terminal.ts","../../src/lib/components/login/login.ts","../../src/lib/components/confirm-dialog/confirm-dialog.ts"],"mappings":"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","names":["CategoryGroup"]}
|