@judo/components 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 (133) hide show
  1. package/LICENSE +277 -0
  2. package/README.md +200 -0
  3. package/dist/FlexRenderer-0KCxU9QU.js +1612 -0
  4. package/dist/FlexRenderer-0KCxU9QU.js.map +1 -0
  5. package/dist/FormContainerRenderer-B8H4kyz0.js +67 -0
  6. package/dist/FormContainerRenderer-B8H4kyz0.js.map +1 -0
  7. package/dist/FormContainerRenderer-CtuXP8jP.js +3 -0
  8. package/dist/TableContainerRenderer-gKBlsD4S.js +127 -0
  9. package/dist/TableContainerRenderer-gKBlsD4S.js.map +1 -0
  10. package/dist/TableContainerRenderer-qbzKI1Cd.js +2 -0
  11. package/dist/ViewContainerRenderer-7Cx4fcLp.js +3 -0
  12. package/dist/ViewContainerRenderer-DCRaE_dq.js +132 -0
  13. package/dist/ViewContainerRenderer-DCRaE_dq.js.map +1 -0
  14. package/dist/containers/FormContainerRenderer.d.ts +11 -0
  15. package/dist/containers/FormContainerRenderer.d.ts.map +1 -0
  16. package/dist/containers/PageRenderer.d.ts +9 -0
  17. package/dist/containers/PageRenderer.d.ts.map +1 -0
  18. package/dist/containers/TableContainerRenderer.d.ts +11 -0
  19. package/dist/containers/TableContainerRenderer.d.ts.map +1 -0
  20. package/dist/containers/ViewContainerRenderer.d.ts +12 -0
  21. package/dist/containers/ViewContainerRenderer.d.ts.map +1 -0
  22. package/dist/dialogs/LinkSelectorDialog.d.ts +21 -0
  23. package/dist/dialogs/LinkSelectorDialog.d.ts.map +1 -0
  24. package/dist/errors/ContainerErrorBoundary.d.ts +42 -0
  25. package/dist/errors/ContainerErrorBoundary.d.ts.map +1 -0
  26. package/dist/errors/index.d.ts +2 -0
  27. package/dist/errors/index.d.ts.map +1 -0
  28. package/dist/find-on-init-action-C5CqxQaH.js +7727 -0
  29. package/dist/find-on-init-action-C5CqxQaH.js.map +1 -0
  30. package/dist/hooks/use-file-handling.d.ts +79 -0
  31. package/dist/hooks/use-file-handling.d.ts.map +1 -0
  32. package/dist/hooks/use-page-title.d.ts +23 -0
  33. package/dist/hooks/use-page-title.d.ts.map +1 -0
  34. package/dist/hooks/use-table-data.d.ts +77 -0
  35. package/dist/hooks/use-table-data.d.ts.map +1 -0
  36. package/dist/index.css +2 -0
  37. package/dist/index.d.ts +44 -0
  38. package/dist/index.d.ts.map +1 -0
  39. package/dist/index.js +296 -0
  40. package/dist/index.js.map +1 -0
  41. package/dist/inputs/BinaryInputComponent.d.ts +15 -0
  42. package/dist/inputs/BinaryInputComponent.d.ts.map +1 -0
  43. package/dist/inputs/CheckboxComponent.d.ts +14 -0
  44. package/dist/inputs/CheckboxComponent.d.ts.map +1 -0
  45. package/dist/inputs/DateInputComponent.d.ts +14 -0
  46. package/dist/inputs/DateInputComponent.d.ts.map +1 -0
  47. package/dist/inputs/DateTimeInputComponent.d.ts +14 -0
  48. package/dist/inputs/DateTimeInputComponent.d.ts.map +1 -0
  49. package/dist/inputs/EnumerationComboComponent.d.ts +20 -0
  50. package/dist/inputs/EnumerationComboComponent.d.ts.map +1 -0
  51. package/dist/inputs/EnumerationRadioComponent.d.ts +22 -0
  52. package/dist/inputs/EnumerationRadioComponent.d.ts.map +1 -0
  53. package/dist/inputs/EnumerationToggleButtonbarComponent.d.ts +23 -0
  54. package/dist/inputs/EnumerationToggleButtonbarComponent.d.ts.map +1 -0
  55. package/dist/inputs/InputRenderer.d.ts +11 -0
  56. package/dist/inputs/InputRenderer.d.ts.map +1 -0
  57. package/dist/inputs/NumericInputComponent.d.ts +14 -0
  58. package/dist/inputs/NumericInputComponent.d.ts.map +1 -0
  59. package/dist/inputs/PasswordInputComponent.d.ts +14 -0
  60. package/dist/inputs/PasswordInputComponent.d.ts.map +1 -0
  61. package/dist/inputs/SwitchComponent.d.ts +14 -0
  62. package/dist/inputs/SwitchComponent.d.ts.map +1 -0
  63. package/dist/inputs/TextAreaComponent.d.ts +14 -0
  64. package/dist/inputs/TextAreaComponent.d.ts.map +1 -0
  65. package/dist/inputs/TextInputComponent.d.ts +19 -0
  66. package/dist/inputs/TextInputComponent.d.ts.map +1 -0
  67. package/dist/inputs/TimeInputComponent.d.ts +14 -0
  68. package/dist/inputs/TimeInputComponent.d.ts.map +1 -0
  69. package/dist/renderers/ButtonGroupRenderer.d.ts +10 -0
  70. package/dist/renderers/ButtonGroupRenderer.d.ts.map +1 -0
  71. package/dist/renderers/FlexRenderer.d.ts +13 -0
  72. package/dist/renderers/FlexRenderer.d.ts.map +1 -0
  73. package/dist/renderers/FormattedRenderer.d.ts +12 -0
  74. package/dist/renderers/FormattedRenderer.d.ts.map +1 -0
  75. package/dist/renderers/FrameRenderer.d.ts +17 -0
  76. package/dist/renderers/FrameRenderer.d.ts.map +1 -0
  77. package/dist/renderers/IconRenderer.d.ts +41 -0
  78. package/dist/renderers/IconRenderer.d.ts.map +1 -0
  79. package/dist/renderers/InlineButtonGroupRenderer.d.ts +22 -0
  80. package/dist/renderers/InlineButtonGroupRenderer.d.ts.map +1 -0
  81. package/dist/renderers/LinkRenderer.d.ts +17 -0
  82. package/dist/renderers/LinkRenderer.d.ts.map +1 -0
  83. package/dist/renderers/PageHeader.d.ts +13 -0
  84. package/dist/renderers/PageHeader.d.ts.map +1 -0
  85. package/dist/renderers/RowActionCell.d.ts +28 -0
  86. package/dist/renderers/RowActionCell.d.ts.map +1 -0
  87. package/dist/renderers/StandaloneButtonRenderer.d.ts +16 -0
  88. package/dist/renderers/StandaloneButtonRenderer.d.ts.map +1 -0
  89. package/dist/renderers/SubThemeWrapper.d.ts +22 -0
  90. package/dist/renderers/SubThemeWrapper.d.ts.map +1 -0
  91. package/dist/renderers/TabControllerRenderer.d.ts +10 -0
  92. package/dist/renderers/TabControllerRenderer.d.ts.map +1 -0
  93. package/dist/renderers/TableRenderer.d.ts +10 -0
  94. package/dist/renderers/TableRenderer.d.ts.map +1 -0
  95. package/dist/renderers/TableToolbar.d.ts +47 -0
  96. package/dist/renderers/TableToolbar.d.ts.map +1 -0
  97. package/dist/renderers/VisualElementRenderer.d.ts +17 -0
  98. package/dist/renderers/VisualElementRenderer.d.ts.map +1 -0
  99. package/dist/utils/alignment-mappers.d.ts +17 -0
  100. package/dist/utils/alignment-mappers.d.ts.map +1 -0
  101. package/dist/utils/build-mask-string.d.ts +31 -0
  102. package/dist/utils/build-mask-string.d.ts.map +1 -0
  103. package/dist/utils/build-query-customizer.d.ts +35 -0
  104. package/dist/utils/build-query-customizer.d.ts.map +1 -0
  105. package/dist/utils/destructive-action-utils.d.ts +17 -0
  106. package/dist/utils/destructive-action-utils.d.ts.map +1 -0
  107. package/dist/utils/find-action-by-definition.d.ts +26 -0
  108. package/dist/utils/find-action-by-definition.d.ts.map +1 -0
  109. package/dist/utils/find-on-init-action.d.ts +12 -0
  110. package/dist/utils/find-on-init-action.d.ts.map +1 -0
  111. package/dist/utils/find-visual-element.d.ts +18 -0
  112. package/dist/utils/find-visual-element.d.ts.map +1 -0
  113. package/dist/utils/flex-layout.d.ts +104 -0
  114. package/dist/utils/flex-layout.d.ts.map +1 -0
  115. package/dist/utils/get-visible-buttons.d.ts +33 -0
  116. package/dist/utils/get-visible-buttons.d.ts.map +1 -0
  117. package/dist/utils/icon-adornment.d.ts +13 -0
  118. package/dist/utils/icon-adornment.d.ts.map +1 -0
  119. package/dist/utils/mdi-alias-map.d.ts +44 -0
  120. package/dist/utils/mdi-alias-map.d.ts.map +1 -0
  121. package/dist/utils/mdi-alias-map.generated.d.ts +10 -0
  122. package/dist/utils/mdi-alias-map.generated.d.ts.map +1 -0
  123. package/dist/utils/resolve-container-type.d.ts +11 -0
  124. package/dist/utils/resolve-container-type.d.ts.map +1 -0
  125. package/dist/utils/singleton-access.d.ts +25 -0
  126. package/dist/utils/singleton-access.d.ts.map +1 -0
  127. package/dist/utils/table-column-utils.d.ts +75 -0
  128. package/dist/utils/table-column-utils.d.ts.map +1 -0
  129. package/dist/utils/table-filter-utils.d.ts +14 -0
  130. package/dist/utils/table-filter-utils.d.ts.map +1 -0
  131. package/dist/utils/table-sort-utils.d.ts +24 -0
  132. package/dist/utils/table-sort-utils.d.ts.map +1 -0
  133. package/package.json +84 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CheckboxComponent.d.ts","sourceRoot":"","sources":["../../src/inputs/CheckboxComponent.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,IAAI,eAAe,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAI1E,MAAM,WAAW,sBAAsB;IACtC,OAAO,EAAE,eAAe,GAAG,KAAK,CAAC;IACjC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACpC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,EACjC,OAAO,EACP,QAAQ,EACR,KAAa,EACb,QAAQ,EACR,KAAK,EACL,QAAQ,GACR,EAAE,sBAAsB,2CAsBxB"}
@@ -0,0 +1,14 @@
1
+ import { DateInput, Input } from '@judo/model-api';
2
+ export interface DateInputComponentProps {
3
+ element: DateInput | Input;
4
+ readOnly?: boolean;
5
+ value?: Date | string | null;
6
+ onChange?: (value: Date | null) => void;
7
+ error?: string;
8
+ disabled?: boolean;
9
+ }
10
+ /**
11
+ * Date input component.
12
+ */
13
+ export declare function DateInputComponent({ element, readOnly, value, onChange, error, disabled }: DateInputComponentProps): import("react/jsx-runtime").JSX.Element;
14
+ //# sourceMappingURL=DateInputComponent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DateInputComponent.d.ts","sourceRoot":"","sources":["../../src/inputs/DateInputComponent.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAexD,MAAM,WAAW,uBAAuB;IACvC,OAAO,EAAE,SAAS,GAAG,KAAK,CAAC;IAC3B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,IAAI,GAAG,MAAM,GAAG,IAAI,CAAC;IAC7B,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,IAAI,GAAG,IAAI,KAAK,IAAI,CAAC;IACxC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;CACnB;AAqBD;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,uBAAuB,2CA8ClH"}
@@ -0,0 +1,14 @@
1
+ import { DateTimeInput, Input } from '@judo/model-api';
2
+ export interface DateTimeInputComponentProps {
3
+ element: DateTimeInput | Input;
4
+ readOnly?: boolean;
5
+ value?: Date | string | null;
6
+ onChange?: (value: Date | null) => void;
7
+ error?: string;
8
+ disabled?: boolean;
9
+ }
10
+ /**
11
+ * DateTime input component.
12
+ */
13
+ export declare function DateTimeInputComponent({ element, readOnly, value, onChange, error, disabled, }: DateTimeInputComponentProps): import("react/jsx-runtime").JSX.Element;
14
+ //# sourceMappingURL=DateTimeInputComponent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DateTimeInputComponent.d.ts","sourceRoot":"","sources":["../../src/inputs/DateTimeInputComponent.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAM5D,MAAM,WAAW,2BAA2B;IAC3C,OAAO,EAAE,aAAa,GAAG,KAAK,CAAC;IAC/B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,IAAI,GAAG,MAAM,GAAG,IAAI,CAAC;IAC7B,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,IAAI,GAAG,IAAI,KAAK,IAAI,CAAC;IACxC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;CACnB;AAiCD;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,EACtC,OAAO,EACP,QAAQ,EACR,KAAK,EACL,QAAQ,EACR,KAAK,EACL,QAAQ,GACR,EAAE,2BAA2B,2CAuD7B"}
@@ -0,0 +1,20 @@
1
+ import { EnumerationCombo, Input } from '@judo/model-api';
2
+ export interface EnumerationComboComponentProps {
3
+ element: EnumerationCombo | Input;
4
+ readOnly?: boolean;
5
+ value?: string;
6
+ onChange?: (value: string) => void;
7
+ error?: string;
8
+ disabled?: boolean;
9
+ options?: Array<{
10
+ value: string;
11
+ label: string;
12
+ }>;
13
+ /** When true, allows empty selection and shows a clear option. @default false */
14
+ nullable?: boolean;
15
+ }
16
+ /**
17
+ * Enumeration combo (select) component.
18
+ */
19
+ export declare function EnumerationComboComponent({ element, readOnly, value, onChange, error, disabled, options, nullable, }: EnumerationComboComponentProps): import("react/jsx-runtime").JSX.Element;
20
+ //# sourceMappingURL=EnumerationComboComponent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EnumerationComboComponent.d.ts","sourceRoot":"","sources":["../../src/inputs/EnumerationComboComponent.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAI/D,MAAM,WAAW,8BAA8B;IAC9C,OAAO,EAAE,gBAAgB,GAAG,KAAK,CAAC;IAClC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAClD,iFAAiF;IACjF,QAAQ,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,EACzC,OAAO,EACP,QAAQ,EACR,KAAU,EACV,QAAQ,EACR,KAAK,EACL,QAAQ,EACR,OAAY,EACZ,QAAgB,GAChB,EAAE,8BAA8B,2CAiChC"}
@@ -0,0 +1,22 @@
1
+ import { EnumerationRadio, Input } from '@judo/model-api';
2
+ export interface EnumerationRadioComponentProps {
3
+ element: EnumerationRadio | Input;
4
+ readOnly?: boolean;
5
+ value?: string;
6
+ onChange?: (value: string) => void;
7
+ error?: string;
8
+ disabled?: boolean;
9
+ options?: Array<{
10
+ value: string;
11
+ label: string;
12
+ }>;
13
+ /** Layout orientation of radio buttons. @default "vertical" */
14
+ orientation?: "horizontal" | "vertical";
15
+ /** When true, allows de-selection by clicking a selected radio. @default false */
16
+ nullable?: boolean;
17
+ }
18
+ /**
19
+ * Enumeration radio group component.
20
+ */
21
+ export declare function EnumerationRadioComponent({ element, readOnly, value, onChange, error, disabled, options, orientation, nullable, }: EnumerationRadioComponentProps): import("react/jsx-runtime").JSX.Element;
22
+ //# sourceMappingURL=EnumerationRadioComponent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EnumerationRadioComponent.d.ts","sourceRoot":"","sources":["../../src/inputs/EnumerationRadioComponent.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAI/D,MAAM,WAAW,8BAA8B;IAC9C,OAAO,EAAE,gBAAgB,GAAG,KAAK,CAAC;IAClC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAClD,+DAA+D;IAC/D,WAAW,CAAC,EAAE,YAAY,GAAG,UAAU,CAAC;IACxC,kFAAkF;IAClF,QAAQ,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,EACzC,OAAO,EACP,QAAQ,EACR,KAAU,EACV,QAAQ,EACR,KAAK,EACL,QAAQ,EACR,OAAY,EACZ,WAAwB,EACxB,QAAgB,GAChB,EAAE,8BAA8B,2CA6BhC"}
@@ -0,0 +1,23 @@
1
+ import { EnumerationToggleButtonbar, Input } from '@judo/model-api';
2
+ export interface EnumerationToggleButtonbarComponentProps {
3
+ element: EnumerationToggleButtonbar | Input;
4
+ readOnly?: boolean;
5
+ value?: string;
6
+ onChange?: (value: string) => void;
7
+ error?: string;
8
+ disabled?: boolean;
9
+ options?: Array<{
10
+ value: string;
11
+ label: string;
12
+ }>;
13
+ /** Layout orientation of toggle buttons. @default "horizontal" */
14
+ orientation?: "horizontal" | "vertical";
15
+ /** When true, allows de-selection by clicking a selected toggle. @default false */
16
+ nullable?: boolean;
17
+ }
18
+ /**
19
+ * Enumeration toggle button bar component.
20
+ * Renders a MUI ToggleButtonGroup with exclusive selection.
21
+ */
22
+ export declare function EnumerationToggleButtonbarComponent({ element, readOnly, value, onChange, error, disabled, options, orientation, nullable, }: EnumerationToggleButtonbarComponentProps): import("react/jsx-runtime").JSX.Element;
23
+ //# sourceMappingURL=EnumerationToggleButtonbarComponent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EnumerationToggleButtonbarComponent.d.ts","sourceRoot":"","sources":["../../src/inputs/EnumerationToggleButtonbarComponent.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,0BAA0B,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAIzE,MAAM,WAAW,wCAAwC;IACxD,OAAO,EAAE,0BAA0B,GAAG,KAAK,CAAC;IAC5C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAClD,kEAAkE;IAClE,WAAW,CAAC,EAAE,YAAY,GAAG,UAAU,CAAC;IACxC,mFAAmF;IACnF,QAAQ,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;;GAGG;AACH,wBAAgB,mCAAmC,CAAC,EACnD,OAAO,EACP,QAAQ,EACR,KAAU,EACV,QAAQ,EACR,KAAK,EACL,QAAQ,EACR,OAAY,EACZ,WAA0B,EAC1B,QAAgB,GAChB,EAAE,wCAAwC,2CAuC1C"}
@@ -0,0 +1,11 @@
1
+ import { Input } from '@judo/model-api';
2
+ export interface InputRendererProps {
3
+ element: Input;
4
+ readOnly?: boolean;
5
+ }
6
+ /**
7
+ * Dispatcher to specific input components based on element type.
8
+ * Connects data binding via useVisualBinding hook.
9
+ */
10
+ export declare function InputRenderer({ element, readOnly }: InputRendererProps): import("react/jsx-runtime").JSX.Element | null;
11
+ //# sourceMappingURL=InputRenderer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InputRenderer.d.ts","sourceRoot":"","sources":["../../src/inputs/InputRenderer.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAkE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AA4B7G,MAAM,WAAW,kBAAkB;IAClC,OAAO,EAAE,KAAK,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,kBAAkB,kDA8HtE"}
@@ -0,0 +1,14 @@
1
+ import { Input, NumericInput } from '@judo/model-api';
2
+ export interface NumericInputComponentProps {
3
+ element: NumericInput | Input;
4
+ readOnly?: boolean;
5
+ value?: number | null;
6
+ onChange?: (value: number | null) => void;
7
+ error?: string;
8
+ disabled?: boolean;
9
+ }
10
+ /**
11
+ * Numeric input component.
12
+ */
13
+ export declare function NumericInputComponent({ element, readOnly, value, onChange, error, disabled, }: NumericInputComponentProps): import("react/jsx-runtime").JSX.Element;
14
+ //# sourceMappingURL=NumericInputComponent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NumericInputComponent.d.ts","sourceRoot":"","sources":["../../src/inputs/NumericInputComponent.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAK3D,MAAM,WAAW,0BAA0B;IAC1C,OAAO,EAAE,YAAY,GAAG,KAAK,CAAC;IAC9B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IAC1C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,EACrC,OAAO,EACP,QAAQ,EACR,KAAK,EACL,QAAQ,EACR,KAAK,EACL,QAAQ,GACR,EAAE,0BAA0B,2CA4C5B"}
@@ -0,0 +1,14 @@
1
+ import { Input, PasswordInput } from '@judo/model-api';
2
+ export interface PasswordInputComponentProps {
3
+ element: PasswordInput | Input;
4
+ readOnly?: boolean;
5
+ value?: string;
6
+ onChange?: (value: string) => void;
7
+ error?: string;
8
+ disabled?: boolean;
9
+ }
10
+ /**
11
+ * Password input component with visibility toggle.
12
+ */
13
+ export declare function PasswordInputComponent({ element, readOnly, value, onChange, error, disabled, }: PasswordInputComponentProps): import("react/jsx-runtime").JSX.Element;
14
+ //# sourceMappingURL=PasswordInputComponent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PasswordInputComponent.d.ts","sourceRoot":"","sources":["../../src/inputs/PasswordInputComponent.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAQ5D,MAAM,WAAW,2BAA2B;IAC3C,OAAO,EAAE,aAAa,GAAG,KAAK,CAAC;IAC/B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,EACtC,OAAO,EACP,QAAQ,EACR,KAAU,EACV,QAAQ,EACR,KAAK,EACL,QAAQ,GACR,EAAE,2BAA2B,2CAwC7B"}
@@ -0,0 +1,14 @@
1
+ import { Input, Switch as SwitchElement } from '@judo/model-api';
2
+ export interface SwitchComponentProps {
3
+ element: SwitchElement | Input;
4
+ readOnly?: boolean;
5
+ value?: boolean;
6
+ onChange?: (value: boolean) => void;
7
+ error?: string;
8
+ disabled?: boolean;
9
+ }
10
+ /**
11
+ * Switch input component.
12
+ */
13
+ export declare function SwitchComponent({ element, readOnly, value, onChange, error, disabled }: SwitchComponentProps): import("react/jsx-runtime").JSX.Element;
14
+ //# sourceMappingURL=SwitchComponent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SwitchComponent.d.ts","sourceRoot":"","sources":["../../src/inputs/SwitchComponent.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAItE,MAAM,WAAW,oBAAoB;IACpC,OAAO,EAAE,aAAa,GAAG,KAAK,CAAC;IAC/B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACpC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,oBAAoB,2CAsBpH"}
@@ -0,0 +1,14 @@
1
+ import { Input, TextArea } from '@judo/model-api';
2
+ export interface TextAreaComponentProps {
3
+ element: TextArea | Input;
4
+ readOnly?: boolean;
5
+ value?: string;
6
+ onChange?: (value: string) => void;
7
+ error?: string;
8
+ disabled?: boolean;
9
+ }
10
+ /**
11
+ * TextArea component.
12
+ */
13
+ export declare function TextAreaComponent({ element, readOnly, value, onChange, error, disabled, }: TextAreaComponentProps): import("react/jsx-runtime").JSX.Element;
14
+ //# sourceMappingURL=TextAreaComponent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TextAreaComponent.d.ts","sourceRoot":"","sources":["../../src/inputs/TextAreaComponent.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAKvD,MAAM,WAAW,sBAAsB;IACtC,OAAO,EAAE,QAAQ,GAAG,KAAK,CAAC;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,EACjC,OAAO,EACP,QAAQ,EACR,KAAU,EACV,QAAQ,EACR,KAAK,EACL,QAAQ,GACR,EAAE,sBAAsB,2CAuCxB"}
@@ -0,0 +1,19 @@
1
+ import { Input, TextInput } from '@judo/model-api';
2
+ export interface TextInputComponentProps {
3
+ element: TextInput | Input;
4
+ readOnly?: boolean;
5
+ value?: string;
6
+ onChange?: (value: string) => void;
7
+ error?: string;
8
+ disabled?: boolean;
9
+ }
10
+ /**
11
+ * Text input component.
12
+ *
13
+ * When the model element has `isTypeAheadField: true` and a matching
14
+ * typeahead provider is registered in CustomizationsConfig, renders
15
+ * as a MUI Autocomplete with freeSolo mode for suggestion support.
16
+ * Otherwise, renders a plain TextField.
17
+ */
18
+ export declare function TextInputComponent({ element, readOnly, value, onChange, error, disabled, }: TextInputComponentProps): import("react/jsx-runtime").JSX.Element;
19
+ //# sourceMappingURL=TextInputComponent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TextInputComponent.d.ts","sourceRoot":"","sources":["../../src/inputs/TextInputComponent.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAMxD,MAAM,WAAW,uBAAuB;IACvC,OAAO,EAAE,SAAS,GAAG,KAAK,CAAC;IAC3B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,EAClC,OAAO,EACP,QAAQ,EACR,KAAU,EACV,QAAQ,EACR,KAAK,EACL,QAAQ,GACR,EAAE,uBAAuB,2CAsDzB"}
@@ -0,0 +1,14 @@
1
+ import { Input, TimeInput } from '@judo/model-api';
2
+ export interface TimeInputComponentProps {
3
+ element: TimeInput | Input;
4
+ readOnly?: boolean;
5
+ value?: string | null;
6
+ onChange?: (value: string | null) => void;
7
+ error?: string;
8
+ disabled?: boolean;
9
+ }
10
+ /**
11
+ * Time input component.
12
+ */
13
+ export declare function TimeInputComponent({ element, readOnly, value, onChange, error, disabled }: TimeInputComponentProps): import("react/jsx-runtime").JSX.Element;
14
+ //# sourceMappingURL=TimeInputComponent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TimeInputComponent.d.ts","sourceRoot":"","sources":["../../src/inputs/TimeInputComponent.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAKxD,MAAM,WAAW,uBAAuB;IACvC,OAAO,EAAE,SAAS,GAAG,KAAK,CAAC;IAC3B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IAC1C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,uBAAuB,2CA4BlH"}
@@ -0,0 +1,10 @@
1
+ import { Action } from '@judo/actions';
2
+ import { ButtonGroup as ButtonGroupElement, PageDefinition } from '@judo/model-api';
3
+ export interface ButtonGroupRendererProps {
4
+ element: ButtonGroupElement;
5
+ page?: PageDefinition;
6
+ editMode?: boolean;
7
+ onDispatch?: (action: Action) => Promise<unknown>;
8
+ }
9
+ export declare function ButtonGroupRenderer({ element, page, editMode, onDispatch }: ButtonGroupRendererProps): import("react/jsx-runtime").JSX.Element | null;
10
+ //# sourceMappingURL=ButtonGroupRenderer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ButtonGroupRenderer.d.ts","sourceRoot":"","sources":["../../src/renderers/ButtonGroupRenderer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAI5C,OAAO,KAAK,EAA2B,WAAW,IAAI,kBAAkB,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAQlH,MAAM,WAAW,wBAAwB;IACxC,OAAO,EAAE,kBAAkB,CAAC;IAC5B,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CAClD;AAeD,wBAAgB,mBAAmB,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,wBAAwB,kDAuCpG"}
@@ -0,0 +1,13 @@
1
+ import { Flex } from '@judo/model-api';
2
+ export interface FlexRendererProps {
3
+ element: Flex;
4
+ readOnly?: boolean;
5
+ }
6
+ /**
7
+ * Renderer for Flex layout containers.
8
+ * - Horizontal layouts: Use MUI Grid2 for responsive 12-column grid layout
9
+ * - Vertical layouts: Use MUI Stack with force-full-width class
10
+ * Each child's `col` property (1-12) is scaled based on parent's column span.
11
+ */
12
+ export declare function FlexRenderer({ element, readOnly }: FlexRendererProps): import("react/jsx-runtime").JSX.Element;
13
+ //# sourceMappingURL=FlexRenderer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FlexRenderer.d.ts","sourceRoot":"","sources":["../../src/renderers/FlexRenderer.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,IAAI,EAAiB,MAAM,iBAAiB,CAAC;AAO3D,OAAO,eAAe,CAAC;AAEvB,MAAM,WAAW,iBAAiB;IACjC,OAAO,EAAE,IAAI,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,iBAAiB,2CAsDpE"}
@@ -0,0 +1,12 @@
1
+ import { Formatted } from '@judo/model-api';
2
+ export interface FormattedRendererProps {
3
+ element: Formatted;
4
+ readOnly?: boolean;
5
+ }
6
+ /**
7
+ * Renderer for Formatted visual elements.
8
+ * Displays attribute value using a sprintf-style format string.
9
+ * Uses useVisualBinding to read from the data store.
10
+ */
11
+ export declare function FormattedRenderer({ element }: FormattedRendererProps): import("react/jsx-runtime").JSX.Element | null;
12
+ //# sourceMappingURL=FormattedRenderer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormattedRenderer.d.ts","sourceRoot":"","sources":["../../src/renderers/FormattedRenderer.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAGjD,MAAM,WAAW,sBAAsB;IACtC,OAAO,EAAE,SAAS,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACnB;AAkCD;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,OAAO,EAAE,EAAE,sBAAsB,kDAmBpE"}
@@ -0,0 +1,17 @@
1
+ import { Frame, Icon } from '@judo/model-api';
2
+ import { ReactNode } from 'react';
3
+ export interface FrameRendererProps {
4
+ frame: Frame;
5
+ children: ReactNode;
6
+ /** Optional label for the card header */
7
+ label?: string;
8
+ /** Optional icon for the card header */
9
+ icon?: Icon;
10
+ }
11
+ /**
12
+ * Renderer for Frame (card/panel) styling.
13
+ * Renders a Paper with optional header containing icon and label.
14
+ * Includes subtle hover lift effect and fade-in entrance animation.
15
+ */
16
+ export declare function FrameRenderer({ frame, children, label, icon }: FrameRendererProps): import("react/jsx-runtime").JSX.Element;
17
+ //# sourceMappingURL=FrameRenderer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FrameRenderer.d.ts","sourceRoot":"","sources":["../../src/renderers/FrameRenderer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAEnD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGvC,MAAM,WAAW,kBAAkB;IAClC,KAAK,EAAE,KAAK,CAAC;IACb,QAAQ,EAAE,SAAS,CAAC;IACpB,yCAAyC;IACzC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,wCAAwC;IACxC,IAAI,CAAC,EAAE,IAAI,CAAC;CACZ;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,kBAAkB,2CAyCjF"}
@@ -0,0 +1,41 @@
1
+ import { Icon } from '@judo/model-api';
2
+ export interface IconRendererProps {
3
+ /** Icon model object containing iconName, or a string icon name */
4
+ icon: Icon | string | undefined | null;
5
+ /** Additional CSS classes (e.g., 'mdi-spin', 'mdi-rotate-90') */
6
+ className?: string;
7
+ /** Icon size - maps to font-size */
8
+ size?: "small" | "medium" | "large" | number;
9
+ /** Icon color - inherits from parent by default */
10
+ color?: string;
11
+ }
12
+ /**
13
+ * Renders icons using MDI webfont classes.
14
+ *
15
+ * The icon is rendered as a <span> with MDI CSS classes:
16
+ * - `mdi` - base class required for all icons
17
+ * - `mdi-{iconName}` - specific icon (e.g., `mdi-home`, `mdi-account`)
18
+ *
19
+ * Icon name aliases are automatically resolved to canonical names using
20
+ * the MDI metadata (e.g., `note-add` -> `note-plus`).
21
+ *
22
+ * Helper classes can be added via className prop:
23
+ * - Rotation: `mdi-rotate-45`, `mdi-rotate-90`, `mdi-rotate-180`, etc.
24
+ * - Flip: `mdi-flip-h`, `mdi-flip-v`
25
+ * - Spin: `mdi-spin` (for loading indicators)
26
+ *
27
+ * @example
28
+ * // Using Icon object from model
29
+ * <IconRenderer icon={{ iconName: 'home' }} />
30
+ *
31
+ * // Using string directly
32
+ * <IconRenderer icon="account" />
33
+ *
34
+ * // Using alias - automatically resolved
35
+ * <IconRenderer icon="note-add" /> // renders as mdi-note-plus
36
+ *
37
+ * // With helper classes
38
+ * <IconRenderer icon="loading" className="mdi-spin" />
39
+ */
40
+ export declare function IconRenderer({ icon, className, size, color }: IconRendererProps): import("react/jsx-runtime").JSX.Element | null;
41
+ //# sourceMappingURL=IconRenderer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IconRenderer.d.ts","sourceRoot":"","sources":["../../src/renderers/IconRenderer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAI5C,MAAM,WAAW,iBAAiB;IACjC,mEAAmE;IACnE,IAAI,EAAE,IAAI,GAAG,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;IACvC,iEAAiE;IACjE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oCAAoC;IACpC,IAAI,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,MAAM,CAAC;IAC7C,mDAAmD;IACnD,KAAK,CAAC,EAAE,MAAM,CAAC;CACf;AAQD;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAgB,YAAY,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAe,EAAE,KAAK,EAAE,EAAE,iBAAiB,kDA+B1F"}
@@ -0,0 +1,22 @@
1
+ import { Action } from '@judo/actions';
2
+ import { ButtonGroup as ButtonGroupElement, PageDefinition } from '@judo/model-api';
3
+ export interface InlineButtonGroupRendererProps {
4
+ element: ButtonGroupElement;
5
+ /** Optional page override (uses context if not provided) */
6
+ page?: PageDefinition;
7
+ editMode?: boolean;
8
+ /** Optional dispatch override (uses context if not provided) */
9
+ onDispatch?: (action: Action) => Promise<unknown>;
10
+ }
11
+ /**
12
+ * Renderer for inline ButtonGroup elements (within forms/views).
13
+ *
14
+ * Supports `featuredActions` — when set to a number > 0, that many buttons
15
+ * are "extracted" from the dropdown and rendered as inline buttons to the left
16
+ * of the dropdown trigger. Featured buttons and the dropdown are rendered
17
+ * within a single MUI ButtonGroup.
18
+ *
19
+ * When featuredActions is 0 (default), all buttons appear inside a dropdown menu.
20
+ */
21
+ export declare function InlineButtonGroupRenderer({ element, page: pageProp, editMode, onDispatch: onDispatchProp, }: InlineButtonGroupRendererProps): import("react/jsx-runtime").JSX.Element | null;
22
+ //# sourceMappingURL=InlineButtonGroupRenderer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InlineButtonGroupRenderer.d.ts","sourceRoot":"","sources":["../../src/renderers/InlineButtonGroupRenderer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAS5C,OAAO,KAAK,EAA2B,WAAW,IAAI,kBAAkB,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AASlH,MAAM,WAAW,8BAA8B;IAC9C,OAAO,EAAE,kBAAkB,CAAC;IAC5B,4DAA4D;IAC5D,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,gEAAgE;IAChE,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CAClD;AAED;;;;;;;;;GASG;AACH,wBAAgB,yBAAyB,CAAC,EACzC,OAAO,EACP,IAAI,EAAE,QAAQ,EACd,QAAQ,EACR,UAAU,EAAE,cAAc,GAC1B,EAAE,8BAA8B,kDAiHhC"}
@@ -0,0 +1,17 @@
1
+ import { Link, PageDefinition } from '@judo/model-api';
2
+ export interface LinkRendererProps {
3
+ element: Link;
4
+ page?: PageDefinition;
5
+ readOnly?: boolean;
6
+ }
7
+ /**
8
+ * Renderer for Link (autocomplete/relation) elements.
9
+ *
10
+ * Supports:
11
+ * - Typeahead autocomplete with backend fetch (getRelationRange)
12
+ * - Action buttons: View, Set (selector dialog), Unset, Create, Delete
13
+ * - Selector dialog with DataGrid, filtering, pagination
14
+ * - Read-only mode
15
+ */
16
+ export declare function LinkRenderer({ element, page: pageProp, readOnly }: LinkRendererProps): import("react/jsx-runtime").JSX.Element;
17
+ //# sourceMappingURL=LinkRenderer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LinkRenderer.d.ts","sourceRoot":"","sources":["../../src/renderers/LinkRenderer.tsx"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAmC,IAAI,EAAE,cAAc,EAAgB,MAAM,iBAAiB,CAAC;AAyB3G,MAAM,WAAW,iBAAiB;IACjC,OAAO,EAAE,IAAI,CAAC;IACd,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACnB;AAID;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,iBAAiB,2CAstBpF"}
@@ -0,0 +1,13 @@
1
+ import { Action } from '@judo/actions';
2
+ import { PageDefinition } from '@judo/model-api';
3
+ export interface PageHeaderProps {
4
+ page: PageDefinition;
5
+ editMode?: boolean;
6
+ onDispatch?: (action: Action) => Promise<unknown>;
7
+ }
8
+ /**
9
+ * Page header component that displays page title and page-level action button groups.
10
+ * Action button groups come from container.actionButtonGroups.
11
+ */
12
+ export declare function PageHeader({ page, editMode, onDispatch }: PageHeaderProps): import("react/jsx-runtime").JSX.Element | null;
13
+ //# sourceMappingURL=PageHeader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PageHeader.d.ts","sourceRoot":"","sources":["../../src/renderers/PageHeader.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,KAAK,EAAiB,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAKrE,MAAM,WAAW,eAAe;IAC/B,IAAI,EAAE,cAAc,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CAClD;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,eAAe,kDA+CzE"}
@@ -0,0 +1,28 @@
1
+ import { ConfirmDialogOptions } from '@judo/feedback';
2
+ import { Action, Button as ButtonElement, ButtonGroup as ButtonGroupElement, PageDefinition } from '@judo/model-api';
3
+ export interface RowActionCellProps {
4
+ /** Pre-filtered visible buttons for this row */
5
+ visibleButtons: ButtonElement[];
6
+ /** The ButtonGroup element from the model (for featuredActions, testId) */
7
+ buttonGroupElement?: ButtonGroupElement;
8
+ /** Page definition for resolving actions */
9
+ page?: PageDefinition;
10
+ /** Function to dispatch actions with row transfer context */
11
+ dispatchRowAction: (action: Action, rowEntity: unknown) => Promise<void>;
12
+ /** The transfer data for this row */
13
+ rowEntity: unknown;
14
+ /** Optional confirmation function for destructive actions */
15
+ confirm?: (options: ConfirmDialogOptions) => Promise<boolean>;
16
+ }
17
+ /**
18
+ * Renders row action buttons in a table cell with featured/overflow split.
19
+ *
20
+ * Uses the `featuredActions` property from the ButtonGroup model to determine
21
+ * how many buttons are shown inline vs. in a dropdown menu:
22
+ * - featuredActions = 0 (default): auto-CRUD mode — CRUD buttons shown inline,
23
+ * non-CRUD in dropdown. Delete requires `__deleteable === true` on the row.
24
+ * - featuredActions > 0: first N as inline buttons, rest in dropdown
25
+ * - featuredActions >= total: all buttons inline, no dropdown
26
+ */
27
+ export declare function RowActionCell({ visibleButtons, buttonGroupElement, page, dispatchRowAction, rowEntity, confirm, }: RowActionCellProps): import("react/jsx-runtime").JSX.Element | null;
28
+ //# sourceMappingURL=RowActionCell.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RowActionCell.d.ts","sourceRoot":"","sources":["../../src/renderers/RowActionCell.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAE3D,OAAO,KAAK,EACX,MAAM,EACN,MAAM,IAAI,aAAa,EACvB,WAAW,IAAI,kBAAkB,EACjC,cAAc,EACd,MAAM,iBAAiB,CAAC;AAUzB,MAAM,WAAW,kBAAkB;IAClC,gDAAgD;IAChD,cAAc,EAAE,aAAa,EAAE,CAAC;IAChC,2EAA2E;IAC3E,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACxC,4CAA4C;IAC5C,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,6DAA6D;IAC7D,iBAAiB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACzE,qCAAqC;IACrC,SAAS,EAAE,OAAO,CAAC;IACnB,6DAA6D;IAC7D,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,oBAAoB,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CAC9D;AAeD;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAAC,EAC7B,cAAc,EACd,kBAAkB,EAClB,IAAI,EACJ,iBAAiB,EACjB,SAAS,EACT,OAAO,GACP,EAAE,kBAAkB,kDAyHpB"}
@@ -0,0 +1,16 @@
1
+ import { Action } from '@judo/actions';
2
+ import { Button as ButtonElement, PageDefinition } from '@judo/model-api';
3
+ export interface StandaloneButtonRendererProps {
4
+ element: ButtonElement;
5
+ /** Optional page override (uses context if not provided) */
6
+ page?: PageDefinition;
7
+ /** Optional dispatch override (uses context if not provided) */
8
+ onDispatch?: (action: Action) => Promise<unknown>;
9
+ }
10
+ /**
11
+ * Renderer for standalone Button elements (direct children of Flex containers).
12
+ * These are typically relation navigation buttons like "View Matter Table".
13
+ * The button's actionDefinition is matched against page.actions to find the Action to dispatch.
14
+ */
15
+ export declare function StandaloneButtonRenderer({ element, page: pageProp, onDispatch: onDispatchProp, }: StandaloneButtonRendererProps): import("react/jsx-runtime").JSX.Element | null;
16
+ //# sourceMappingURL=StandaloneButtonRenderer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StandaloneButtonRenderer.d.ts","sourceRoot":"","sources":["../../src/renderers/StandaloneButtonRenderer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAI5C,OAAO,KAAK,EAAE,MAAM,IAAI,aAAa,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAO/E,MAAM,WAAW,6BAA6B;IAC7C,OAAO,EAAE,aAAa,CAAC;IACvB,4DAA4D;IAC5D,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,gEAAgE;IAChE,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CAClD;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,EACxC,OAAO,EACP,IAAI,EAAE,QAAQ,EACd,UAAU,EAAE,cAAc,GAC1B,EAAE,6BAA6B,kDAwD/B"}
@@ -0,0 +1,22 @@
1
+ import { VisualElement } from '@judo/model-api';
2
+ import { ReactNode } from 'react';
3
+ export interface SubThemeWrapperProps {
4
+ /** The visual element that may have a subTheme property */
5
+ element: VisualElement;
6
+ /** Optional transfer data passed to the sub-theme hook */
7
+ data?: Record<string, unknown>;
8
+ /** Child elements to render within the scoped theme */
9
+ children: ReactNode;
10
+ }
11
+ /**
12
+ * Wraps children in a scoped MUI ThemeProvider when the element has a `subTheme` set
13
+ * and a matching provider is registered in `CustomizationsConfig.subThemeProviders`.
14
+ *
15
+ * Sub-themes nest naturally: a child element's sub-theme is deep-merged on top of
16
+ * the parent's sub-theme, giving inner themes higher precedence.
17
+ *
18
+ * If `element.subTheme` is not set or no matching provider is found, renders
19
+ * children directly without any wrapper.
20
+ */
21
+ export declare function SubThemeWrapper({ element, data, children }: SubThemeWrapperProps): import("react/jsx-runtime").JSX.Element;
22
+ //# sourceMappingURL=SubThemeWrapper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SubThemeWrapper.d.ts","sourceRoot":"","sources":["../../src/renderers/SubThemeWrapper.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAErD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,MAAM,WAAW,oBAAoB;IACpC,2DAA2D;IAC3D,OAAO,EAAE,aAAa,CAAC;IACvB,0DAA0D;IAC1D,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,uDAAuD;IACvD,QAAQ,EAAE,SAAS,CAAC;CACpB;AAED;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,oBAAoB,2CAYhF"}
@@ -0,0 +1,10 @@
1
+ import { TabController } from '@judo/model-api';
2
+ export interface TabControllerRendererProps {
3
+ element: TabController;
4
+ readOnly?: boolean;
5
+ }
6
+ /**
7
+ * Renderer for TabController elements.
8
+ */
9
+ export declare function TabControllerRenderer({ element, readOnly }: TabControllerRendererProps): import("react/jsx-runtime").JSX.Element;
10
+ //# sourceMappingURL=TabControllerRenderer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TabControllerRenderer.d.ts","sourceRoot":"","sources":["../../src/renderers/TabControllerRenderer.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAqB,MAAM,iBAAiB,CAAC;AAMxE,MAAM,WAAW,0BAA0B;IAC1C,OAAO,EAAE,aAAa,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,0BAA0B,2CAqCtF"}
@@ -0,0 +1,10 @@
1
+ import { PageDefinition, Table } from '@judo/model-api';
2
+ export interface TableRendererProps {
3
+ element: Table;
4
+ page?: PageDefinition;
5
+ }
6
+ /**
7
+ * Renderer for Table elements using MUI X DataGrid.
8
+ */
9
+ export declare function TableRenderer({ element, page: pageProp }: TableRendererProps): import("react/jsx-runtime").JSX.Element;
10
+ //# sourceMappingURL=TableRenderer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TableRenderer.d.ts","sourceRoot":"","sources":["../../src/renderers/TableRenderer.tsx"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAIX,cAAc,EACd,KAAK,EAEL,MAAM,iBAAiB,CAAC;AAuCzB,MAAM,WAAW,kBAAkB;IAClC,OAAO,EAAE,KAAK,CAAC;IACf,IAAI,CAAC,EAAE,cAAc,CAAC;CACtB;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,kBAAkB,2CAguB5E"}