@pilotiq/pilotiq 0.1.0 → 0.3.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 (108) hide show
  1. package/.turbo/turbo-build.log +1 -1
  2. package/CHANGELOG.md +14 -0
  3. package/CLAUDE.md +6 -5
  4. package/dist/Pilotiq.d.ts +20 -1
  5. package/dist/Pilotiq.d.ts.map +1 -1
  6. package/dist/Pilotiq.js.map +1 -1
  7. package/dist/actions/Action.d.ts +25 -0
  8. package/dist/actions/Action.d.ts.map +1 -1
  9. package/dist/actions/Action.js +25 -0
  10. package/dist/actions/Action.js.map +1 -1
  11. package/dist/elements/dispatchForm.d.ts +0 -14
  12. package/dist/elements/dispatchForm.d.ts.map +1 -1
  13. package/dist/elements/dispatchForm.js +28 -0
  14. package/dist/elements/dispatchForm.js.map +1 -1
  15. package/dist/fields/BuilderField.d.ts +27 -1
  16. package/dist/fields/BuilderField.d.ts.map +1 -1
  17. package/dist/fields/BuilderField.js +36 -1
  18. package/dist/fields/BuilderField.js.map +1 -1
  19. package/dist/fields/FileUploadField.d.ts +65 -0
  20. package/dist/fields/FileUploadField.d.ts.map +1 -1
  21. package/dist/fields/FileUploadField.js +72 -0
  22. package/dist/fields/FileUploadField.js.map +1 -1
  23. package/dist/fields/RepeaterField.d.ts +34 -1
  24. package/dist/fields/RepeaterField.d.ts.map +1 -1
  25. package/dist/fields/RepeaterField.js +43 -1
  26. package/dist/fields/RepeaterField.js.map +1 -1
  27. package/dist/fields/RowButton.d.ts +9 -2
  28. package/dist/fields/RowButton.d.ts.map +1 -1
  29. package/dist/fields/TextField.d.ts +106 -0
  30. package/dist/fields/TextField.d.ts.map +1 -1
  31. package/dist/fields/TextField.js +115 -0
  32. package/dist/fields/TextField.js.map +1 -1
  33. package/dist/filters/queryBuilder/Constraint.d.ts +1 -1
  34. package/dist/filters/queryBuilder/Constraint.d.ts.map +1 -1
  35. package/dist/filters/queryBuilder/TextConstraint.d.ts.map +1 -1
  36. package/dist/filters/queryBuilder/TextConstraint.js +2 -3
  37. package/dist/filters/queryBuilder/TextConstraint.js.map +1 -1
  38. package/dist/orm/modelDefaults.d.ts +1 -1
  39. package/dist/orm/modelDefaults.d.ts.map +1 -1
  40. package/dist/react/SchemaRenderer.d.ts.map +1 -1
  41. package/dist/react/SchemaRenderer.js +108 -7
  42. package/dist/react/SchemaRenderer.js.map +1 -1
  43. package/dist/react/fields/BuilderInput.d.ts.map +1 -1
  44. package/dist/react/fields/BuilderInput.js +32 -3
  45. package/dist/react/fields/BuilderInput.js.map +1 -1
  46. package/dist/react/fields/FieldShell.d.ts +9 -1
  47. package/dist/react/fields/FieldShell.d.ts.map +1 -1
  48. package/dist/react/fields/FieldShell.js +4 -3
  49. package/dist/react/fields/FieldShell.js.map +1 -1
  50. package/dist/react/fields/FileUploadInput.d.ts +17 -4
  51. package/dist/react/fields/FileUploadInput.d.ts.map +1 -1
  52. package/dist/react/fields/FileUploadInput.js +204 -25
  53. package/dist/react/fields/FileUploadInput.js.map +1 -1
  54. package/dist/react/fields/RepeaterInput.d.ts.map +1 -1
  55. package/dist/react/fields/RepeaterInput.js +33 -2
  56. package/dist/react/fields/RepeaterInput.js.map +1 -1
  57. package/dist/react/fields/TextLikeInput.d.ts +5 -1
  58. package/dist/react/fields/TextLikeInput.d.ts.map +1 -1
  59. package/dist/react/fields/TextLikeInput.js +17 -2
  60. package/dist/react/fields/TextLikeInput.js.map +1 -1
  61. package/dist/react/fields/rowChromeButton.d.ts +24 -5
  62. package/dist/react/fields/rowChromeButton.d.ts.map +1 -1
  63. package/dist/react/fields/rowChromeButton.js +51 -8
  64. package/dist/react/fields/rowChromeButton.js.map +1 -1
  65. package/dist/react/fields/textInputControls.d.ts +47 -0
  66. package/dist/react/fields/textInputControls.d.ts.map +1 -0
  67. package/dist/react/fields/textInputControls.js +134 -0
  68. package/dist/react/fields/textInputControls.js.map +1 -0
  69. package/dist/routes.d.ts.map +1 -1
  70. package/dist/routes.js +32 -1
  71. package/dist/routes.js.map +1 -1
  72. package/dist/schema/Alert.d.ts +58 -0
  73. package/dist/schema/Alert.d.ts.map +1 -1
  74. package/dist/schema/Alert.js +68 -1
  75. package/dist/schema/Alert.js.map +1 -1
  76. package/dist/schema/resolveSchema.d.ts.map +1 -1
  77. package/dist/schema/resolveSchema.js +32 -0
  78. package/dist/schema/resolveSchema.js.map +1 -1
  79. package/package.json +12 -11
  80. package/src/Pilotiq.test.ts +78 -0
  81. package/src/Pilotiq.ts +20 -1
  82. package/src/actions/Action.test.ts +47 -0
  83. package/src/actions/Action.ts +35 -0
  84. package/src/elements/dispatchForm.ts +28 -0
  85. package/src/fields/BuilderField.ts +38 -1
  86. package/src/fields/FileUploadField.test.ts +46 -0
  87. package/src/fields/FileUploadField.ts +90 -2
  88. package/src/fields/RepeaterField.ts +45 -1
  89. package/src/fields/RowButton.test.ts +70 -0
  90. package/src/fields/RowButton.ts +11 -1
  91. package/src/fields/TextField.test.ts +168 -0
  92. package/src/fields/TextField.ts +141 -1
  93. package/src/filters/QueryBuilderFilter.test.ts +18 -0
  94. package/src/filters/queryBuilder/Constraint.ts +1 -1
  95. package/src/filters/queryBuilder/TextConstraint.ts +5 -6
  96. package/src/orm/modelDefaults.ts +1 -1
  97. package/src/react/SchemaRenderer.tsx +222 -14
  98. package/src/react/fields/BuilderInput.tsx +37 -0
  99. package/src/react/fields/FieldShell.tsx +13 -2
  100. package/src/react/fields/FileUploadInput.tsx +516 -85
  101. package/src/react/fields/RepeaterInput.tsx +39 -0
  102. package/src/react/fields/TextLikeInput.tsx +22 -2
  103. package/src/react/fields/rowChromeButton.tsx +102 -6
  104. package/src/react/fields/textInputControls.tsx +238 -0
  105. package/src/routes.ts +33 -1
  106. package/src/schema/Alert.test.ts +46 -0
  107. package/src/schema/Alert.ts +90 -8
  108. package/src/schema/resolveSchema.ts +32 -0
@@ -1,10 +1,22 @@
1
1
  import { Element } from './Element.js';
2
2
  import type { Action } from '../actions/Action.js';
3
+ import type { IconColor } from './Icon.js';
3
4
  export type AlertType = 'info' | 'warning' | 'success' | 'danger';
5
+ /**
6
+ * Alignment for the footer-actions row inside an `Alert` (Filament v5
7
+ * parity). `'start'` aligns the buttons to the leading edge (LTR =
8
+ * left), `'center'` to the middle, `'end'` to the trailing edge (LTR =
9
+ * right). Defaults to `'start'`.
10
+ */
11
+ export type AlertActionsAlignment = 'start' | 'center' | 'end';
4
12
  export declare class Alert extends Element {
5
13
  private content;
6
14
  private _alertType;
7
15
  private _title?;
16
+ private _dismissible;
17
+ private _persistKey?;
18
+ private _iconColor?;
19
+ private _actionsAlignment;
8
20
  private constructor();
9
21
  static make(content: string): Alert;
10
22
  alertType(t: AlertType): this;
@@ -22,8 +34,54 @@ export declare class Alert extends Element {
22
34
  * (visibility / authorize) fires unchanged.
23
35
  */
24
36
  actions(actions: Action[]): this;
37
+ /** Filament v5 parity alias for `actions([...])`. Identical semantics. */
38
+ controls(actions: Action[]): this;
39
+ /**
40
+ * Filament v5 parity — variadic `controlActions(a, b, c, …)` matches
41
+ * the spread shape `controlActions(Action::make(...), Action::make(...))`.
42
+ */
43
+ controlActions(...actions: Action[]): this;
44
+ /**
45
+ * Toggle the close (`×`) button rendered in the alert's top-right
46
+ * corner. Off by default (matches today's behaviour). Dismissal is
47
+ * per-mount (component-local state) unless paired with
48
+ * `persistDismissal(key)`, which writes to `localStorage` so the
49
+ * alert stays hidden across reloads.
50
+ *
51
+ * @example
52
+ * Alert.make('Heads up — billing downgrades on Friday.')
53
+ * .warning()
54
+ * .dismissible()
55
+ * .persistDismissal('billing-downgrade-2026-q2')
56
+ */
57
+ dismissible(value?: boolean): this;
58
+ /**
59
+ * Persist dismissal under a stable localStorage key. Auto-arms
60
+ * `dismissible(true)` so the close button shows up. The key is
61
+ * stored under `pilotiq.alert.<key>` to namespace from other
62
+ * pilotiq localStorage entries; users only see the leaf segment.
63
+ */
64
+ persistDismissal(key: string): this;
65
+ /**
66
+ * Override the icon color independent of the alert type. By default
67
+ * the renderer picks an icon hue matching `alertType`
68
+ * (info/warning/success/danger); call this to force a different one
69
+ * — e.g. a `warning`-typed alert with a `'destructive'` icon when
70
+ * the message escalates partway through a flow.
71
+ */
72
+ iconColor(color: IconColor): this;
73
+ /**
74
+ * Align the footer actions row. Defaults to `'start'` (LTR-left).
75
+ * Use `'end'` for "primary action sits opposite the close button"
76
+ * layouts; `'center'` for short single-button alerts.
77
+ */
78
+ footerActionsAlignment(alignment: AlertActionsAlignment): this;
25
79
  getType(): string;
26
80
  toMeta(): {
81
+ actionsAlignment?: "center" | "end";
82
+ iconColor?: IconColor;
83
+ persistDismissal?: string;
84
+ dismissible?: boolean;
27
85
  title?: string;
28
86
  type: "alert";
29
87
  content: string;
@@ -1 +1 @@
1
- {"version":3,"file":"Alert.d.ts","sourceRoot":"","sources":["../../src/schema/Alert.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAElD,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,CAAA;AAEjE,qBAAa,KAAM,SAAQ,OAAO;IAIZ,OAAO,CAAC,OAAO;IAHnC,OAAO,CAAC,UAAU,CAAoB;IACtC,OAAO,CAAC,MAAM,CAAC,CAAQ;IAEvB,OAAO;IAIP,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,KAAK;IAInC,SAAS,CAAC,CAAC,EAAE,SAAS,GAAG,IAAI;IAC7B,KAAK,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI;IAEtB,IAAI,IAAI,IAAI;IACZ,OAAO,IAAI,IAAI;IACf,OAAO,IAAI,IAAI;IACf,MAAM,IAAI,IAAI;IAEd;;;;;;;OAOG;IACH,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI;IAKhC,OAAO,IAAI,MAAM;IAEjB,MAAM;;;;;;CAQP"}
1
+ {"version":3,"file":"Alert.d.ts","sourceRoot":"","sources":["../../src/schema/Alert.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAClD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AAE1C,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,CAAA;AAEjE;;;;;GAKG;AACH,MAAM,MAAM,qBAAqB,GAAG,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAA;AAE9D,qBAAa,KAAM,SAAQ,OAAO;IAQZ,OAAO,CAAC,OAAO;IAPnC,OAAO,CAAC,UAAU,CAA2B;IAC7C,OAAO,CAAC,MAAM,CAAC,CAAkB;IACjC,OAAO,CAAC,YAAY,CAAc;IAClC,OAAO,CAAC,WAAW,CAAC,CAAa;IACjC,OAAO,CAAC,UAAU,CAAC,CAAiB;IACpC,OAAO,CAAC,iBAAiB,CAAiC;IAE1D,OAAO;IAIP,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,KAAK;IAInC,SAAS,CAAC,CAAC,EAAE,SAAS,GAAG,IAAI;IAC7B,KAAK,CAAC,CAAC,EAAE,MAAM,GAAU,IAAI;IAE7B,IAAI,IAAO,IAAI;IACf,OAAO,IAAI,IAAI;IACf,OAAO,IAAI,IAAI;IACf,MAAM,IAAK,IAAI;IAEf;;;;;;;OAOG;IACH,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI;IAKhC,0EAA0E;IAC1E,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI;IAIjC;;;OAGG;IACH,cAAc,CAAC,GAAG,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI;IAI1C;;;;;;;;;;;;OAYG;IACH,WAAW,CAAC,KAAK,GAAE,OAAc,GAAG,IAAI;IAKxC;;;;;OAKG;IACH,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAMnC;;;;;;OAMG;IACH,SAAS,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAKjC;;;;OAIG;IACH,sBAAsB,CAAC,SAAS,EAAE,qBAAqB,GAAG,IAAI;IAK9D,OAAO,IAAI,MAAM;IAEjB,MAAM;;;;;;;;;;CAYP"}
@@ -3,6 +3,10 @@ export class Alert extends Element {
3
3
  content;
4
4
  _alertType = 'info';
5
5
  _title;
6
+ _dismissible = false;
7
+ _persistKey;
8
+ _iconColor;
9
+ _actionsAlignment = 'start';
6
10
  constructor(content) {
7
11
  super();
8
12
  this.content = content;
@@ -28,13 +32,76 @@ export class Alert extends Element {
28
32
  this._children = actions;
29
33
  return this;
30
34
  }
35
+ /** Filament v5 parity alias for `actions([...])`. Identical semantics. */
36
+ controls(actions) {
37
+ return this.actions(actions);
38
+ }
39
+ /**
40
+ * Filament v5 parity — variadic `controlActions(a, b, c, …)` matches
41
+ * the spread shape `controlActions(Action::make(...), Action::make(...))`.
42
+ */
43
+ controlActions(...actions) {
44
+ return this.actions(actions);
45
+ }
46
+ /**
47
+ * Toggle the close (`×`) button rendered in the alert's top-right
48
+ * corner. Off by default (matches today's behaviour). Dismissal is
49
+ * per-mount (component-local state) unless paired with
50
+ * `persistDismissal(key)`, which writes to `localStorage` so the
51
+ * alert stays hidden across reloads.
52
+ *
53
+ * @example
54
+ * Alert.make('Heads up — billing downgrades on Friday.')
55
+ * .warning()
56
+ * .dismissible()
57
+ * .persistDismissal('billing-downgrade-2026-q2')
58
+ */
59
+ dismissible(value = true) {
60
+ this._dismissible = value;
61
+ return this;
62
+ }
63
+ /**
64
+ * Persist dismissal under a stable localStorage key. Auto-arms
65
+ * `dismissible(true)` so the close button shows up. The key is
66
+ * stored under `pilotiq.alert.<key>` to namespace from other
67
+ * pilotiq localStorage entries; users only see the leaf segment.
68
+ */
69
+ persistDismissal(key) {
70
+ this._persistKey = key;
71
+ this._dismissible = true;
72
+ return this;
73
+ }
74
+ /**
75
+ * Override the icon color independent of the alert type. By default
76
+ * the renderer picks an icon hue matching `alertType`
77
+ * (info/warning/success/danger); call this to force a different one
78
+ * — e.g. a `warning`-typed alert with a `'destructive'` icon when
79
+ * the message escalates partway through a flow.
80
+ */
81
+ iconColor(color) {
82
+ this._iconColor = color;
83
+ return this;
84
+ }
85
+ /**
86
+ * Align the footer actions row. Defaults to `'start'` (LTR-left).
87
+ * Use `'end'` for "primary action sits opposite the close button"
88
+ * layouts; `'center'` for short single-button alerts.
89
+ */
90
+ footerActionsAlignment(alignment) {
91
+ this._actionsAlignment = alignment;
92
+ return this;
93
+ }
31
94
  getType() { return 'alert'; }
32
95
  toMeta() {
33
96
  return {
34
97
  type: 'alert',
35
98
  content: this.content,
36
99
  alertType: this._alertType,
37
- ...(this._title ? { title: this._title } : {}),
100
+ ...(this._title !== undefined ? { title: this._title } : {}),
101
+ ...(this._dismissible ? { dismissible: true } : {}),
102
+ ...(this._persistKey !== undefined ? { persistDismissal: this._persistKey } : {}),
103
+ ...(this._iconColor !== undefined ? { iconColor: this._iconColor } : {}),
104
+ ...(this._actionsAlignment !== 'start' ? { actionsAlignment: this._actionsAlignment } : {}),
38
105
  };
39
106
  }
40
107
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Alert.js","sourceRoot":"","sources":["../../src/schema/Alert.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAKtC,MAAM,OAAO,KAAM,SAAQ,OAAO;IAIJ;IAHpB,UAAU,GAAc,MAAM,CAAA;IAC9B,MAAM,CAAS;IAEvB,YAA4B,OAAe;QACzC,KAAK,EAAE,CAAA;QADmB,YAAO,GAAP,OAAO,CAAQ;IAE3C,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,OAAe;QACzB,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,CAAA;IAC3B,CAAC;IAED,SAAS,CAAC,CAAY,IAAU,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,OAAO,IAAI,CAAA,CAAC,CAAC;IAClE,KAAK,CAAC,CAAS,IAAU,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,OAAO,IAAI,CAAA,CAAC,CAAC;IAEvD,IAAI,KAAW,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA,CAAC,CAAC;IAC9C,OAAO,KAAW,OAAO,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA,CAAC,CAAC;IACpD,OAAO,KAAW,OAAO,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA,CAAC,CAAC;IACpD,MAAM,KAAW,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAA,CAAC,CAAC;IAElD;;;;;;;OAOG;IACH,OAAO,CAAC,OAAiB;QACvB,IAAI,CAAC,SAAS,GAAG,OAAO,CAAA;QACxB,OAAO,IAAI,CAAA;IACb,CAAC;IAED,OAAO,KAAa,OAAO,OAAO,CAAA,CAAC,CAAC;IAEpC,MAAM;QACJ,OAAO;YACL,IAAI,EAAE,OAAgB;YACtB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,SAAS,EAAE,IAAI,CAAC,UAAU;YAC1B,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC/C,CAAA;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"Alert.js","sourceRoot":"","sources":["../../src/schema/Alert.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"resolveSchema.d.ts","sourceRoot":"","sources":["../../src/schema/resolveSchema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,WAAW,EAAsB,MAAM,cAAc,CAAA;AAyB5E,MAAM,WAAW,aAAa;IAC5B,IAAI,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAA;IAChE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CACvB;AAED;;;;;;;;GAQG;AACH,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAA;AAE7D,MAAM,WAAW,aAAc,SAAQ,aAAa;IAClD,IAAI,CAAC,EAAE,UAAU,CAAA;IACjB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAChC,gFAAgF;IAChF,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAA;IAChC,gEAAgE;IAChE,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,KAAK,IAAI,CAAA;IAC7C;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB;;;;;;;OAOG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B;;;;;;;OAOG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;IACf;;;;;;;OAOG;IACH,GAAG,CAAC,EAAE;QACJ,KAAK,EAAE,MAAM,CAAA;QACb,IAAI,EAAG,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAA;QAChC,IAAI,EAAG,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,KAAK,IAAI,CAAA;QAC7C;;;;;;;WAOG;QACH,QAAQ,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;QACjD;;;WAGG;QACH,SAAS,CAAC,EAAE,MAAM,CAAA;KACnB,CAAA;CACF;AAED,MAAM,MAAM,gBAAgB,GACxB,OAAO,EAAE,GACT,CAAC,CAAC,GAAG,EAAE,aAAa,KAAK,OAAO,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAA;AAE5D;;;;;;;;;GASG;AACH,MAAM,MAAM,eAAe,GAAG,CAC5B,EAAE,EAAE,OAAO,EACX,GAAG,EAAE,aAAa,EAClB,OAAO,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,OAAO,CAAC,WAAW,EAAE,CAAC,KACrD,OAAO,CAAC,WAAW,CAAC,GAAG,WAAW,CAAA;AAIvC,sFAAsF;AACtF,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,eAAe,GAAG,IAAI,CAExE;AAED,2EAA2E;AAC3E,wBAAgB,sBAAsB,IAAI,IAAI,CAE7C;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,aAAa,CACjC,UAAU,EAAE,gBAAgB,GAAG,SAAS,EACxC,GAAG,GAAE,aAAkB,GACtB,OAAO,CAAC,WAAW,EAAE,CAAC,CAQxB"}
1
+ {"version":3,"file":"resolveSchema.d.ts","sourceRoot":"","sources":["../../src/schema/resolveSchema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,WAAW,EAAsB,MAAM,cAAc,CAAA;AA0B5E,MAAM,WAAW,aAAa;IAC5B,IAAI,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAA;IAChE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CACvB;AAED;;;;;;;;GAQG;AACH,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAA;AAE7D,MAAM,WAAW,aAAc,SAAQ,aAAa;IAClD,IAAI,CAAC,EAAE,UAAU,CAAA;IACjB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAChC,gFAAgF;IAChF,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAA;IAChC,gEAAgE;IAChE,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,KAAK,IAAI,CAAA;IAC7C;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB;;;;;;;OAOG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B;;;;;;;OAOG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;IACf;;;;;;;OAOG;IACH,GAAG,CAAC,EAAE;QACJ,KAAK,EAAE,MAAM,CAAA;QACb,IAAI,EAAG,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAA;QAChC,IAAI,EAAG,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,KAAK,IAAI,CAAA;QAC7C;;;;;;;WAOG;QACH,QAAQ,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;QACjD;;;WAGG;QACH,SAAS,CAAC,EAAE,MAAM,CAAA;KACnB,CAAA;CACF;AAED,MAAM,MAAM,gBAAgB,GACxB,OAAO,EAAE,GACT,CAAC,CAAC,GAAG,EAAE,aAAa,KAAK,OAAO,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAA;AAE5D;;;;;;;;;GASG;AACH,MAAM,MAAM,eAAe,GAAG,CAC5B,EAAE,EAAE,OAAO,EACX,GAAG,EAAE,aAAa,EAClB,OAAO,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,OAAO,CAAC,WAAW,EAAE,CAAC,KACrD,OAAO,CAAC,WAAW,CAAC,GAAG,WAAW,CAAA;AAIvC,sFAAsF;AACtF,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,eAAe,GAAG,IAAI,CAExE;AAED,2EAA2E;AAC3E,wBAAgB,sBAAsB,IAAI,IAAI,CAE7C;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,aAAa,CACjC,UAAU,EAAE,gBAAgB,GAAG,SAAS,EACxC,GAAG,GAAE,aAAkB,GACtB,OAAO,CAAC,WAAW,EAAE,CAAC,CAQxB"}
@@ -8,6 +8,7 @@ import { isServerDataElement, stampServerDataMeta } from './ServerDataElement.js
8
8
  import { Entry } from '../entries/Entry.js';
9
9
  import { RepeatableEntry, readRepeatableRowId, } from '../entries/RepeatableEntry.js';
10
10
  import { Section } from './Section.js';
11
+ import { TextField } from '../fields/TextField.js';
11
12
  const registry = new Map();
12
13
  /** Register a custom resolver for a given element type. Plugins call this at boot. */
13
14
  export function registerResolver(type, fn) {
@@ -183,6 +184,37 @@ async function resolveOne(el, ctx) {
183
184
  meta['afterHeader'] = await resolveAll(afterHeader, ctx);
184
185
  }
185
186
  }
187
+ // Filament v5 — `Action.modalContentFooter([Element…])` resolves through
188
+ // the standard walker so any inner Actions evaluate `.visible() /
189
+ // .disabled()` the same way as anywhere else, and non-Action chrome
190
+ // (Alert / Text / Heading / …) flows through the same rendering path.
191
+ // Stamped under `meta.modalContentFooter` so the renderer can mount it
192
+ // between the form body and the Cancel/Submit footer.
193
+ if (el instanceof Action) {
194
+ const footer = el.getModalContentFooter();
195
+ if (footer && footer.length > 0) {
196
+ meta['modalContentFooter'] = await resolveAll(footer, ctx);
197
+ }
198
+ }
199
+ // `TextField.prefixAction(Action) / suffixAction(Action)` — resolve the
200
+ // bound Actions through `resolveAll` so visibility / disabled rules
201
+ // evaluate the same way as anywhere else. Hidden Actions are dropped
202
+ // from the slot (returning a sparse single-element array → undefined
203
+ // collapses cleanly).
204
+ if (el instanceof TextField) {
205
+ const pre = el.getPrefixAction();
206
+ const suf = el.getSuffixAction();
207
+ if (pre) {
208
+ const [resolved] = await resolveAll([pre], ctx);
209
+ if (resolved)
210
+ meta['prefixAction'] = resolved;
211
+ }
212
+ if (suf) {
213
+ const [resolved] = await resolveAll([suf], ctx);
214
+ if (resolved)
215
+ meta['suffixAction'] = resolved;
216
+ }
217
+ }
186
218
  return meta;
187
219
  }
188
220
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"resolveSchema.js","sourceRoot":"","sources":["../../src/schema/resolveSchema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resolveSchema.js","sourceRoot":"","sources":["../../src/schema/resolveSchema.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAC1C,OAAO,EACL,aAAa,GAId,MAAM,4BAA4B,CAAA;AACnC,OAAO,EACL,YAAY,GAEb,MAAM,2BAA2B,CAAA;AAElC,OAAO,EAAE,MAAM,EAAiD,MAAM,sBAAsB,CAAA;AAC5F,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAA;AACvD,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAC7C,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAA;AACjF,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAC3C,OAAO,EACL,eAAe,EACf,mBAAmB,GAEpB,MAAM,+BAA+B,CAAA;AACtC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAA;AAiHlD,MAAM,QAAQ,GAAG,IAAI,GAAG,EAA2B,CAAA;AAEnD,sFAAsF;AACtF,MAAM,UAAU,gBAAgB,CAAC,IAAY,EAAE,EAAmB;IAChE,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;AACxB,CAAC;AAED,2EAA2E;AAC3E,MAAM,UAAU,sBAAsB;IACpC,QAAQ,CAAC,KAAK,EAAE,CAAA;AAClB,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,UAAwC,EACxC,MAAqB,EAAE;IAEvB,IAAI,CAAC,UAAU;QAAE,OAAO,EAAE,CAAA;IAE1B,MAAM,QAAQ,GAAG,OAAO,UAAU,KAAK,UAAU;QAC/C,CAAC,CAAC,MAAM,UAAU,CAAC,GAAG,CAAC;QACvB,CAAC,CAAC,UAAU,CAAA;IAEd,OAAO,UAAU,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAA;AAClC,CAAC;AAED,KAAK,UAAU,UAAU,CAAC,QAAmB,EAAE,GAAkB;IAC/D,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,CAAA;IAC1E,0CAA0C;IAC1C,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAoB,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAA;AAC5D,CAAC;AAED,KAAK,UAAU,UAAU,CAAC,EAAW,EAAE,GAAkB;IACvD,sEAAsE;IACtE,6EAA6E;IAC7E,4BAA4B;IAC5B,IAAI,EAAE,YAAY,KAAK,IAAI,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QAC9C,OAAO,IAAI,CAAA;IACb,CAAC;IAED,yEAAyE;IACzE,qEAAqE;IACrE,oEAAoE;IACpE,mCAAmC;IACnC,IAAI,EAAE,YAAY,MAAM,IAAI,EAAE,CAAC,kBAAkB,EAAE,IAAI,EAAE,CAAC,YAAY,EAAE,KAAK,KAAK,EAAE,CAAC;QACnF,MAAM,OAAO,GAAyC,EAAE,CAAA;QACxD,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS;YAAE,OAAO,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,CAAA;QACzD,IAAI,GAAG,CAAC,IAAI,KAAO,SAAS;YAAE,OAAO,CAAC,IAAI,GAAK,GAAG,CAAC,IAAI,CAAA;QACvD,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;QAC9C,IAAI,CAAC,OAAO;YAAE,OAAO,IAAI,CAAA;IAC3B,CAAC;IAED,sEAAsE;IACtE,qEAAqE;IACrE,wEAAwE;IACxE,IAAI,EAAE,YAAY,WAAW,EAAE,CAAC;QAC9B,IAAI,EAAE,CAAC,kBAAkB,EAAE,EAAE,CAAC;YAC5B,MAAM,OAAO,GAAyC,EAAE,CAAA;YACxD,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS;gBAAE,OAAO,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,CAAA;YACzD,IAAI,GAAG,CAAC,IAAI,KAAO,SAAS;gBAAE,OAAO,CAAC,IAAI,GAAK,GAAG,CAAC,IAAI,CAAA;YACvD,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;YAC9C,IAAI,CAAC,OAAO;gBAAE,OAAO,IAAI,CAAA;QAC3B,CAAC;IACH,CAAC;IAED,kEAAkE;IAClE,kEAAkE;IAClE,+DAA+D;IAC/D,oDAAoD;IACpD,IAAI,CAAC,CAAC,EAAE,YAAY,KAAK,CAAC;QACtB,CAAC,CAAC,EAAE,YAAY,MAAM,CAAC;QACvB,CAAC,CAAC,EAAE,YAAY,WAAW,CAAC;QAC5B,EAAE,CAAC,iBAAiB,EAAE,EAAE,CAAC;QAC3B,MAAM,SAAS,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAA;QACzC,MAAM,OAAO,GAAK,MAAM,EAAE,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAA;QACxD,IAAI,CAAC,OAAO;YAAE,OAAO,IAAI,CAAA;IAC3B,CAAC;IAED,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,EAAE,CAAA;IAEzB,MAAM,cAAc,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;IACzC,IAAI,cAAc,EAAE,CAAC;QACnB,OAAO,cAAc,CAAC,EAAE,EAAE,GAAG,EAAE,QAAQ,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAA;IACvE,CAAC;IAED,uEAAuE;IACvE,uEAAuE;IACvE,kEAAkE;IAClE,gEAAgE;IAChE,oEAAoE;IACpE,kEAAkE;IAClE,mEAAmE;IACnE,2DAA2D;IAC3D,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,OAAO,CAChC,EAAE,YAAY,KAAK,IAAI,EAAE,YAAY,MAAM,IAAI,EAAE,YAAY,KAAK;QAChE,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC;QAChB,CAAC,CAAC,EAAE,CAAC,MAAM,EAAE,CACD,CAAA;IAChB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA,CAAC,mDAAmD;IAEpE,yEAAyE;IACzE,2EAA2E;IAC3E,IAAI,EAAE,YAAY,MAAM,IAAI,EAAE,CAAC,kBAAkB,EAAE,IAAI,EAAE,CAAC,YAAY,EAAE,KAAK,KAAK,EAAE,CAAC;QACnF,MAAM,OAAO,GAAyC,EAAE,CAAA;QACxD,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS;YAAE,OAAO,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,CAAA;QACzD,IAAI,GAAG,CAAC,IAAI,KAAO,SAAS;YAAE,OAAO,CAAC,IAAI,GAAK,GAAG,CAAC,IAAI,CAAA;QACvD,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;QAC/C,IAAI,QAAQ;YAAE,IAAI,CAAC,UAAU,CAAC,GAAG,IAAI,CAAA;IACvC,CAAC;IAED,uEAAuE;IACvE,IAAI,EAAE,YAAY,WAAW,IAAI,EAAE,CAAC,kBAAkB,EAAE,EAAE,CAAC;QACzD,MAAM,OAAO,GAAyC,EAAE,CAAA;QACxD,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS;YAAE,OAAO,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,CAAA;QACzD,IAAI,GAAG,CAAC,IAAI,KAAO,SAAS;YAAE,OAAO,CAAC,IAAI,GAAK,GAAG,CAAC,IAAI,CAAA;QACvD,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;QAC/C,IAAI,QAAQ;YAAE,IAAI,CAAC,UAAU,CAAC,GAAG,IAAI,CAAA;IACvC,CAAC;IAED,6EAA6E;IAC7E,+DAA+D;IAC/D,MAAM,MAAM,GAAG,EAAE,CAAC,oBAAoB,EAAE,CAAA;IACxC,IAAI,MAAM;QAAE,IAAI,CAAC,OAAO,GAAG,MAAM,CAAA;IAEjC,4DAA4D;IAC5D,mEAAmE;IACnE,iDAAiD;IACjD,qEAAqE;IACrE,iCAAiC;IACjC,IAAI,mBAAmB,CAAC,EAAE,CAAC;QAAE,mBAAmB,CAAC,EAAE,EAAE,IAAI,CAAC,CAAA;IAE1D,qEAAqE;IACrE,wEAAwE;IACxE,qEAAqE;IACrE,uEAAuE;IACvE,IAAI,EAAE,YAAY,aAAa,EAAE,CAAC;QAChC,MAAM,mBAAmB,CAAC,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,CAAA;QACxC,OAAO,IAAI,CAAA;IACb,CAAC;IAED,gEAAgE;IAChE,kEAAkE;IAClE,iEAAiE;IACjE,sCAAsC;IACtC,IAAI,EAAE,YAAY,YAAY,EAAE,CAAC;QAC/B,MAAM,kBAAkB,CAAC,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,CAAA;QACvC,OAAO,IAAI,CAAA;IACb,CAAC;IAED,uEAAuE;IACvE,uEAAuE;IACvE,sEAAsE;IACtE,oEAAoE;IACpE,wEAAwE;IACxE,QAAQ;IACR,IAAI,EAAE,YAAY,eAAe,EAAE,CAAC;QAClC,MAAM,qBAAqB,CAAC,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,CAAA;QAC1C,OAAO,IAAI,CAAA;IACb,CAAC;IAED,MAAM,QAAQ,GAAG,EAAE,CAAC,WAAW,EAAE,CAAA;IACjC,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpC,IAAI,CAAC,QAAQ,GAAG,MAAM,UAAU,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAA;IACjD,CAAC;IAED,sEAAsE;IACtE,oEAAoE;IACpE,8DAA8D;IAC9D,iEAAiE;IACjE,4CAA4C;IAC5C,IAAI,EAAE,YAAY,OAAO,EAAE,CAAC;QAC1B,MAAM,WAAW,GAAG,EAAE,CAAC,cAAc,EAAE,CAAA;QACvC,IAAI,WAAW,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1C,IAAI,CAAC,aAAa,CAAC,GAAG,MAAM,UAAU,CAAC,WAAW,EAAE,GAAG,CAAC,CAAA;QAC1D,CAAC;IACH,CAAC;IAED,yEAAyE;IACzE,kEAAkE;IAClE,oEAAoE;IACpE,sEAAsE;IACtE,uEAAuE;IACvE,sDAAsD;IACtD,IAAI,EAAE,YAAY,MAAM,EAAE,CAAC;QACzB,MAAM,MAAM,GAAG,EAAE,CAAC,qBAAqB,EAAE,CAAA;QACzC,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAChC,IAAI,CAAC,oBAAoB,CAAC,GAAG,MAAM,UAAU,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;QAC5D,CAAC;IACH,CAAC;IAED,wEAAwE;IACxE,oEAAoE;IACpE,qEAAqE;IACrE,qEAAqE;IACrE,sBAAsB;IACtB,IAAI,EAAE,YAAY,SAAS,EAAE,CAAC;QAC5B,MAAM,GAAG,GAAI,EAAE,CAAC,eAAe,EAAE,CAAA;QACjC,MAAM,GAAG,GAAI,EAAE,CAAC,eAAe,EAAE,CAAA;QACjC,IAAI,GAAG,EAAE,CAAC;YACR,MAAM,CAAC,QAAQ,CAAC,GAAG,MAAM,UAAU,CAAC,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAA;YAC/C,IAAI,QAAQ;gBAAE,IAAI,CAAC,cAAc,CAAC,GAAG,QAAQ,CAAA;QAC/C,CAAC;QACD,IAAI,GAAG,EAAE,CAAC;YACR,MAAM,CAAC,QAAQ,CAAC,GAAG,MAAM,UAAU,CAAC,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAA;YAC/C,IAAI,QAAQ;gBAAE,IAAI,CAAC,cAAc,CAAC,GAAG,QAAQ,CAAA;QAC/C,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;;;;;;;;GASG;AACH,KAAK,UAAU,mBAAmB,CAChC,KAAoB,EACpB,GAAoB,EACpB,IAAkB;IAElB,MAAM,KAAK,GAAS,KAAK,CAAC,cAAc,EAAE,CAAA;IAC1C,MAAM,SAAS,GAAK,GAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IAC5C,oEAAoE;IACpE,uEAAuE;IACvE,qEAAqE;IACrE,uEAAuE;IACvE,iEAAiE;IACjE,MAAM,WAAW,GAAG,KAAK,CAAC,mBAAmB,EAAE,CAAA;IAC/C,MAAM,SAAS,GAAmC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC;QACxE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,qBAAqB,CAAC,GAAG,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;QACzG,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,eAAe,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IAE/D,MAAM,OAAO,GAAO,KAAK,CAAC,YAAY,EAAE,CAAA;IACxC,MAAM,QAAQ,GAAM,KAAK,CAAC,aAAa,EAAE,CAAA;IACzC,MAAM,WAAW,GAAG,KAAK,CAAC,gBAAgB,EAAE,CAAA;IAC5C,MAAM,UAAU,GAAI,KAAK,CAAC,eAAe,EAAE,CAAA;IAC3C,MAAM,YAAY,GAAG,KAAK,CAAC,iBAAiB,EAAE,CAAA;IAE9C,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE;QACtE,MAAM,QAAQ,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,CAAA;QACxD,MAAM,MAAM,GAAkB;YAC5B,GAAG,GAAG;YACN,MAAM,EAAE,SAAS;YACjB,IAAI,EAAI,CAAC,IAAY,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC;YACzC,IAAI,EAAI,CAAC,IAAY,EAAE,KAAc,EAAE,EAAE,GAAG,SAAS,CAAC,IAAI,CAAC,GAAG,KAAK,CAAA,CAAC,CAAC;YACrE,GAAG,EAAK;gBACN,KAAK;gBACL,IAAI,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC;gBACvC,IAAI,EAAE,CAAC,IAAY,EAAE,KAAc,EAAE,EAAE,GAAG,SAAS,CAAC,IAAI,CAAC,GAAG,KAAK,CAAA,CAAC,CAAC;gBACnE,QAAQ;aACT;SACF,CAAA;QACD,OAAO,MAAM,CAAC,OAAO,CAAA,CAAC,sEAAsE;QAC5F,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;QAChD,MAAM,EAAE,GAAG,SAAS,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;QAClD,MAAM,GAAG,GAAoB,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAA;QAC7C,IAAI,OAAO,EAAE,CAAC;YACZ,IAAI,CAAC;gBACH,MAAM,KAAK,GAAG,OAAO,CAAC,SAAS,CAAC,CAAA;gBAChC,IAAI,OAAO,KAAK,KAAK,QAAQ;oBAAE,GAAG,CAAC,SAAS,GAAG,KAAK,CAAA;YACtD,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,CAAC,IAAI,CAAC,sCAAsC,KAAK,CAAC,IAAI,UAAU,EAAE,GAAG,CAAC,CAAA;YAC/E,CAAC;QACH,CAAC;QACD,qEAAqE;QACrE,sEAAsE;QACtE,eAAe;QACf,MAAM,cAAc,GAAG,QAAQ,KAAK,SAAS;eACxC,WAAW,KAAK,SAAS;eACzB,UAAU,KAAK,SAAS;eACxB,YAAY,KAAK,SAAS,CAAA;QAC/B,MAAM,SAAS,GAAG,cAAc,CAAC,CAAC,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;QACzE,IAAI,QAAQ,KAAK,SAAS,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YACtD,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,QAAQ,EAAE,SAAS,EAAE,aAAa,KAAK,CAAC,IAAI,GAAG,CAAC,CAAA;YACpF,IAAI,MAAM;gBAAE,GAAG,CAAC,MAAM,GAAG,IAAI,CAAA;QAC/B,CAAC;QACD,IAAI,WAAW,KAAK,SAAS,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YACzD,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,WAAW,EAAE,SAAS,EAAE,eAAe,EAAE,aAAa,KAAK,CAAC,IAAI,GAAG,CAAC,CAAA;YACtG,IAAI,CAAC,OAAO;gBAAE,GAAG,CAAC,SAAS,GAAG,KAAK,CAAA;QACrC,CAAC;QACD,IAAI,UAAU,KAAK,SAAS,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YACxD,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,UAAU,EAAE,SAAS,EAAE,cAAc,EAAE,aAAa,KAAK,CAAC,IAAI,GAAG,CAAC,CAAA;YACpG,IAAI,CAAC,OAAO;gBAAE,GAAG,CAAC,QAAQ,GAAG,KAAK,CAAA;QACpC,CAAC;QACD,IAAI,YAAY,KAAK,SAAS,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC1D,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,YAAY,EAAE,SAAS,EAAE,gBAAgB,EAAE,aAAa,KAAK,CAAC,IAAI,GAAG,CAAC,CAAA;YACxG,IAAI,CAAC,OAAO;gBAAE,GAAG,CAAC,UAAU,GAAG,KAAK,CAAA;QACtC,CAAC;QACD,MAAM,MAAM,GAAG,KAAK,CAAC,mBAAmB,EAAE,CAAA;QAC1C,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,MAAM,QAAQ,GAAG,MAAM,uBAAuB,CAAC,MAAM,EAAE,GAAG,EAAE,SAAS,CAAC,CAAA;YACtE,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;gBAAE,GAAG,CAAC,YAAY,GAAG,QAAQ,CAAA;QACtD,CAAC;QACD,OAAO,GAAG,CAAA;IACZ,CAAC,CAAC,CAAC,CAAA;IAEH,MAAM,WAAW,GAAkB,EAAE,GAAG,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,CAAA;IACzD,OAAO,WAAW,CAAC,GAAG,CAAA;IACtB,OAAO,WAAW,CAAC,OAAO,CAAA;IAC1B,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,KAAK,EAAE,WAAW,CAAC,CAAA;IAErD,IAAI,CAAC,MAAM,CAAC,GAAO,IAAI,CAAA;IACvB,IAAI,CAAC,UAAU,CAAC,GAAG,QAAQ,CAAA;AAC7B,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,KAAK,UAAU,uBAAuB,CACpC,OAAmB,EACnB,GAAwB,EACxB,SAAkC;IAElC,MAAM,GAAG,GAAiB,EAAE,CAAA;IAC5B,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,MAAM,OAAO,GAA4B,EAAE,MAAM,EAAE,SAAS,EAAE,CAAA;QAC9D,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS;YAAE,OAAO,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,CAAA;QACzD,IAAI,GAAG,CAAC,IAAI,KAAO,SAAS;YAAE,OAAO,CAAC,IAAI,GAAK,GAAG,CAAC,IAAI,CAAA;QACvD,IAAI,OAAO,GAAI,IAAI,CAAA;QACnB,IAAI,QAAQ,GAAG,KAAK,CAAA;QACpB,IAAI,MAAM,CAAC,kBAAkB,EAAE,EAAE,CAAC;YAChC,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;YAC7C,OAAO,GAAI,MAAM,CAAC,OAAO,CAAA;YACzB,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAA;QAC5B,CAAC;QACD,IAAI,CAAC,OAAO;YAAE,SAAQ;QACtB,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,CAAA;QAC5B,IAAI,QAAQ;YAAE,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAA;QAClC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAChB,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,SAAS,eAAe,CAAC,GAAY;IACnC,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1D,OAAO,EAAE,GAAI,GAA+B,EAAE,CAAA;IAChD,CAAC;IACD,OAAO,EAAE,CAAA;AACX,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,qBAAqB,CAAC,GAAY,EAAE,SAAiB;IAC5D,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1D,OAAO,EAAE,GAAI,GAA+B,EAAE,CAAA;IAChD,CAAC;IACD,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,EAAE,CAAA;IAChC,OAAO,EAAE,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,CAAA;AAC7B,CAAC;AAED,uEAAuE;AACvE,2EAA2E;AAC3E,6CAA6C;AAC7C,KAAK,UAAU,cAAc,CAC3B,IAA+B,EAC/B,GAAsB,EACtB,OAAe;IAEf,IAAI,OAAO,IAAI,KAAK,SAAS;QAAE,OAAO,IAAI,CAAA;IAC1C,IAAI,CAAC;QACH,OAAO,OAAO,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;IACjC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,IAAI,CAAC,6BAA6B,OAAO,SAAS,EAAE,GAAG,CAAC,CAAA;QAChE,OAAO,KAAK,CAAA;IACd,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,SAAS,CAAC,GAA4B,EAAE,SAAiB,EAAE,KAAa;IAC/E,MAAM,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,CAAA;IACvB,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,GAAG,CAAA;IACzD,OAAO,GAAG,SAAS,IAAI,KAAK,EAAE,CAAA;AAChC,CAAC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,KAAK,UAAU,kBAAkB,CAC/B,KAAmB,EACnB,GAAoB,EACpB,IAAkB;IAElB,MAAM,SAAS,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IAC1C,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IAEjF,MAAM,OAAO,GAAQ,KAAK,CAAC,YAAY,EAAE,CAAA;IACzC,MAAM,QAAQ,GAAO,KAAK,CAAC,aAAa,EAAE,CAAA;IAC1C,MAAM,WAAW,GAAI,KAAK,CAAC,gBAAgB,EAAE,CAAA;IAC7C,MAAM,UAAU,GAAK,KAAK,CAAC,eAAe,EAAE,CAAA;IAC5C,MAAM,YAAY,GAAG,KAAK,CAAC,iBAAiB,EAAE,CAAA;IAE9C,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE;QACrE,MAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,CAAA;QAC/B,MAAM,KAAK,GAAO,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;QACnE,MAAM,IAAI,GAAQ,QAAQ,CAAC,IAAI,CAAA;QAC/B,MAAM,EAAE,GAAU,gBAAgB,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;QAE/D,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,OAAO,GAAmB;gBAC9B,EAAE;gBACF,IAAI,EAAS,SAAS,IAAI,EAAE;gBAC5B,QAAQ,EAAK,EAAE;gBACf,WAAW,EAAE,IAAI;aAClB,CAAA;YACD,OAAO,OAAO,CAAA;QAChB,CAAC;QAED,iEAAiE;QACjE,oEAAoE;QACpE,gEAAgE;QAChE,mEAAmE;QACnE,sEAAsE;QACtE,MAAM,QAAQ,GAA8B,EAAE,CAAA;QAC9C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC1C,IAAI,CAAC,KAAK,KAAK;gBAAE,SAAQ;YACzB,MAAM,KAAK,GAAG,SAAS,CAAC,CAAC,CAAE,CAAA;YAC3B,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS;gBAAE,SAAQ;YACtC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAC3B,CAAC;QACD,MAAM,MAAM,GAAkB;YAC5B,GAAG,GAAG;YACN,MAAM,EAAE,IAAI;YACZ,IAAI,EAAI,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;YACpC,IAAI,EAAI,CAAC,IAAY,EAAE,KAAc,EAAE,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,KAAK,CAAA,CAAC,CAAC;YAChE,GAAG,EAAK;gBACN,KAAK;gBACL,IAAI,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;gBAClC,IAAI,EAAE,CAAC,IAAY,EAAE,KAAc,EAAE,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,KAAK,CAAA,CAAC,CAAC;gBAC9D,QAAQ;gBACR,SAAS,EAAE,KAAK,CAAC,IAAI;aACtB;SACF,CAAA;QACD,OAAO,MAAM,CAAC,OAAO,CAAA;QAErB,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,MAAM,CAAC,CAAA;QAC5D,MAAM,GAAG,GAAmB,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAA;QAE9D,IAAI,OAAO,EAAE,CAAC;YACZ,IAAI,CAAC;gBACH,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;gBACvC,IAAI,OAAO,KAAK,KAAK,QAAQ;oBAAE,GAAG,CAAC,SAAS,GAAG,KAAK,CAAA;YACtD,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,CAAC,IAAI,CAAC,qCAAqC,KAAK,CAAC,IAAI,UAAU,EAAE,GAAG,CAAC,CAAA;YAC9E,CAAC;QACH,CAAC;QACD,MAAM,cAAc,GAAG,QAAQ,KAAK,SAAS;eACxC,WAAW,KAAK,SAAS;eACzB,UAAU,KAAK,SAAS;eACxB,YAAY,KAAK,SAAS,CAAA;QAC/B,MAAM,SAAS,GAAG,cAAc,CAAC,CAAC,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;QACzE,IAAI,QAAQ,KAAK,SAAS,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YACtD,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,QAAQ,EAAE,SAAS,EAAE,YAAY,KAAK,CAAC,IAAI,GAAG,CAAC,CAAA;YACnF,IAAI,MAAM;gBAAE,GAAG,CAAC,MAAM,GAAG,IAAI,CAAA;QAC/B,CAAC;QACD,IAAI,WAAW,KAAK,SAAS,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YACzD,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,WAAW,EAAE,SAAS,EAAE,eAAe,EAAE,YAAY,KAAK,CAAC,IAAI,GAAG,CAAC,CAAA;YACrG,IAAI,CAAC,OAAO;gBAAE,GAAG,CAAC,SAAS,GAAG,KAAK,CAAA;QACrC,CAAC;QACD,IAAI,UAAU,KAAK,SAAS,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YACxD,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,UAAU,EAAE,SAAS,EAAE,cAAc,EAAE,YAAY,KAAK,CAAC,IAAI,GAAG,CAAC,CAAA;YACnG,IAAI,CAAC,OAAO;gBAAE,GAAG,CAAC,QAAQ,GAAG,KAAK,CAAA;QACpC,CAAC;QACD,IAAI,YAAY,KAAK,SAAS,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC1D,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,YAAY,EAAE,SAAS,EAAE,gBAAgB,EAAE,YAAY,KAAK,CAAC,IAAI,GAAG,CAAC,CAAA;YACvG,IAAI,CAAC,OAAO;gBAAE,GAAG,CAAC,UAAU,GAAG,KAAK,CAAA;QACtC,CAAC;QACD,MAAM,MAAM,GAAG,KAAK,CAAC,mBAAmB,EAAE,CAAA;QAC1C,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,MAAM,QAAQ,GAAG,MAAM,uBAAuB,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,CAAA;YACjE,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;gBAAE,GAAG,CAAC,YAAY,GAAG,QAAQ,CAAA;QACtD,CAAC;QACD,OAAO,GAAG,CAAA;IACZ,CAAC,CAAC,CAAC,CAAA;IAEH,iEAAiE;IACjE,oEAAoE;IACpE,mEAAmE;IACnE,mEAAmE;IACnE,oEAAoE;IACpE,8DAA8D;IAC9D,EAAE;IACF,uEAAuE;IACvE,sEAAsE;IACtE,uEAAuE;IACvE,oEAAoE;IACpE,mEAAmE;IACnE,MAAM,eAAe,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAA;IAC/C,MAAM,aAAa,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC,GAAG,CAAC,KAAK,EAAC,KAAK,EAAC,EAAE;QAC1E,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,kBAAkB,CAAC,eAAe,CAAC,CAAA;QAC/D,IAAI,CAAC,OAAO;YAAE,OAAO,IAAI,CAAA;QACzB,MAAM,WAAW,GAAkB,EAAE,GAAG,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,CAAA;QACzD,OAAO,WAAW,CAAC,GAAG,CAAA;QACtB,OAAO,WAAW,CAAC,OAAO,CAAA;QAC1B,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,WAAW,CAAC,CAAA;QACjE,MAAM,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAA;QACxB,CAAC,CAAC,QAAQ,GAAG,QAAQ,CAAA;QACrB,OAAO,CAAC,CAAA;IACV,CAAC,CAAC,CAAC,CAAA;IACH,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAkB,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAA;IAE1E,IAAI,CAAC,MAAM,CAAC,GAAK,IAAI,CAAA;IACrB,IAAI,CAAC,QAAQ,CAAC,GAAG,UAAU,CAAA;AAC7B,CAAC;AAED;;;;;;;;;GASG;AACH,KAAK,UAAU,qBAAqB,CAClC,KAAsB,EACtB,GAAoB,EACpB,IAAkB;IAElB,MAAM,KAAK,GAAS,KAAK,CAAC,cAAc,EAAE,CAAA;IAC1C,MAAM,SAAS,GAAK,KAAK,CAAC,OAAO,EAAE,CAAA;IACnC,MAAM,WAAW,GAAG,eAAe,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;IAC1D,IAAI,WAAW,KAAK,SAAS,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAChF,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAA;QACjB,OAAM;IACR,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE;QAClE,MAAM,SAAS,GAAG,eAAe,CAAC,GAAG,CAAC,CAAA;QACtC,MAAM,MAAM,GAAkB,EAAE,GAAG,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,CAAA;QAC3D,OAAO,MAAM,CAAC,MAAM,CAAA;QACpB,OAAO,MAAM,CAAC,IAAI,CAAA;QAClB,OAAO,MAAM,CAAC,IAAI,CAAA;QAClB,OAAO,MAAM,CAAC,OAAO,CAAA;QACrB,OAAO,MAAM,CAAC,GAAG,CAAA;QACjB,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;QAChD,MAAM,EAAE,GAAG,mBAAmB,CAAC,GAAG,EAAE,SAAS,EAAE,KAAK,CAAC,CAAA;QACrD,MAAM,GAAG,GAA2B,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAA;QACpD,OAAO,GAAG,CAAA;IACZ,CAAC,CAAC,CAAC,CAAA;IAEH,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAAA;AACrB,CAAC;AAED;;mBAEmB;AACnB,SAAS,eAAe,CAAC,MAAe,EAAE,IAAY;IACpD,IAAI,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,SAAS,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAA;IAC3F,MAAM,KAAK,GAAI,MAAkC,CAAC,IAAI,CAAC,CAAA;IACvD,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAA;AACjD,CAAC;AAED;;;;4EAI4E;AAC5E,SAAS,eAAe,CAAC,GAAY;IACnC,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1D,OAAO,EAAE,GAAI,GAA+B,EAAE,CAAA;IAChD,CAAC;IACD,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,EAAE,CAAA;IAChD,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CAAA;AACxB,CAAC;AAQD;;;;;;;;GAQG;AACH,SAAS,gBAAgB,CAAC,GAAY;IACpC,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1D,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAA;IAC/B,CAAC;IACD,MAAM,CAAC,GAAG,GAA8B,CAAA;IACxC,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAE,CAAC,CAAC,MAAM,CAAY,CAAC,CAAC,CAAC,EAAE,CAAA;IACvE,MAAM,OAAO,GAAG,CAAC,CAAC,MAAM,CAAC,CAAA;IACzB,MAAM,IAAI,GAA4B,CAAC,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACvG,CAAC,CAAC,EAAE,GAAI,OAAmC,EAAE;QAC7C,CAAC,CAAC,EAAE,CAAA;IACN,MAAM,GAAG,GAAoB,EAAE,IAAI,EAAE,IAAI,EAAE,CAAA;IAC3C,IAAI,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,QAAQ;QAAE,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,MAAM,CAAW,CAAA;IACjE,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,SAAS,gBAAgB,CAAC,GAAoB,EAAE,SAAiB,EAAE,KAAa;IAC9E,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,GAAG,CAAC,IAAI,CAAA;IACxE,OAAO,GAAG,SAAS,IAAI,KAAK,EAAE,CAAA;AAChC,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,KAAK,UAAU,WAAW,CACxB,IAA4B,EAC5B,GAAsB,EACtB,MAAe,EACf,OAAe;IAEf,IAAI,OAAO,IAAI,KAAK,SAAS;QAAE,OAAO,IAAI,CAAA;IAC1C,IAAI,CAAC;QACH,OAAO,OAAO,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;IACjC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,IAAI,CAAC,aAAa,MAAM,SAAS,OAAO,SAAS,EAAE,GAAG,CAAC,CAAA;QAC/D,OAAO,IAAI,CAAA;IACb,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,SAAS,kBAAkB,CAAC,GAAkB;IAC5C,MAAM,GAAG,GAAkB,EAAE,CAAA;IAC7B,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS;QAAE,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,CAAA;IACrD,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS;QAAE,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,CAAA;IACrD,IAAI,GAAG,CAAC,IAAI;QAAE,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,CAAA;IACjC,IAAI,GAAG,CAAC,IAAI;QAAE,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,CAAA;IACjC,IAAI,GAAG,CAAC,IAAI,KAAK,SAAS;QAAE,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,CAAA;IAC/C,IAAI,GAAG,CAAC,GAAG,KAAO,SAAS;QAAE,GAAG,CAAC,GAAG,GAAK,GAAG,CAAC,GAAG,CAAA;IAChD,OAAO,GAAG,CAAA;AACZ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pilotiq/pilotiq",
3
- "version": "0.1.0",
3
+ "version": "0.3.0",
4
4
  "description": "View-based admin panel for RudderJS",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -58,23 +58,28 @@
58
58
  "dependencies": {
59
59
  "jiti": "^2.6.0",
60
60
  "marked": "^14",
61
+ "react-image-crop": "^11.0.10",
61
62
  "sanitize-html": "^2.17.3"
62
63
  },
63
64
  "peerDependencies": {
64
65
  "@base-ui/react": "^1",
66
+ "@rudderjs/contracts": "^1.3.0",
67
+ "@rudderjs/core": "^1.1.2",
68
+ "@rudderjs/router": "^1.1.2",
69
+ "@rudderjs/view": "^1.0.1",
65
70
  "class-variance-authority": "^0.7",
66
71
  "clsx": "^2",
67
72
  "lucide-react": "^0.503",
68
73
  "react": "^18 || ^19",
69
74
  "react-day-picker": "^9",
70
- "tailwind-merge": "^3",
71
- "@rudderjs/contracts": "1.3.0",
72
- "@rudderjs/core": "1.1.2",
73
- "@rudderjs/router": "1.1.2",
74
- "@rudderjs/view": "1.0.1"
75
+ "tailwind-merge": "^3"
75
76
  },
76
77
  "devDependencies": {
77
78
  "@base-ui/react": "^1",
79
+ "@rudderjs/contracts": "^1.3.0",
80
+ "@rudderjs/core": "^1.1.2",
81
+ "@rudderjs/router": "^1.1.2",
82
+ "@rudderjs/view": "^1.0.1",
78
83
  "@types/node": "^20",
79
84
  "@types/react": "^19",
80
85
  "@types/sanitize-html": "^2.16.1",
@@ -85,11 +90,7 @@
85
90
  "react-day-picker": "^9",
86
91
  "tailwind-merge": "^3",
87
92
  "typescript": "^5",
88
- "vite": "^7",
89
- "@rudderjs/contracts": "1.3.0",
90
- "@rudderjs/core": "1.1.2",
91
- "@rudderjs/router": "1.1.2",
92
- "@rudderjs/view": "1.0.1"
93
+ "vite": "^7"
93
94
  },
94
95
  "scripts": {
95
96
  "build": "tsc -p tsconfig.build.json",
@@ -1,6 +1,8 @@
1
1
  import { describe, it } from 'node:test'
2
2
  import assert from 'node:assert/strict'
3
+ import type { Router } from '@rudderjs/router'
3
4
  import { Pilotiq, type PilotiqPlugin } from './Pilotiq.js'
5
+ import { registerPilotiqRoutes } from './routes.js'
4
6
 
5
7
  describe('Pilotiq plugins', () => {
6
8
  it('.use() invokes register() with the panel and records the plugin', () => {
@@ -45,3 +47,79 @@ describe('Pilotiq plugins', () => {
45
47
  ])
46
48
  })
47
49
  })
50
+
51
+ // Minimal stub Router — `registerPilotiqRoutes` only calls `get` / `post`
52
+ // / `put` / `delete` on the router; route bodies don't fire here. The
53
+ // hook tests don't care about the route surface, only that the plugin's
54
+ // `registerRoutes` callback fires with the right arguments.
55
+ function makeStubRouter(): Router & { _calls: Array<{ method: string; path: string }> } {
56
+ const calls: Array<{ method: string; path: string }> = []
57
+ const noop = (path: string): void => { calls.push({ method: 'unknown', path }) }
58
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
59
+ const stub: any = {
60
+ get: (path: string) => noop(path),
61
+ post: (path: string) => noop(path),
62
+ put: (path: string) => noop(path),
63
+ delete: (path: string) => noop(path),
64
+ patch: (path: string) => noop(path),
65
+ _calls: calls,
66
+ }
67
+ return stub
68
+ }
69
+
70
+ describe('PilotiqPlugin.registerRoutes hook', () => {
71
+ it('fires once per plugin during registerPilotiqRoutes, in registration order', () => {
72
+ const order: string[] = []
73
+ const router = makeStubRouter()
74
+ const mk = (n: string): PilotiqPlugin => ({
75
+ name: n,
76
+ register() { /* no-op */ },
77
+ registerRoutes(r, p) {
78
+ assert.equal(r, router)
79
+ assert.ok(p instanceof Pilotiq)
80
+ order.push(n)
81
+ },
82
+ })
83
+ const panel = Pilotiq.make('Admin').plugins([mk('a'), mk('b'), mk('c')])
84
+ registerPilotiqRoutes(router, panel)
85
+ assert.deepEqual(order, ['a', 'b', 'c'])
86
+ })
87
+
88
+ it('skips plugins that do not implement the hook', () => {
89
+ const order: string[] = []
90
+ const router = makeStubRouter()
91
+ const withHook: PilotiqPlugin = {
92
+ name: 'with-hook',
93
+ register() { /* no-op */ },
94
+ registerRoutes() { order.push('with-hook') },
95
+ }
96
+ const withoutHook: PilotiqPlugin = {
97
+ name: 'without-hook',
98
+ register() { /* no-op */ },
99
+ }
100
+ const panel = Pilotiq.make('Admin').plugins([withoutHook, withHook])
101
+ // No throw expected — the optional hook is skipped on plugins that
102
+ // omit it, so a "config-only" plugin remains a one-method object.
103
+ registerPilotiqRoutes(router, panel)
104
+ assert.deepEqual(order, ['with-hook'])
105
+ })
106
+
107
+ it('runs after core routes — at least one core call has fired before the first hook', () => {
108
+ const router = makeStubRouter()
109
+ let coreCallsAtHookTime = -1
110
+ const probe: PilotiqPlugin = {
111
+ name: 'probe',
112
+ register() { /* no-op */ },
113
+ registerRoutes() {
114
+ coreCallsAtHookTime = router._calls.length
115
+ },
116
+ }
117
+ // The dashboard route alone (`GET ${base}`) registers unconditionally
118
+ // — so any panel produces at least one core router call before the
119
+ // plugin hooks fire. Empty-resources panel is enough to cover this.
120
+ const panel = Pilotiq.make('Admin').plugins([probe])
121
+ registerPilotiqRoutes(router, panel)
122
+ assert.ok(coreCallsAtHookTime > 0,
123
+ `expected core routes to register before the hook, got ${coreCallsAtHookTime} calls`)
124
+ })
125
+ })
package/src/Pilotiq.ts CHANGED
@@ -1,3 +1,4 @@
1
+ import type { Router } from '@rudderjs/router'
1
2
  import type { ResourceClass } from './Resource.js'
2
3
  import type { GlobalClass } from './Global.js'
3
4
  import type { ClusterClass } from './Cluster.js'
@@ -25,8 +26,26 @@ export type PilotiqLayout = 'sidebar' | 'topbar'
25
26
  /** Plugin interface for extending Pilotiq panels. */
26
27
  export interface PilotiqPlugin {
27
28
  name: string
28
- /** Called when .use() is invoked mutate config as needed. */
29
+ /** Called when `.use()` / `.plugins([…])` runs at panel-build time
30
+ * mutate config as needed (register a right-sidebar contribution,
31
+ * register a field renderer, seed an internal registry, install a
32
+ * `Field.prototype` augment, etc). Idempotent under HMR / re-mount. */
29
33
  register(panel: Pilotiq): void
34
+ /**
35
+ * Optional — called by `registerPilotiqRoutes(router, pilotiq)` AFTER
36
+ * the core routes are mounted, so plugins can register their own
37
+ * HTTP surface alongside the panel's. The mount order matches the
38
+ * order plugins were registered via `.use()` / `.plugins([…])`.
39
+ *
40
+ * Use this for plugin-owned endpoints (`POST {base}/_chat`,
41
+ * `POST {base}/_collab`, …) — the path prefix should mirror
42
+ * pilotiq's own underscore-prefixed precedent (`_search`,
43
+ * `_uploads`, `_widget`, `_notifications`).
44
+ *
45
+ * Skip this hook for plugins that only mutate panel config; nothing
46
+ * inside core walks plugins outside `register()` / `registerRoutes()`.
47
+ */
48
+ registerRoutes?(router: Router, pilotiq: Pilotiq): void
30
49
  }
31
50
 
32
51
  /**
@@ -4,6 +4,8 @@ import assert from 'node:assert/strict'
4
4
  import { Action } from './Action.js'
5
5
  import { resolveSchema, _resetResolverRegistry } from '../schema/resolveSchema.js'
6
6
  import { Card } from '../schema/Card.js'
7
+ import { Alert } from '../schema/Alert.js'
8
+ import { Text } from '../schema/Text.js'
7
9
  import { RelationManager, type RelationManagerContext } from '../RelationManager.js'
8
10
 
9
11
  beforeEach(() => _resetResolverRegistry())
@@ -2419,6 +2421,50 @@ describe('Action modal chrome extras (audit gap #2)', () => {
2419
2421
  })
2420
2422
  })
2421
2423
 
2424
+ describe('modalContentFooter', () => {
2425
+ it('round-trips Elements through resolveSchema as `meta.modalContentFooter`', async () => {
2426
+ const result = await resolveSchema([
2427
+ Action.make('save').modalContentFooter([
2428
+ Alert.make('Heads up').warning(),
2429
+ Text.make('Fine print'),
2430
+ ]),
2431
+ ])
2432
+ const footer = result[0]!['modalContentFooter'] as Array<Record<string, unknown>> | undefined
2433
+ assert.equal(footer?.length, 2)
2434
+ assert.equal(footer![0]!['type'], 'alert')
2435
+ assert.equal(footer![0]!['content'], 'Heads up')
2436
+ assert.equal(footer![0]!['alertType'], 'warning')
2437
+ assert.equal(footer![1]!['type'], 'text')
2438
+ })
2439
+
2440
+ it('omits the slot when the setter was not called', async () => {
2441
+ const result = await resolveSchema([Action.make('save').modalHeading('h')])
2442
+ assert.equal(result[0]!['modalContentFooter'], undefined)
2443
+ })
2444
+
2445
+ it('omits the slot when called with an empty array', async () => {
2446
+ const result = await resolveSchema([Action.make('save').modalContentFooter([])])
2447
+ assert.equal(result[0]!['modalContentFooter'], undefined)
2448
+ })
2449
+
2450
+ it('flips _hasModal so the modal slot emits even without other chrome', () => {
2451
+ const a = Action.make('save').modalContentFooter([Text.make('Hi')])
2452
+ assert.equal(a.hasModal(), true)
2453
+ })
2454
+
2455
+ it('inner Action `.visible(false)` rules drop the action from the resolved slot', async () => {
2456
+ const result = await resolveSchema([
2457
+ Action.make('save').modalContentFooter([
2458
+ Action.make('learnMore').href('https://example.com').visible(true),
2459
+ Action.make('hidden').href('/x').visible(false),
2460
+ ]),
2461
+ ])
2462
+ const footer = result[0]!['modalContentFooter'] as Array<Record<string, unknown>> | undefined
2463
+ assert.equal(footer?.length, 1)
2464
+ assert.equal(footer![0]!['name'], 'learnMore')
2465
+ })
2466
+ })
2467
+
2422
2468
  describe('Filament v5 alias setters', () => {
2423
2469
  it('modalSubmitActionLabel routes to modalSubmitLabel', () => {
2424
2470
  const m = modal(Action.make('a').modalSubmitActionLabel('Apply'))
@@ -2445,6 +2491,7 @@ describe('Action modal chrome extras (audit gap #2)', () => {
2445
2491
  (a: Action) => a.modalAlignment('end'),
2446
2492
  (a: Action) => a.modalIconColor('info'),
2447
2493
  (a: Action) => a.modalCloseButton(),
2494
+ (a: Action) => a.modalContentFooter([Text.make('x')]),
2448
2495
  ]) {
2449
2496
  const a = customise(Action.make('a'))
2450
2497
  assert.notEqual(modal(a), undefined, 'modal slot must be present')
@@ -524,6 +524,7 @@ export interface ActionModalMeta {
524
524
  closeButton?: boolean
525
525
  }
526
526
 
527
+
527
528
  export interface ActionMeta extends ElementMeta {
528
529
  type: 'action'
529
530
  name: string
@@ -556,6 +557,13 @@ export interface ActionMeta extends ElementMeta {
556
557
  * the `modalXxx` builders ran. The fields themselves arrive on
557
558
  * `meta.children` via the schema resolver. */
558
559
  modal?: ActionModalMeta
560
+ /** Resolved Elements stamped by `resolveSchema` after `toMeta()` when
561
+ * `.modalContentFooter([…])` was called. Renderer mounts them between
562
+ * the form body and the Cancel/Submit footer — useful for an inline
563
+ * Alert, summary text, or auxiliary Action that lives alongside the
564
+ * primary submit. Mirrors `Section.afterHeader`'s parallel-slot
565
+ * pattern; not populated when the setter wasn't used. */
566
+ modalContentFooter?: Array<Record<string, unknown>>
559
567
  /** Color preset — drives button colors at render time. `destructive`
560
568
  * coincides with `destructive: true` (kept for back-compat). */
561
569
  color?: ActionColor
@@ -662,6 +670,10 @@ export class Action extends Element {
662
670
  protected _modalAutofocus?: boolean
663
671
  protected _modalAlignment?: ActionModalAlignment
664
672
  protected _modalCloseButton = false
673
+ // Filament v5 — auxiliary Elements rendered between the modal body
674
+ // and the Cancel/Submit footer. Resolved by `resolveSchema` after
675
+ // `toMeta()` (parallel-slot pattern, mirrors `Section.afterHeader`).
676
+ protected _modalContentFooter?: Element[]
665
677
 
666
678
  // Trigger variants & cosmetics
667
679
  protected _color?: ActionColor
@@ -1943,6 +1955,29 @@ export class Action extends Element {
1943
1955
  return this
1944
1956
  }
1945
1957
 
1958
+ /**
1959
+ * Auxiliary Elements rendered between the modal body and the
1960
+ * Cancel/Submit footer. Useful for an inline `Alert` summarising
1961
+ * the consequence of the action, supplemental `Text` / `Heading`,
1962
+ * or a secondary `Action` (e.g. a "Learn more" link) that sits
1963
+ * alongside the primary submit. Resolved through the standard
1964
+ * walker so any `.visible() / .disabled()` rules on inner Actions
1965
+ * evaluate the same way as anywhere else.
1966
+ *
1967
+ * Mirrors `Section.afterHeader([Action…])`'s parallel-slot pattern;
1968
+ * unlike `afterHeader`, this slot accepts any Element type since
1969
+ * non-Action chrome (alerts, copy) is the documented use case in
1970
+ * Filament v5's `modalContentFooter` API.
1971
+ */
1972
+ modalContentFooter(elements: Element[]): this {
1973
+ this._modalContentFooter = elements
1974
+ this._hasModal = true
1975
+ return this
1976
+ }
1977
+
1978
+ /** Read-only accessor used by `resolveSchema` to walk the slot. */
1979
+ getModalContentFooter(): Element[] | undefined { return this._modalContentFooter }
1980
+
1946
1981
  // ─── Link / form modes ────────────────────────────────
1947
1982
 
1948
1983
  /**