@loadbare/app 0.12.0 → 0.14.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.
- package/dist/build/assemble.d.ts.map +1 -1
- package/dist/build/assemble.js +87 -1
- package/dist/build/assemble.js.map +1 -1
- package/dist/build/cli.js +2 -1
- package/dist/build/cli.js.map +1 -1
- package/dist/build/elements.d.ts +9 -1
- package/dist/build/elements.d.ts.map +1 -1
- package/dist/build/elements.js +50 -0
- package/dist/build/elements.js.map +1 -1
- package/dist/build/origins.d.ts +2 -0
- package/dist/build/origins.d.ts.map +1 -1
- package/dist/build/origins.js +1 -1
- package/dist/build/origins.js.map +1 -1
- package/dist/core/lb-constants.d.ts +34 -1
- package/dist/core/lb-constants.d.ts.map +1 -1
- package/dist/core/lb-constants.js +105 -0
- package/dist/core/lb-constants.js.map +1 -1
- package/dist/core/lb-types.d.ts +74 -18
- package/dist/core/lb-types.d.ts.map +1 -1
- package/dist/core/lb-types.js +74 -11
- package/dist/core/lb-types.js.map +1 -1
- package/dist/hub/lb-apply.d.ts +57 -18
- package/dist/hub/lb-apply.d.ts.map +1 -1
- package/dist/hub/lb-apply.js +661 -63
- package/dist/hub/lb-apply.js.map +1 -1
- package/dist/hub/lb-hub.browser.d.ts.map +1 -1
- package/dist/hub/lb-hub.browser.js +400 -33
- package/dist/hub/lb-hub.browser.js.map +1 -1
- package/dist/server/lb-express.d.ts +19 -7
- package/dist/server/lb-express.d.ts.map +1 -1
- package/dist/server/lb-express.js +62 -26
- package/dist/server/lb-express.js.map +1 -1
- package/dist/server/lb-server.d.ts +80 -11
- package/dist/server/lb-server.d.ts.map +1 -1
- package/dist/server/lb-server.js +185 -33
- package/dist/server/lb-server.js.map +1 -1
- package/docs/TECHREF-1.0.md +584 -111
- package/docs/comparison.md +17 -13
- package/docs/possible-ideas.md +308 -0
- package/docs/reference/chrome.md +7 -1
- package/docs/reference/custom-elements.md +134 -39
- package/docs/reference/data-binding.md +405 -17
- package/docs/reference/page-files.md +101 -19
- package/docs/reference/server.md +24 -0
- package/docs/reference/widgets.md +118 -25
- package/docs/roadmap.md +17 -6
- package/docs/testing.md +21 -10
- package/package.json +2 -3
- package/skills/loadbare-app/SKILL.md +92 -30
- package/skills/loadbare-app/references/TECHREF-1.0.md +584 -111
- package/skills/loadbare-app/references/chrome.md +7 -1
- package/skills/loadbare-app/references/custom-elements.md +134 -39
- package/skills/loadbare-app/references/data-binding.md +405 -17
- package/skills/loadbare-app/references/page-files.md +101 -19
- package/skills/loadbare-app/references/server.md +24 -0
- package/skills/loadbare-app/references/widgets.md +118 -25
package/dist/hub/lb-apply.d.ts
CHANGED
|
@@ -9,11 +9,17 @@ export interface Control extends Element {
|
|
|
9
9
|
*/
|
|
10
10
|
export declare function isFormAssociated(el: Element): boolean;
|
|
11
11
|
/**
|
|
12
|
-
* A control: an `<input>`, `<select>` or `<textarea>`, or a
|
|
13
|
-
* custom element with a `value` property. Landing and
|
|
14
|
-
* same line, so a value read back is the one that landed
|
|
12
|
+
* A control: an `<input>`, `<select>` or `<textarea>`, a checkbox, or a
|
|
13
|
+
* form-associated custom element with a `value` property. Landing and
|
|
14
|
+
* gathering draw the same line, so a value read back is the one that landed
|
|
15
|
+
* there.
|
|
15
16
|
*/
|
|
16
17
|
export declare function isControl(el: Element): el is Control;
|
|
18
|
+
/**
|
|
19
|
+
* What a control gathers: a checkbox `"true"` or `"false"`, so unchecked
|
|
20
|
+
* still says so, and any other control its `value`.
|
|
21
|
+
*/
|
|
22
|
+
export declare function controlValue(el: Control): string;
|
|
17
23
|
/**
|
|
18
24
|
* Root if it matches, then every descendant in root's query that does.
|
|
19
25
|
* Gathering finds columns through here. It does not reach into an absent
|
|
@@ -21,6 +27,11 @@ export declare function isControl(el: Element): el is Control;
|
|
|
21
27
|
* showing.
|
|
22
28
|
*/
|
|
23
29
|
export declare function within(root: Element, selector: string): Element[];
|
|
30
|
+
/**
|
|
31
|
+
* Tick or clear an `lb-select` checkbox, and stamp the live row it selects
|
|
32
|
+
* to match.
|
|
33
|
+
*/
|
|
34
|
+
export declare function select(box: Element, on: boolean): void;
|
|
24
35
|
/**
|
|
25
36
|
* Fill from one row: every `lb-column` and `lb-show` in root's query.
|
|
26
37
|
*
|
|
@@ -30,7 +41,13 @@ export declare function within(root: Element, selector: string): Element[];
|
|
|
30
41
|
* ancestor, so its own `lb-column` reads from the row around it and is left
|
|
31
42
|
* alone here.
|
|
32
43
|
*/
|
|
33
|
-
export declare function applyRow(root: Element, row: Row, liveRow?: boolean): void;
|
|
44
|
+
export declare function applyRow(root: Element, row: Row, liveRow?: boolean, stop?: string): void;
|
|
45
|
+
/**
|
|
46
|
+
* A row naming every column root's query shows, each null: what landing it
|
|
47
|
+
* leaves is root as it stands with no row. Absent branches are counted, so a
|
|
48
|
+
* column only an absent element names is cleared too.
|
|
49
|
+
*/
|
|
50
|
+
export declare function blankRow(root: Element): Row;
|
|
34
51
|
/**
|
|
35
52
|
* The row template: the first `<template>` among the element's descendants,
|
|
36
53
|
* outside any nested `lb-query`. A template holding an absent branch is not a
|
|
@@ -38,32 +55,54 @@ export declare function applyRow(root: Element, row: Row, liveRow?: boolean): vo
|
|
|
38
55
|
* live row comes first in document order.
|
|
39
56
|
*/
|
|
40
57
|
export declare function templateIn(el: Element): HTMLTemplateElement | null;
|
|
58
|
+
/** How a list of rows lands: in what order, and whether a request asked. */
|
|
59
|
+
export interface RowsOptions {
|
|
60
|
+
/** The order to place rows by, as an order's text. */
|
|
61
|
+
order?: string;
|
|
62
|
+
/** The landing answers a request from this page. */
|
|
63
|
+
requested?: boolean;
|
|
64
|
+
}
|
|
41
65
|
/**
|
|
42
66
|
* Land rows through a row template.
|
|
43
67
|
*
|
|
44
|
-
* All rows decide membership
|
|
45
|
-
*
|
|
46
|
-
*
|
|
47
|
-
* position.
|
|
68
|
+
* All rows decide membership: a row whose key did not arrive leaves. A patch
|
|
69
|
+
* disturbs only what it names — a row it did not mention keeps its contents,
|
|
70
|
+
* and keeps its place unless a row the patch named now sorts around it.
|
|
48
71
|
*
|
|
49
|
-
*
|
|
50
|
-
*
|
|
51
|
-
*
|
|
52
|
-
*
|
|
72
|
+
* Every live row is placed by the order. With none, all rows show in the
|
|
73
|
+
* order they arrived, and a patch's new rows go last. A row moves only when
|
|
74
|
+
* the order put it somewhere else, so landing the same rows again moves
|
|
75
|
+
* nothing.
|
|
53
76
|
*/
|
|
54
|
-
export declare function applyRows(el: Element, template: HTMLTemplateElement, keyColumn: string, result: RowsResult): void;
|
|
77
|
+
export declare function applyRows(el: Element, template: HTMLTemplateElement, keyColumn: string, result: RowsResult, options?: RowsOptions): void;
|
|
78
|
+
/** The answer kept for a query, as all of its rows. */
|
|
79
|
+
export declare function keptAnswer(root: ParentNode, query: string): ResponseItem | undefined;
|
|
55
80
|
/**
|
|
56
81
|
* Drop what landing kept for a root. The hub calls it when it replaces the
|
|
57
82
|
* page, since another page's query of the same name is another query.
|
|
58
83
|
*/
|
|
59
84
|
export declare function forget(root: ParentNode): void;
|
|
85
|
+
/** How response items land. */
|
|
86
|
+
export interface LandOptions {
|
|
87
|
+
/**
|
|
88
|
+
* Queries that may have nowhere to land without a warning: the hub's own
|
|
89
|
+
* `lb-url` lands wherever a chrome or page names it, and nowhere otherwise.
|
|
90
|
+
*/
|
|
91
|
+
quiet?: readonly string[];
|
|
92
|
+
/** The user's order for a query, which replaces the server's. */
|
|
93
|
+
orderFor?: (query: string) => string | undefined;
|
|
94
|
+
/** The items answer a request from this page. */
|
|
95
|
+
requested?: boolean;
|
|
96
|
+
}
|
|
60
97
|
/**
|
|
61
98
|
* Land response items. Every answer arrives through here, and is kept for
|
|
62
99
|
* `root`, so that what arrives after it is filled from it — see forget().
|
|
63
|
-
*
|
|
64
|
-
* `quiet` names queries that may have nowhere to land without a warning: the
|
|
65
|
-
* hub's own `lb-url` lands wherever a chrome or page names it, and nowhere
|
|
66
|
-
* otherwise.
|
|
67
100
|
*/
|
|
68
|
-
export declare function applyResponse(root: ParentNode, items: ResponseItem[],
|
|
101
|
+
export declare function applyResponse(root: ParentNode, items: ResponseItem[], options?: LandOptions): void;
|
|
102
|
+
/**
|
|
103
|
+
* Land a query's kept answer again, as all of its rows: what the hub does
|
|
104
|
+
* when the user's order for it changes and the rows themselves have not.
|
|
105
|
+
* False when no answer is kept.
|
|
106
|
+
*/
|
|
107
|
+
export declare function reland(root: ParentNode, query: string): boolean;
|
|
69
108
|
//# sourceMappingURL=lb-apply.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lb-apply.d.ts","sourceRoot":"","sources":["../../hub/lb-apply.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"lb-apply.d.ts","sourceRoot":"","sources":["../../hub/lb-apply.ts"],"names":[],"mappings":"AAwEA,OAAO,EAOL,KAAK,YAAY,EACjB,KAAK,GAAG,EAER,KAAK,UAAU,EAChB,MAAM,qBAAqB,CAAC;AA6B7B,mEAAmE;AACnE,MAAM,WAAW,OAAQ,SAAQ,OAAO;IACtC,KAAK,EAAE,MAAM,CAAC;CACf;AA4BD;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,OAAO,GAAG,OAAO,CAGrD;AAED;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,EAAE,EAAE,OAAO,GAAG,EAAE,IAAI,OAAO,CAEpD;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,EAAE,EAAE,OAAO,GAAG,MAAM,CAEhD;AAkED;;;;;GAKG;AACH,wBAAgB,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,EAAE,CAMjE;AA0CD;;;GAGG;AACH,wBAAgB,MAAM,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,GAAG,IAAI,CAGtD;AAiCD;;;;;;;;GAQG;AACH,wBAAgB,QAAQ,CACtB,IAAI,EAAE,OAAO,EACb,GAAG,EAAE,GAAG,EACR,OAAO,UAAQ,EACf,IAAI,CAAC,EAAE,MAAM,GACZ,IAAI,CAuBN;AAED;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,OAAO,GAAG,GAAG,CAU3C;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,EAAE,EAAE,OAAO,GAAG,mBAAmB,GAAG,IAAI,CAKlE;AAshBD,4EAA4E;AAC5E,MAAM,WAAW,WAAW;IAC1B,sDAAsD;IACtD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,oDAAoD;IACpD,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,SAAS,CACvB,EAAE,EAAE,OAAO,EACX,QAAQ,EAAE,mBAAmB,EAC7B,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,UAAU,EAClB,OAAO,GAAE,WAAgB,GACxB,IAAI,CAkJN;AAmDD,uDAAuD;AACvD,wBAAgB,UAAU,CACxB,IAAI,EAAE,UAAU,EAChB,KAAK,EAAE,MAAM,GACZ,YAAY,GAAG,SAAS,CAE1B;AAOD;;;GAGG;AACH,wBAAgB,MAAM,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,CAE7C;AAyED,+BAA+B;AAC/B,MAAM,WAAW,WAAW;IAC1B;;;OAGG;IACH,KAAK,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC1B,iEAAiE;IACjE,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;IACjD,iDAAiD;IACjD,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAC3B,IAAI,EAAE,UAAU,EAChB,KAAK,EAAE,YAAY,EAAE,EACrB,OAAO,GAAE,WAAgB,GACxB,IAAI,CAuBN;AAED;;;;GAIG;AACH,wBAAgB,MAAM,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAK/D"}
|