@substrat-run/elements 0.0.0-stage → 0.1.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.
Files changed (47) hide show
  1. package/LICENSE +202 -0
  2. package/README.md +58 -2
  3. package/dist/avatar.d.ts +56 -0
  4. package/dist/avatar.d.ts.map +1 -0
  5. package/dist/avatar.js +107 -0
  6. package/dist/avatar.js.map +1 -0
  7. package/dist/controls.d.ts +21 -0
  8. package/dist/controls.d.ts.map +1 -0
  9. package/dist/controls.js +21 -0
  10. package/dist/controls.js.map +1 -0
  11. package/dist/entity-table-model.d.ts +269 -0
  12. package/dist/entity-table-model.d.ts.map +1 -0
  13. package/dist/entity-table-model.js +490 -0
  14. package/dist/entity-table-model.js.map +1 -0
  15. package/dist/entity-table.d.ts +187 -0
  16. package/dist/entity-table.d.ts.map +1 -0
  17. package/dist/entity-table.js +1004 -0
  18. package/dist/entity-table.js.map +1 -0
  19. package/dist/index.d.ts +6 -0
  20. package/dist/index.d.ts.map +1 -0
  21. package/dist/index.js +6 -0
  22. package/dist/index.js.map +1 -0
  23. package/dist/internal/session-controller.d.ts +25 -0
  24. package/dist/internal/session-controller.d.ts.map +1 -0
  25. package/dist/internal/session-controller.js +46 -0
  26. package/dist/internal/session-controller.js.map +1 -0
  27. package/dist/internal/substrat-element.d.ts +36 -0
  28. package/dist/internal/substrat-element.d.ts.map +1 -0
  29. package/dist/internal/substrat-element.js +195 -0
  30. package/dist/internal/substrat-element.js.map +1 -0
  31. package/dist/jsx.d.ts +8 -0
  32. package/dist/jsx.d.ts.map +1 -0
  33. package/dist/jsx.js +2 -0
  34. package/dist/jsx.js.map +1 -0
  35. package/dist/session.d.ts +84 -0
  36. package/dist/session.d.ts.map +1 -0
  37. package/dist/session.js +158 -0
  38. package/dist/session.js.map +1 -0
  39. package/dist/themes/atelier.css +59 -0
  40. package/dist/themes/base.css +7 -0
  41. package/dist/themes/ledger.css +59 -0
  42. package/dist/themes/native.css +11 -0
  43. package/dist/user-menu.d.ts +95 -0
  44. package/dist/user-menu.d.ts.map +1 -0
  45. package/dist/user-menu.js +212 -0
  46. package/dist/user-menu.js.map +1 -0
  47. package/package.json +47 -3
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entity-table.js","sourceRoot":"","sources":["../src/entity-table.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ export { SubEntityTable, type CellHandle, type Column, type TableFilter, type TableView } from './entity-table.js';
2
+ export { BULK, EntityTableModel, actionsIn, arrange, cellText, defaultLayout, emptyReason, layoutEntries, moveColumn, toggleColumn, queryFromParams, queryToParams, type CellKind, type CellText, type ColumnSpec, type Page, type Phase, type Problem, type QueryParams, type RowAction, type SearchResult, type TableLayout, type TableOptions, type TableQuery, type TableSource, type TableState, type Tone, } from './entity-table-model.js';
3
+ export { SubAvatar, type AvatarShow } from './avatar.js';
4
+ export { SubUserMenu } from './user-menu.js';
5
+ export { HUES, SessionStore, hueOf, initialsOf, parseSession, sessionAt, signInHref, switchUserHref, type AuthUrls, type Hue, type Session, type SessionState, } from './session.js';
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,KAAK,UAAU,EAAE,KAAK,MAAM,EAAE,KAAK,WAAW,EAAE,KAAK,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACnH,OAAO,EACL,IAAI,EACJ,gBAAgB,EAChB,SAAS,EACT,OAAO,EACP,QAAQ,EACR,aAAa,EACb,WAAW,EACX,aAAa,EACb,UAAU,EACV,YAAY,EACZ,eAAe,EACf,aAAa,EACb,KAAK,QAAQ,EACb,KAAK,QAAQ,EACb,KAAK,UAAU,EACf,KAAK,IAAI,EACT,KAAK,KAAK,EACV,KAAK,OAAO,EACZ,KAAK,WAAW,EAChB,KAAK,SAAS,EACd,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,KAAK,UAAU,EACf,KAAK,IAAI,GACV,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EACL,IAAI,EACJ,YAAY,EACZ,KAAK,EACL,UAAU,EACV,YAAY,EACZ,SAAS,EACT,UAAU,EACV,cAAc,EACd,KAAK,QAAQ,EACb,KAAK,GAAG,EACR,KAAK,OAAO,EACZ,KAAK,YAAY,GAClB,MAAM,cAAc,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,6 @@
1
+ export { SubEntityTable } from './entity-table.js';
2
+ export { BULK, EntityTableModel, actionsIn, arrange, cellText, defaultLayout, emptyReason, layoutEntries, moveColumn, toggleColumn, queryFromParams, queryToParams, } from './entity-table-model.js';
3
+ export { SubAvatar } from './avatar.js';
4
+ export { SubUserMenu } from './user-menu.js';
5
+ export { HUES, SessionStore, hueOf, initialsOf, parseSession, sessionAt, signInHref, switchUserHref, } from './session.js';
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAkE,MAAM,mBAAmB,CAAC;AACnH,OAAO,EACL,IAAI,EACJ,gBAAgB,EAChB,SAAS,EACT,OAAO,EACP,QAAQ,EACR,aAAa,EACb,WAAW,EACX,aAAa,EACb,UAAU,EACV,YAAY,EACZ,eAAe,EACf,aAAa,GAgBd,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,SAAS,EAAmB,MAAM,aAAa,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EACL,IAAI,EACJ,YAAY,EACZ,KAAK,EACL,UAAU,EACV,YAAY,EACZ,SAAS,EACT,UAAU,EACV,cAAc,GAKf,MAAM,cAAc,CAAC"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * The session an element draws: its `session` property when the host set one, the
3
+ * shared read at its `sessionUrl` otherwise. A Lit controller so `<sub-avatar>` and
4
+ * `<sub-user-menu>` hold the same rule once.
5
+ */
6
+ import type { ReactiveController, ReactiveControllerHost } from 'lit';
7
+ import { type Session, type SessionState } from '../session.js';
8
+ interface Host extends ReactiveControllerHost {
9
+ sessionUrl: string;
10
+ /** `undefined`: read it. `null`: nobody. */
11
+ session: Session | null | undefined;
12
+ }
13
+ export declare class SessionController implements ReactiveController {
14
+ #private;
15
+ private readonly host;
16
+ constructor(host: Host);
17
+ get state(): SessionState;
18
+ /** Read again; a no-op while the host draws a `session` it was handed. */
19
+ refresh(): Promise<void>;
20
+ hostConnected(): void;
21
+ hostUpdate(): void;
22
+ hostDisconnected(): void;
23
+ }
24
+ export {};
25
+ //# sourceMappingURL=session-controller.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-controller.d.ts","sourceRoot":"","sources":["../../src/internal/session-controller.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,KAAK,CAAC;AACtE,OAAO,EAAa,KAAK,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,eAAe,CAAC;AAE3E,UAAU,IAAK,SAAQ,sBAAsB;IAC3C,UAAU,EAAE,MAAM,CAAC;IACnB,4CAA4C;IAC5C,OAAO,EAAE,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC;CACrC;AAED,qBAAa,iBAAkB,YAAW,kBAAkB;;IAK9C,OAAO,CAAC,QAAQ,CAAC,IAAI;IAAjC,YAA6B,IAAI,EAAE,IAAI,EAEtC;IAED,IAAI,KAAK,IAAI,YAAY,CAIxB;IAED,0EAA0E;IAC1E,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAEvB;IAED,aAAa,IAAI,IAAI,CAEpB;IAED,UAAU,IAAI,IAAI,CAGjB;IAED,gBAAgB,IAAI,IAAI,CAIvB;CAYF"}
@@ -0,0 +1,46 @@
1
+ import { sessionAt } from '../session.js';
2
+ export class SessionController {
3
+ host;
4
+ #read = { phase: 'loading' };
5
+ #unsubscribe;
6
+ #bound;
7
+ constructor(host) {
8
+ this.host = host;
9
+ host.addController(this);
10
+ }
11
+ get state() {
12
+ const s = this.host.session;
13
+ if (s === undefined)
14
+ return this.#read;
15
+ return s === null ? { phase: 'signed-out' } : { phase: 'signed-in', session: s };
16
+ }
17
+ /** Read again; a no-op while the host draws a `session` it was handed. */
18
+ refresh() {
19
+ return this.host.session === undefined ? sessionAt(this.host.sessionUrl).refresh() : Promise.resolve();
20
+ }
21
+ hostConnected() {
22
+ this.#bind();
23
+ }
24
+ hostUpdate() {
25
+ const b = this.#bound;
26
+ if (!b || b.url !== this.host.sessionUrl || b.session !== this.host.session)
27
+ this.#bind();
28
+ }
29
+ hostDisconnected() {
30
+ this.#unsubscribe?.();
31
+ this.#unsubscribe = undefined;
32
+ this.#bound = undefined;
33
+ }
34
+ #bind() {
35
+ this.#unsubscribe?.();
36
+ this.#unsubscribe = undefined;
37
+ this.#bound = { url: this.host.sessionUrl, session: this.host.session };
38
+ if (this.host.session !== undefined)
39
+ return;
40
+ this.#unsubscribe = sessionAt(this.host.sessionUrl).subscribe((s) => {
41
+ this.#read = s;
42
+ this.host.requestUpdate();
43
+ });
44
+ }
45
+ }
46
+ //# sourceMappingURL=session-controller.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-controller.js","sourceRoot":"","sources":["../../src/internal/session-controller.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,SAAS,EAAmC,MAAM,eAAe,CAAC;AAQ3E,MAAM,OAAO,iBAAiB;IAKC,IAAI;IAJjC,KAAK,GAAiB,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;IAC3C,YAAY,CAA2B;IACvC,MAAM,CAAmE;IAEzE,YAA6B,IAAU;oBAAV,IAAI;QAC/B,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IAED,IAAI,KAAK;QACP,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;QAC5B,IAAI,CAAC,KAAK,SAAS;YAAE,OAAO,IAAI,CAAC,KAAK,CAAC;QACvC,OAAO,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;IACnF,CAAC;IAED,0EAA0E;IAC1E,OAAO;QACL,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;IACzG,CAAC;IAED,aAAa;QACX,IAAI,CAAC,KAAK,EAAE,CAAC;IACf,CAAC;IAED,UAAU;QACR,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;QACtB,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,CAAC,OAAO,KAAK,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,IAAI,CAAC,KAAK,EAAE,CAAC;IAC5F,CAAC;IAED,gBAAgB;QACd,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC;QACtB,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC;QAC9B,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;IAC1B,CAAC;IAED,KAAK;QACH,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC;QACtB,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC;QAC9B,IAAI,CAAC,MAAM,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;QACxE,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,KAAK,SAAS;YAAE,OAAO;QAC5C,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE;YAClE,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;YACf,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;QAC5B,CAAC,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -0,0 +1,36 @@
1
+ import type { CSSResultGroup, PropertyDeclarations, PropertyValues } from 'lit';
2
+ import { LitElement } from 'lit';
3
+ export default class SubstratElement extends LitElement {
4
+ #private;
5
+ static css?: CSSResultGroup;
6
+ /** Prepends host styles to the component's styles. */
7
+ static get styles(): CSSResultGroup;
8
+ static properties: PropertyDeclarations;
9
+ dir: string;
10
+ lang: string;
11
+ didSSR: boolean;
12
+ initialReflectedProperties: Map<string, unknown>;
13
+ internals: ElementInternals;
14
+ constructor();
15
+ attributeChangedCallback(name: string, oldValue: string | null, newValue: string | null): void;
16
+ protected willUpdate(changedProperties: PropertyValues): void;
17
+ protected firstUpdated(changedProperties: PropertyValues): void;
18
+ protected update(changedProperties: PropertyValues): void;
19
+ /** Set a style across both client and server. */
20
+ protected setStyle<T extends keyof CSSStyleDeclaration & string>(property: T, value: CSSStyleDeclaration[T]): void;
21
+ /** Set a CSS custom property across both client and server. */
22
+ protected setStyleProperty<T extends string>(property: T, value: string): void;
23
+ /** Methods for setting and checking custom states. */
24
+ customStates: {
25
+ /** Adds or removes the specified custom state. */
26
+ set: (customState: string, active: boolean) => void;
27
+ /** Determines whether or not the element currently has the specified state. */
28
+ has: (customState: string) => boolean;
29
+ };
30
+ /**
31
+ * Given a native event, this function cancels it and dispatches it again from the host element using the desired
32
+ * event options.
33
+ */
34
+ relayNativeEvent(event: Event, eventOptions?: EventInit): void;
35
+ }
36
+ //# sourceMappingURL=substrat-element.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"substrat-element.d.ts","sourceRoot":"","sources":["../../src/internal/substrat-element.ts"],"names":[],"mappings":"AA+BA,OAAO,KAAK,EAAE,cAAc,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAChF,OAAO,EAAE,UAAU,EAAiB,MAAM,KAAK,CAAC;AAkDhD,MAAM,CAAC,OAAO,OAAO,eAAgB,SAAQ,UAAU;;IAErD,MAAM,CAAC,GAAG,CAAC,EAAE,cAAc,CAAC;IAE5B,sDAAsD;IACtD,MAAM,KAAK,MAAM,IAAI,cAAc,CAGlC;IAGD,MAAM,CAAC,UAAU,EAAE,oBAAoB,CAIrC;IAEM,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,OAAO,CAAC;IAGxB,0BAA0B,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAa;IAC7D,SAAS,EAAG,gBAAgB,CAAC;IAE7B,cAYC;IAED,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,QAatF;IAED,SAAS,CAAC,UAAU,CAAC,iBAAiB,EAAE,cAAc,GAAG,IAAI,CAW5D;IAED,SAAS,CAAC,YAAY,CAAC,iBAAiB,EAAE,cAAc,GAAG,IAAI,CAU9D;IAED,SAAS,CAAC,MAAM,CAAC,iBAAiB,EAAE,cAAc,GAAG,IAAI,CAcxD;IAED,iDAAiD;IACjD,SAAS,CAAC,QAAQ,CAAC,CAAC,SAAS,MAAM,mBAAmB,GAAG,MAAM,EAAE,QAAQ,EAAE,CAAC,EAAE,KAAK,EAAE,mBAAmB,CAAC,CAAC,CAAC,QAmB1G;IAED,+DAA+D;IAC/D,SAAS,CAAC,gBAAgB,CAAC,CAAC,SAAS,MAAM,EAAE,QAAQ,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,QActE;IAED,sDAAsD;IAC/C,YAAY;QACjB,kDAAkD;QAClD,GAAG,gBAAgB,MAAM,UAAU,OAAO;QAiB1C,+EAA+E;QAC/E,GAAG,gBAAgB,MAAM;MAQzB;IAEF;;;OAGG;IACH,gBAAgB,CAAC,KAAK,EAAE,KAAK,EAAE,YAAY,CAAC,EAAE,SAAS,QAGtD;CACF"}
@@ -0,0 +1,195 @@
1
+ import { LitElement, css, isServer } from 'lit';
2
+ const hostStyles = css `
3
+ :host {
4
+ box-sizing: border-box;
5
+ }
6
+
7
+ :host *,
8
+ :host *::before,
9
+ :host *::after {
10
+ box-sizing: inherit;
11
+ }
12
+
13
+ [hidden],
14
+ :host([hidden]) {
15
+ display: none !important;
16
+ }
17
+ `;
18
+ const HAS_ENDING_COLON = /;\s+$/;
19
+ function camelToKebab(str) {
20
+ return str.replace(/[A-Z]/g, (c) => `-${c.toLowerCase()}`);
21
+ }
22
+ // if your server doesn't have a polyfill available for this.style, (assumed by it being undefined) we modify the attribute directly.
23
+ function buildStyleAttribute(options) {
24
+ const { property, value, element } = options;
25
+ if (value) {
26
+ let style = element.getAttribute('style') || '';
27
+ if (style) {
28
+ // need to check if the previous property ended with a colon or not.
29
+ if (!style.match(HAS_ENDING_COLON)) {
30
+ style += ';';
31
+ }
32
+ style += ' ';
33
+ }
34
+ const str = `${property}: ${value}`;
35
+ if (style.includes(str)) {
36
+ return;
37
+ }
38
+ return `${style}${str};`;
39
+ }
40
+ return null;
41
+ }
42
+ export default class SubstratElement extends LitElement {
43
+ // One or more CSSResultGroup to include in the component's shadow root. Host styles are automatically prepended.
44
+ static css;
45
+ /** Prepends host styles to the component's styles. */
46
+ static get styles() {
47
+ const styles = Array.isArray(this.css) ? this.css : this.css ? [this.css] : [];
48
+ return [hostStyles, ...styles];
49
+ }
50
+ // Make localization attributes reactive
51
+ static properties = {
52
+ dir: {},
53
+ lang: {},
54
+ didSSR: { type: Boolean, reflect: true, attribute: 'did-ssr' },
55
+ };
56
+ #hasRecordedInitialProperties = false;
57
+ initialReflectedProperties = new Map();
58
+ internals;
59
+ constructor() {
60
+ super();
61
+ this.didSSR = isServer || Boolean(this.shadowRoot);
62
+ try {
63
+ this.internals = this.attachInternals();
64
+ }
65
+ catch {
66
+ /* Need to tell people if they need a polyfill. */
67
+ console.error('Element internals are not supported in your browser. Consider using a polyfill');
68
+ }
69
+ this.customStates.set('sub-defined', true);
70
+ }
71
+ attributeChangedCallback(name, oldValue, newValue) {
72
+ if (!this.#hasRecordedInitialProperties) {
73
+ this.constructor.elementProperties.forEach((obj, prop) => {
74
+ const value = this[prop];
75
+ if (obj.reflect && value != null) {
76
+ this.initialReflectedProperties.set(String(prop), value);
77
+ }
78
+ });
79
+ this.#hasRecordedInitialProperties = true;
80
+ }
81
+ super.attributeChangedCallback(name, oldValue, newValue);
82
+ }
83
+ willUpdate(changedProperties) {
84
+ super.willUpdate(changedProperties);
85
+ // Run the morph fixing *after* willUpdate.
86
+ this.initialReflectedProperties.forEach((value, prop) => {
87
+ // If a prop changes to `null`, we assume this happens via an attribute changing to `null`.
88
+ const self = this;
89
+ if (changedProperties.has(prop) && self[prop] == null) {
90
+ self[prop] = value;
91
+ }
92
+ });
93
+ }
94
+ firstUpdated(changedProperties) {
95
+ super.firstUpdated(changedProperties);
96
+ // This is a fix to workaround SSR not being able to catch slotchange events.
97
+ // https://github.com/lit/lit/discussions/4697
98
+ if (this.didSSR) {
99
+ this.shadowRoot?.querySelectorAll('slot').forEach((slotElement) => {
100
+ slotElement.dispatchEvent(new Event('slotchange', { bubbles: true, composed: false, cancelable: false }));
101
+ });
102
+ }
103
+ }
104
+ update(changedProperties) {
105
+ try {
106
+ super.update(changedProperties);
107
+ }
108
+ catch (e) {
109
+ if (this.didSSR && !this.hasUpdated) {
110
+ // Emit a hydration error so we can catch it and do cool things.
111
+ // This may accidentally grab non-hydration related errors, but its the best I've found without directly reading error strings.
112
+ const event = Object.assign(new Event('lit-hydration-error', { bubbles: true, composed: true, cancelable: false }), {
113
+ error: e,
114
+ });
115
+ this.dispatchEvent(event);
116
+ }
117
+ throw e;
118
+ }
119
+ }
120
+ /** Set a style across both client and server. */
121
+ setStyle(property, value) {
122
+ // if your server doesn't have a polyfill available for this.style, (assumed by it being undefined) we modify the attribute directly.
123
+ if (!this.style) {
124
+ const str = buildStyleAttribute({
125
+ // because this is going to be serialized to an HTML style attribute, need to transform the casing.
126
+ property: camelToKebab(property),
127
+ value,
128
+ element: this,
129
+ });
130
+ if (str) {
131
+ this.setAttribute('style', str);
132
+ }
133
+ return;
134
+ }
135
+ // Client side
136
+ this.style[property] = value;
137
+ }
138
+ /** Set a CSS custom property across both client and server. */
139
+ setStyleProperty(property, value) {
140
+ // if your server doesn't have a polyfill available for this.style, (assumed by it being undefined) we modify the attribute directly.
141
+ if (!this.style) {
142
+ const str = buildStyleAttribute({ property, value, element: this });
143
+ if (str) {
144
+ this.setAttribute('style', str);
145
+ }
146
+ return;
147
+ }
148
+ // Client side
149
+ this.style.setProperty(property, value);
150
+ }
151
+ /** Methods for setting and checking custom states. */
152
+ customStates = {
153
+ /** Adds or removes the specified custom state. */
154
+ set: (customState, active) => {
155
+ if (!this.internals?.states)
156
+ return;
157
+ try {
158
+ if (active) {
159
+ this.internals.states.add(customState);
160
+ }
161
+ else {
162
+ this.internals.states.delete(customState);
163
+ }
164
+ }
165
+ catch (e) {
166
+ if (String(e).includes("must start with '--'")) {
167
+ console.error('Your browser implements an outdated version of CustomStateSet. Consider using a polyfill');
168
+ }
169
+ else {
170
+ throw e;
171
+ }
172
+ }
173
+ },
174
+ /** Determines whether or not the element currently has the specified state. */
175
+ has: (customState) => {
176
+ if (!this.internals?.states)
177
+ return false;
178
+ try {
179
+ return this.internals.states.has(customState);
180
+ }
181
+ catch {
182
+ return false;
183
+ }
184
+ },
185
+ };
186
+ /**
187
+ * Given a native event, this function cancels it and dispatches it again from the host element using the desired
188
+ * event options.
189
+ */
190
+ relayNativeEvent(event, eventOptions) {
191
+ event.stopImmediatePropagation();
192
+ this.dispatchEvent(new event.constructor(event.type, { ...event, ...eventOptions }));
193
+ }
194
+ }
195
+ //# sourceMappingURL=substrat-element.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"substrat-element.js","sourceRoot":"","sources":["../../src/internal/substrat-element.ts"],"names":[],"mappings":"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"}
package/dist/jsx.d.ts ADDED
@@ -0,0 +1,8 @@
1
+ /**
2
+ * JSX types for every `wa-*` element, for a React or Preact app:
3
+ * `import type {} from '@substrat-run/elements/jsx'`. Web Awesome generates them from its
4
+ * custom-elements manifest; this only re-points the import so an app depends on this
5
+ * package alone.
6
+ */
7
+ export type {} from '@awesome.me/webawesome/dist/custom-elements-jsx.d.ts';
8
+ //# sourceMappingURL=jsx.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jsx.d.ts","sourceRoot":"","sources":["../src/jsx.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,YAAY,EAAE,MAAM,sDAAsD,CAAC"}
package/dist/jsx.js ADDED
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=jsx.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jsx.js","sourceRoot":"","sources":["../src/jsx.ts"],"names":[],"mappings":""}
@@ -0,0 +1,84 @@
1
+ /**
2
+ * Who is signed in, for `<sub-avatar>` and `<sub-user-menu>` — with no DOM in it, so a
3
+ * second renderer gets the same answers from the same code (as `EntityTableModel` is
4
+ * for the table).
5
+ *
6
+ * One `SessionStore` per URL, shared: an avatar in the corner and the menu beside it
7
+ * read the session once between them, and a refresh of one is a refresh of both.
8
+ *
9
+ * A session read answers 200 with `{ principal, display, … }`, or anything else for
10
+ * "nobody". `email`, `picture` and `team` are read when present and never required —
11
+ * the todo demo's `/api/me` has only the first two.
12
+ */
13
+ export interface Session {
14
+ principal: string;
15
+ display: string;
16
+ email?: string;
17
+ picture?: string;
18
+ /** The team (tenant) the session is in, when the read names one. */
19
+ team?: string;
20
+ }
21
+ /**
22
+ * `loading` until the first read answers, so nothing draws "Sign in" for someone who is
23
+ * signed in and merely not read yet. A later refresh keeps the last answer on screen
24
+ * instead of going back to `loading`.
25
+ */
26
+ export type SessionState = {
27
+ phase: 'loading';
28
+ } | {
29
+ phase: 'signed-in';
30
+ session: Session;
31
+ } | {
32
+ phase: 'signed-out';
33
+ };
34
+ type Fetch = (url: string, init: RequestInit) => Promise<Pick<Response, 'ok' | 'json'>>;
35
+ /** A read's body as a session, or null when it is not one. Extra fields are ignored. */
36
+ export declare function parseSession(body: unknown): Session | null;
37
+ /**
38
+ * One or two letters for a name, by grapheme rather than code unit, so an accented or
39
+ * non-Latin first letter, or an emoji, is never cut in half. A single name gives one
40
+ * letter; "Ada Lovelace" gives "AL", "María José García" gives "MG" (first and last).
41
+ * A name with no letter-like start (a bare email local part, say) still gives its
42
+ * first grapheme.
43
+ */
44
+ export declare function initialsOf(display: string): string;
45
+ /** The Web Awesome palette hues an avatar may take; gray is left out for "nobody". */
46
+ export declare const HUES: readonly ['red', 'orange', 'yellow', 'green', 'cyan', 'blue', 'indigo', 'purple', 'pink'];
47
+ export type Hue = (typeof HUES)[number];
48
+ /**
49
+ * A hue chosen by the principal, not the name, so a person keeps their colour when they
50
+ * change how they are called. FNV-1a over the UTF-16 units: stable and cheap, not a
51
+ * security property.
52
+ */
53
+ export declare function hueOf(principal: string): Hue;
54
+ export declare class SessionStore {
55
+ #private;
56
+ readonly url: string;
57
+ private readonly fetchImpl;
58
+ constructor(url: string, fetchImpl?: Fetch);
59
+ get state(): SessionState;
60
+ /**
61
+ * Called with the current state now and on every change; returns the unsubscribe.
62
+ * The first subscriber starts the first read.
63
+ */
64
+ subscribe(listener: (state: SessionState) => void): () => void;
65
+ /** Read again. Calls made while a read is in flight share it. */
66
+ refresh(): Promise<void>;
67
+ }
68
+ /**
69
+ * The shared store for a session URL, resolved against the page. In a browser it reads
70
+ * again whenever the tab comes back into view, so signing out in another tab shows here
71
+ * the next time somebody looks — without polling.
72
+ */
73
+ export declare function sessionAt(url: string): SessionStore;
74
+ /** The auth endpoints a vertical mounts (`@substrat-run/vertical-auth`), as navigations. */
75
+ export interface AuthUrls {
76
+ login: string;
77
+ logout: string;
78
+ }
79
+ /** Where "Sign in" goes: back to this page once the issuer is done. */
80
+ export declare const signInHref: (urls: AuthUrls, returnTo: string) => string;
81
+ /** Where "Switch user" goes: `prompt=select_account` gets past the issuer's SSO session. */
82
+ export declare const switchUserHref: (urls: AuthUrls, returnTo: string) => string;
83
+ export {};
84
+ //# sourceMappingURL=session.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,MAAM,WAAW,OAAO;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,oEAAoE;IACpE,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;;;GAIG;AACH,MAAM,MAAM,YAAY,GACpB;IAAE,KAAK,EAAE,SAAS,CAAA;CAAE,GACpB;IAAE,KAAK,EAAE,WAAW,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,GACxC;IAAE,KAAK,EAAE,YAAY,CAAA;CAAE,CAAC;AAE5B,KAAK,KAAK,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,KAAK,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC;AAIxF,wFAAwF;AACxF,wBAAgB,YAAY,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,GAAG,IAAI,CAa1D;AAKD;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAOlD;AAED,sFAAsF;AACtF,eAAO,MAAM,IAAI,YAAI,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,CAAU,CAAC;AAC9G,MAAM,MAAM,GAAG,GAAG,CAAC,OAAO,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC;AAExC;;;;GAIG;AACH,wBAAgB,KAAK,CAAC,SAAS,EAAE,MAAM,GAAG,GAAG,CAO5C;AAED,qBAAa,YAAY;;IAMrB,QAAQ,CAAC,GAAG,EAAE,MAAM;IACpB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAF5B,YACW,GAAG,EAAE,MAAM,EACH,SAAS,GAAE,KAA8C,EACxE;IAEJ,IAAI,KAAK,IAAI,YAAY,CAExB;IAED;;;OAGG;IACH,SAAS,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,GAAG,MAAM,IAAI,CAK7D;IAED,iEAAiE;IACjE,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAGvB;CAoBF;AAUD;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,CAanD;AAED,4FAA4F;AAC5F,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,uEAAuE;AACvE,eAAO,MAAM,UAAU,SAAU,QAAQ,YAAY,MAAM,WAAyC,CAAC;AAErG,4FAA4F;AAC5F,eAAO,MAAM,cAAc,SAAU,QAAQ,YAAY,MAAM,WACC,CAAC"}