@hotstaq/admin-panel 0.3.18 → 0.4.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 (43) hide show
  1. package/assets/css/freelight-panel.css +174 -0
  2. package/build/WebExport.d.ts.map +1 -1
  3. package/build/WebExport.js +7 -1
  4. package/build/WebExport.js.map +1 -1
  5. package/build/components/admin-add-panel.d.ts +62 -0
  6. package/build/components/admin-add-panel.d.ts.map +1 -0
  7. package/build/components/admin-add-panel.js +191 -0
  8. package/build/components/admin-add-panel.js.map +1 -0
  9. package/build/components/admin-card-table.d.ts +55 -0
  10. package/build/components/admin-card-table.d.ts.map +1 -0
  11. package/build/components/admin-card-table.js +149 -0
  12. package/build/components/admin-card-table.js.map +1 -0
  13. package/build/components/admin-detail-page.d.ts +68 -0
  14. package/build/components/admin-detail-page.d.ts.map +1 -0
  15. package/build/components/admin-detail-page.js +247 -0
  16. package/build/components/admin-detail-page.js.map +1 -0
  17. package/build/components/admin-disclaimer.d.ts +21 -0
  18. package/build/components/admin-disclaimer.d.ts.map +1 -0
  19. package/build/components/admin-disclaimer.js +37 -0
  20. package/build/components/admin-disclaimer.js.map +1 -0
  21. package/build/components/admin-eyebrow-heading.d.ts +23 -0
  22. package/build/components/admin-eyebrow-heading.d.ts.map +1 -0
  23. package/build/components/admin-eyebrow-heading.js +40 -0
  24. package/build/components/admin-eyebrow-heading.js.map +1 -0
  25. package/build/components/admin-form-field.d.ts +69 -0
  26. package/build/components/admin-form-field.d.ts.map +1 -0
  27. package/build/components/admin-form-field.js +117 -0
  28. package/build/components/admin-form-field.js.map +1 -0
  29. package/build/index.d.ts +7 -1
  30. package/build/index.d.ts.map +1 -1
  31. package/build/index.js +16 -1
  32. package/build/index.js.map +1 -1
  33. package/build/tsconfig.tsbuildinfo +1 -1
  34. package/build-web/AdminPanelComponents.js +2 -2
  35. package/package.json +1 -1
  36. package/src/WebExport.ts +7 -1
  37. package/src/components/admin-add-panel.ts +232 -0
  38. package/src/components/admin-card-table.ts +183 -0
  39. package/src/components/admin-detail-page.ts +270 -0
  40. package/src/components/admin-disclaimer.ts +43 -0
  41. package/src/components/admin-eyebrow-heading.ts +50 -0
  42. package/src/components/admin-form-field.ts +166 -0
  43. package/src/index.ts +18 -2
@@ -0,0 +1,69 @@
1
+ import { HotStaq, HotAPI, HotComponent, HotComponentOutput } from "hotstaq";
2
+ /**
3
+ * A labeled form field. Wraps a single <input>, <select>, or <textarea>
4
+ * with a proper <label>, an optional required-marker, and helper text.
5
+ *
6
+ * Replaces the boilerplate of hand-rolling label + input + small help
7
+ * div across every Add/Edit form. Inspired by the Freelight pages
8
+ * (volunteers.hott, yard-signs.hott, members.hott) where every field
9
+ * already follows this pattern.
10
+ *
11
+ * Usage:
12
+ * <admin-form-field hot-field="name" hot-label="First name" hot-required="1"
13
+ * hot-placeholder="e.g. Jane" hot-autocomplete="given-name">
14
+ * </admin-form-field>
15
+ *
16
+ * <admin-form-field hot-field="status" hot-label="Status" hot-control="select"
17
+ * hot-options="active,suspended,invited"></admin-form-field>
18
+ *
19
+ * <admin-form-field hot-field="description" hot-label="Description"
20
+ * hot-control="textarea" hot-rows="3"
21
+ * hot-help="Shown on the public page."></admin-form-field>
22
+ */
23
+ export declare class AdminFormField extends HotComponent {
24
+ /** The field name (used for hot-field and the label's `for` attribute). */
25
+ field: string;
26
+ /** The visible label text. */
27
+ label: string;
28
+ /** "1" / "true" to render the red required marker after the label. */
29
+ required: string;
30
+ /** input type when control is "input" (text, email, tel, number, date, etc). */
31
+ type: string;
32
+ /** Control kind: "input" (default) | "select" | "textarea" | "checkbox". */
33
+ control: string;
34
+ /** Placeholder text (ignored for type=date / control=select / checkbox). */
35
+ placeholder: string;
36
+ /** Autocomplete attribute value (given-name, email, tel, street-address, etc). */
37
+ autocomplete: string;
38
+ /** Small helper text shown below the input. */
39
+ help: string;
40
+ /** Comma-separated options when control="select". Each item can be "value:label" or just "value". */
41
+ options: string;
42
+ /** Rows for control="textarea". */
43
+ rows: string;
44
+ /** Minimum value for type=number. */
45
+ min: string;
46
+ /** Step for type=number. */
47
+ step: string;
48
+ /** Max length for input/textarea. */
49
+ maxlength: string;
50
+ /** Bootstrap column class for grid use, e.g. "col-md-6". Empty => no wrapper col. */
51
+ col: string;
52
+ /** Size: "sm" (default in the new theme) | "md". */
53
+ size: string;
54
+ /** Extra CSS classes for the input element itself. */
55
+ css_class: string;
56
+ constructor(copy: HotComponent | HotStaq, api: HotAPI);
57
+ /**
58
+ * Field renders inside the surrounding flow — no modal-body-relocation
59
+ * trick like admin-text does. The new components are designed for
60
+ * detail pages and inline add panels, not modals.
61
+ */
62
+ onPostPlace(parentHtmlElement: HTMLElement, htmlElement: HTMLElement): HTMLElement;
63
+ private renderInput;
64
+ private renderSelect;
65
+ private renderTextarea;
66
+ private renderCheckbox;
67
+ output(): string | HotComponentOutput[];
68
+ }
69
+ //# sourceMappingURL=admin-form-field.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin-form-field.d.ts","sourceRoot":"","sources":["../../src/components/admin-form-field.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAO,MAAM,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAEjF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,qBAAa,cAAe,SAAQ,YAAY;IAE/C,2EAA2E;IAC3E,KAAK,EAAE,MAAM,CAAC;IACd,8BAA8B;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,sEAAsE;IACtE,QAAQ,EAAE,MAAM,CAAC;IACjB,gFAAgF;IAChF,IAAI,EAAE,MAAM,CAAC;IACb,4EAA4E;IAC5E,OAAO,EAAE,MAAM,CAAC;IAChB,4EAA4E;IAC5E,WAAW,EAAE,MAAM,CAAC;IACpB,kFAAkF;IAClF,YAAY,EAAE,MAAM,CAAC;IACrB,+CAA+C;IAC/C,IAAI,EAAE,MAAM,CAAC;IACb,qGAAqG;IACrG,OAAO,EAAE,MAAM,CAAC;IAChB,mCAAmC;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,qCAAqC;IACrC,GAAG,EAAE,MAAM,CAAC;IACZ,4BAA4B;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,qCAAqC;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,qFAAqF;IACrF,GAAG,EAAE,MAAM,CAAC;IACZ,oDAAoD;IACpD,IAAI,EAAE,MAAM,CAAC;IACb,sDAAsD;IACtD,SAAS,EAAE,MAAM,CAAC;gBAEL,IAAI,EAAE,YAAY,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM;IAuBtD;;;;OAIG;IACH,WAAW,CAAE,iBAAiB,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,GAAG,WAAW;IAKnF,OAAO,CAAC,WAAW;IAWnB,OAAO,CAAC,YAAY;IAcpB,OAAO,CAAC,cAAc;IAOtB,OAAO,CAAC,cAAc;IAKtB,MAAM,IAAK,MAAM,GAAG,kBAAkB,EAAE;CAqCxC"}
@@ -0,0 +1,117 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AdminFormField = void 0;
4
+ const hotstaq_1 = require("hotstaq");
5
+ /**
6
+ * A labeled form field. Wraps a single <input>, <select>, or <textarea>
7
+ * with a proper <label>, an optional required-marker, and helper text.
8
+ *
9
+ * Replaces the boilerplate of hand-rolling label + input + small help
10
+ * div across every Add/Edit form. Inspired by the Freelight pages
11
+ * (volunteers.hott, yard-signs.hott, members.hott) where every field
12
+ * already follows this pattern.
13
+ *
14
+ * Usage:
15
+ * <admin-form-field hot-field="name" hot-label="First name" hot-required="1"
16
+ * hot-placeholder="e.g. Jane" hot-autocomplete="given-name">
17
+ * </admin-form-field>
18
+ *
19
+ * <admin-form-field hot-field="status" hot-label="Status" hot-control="select"
20
+ * hot-options="active,suspended,invited"></admin-form-field>
21
+ *
22
+ * <admin-form-field hot-field="description" hot-label="Description"
23
+ * hot-control="textarea" hot-rows="3"
24
+ * hot-help="Shown on the public page."></admin-form-field>
25
+ */
26
+ class AdminFormField extends hotstaq_1.HotComponent {
27
+ constructor(copy, api) {
28
+ super(copy, api);
29
+ this.tag = "admin-form-field";
30
+ this.field = "";
31
+ this.label = "";
32
+ this.required = "0";
33
+ this.type = "text";
34
+ this.control = "input";
35
+ this.placeholder = "";
36
+ this.autocomplete = "";
37
+ this.help = "";
38
+ this.options = "";
39
+ this.rows = "3";
40
+ this.min = "";
41
+ this.step = "";
42
+ this.maxlength = "";
43
+ this.col = "";
44
+ this.size = "sm";
45
+ this.css_class = "";
46
+ }
47
+ /**
48
+ * Field renders inside the surrounding flow — no modal-body-relocation
49
+ * trick like admin-text does. The new components are designed for
50
+ * detail pages and inline add panels, not modals.
51
+ */
52
+ onPostPlace(parentHtmlElement, htmlElement) {
53
+ return (null);
54
+ }
55
+ renderInput(id, sizeClass, classes) {
56
+ const minAttr = this.min ? ` min="${this.min}"` : "";
57
+ const stepAttr = this.step ? ` step="${this.step}"` : "";
58
+ const maxAttr = this.maxlength ? ` maxlength="${this.maxlength}"` : "";
59
+ const acAttr = this.autocomplete ? ` autocomplete="${this.autocomplete}"` : "";
60
+ const phAttr = (this.type === "date" || this.placeholder === "")
61
+ ? "" : ` placeholder="${this.placeholder.replace(/"/g, "&quot;")}"`;
62
+ return `<input id="${id}" hot-field="${this.field}" type="${this.type}" class="form-control${sizeClass}${classes}"${minAttr}${stepAttr}${maxAttr}${acAttr}${phAttr} />`;
63
+ }
64
+ renderSelect(id, sizeClass, classes) {
65
+ const opts = (this.options || "").split(",").map((raw) => {
66
+ const part = raw.trim();
67
+ if (part === "")
68
+ return "";
69
+ const colon = part.indexOf(":");
70
+ const val = colon >= 0 ? part.slice(0, colon) : part;
71
+ const lbl = colon >= 0 ? part.slice(colon + 1) : part;
72
+ return `<option value="${val.replace(/"/g, "&quot;")}">${lbl}</option>`;
73
+ }).join("");
74
+ return `<select id="${id}" hot-field="${this.field}" class="form-select${sizeClass}${classes}">${opts}</select>`;
75
+ }
76
+ renderTextarea(id, sizeClass, classes) {
77
+ const phAttr = this.placeholder ? ` placeholder="${this.placeholder.replace(/"/g, "&quot;")}"` : "";
78
+ const maxAttr = this.maxlength ? ` maxlength="${this.maxlength}"` : "";
79
+ return `<textarea id="${id}" hot-field="${this.field}" rows="${this.rows}" class="form-control${sizeClass}${classes}"${maxAttr}${phAttr}></textarea>`;
80
+ }
81
+ renderCheckbox(id) {
82
+ return `<div class="form-check"><input id="${id}" hot-field="${this.field}" type="checkbox" class="form-check-input" /><label for="${id}" class="form-check-label">${this.label}</label></div>`;
83
+ }
84
+ output() {
85
+ if (this.field === "")
86
+ throw new Error("admin-form-field: hot-field is required");
87
+ const id = `ff-${this.field}-${Math.random().toString(36).slice(2, 7)}`;
88
+ const sizeClass = this.size === "sm" ? " form-control-sm" : "";
89
+ const classes = this.css_class ? " " + this.css_class : "";
90
+ // Checkbox is a special case — the label sits next to the box,
91
+ // not above. Skip the rest of the wrapping.
92
+ if (this.control === "checkbox") {
93
+ const inner = this.renderCheckbox(id);
94
+ return (this.col ? `<div class="${this.col}">${inner}</div>` : inner);
95
+ }
96
+ let control = "";
97
+ if (this.control === "select")
98
+ control = this.renderSelect(id, sizeClass, classes);
99
+ else if (this.control === "textarea")
100
+ control = this.renderTextarea(id, sizeClass, classes);
101
+ else
102
+ control = this.renderInput(id, sizeClass, classes);
103
+ const requiredMarker = (this.required === "1" || this.required === "true")
104
+ ? ` <span class="text-danger" aria-label="required">*</span>`
105
+ : "";
106
+ const helpHtml = this.help
107
+ ? `<div class="form-text small">${this.help}</div>`
108
+ : "";
109
+ const fieldHtml = `
110
+ <label for="${id}" class="form-label small mb-1">${this.label}${requiredMarker}</label>
111
+ ${control}
112
+ ${helpHtml}`;
113
+ return (this.col ? `<div class="${this.col}">${fieldHtml}</div>` : `<div>${fieldHtml}</div>`);
114
+ }
115
+ }
116
+ exports.AdminFormField = AdminFormField;
117
+ //# sourceMappingURL=admin-form-field.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin-form-field.js","sourceRoot":"","sources":["../../src/components/admin-form-field.ts"],"names":[],"mappings":"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"}
package/build/index.d.ts CHANGED
@@ -6,5 +6,11 @@ import { AdminTable } from "./components/admin-table";
6
6
  import { AdminTableField } from "./components/admin-table-field";
7
7
  import { AdminTableRow } from "./components/admin-table-row";
8
8
  import { AdminText } from "./components/admin-text";
9
- export { AdminButton, AdminDropdown, AdminDashboard, AdminEdit, AdminTable, AdminTableField, AdminTableRow, AdminText };
9
+ import { AdminFormField } from "./components/admin-form-field";
10
+ import { AdminAddPanel } from "./components/admin-add-panel";
11
+ import { AdminCardTable } from "./components/admin-card-table";
12
+ import { AdminDetailPage } from "./components/admin-detail-page";
13
+ import { AdminDisclaimer } from "./components/admin-disclaimer";
14
+ import { AdminEyebrowHeading } from "./components/admin-eyebrow-heading";
15
+ export { AdminButton, AdminDropdown, AdminDashboard, AdminEdit, AdminTable, AdminTableField, AdminTableRow, AdminText, AdminFormField, AdminAddPanel, AdminCardTable, AdminDetailPage, AdminDisclaimer, AdminEyebrowHeading };
10
16
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAEpD,OAAO,EACL,WAAW,EACX,aAAa,EACb,cAAc,EACd,SAAS,EACT,UAAU,EACV,eAAe,EACf,aAAa,EACb,SAAS,EACT,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAKpD,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AAEzE,OAAO,EACL,WAAW,EACX,aAAa,EACb,cAAc,EACd,SAAS,EACT,UAAU,EACV,eAAe,EACf,aAAa,EACb,SAAS,EACT,cAAc,EACd,aAAa,EACb,cAAc,EACd,eAAe,EACf,eAAe,EACf,mBAAmB,EACnB,CAAC"}
package/build/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.AdminText = exports.AdminTableRow = exports.AdminTableField = exports.AdminTable = exports.AdminEdit = exports.AdminDashboard = exports.AdminDropdown = exports.AdminButton = void 0;
3
+ exports.AdminEyebrowHeading = exports.AdminDisclaimer = exports.AdminDetailPage = exports.AdminCardTable = exports.AdminAddPanel = exports.AdminFormField = exports.AdminText = exports.AdminTableRow = exports.AdminTableField = exports.AdminTable = exports.AdminEdit = exports.AdminDashboard = exports.AdminDropdown = exports.AdminButton = void 0;
4
4
  const admin_button_1 = require("./components/admin-button");
5
5
  Object.defineProperty(exports, "AdminButton", { enumerable: true, get: function () { return admin_button_1.AdminButton; } });
6
6
  const admin_dropdown_1 = require("./components/admin-dropdown");
@@ -17,4 +17,19 @@ const admin_table_row_1 = require("./components/admin-table-row");
17
17
  Object.defineProperty(exports, "AdminTableRow", { enumerable: true, get: function () { return admin_table_row_1.AdminTableRow; } });
18
18
  const admin_text_1 = require("./components/admin-text");
19
19
  Object.defineProperty(exports, "AdminText", { enumerable: true, get: function () { return admin_text_1.AdminText; } });
20
+ // admin-panel 0.4.0 — Freelight-style components. Backwards compatible
21
+ // with the existing modal/table set above; pages opt in by switching
22
+ // their .hott templates to use the new tags.
23
+ const admin_form_field_1 = require("./components/admin-form-field");
24
+ Object.defineProperty(exports, "AdminFormField", { enumerable: true, get: function () { return admin_form_field_1.AdminFormField; } });
25
+ const admin_add_panel_1 = require("./components/admin-add-panel");
26
+ Object.defineProperty(exports, "AdminAddPanel", { enumerable: true, get: function () { return admin_add_panel_1.AdminAddPanel; } });
27
+ const admin_card_table_1 = require("./components/admin-card-table");
28
+ Object.defineProperty(exports, "AdminCardTable", { enumerable: true, get: function () { return admin_card_table_1.AdminCardTable; } });
29
+ const admin_detail_page_1 = require("./components/admin-detail-page");
30
+ Object.defineProperty(exports, "AdminDetailPage", { enumerable: true, get: function () { return admin_detail_page_1.AdminDetailPage; } });
31
+ const admin_disclaimer_1 = require("./components/admin-disclaimer");
32
+ Object.defineProperty(exports, "AdminDisclaimer", { enumerable: true, get: function () { return admin_disclaimer_1.AdminDisclaimer; } });
33
+ const admin_eyebrow_heading_1 = require("./components/admin-eyebrow-heading");
34
+ Object.defineProperty(exports, "AdminEyebrowHeading", { enumerable: true, get: function () { return admin_eyebrow_heading_1.AdminEyebrowHeading; } });
20
35
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,4DAAwD;AAUtD,4FAVO,0BAAW,OAUP;AATb,gEAA4D;AAU1D,8FAVO,8BAAa,OAUP;AATf,kEAA8D;AAU5D,+FAVO,gCAAc,OAUP;AAThB,wDAAoD;AAUlD,0FAVO,sBAAS,OAUP;AATX,0DAAsD;AAUpD,2FAVO,wBAAU,OAUP;AATZ,sEAAiE;AAU/D,gGAVO,mCAAe,OAUP;AATjB,kEAA6D;AAU3D,8FAVO,+BAAa,OAUP;AATf,wDAAoD;AAUlD,0FAVO,sBAAS,OAUP"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,4DAAwD;AAoBtD,4FApBO,0BAAW,OAoBP;AAnBb,gEAA4D;AAoB1D,8FApBO,8BAAa,OAoBP;AAnBf,kEAA8D;AAoB5D,+FApBO,gCAAc,OAoBP;AAnBhB,wDAAoD;AAoBlD,0FApBO,sBAAS,OAoBP;AAnBX,0DAAsD;AAoBpD,2FApBO,wBAAU,OAoBP;AAnBZ,sEAAiE;AAoB/D,gGApBO,mCAAe,OAoBP;AAnBjB,kEAA6D;AAoB3D,8FApBO,+BAAa,OAoBP;AAnBf,wDAAoD;AAoBlD,0FApBO,sBAAS,OAoBP;AAlBX,uEAAuE;AACvE,qEAAqE;AACrE,6CAA6C;AAC7C,oEAA+D;AAgB7D,+FAhBO,iCAAc,OAgBP;AAfhB,kEAA6D;AAgB3D,8FAhBO,+BAAa,OAgBP;AAff,oEAA+D;AAgB7D,+FAhBO,iCAAc,OAgBP;AAfhB,sEAAiE;AAgB/D,gGAhBO,mCAAe,OAgBP;AAfjB,oEAAgE;AAgB9D,gGAhBO,kCAAe,OAgBP;AAfjB,8EAAyE;AAgBvE,oGAhBO,2CAAmB,OAgBP"}
@@ -1 +1 @@
1
- {"root":["../src/AppAPI.ts","../src/WebExport.ts","../src/cli.ts","../src/index.ts","../src/components/admin-button.ts","../src/components/admin-checkbox.ts","../src/components/admin-dashboard.ts","../src/components/admin-dropdown.ts","../src/components/admin-edit.ts","../src/components/admin-table-field.ts","../src/components/admin-table-row.ts","../src/components/admin-table.ts","../src/components/admin-text.ts"],"version":"5.8.2"}
1
+ {"root":["../src/AppAPI.ts","../src/WebExport.ts","../src/cli.ts","../src/index.ts","../src/components/admin-add-panel.ts","../src/components/admin-button.ts","../src/components/admin-card-table.ts","../src/components/admin-checkbox.ts","../src/components/admin-dashboard.ts","../src/components/admin-detail-page.ts","../src/components/admin-disclaimer.ts","../src/components/admin-dropdown.ts","../src/components/admin-edit.ts","../src/components/admin-eyebrow-heading.ts","../src/components/admin-form-field.ts","../src/components/admin-table-field.ts","../src/components/admin-table-row.ts","../src/components/admin-table.ts","../src/components/admin-text.ts"],"version":"5.8.2"}