@almadar/ui 4.53.2 → 4.53.4

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.
@@ -6005,7 +6005,7 @@ var init_Overlay = __esm({
6005
6005
  };
6006
6006
  }
6007
6007
  });
6008
- var sizeClasses2, minWidths, Modal;
6008
+ var sizeClasses2, minWidthClasses, Modal;
6009
6009
  var init_Modal = __esm({
6010
6010
  "components/molecules/Modal.tsx"() {
6011
6011
  "use client";
@@ -6023,12 +6023,12 @@ var init_Modal = __esm({
6023
6023
  xl: "max-w-5xl",
6024
6024
  full: "max-w-full mx-4"
6025
6025
  };
6026
- minWidths = {
6027
- sm: "400px",
6028
- md: "520px",
6029
- lg: "600px",
6030
- xl: "700px",
6031
- full: "0"
6026
+ minWidthClasses = {
6027
+ sm: "min-w-[400px] max-sm:min-w-0",
6028
+ md: "min-w-[520px] max-sm:min-w-0",
6029
+ lg: "min-w-[600px] max-sm:min-w-0",
6030
+ xl: "min-w-[700px] max-sm:min-w-0",
6031
+ full: "min-w-0"
6032
6032
  };
6033
6033
  Modal = ({
6034
6034
  isOpen = true,
@@ -6108,10 +6108,9 @@ var init_Modal = __esm({
6108
6108
  {
6109
6109
  className: cn(
6110
6110
  "fixed inset-0 z-50 pointer-events-none",
6111
- "flex items-start justify-center px-4 pb-4",
6112
- "max-sm:items-end max-sm:p-0"
6111
+ "flex items-start justify-center px-4 pb-4 pt-[10vh]",
6112
+ "max-sm:items-stretch max-sm:p-0 max-sm:pt-0"
6113
6113
  ),
6114
- style: { paddingTop: "10vh" },
6115
6114
  children: /* @__PURE__ */ jsxRuntime.jsxs(
6116
6115
  Dialog,
6117
6116
  {
@@ -6122,18 +6121,19 @@ var init_Modal = __esm({
6122
6121
  "m-0 p-0 border-0 bg-transparent",
6123
6122
  // Pre-existing dialog frame
6124
6123
  "pointer-events-auto w-full flex flex-col bg-surface border shadow-lg rounded-md",
6124
+ // Desktop sizing + viewport-aware floor.
6125
6125
  sizeClasses2[size],
6126
- "max-sm:max-w-full max-sm:min-w-0 max-sm:rounded-b-none max-sm:rounded-t-2xl",
6126
+ minWidthClasses[size],
6127
+ "max-h-[80vh]",
6128
+ // Mobile: take the entire screen. Override desktop max-w cap,
6129
+ // full height, no rounded corners, no min-width.
6130
+ "max-sm:max-w-none max-sm:max-h-none max-sm:w-full max-sm:h-full max-sm:rounded-none",
6127
6131
  className
6128
6132
  ),
6129
- style: {
6130
- minWidth: minWidths[size],
6131
- maxHeight: "80vh",
6132
- ...dragY > 0 && {
6133
- transform: `translateY(${dragY}px)`,
6134
- transition: isDragging.current ? "none" : "transform 200ms ease-out"
6135
- }
6136
- },
6133
+ style: dragY > 0 ? {
6134
+ transform: `translateY(${dragY}px)`,
6135
+ transition: isDragging.current ? "none" : "transform 200ms ease-out"
6136
+ } : void 0,
6137
6137
  ...title && { "aria-labelledby": "modal-title" },
6138
6138
  children: [
6139
6139
  /* @__PURE__ */ jsxRuntime.jsx(
@@ -61182,7 +61182,7 @@ function OrbInspector({ node, schema, editable = false, userType = "builder", th
61182
61182
  eventBus.emit("UI:REMOVE_EFFECT", { effectIndex });
61183
61183
  }, [eventBus]);
61184
61184
  const headerTitle = selectedPattern ? selectedPattern.patternType : isExpanded ? transitionEvent || "Transition" : orbitalName;
61185
- return /* @__PURE__ */ jsxRuntime.jsxs(Box, { className: "flex flex-col bg-card border-l border-border h-full", style: { width: 340 }, children: [
61185
+ return /* @__PURE__ */ jsxRuntime.jsxs(Box, { className: "flex flex-col bg-card border-l border-border h-full w-full sm:w-[340px]", children: [
61186
61186
  /* @__PURE__ */ jsxRuntime.jsxs(Box, { className: "shrink-0 border-b border-border", children: [
61187
61187
  /* @__PURE__ */ jsxRuntime.jsxs(Box, { className: "flex items-center justify-between px-4 py-2", children: [
61188
61188
  /* @__PURE__ */ jsxRuntime.jsx(Box, { className: "flex items-center gap-2", children: selectedPattern ? /* @__PURE__ */ jsxRuntime.jsx(
@@ -62011,18 +62011,27 @@ function FlowCanvasInner({
62011
62011
  }
62012
62012
  )
62013
62013
  ] }),
62014
- selectedNode && /* @__PURE__ */ jsxRuntime.jsx(
62015
- OrbInspector,
62016
- {
62017
- node: selectedNode,
62018
- schema: parsedSchema,
62019
- editable,
62020
- userType,
62021
- themeManifest,
62022
- onSchemaChange,
62023
- onClose: handleClosePanel
62024
- }
62025
- )
62014
+ selectedNode && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
62015
+ /* @__PURE__ */ jsxRuntime.jsx(
62016
+ Box,
62017
+ {
62018
+ className: "fixed inset-0 bg-foreground/40 z-40 lg:hidden",
62019
+ onClick: handleClosePanel
62020
+ }
62021
+ ),
62022
+ /* @__PURE__ */ jsxRuntime.jsx(Box, { className: "fixed inset-y-0 right-0 z-50 max-w-full lg:static lg:z-auto lg:max-w-none lg:flex-shrink-0", children: /* @__PURE__ */ jsxRuntime.jsx(
62023
+ OrbInspector,
62024
+ {
62025
+ node: selectedNode,
62026
+ schema: parsedSchema,
62027
+ editable,
62028
+ userType,
62029
+ themeManifest,
62030
+ onSchemaChange,
62031
+ onClose: handleClosePanel
62032
+ }
62033
+ ) })
62034
+ ] })
62026
62035
  ]
62027
62036
  }
62028
62037
  ) }) });
package/dist/avl/index.js CHANGED
@@ -5959,7 +5959,7 @@ var init_Overlay = __esm({
5959
5959
  };
5960
5960
  }
5961
5961
  });
5962
- var sizeClasses2, minWidths, Modal;
5962
+ var sizeClasses2, minWidthClasses, Modal;
5963
5963
  var init_Modal = __esm({
5964
5964
  "components/molecules/Modal.tsx"() {
5965
5965
  "use client";
@@ -5977,12 +5977,12 @@ var init_Modal = __esm({
5977
5977
  xl: "max-w-5xl",
5978
5978
  full: "max-w-full mx-4"
5979
5979
  };
5980
- minWidths = {
5981
- sm: "400px",
5982
- md: "520px",
5983
- lg: "600px",
5984
- xl: "700px",
5985
- full: "0"
5980
+ minWidthClasses = {
5981
+ sm: "min-w-[400px] max-sm:min-w-0",
5982
+ md: "min-w-[520px] max-sm:min-w-0",
5983
+ lg: "min-w-[600px] max-sm:min-w-0",
5984
+ xl: "min-w-[700px] max-sm:min-w-0",
5985
+ full: "min-w-0"
5986
5986
  };
5987
5987
  Modal = ({
5988
5988
  isOpen = true,
@@ -6062,10 +6062,9 @@ var init_Modal = __esm({
6062
6062
  {
6063
6063
  className: cn(
6064
6064
  "fixed inset-0 z-50 pointer-events-none",
6065
- "flex items-start justify-center px-4 pb-4",
6066
- "max-sm:items-end max-sm:p-0"
6065
+ "flex items-start justify-center px-4 pb-4 pt-[10vh]",
6066
+ "max-sm:items-stretch max-sm:p-0 max-sm:pt-0"
6067
6067
  ),
6068
- style: { paddingTop: "10vh" },
6069
6068
  children: /* @__PURE__ */ jsxs(
6070
6069
  Dialog,
6071
6070
  {
@@ -6076,18 +6075,19 @@ var init_Modal = __esm({
6076
6075
  "m-0 p-0 border-0 bg-transparent",
6077
6076
  // Pre-existing dialog frame
6078
6077
  "pointer-events-auto w-full flex flex-col bg-surface border shadow-lg rounded-md",
6078
+ // Desktop sizing + viewport-aware floor.
6079
6079
  sizeClasses2[size],
6080
- "max-sm:max-w-full max-sm:min-w-0 max-sm:rounded-b-none max-sm:rounded-t-2xl",
6080
+ minWidthClasses[size],
6081
+ "max-h-[80vh]",
6082
+ // Mobile: take the entire screen. Override desktop max-w cap,
6083
+ // full height, no rounded corners, no min-width.
6084
+ "max-sm:max-w-none max-sm:max-h-none max-sm:w-full max-sm:h-full max-sm:rounded-none",
6081
6085
  className
6082
6086
  ),
6083
- style: {
6084
- minWidth: minWidths[size],
6085
- maxHeight: "80vh",
6086
- ...dragY > 0 && {
6087
- transform: `translateY(${dragY}px)`,
6088
- transition: isDragging.current ? "none" : "transform 200ms ease-out"
6089
- }
6090
- },
6087
+ style: dragY > 0 ? {
6088
+ transform: `translateY(${dragY}px)`,
6089
+ transition: isDragging.current ? "none" : "transform 200ms ease-out"
6090
+ } : void 0,
6091
6091
  ...title && { "aria-labelledby": "modal-title" },
6092
6092
  children: [
6093
6093
  /* @__PURE__ */ jsx(
@@ -61136,7 +61136,7 @@ function OrbInspector({ node, schema, editable = false, userType = "builder", th
61136
61136
  eventBus.emit("UI:REMOVE_EFFECT", { effectIndex });
61137
61137
  }, [eventBus]);
61138
61138
  const headerTitle = selectedPattern ? selectedPattern.patternType : isExpanded ? transitionEvent || "Transition" : orbitalName;
61139
- return /* @__PURE__ */ jsxs(Box, { className: "flex flex-col bg-card border-l border-border h-full", style: { width: 340 }, children: [
61139
+ return /* @__PURE__ */ jsxs(Box, { className: "flex flex-col bg-card border-l border-border h-full w-full sm:w-[340px]", children: [
61140
61140
  /* @__PURE__ */ jsxs(Box, { className: "shrink-0 border-b border-border", children: [
61141
61141
  /* @__PURE__ */ jsxs(Box, { className: "flex items-center justify-between px-4 py-2", children: [
61142
61142
  /* @__PURE__ */ jsx(Box, { className: "flex items-center gap-2", children: selectedPattern ? /* @__PURE__ */ jsx(
@@ -61965,18 +61965,27 @@ function FlowCanvasInner({
61965
61965
  }
61966
61966
  )
61967
61967
  ] }),
61968
- selectedNode && /* @__PURE__ */ jsx(
61969
- OrbInspector,
61970
- {
61971
- node: selectedNode,
61972
- schema: parsedSchema,
61973
- editable,
61974
- userType,
61975
- themeManifest,
61976
- onSchemaChange,
61977
- onClose: handleClosePanel
61978
- }
61979
- )
61968
+ selectedNode && /* @__PURE__ */ jsxs(Fragment, { children: [
61969
+ /* @__PURE__ */ jsx(
61970
+ Box,
61971
+ {
61972
+ className: "fixed inset-0 bg-foreground/40 z-40 lg:hidden",
61973
+ onClick: handleClosePanel
61974
+ }
61975
+ ),
61976
+ /* @__PURE__ */ jsx(Box, { className: "fixed inset-y-0 right-0 z-50 max-w-full lg:static lg:z-auto lg:max-w-none lg:flex-shrink-0", children: /* @__PURE__ */ jsx(
61977
+ OrbInspector,
61978
+ {
61979
+ node: selectedNode,
61980
+ schema: parsedSchema,
61981
+ editable,
61982
+ userType,
61983
+ themeManifest,
61984
+ onSchemaChange,
61985
+ onClose: handleClosePanel
61986
+ }
61987
+ ) })
61988
+ ] })
61980
61989
  ]
61981
61990
  }
61982
61991
  ) }) });
@@ -5422,7 +5422,7 @@ var init_EntitySchemaContext = __esm({
5422
5422
  EntitySchemaContext = React78.createContext(null);
5423
5423
  }
5424
5424
  });
5425
- var sizeClasses5, minWidths; exports.Modal = void 0;
5425
+ var sizeClasses5, minWidthClasses; exports.Modal = void 0;
5426
5426
  var init_Modal = __esm({
5427
5427
  "components/molecules/Modal.tsx"() {
5428
5428
  "use client";
@@ -5440,12 +5440,12 @@ var init_Modal = __esm({
5440
5440
  xl: "max-w-5xl",
5441
5441
  full: "max-w-full mx-4"
5442
5442
  };
5443
- minWidths = {
5444
- sm: "400px",
5445
- md: "520px",
5446
- lg: "600px",
5447
- xl: "700px",
5448
- full: "0"
5443
+ minWidthClasses = {
5444
+ sm: "min-w-[400px] max-sm:min-w-0",
5445
+ md: "min-w-[520px] max-sm:min-w-0",
5446
+ lg: "min-w-[600px] max-sm:min-w-0",
5447
+ xl: "min-w-[700px] max-sm:min-w-0",
5448
+ full: "min-w-0"
5449
5449
  };
5450
5450
  exports.Modal = ({
5451
5451
  isOpen = true,
@@ -5525,10 +5525,9 @@ var init_Modal = __esm({
5525
5525
  {
5526
5526
  className: cn(
5527
5527
  "fixed inset-0 z-50 pointer-events-none",
5528
- "flex items-start justify-center px-4 pb-4",
5529
- "max-sm:items-end max-sm:p-0"
5528
+ "flex items-start justify-center px-4 pb-4 pt-[10vh]",
5529
+ "max-sm:items-stretch max-sm:p-0 max-sm:pt-0"
5530
5530
  ),
5531
- style: { paddingTop: "10vh" },
5532
5531
  children: /* @__PURE__ */ jsxRuntime.jsxs(
5533
5532
  exports.Dialog,
5534
5533
  {
@@ -5539,18 +5538,19 @@ var init_Modal = __esm({
5539
5538
  "m-0 p-0 border-0 bg-transparent",
5540
5539
  // Pre-existing dialog frame
5541
5540
  "pointer-events-auto w-full flex flex-col bg-surface border shadow-lg rounded-md",
5541
+ // Desktop sizing + viewport-aware floor.
5542
5542
  sizeClasses5[size],
5543
- "max-sm:max-w-full max-sm:min-w-0 max-sm:rounded-b-none max-sm:rounded-t-2xl",
5543
+ minWidthClasses[size],
5544
+ "max-h-[80vh]",
5545
+ // Mobile: take the entire screen. Override desktop max-w cap,
5546
+ // full height, no rounded corners, no min-width.
5547
+ "max-sm:max-w-none max-sm:max-h-none max-sm:w-full max-sm:h-full max-sm:rounded-none",
5544
5548
  className
5545
5549
  ),
5546
- style: {
5547
- minWidth: minWidths[size],
5548
- maxHeight: "80vh",
5549
- ...dragY > 0 && {
5550
- transform: `translateY(${dragY}px)`,
5551
- transition: isDragging.current ? "none" : "transform 200ms ease-out"
5552
- }
5553
- },
5550
+ style: dragY > 0 ? {
5551
+ transform: `translateY(${dragY}px)`,
5552
+ transition: isDragging.current ? "none" : "transform 200ms ease-out"
5553
+ } : void 0,
5554
5554
  ...title && { "aria-labelledby": "modal-title" },
5555
5555
  children: [
5556
5556
  /* @__PURE__ */ jsxRuntime.jsx(
@@ -5376,7 +5376,7 @@ var init_EntitySchemaContext = __esm({
5376
5376
  EntitySchemaContext = createContext(null);
5377
5377
  }
5378
5378
  });
5379
- var sizeClasses5, minWidths, Modal;
5379
+ var sizeClasses5, minWidthClasses, Modal;
5380
5380
  var init_Modal = __esm({
5381
5381
  "components/molecules/Modal.tsx"() {
5382
5382
  "use client";
@@ -5394,12 +5394,12 @@ var init_Modal = __esm({
5394
5394
  xl: "max-w-5xl",
5395
5395
  full: "max-w-full mx-4"
5396
5396
  };
5397
- minWidths = {
5398
- sm: "400px",
5399
- md: "520px",
5400
- lg: "600px",
5401
- xl: "700px",
5402
- full: "0"
5397
+ minWidthClasses = {
5398
+ sm: "min-w-[400px] max-sm:min-w-0",
5399
+ md: "min-w-[520px] max-sm:min-w-0",
5400
+ lg: "min-w-[600px] max-sm:min-w-0",
5401
+ xl: "min-w-[700px] max-sm:min-w-0",
5402
+ full: "min-w-0"
5403
5403
  };
5404
5404
  Modal = ({
5405
5405
  isOpen = true,
@@ -5479,10 +5479,9 @@ var init_Modal = __esm({
5479
5479
  {
5480
5480
  className: cn(
5481
5481
  "fixed inset-0 z-50 pointer-events-none",
5482
- "flex items-start justify-center px-4 pb-4",
5483
- "max-sm:items-end max-sm:p-0"
5482
+ "flex items-start justify-center px-4 pb-4 pt-[10vh]",
5483
+ "max-sm:items-stretch max-sm:p-0 max-sm:pt-0"
5484
5484
  ),
5485
- style: { paddingTop: "10vh" },
5486
5485
  children: /* @__PURE__ */ jsxs(
5487
5486
  Dialog,
5488
5487
  {
@@ -5493,18 +5492,19 @@ var init_Modal = __esm({
5493
5492
  "m-0 p-0 border-0 bg-transparent",
5494
5493
  // Pre-existing dialog frame
5495
5494
  "pointer-events-auto w-full flex flex-col bg-surface border shadow-lg rounded-md",
5495
+ // Desktop sizing + viewport-aware floor.
5496
5496
  sizeClasses5[size],
5497
- "max-sm:max-w-full max-sm:min-w-0 max-sm:rounded-b-none max-sm:rounded-t-2xl",
5497
+ minWidthClasses[size],
5498
+ "max-h-[80vh]",
5499
+ // Mobile: take the entire screen. Override desktop max-w cap,
5500
+ // full height, no rounded corners, no min-width.
5501
+ "max-sm:max-w-none max-sm:max-h-none max-sm:w-full max-sm:h-full max-sm:rounded-none",
5498
5502
  className
5499
5503
  ),
5500
- style: {
5501
- minWidth: minWidths[size],
5502
- maxHeight: "80vh",
5503
- ...dragY > 0 && {
5504
- transform: `translateY(${dragY}px)`,
5505
- transition: isDragging.current ? "none" : "transform 200ms ease-out"
5506
- }
5507
- },
5504
+ style: dragY > 0 ? {
5505
+ transform: `translateY(${dragY}px)`,
5506
+ transition: isDragging.current ? "none" : "transform 200ms ease-out"
5507
+ } : void 0,
5508
5508
  ...title && { "aria-labelledby": "modal-title" },
5509
5509
  children: [
5510
5510
  /* @__PURE__ */ jsx(
@@ -1190,7 +1190,7 @@ var init_Overlay = __esm({
1190
1190
  };
1191
1191
  }
1192
1192
  });
1193
- var sizeClasses2, minWidths, Modal;
1193
+ var sizeClasses2, minWidthClasses, Modal;
1194
1194
  var init_Modal = __esm({
1195
1195
  "components/molecules/Modal.tsx"() {
1196
1196
  "use client";
@@ -1208,12 +1208,12 @@ var init_Modal = __esm({
1208
1208
  xl: "max-w-5xl",
1209
1209
  full: "max-w-full mx-4"
1210
1210
  };
1211
- minWidths = {
1212
- sm: "400px",
1213
- md: "520px",
1214
- lg: "600px",
1215
- xl: "700px",
1216
- full: "0"
1211
+ minWidthClasses = {
1212
+ sm: "min-w-[400px] max-sm:min-w-0",
1213
+ md: "min-w-[520px] max-sm:min-w-0",
1214
+ lg: "min-w-[600px] max-sm:min-w-0",
1215
+ xl: "min-w-[700px] max-sm:min-w-0",
1216
+ full: "min-w-0"
1217
1217
  };
1218
1218
  Modal = ({
1219
1219
  isOpen = true,
@@ -1293,10 +1293,9 @@ var init_Modal = __esm({
1293
1293
  {
1294
1294
  className: cn(
1295
1295
  "fixed inset-0 z-50 pointer-events-none",
1296
- "flex items-start justify-center px-4 pb-4",
1297
- "max-sm:items-end max-sm:p-0"
1296
+ "flex items-start justify-center px-4 pb-4 pt-[10vh]",
1297
+ "max-sm:items-stretch max-sm:p-0 max-sm:pt-0"
1298
1298
  ),
1299
- style: { paddingTop: "10vh" },
1300
1299
  children: /* @__PURE__ */ jsxRuntime.jsxs(
1301
1300
  Dialog,
1302
1301
  {
@@ -1307,18 +1306,19 @@ var init_Modal = __esm({
1307
1306
  "m-0 p-0 border-0 bg-transparent",
1308
1307
  // Pre-existing dialog frame
1309
1308
  "pointer-events-auto w-full flex flex-col bg-surface border shadow-lg rounded-md",
1309
+ // Desktop sizing + viewport-aware floor.
1310
1310
  sizeClasses2[size],
1311
- "max-sm:max-w-full max-sm:min-w-0 max-sm:rounded-b-none max-sm:rounded-t-2xl",
1311
+ minWidthClasses[size],
1312
+ "max-h-[80vh]",
1313
+ // Mobile: take the entire screen. Override desktop max-w cap,
1314
+ // full height, no rounded corners, no min-width.
1315
+ "max-sm:max-w-none max-sm:max-h-none max-sm:w-full max-sm:h-full max-sm:rounded-none",
1312
1316
  className
1313
1317
  ),
1314
- style: {
1315
- minWidth: minWidths[size],
1316
- maxHeight: "80vh",
1317
- ...dragY > 0 && {
1318
- transform: `translateY(${dragY}px)`,
1319
- transition: isDragging.current ? "none" : "transform 200ms ease-out"
1320
- }
1321
- },
1318
+ style: dragY > 0 ? {
1319
+ transform: `translateY(${dragY}px)`,
1320
+ transition: isDragging.current ? "none" : "transform 200ms ease-out"
1321
+ } : void 0,
1322
1322
  ...title && { "aria-labelledby": "modal-title" },
1323
1323
  children: [
1324
1324
  /* @__PURE__ */ jsxRuntime.jsx(
@@ -1144,7 +1144,7 @@ var init_Overlay = __esm({
1144
1144
  };
1145
1145
  }
1146
1146
  });
1147
- var sizeClasses2, minWidths, Modal;
1147
+ var sizeClasses2, minWidthClasses, Modal;
1148
1148
  var init_Modal = __esm({
1149
1149
  "components/molecules/Modal.tsx"() {
1150
1150
  "use client";
@@ -1162,12 +1162,12 @@ var init_Modal = __esm({
1162
1162
  xl: "max-w-5xl",
1163
1163
  full: "max-w-full mx-4"
1164
1164
  };
1165
- minWidths = {
1166
- sm: "400px",
1167
- md: "520px",
1168
- lg: "600px",
1169
- xl: "700px",
1170
- full: "0"
1165
+ minWidthClasses = {
1166
+ sm: "min-w-[400px] max-sm:min-w-0",
1167
+ md: "min-w-[520px] max-sm:min-w-0",
1168
+ lg: "min-w-[600px] max-sm:min-w-0",
1169
+ xl: "min-w-[700px] max-sm:min-w-0",
1170
+ full: "min-w-0"
1171
1171
  };
1172
1172
  Modal = ({
1173
1173
  isOpen = true,
@@ -1247,10 +1247,9 @@ var init_Modal = __esm({
1247
1247
  {
1248
1248
  className: cn(
1249
1249
  "fixed inset-0 z-50 pointer-events-none",
1250
- "flex items-start justify-center px-4 pb-4",
1251
- "max-sm:items-end max-sm:p-0"
1250
+ "flex items-start justify-center px-4 pb-4 pt-[10vh]",
1251
+ "max-sm:items-stretch max-sm:p-0 max-sm:pt-0"
1252
1252
  ),
1253
- style: { paddingTop: "10vh" },
1254
1253
  children: /* @__PURE__ */ jsxs(
1255
1254
  Dialog,
1256
1255
  {
@@ -1261,18 +1260,19 @@ var init_Modal = __esm({
1261
1260
  "m-0 p-0 border-0 bg-transparent",
1262
1261
  // Pre-existing dialog frame
1263
1262
  "pointer-events-auto w-full flex flex-col bg-surface border shadow-lg rounded-md",
1263
+ // Desktop sizing + viewport-aware floor.
1264
1264
  sizeClasses2[size],
1265
- "max-sm:max-w-full max-sm:min-w-0 max-sm:rounded-b-none max-sm:rounded-t-2xl",
1265
+ minWidthClasses[size],
1266
+ "max-h-[80vh]",
1267
+ // Mobile: take the entire screen. Override desktop max-w cap,
1268
+ // full height, no rounded corners, no min-width.
1269
+ "max-sm:max-w-none max-sm:max-h-none max-sm:w-full max-sm:h-full max-sm:rounded-none",
1266
1270
  className
1267
1271
  ),
1268
- style: {
1269
- minWidth: minWidths[size],
1270
- maxHeight: "80vh",
1271
- ...dragY > 0 && {
1272
- transform: `translateY(${dragY}px)`,
1273
- transition: isDragging.current ? "none" : "transform 200ms ease-out"
1274
- }
1275
- },
1272
+ style: dragY > 0 ? {
1273
+ transform: `translateY(${dragY}px)`,
1274
+ transition: isDragging.current ? "none" : "transform 200ms ease-out"
1275
+ } : void 0,
1276
1276
  ...title && { "aria-labelledby": "modal-title" },
1277
1277
  children: [
1278
1278
  /* @__PURE__ */ jsx(
@@ -1474,7 +1474,7 @@ var init_Overlay = __esm({
1474
1474
  };
1475
1475
  }
1476
1476
  });
1477
- var sizeClasses2, minWidths, Modal;
1477
+ var sizeClasses2, minWidthClasses, Modal;
1478
1478
  var init_Modal = __esm({
1479
1479
  "components/molecules/Modal.tsx"() {
1480
1480
  "use client";
@@ -1492,12 +1492,12 @@ var init_Modal = __esm({
1492
1492
  xl: "max-w-5xl",
1493
1493
  full: "max-w-full mx-4"
1494
1494
  };
1495
- minWidths = {
1496
- sm: "400px",
1497
- md: "520px",
1498
- lg: "600px",
1499
- xl: "700px",
1500
- full: "0"
1495
+ minWidthClasses = {
1496
+ sm: "min-w-[400px] max-sm:min-w-0",
1497
+ md: "min-w-[520px] max-sm:min-w-0",
1498
+ lg: "min-w-[600px] max-sm:min-w-0",
1499
+ xl: "min-w-[700px] max-sm:min-w-0",
1500
+ full: "min-w-0"
1501
1501
  };
1502
1502
  Modal = ({
1503
1503
  isOpen = true,
@@ -1577,10 +1577,9 @@ var init_Modal = __esm({
1577
1577
  {
1578
1578
  className: cn(
1579
1579
  "fixed inset-0 z-50 pointer-events-none",
1580
- "flex items-start justify-center px-4 pb-4",
1581
- "max-sm:items-end max-sm:p-0"
1580
+ "flex items-start justify-center px-4 pb-4 pt-[10vh]",
1581
+ "max-sm:items-stretch max-sm:p-0 max-sm:pt-0"
1582
1582
  ),
1583
- style: { paddingTop: "10vh" },
1584
1583
  children: /* @__PURE__ */ jsxRuntime.jsxs(
1585
1584
  Dialog,
1586
1585
  {
@@ -1591,18 +1590,19 @@ var init_Modal = __esm({
1591
1590
  "m-0 p-0 border-0 bg-transparent",
1592
1591
  // Pre-existing dialog frame
1593
1592
  "pointer-events-auto w-full flex flex-col bg-surface border shadow-lg rounded-md",
1593
+ // Desktop sizing + viewport-aware floor.
1594
1594
  sizeClasses2[size],
1595
- "max-sm:max-w-full max-sm:min-w-0 max-sm:rounded-b-none max-sm:rounded-t-2xl",
1595
+ minWidthClasses[size],
1596
+ "max-h-[80vh]",
1597
+ // Mobile: take the entire screen. Override desktop max-w cap,
1598
+ // full height, no rounded corners, no min-width.
1599
+ "max-sm:max-w-none max-sm:max-h-none max-sm:w-full max-sm:h-full max-sm:rounded-none",
1596
1600
  className
1597
1601
  ),
1598
- style: {
1599
- minWidth: minWidths[size],
1600
- maxHeight: "80vh",
1601
- ...dragY > 0 && {
1602
- transform: `translateY(${dragY}px)`,
1603
- transition: isDragging.current ? "none" : "transform 200ms ease-out"
1604
- }
1605
- },
1602
+ style: dragY > 0 ? {
1603
+ transform: `translateY(${dragY}px)`,
1604
+ transition: isDragging.current ? "none" : "transform 200ms ease-out"
1605
+ } : void 0,
1606
1606
  ...title && { "aria-labelledby": "modal-title" },
1607
1607
  children: [
1608
1608
  /* @__PURE__ */ jsxRuntime.jsx(
@@ -1428,7 +1428,7 @@ var init_Overlay = __esm({
1428
1428
  };
1429
1429
  }
1430
1430
  });
1431
- var sizeClasses2, minWidths, Modal;
1431
+ var sizeClasses2, minWidthClasses, Modal;
1432
1432
  var init_Modal = __esm({
1433
1433
  "components/molecules/Modal.tsx"() {
1434
1434
  "use client";
@@ -1446,12 +1446,12 @@ var init_Modal = __esm({
1446
1446
  xl: "max-w-5xl",
1447
1447
  full: "max-w-full mx-4"
1448
1448
  };
1449
- minWidths = {
1450
- sm: "400px",
1451
- md: "520px",
1452
- lg: "600px",
1453
- xl: "700px",
1454
- full: "0"
1449
+ minWidthClasses = {
1450
+ sm: "min-w-[400px] max-sm:min-w-0",
1451
+ md: "min-w-[520px] max-sm:min-w-0",
1452
+ lg: "min-w-[600px] max-sm:min-w-0",
1453
+ xl: "min-w-[700px] max-sm:min-w-0",
1454
+ full: "min-w-0"
1455
1455
  };
1456
1456
  Modal = ({
1457
1457
  isOpen = true,
@@ -1531,10 +1531,9 @@ var init_Modal = __esm({
1531
1531
  {
1532
1532
  className: cn(
1533
1533
  "fixed inset-0 z-50 pointer-events-none",
1534
- "flex items-start justify-center px-4 pb-4",
1535
- "max-sm:items-end max-sm:p-0"
1534
+ "flex items-start justify-center px-4 pb-4 pt-[10vh]",
1535
+ "max-sm:items-stretch max-sm:p-0 max-sm:pt-0"
1536
1536
  ),
1537
- style: { paddingTop: "10vh" },
1538
1537
  children: /* @__PURE__ */ jsxs(
1539
1538
  Dialog,
1540
1539
  {
@@ -1545,18 +1544,19 @@ var init_Modal = __esm({
1545
1544
  "m-0 p-0 border-0 bg-transparent",
1546
1545
  // Pre-existing dialog frame
1547
1546
  "pointer-events-auto w-full flex flex-col bg-surface border shadow-lg rounded-md",
1547
+ // Desktop sizing + viewport-aware floor.
1548
1548
  sizeClasses2[size],
1549
- "max-sm:max-w-full max-sm:min-w-0 max-sm:rounded-b-none max-sm:rounded-t-2xl",
1549
+ minWidthClasses[size],
1550
+ "max-h-[80vh]",
1551
+ // Mobile: take the entire screen. Override desktop max-w cap,
1552
+ // full height, no rounded corners, no min-width.
1553
+ "max-sm:max-w-none max-sm:max-h-none max-sm:w-full max-sm:h-full max-sm:rounded-none",
1550
1554
  className
1551
1555
  ),
1552
- style: {
1553
- minWidth: minWidths[size],
1554
- maxHeight: "80vh",
1555
- ...dragY > 0 && {
1556
- transform: `translateY(${dragY}px)`,
1557
- transition: isDragging.current ? "none" : "transform 200ms ease-out"
1558
- }
1559
- },
1556
+ style: dragY > 0 ? {
1557
+ transform: `translateY(${dragY}px)`,
1558
+ transition: isDragging.current ? "none" : "transform 200ms ease-out"
1559
+ } : void 0,
1560
1560
  ...title && { "aria-labelledby": "modal-title" },
1561
1561
  children: [
1562
1562
  /* @__PURE__ */ jsx(
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@almadar/ui",
3
- "version": "4.53.2",
3
+ "version": "4.53.4",
4
4
  "description": "React UI components, hooks, and providers for Almadar",
5
5
  "type": "module",
6
6
  "sideEffects": [