@propbinder/mobile-design 0.2.34 → 0.2.35
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.
package/index.d.ts
CHANGED
|
@@ -1158,7 +1158,7 @@ declare class DsMobileContentComponent {
|
|
|
1158
1158
|
*/
|
|
1159
1159
|
declare class SectionHeaderComponent {
|
|
1160
1160
|
/** Width of the header placeholder */
|
|
1161
|
-
width: _angular_core.InputSignal<"
|
|
1161
|
+
width: _angular_core.InputSignal<"half" | "third" | "full">;
|
|
1162
1162
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SectionHeaderComponent, never>;
|
|
1163
1163
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SectionHeaderComponent, "section-header", never, { "width": { "alias": "width"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
|
|
1164
1164
|
}
|
package/package.json
CHANGED
package/styles/ionic.css
CHANGED
|
@@ -279,17 +279,16 @@ ion-modal:not(.ds-bottom-sheet) {
|
|
|
279
279
|
--background: var(--color-background-neutral-primary);
|
|
280
280
|
--border-radius: 16px;
|
|
281
281
|
--box-shadow: var(--box-shadow-lg);
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
height:
|
|
282
|
+
/* Prevent modal from resizing when keyboard appears */
|
|
283
|
+
height: 100% !important;
|
|
284
|
+
max-height: 100vh !important;
|
|
285
285
|
}
|
|
286
286
|
|
|
287
287
|
/* Prevent modal container from resizing when keyboard appears */
|
|
288
288
|
ion-modal:not(.ds-bottom-sheet)::part(content) {
|
|
289
289
|
position: fixed !important;
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
padding-bottom: env(safe-area-inset-bottom);
|
|
290
|
+
height: 100% !important;
|
|
291
|
+
max-height: 100vh !important;
|
|
293
292
|
}
|
|
294
293
|
|
|
295
294
|
/* Prevent ion-content inside modals from resizing */
|
|
@@ -329,15 +328,9 @@ ion-toast {
|
|
|
329
328
|
--box-shadow: 0px -2px 24px rgba(0, 0, 0, 0.12);
|
|
330
329
|
--backdrop-opacity: 0.4;
|
|
331
330
|
transition: --backdrop-opacity 0.3s ease;
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
height: 100% !important;
|
|
336
|
-
|
|
337
|
-
/* Align the actual sheet at the bottom */
|
|
338
|
-
display: flex;
|
|
339
|
-
flex-direction: column;
|
|
340
|
-
justify-content: flex-end;
|
|
331
|
+
/* Modal at top:0 so backdrop covers full screen including status bar */
|
|
332
|
+
top: 0;
|
|
333
|
+
height: 100%;
|
|
341
334
|
}
|
|
342
335
|
|
|
343
336
|
/* Backdrop styling */
|
|
@@ -355,21 +348,18 @@ ion-toast {
|
|
|
355
348
|
margin-bottom: 8px;
|
|
356
349
|
}
|
|
357
350
|
|
|
358
|
-
/* Content area styling
|
|
351
|
+
/* Content area styling */
|
|
359
352
|
.ds-bottom-sheet::part(content) {
|
|
360
353
|
/* Offset content below status bar (backdrop still covers full screen) */
|
|
361
354
|
margin-top: var(--app-sheet-top-offset);
|
|
362
355
|
border-radius: var(--border-radius) var(--border-radius) 0 0;
|
|
363
356
|
background: var(--color-background-neutral-primary, #ffffff);
|
|
364
357
|
box-shadow: var(--box-shadow);
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
/* Sit at the bottom of the flex container */
|
|
371
|
-
position: relative !important;
|
|
372
|
-
margin-top: auto !important;
|
|
358
|
+
position: absolute !important;
|
|
359
|
+
top: 0 !important;
|
|
360
|
+
bottom: 0 !important;
|
|
361
|
+
height: 100% !important;
|
|
362
|
+
max-height: 100% !important;
|
|
373
363
|
}
|
|
374
364
|
|
|
375
365
|
/* Remove border radius when fully expanded */
|
|
@@ -406,8 +396,23 @@ ion-toast {
|
|
|
406
396
|
Make action sheets auto-size to their content
|
|
407
397
|
============================================ */
|
|
408
398
|
|
|
409
|
-
/* Auto-height
|
|
399
|
+
/* Auto-height modal - override base bottom sheet styles */
|
|
400
|
+
.ds-bottom-sheet.auto-height {
|
|
401
|
+
top: 0 !important;
|
|
402
|
+
height: 100% !important;
|
|
403
|
+
display: flex;
|
|
404
|
+
flex-direction: column;
|
|
405
|
+
justify-content: flex-end;
|
|
406
|
+
}
|
|
410
407
|
|
|
408
|
+
.ds-bottom-sheet.auto-height::part(content) {
|
|
409
|
+
position: relative !important;
|
|
410
|
+
height: auto !important;
|
|
411
|
+
max-height: 80vh !important;
|
|
412
|
+
top: auto !important;
|
|
413
|
+
bottom: auto !important;
|
|
414
|
+
margin-top: auto !important;
|
|
415
|
+
}
|
|
411
416
|
/* Ensure action sheet component sizes naturally */
|
|
412
417
|
.ds-bottom-sheet ds-mobile-actions-bottom-sheet {
|
|
413
418
|
display: block;
|
|
@@ -621,12 +626,9 @@ ion-modal.ds-modal-base {
|
|
|
621
626
|
--background: var(--color-background-neutral-primary, #ffffff);
|
|
622
627
|
--width: 100%;
|
|
623
628
|
--max-width: 640px;
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
--max-height: calc(100dvh - var(--app-sheet-top-offset, 24px)) !important;
|
|
629
|
+
--height: 100dvh;
|
|
630
|
+
/* Full viewport height - content top offset creates gap */
|
|
627
631
|
--border-radius: 16px 16px 0 0;
|
|
628
|
-
display: flex !important;
|
|
629
|
-
align-items: flex-end !important;
|
|
630
632
|
}
|
|
631
633
|
|
|
632
634
|
ion-modal.ds-modal-base::part(content) {
|
|
@@ -635,11 +637,10 @@ ion-modal.ds-modal-base::part(content) {
|
|
|
635
637
|
background: var(--color-background-neutral-primary, #ffffff);
|
|
636
638
|
max-width: 640px;
|
|
637
639
|
margin: 0 auto;
|
|
638
|
-
/*
|
|
639
|
-
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
position: relative !important;
|
|
640
|
+
/* Use top positioning instead of margin-top to work with fixed positioning */
|
|
641
|
+
top: var(--app-sheet-top-offset) !important;
|
|
642
|
+
height: calc(100% - var(--app-sheet-top-offset)) !important;
|
|
643
|
+
max-height: calc(100dvh - var(--app-sheet-top-offset)) !important;
|
|
643
644
|
}
|
|
644
645
|
|
|
645
646
|
/* Auto-height support for base modals */
|