@bioturing/components 0.42.0 → 0.44.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 (136) hide show
  1. package/dist/components/button/component.d.ts.map +1 -1
  2. package/dist/components/button/component.js +41 -34
  3. package/dist/components/button/component.js.map +1 -1
  4. package/dist/components/button/style.css +1 -1
  5. package/dist/components/combobox/component.d.ts.map +1 -1
  6. package/dist/components/combobox/component.js +136 -126
  7. package/dist/components/combobox/component.js.map +1 -1
  8. package/dist/components/command-palette/component.d.ts +7 -0
  9. package/dist/components/command-palette/component.d.ts.map +1 -1
  10. package/dist/components/command-palette/component.js +35 -33
  11. package/dist/components/command-palette/component.js.map +1 -1
  12. package/dist/components/dialog/Dialog.d.ts +53 -0
  13. package/dist/components/dialog/Dialog.d.ts.map +1 -0
  14. package/dist/components/dialog/Dialog.js +231 -0
  15. package/dist/components/dialog/Dialog.js.map +1 -0
  16. package/dist/components/dialog/constants.d.ts +20 -0
  17. package/dist/components/dialog/constants.d.ts.map +1 -0
  18. package/dist/components/dialog/constants.js +20 -0
  19. package/dist/components/dialog/constants.js.map +1 -0
  20. package/dist/components/dialog/dialog.css +1 -0
  21. package/dist/components/dialog/index.d.ts +4 -0
  22. package/dist/components/dialog/index.d.ts.map +1 -0
  23. package/dist/components/dialog/index.js +8 -0
  24. package/dist/components/dialog/index.js.map +1 -0
  25. package/dist/components/dropdown-menu/component.d.ts +8 -1
  26. package/dist/components/dropdown-menu/component.d.ts.map +1 -1
  27. package/dist/components/dropdown-menu/component.js +165 -141
  28. package/dist/components/dropdown-menu/component.js.map +1 -1
  29. package/dist/components/dropdown-menu/style.css +1 -1
  30. package/dist/components/ds-root/component.d.ts +6 -1
  31. package/dist/components/ds-root/component.d.ts.map +1 -1
  32. package/dist/components/ds-root/component.js +15 -14
  33. package/dist/components/ds-root/component.js.map +1 -1
  34. package/dist/components/form/style.css +1 -1
  35. package/dist/components/hooks/index.d.ts +0 -1
  36. package/dist/components/hooks/index.d.ts.map +1 -1
  37. package/dist/components/icon-button/style.css +1 -1
  38. package/dist/components/index.d.ts +2 -0
  39. package/dist/components/index.d.ts.map +1 -1
  40. package/dist/components/label-with-help/component.d.ts +20 -0
  41. package/dist/components/label-with-help/component.d.ts.map +1 -0
  42. package/dist/components/label-with-help/component.js +39 -0
  43. package/dist/components/label-with-help/component.js.map +1 -0
  44. package/dist/components/label-with-help/index.d.ts +2 -0
  45. package/dist/components/label-with-help/index.d.ts.map +1 -0
  46. package/dist/components/label-with-help/style.css +1 -0
  47. package/dist/components/modal/Modal.d.ts.map +1 -1
  48. package/dist/components/modal/Modal.js +157 -133
  49. package/dist/components/modal/Modal.js.map +1 -1
  50. package/dist/components/popup-panel/component.d.ts +2 -111
  51. package/dist/components/popup-panel/component.d.ts.map +1 -1
  52. package/dist/components/popup-panel/component.js +259 -143
  53. package/dist/components/popup-panel/component.js.map +1 -1
  54. package/dist/components/popup-panel/constants.d.ts +1 -0
  55. package/dist/components/popup-panel/constants.d.ts.map +1 -1
  56. package/dist/components/popup-panel/constants.js +2 -0
  57. package/dist/components/popup-panel/constants.js.map +1 -1
  58. package/dist/components/popup-panel/index.d.ts +1 -0
  59. package/dist/components/popup-panel/index.d.ts.map +1 -1
  60. package/dist/components/popup-panel/types.d.ts +124 -0
  61. package/dist/components/popup-panel/types.d.ts.map +1 -0
  62. package/dist/components/popup-panel/utils.d.ts +1 -1
  63. package/dist/components/popup-panel/utils.d.ts.map +1 -1
  64. package/dist/components/popup-panel/utils.js +5 -5
  65. package/dist/components/popup-panel/utils.js.map +1 -1
  66. package/dist/components/resizable/component.d.ts.map +1 -1
  67. package/dist/components/resizable/component.js +28 -28
  68. package/dist/components/resizable/component.js.map +1 -1
  69. package/dist/components/select/component.d.ts.map +1 -1
  70. package/dist/components/select/component.js +130 -120
  71. package/dist/components/select/component.js.map +1 -1
  72. package/dist/components/select-trigger/style.css +1 -1
  73. package/dist/components/spin/Indicator/Looper.d.ts +6 -0
  74. package/dist/components/spin/Indicator/Looper.d.ts.map +1 -0
  75. package/dist/components/spin/Indicator/Looper.js +15 -0
  76. package/dist/components/spin/Indicator/Looper.js.map +1 -0
  77. package/dist/components/spin/Indicator/Progress.d.ts +6 -0
  78. package/dist/components/spin/Indicator/Progress.d.ts.map +1 -0
  79. package/dist/components/spin/Indicator/Progress.js +59 -0
  80. package/dist/components/spin/Indicator/Progress.js.map +1 -0
  81. package/dist/components/spin/Indicator/index.d.ts +8 -0
  82. package/dist/components/spin/Indicator/index.d.ts.map +1 -0
  83. package/dist/components/spin/Indicator/index.js +20 -0
  84. package/dist/components/spin/Indicator/index.js.map +1 -0
  85. package/dist/components/spin/component.d.ts +28 -4
  86. package/dist/components/spin/component.d.ts.map +1 -1
  87. package/dist/components/spin/component.js +162 -14
  88. package/dist/components/spin/component.js.map +1 -1
  89. package/dist/components/spin/style.css +1 -1
  90. package/dist/components/spin/usePercent.d.ts +2 -0
  91. package/dist/components/spin/usePercent.d.ts.map +1 -0
  92. package/dist/components/spin/usePercent.js +27 -0
  93. package/dist/components/spin/usePercent.js.map +1 -0
  94. package/dist/components/theme-provider/style.css +1 -1
  95. package/dist/components/toast/component.d.ts +2 -2
  96. package/dist/components/toast/component.d.ts.map +1 -1
  97. package/dist/components/toast/component.js +14 -20
  98. package/dist/components/toast/component.js.map +1 -1
  99. package/dist/components/toast/function.d.ts +7 -8
  100. package/dist/components/toast/function.d.ts.map +1 -1
  101. package/dist/components/toast/function.js.map +1 -1
  102. package/dist/components/toast/style.css +1 -1
  103. package/dist/components/toast/types.d.ts +4 -0
  104. package/dist/components/toast/types.d.ts.map +1 -1
  105. package/dist/components/utils/cn.d.ts.map +1 -1
  106. package/dist/components/utils/cn.js +112 -20
  107. package/dist/components/utils/cn.js.map +1 -1
  108. package/dist/components/utils/placement.d.ts +9 -2
  109. package/dist/components/utils/placement.d.ts.map +1 -1
  110. package/dist/components/utils/placement.js +29 -18
  111. package/dist/components/utils/placement.js.map +1 -1
  112. package/dist/components/utils/reactElement.d.ts +2 -0
  113. package/dist/components/utils/reactElement.d.ts.map +1 -1
  114. package/dist/components/utils/reactElement.js +10 -2
  115. package/dist/components/utils/reactElement.js.map +1 -1
  116. package/dist/components/utils/renderProp.d.ts.map +1 -1
  117. package/dist/components/utils/renderProp.js +9 -8
  118. package/dist/components/utils/renderProp.js.map +1 -1
  119. package/dist/components/utils/theme.d.ts.map +1 -1
  120. package/dist/components/utils/theme.js +3 -1
  121. package/dist/components/utils/theme.js.map +1 -1
  122. package/dist/index.js +239 -235
  123. package/dist/index.js.map +1 -1
  124. package/dist/metadata.d.ts +28 -1
  125. package/dist/metadata.d.ts.map +1 -1
  126. package/dist/metadata.js +52 -1
  127. package/dist/metadata.js.map +1 -1
  128. package/dist/stats.html +1 -1
  129. package/dist/tokens/and-theme/tokens.d.ts.map +1 -1
  130. package/dist/tokens/and-theme/tokens.js +61 -56
  131. package/dist/tokens/and-theme/tokens.js.map +1 -1
  132. package/package.json +3 -3
  133. package/dist/components/hooks/useBaseUIPlacement.d.ts +0 -64
  134. package/dist/components/hooks/useBaseUIPlacement.d.ts.map +0 -1
  135. package/dist/components/hooks/useBaseUIPlacement.js +0 -61
  136. package/dist/components/hooks/useBaseUIPlacement.js.map +0 -1
@@ -0,0 +1,231 @@
1
+ "use client";
2
+ import { jsx as e, jsxs as n } from "react/jsx-runtime";
3
+ import { Dialog as s } from "@base-ui/react/dialog";
4
+ import { useStableCallback as D } from "@base-ui/utils/useStableCallback";
5
+ import { XIcon as be } from "@bioturing/assets";
6
+ import { getConfirmLocale as Le } from "antd/es/modal/locale";
7
+ import { useLocale as Te } from "antd/es/locale";
8
+ import { useState as Ie, useRef as ye, useMemo as Se, useCallback as xe, useEffect as we } from "react";
9
+ import { Button as z } from "../button/component.js";
10
+ import { useControlledState as Fe } from "../hooks/useControlledState.js";
11
+ import { Stack as b } from "../stack/index.js";
12
+ import { DIALOG_SIZE_WIDTHS as L, DIALOG_CLOSE_REASON_ESCAPE as Ge, DIALOG_DEFAULT_CANCEL_TEXT as ke, DIALOG_DEFAULT_OK_TEXT as Re, DIALOG_DEFAULT_SIZE as Ue, DIALOG_DEFAULT_BODY_SCROLLABLE as ze, DIALOG_DEFAULT_CENTERED as He, DIALOG_DEFAULT_OPEN as $e } from "./constants.js";
13
+ import { useCls as Be } from "../utils/antdUtils.js";
14
+ import { useTheme as Me } from "../theme-provider/context/themeStore.js";
15
+ import { clsx as d } from "../utils/cn.js";
16
+ import { Truncate as We } from "../truncate/component.js";
17
+ import { IconButton as Xe } from "../icon-button/component.js";
18
+ import { Spin as je } from "../spin/component.js";
19
+ const Ke = parseInt(
20
+ L.medium,
21
+ 10
22
+ );
23
+ function Ve(r) {
24
+ if (!(typeof r > "u"))
25
+ return r === !1 || r === 0 ? "0" : typeof r == "number" ? `${r}px` : r;
26
+ }
27
+ function Ze(r, u) {
28
+ if (u)
29
+ return u;
30
+ const f = parseInt(L[r], 10);
31
+ return !Number.isNaN(f) && f <= Ke ? "elevated" : "container";
32
+ }
33
+ const mo = ({
34
+ children: r,
35
+ open: u,
36
+ defaultOpen: f = $e,
37
+ onCancel: H,
38
+ onClose: $,
39
+ onOk: B,
40
+ title: i,
41
+ footer: p,
42
+ size: M,
43
+ loading: g = !1,
44
+ confirmLoading: c = !1,
45
+ hideOkButton: T = !1,
46
+ hideCancelButton: I = !1,
47
+ okText: W = Re,
48
+ cancelText: X = ke,
49
+ okType: j = "primary",
50
+ contentPadding: K,
51
+ afterTitle: h,
52
+ beforeCloseButton: y,
53
+ afterCloseButton: S,
54
+ defaultFixedHeaderFooter: V = !1,
55
+ centered: Z = He,
56
+ type: Y = "default",
57
+ background: q,
58
+ bodyScrollable: J = ze,
59
+ closeIcon: C,
60
+ closable: P = !0,
61
+ maskClosable: Q = !0,
62
+ keyboard: ee = !0,
63
+ width: O,
64
+ style: x,
65
+ destroyOnHidden: oe = !1,
66
+ afterOpenChange: re,
67
+ className: le,
68
+ rootClassName: se,
69
+ headerClassName: ae,
70
+ bodyClassName: te,
71
+ footerClassName: ne,
72
+ okButtonProps: v,
73
+ cancelButtonProps: ie
74
+ }) => {
75
+ const o = Be(), { className: ce } = Me(), [de, A] = Fe(
76
+ u,
77
+ void 0,
78
+ f
79
+ ), [w] = Te("Modal", Le()), [ue, fe] = Ie(!1), a = ye(null), m = M ?? (Y === "default" ? Ue : "xsmall"), F = m === "fullscreen", E = typeof p < "u", me = !E && !(T && I), G = P && C !== !1, k = Ze(m, q), pe = C === void 0 ? /* @__PURE__ */ e(be, { size: 16, weight: "bold" }) : C, N = Ve(K), ge = W || w?.okText, _ = X || w?.cancelText, he = typeof _ == "string" ? _ : "Close", R = typeof O == "number" ? `${O}px` : O ?? L[m], Ce = Se(
80
+ () => ({
81
+ "--ds-dialog-width": R,
82
+ "--ds-dialog-bg": `var(--ds-color-bg-${k})`,
83
+ ...N ? {
84
+ "--ds-dialog-content-padding": N
85
+ } : {},
86
+ ...x
87
+ }),
88
+ [k, N, R, x]
89
+ ), Oe = xe((l) => {
90
+ if (a.current && (a.current.disconnect(), a.current = null), !l)
91
+ return;
92
+ const t = () => {
93
+ fe(l.scrollHeight > l.clientHeight);
94
+ }, U = new ResizeObserver(() => {
95
+ t();
96
+ });
97
+ U.observe(l), a.current = U, t();
98
+ }, []);
99
+ we(() => () => {
100
+ a.current && (a.current.disconnect(), a.current = null);
101
+ }, []);
102
+ const ve = D((l) => {
103
+ c || (A(!1), H?.(l), $?.(l));
104
+ }), Ae = D((l) => {
105
+ c || (A(!1), B?.(l));
106
+ }), Ee = D(
107
+ (l, t) => {
108
+ if (l) {
109
+ A(!0);
110
+ return;
111
+ }
112
+ if (t.reason === Ge && ee === !1) {
113
+ t.cancel();
114
+ return;
115
+ }
116
+ if (c) {
117
+ t.cancel();
118
+ return;
119
+ }
120
+ ve(t.event);
121
+ }
122
+ ), Ne = i || h || y || S || G, _e = E ? p !== null : me, De = V || ue || F;
123
+ return /* @__PURE__ */ e(
124
+ s.Root,
125
+ {
126
+ open: !!de,
127
+ onOpenChange: Ee,
128
+ onOpenChangeComplete: re,
129
+ modal: !0,
130
+ disablePointerDismissal: !Q,
131
+ children: /* @__PURE__ */ n(s.Portal, { keepMounted: !oe, children: [
132
+ /* @__PURE__ */ e(s.Backdrop, { className: o("dialog-mask") }),
133
+ /* @__PURE__ */ e(
134
+ s.Viewport,
135
+ {
136
+ className: d(
137
+ ce,
138
+ se,
139
+ o(
140
+ "dialog-wrap",
141
+ Z ? "dialog-centered" : "dialog-top-aligned",
142
+ F && "dialog-wrap-fullscreen"
143
+ )
144
+ ),
145
+ children: /* @__PURE__ */ e(
146
+ s.Popup,
147
+ {
148
+ className: d(
149
+ o(
150
+ "dialog",
151
+ `dialog-size-${m}`,
152
+ De && "dialog-fixed",
153
+ J === !1 && "dialog-no-body-scroll",
154
+ g && "dialog-loading"
155
+ ),
156
+ le
157
+ ),
158
+ style: Ce,
159
+ "aria-busy": g || void 0,
160
+ children: /* @__PURE__ */ n("div", { className: o("dialog-content"), children: [
161
+ Ne && /* @__PURE__ */ n("div", { className: d(o("dialog-header"), ae), children: [
162
+ /* @__PURE__ */ n(
163
+ b,
164
+ {
165
+ align: "center",
166
+ gap: 8,
167
+ className: o("dialog-title-row"),
168
+ children: [
169
+ /* @__PURE__ */ e(b.Child, { grow: !0, children: i ? /* @__PURE__ */ e(s.Title, { className: o("dialog-title"), children: typeof i == "string" ? /* @__PURE__ */ e(We, { children: i }) : i }) : /* @__PURE__ */ e("div", {}) }),
170
+ /* @__PURE__ */ n(b.Child, { stack: !0, hug: !0, align: "center", gap: 8, children: [
171
+ y,
172
+ G && /* @__PURE__ */ e(
173
+ s.Close,
174
+ {
175
+ render: /* @__PURE__ */ e(
176
+ Xe,
177
+ {
178
+ className: o("dialog-close"),
179
+ "aria-label": he,
180
+ children: pe
181
+ }
182
+ )
183
+ }
184
+ ),
185
+ S
186
+ ] })
187
+ ]
188
+ }
189
+ ),
190
+ h ? /* @__PURE__ */ e("div", { className: o("dialog-header-after-title"), children: h }) : null
191
+ ] }),
192
+ /* @__PURE__ */ e(
193
+ "div",
194
+ {
195
+ ref: Oe,
196
+ className: d(o("dialog-body"), te),
197
+ children: g ? /* @__PURE__ */ e(je, { spinning: !0, className: o("dialog-body-spin"), children: /* @__PURE__ */ e("div", { className: o("dialog-body-content"), children: r }) }) : r
198
+ }
199
+ ),
200
+ _e && /* @__PURE__ */ e("div", { className: d(o("dialog-footer"), ne), children: E ? p : /* @__PURE__ */ n("div", { className: o("dialog-footer-actions"), children: [
201
+ !I && /* @__PURE__ */ e(
202
+ s.Close,
203
+ {
204
+ render: /* @__PURE__ */ e(z, { type: "default", ...ie, children: _ })
205
+ }
206
+ ),
207
+ !T && /* @__PURE__ */ e(
208
+ z,
209
+ {
210
+ type: j,
211
+ ...v,
212
+ disabled: c || v?.disabled,
213
+ loading: c || v?.loading,
214
+ onClick: Ae,
215
+ children: ge
216
+ }
217
+ )
218
+ ] }) })
219
+ ] })
220
+ }
221
+ )
222
+ }
223
+ )
224
+ ] })
225
+ }
226
+ );
227
+ };
228
+ export {
229
+ mo as Dialog
230
+ };
231
+ //# sourceMappingURL=Dialog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Dialog.js","sources":["../../../src/components/dialog/Dialog.tsx"],"sourcesContent":["\"use client\";\n\nimport { Dialog as BaseDialog } from \"@base-ui/react/dialog\";\nimport { useStableCallback } from \"@base-ui/utils/useStableCallback\";\nimport { XIcon } from \"@bioturing/assets\";\nimport { getConfirmLocale } from \"antd/es/modal/locale\";\nimport { useLocale } from \"antd/es/locale\";\nimport React, {\n\tuseCallback,\n\tuseEffect,\n\tuseMemo,\n\tuseRef,\n\tuseState,\n} from \"react\";\nimport { Button, type ButtonProps } from \"../button/component\";\nimport { useControlledState } from \"../hooks/useControlledState\";\nimport { IconButton } from \"../icon-button\";\nimport { Spin } from \"../spin\";\nimport { Stack } from \"../stack\";\nimport { useTheme } from \"../theme-provider\";\nimport { Truncate } from \"../truncate\";\nimport { clsx, useCls } from \"../utils\";\nimport type { ModalType } from \"../modal/functions\";\nimport {\n\tDIALOG_CLOSE_REASON_ESCAPE,\n\tDIALOG_DEFAULT_BODY_SCROLLABLE,\n\tDIALOG_DEFAULT_CANCEL_TEXT,\n\tDIALOG_DEFAULT_CENTERED,\n\tDIALOG_DEFAULT_OK_TEXT,\n\tDIALOG_DEFAULT_OPEN,\n\tDIALOG_DEFAULT_SIZE,\n\tDIALOG_SIZE_WIDTHS,\n\ttype DialogBackground,\n\ttype DialogSize,\n} from \"./constants\";\n\nexport type DialogCancelEvent = Event | React.MouseEvent<HTMLButtonElement>;\nexport type DialogOkEvent = React.MouseEvent<HTMLButtonElement>;\n\nconst DIALOG_ELEVATED_BACKGROUND_MAX_WIDTH = parseInt(\n\tDIALOG_SIZE_WIDTHS.medium,\n\t10,\n);\n\nfunction resolveContentPadding(\n\tcontentPadding: number | string | boolean | undefined,\n) {\n\tif (typeof contentPadding === \"undefined\") {\n\t\treturn undefined;\n\t}\n\n\tif (contentPadding === false || contentPadding === 0) {\n\t\treturn \"0\";\n\t}\n\n\treturn typeof contentPadding === \"number\"\n\t\t? `${contentPadding}px`\n\t\t: contentPadding;\n}\n\nfunction resolveBackground(\n\tsize: DialogSize,\n\tbackground?: DialogBackground,\n): DialogBackground {\n\tif (background) {\n\t\treturn background;\n\t}\n\n\tconst dialogWidth = parseInt(DIALOG_SIZE_WIDTHS[size], 10);\n\n\tif (\n\t\t!Number.isNaN(dialogWidth) &&\n\t\tdialogWidth <= DIALOG_ELEVATED_BACKGROUND_MAX_WIDTH\n\t) {\n\t\treturn \"elevated\";\n\t}\n\n\treturn \"container\";\n}\n\nexport interface DialogProps {\n\tchildren?: React.ReactNode;\n\topen?: boolean;\n\tdefaultOpen?: boolean;\n\tonCancel?: (event?: DialogCancelEvent) => void;\n\t/**\n\t * @deprecated Use `onCancel` instead.\n\t */\n\tonClose?: (event?: DialogCancelEvent) => void;\n\tonOk?: (event: DialogOkEvent) => void;\n\ttitle?: React.ReactNode;\n\tfooter?: React.ReactNode;\n\tsize?: DialogSize;\n\tloading?: boolean;\n\tconfirmLoading?: boolean;\n\thideOkButton?: boolean;\n\thideCancelButton?: boolean;\n\tokText?: React.ReactNode;\n\tcancelText?: React.ReactNode;\n\tokType?: ButtonProps[\"type\"];\n\tcontentPadding?: number | string | boolean;\n\tafterTitle?: React.ReactNode;\n\tbeforeCloseButton?: React.ReactNode;\n\tafterCloseButton?: React.ReactNode;\n\tdefaultFixedHeaderFooter?: boolean;\n\tcentered?: boolean;\n\ttype?: ModalType;\n\tbackground?: DialogBackground;\n\tbodyScrollable?: boolean;\n\tcloseIcon?: React.ReactNode | false;\n\tclosable?: boolean;\n\tmaskClosable?: boolean;\n\tkeyboard?: boolean;\n\twidth?: number | string;\n\tstyle?: React.CSSProperties;\n\tdestroyOnHidden?: boolean;\n\tafterOpenChange?: (open: boolean) => void;\n\tclassName?: string;\n\trootClassName?: string;\n\theaderClassName?: string;\n\tbodyClassName?: string;\n\tfooterClassName?: string;\n\tokButtonProps?: ButtonProps;\n\tcancelButtonProps?: ButtonProps;\n}\n\nexport const Dialog = ({\n\tchildren,\n\topen: openProp,\n\tdefaultOpen = DIALOG_DEFAULT_OPEN,\n\tonCancel,\n\tonClose,\n\tonOk,\n\ttitle,\n\tfooter,\n\tsize,\n\tloading = false,\n\tconfirmLoading = false,\n\thideOkButton = false,\n\thideCancelButton = false,\n\tokText = DIALOG_DEFAULT_OK_TEXT,\n\tcancelText = DIALOG_DEFAULT_CANCEL_TEXT,\n\tokType = \"primary\",\n\tcontentPadding,\n\tafterTitle,\n\tbeforeCloseButton,\n\tafterCloseButton,\n\tdefaultFixedHeaderFooter = false,\n\tcentered = DIALOG_DEFAULT_CENTERED,\n\ttype = \"default\",\n\tbackground,\n\tbodyScrollable = DIALOG_DEFAULT_BODY_SCROLLABLE,\n\tcloseIcon,\n\tclosable = true,\n\tmaskClosable = true,\n\tkeyboard = true,\n\twidth,\n\tstyle,\n\tdestroyOnHidden = false,\n\tafterOpenChange,\n\tclassName,\n\trootClassName,\n\theaderClassName,\n\tbodyClassName,\n\tfooterClassName,\n\tokButtonProps,\n\tcancelButtonProps,\n}: DialogProps) => {\n\tconst cls = useCls();\n\tconst { className: themeClassName } = useTheme();\n\tconst [actualOpen, setActualOpen] = useControlledState(\n\t\topenProp,\n\t\tundefined,\n\t\tdefaultOpen,\n\t);\n\tconst [locale] = useLocale(\"Modal\", getConfirmLocale());\n\tconst [isContentOverflow, setIsContentOverflow] = useState(false);\n\tconst resizeObserverRef = useRef<ResizeObserver | null>(null);\n\n\tconst resolvedSize =\n\t\tsize ?? (type === \"default\" ? DIALOG_DEFAULT_SIZE : \"xsmall\");\n\tconst isFullscreen = resolvedSize === \"fullscreen\";\n\tconst hasCustomFooter = typeof footer !== \"undefined\";\n\tconst showDefaultFooter =\n\t\t!hasCustomFooter && !(hideOkButton && hideCancelButton);\n\tconst showCloseButton = closable && closeIcon !== false;\n\tconst resolvedBackground = resolveBackground(resolvedSize, background);\n\tconst resolvedCloseIcon =\n\t\tcloseIcon === undefined ? <XIcon size={16} weight=\"bold\" /> : closeIcon;\n\tconst resolvedContentPadding = resolveContentPadding(contentPadding);\n\tconst okTextLocale = okText || locale?.okText;\n\tconst cancelTextLocale = cancelText || locale?.cancelText;\n\tconst closeAriaLabel =\n\t\ttypeof cancelTextLocale === \"string\" ? cancelTextLocale : \"Close\";\n\tconst resolvedWidth =\n\t\ttypeof width === \"number\"\n\t\t\t? `${width}px`\n\t\t\t: (width ?? DIALOG_SIZE_WIDTHS[resolvedSize]);\n\n\tconst popupStyle = useMemo(\n\t\t() =>\n\t\t\t({\n\t\t\t\t\"--ds-dialog-width\": resolvedWidth,\n\t\t\t\t\"--ds-dialog-bg\": `var(--ds-color-bg-${resolvedBackground})`,\n\t\t\t\t...(resolvedContentPadding\n\t\t\t\t\t? {\n\t\t\t\t\t\t\t\"--ds-dialog-content-padding\": resolvedContentPadding,\n\t\t\t\t\t\t}\n\t\t\t\t\t: {}),\n\t\t\t\t...style,\n\t\t\t}) as React.CSSProperties,\n\t\t[resolvedBackground, resolvedContentPadding, resolvedWidth, style],\n\t);\n\n\tconst observeBodyOverflow = useCallback((node: HTMLDivElement | null) => {\n\t\tif (resizeObserverRef.current) {\n\t\t\tresizeObserverRef.current.disconnect();\n\t\t\tresizeObserverRef.current = null;\n\t\t}\n\n\t\tif (!node) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst updateOverflowState = () => {\n\t\t\tsetIsContentOverflow(node.scrollHeight > node.clientHeight);\n\t\t};\n\n\t\tconst resizeObserver = new ResizeObserver(() => {\n\t\t\tupdateOverflowState();\n\t\t});\n\n\t\tresizeObserver.observe(node);\n\t\tresizeObserverRef.current = resizeObserver;\n\t\tupdateOverflowState();\n\t}, []);\n\n\tuseEffect(() => {\n\t\treturn () => {\n\t\t\tif (resizeObserverRef.current) {\n\t\t\t\tresizeObserverRef.current.disconnect();\n\t\t\t\tresizeObserverRef.current = null;\n\t\t\t}\n\t\t};\n\t}, []);\n\n\tconst handleCancel = useStableCallback((event?: DialogCancelEvent) => {\n\t\tif (confirmLoading) {\n\t\t\treturn;\n\t\t}\n\t\tsetActualOpen(false);\n\t\tonCancel?.(event);\n\t\tonClose?.(event);\n\t});\n\n\tconst handleOk = useStableCallback((event: DialogOkEvent) => {\n\t\tif (confirmLoading) {\n\t\t\treturn;\n\t\t}\n\t\tsetActualOpen(false);\n\t\tonOk?.(event);\n\t});\n\n\tconst handleOpenChange = useStableCallback(\n\t\t(\n\t\t\tnextOpen: boolean,\n\t\t\teventDetails: Parameters<\n\t\t\t\tNonNullable<\n\t\t\t\t\tReact.ComponentProps<typeof BaseDialog.Root>[\"onOpenChange\"]\n\t\t\t\t>\n\t\t\t>[1],\n\t\t) => {\n\t\t\tif (nextOpen) {\n\t\t\t\tsetActualOpen(true);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (\n\t\t\t\teventDetails.reason === DIALOG_CLOSE_REASON_ESCAPE &&\n\t\t\t\tkeyboard === false\n\t\t\t) {\n\t\t\t\teventDetails.cancel();\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (confirmLoading) {\n\t\t\t\teventDetails.cancel();\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\thandleCancel(eventDetails.event);\n\t\t},\n\t);\n\n\tconst hasHeader =\n\t\ttitle ||\n\t\tafterTitle ||\n\t\tbeforeCloseButton ||\n\t\tafterCloseButton ||\n\t\tshowCloseButton;\n\tconst hasFooter = hasCustomFooter ? footer !== null : showDefaultFooter;\n\tconst fixedChrome =\n\t\tdefaultFixedHeaderFooter || isContentOverflow || isFullscreen;\n\n\treturn (\n\t\t<BaseDialog.Root\n\t\t\topen={!!actualOpen}\n\t\t\tonOpenChange={handleOpenChange}\n\t\t\tonOpenChangeComplete={afterOpenChange}\n\t\t\tmodal={true}\n\t\t\tdisablePointerDismissal={!maskClosable}\n\t\t>\n\t\t\t<BaseDialog.Portal keepMounted={!destroyOnHidden}>\n\t\t\t\t<BaseDialog.Backdrop className={cls(\"dialog-mask\")} />\n\t\t\t\t<BaseDialog.Viewport\n\t\t\t\t\tclassName={clsx(\n\t\t\t\t\t\tthemeClassName,\n\t\t\t\t\t\trootClassName,\n\t\t\t\t\t\tcls(\n\t\t\t\t\t\t\t\"dialog-wrap\",\n\t\t\t\t\t\t\tcentered ? \"dialog-centered\" : \"dialog-top-aligned\",\n\t\t\t\t\t\t\tisFullscreen && \"dialog-wrap-fullscreen\",\n\t\t\t\t\t\t),\n\t\t\t\t\t)}\n\t\t\t\t>\n\t\t\t\t\t<BaseDialog.Popup\n\t\t\t\t\t\tclassName={clsx(\n\t\t\t\t\t\t\tcls(\n\t\t\t\t\t\t\t\t\"dialog\",\n\t\t\t\t\t\t\t\t`dialog-size-${resolvedSize}`,\n\t\t\t\t\t\t\t\tfixedChrome && \"dialog-fixed\",\n\t\t\t\t\t\t\t\tbodyScrollable === false && \"dialog-no-body-scroll\",\n\t\t\t\t\t\t\t\tloading && \"dialog-loading\",\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\tclassName,\n\t\t\t\t\t\t)}\n\t\t\t\t\t\tstyle={popupStyle}\n\t\t\t\t\t\taria-busy={loading || undefined}\n\t\t\t\t\t>\n\t\t\t\t\t\t<div className={cls(\"dialog-content\")}>\n\t\t\t\t\t\t\t{hasHeader && (\n\t\t\t\t\t\t\t\t<div className={clsx(cls(\"dialog-header\"), headerClassName)}>\n\t\t\t\t\t\t\t\t\t<Stack\n\t\t\t\t\t\t\t\t\t\talign=\"center\"\n\t\t\t\t\t\t\t\t\t\tgap={8}\n\t\t\t\t\t\t\t\t\t\tclassName={cls(\"dialog-title-row\")}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<Stack.Child grow>\n\t\t\t\t\t\t\t\t\t\t\t{title ? (\n\t\t\t\t\t\t\t\t\t\t\t\t<BaseDialog.Title className={cls(\"dialog-title\")}>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{typeof title === \"string\" ? (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<Truncate>{title}</Truncate>\n\t\t\t\t\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\ttitle\n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t</BaseDialog.Title>\n\t\t\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\t\t<div />\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t</Stack.Child>\n\t\t\t\t\t\t\t\t\t\t<Stack.Child stack hug align=\"center\" gap={8}>\n\t\t\t\t\t\t\t\t\t\t\t{beforeCloseButton}\n\t\t\t\t\t\t\t\t\t\t\t{showCloseButton && (\n\t\t\t\t\t\t\t\t\t\t\t\t<BaseDialog.Close\n\t\t\t\t\t\t\t\t\t\t\t\t\trender={\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<IconButton\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tclassName={cls(\"dialog-close\")}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\taria-label={closeAriaLabel}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{resolvedCloseIcon}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t</IconButton>\n\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t{afterCloseButton}\n\t\t\t\t\t\t\t\t\t\t</Stack.Child>\n\t\t\t\t\t\t\t\t\t</Stack>\n\t\t\t\t\t\t\t\t\t{afterTitle ? (\n\t\t\t\t\t\t\t\t\t\t<div className={cls(\"dialog-header-after-title\")}>\n\t\t\t\t\t\t\t\t\t\t\t{afterTitle}\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t) : null}\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\tref={observeBodyOverflow}\n\t\t\t\t\t\t\t\tclassName={clsx(cls(\"dialog-body\"), bodyClassName)}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{loading ? (\n\t\t\t\t\t\t\t\t\t<Spin spinning className={cls(\"dialog-body-spin\")}>\n\t\t\t\t\t\t\t\t\t\t<div className={cls(\"dialog-body-content\")}>{children}</div>\n\t\t\t\t\t\t\t\t\t</Spin>\n\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\tchildren\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t\t{hasFooter && (\n\t\t\t\t\t\t\t\t<div className={clsx(cls(\"dialog-footer\"), footerClassName)}>\n\t\t\t\t\t\t\t\t\t{hasCustomFooter ? (\n\t\t\t\t\t\t\t\t\t\tfooter\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t<div className={cls(\"dialog-footer-actions\")}>\n\t\t\t\t\t\t\t\t\t\t\t{!hideCancelButton && (\n\t\t\t\t\t\t\t\t\t\t\t\t<BaseDialog.Close\n\t\t\t\t\t\t\t\t\t\t\t\t\trender={\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<Button type=\"default\" {...cancelButtonProps}>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{cancelTextLocale}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t{!hideOkButton && (\n\t\t\t\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\t\t\t\ttype={okType}\n\t\t\t\t\t\t\t\t\t\t\t\t\t{...okButtonProps}\n\t\t\t\t\t\t\t\t\t\t\t\t\tdisabled={confirmLoading || okButtonProps?.disabled}\n\t\t\t\t\t\t\t\t\t\t\t\t\tloading={confirmLoading || okButtonProps?.loading}\n\t\t\t\t\t\t\t\t\t\t\t\t\tonClick={handleOk}\n\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{okTextLocale}\n\t\t\t\t\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</BaseDialog.Popup>\n\t\t\t\t</BaseDialog.Viewport>\n\t\t\t</BaseDialog.Portal>\n\t\t</BaseDialog.Root>\n\t);\n};\n"],"names":["DIALOG_ELEVATED_BACKGROUND_MAX_WIDTH","DIALOG_SIZE_WIDTHS","resolveContentPadding","contentPadding","resolveBackground","size","background","dialogWidth","Dialog","children","openProp","defaultOpen","DIALOG_DEFAULT_OPEN","onCancel","onClose","onOk","title","footer","loading","confirmLoading","hideOkButton","hideCancelButton","okText","DIALOG_DEFAULT_OK_TEXT","cancelText","DIALOG_DEFAULT_CANCEL_TEXT","okType","afterTitle","beforeCloseButton","afterCloseButton","defaultFixedHeaderFooter","centered","DIALOG_DEFAULT_CENTERED","type","bodyScrollable","DIALOG_DEFAULT_BODY_SCROLLABLE","closeIcon","closable","maskClosable","keyboard","width","style","destroyOnHidden","afterOpenChange","className","rootClassName","headerClassName","bodyClassName","footerClassName","okButtonProps","cancelButtonProps","cls","useCls","themeClassName","useTheme","actualOpen","setActualOpen","useControlledState","locale","useLocale","getConfirmLocale","isContentOverflow","setIsContentOverflow","useState","resizeObserverRef","useRef","resolvedSize","DIALOG_DEFAULT_SIZE","isFullscreen","hasCustomFooter","showDefaultFooter","showCloseButton","resolvedBackground","resolvedCloseIcon","jsx","XIcon","resolvedContentPadding","okTextLocale","cancelTextLocale","closeAriaLabel","resolvedWidth","popupStyle","useMemo","observeBodyOverflow","useCallback","node","updateOverflowState","resizeObserver","useEffect","handleCancel","useStableCallback","event","handleOk","handleOpenChange","nextOpen","eventDetails","DIALOG_CLOSE_REASON_ESCAPE","hasHeader","hasFooter","fixedChrome","BaseDialog","clsx","jsxs","Stack","Truncate","IconButton","Spin","Button"],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ export declare const DIALOG_SIZE_WIDTHS: {
2
+ readonly xsmall: "400px";
3
+ readonly small: "520px";
4
+ readonly medium: "640px";
5
+ readonly large: "840px";
6
+ readonly xlarge: "1024px";
7
+ readonly xxlarge: "1280px";
8
+ readonly fullscreen: "100%";
9
+ };
10
+ export declare const DIALOG_DEFAULT_SIZE = "medium";
11
+ export declare const DIALOG_DEFAULT_CENTERED = true;
12
+ export declare const DIALOG_DEFAULT_BODY_SCROLLABLE = true;
13
+ export declare const DIALOG_DEFAULT_OPEN = true;
14
+ export declare const DIALOG_DEFAULT_OK_TEXT = "OK";
15
+ export declare const DIALOG_DEFAULT_CANCEL_TEXT = "Close";
16
+ export declare const DIALOG_CLOSE_REASON_ESCAPE = "escape-key";
17
+ export declare const DIALOG_CLOSE_REASON_OUTSIDE = "outside-press";
18
+ export type DialogSize = keyof typeof DIALOG_SIZE_WIDTHS;
19
+ export type DialogBackground = "elevated" | "container";
20
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/components/dialog/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,kBAAkB;;;;;;;;CAQrB,CAAC;AAEX,eAAO,MAAM,mBAAmB,WAAW,CAAC;AAC5C,eAAO,MAAM,uBAAuB,OAAO,CAAC;AAC5C,eAAO,MAAM,8BAA8B,OAAO,CAAC;AACnD,eAAO,MAAM,mBAAmB,OAAO,CAAC;AACxC,eAAO,MAAM,sBAAsB,OAAO,CAAC;AAC3C,eAAO,MAAM,0BAA0B,UAAU,CAAC;AAClD,eAAO,MAAM,0BAA0B,eAAe,CAAC;AACvD,eAAO,MAAM,2BAA2B,kBAAkB,CAAC;AAE3D,MAAM,MAAM,UAAU,GAAG,MAAM,OAAO,kBAAkB,CAAC;AACzD,MAAM,MAAM,gBAAgB,GAAG,UAAU,GAAG,WAAW,CAAC"}
@@ -0,0 +1,20 @@
1
+ const E = {
2
+ xsmall: "400px",
3
+ small: "520px",
4
+ medium: "640px",
5
+ large: "840px",
6
+ xlarge: "1024px",
7
+ xxlarge: "1280px",
8
+ fullscreen: "100%"
9
+ }, _ = "medium", L = !0, A = !0, D = !0, e = "OK", O = "Close", s = "escape-key";
10
+ export {
11
+ s as DIALOG_CLOSE_REASON_ESCAPE,
12
+ A as DIALOG_DEFAULT_BODY_SCROLLABLE,
13
+ O as DIALOG_DEFAULT_CANCEL_TEXT,
14
+ L as DIALOG_DEFAULT_CENTERED,
15
+ e as DIALOG_DEFAULT_OK_TEXT,
16
+ D as DIALOG_DEFAULT_OPEN,
17
+ _ as DIALOG_DEFAULT_SIZE,
18
+ E as DIALOG_SIZE_WIDTHS
19
+ };
20
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sources":["../../../src/components/dialog/constants.ts"],"sourcesContent":["export const DIALOG_SIZE_WIDTHS = {\n xsmall: \"400px\",\n small: \"520px\",\n medium: \"640px\",\n large: \"840px\",\n xlarge: \"1024px\",\n xxlarge: \"1280px\",\n fullscreen: \"100%\",\n} as const;\n\nexport const DIALOG_DEFAULT_SIZE = \"medium\";\nexport const DIALOG_DEFAULT_CENTERED = true;\nexport const DIALOG_DEFAULT_BODY_SCROLLABLE = true;\nexport const DIALOG_DEFAULT_OPEN = true;\nexport const DIALOG_DEFAULT_OK_TEXT = \"OK\";\nexport const DIALOG_DEFAULT_CANCEL_TEXT = \"Close\";\nexport const DIALOG_CLOSE_REASON_ESCAPE = \"escape-key\";\nexport const DIALOG_CLOSE_REASON_OUTSIDE = \"outside-press\";\n\nexport type DialogSize = keyof typeof DIALOG_SIZE_WIDTHS;\nexport type DialogBackground = \"elevated\" | \"container\";\n\n"],"names":["DIALOG_SIZE_WIDTHS","DIALOG_DEFAULT_SIZE","DIALOG_DEFAULT_CENTERED","DIALOG_DEFAULT_BODY_SCROLLABLE","DIALOG_DEFAULT_OPEN","DIALOG_DEFAULT_OK_TEXT","DIALOG_DEFAULT_CANCEL_TEXT","DIALOG_CLOSE_REASON_ESCAPE"],"mappings":"AAAO,MAAMA,IAAqB;AAAA,EAChC,QAAQ;AAAA,EACR,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,SAAS;AAAA,EACT,YAAY;AACd,GAEaC,IAAsB,UACtBC,IAA0B,IAC1BC,IAAiC,IACjCC,IAAsB,IACtBC,IAAyB,MACzBC,IAA6B,SAC7BC,IAA6B;"}
@@ -0,0 +1 @@
1
+ @layer components{.ds-dialog-mask{position:fixed;inset:0;z-index:var(--ds-z-index-modal-mask);background-color:var(--ds-color-bg-mask);transition:opacity .2s var(--ds-motion-ease-out)}.ds-dialog-mask[data-starting-style],.ds-dialog-mask[data-ending-style]{opacity:0}.ds-dialog-wrap{--ds-dialog-edge-padding: var(--ds-modal-edge-padding);position:fixed;inset:0;z-index:var(--ds-z-index-modal);display:flex;overflow-y:auto;padding:var(--ds-dialog-edge-padding);outline:0;-webkit-overflow-scrolling:touch}.ds-dialog-centered{align-items:center;justify-content:center}.ds-dialog-top-aligned{align-items:flex-start;justify-content:center;padding-top:calc(var(--ds-dialog-edge-padding) + 4rem)}.ds-dialog-wrap-fullscreen{padding:0}.ds-dialog{width:min(var(--ds-dialog-width),calc(100vw - var(--ds-dialog-edge-padding) * 2));max-width:100%;max-height:calc(100vh - var(--ds-dialog-edge-padding) * 2);margin:auto;padding-bottom:0;pointer-events:none;position:relative;top:0;transform-origin:center;transition:transform .2s var(--ds-motion-ease-out),opacity .2s var(--ds-motion-ease-out)}.ds-dialog[data-starting-style],.ds-dialog[data-ending-style]{transform:scale(.96);opacity:0}.ds-dialog-content{width:100%;max-height:inherit;display:flex;flex-direction:column;overflow:hidden;border-radius:var(--ds-border-radius-lg);background:var(--ds-dialog-bg, var(--ds-color-bg-elevated));box-shadow:var(--ds-box-shadow-secondary);color:var(--ds-color-text);pointer-events:auto}.ds-dialog-content:focus,.ds-dialog-content:focus-visible{outline:none}.ds-dialog-size-fullscreen{width:100vw;max-width:100vw;height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;top:0}.ds-dialog-size-fullscreen .ds-dialog-content{width:100%;height:100%;max-height:100%;border-radius:0}.ds-dialog-header,.ds-dialog-footer{flex:0 0 auto;background:transparent}.ds-dialog-header{padding:calc(var(--ds-modal-padding) * 2 / 3) var(--ds-modal-padding) 0 var(--ds-modal-padding)}.ds-dialog-footer{padding:0 var(--ds-modal-padding) var(--ds-modal-padding) var(--ds-modal-padding)}.ds-dialog-fixed .ds-dialog-header{border-bottom:1px solid var(--ds-color-split);padding:calc(var(--ds-modal-padding) / 2) var(--ds-modal-padding)}.ds-dialog-fixed .ds-dialog-footer{border-top:1px solid var(--ds-color-split);padding:calc(var(--ds-modal-padding) / 2) var(--ds-modal-padding)}.ds-dialog-title-row{min-width:0}.ds-dialog-title{display:block;min-width:0;color:var(--ds-color-text);font-size:var(--ds-font-size-lg);font-weight:600;line-height:var(--ds-line-height-lg)}.ds-dialog-header-after-title{margin-top:calc(var(--ds-modal-padding) / 3)}.ds-dialog-close{flex-shrink:0}.ds-dialog-body{flex:1 1 auto;min-height:0;overflow:auto;padding:var(--ds-dialog-content-padding, var(--ds-modal-padding))}.ds-dialog-body-spin{width:100%}.ds-dialog-body-spin,.ds-dialog-body-spin .ds-spin-container,.ds-dialog-body-content{min-height:100%}.ds-dialog-no-body-scroll .ds-dialog{max-height:100%}.ds-dialog-no-body-scroll .ds-dialog-body{overflow:hidden;display:grid}.ds-dialog-no-body-scroll .ds-dialog-body>*{min-height:0}.ds-dialog-footer-actions{display:flex;justify-content:flex-end;align-items:center;gap:8px}.ds-dialog-loading .ds-dialog-body-spin,.ds-dialog-loading .ds-dialog-body-spin .ds-spin-nested-loading,.ds-dialog-loading .ds-dialog-body-spin .ds-spin-container,.ds-dialog-loading .ds-dialog-body-content{height:100%}@media(max-width:640px){.ds-dialog-wrap{--ds-dialog-edge-padding: 16px}.ds-dialog-top-aligned{padding-top:24px}.ds-dialog{max-height:calc(100vh - var(--ds-dialog-edge-padding) * 2)}}}
@@ -0,0 +1,4 @@
1
+ import { DialogProps } from './Dialog';
2
+ export declare const Dialog: ({ children, open: openProp, defaultOpen, onCancel, onClose, onOk, title, footer, size, loading, confirmLoading, hideOkButton, hideCancelButton, okText, cancelText, okType, contentPadding, afterTitle, beforeCloseButton, afterCloseButton, defaultFixedHeaderFooter, centered, type, background, bodyScrollable, closeIcon, closable, maskClosable, keyboard, width, style, destroyOnHidden, afterOpenChange, className, rootClassName, headerClassName, bodyClassName, footerClassName, okButtonProps, cancelButtonProps, }: DialogProps) => import("react/jsx-runtime").JSX.Element;
3
+ export { DialogProps };
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/dialog/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAwB,KAAK,WAAW,EAAE,MAAM,UAAU,CAAC;AAElE,OAAO,cAAc,CAAC;AAEtB,eAAO,MAAM,MAAM,0jBAAa,CAAC;AAEjC,OAAO,EAAE,WAAW,EAAE,CAAC"}
@@ -0,0 +1,8 @@
1
+ "use client";
2
+ import { Dialog as o } from "./Dialog.js";
3
+ import './dialog.css';/* empty css */
4
+ const a = o;
5
+ export {
6
+ a as Dialog
7
+ };
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../src/components/dialog/index.ts"],"sourcesContent":["\"use client\";\n\nimport { Dialog as MainDialog, type DialogProps } from \"./Dialog\";\n\nimport \"./dialog.css\";\n\nexport const Dialog = MainDialog;\n\nexport { DialogProps };\n\n"],"names":["Dialog","MainDialog"],"mappings":";;;AAMO,MAAMA,IAASC;"}
@@ -76,6 +76,13 @@ export interface DropdownMenuProps extends Omit<UseDropdownMenuProps, "className
76
76
  * Content to display after the list
77
77
  */
78
78
  afterList?: React.ReactNode;
79
+ /**
80
+ * Whether the trigger should act as a native button element.
81
+ * Set to false when using non-button elements (like Typography.Link) as trigger
82
+ * to suppress Base UI warnings and remove native button semantics.
83
+ * @default true
84
+ */
85
+ nativeButton?: boolean;
79
86
  }
80
- export declare const DropdownMenu: ({ children, items, placement, openOnHover, open: outsideOpen, onOpenChange: outsideOnOpenChange, defaultOpen, className, itemRender, classNames, size, showSearch, inCombobox: inComboboxProp, searchProps, popupMatchTriggerWidth, beforeList, afterList, keepOpenOnSelect, highlightedItemKey, selectedItemKeys, getItemKeywords, showCheckbox, itemLabelRender, }: DropdownMenuProps) => import("react/jsx-runtime").JSX.Element;
87
+ export declare const DropdownMenu: ({ children, items, placement, openOnHover, open: outsideOpen, onOpenChange: outsideOnOpenChange, defaultOpen, className, itemRender, classNames, size, showSearch, inCombobox: inComboboxProp, searchProps, popupMatchTriggerWidth, beforeList, afterList, keepOpenOnSelect, highlightedItemKey, selectedItemKeys, getItemKeywords, showCheckbox, itemLabelRender, nativeButton, }: DropdownMenuProps) => import("react/jsx-runtime").JSX.Element;
81
88
  //# sourceMappingURL=component.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"component.d.ts","sourceRoot":"","sources":["../../../src/components/dropdown-menu/component.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAE3C,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAepD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAC/C,OAAO,EAAmB,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAQ1E,MAAM,WAAW,iBAAkB,SAAQ,IAAI,CAC7C,oBAAoB,EACpB,YAAY,CACb;IACC,0DAA0D;IAC1D,KAAK,EAAE,oBAAoB,EAAE,CAAC;IAC9B,qDAAqD;IACrD,QAAQ,CAAC,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC;IAC/D;;;OAGG;IACH,SAAS,CAAC,EAAE,YAAY,CAAC,WAAW,CAAC,CAAC;IACtC;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;OAEG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;OAEG;IACH,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,UAAU,CAAC,EAAE;QACX,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,GAAG,oBAAoB,CAAC,YAAY,CAAC,CAAC;IAEvC;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,OAAO,cAAc,CAAC;IAC5C;;OAEG;IACH,WAAW,CAAC,EAAE;QACZ,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;IACF;;;OAGG;IACH,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC;;OAEG;IACH,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC7B;;OAEG;IACH,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC7B;AAED,eAAO,MAAM,YAAY,GAAI,sWA0B1B,iBAAiB,4CA+MnB,CAAC"}
1
+ {"version":3,"file":"component.d.ts","sourceRoot":"","sources":["../../../src/components/dropdown-menu/component.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAE3C,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAcpD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAC/C,OAAO,EAAmB,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAQ1E,MAAM,WAAW,iBAAkB,SAAQ,IAAI,CAC7C,oBAAoB,EACpB,YAAY,CACb;IACC,0DAA0D;IAC1D,KAAK,EAAE,oBAAoB,EAAE,CAAC;IAC9B,qDAAqD;IACrD,QAAQ,CAAC,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC;IAC/D;;;OAGG;IACH,SAAS,CAAC,EAAE,YAAY,CAAC,WAAW,CAAC,CAAC;IACtC;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;OAEG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;OAEG;IACH,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,UAAU,CAAC,EAAE;QACX,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,GAAG,oBAAoB,CAAC,YAAY,CAAC,CAAC;IAEvC;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,OAAO,cAAc,CAAC;IAC5C;;OAEG;IACH,WAAW,CAAC,EAAE;QACZ,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;IACF;;;OAGG;IACH,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC;;OAEG;IACH,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC7B;;OAEG;IACH,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC5B;;;;;OAKG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,eAAO,MAAM,YAAY,GAAI,oXA2B1B,iBAAiB,4CA+OnB,CAAC"}