@cratis/components 4.6.0 → 4.8.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 (100) hide show
  1. package/compat-manifest.json +18 -18
  2. package/dist/esm/Canvas/CanvasOverlay.d.ts.map +1 -1
  3. package/dist/esm/Canvas/canvasGesture.d.ts.map +1 -1
  4. package/dist/esm/Canvas/canvasTransformActivity.d.ts.map +1 -1
  5. package/dist/esm/Canvas/selfSuspendingFrameLoop.d.ts.map +1 -1
  6. package/dist/esm/Canvas/shapes/Note/NoteTextChanged.d.ts.map +1 -1
  7. package/dist/esm/Canvas/shapes/Region/ItemAddedToRegion.d.ts.map +1 -1
  8. package/dist/esm/Canvas/shapes/Region/ItemRemovedFromRegion.d.ts.map +1 -1
  9. package/dist/esm/Canvas/shapes/Region/Region.d.ts.map +1 -1
  10. package/dist/esm/Chat/ChatIdentifier.d.ts.map +1 -1
  11. package/dist/esm/Chat/Kit/Avatar/PersonAvatarCircle.d.ts.map +1 -1
  12. package/dist/esm/Chat/Kit/Avatar/getAvatarColor.d.ts.map +1 -1
  13. package/dist/esm/Chat/Kit/Avatar/getInitials.d.ts.map +1 -1
  14. package/dist/esm/Chat/Kit/ChatMessageAdded.d.ts.map +1 -1
  15. package/dist/esm/Chat/Kit/Mentions/MentionSuggestions.d.ts +1 -1
  16. package/dist/esm/Chat/Kit/Mentions/extractMentions.d.ts.map +1 -1
  17. package/dist/esm/Chat/Kit/Mentions/findMentionRanges.d.ts.map +1 -1
  18. package/dist/esm/Chat/Kit/Mentions/mentionSegments.d.ts.map +1 -1
  19. package/dist/esm/Chat/relativeTimestamp.d.ts.map +1 -1
  20. package/dist/esm/Chat/shouldRequestTopicName.d.ts.map +1 -1
  21. package/dist/esm/CommandDialog/CommandDialog.d.ts +124 -5
  22. package/dist/esm/CommandDialog/StepperCommandDialog.d.ts +88 -1
  23. package/dist/esm/CommandDialog/StepperPanel.d.ts +4 -24
  24. package/dist/esm/CommandDialog/StepperPanel.d.ts.map +1 -1
  25. package/dist/esm/CommandForm/AutoCommandForm.d.ts.map +1 -1
  26. package/dist/esm/CommandForm/AutoCommandForm.js +1 -1
  27. package/dist/esm/CommandForm/AutoCommandForm.js.map +1 -1
  28. package/dist/esm/CommandForm/fields/chipValues.d.ts.map +1 -1
  29. package/dist/esm/CommandForm/fields/fieldAccessibility.d.ts.map +1 -1
  30. package/dist/esm/Common/ActionMenubar.d.ts +1 -1
  31. package/dist/esm/Common/ComboBox.d.ts +4 -10
  32. package/dist/esm/Common/ComboBox.d.ts.map +1 -1
  33. package/dist/esm/Common/DatePickerInputImplementation.d.ts +1 -1
  34. package/dist/esm/Common/ErrorBoundary.d.ts +45 -39
  35. package/dist/esm/Common/ErrorBoundary.d.ts.map +1 -1
  36. package/dist/esm/Common/ErrorBoundary.js +23 -11
  37. package/dist/esm/Common/ErrorBoundary.js.map +1 -1
  38. package/dist/esm/Common/FormElement.d.ts.map +1 -1
  39. package/dist/esm/Common/Icon.d.ts.map +1 -1
  40. package/dist/esm/Common/NumberInput.d.ts +1 -1
  41. package/dist/esm/Common/Page.d.ts.map +1 -1
  42. package/dist/esm/Common/Tooltip.d.ts.map +1 -1
  43. package/dist/esm/Common/reactAriaProps.d.ts.map +1 -1
  44. package/dist/esm/Common/useNativeCheckedState.d.ts.map +1 -1
  45. package/dist/esm/DataPage/DataPage.d.ts +6 -114
  46. package/dist/esm/DataPage/DataPageLayout.d.ts.map +1 -1
  47. package/dist/esm/DataTables/Column.d.ts +4 -20
  48. package/dist/esm/DataTables/DataTableFilterMeta.d.ts +16 -16
  49. package/dist/esm/DataTables/DataTableFilterMeta.d.ts.map +1 -1
  50. package/dist/esm/Dialogs/BusyIndicatorDialog.d.ts.map +1 -1
  51. package/dist/esm/Dialogs/Dialog.d.ts +20 -0
  52. package/dist/esm/Dialogs/Dialog.js.map +1 -1
  53. package/dist/esm/Dialogs/DialogImplementation.d.ts +1 -1
  54. package/dist/esm/Dialogs/DialogImplementation.js +7 -5
  55. package/dist/esm/Dialogs/DialogImplementation.js.map +1 -1
  56. package/dist/esm/Display/Avatar.d.ts.map +1 -1
  57. package/dist/esm/Display/Badge.d.ts.map +1 -1
  58. package/dist/esm/Display/Chip.d.ts.map +1 -1
  59. package/dist/esm/Display/Message.d.ts.map +1 -1
  60. package/dist/esm/Display/ProgressBar.d.ts.map +1 -1
  61. package/dist/esm/Display/ProgressBarImplementation.d.ts +1 -1
  62. package/dist/esm/Display/ProgressSpinner.d.ts +1 -1
  63. package/dist/esm/Display/ProgressSpinner.d.ts.map +1 -1
  64. package/dist/esm/Display/Skeleton.d.ts.map +1 -1
  65. package/dist/esm/Display/Tag.d.ts.map +1 -1
  66. package/dist/esm/Dropdown/Dropdown.d.ts +4 -5
  67. package/dist/esm/Dropdown/DropdownImplementation.d.ts +4 -5
  68. package/dist/esm/Dropdown/DropdownImplementation.js +22 -8
  69. package/dist/esm/Dropdown/DropdownImplementation.js.map +1 -1
  70. package/dist/esm/Dropdown/observeLabelAssociations.d.ts +9 -0
  71. package/dist/esm/Dropdown/observeLabelAssociations.d.ts.map +1 -0
  72. package/dist/esm/Dropdown/observeLabelAssociations.js +43 -0
  73. package/dist/esm/Dropdown/observeLabelAssociations.js.map +1 -0
  74. package/dist/esm/Dropdown/useExternalLabel.d.ts +6 -0
  75. package/dist/esm/Dropdown/useExternalLabel.d.ts.map +1 -0
  76. package/dist/esm/Dropdown/useExternalLabel.js +30 -0
  77. package/dist/esm/Dropdown/useExternalLabel.js.map +1 -0
  78. package/dist/esm/Notifications/Toaster.d.ts.map +1 -1
  79. package/dist/esm/Notifications/toast.d.ts.map +1 -1
  80. package/dist/esm/PivotViewer/components/pivot/constants.d.ts.map +1 -1
  81. package/dist/esm/Toolbar/Toolbar.d.ts +1 -1
  82. package/dist/esm/Toolbar/Toolbar.d.ts.map +1 -1
  83. package/dist/esm/Toolbar/ToolbarGroup.d.ts.map +1 -1
  84. package/dist/esm/Toolbar/ToolbarLayout.d.ts.map +1 -1
  85. package/dist/esm/Toolbar/ToolbarSection.d.ts.map +1 -1
  86. package/dist/esm/Toolbar/ToolbarSeparator.d.ts.map +1 -1
  87. package/dist/esm/Toolbar/ToolbarSlot.d.ts.map +1 -1
  88. package/dist/esm/renderer/RendererContext.js +3 -20
  89. package/dist/esm/renderer/RendererContext.js.map +1 -1
  90. package/dist/esm/renderer/RendererScope.d.ts +1 -1
  91. package/dist/esm/renderer/coreSlots.d.ts +14 -14
  92. package/dist/esm/renderer/dialogStack.d.ts.map +1 -1
  93. package/dist/esm/renderer/errors.d.ts +9 -9
  94. package/dist/esm/renderer/presentation.d.ts +1 -1
  95. package/dist/esm/styles.css +62 -382
  96. package/dist/esm/types/parts.d.ts +60 -58
  97. package/dist/esm/types/parts.d.ts.map +1 -1
  98. package/dist/esm/types/parts.js +4 -2
  99. package/dist/esm/types/parts.js.map +1 -1
  100. package/package.json +5 -5
@@ -1,63 +1,69 @@
1
- import { Component, ErrorInfo, ReactNode } from 'react';
2
- /**
3
- * Props for {@link ErrorBoundary}.
4
- */
5
- interface Props {
6
- /** The subtree the boundary protects. Rendered as-is when no error is caught. */
1
+ import { Component, type ErrorInfo, type ReactNode } from 'react';
2
+ /** Props for {@link ErrorBoundary}. */
3
+ export interface ErrorBoundaryProps {
4
+ /** The subtree to protect. Rendered unchanged until a descendant fails. */
7
5
  children: ReactNode;
6
+ /**
7
+ * Replaces the default message and retry button. A render callback receives only a reset
8
+ * action, not error diagnostics. Use it for localized content and application-specific
9
+ * recovery. An explicit `null` renders nothing; omission uses the default fallback.
10
+ */
11
+ fallback?: ReactNode | ((reset: () => void) => ReactNode);
12
+ /**
13
+ * Receives the thrown value and React component stack for application-controlled reporting.
14
+ * Replaces this boundary's default console reporter, but not React's own error reporting.
15
+ * Diagnostics may contain sensitive data; do not display them in the fallback.
16
+ */
17
+ onError?: (error: unknown, errorInfo: ErrorInfo) => void;
18
+ /**
19
+ * Runs synchronously before a user-requested retry so the host can clear the cause of the
20
+ * failure. Retry remounts only this boundary's children; it does not reload the page.
21
+ */
22
+ onReset?: () => void;
8
23
  }
9
- /**
10
- * Internal state captured when a child throws during render or commit.
11
- */
24
+ /** Internal render state for the boundary; error diagnostics never enter its fallback state. */
12
25
  interface State {
13
- /** True once a child has thrown; switches the render path to the fallback UI. */
26
+ /** Whether to show the fallback instead of the protected subtree. */
14
27
  hasError: boolean;
15
- /** The thrown error. Held so the fallback UI can show message and stack. */
16
- error: Error;
17
28
  }
18
29
  /**
19
- * React error boundary that catches errors thrown by its descendants during
20
- * render, lifecycle, and constructor calls. On error, it renders a minimal
21
- * inline diagnostic (message + stack) so the rest of the application keeps
22
- * working instead of crashing the whole tree.
30
+ * Isolates descendant render/lifecycle errors behind a safe message and a user-triggered retry.
31
+ * The default fallback never displays the thrown value or its stack. Diagnostics go to
32
+ * {@link ErrorBoundaryProps.onError}, or the console when no reporter is supplied.
23
33
  *
24
- * Wrap the boundary around any subtree whose failure should be isolated:
34
+ * Retry remounts children, discarding their local state but preserving the surrounding app.
35
+ * A persistent failure returns to the fallback; there is no automatic retry loop. Errors in
36
+ * event handlers, asynchronous work, server rendering, or this boundary itself are not caught.
25
37
  *
38
+ * @example
26
39
  * ```tsx
27
40
  * <ErrorBoundary>
28
41
  * <RiskyFeature />
29
42
  * </ErrorBoundary>
30
43
  * ```
31
- *
32
- * Use one boundary per logical UI region rather than a single root-level one,
33
- * so failures stay scoped to the feature that caused them.
34
44
  */
35
- export declare class ErrorBoundary extends Component<Props, State> {
36
- /** Initial state no error captured. */
45
+ export declare class ErrorBoundary extends Component<ErrorBoundaryProps, State> {
46
+ /** Starts with the protected content visible. */
37
47
  state: State;
38
48
  /**
39
- * React lifecycle hook invoked when a descendant throws. Returns the
40
- * next state, which switches the boundary into its fallback render path.
41
- *
42
- * @param error - The error thrown by the descendant.
49
+ * Switches to the fallback without inspecting or retaining the thrown value.
50
+ * @param _error - The value thrown by a descendant, which need not be an Error instance.
51
+ * @returns The render state used for the safe fallback.
43
52
  */
44
- static getDerivedStateFromError(error: Error): State;
53
+ static getDerivedStateFromError(_error: unknown): State;
45
54
  /**
46
- * React lifecycle hook invoked alongside {@link getDerivedStateFromError}.
47
- * Forwards the error and React's component stack to the console so the
48
- * failure is observable in DevTools.
49
- *
50
- * @param error - The error thrown by the descendant.
51
- * @param errorInfo - React-supplied metadata including the component stack.
55
+ * Reports a caught failure without placing diagnostics in the rendered markup.
56
+ * @param error - The value thrown by a descendant.
57
+ * @param errorInfo - React's component stack information.
52
58
  */
53
- componentDidCatch(error: Error, errorInfo: ErrorInfo): void;
59
+ componentDidCatch(error: unknown, errorInfo: ErrorInfo): void;
60
+ private reset;
54
61
  /**
55
- * Renders the protected children until an error is captured, then renders the scoped
56
- * diagnostic fallback.
57
- *
58
- * @returns The protected subtree or the fallback error content.
62
+ * Renders the children or the safe recovery UI. Native fallback markup deliberately avoids
63
+ * depending on a renderer/provider that may itself have caused the descendant failure.
64
+ * @returns The protected content or the configured fallback.
59
65
  */
60
- render(): string | number | bigint | boolean | Iterable<ReactNode> | Promise<string | number | bigint | boolean | import("react").ReactPortal | import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>> | Iterable<ReactNode> | null | undefined> | import("react").JSX.Element | null | undefined;
66
+ render(): string | number | bigint | boolean | import("react").JSX.Element | Iterable<ReactNode> | Promise<string | number | bigint | boolean | Iterable<ReactNode> | import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>> | import("react").ReactPortal | null | undefined> | null | undefined;
61
67
  }
62
68
  export {};
63
69
  //# sourceMappingURL=ErrorBoundary.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ErrorBoundary.d.ts","sourceRoot":"","sources":["../../../Common/ErrorBoundary.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAExD;;GAEG;AACH,UAAU,KAAK;IACX,iFAAiF;IACjF,QAAQ,EAAE,SAAS,CAAC;CACvB;AAED;;GAEG;AACH,UAAU,KAAK;IACX,iFAAiF;IACjF,QAAQ,EAAE,OAAO,CAAC;IAClB,4EAA4E;IAC5E,KAAK,EAAE,KAAK,CAAC;CAChB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,aAAc,SAAQ,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC;IACtD,yCAAyC;IAClC,KAAK,EAAE,KAAK,CAGjB;IAEF;;;;;OAKG;WACW,wBAAwB,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK;IAI3D;;;;;;;OAOG;IACI,iBAAiB,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS;IAI3D;;;;;OAKG;IACI,MAAM;CAahB"}
1
+ {"version":3,"file":"ErrorBoundary.d.ts","sourceRoot":"","sources":["../../../Common/ErrorBoundary.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAElE,uCAAuC;AACvC,MAAM,WAAW,kBAAkB;IAC/B,2EAA2E;IAC3E,QAAQ,EAAE,SAAS,CAAC;IACpB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,SAAS,GAAG,CAAC,CAAC,KAAK,EAAE,MAAM,IAAI,KAAK,SAAS,CAAC,CAAC;IAC1D;;;;OAIG;IACH,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,KAAK,IAAI,CAAC;IACzD;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACxB;AAED,gGAAgG;AAChG,UAAU,KAAK;IACX,qEAAqE;IACrE,QAAQ,EAAE,OAAO,CAAC;CACrB;AAED;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,aAAc,SAAQ,SAAS,CAAC,kBAAkB,EAAE,KAAK,CAAC;IACnE,iDAAiD;IAC1C,KAAK,EAAE,KAAK,CAAuB;IAE1C;;;;OAIG;IACH,OAAc,wBAAwB,CAAC,MAAM,EAAE,OAAO,GAAG,KAAK,CAE7D;IAED;;;;OAIG;IACI,iBAAiB,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,QAM5D;IAED,OAAO,CAAC,KAAK,CAIX;IAEF;;;;OAIG;IACI,MAAM,gUAeZ;CACJ"}
@@ -2,21 +2,33 @@ import { jsxs, jsx } from 'react/jsx-runtime';
2
2
  import { Component } from 'react';
3
3
 
4
4
  class ErrorBoundary extends Component {
5
- state = {
6
- hasError: false,
7
- error: new Error(),
8
- };
9
- static getDerivedStateFromError(error) {
10
- return { hasError: true, error: error };
5
+ state = { hasError: false };
6
+ static getDerivedStateFromError(_error) {
7
+ return { hasError: true };
11
8
  }
12
9
  componentDidCatch(error, errorInfo) {
13
- console.error('Uncaught error:', error, errorInfo);
10
+ if (this.props.onError) {
11
+ this.props.onError(error, errorInfo);
12
+ }
13
+ else {
14
+ console.error('Uncaught error:', error, errorInfo);
15
+ }
14
16
  }
17
+ reset = () => {
18
+ if (!this.state.hasError)
19
+ return;
20
+ this.props.onReset?.();
21
+ this.setState({ hasError: false });
22
+ };
15
23
  render() {
16
- if (this.state.hasError) {
17
- return (jsxs("div", { className: 'cratis:p-4', children: [jsx("h1", { className: 'cratis:text-3xl cratis:m-3', children: "Error" }), jsx("p", { children: this.state.error.message }), jsx("p", { children: this.state.error.stack })] }));
18
- }
19
- return this.props.children;
24
+ if (!this.state.hasError)
25
+ return this.props.children;
26
+ const { fallback } = this.props;
27
+ if (typeof fallback === 'function')
28
+ return fallback(this.reset);
29
+ if (fallback !== undefined)
30
+ return fallback;
31
+ return (jsxs("div", { className: 'cratis:p-4', role: 'alert', children: [jsx("p", { children: "Something went wrong. Please try again." }), jsx("button", { type: 'button', className: 'cratis-button', onClick: this.reset, children: "Try again" })] }));
20
32
  }
21
33
  }
22
34
 
@@ -1 +1 @@
1
- {"version":3,"file":"ErrorBoundary.js","sources":["../../../Common/ErrorBoundary.tsx"],"sourcesContent":[null],"names":["_jsxs","_jsx"],"mappings":";;;AAwCM,MAAO,aAAc,SAAQ,SAAuB,CAAA;AAE/C,IAAA,KAAK,GAAU;AAClB,QAAA,QAAQ,EAAE,KAAK;QACf,KAAK,EAAE,IAAI,KAAK,EAAE;KACrB;IAQM,OAAO,wBAAwB,CAAC,KAAY,EAAA;QAC/C,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE;IAC3C;IAUO,iBAAiB,CAAC,KAAY,EAAE,SAAoB,EAAA;QACvD,OAAO,CAAC,KAAK,CAAC,iBAAiB,EAAE,KAAK,EAAE,SAAS,CAAC;IACtD;IAQO,MAAM,GAAA;AACT,QAAA,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;AACrB,YAAA,QACIA,IAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAC,YAAY,EAAA,QAAA,EAAA,CACvBC,GAAA,CAAA,IAAA,EAAA,EAAI,SAAS,EAAC,4BAA4B,EAAA,QAAA,EAAA,OAAA,EAAA,CAAW,EACrDA,GAAA,CAAA,GAAA,EAAA,EAAA,QAAA,EAAI,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,EAAA,CAAK,EACjCA,qBAAI,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,EAAA,CAAK,CAAA,EAAA,CAC7B;QAEd;AAEA,QAAA,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ;IAC9B;AACH;;"}
1
+ {"version":3,"file":"ErrorBoundary.js","sources":["../../../Common/ErrorBoundary.tsx"],"sourcesContent":[null],"names":["_jsxs","_jsx"],"mappings":";;;AAkDM,MAAO,aAAc,SAAQ,SAAoC,CAAA;AAE5D,IAAA,KAAK,GAAU,EAAE,QAAQ,EAAE,KAAK,EAAE;IAOlC,OAAO,wBAAwB,CAAC,MAAe,EAAA;AAClD,QAAA,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE;IAC7B;IAOO,iBAAiB,CAAC,KAAc,EAAE,SAAoB,EAAA;AACzD,QAAA,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE;YACpB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,SAAS,CAAC;QACxC;aAAO;YACH,OAAO,CAAC,KAAK,CAAC,iBAAiB,EAAE,KAAK,EAAE,SAAS,CAAC;QACtD;IACJ;IAEQ,KAAK,GAAG,MAAK;AACjB,QAAA,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ;YAAE;AAC1B,QAAA,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI;QACtB,IAAI,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;AACtC,IAAA,CAAC;IAOM,MAAM,GAAA;AACT,QAAA,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ;AAAE,YAAA,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ;AAEpD,QAAA,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,KAAK;QAC/B,IAAI,OAAO,QAAQ,KAAK,UAAU;AAAE,YAAA,OAAO,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC;QAC/D,IAAI,QAAQ,KAAK,SAAS;AAAE,YAAA,OAAO,QAAQ;AAE3C,QAAA,QACIA,IAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAC,YAAY,EAAC,IAAI,EAAC,OAAO,EAAA,QAAA,EAAA,CACpCC,GAAA,CAAA,GAAA,EAAA,EAAA,QAAA,EAAA,yCAAA,EAAA,CAA8C,EAC9CA,GAAA,CAAA,QAAA,EAAA,EAAQ,IAAI,EAAC,QAAQ,EAAC,SAAS,EAAC,eAAe,EAAC,OAAO,EAAE,IAAI,CAAC,KAAK,EAAA,QAAA,EAAA,WAAA,EAAA,CAE1D,CAAA,EAAA,CACP;IAEd;AACH;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"FormElement.d.ts","sourceRoot":"","sources":["../../../Common/FormElement.tsx"],"names":[],"mappings":"AAGA;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC7B,gEAAgE;IAChE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAE1B;;;;OAIG;IACH,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC;CACzB;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,eAAO,MAAM,WAAW,GAAI,OAAO,gBAAgB,gCASlD,CAAC"}
1
+ {"version":3,"file":"FormElement.d.ts","sourceRoot":"","sources":["../../../Common/FormElement.tsx"],"names":[],"mappings":"AAGA;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC7B,gEAAgE;IAChE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAE1B;;;;OAIG;IACH,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC;CACzB;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,eAAO,MAAM,WAAW,UAAW,gBAAgB,gCASlD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Icon.d.ts","sourceRoot":"","sources":["../../../Common/Icon.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGlC,sFAAsF;AACtF,MAAM,MAAM,IAAI,GAAG,MAAM,GAAG,SAAS,CAAC;AAEtC,mDAAmD;AACnD,MAAM,WAAW,gBAAgB;IAC7B,wDAAwD;IACxD,IAAI,EAAE,IAAI,CAAC;IAEX,+FAA+F;IAC/F,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,WAAW,GAAI,qBAAqB,gBAAgB,gCAUhE,CAAC"}
1
+ {"version":3,"file":"Icon.d.ts","sourceRoot":"","sources":["../../../Common/Icon.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGlC,sFAAsF;AACtF,MAAM,MAAM,IAAI,GAAG,MAAM,GAAG,SAAS,CAAC;AAEtC,mDAAmD;AACnD,MAAM,WAAW,gBAAgB;IAC7B,wDAAwD;IACxD,IAAI,EAAE,IAAI,CAAC;IAEX,+FAA+F;IAC/F,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,WAAW,wBAAyB,gBAAgB,gCAUhE,CAAC"}
@@ -85,4 +85,4 @@ export interface NumberInputProps {
85
85
  * Parsing, incomplete edit text, range and step normalization, keyboard behavior, mobile input
86
86
  * mode, and localized formatting remain internal to this boundary.
87
87
  */
88
- export declare const NumberInput: ({ value, onChange, onCommit, locale, useGrouping, minimumFractionDigits, maximumFractionDigits, required, min, max, step, prefix, suffix, placeholder, disabled, readOnly, showSteppers, invalid, id, name, "aria-label": ariaLabel, "aria-labelledby": ariaLabelledBy, "aria-describedby": ariaDescribedBy, description, errorMessage, className, pt, }: NumberInputProps) => import("react").JSX.Element;
88
+ export declare const NumberInput: ({ value, onChange, onCommit, locale, useGrouping, minimumFractionDigits, maximumFractionDigits, required, min, max, step, prefix, suffix, placeholder, disabled, readOnly, showSteppers, invalid, id, name, 'aria-label': ariaLabel, 'aria-labelledby': ariaLabelledBy, 'aria-describedby': ariaDescribedBy, description, errorMessage, className, pt, }: NumberInputProps) => import("react").JSX.Element;
@@ -1 +1 @@
1
- {"version":3,"file":"Page.d.ts","sourceRoot":"","sources":["../../../Common/Page.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAElD;;;;GAIG;AACH,MAAM,WAAW,SAAU,SAAQ,cAAc,CAAC,cAAc,CAAC;IAC7D;;;;OAIG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;;;OAIG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB,yBAAyB;IACzB,QAAQ,CAAC,EAAE,SAAS,CAAC;IAErB;;;;OAIG;IACH,KAAK,CAAC,EAAE,OAAO,CAAA;CAClB;AAED;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,IAAI,GAAI,gDAAwD,SAAS,gCASrF,CAAC"}
1
+ {"version":3,"file":"Page.d.ts","sourceRoot":"","sources":["../../../Common/Page.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAElD;;;;GAIG;AACH,MAAM,WAAW,SAAU,SAAQ,cAAc,CAAC,cAAc,CAAC;IAC7D;;;;OAIG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;;;OAIG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB,yBAAyB;IACzB,QAAQ,CAAC,EAAE,SAAS,CAAC;IAErB;;;;OAIG;IACH,KAAK,CAAC,EAAE,OAAO,CAAA;CAClB;AAED;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,IAAI,mDAA4D,SAAS,gCASrF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Tooltip.d.ts","sourceRoot":"","sources":["../../../Common/Tooltip.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAM1C,+DAA+D;AAC/D,MAAM,MAAM,eAAe,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAC;AAElE,UAAU,0BAA0B;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,6BAA6B,CAAC,EAAE,MAAM,CAAC;CAC1C;AAED,+CAA+C;AAC/C,MAAM,WAAW,YAAY;IACzB,6EAA6E;IAC7E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,yDAAyD;IACzD,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,yCAAyC;IACzC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,8DAA8D;IAC9D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uDAAuD;IACvD,QAAQ,EAAE,YAAY,CAAC,0BAA0B,CAAC,CAAC;CACtD;AAQD,+EAA+E;AAC/E,eAAO,MAAM,OAAO,GAAI,OAAO,YAAY,+EAG1C,CAAC"}
1
+ {"version":3,"file":"Tooltip.d.ts","sourceRoot":"","sources":["../../../Common/Tooltip.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAM1C,+DAA+D;AAC/D,MAAM,MAAM,eAAe,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAC;AAElE,UAAU,0BAA0B;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,6BAA6B,CAAC,EAAE,MAAM,CAAC;CAC1C;AAED,+CAA+C;AAC/C,MAAM,WAAW,YAAY;IACzB,6EAA6E;IAC7E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,yDAAyD;IACzD,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,yCAAyC;IACzC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,8DAA8D;IAC9D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uDAAuD;IACvD,QAAQ,EAAE,YAAY,CAAC,0BAA0B,CAAC,CAAC;CACtD;AAQD,+EAA+E;AAC/E,eAAO,MAAM,OAAO,UAAW,YAAY,+EAG1C,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"reactAriaProps.d.ts","sourceRoot":"","sources":["../../../Common/reactAriaProps.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAClE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAWnF,eAAO,MAAM,sBAAsB,GAC/B,YAAY,oBAAoB,CAAC,iBAAiB,CAAC,GAAG,SAAS,KAChE,WAAW,GAAG,SAGmC,CAAC;AAErD,eAAO,MAAM,uBAAuB,GAAI,CAAC,EACrC,YAAY,cAAc,CAAC,cAAc,CAAC,GAAG,SAAS,KACvD,YAAY,CAAC,CAAC,CAAC,GAAG,SAGmC,CAAC;AAEzD,eAAO,MAAM,2BAA2B,GAAI,CAAC,EACzC,YAAY,cAAc,CAAC,cAAc,CAAC,GAAG,SAAS,KACvD,gBAAgB,CAAC,CAAC,CAAC,GAAG,SAGmC,CAAC"}
1
+ {"version":3,"file":"reactAriaProps.d.ts","sourceRoot":"","sources":["../../../Common/reactAriaProps.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAClE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAWnF,eAAO,MAAM,sBAAsB,eACnB,oBAAoB,CAAC,iBAAiB,CAAC,GAAG,SAAS,KAChE,WAAW,GAAG,SAGmC,CAAC;AAErD,eAAO,MAAM,uBAAuB,GAAI,CAAC,cACzB,cAAc,CAAC,cAAc,CAAC,GAAG,SAAS,KACvD,YAAY,CAAC,CAAC,CAAC,GAAG,SAGmC,CAAC;AAEzD,eAAO,MAAM,2BAA2B,GAAI,CAAC,cAC7B,cAAc,CAAC,cAAc,CAAC,GAAG,SAAS,KACvD,gBAAgB,CAAC,CAAC,CAAC,GAAG,SAGmC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useNativeCheckedState.d.ts","sourceRoot":"","sources":["../../../Common/useNativeCheckedState.ts"],"names":[],"mappings":"AAGA,OAAO,EAA4C,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AAOpF,4FAA4F;AAC5F,eAAO,MAAM,qBAAqB,GAC9B,SAAS,OAAO,GAAG,SAAS,EAC5B,gBAAgB,OAAO,GAAG,SAAS,EACnC,cAAc,YAAY,CAAC,gBAAgB,CAAC,EAC5C,2BAAyB;iBASb,gBAAgB,GAAG,IAAI;;+BAyBJ,OAAO;CAIzC,CAAC"}
1
+ {"version":3,"file":"useNativeCheckedState.d.ts","sourceRoot":"","sources":["../../../Common/useNativeCheckedState.ts"],"names":[],"mappings":"AAGA,OAAO,EAA4C,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AAOpF,4FAA4F;AAC5F,eAAO,MAAM,qBAAqB,YACrB,OAAO,GAAG,SAAS,kBACZ,OAAO,GAAG,SAAS,gBACrB,YAAY,CAAC,gBAAgB,CAAC;iBAUhC,gBAAgB,GAAG,IAAI;;+BAyBJ,OAAO;CAIzC,CAAC"}
@@ -193,118 +193,10 @@ export interface DataPageProps<TQuery extends IQueryFor<TDataType, TArguments> |
193
193
  */
194
194
  actionsAriaLabel?: string;
195
195
  }
196
- /**
197
- * A page primitive that combines an action menubar, a query-backed data
198
- * table, and an optional details pane into one layout. Designed as the
199
- * default rendering for "list view" pages in an Arc app.
200
- *
201
- * ## What `TQuery` is
202
- *
203
- * `TQuery` is the auto-generated TypeScript class produced by the Arc proxy
204
- * generator from a C# read model query. Two flavors are accepted and
205
- * **selected automatically at runtime** based on the class hierarchy:
206
- *
207
- * - **`IQueryFor<TDataType, TArguments>`** — a snapshot query. Re-fetched
208
- * when `queryArguments` change or when the page is mounted. Rendered
209
- * through {@link DataTableForQuery} internally.
210
- * - **`IObservableQueryFor<TDataType, TArguments>`** — a real-time
211
- * subscription. Connects to the backend over WebSocket and re-renders
212
- * automatically whenever the underlying read model changes server-side.
213
- * Rendered through {@link DataTableForObservableQuery} internally.
214
- *
215
- * You don't pick which inner table to use — `DataPage` inspects the
216
- * prototype chain (`context.query.prototype instanceof QueryFor`) and
217
- * mounts the correct one.
218
- *
219
- * ## Declarative composition
220
- *
221
- * Three children build up the page:
222
- *
223
- * - **`<DataPage.MenuItems>`** wraps `<DataPage.MenuItem>` elements that
224
- * become the action `Menubar` at the top. Each item declares its `icon`,
225
- * `label`, and `command` (an `onClick` handler). Items can be marked
226
- * `disableOnUnselected` so they automatically grey out until the user
227
- * picks a row — useful for Edit / Delete actions that need a target.
228
- *
229
- * - **`<DataPage.Columns>`** wraps Cratis-owned `<Column>` markers that
230
- * describe the visible columns. The columns themselves are
231
- * Cratis-owned — the documented `ColumnProps` surface is
232
- * supported here (sorting, filtering, custom body templates, …).
233
- *
234
- * - **`detailsComponent`** (optional) is a React component rendered in a
235
- * right-hand pane via Allotment when a row is selected. It receives the
236
- * selected item as `item` and an `onRefresh` callback the parent can
237
- * invoke to ask the page to refetch.
238
- *
239
- * ## Selection lifecycle
240
- *
241
- * `DataPage` keeps the current selection in local state and threads it to
242
- * the inner table, the menubar (`disableOnUnselected` items follow it),
243
- * and the optional details pane. The `onSelectionChange` prop is invoked
244
- * after every change if the consumer also needs to react to it.
245
- *
246
- * ```tsx
247
- * <DataPage<AllAuthors, Author, never>
248
- * title="Authors"
249
- * query={AllAuthors} // proxy from C#
250
- * detailsComponent={AuthorDetails}>
251
- * <DataPage.MenuItems>
252
- * <DataPage.MenuItem icon={FaPlus} label="Add" command={onAdd} />
253
- * <DataPage.MenuItem icon={FaPencil} label="Edit" command={onEdit}
254
- * disableOnUnselected />
255
- * <DataPage.MenuItem icon={FaTrash} label="Delete" command={onDelete}
256
- * disableOnUnselected />
257
- * </DataPage.MenuItems>
258
- * <DataPage.Columns>
259
- * <Column field="name" header="Name" sortable />
260
- * <Column field="email" header="Email" />
261
- * </DataPage.Columns>
262
- * </DataPage>
263
- * ```
264
- *
265
- * ## Height — `DataPage` needs a bounded ancestor
266
- *
267
- * `DataPage` fills the height it is given and divides it between the action
268
- * bar and the table region, so the table's paginator always sits at the
269
- * bottom of the page rather than below its edge. It cannot invent that height:
270
- * every element from the page root down sizes as a percentage of its parent,
271
- * so **some ancestor has to have a definite height**.
272
- *
273
- * ```tsx
274
- * // ✅ the router outlet, a sized container, or a flex child with min-height
275
- * <div style={{ height: '100vh' }}>
276
- * <DataPage … />
277
- * </div>
278
- *
279
- * // ❌ nothing above resolves to a height — the table grows to its content
280
- * <div>
281
- * <DataPage … />
282
- * </div>
283
- * ```
284
- *
285
- * Without one, the page falls back to a small fixed height so it stays
286
- * usable instead of collapsing to nothing.
287
- *
288
- * ## Styling
289
- *
290
- * The inner DataTable and action toolbar each have their own per-slot props:
291
- * `tablePt` / `tableUnstyled` / `tableClassName` for the table;
292
- * `paginatorPt` / `paginatorClassName` / `paginatorAriaLabels` for paging;
293
- * `menubarPt` / `menubarPtOptions` / `menubarUnstyled` / `menubarClassName` for
294
- * the action toolbar's stable button parts (the action bar is implemented as
295
- * a button toolbar, so `menubarPt` targets the stable Cratis button parts). See the
296
- * [pass-through cheat sheet](../../Documentation/Styling/pass-through.md) for
297
- * the full slot reference.
298
- *
299
- * @typeParam TQuery - The query class (proxy generated from a C# read model query).
300
- * @typeParam TDataType - The row type returned by the query.
301
- * @typeParam TArguments - The query's argument object type.
302
- * @param props - {@link DataPageProps}.
303
- */
304
- declare const DataPage: {
305
- <TQuery extends IQueryFor<TDataType, TArguments> | IQueryFor<TDataType[], TArguments> | IObservableQueryFor<TDataType, TArguments> | IObservableQueryFor<TDataType[], TArguments>, TDataType extends object, TArguments extends object>(props: DataPageProps<TQuery, TDataType, TArguments>): React.JSX.Element;
306
- MenuItem: (_props: MenuItemProps) => null;
307
- MenuItems: ({ children }: MenuItemsProps) => React.JSX.Element;
308
- Columns: ({ children }: ColumnProps) => React.JSX.Element;
309
- };
196
+ declare function DataPage<TQuery extends IQueryFor<TDataType, TArguments> | IQueryFor<TDataType[], TArguments> | IObservableQueryFor<TDataType, TArguments> | IObservableQueryFor<TDataType[], TArguments>, TDataType extends object, TArguments extends object>(props: DataPageProps<TQuery, TDataType, TArguments>): React.JSX.Element;
197
+ declare namespace DataPage {
198
+ export { MenuItem };
199
+ export { MenuItems };
200
+ export { Columns };
201
+ }
310
202
  export { DataPage };
@@ -1 +1 @@
1
- {"version":3,"file":"DataPageLayout.d.ts","sourceRoot":"","sources":["../../../DataPage/DataPageLayout.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAiB,SAAS,EAAE,MAAM,OAAO,CAAC;AAEjD;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAChC,8EAA8E;IAC9E,QAAQ,EAAE,SAAS,CAAC;CACvB;AAmBD;;;;;;;;;GASG;AACH,eAAO,MAAM,cAAc,GAAI,cAAc,mBAAmB,gCAI/D,CAAC"}
1
+ {"version":3,"file":"DataPageLayout.d.ts","sourceRoot":"","sources":["../../../DataPage/DataPageLayout.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAiB,SAAS,EAAE,MAAM,OAAO,CAAC;AAEjD;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAChC,8EAA8E;IAC9E,QAAQ,EAAE,SAAS,CAAC;CACvB;AAmBD;;;;;;;;;GASG;AACH,eAAO,MAAM,cAAc,iBAAkB,mBAAmB,gCAI/D,CAAC"}
@@ -45,23 +45,7 @@ export interface ColumnProps<TData = unknown> {
45
45
  /** Class name applied on top of {@link className} for body cells. */
46
46
  bodyClassName?: string;
47
47
  }
48
- /**
49
- * Declares one column of a Cratis data table (`DataTableForQuery`,
50
- * `DataTableForObservableQuery`, `DataPage.Columns`). This is the Cratis-owned
51
- * renderer-independent `<Column field header body sortable />` authoring model,
52
- * mapped internally onto semantic table header/body cells.
53
- *
54
- * It is a pure marker: the surrounding table reads its props to build the
55
- * header and per-row cells, so it renders nothing when mounted on its own.
56
- *
57
- * ```tsx
58
- * <DataTableForQuery query={AllAuthors} emptyMessage="No authors">
59
- * <Column field="name" header="Name" sortable />
60
- * <Column field="email" header="Email" />
61
- * </DataTableForQuery>
62
- * ```
63
- */
64
- export declare const Column: {
65
- <TData = unknown>(_props: ColumnProps<TData>): React.ReactElement | null;
66
- displayName: string;
67
- };
48
+ export declare function Column<TData = unknown>(_props: ColumnProps<TData>): React.ReactElement | null;
49
+ export declare namespace Column {
50
+ var displayName: string;
51
+ }
@@ -1,21 +1,21 @@
1
1
  /** Built-in match modes supported by Cratis data tables. */
2
2
  export declare const DataTableFilterMatchMode: {
3
- readonly StartsWith: "startsWith";
4
- readonly Contains: "contains";
5
- readonly NotContains: "notContains";
6
- readonly EndsWith: "endsWith";
7
- readonly Equals: "equals";
8
- readonly NotEquals: "notEquals";
9
- readonly In: "in";
10
- readonly Between: "between";
11
- readonly LessThan: "lt";
12
- readonly LessThanOrEqual: "lte";
13
- readonly GreaterThan: "gt";
14
- readonly GreaterThanOrEqual: "gte";
15
- readonly DateIs: "dateIs";
16
- readonly DateIsNot: "dateIsNot";
17
- readonly DateBefore: "dateBefore";
18
- readonly DateAfter: "dateAfter";
3
+ readonly StartsWith: 'startsWith';
4
+ readonly Contains: 'contains';
5
+ readonly NotContains: 'notContains';
6
+ readonly EndsWith: 'endsWith';
7
+ readonly Equals: 'equals';
8
+ readonly NotEquals: 'notEquals';
9
+ readonly In: 'in';
10
+ readonly Between: 'between';
11
+ readonly LessThan: 'lt';
12
+ readonly LessThanOrEqual: 'lte';
13
+ readonly GreaterThan: 'gt';
14
+ readonly GreaterThanOrEqual: 'gte';
15
+ readonly DateIs: 'dateIs';
16
+ readonly DateIsNot: 'dateIsNot';
17
+ readonly DateBefore: 'dateBefore';
18
+ readonly DateAfter: 'dateAfter';
19
19
  };
20
20
  declare const customFilterMatchMode: unique symbol;
21
21
  /** A custom match-mode name created through `registerDataTableFilterMatcher()`. */
@@ -1 +1 @@
1
- {"version":3,"file":"DataTableFilterMeta.d.ts","sourceRoot":"","sources":["../../../DataTables/DataTableFilterMeta.ts"],"names":[],"mappings":"AAGA,4DAA4D;AAC5D,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;CAiB3B,CAAC;AAEX,OAAO,CAAC,MAAM,qBAAqB,EAAE,OAAO,MAAM,CAAC;AAEnD,mFAAmF;AACnF,MAAM,MAAM,8BAA8B,GAAG,MAAM,GAAG;IAClD,QAAQ,CAAC,CAAC,qBAAqB,CAAC,EAAE,IAAI,CAAC;CAC1C,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,MAAM,wBAAwB,GAC9B,CAAC,OAAO,wBAAwB,CAAC,CAAC,MAAM,OAAO,wBAAwB,CAAC,GACxE,8BAA8B,GAC9B,CAAC,MAAM,GAAG,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;AAEtC,yEAAyE;AACzE,MAAM,MAAM,sBAAsB,GAAG,CACjC,KAAK,EAAE,OAAO,EACd,MAAM,EAAE,OAAO,EACf,MAAM,CAAC,EAAE,MAAM,KACd,OAAO,CAAC;AAEb;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACtC,8BAA8B;IAC9B,KAAK,EAAE,OAAO,CAAC;IACf,wFAAwF;IACxF,SAAS,CAAC,EAAE,wBAAwB,CAAC;CACxC;AAED,gFAAgF;AAChF,MAAM,WAAW,iCAAiC;IAC9C,8EAA8E;IAC9E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mDAAmD;IACnD,WAAW,EAAE,yBAAyB,EAAE,CAAC;CAC5C;AAED,wDAAwD;AACxD,MAAM,MAAM,oBAAoB,GAC5B,yBAAyB,GAAG,iCAAiC,CAAC;AAElE,iEAAiE;AACjE,MAAM,MAAM,mBAAmB,GAAG,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC"}
1
+ {"version":3,"file":"DataTableFilterMeta.d.ts","sourceRoot":"","sources":["../../../DataTables/DataTableFilterMeta.ts"],"names":[],"mappings":"AAGA,4DAA4D;AAC5D,eAAO,MAAM,wBAAwB;aACjC,UAAU,EAAE,YAAY;aACxB,QAAQ,EAAE,UAAU;aACpB,WAAW,EAAE,aAAa;aAC1B,QAAQ,EAAE,UAAU;aACpB,MAAM,EAAE,QAAQ;aAChB,SAAS,EAAE,WAAW;aACtB,EAAE,EAAE,IAAI;aACR,OAAO,EAAE,SAAS;aAClB,QAAQ,EAAE,IAAI;aACd,eAAe,EAAE,KAAK;aACtB,WAAW,EAAE,IAAI;aACjB,kBAAkB,EAAE,KAAK;aACzB,MAAM,EAAE,QAAQ;aAChB,SAAS,EAAE,WAAW;aACtB,UAAU,EAAE,YAAY;aACxB,SAAS,EAAE,WAAW;CAChB,CAAC;AAEX,OAAO,CAAC,MAAM,qBAAqB,EAAE,OAAO,MAAM,CAAC;AAEnD,mFAAmF;AACnF,MAAM,MAAM,8BAA8B,GAAG,MAAM,GAAG;IAClD,QAAQ,CAAC,CAAC,qBAAqB,CAAC,EAAE,IAAI,CAAC;CAC1C,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,MAAM,wBAAwB,GAC9B,CAAC,OAAO,wBAAwB,CAAC,CAAC,MAAM,OAAO,wBAAwB,CAAC,GACxE,8BAA8B,GAC9B,CAAC,MAAM,GAAG,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;AAEtC,yEAAyE;AACzE,MAAM,MAAM,sBAAsB,GAAG,CACjC,KAAK,EAAE,OAAO,EACd,MAAM,EAAE,OAAO,EACf,MAAM,CAAC,EAAE,MAAM,KACd,OAAO,CAAC;AAEb;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACtC,8BAA8B;IAC9B,KAAK,EAAE,OAAO,CAAC;IACf,wFAAwF;IACxF,SAAS,CAAC,EAAE,wBAAwB,CAAC;CACxC;AAED,gFAAgF;AAChF,MAAM,WAAW,iCAAiC;IAC9C,8EAA8E;IAC9E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mDAAmD;IACnD,WAAW,EAAE,yBAAyB,EAAE,CAAC;CAC5C;AAED,wDAAwD;AACxD,MAAM,MAAM,oBAAoB,GAC5B,yBAAyB,GAAG,iCAAiC,CAAC;AAElE,iEAAiE;AACjE,MAAM,MAAM,mBAAmB,GAAG,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"BusyIndicatorDialog.d.ts","sourceRoot":"","sources":["../../../Dialogs/BusyIndicatorDialog.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AAKvE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AACH,eAAO,MAAM,mBAAmB,GAAI,OAAO,0BAA0B,gCAkBpE,CAAC"}
1
+ {"version":3,"file":"BusyIndicatorDialog.d.ts","sourceRoot":"","sources":["../../../Dialogs/BusyIndicatorDialog.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AAKvE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AACH,eAAO,MAAM,mBAAmB,UAAW,0BAA0B,gCAkBpE,CAAC"}
@@ -11,6 +11,11 @@ type DialogPartAttributes<TElement> = HTMLAttributes<TElement> & {
11
11
  [attribute: `data-${string}`]: string | number | boolean | undefined;
12
12
  };
13
13
  type DialogButtonAttributes = Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'onClick' | 'value'>;
14
+ /**
15
+ * Where a {@link Dialog} sits in the viewport. `center` is the classic modal; `start` and `end`
16
+ * make it a full-height side sheet against the inline-start or inline-end edge.
17
+ */
18
+ export type DialogPlacement = 'center' | 'start' | 'end';
14
19
  /** Stable Cratis-owned parts for styling a {@link Dialog}. */
15
20
  export interface DialogParts {
16
21
  /** Viewport backdrop and dismissal surface. */
@@ -23,6 +28,8 @@ export interface DialogParts {
23
28
  header?: DialogPartAttributes<HTMLElement>;
24
29
  /** Dialog heading. */
25
30
  title?: DialogPartAttributes<HTMLHeadingElement>;
31
+ /** Secondary line under the heading, rendered only when `subtitle` is set. */
32
+ subtitle?: DialogPartAttributes<HTMLParagraphElement>;
26
33
  /** Header close button. */
27
34
  close?: DialogButtonAttributes;
28
35
  /** Dialog content region. */
@@ -38,6 +45,19 @@ export interface DialogParts {
38
45
  export interface DialogProps {
39
46
  /** Dialog heading. */
40
47
  title: string;
48
+ /**
49
+ * Secondary line under the heading — a reference, a status, a short summary. Announced as the
50
+ * dialog's description.
51
+ */
52
+ subtitle?: ReactNode;
53
+ /**
54
+ * Viewport placement. `center` (default) is a modal; `start` and `end` render a full-height
55
+ * side sheet against that inline edge, sliding in from it. Dismissal, focus and busy behavior
56
+ * are identical across placements.
57
+ */
58
+ placement?: DialogPlacement;
59
+ /** Glyph for the header close button. Defaults to a multiplication sign. */
60
+ closeIcon?: ReactNode;
41
61
  /** Controlled open state. Defaults to `true`. */
42
62
  visible?: boolean;
43
63
  /** Combined result callback used when a dedicated confirm/cancel callback is absent. */
@@ -1 +1 @@
1
- {"version":3,"file":"Dialog.js","sources":["../../../Dialogs/Dialog.tsx"],"sourcesContent":[null],"names":[],"mappings":";;;;AAqHA,MAAM,qBAAqB,GAAG,MAAM,CAAC,MAAM,CAAC;AACxC,IAAA,IAAI,EAAE,QAAQ;AACd,IAAA,QAAQ,EAAE,QAAQ;AAClB,IAAA,MAAM,EAAE,oBAAoB;AAC/B,CAAA,CAAsD;AAMhD,MAAM,MAAM,GAAG,CAAC,KAAkB,KAAI;IACzC,MAAM,WAAW,GAAG,gBAAgB,CAAC,gBAAgB,EAAE,qBAAqB,CAAC;AAC7E,IAAA,OAAO,UAAU,CAAC,WAAW,EAAE,KAAK,CAAC;AACzC;;"}
1
+ {"version":3,"file":"Dialog.js","sources":["../../../Dialogs/Dialog.tsx"],"sourcesContent":[null],"names":[],"mappings":";;;;AA0IA,MAAM,qBAAqB,GAAG,MAAM,CAAC,MAAM,CAAC;AACxC,IAAA,IAAI,EAAE,QAAQ;AACd,IAAA,QAAQ,EAAE,QAAQ;AAClB,IAAA,MAAM,EAAE,oBAAoB;AAC/B,CAAA,CAAsD;AAMhD,MAAM,MAAM,GAAG,CAAC,KAAkB,KAAI;IACzC,MAAM,WAAW,GAAG,gBAAgB,CAAC,gBAAgB,EAAE,qBAAqB,CAAC;AAC7E,IAAA,OAAO,UAAU,CAAC,WAAW,EAAE,KAAK,CAAC;AACzC;;"}
@@ -3,4 +3,4 @@ import type { DialogProps } from './Dialog.js';
3
3
  * A modal dialog with Arc host integration, typed footer actions, busy/validity
4
4
  * state, controlled dismissal, and stable Cratis-owned styling parts.
5
5
  */
6
- export declare const DialogImplementation: ({ title, visible, onClose, onConfirm, onCancel, buttons, initialFocus, children, width, style, contentStyle, isValid, isBusy, okLabel, cancelLabel, yesLabel, noLabel, closeAriaLabel, dismissable, className, pt, }: DialogProps) => import("react").JSX.Element | null;
6
+ export declare const DialogImplementation: ({ title, subtitle, placement, closeIcon, visible, onClose, onConfirm, onCancel, buttons, initialFocus, children, width, style, contentStyle, isValid, isBusy, okLabel, cancelLabel, yesLabel, noLabel, closeAriaLabel, dismissable, className, pt, }: DialogProps) => import("react").JSX.Element | null;
@@ -3,7 +3,7 @@ import { useDialogContext, DialogButtons, DialogResult } from '@cratis/arc.react
3
3
  import { Dialog, Heading } from 'react-aria-components/Dialog';
4
4
  import { ModalOverlay, Modal } from 'react-aria-components/Modal';
5
5
  import { UNSAFE_PortalProvider } from 'react-aria';
6
- import { useRef, useState, useLayoutEffect, useEffect, useSyncExternalStore } from 'react';
6
+ import { useId, useRef, useState, useLayoutEffect, useEffect, useSyncExternalStore } from 'react';
7
7
  import { unstable_useOverlayEnvironment } from '../renderer/RendererContext.js';
8
8
  import { DialogInitialFocus } from './DialogInitialFocus.js';
9
9
  import 'react-aria-components/I18nProvider';
@@ -17,7 +17,7 @@ import { DialogStackContext } from '../renderer/DialogStackContext.js';
17
17
  const classNames = (...values) => values.filter(Boolean).join(' ');
18
18
  const subscribeToBrowserEnvironment = () => () => undefined;
19
19
  const useIsBrowser = () => useSyncExternalStore(subscribeToBrowserEnvironment, () => true, () => false);
20
- const DialogImplementation = ({ title, visible = true, onClose, onConfirm, onCancel, buttons = DialogButtons.OkCancel, initialFocus = DialogInitialFocus.Confirm, children, width = '450px', style, contentStyle, isValid, isBusy = false, okLabel, cancelLabel, yesLabel, noLabel, closeAriaLabel, dismissable, className, pt, }) => {
20
+ const DialogImplementation = ({ title, subtitle, placement = 'center', closeIcon = '×', visible = true, onClose, onConfirm, onCancel, buttons = DialogButtons.OkCancel, initialFocus = DialogInitialFocus.Confirm, children, width = '450px', style, contentStyle, isValid, isBusy = false, okLabel, cancelLabel, yesLabel, noLabel, closeAriaLabel, dismissable, className, pt, }) => {
21
21
  const overlayEnvironment = unstable_useOverlayEnvironment();
22
22
  const { messages } = useCratisComponentsConfig();
23
23
  const dialogMessages = messages?.dialog;
@@ -35,6 +35,8 @@ const DialogImplementation = ({ title, visible = true, onClose, onConfirm, onCan
35
35
  contextCloseDialog = undefined;
36
36
  }
37
37
  const isBrowser = useIsBrowser();
38
+ const subtitleId = useId();
39
+ const hasSubtitle = subtitle !== undefined && subtitle !== null && subtitle !== false;
38
40
  const titleRef = useRef(null);
39
41
  const confirmRef = useRef(null);
40
42
  const cancelRef = useRef(null);
@@ -112,7 +114,7 @@ const DialogImplementation = ({ title, visible = true, onClose, onConfirm, onCan
112
114
  return null;
113
115
  }
114
116
  };
115
- const dialogDocument = (jsx(DialogStackContext.Provider, { value: resolvedZIndex ?? DIALOG_ZINDEX_TOKEN, children: jsx(Dialog, { className: 'cratis-dialog__document', children: jsxs(Fragment, { children: [jsxs("header", { ...pt?.header, className: classNames('cratis-dialog__header', pt?.header?.className), style: pt?.header?.style, "data-cratis-part": 'header', children: [jsx(Heading, { ...pt?.title, slot: 'title', tabIndex: focusesTitle ? -1 : undefined, ref: titleRef, className: classNames('cratis-dialog__title', pt?.title?.className), style: pt?.title?.style, "data-cratis-part": 'title', children: title }), allowsDismissal && (jsx("button", { ...pt?.close, type: 'button', disabled: isBusy, className: classNames('cratis-dialog__close', pt?.close?.className), "data-cratis-part": 'close', "data-disabled": isBusy || undefined, "data-busy": isBusy || undefined, "aria-label": resolvedCloseAriaLabel, onClick: () => void handleClose(DialogResult.Cancelled), children: jsx("span", { "aria-hidden": 'true', children: "\u00D7" }) }))] }), jsx("div", { ...pt?.content, className: classNames('cratis-dialog__content', pt?.content?.className), style: { ...pt?.content?.style, ...contentStyle }, "data-cratis-part": 'content', "data-open": visible || undefined, "data-busy": isBusy || undefined, children: jsx("fieldset", { className: 'cratis-dialog__busy-scope', "data-cratis-part": 'busy-scope', "data-busy": isBusy || undefined, disabled: isBusy, inert: isBusy, "aria-busy": isBusy || undefined, children: children }) }), buttons !== null && (jsx("footer", { ...pt?.footer, className: classNames('cratis-dialog__footer', pt?.footer?.className), style: pt?.footer?.style, "data-cratis-part": 'footer', children: jsx("fieldset", { className: 'cratis-dialog__busy-scope cratis-dialog__busy-scope--footer', "data-cratis-part": 'busy-scope', "data-busy": isBusy || undefined, disabled: isBusy, inert: isBusy, "aria-busy": isBusy || undefined, children: predefinedFooter() }) }))] }) }) }));
117
+ const dialogDocument = (jsx(DialogStackContext.Provider, { value: resolvedZIndex ?? DIALOG_ZINDEX_TOKEN, children: jsx(Dialog, { className: 'cratis-dialog__document', "aria-describedby": hasSubtitle ? subtitleId : undefined, children: jsxs(Fragment, { children: [jsxs("header", { ...pt?.header, className: classNames('cratis-dialog__header', pt?.header?.className), style: pt?.header?.style, "data-cratis-part": 'header', children: [jsx(Heading, { ...pt?.title, slot: 'title', tabIndex: focusesTitle ? -1 : undefined, ref: titleRef, className: classNames('cratis-dialog__title', pt?.title?.className), style: pt?.title?.style, "data-cratis-part": 'title', children: title }), hasSubtitle && (jsx("p", { ...pt?.subtitle, id: subtitleId, className: classNames('cratis-dialog__subtitle', pt?.subtitle?.className), style: pt?.subtitle?.style, "data-cratis-part": 'subtitle', children: subtitle })), allowsDismissal && (jsx("button", { ...pt?.close, type: 'button', disabled: isBusy, className: classNames('cratis-dialog__close', pt?.close?.className), "data-cratis-part": 'close', "data-disabled": isBusy || undefined, "data-busy": isBusy || undefined, "aria-label": resolvedCloseAriaLabel, onClick: () => void handleClose(DialogResult.Cancelled), children: jsx("span", { "aria-hidden": 'true', children: closeIcon }) }))] }), jsx("div", { ...pt?.content, className: classNames('cratis-dialog__content', pt?.content?.className), style: { ...pt?.content?.style, ...contentStyle }, "data-cratis-part": 'content', "data-open": visible || undefined, "data-busy": isBusy || undefined, children: jsx("fieldset", { className: 'cratis-dialog__busy-scope', "data-cratis-part": 'busy-scope', "data-busy": isBusy || undefined, disabled: isBusy, inert: isBusy, "aria-busy": isBusy || undefined, children: children }) }), buttons !== null && (jsx("footer", { ...pt?.footer, className: classNames('cratis-dialog__footer', pt?.footer?.className), style: pt?.footer?.style, "data-cratis-part": 'footer', children: jsx("fieldset", { className: 'cratis-dialog__busy-scope cratis-dialog__busy-scope--footer', "data-cratis-part": 'busy-scope', "data-busy": isBusy || undefined, disabled: isBusy, inert: isBusy, "aria-busy": isBusy || undefined, children: predefinedFooter() }) }))] }) }) }));
116
118
  const dialogStyle = { width, ...pt?.root?.style, ...style };
117
119
  if (!isBrowser) {
118
120
  if (!visible)
@@ -120,7 +122,7 @@ const DialogImplementation = ({ title, visible = true, onClose, onConfirm, onCan
120
122
  return (jsx("div", { ...pt?.backdrop, className: classNames('cratis-dialog__backdrop', pt?.backdrop?.className), style: {
121
123
  zIndex: resolvedZIndex ?? DIALOG_ZINDEX_TOKEN,
122
124
  ...pt?.backdrop?.style,
123
- }, "data-cratis-part": 'backdrop', "data-open": visible || undefined, "data-busy": isBusy || undefined, children: jsx("div", { ...pt?.positioner, className: classNames('cratis-dialog__positioner', pt?.positioner?.className), style: pt?.positioner?.style, "data-cratis-part": 'positioner', "data-open": visible || undefined, "data-busy": isBusy || undefined, children: jsx("section", { ...pt?.root, className: classNames('cratis-dialog', pt?.root?.className, className), style: dialogStyle, "data-cratis-part": 'root', "data-open": visible || undefined, "data-busy": isBusy || undefined, children: dialogDocument }) }) }));
125
+ }, "data-cratis-part": 'backdrop', "data-placement": placement, "data-open": visible || undefined, "data-busy": isBusy || undefined, children: jsx("div", { ...pt?.positioner, className: classNames('cratis-dialog__positioner', pt?.positioner?.className), style: pt?.positioner?.style, "data-cratis-part": 'positioner', "data-placement": placement, "data-open": visible || undefined, "data-busy": isBusy || undefined, children: jsx("section", { ...pt?.root, className: classNames('cratis-dialog', pt?.root?.className, className), style: dialogStyle, "data-cratis-part": 'root', "data-placement": placement, "data-open": visible || undefined, "data-busy": isBusy || undefined, children: dialogDocument }) }) }));
124
126
  }
125
127
  return (jsx(UNSAFE_PortalProvider, { getContainer: overlayEnvironment.getContainer, children: jsx(ModalOverlay, { ...pt?.backdrop, isOpen: visible, onOpenChange: (open) => {
126
128
  if (!open && !isBusy)
@@ -128,7 +130,7 @@ const DialogImplementation = ({ title, visible = true, onClose, onConfirm, onCan
128
130
  }, isDismissable: isDismissable, isKeyboardDismissDisabled: !isDismissable, className: classNames('cratis-dialog__backdrop', pt?.backdrop?.className), style: {
129
131
  zIndex: resolvedZIndex ?? DIALOG_ZINDEX_TOKEN,
130
132
  ...pt?.backdrop?.style,
131
- }, "data-cratis-part": 'backdrop', "data-open": visible || undefined, "data-busy": isBusy || undefined, children: jsx("div", { ...pt?.positioner, className: classNames('cratis-dialog__positioner', pt?.positioner?.className), style: pt?.positioner?.style, "data-cratis-part": 'positioner', "data-open": visible || undefined, "data-busy": isBusy || undefined, children: jsx(Modal, { ...pt?.root, className: classNames('cratis-dialog', pt?.root?.className, className), style: dialogStyle, "data-cratis-part": 'root', "data-open": visible || undefined, "data-busy": isBusy || undefined, children: dialogDocument }) }) }) }));
133
+ }, "data-cratis-part": 'backdrop', "data-placement": placement, "data-open": visible || undefined, "data-busy": isBusy || undefined, children: jsx("div", { ...pt?.positioner, className: classNames('cratis-dialog__positioner', pt?.positioner?.className), style: pt?.positioner?.style, "data-cratis-part": 'positioner', "data-placement": placement, "data-open": visible || undefined, "data-busy": isBusy || undefined, children: jsx(Modal, { ...pt?.root, className: classNames('cratis-dialog', pt?.root?.className, className), style: dialogStyle, "data-cratis-part": 'root', "data-placement": placement, "data-open": visible || undefined, "data-busy": isBusy || undefined, children: dialogDocument }) }) }) }));
132
134
  };
133
135
 
134
136
  export { DialogImplementation };
@@ -1 +1 @@
1
- {"version":3,"file":"DialogImplementation.js","sources":["../../../Dialogs/DialogImplementation.tsx"],"sourcesContent":[null],"names":["_jsxs","_jsx","_Fragment","AriaDialog"],"mappings":"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"}
1
+ {"version":3,"file":"DialogImplementation.js","sources":["../../../Dialogs/DialogImplementation.tsx"],"sourcesContent":[null],"names":["_jsxs","_jsx","_Fragment","AriaDialog"],"mappings":"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"}