@pod-os/elements 0.11.1-e89c280.0 → 0.12.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.
- package/dist/cjs/{data-0c9489d7.js → data-5be6ab7b.js} +19 -2
- package/dist/cjs/elements.cjs.js +2 -2
- package/dist/cjs/{index-91d3ff9c.js → index-8c116b24.js} +8463 -446
- package/dist/cjs/ion-accordion.cjs.entry.js +2 -2
- package/dist/cjs/ion-action-sheet_3.cjs.entry.js +1 -1
- package/dist/cjs/{ion-app_25.cjs.entry.js → ion-app_26.cjs.entry.js} +42 -4
- package/dist/cjs/ion-badge_12.cjs.entry.js +36 -10
- package/dist/cjs/ion-buttons_3.cjs.entry.js +1 -1
- package/dist/cjs/ion-checkbox_4.cjs.entry.js +9 -0
- package/dist/cjs/ion-datetime-button.cjs.entry.js +1 -1
- package/dist/cjs/ion-datetime.cjs.entry.js +107 -56
- package/dist/cjs/ion-loading.cjs.entry.js +1 -1
- package/dist/cjs/ion-menu.cjs.entry.js +18 -15
- package/dist/cjs/ion-modal.cjs.entry.js +35 -26
- package/dist/cjs/ion-picker-column.cjs.entry.js +1 -2
- package/dist/cjs/ion-picker.cjs.entry.js +1 -1
- package/dist/cjs/ion-popover.cjs.entry.js +1 -1
- package/dist/cjs/ion-select.cjs.entry.js +1 -1
- package/dist/cjs/ion-split-pane.cjs.entry.js +1 -1
- package/dist/cjs/ion-textarea.cjs.entry.js +1 -1
- package/dist/cjs/ion-toast.cjs.entry.js +23 -5
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/{overlays-56226483.js → overlays-5d99746a.js} +9 -0
- package/dist/cjs/pos-container-contents.cjs.entry.js +1 -1
- package/dist/cjs/pos-subjects.cjs.entry.js +1 -1
- package/dist/collection/apps/pos-app-browser/pos-app-browser.js +1 -1
- package/dist/collection/collection-manifest.json +2 -1
- package/dist/collection/components/pos-add-literal-value/pos-add-literal-value.js +34 -10
- package/dist/collection/components/pos-error-toast/pos-error-toast.js +35 -0
- package/dist/collection/components/pos-literals/pos-literals.js +17 -1
- package/dist/components/button.js +3 -3
- package/dist/components/buttons.js +1 -1
- package/dist/components/content.js +9 -0
- package/dist/components/data.js +20 -3
- package/dist/components/index.d.ts +1 -0
- package/dist/components/index.js +1 -0
- package/dist/components/index4.js +1 -1
- package/dist/components/index8.js +8464 -446
- package/dist/components/ion-accordion.js +2 -2
- package/dist/components/ion-datetime-button.js +1 -1
- package/dist/components/ion-datetime.js +60 -8
- package/dist/components/ion-menu.js +17 -14
- package/dist/components/ion-modal.js +35 -26
- package/dist/components/ion-range.js +1 -1
- package/dist/components/ion-split-pane.js +1 -1
- package/dist/components/ion-textarea.js +1 -1
- package/dist/components/ion-toast.js +21 -2
- package/dist/components/item.js +1 -1
- package/dist/components/overlays.js +9 -1
- package/dist/components/picker-column.js +1 -2
- package/dist/components/popover.js +1 -1
- package/dist/components/pos-add-literal-value2.js +19 -9
- package/dist/components/pos-app-browser.js +39 -33
- package/dist/components/pos-error-toast.d.ts +11 -0
- package/dist/components/pos-error-toast.js +6 -0
- package/dist/components/pos-error-toast2.js +45 -0
- package/dist/components/pos-literals2.js +17 -1
- package/dist/components/radio.js +9 -0
- package/dist/elements/elements.css +1 -1
- package/dist/elements/elements.esm.js +1 -1
- package/dist/elements/{p-3088881f.js → p-0243a87a.js} +1 -1
- package/dist/elements/{p-1f4a3457.entry.js → p-036e382c.entry.js} +1 -1
- package/dist/elements/{p-8d726c51.entry.js → p-04bb69f5.entry.js} +2 -2
- package/dist/elements/{p-e0f4deae.js → p-07b61827.js} +2 -2
- package/dist/elements/{p-1244c9d7.entry.js → p-185506fc.entry.js} +2 -2
- package/dist/elements/{p-13a6f7bc.entry.js → p-21387f7c.entry.js} +1 -1
- package/dist/elements/p-228d64ab.entry.js +1 -0
- package/dist/elements/{p-b1ba08d2.js → p-3082941e.js} +1 -1
- package/dist/elements/p-33a17bf9.js +7 -0
- package/dist/elements/{p-4e60709f.js → p-387a310a.js} +2 -2
- package/dist/elements/p-446a00fa.entry.js +1 -0
- package/dist/elements/{p-20204cd6.entry.js → p-485c278b.entry.js} +1 -1
- package/dist/elements/{p-0169a9df.js → p-4deca788.js} +2 -2
- package/dist/elements/p-5d9b5890.entry.js +1 -0
- package/dist/elements/{p-2cfcee5f.entry.js → p-61d5e682.entry.js} +1 -1
- package/dist/elements/{p-5949c98f.entry.js → p-674fc19d.entry.js} +1 -1
- package/dist/elements/p-6b7c2114.entry.js +9 -0
- package/dist/elements/{p-a589651d.entry.js → p-6cc24956.entry.js} +2 -2
- package/dist/elements/{p-673fe601.entry.js → p-6e2e72c7.entry.js} +1 -1
- package/dist/elements/{p-928b90ab.entry.js → p-70d8e941.entry.js} +1 -1
- package/dist/elements/{p-3cc9c581.entry.js → p-7120b5f1.entry.js} +1 -1
- package/dist/elements/p-746b8d20.js +4 -0
- package/dist/elements/{p-216a955e.entry.js → p-7eafab7c.entry.js} +1 -1
- package/dist/elements/{p-20cec807.entry.js → p-81937d27.entry.js} +2 -2
- package/dist/elements/p-864b27a7.js +4 -0
- package/dist/elements/p-88c6dc94.entry.js +4 -0
- package/dist/elements/{p-3c8a5a30.entry.js → p-899550d8.entry.js} +1 -1
- package/dist/elements/{p-6b15aaeb.js → p-8f253089.js} +1 -1
- package/dist/elements/{p-48f46efa.entry.js → p-9074ecd7.entry.js} +1 -1
- package/dist/elements/p-957dc323.js +4 -0
- package/dist/elements/{p-4d8b9f45.entry.js → p-988e4192.entry.js} +1 -1
- package/dist/elements/{p-efabbb0d.js → p-995ec23e.js} +2 -2
- package/dist/elements/{p-2f09ba32.entry.js → p-9b2880ae.entry.js} +1 -1
- package/dist/elements/{p-827125bb.entry.js → p-a6c55fcb.entry.js} +1 -1
- package/dist/elements/p-af558048.entry.js +1 -0
- package/dist/elements/{p-7884f255.js → p-b003ddd8.js} +1 -1
- package/dist/elements/{p-ada8cc4e.entry.js → p-b3f2cc07.entry.js} +1 -1
- package/dist/elements/{p-26b4768e.entry.js → p-b8243f9f.entry.js} +1 -1
- package/dist/elements/p-c1bcf425.entry.js +7 -0
- package/dist/elements/{p-6937adab.entry.js → p-c1e9bc5e.entry.js} +1 -1
- package/dist/elements/{p-4ee1b070.entry.js → p-c218101a.entry.js} +1 -1
- package/dist/elements/{p-af4ba42f.entry.js → p-ce4f5b1f.entry.js} +1 -1
- package/dist/elements/{p-41a159a6.entry.js → p-d0772d6b.entry.js} +1 -1
- package/dist/elements/{p-2bb1928f.js → p-d3860378.js} +2 -2
- package/dist/elements/{p-078fbb91.entry.js → p-d43bc78d.entry.js} +2 -2
- package/dist/elements/{p-dd84e91a.entry.js → p-d6b522ec.entry.js} +1 -1
- package/dist/elements/{p-7710fe29.entry.js → p-da1f80aa.entry.js} +1 -1
- package/dist/elements/p-da85c9fc.js +119 -0
- package/dist/elements/{p-cae34530.entry.js → p-da86ba7e.entry.js} +1 -1
- package/dist/elements/{p-fb9f4444.entry.js → p-dbcb55b8.entry.js} +1 -1
- package/dist/elements/{p-e81498f1.entry.js → p-e7872214.entry.js} +1 -1
- package/dist/elements/p-e7fc7473.js +4 -0
- package/dist/elements/{p-f16106d1.entry.js → p-ec130fe7.entry.js} +1 -1
- package/dist/elements/{p-a617e741.entry.js → p-f0b0274f.entry.js} +1 -1
- package/dist/elements/p-f3a6519e.js +4 -0
- package/dist/elements/{p-15138093.entry.js → p-f796e16d.entry.js} +3 -3
- package/dist/elements/p-faafaf1a.entry.js +1 -0
- package/dist/elements/p-fd3b5d19.entry.js +1 -0
- package/dist/elements/{p-64c4e33d.entry.js → p-fe26ffc1.entry.js} +1 -1
- package/dist/esm/{animation-be5f711f.js → animation-b5940eb7.js} +1 -1
- package/dist/esm/{data-2c0eab05.js → data-0c8397b1.js} +19 -2
- package/dist/esm/elements.js +2 -2
- package/dist/esm/{framework-delegate-e3d3514b.js → framework-delegate-df4b1d47.js} +1 -1
- package/dist/esm/{helpers-516c51e1.js → helpers-dc474de0.js} +1 -1
- package/dist/esm/{index-975a559a.js → index-3ca7ca42.js} +2 -2
- package/dist/esm/{index-f53834ea.js → index-3f9a18ba.js} +1 -1
- package/dist/esm/{index-487ee567.js → index-8b7a635c.js} +1 -1
- package/dist/esm/{index-5b4bb310.js → index-8da653e3.js} +3 -3
- package/dist/esm/{index-c4158e4a.js → index-9e91fad4.js} +8464 -446
- package/dist/esm/{input-shims-14aa5c3b.js → input-shims-aedf5b0c.js} +2 -2
- package/dist/esm/ion-accordion.entry.js +3 -3
- package/dist/esm/ion-action-sheet_3.entry.js +3 -3
- package/dist/esm/{ion-app_25.entry.js → ion-app_26.entry.js} +47 -10
- package/dist/esm/ion-back-button.entry.js +1 -1
- package/dist/esm/ion-badge_12.entry.js +37 -11
- package/dist/esm/ion-breadcrumb.entry.js +1 -1
- package/dist/esm/ion-buttons_3.entry.js +2 -2
- package/dist/esm/ion-checkbox_4.entry.js +10 -1
- package/dist/esm/ion-datetime-button.entry.js +2 -2
- package/dist/esm/ion-datetime.entry.js +61 -10
- package/dist/esm/ion-fab-button.entry.js +1 -1
- package/dist/esm/ion-img.entry.js +1 -1
- package/dist/esm/ion-infinite-scroll.entry.js +2 -2
- package/dist/esm/ion-item-options.entry.js +1 -1
- package/dist/esm/ion-item-sliding.entry.js +2 -2
- package/dist/esm/ion-item_4.entry.js +1 -1
- package/dist/esm/ion-loading.entry.js +3 -3
- package/dist/esm/ion-menu-button.entry.js +4 -4
- package/dist/esm/ion-menu-toggle.entry.js +4 -4
- package/dist/esm/ion-menu.entry.js +21 -18
- package/dist/esm/ion-modal.entry.js +40 -31
- package/dist/esm/ion-nav.entry.js +4 -4
- package/dist/esm/ion-picker-column.entry.js +2 -3
- package/dist/esm/ion-picker.entry.js +3 -3
- package/dist/esm/ion-popover.entry.js +5 -5
- package/dist/esm/ion-range.entry.js +2 -2
- package/dist/esm/ion-refresher.entry.js +3 -3
- package/dist/esm/ion-reorder-group.entry.js +2 -2
- package/dist/esm/ion-router-outlet.entry.js +4 -4
- package/dist/esm/ion-router.entry.js +1 -1
- package/dist/esm/ion-segment-button.entry.js +1 -1
- package/dist/esm/ion-segment.entry.js +1 -1
- package/dist/esm/ion-select.entry.js +2 -2
- package/dist/esm/ion-slides.entry.js +1 -1
- package/dist/esm/ion-split-pane.entry.js +1 -1
- package/dist/esm/ion-tab-button.entry.js +1 -1
- package/dist/esm/ion-tab.entry.js +2 -2
- package/dist/esm/ion-textarea.entry.js +2 -2
- package/dist/esm/ion-toast.entry.js +23 -5
- package/dist/esm/ion-toggle.entry.js +1 -1
- package/dist/esm/ion-virtual-scroll.entry.js +1 -1
- package/dist/esm/{ios.transition-e4f590ed.js → ios.transition-fc8a45f6.js} +3 -3
- package/dist/esm/loader.js +2 -2
- package/dist/esm/{md.transition-f82b8ec5.js → md.transition-a33cfe2d.js} +3 -3
- package/dist/esm/{menu-toggle-util-c4c92fb3.js → menu-toggle-util-d434cd99.js} +1 -1
- package/dist/esm/{overlays-9f558e5d.js → overlays-3bfecc84.js} +10 -2
- package/dist/esm/pos-container-contents.entry.js +1 -1
- package/dist/esm/pos-subjects.entry.js +1 -1
- package/dist/esm/{status-tap-9bc89ae6.js → status-tap-c468a2d0.js} +2 -2
- package/dist/esm/{swipe-back-4cf55049.js → swipe-back-3b3f43fc.js} +1 -1
- package/dist/types/components/pos-add-literal-value/pos-add-literal-value.d.ts +10 -1
- package/dist/types/components/pos-error-toast/pos-error-toast.d.ts +4 -0
- package/dist/types/components/pos-literals/pos-literals.d.ts +1 -0
- package/dist/types/components.d.ts +20 -0
- package/package.json +6 -6
- package/dist/cjs/jsonld-HFR6RJUN-008ea20f.js +0 -8425
- package/dist/components/jsonld-HFR6RJUN.js +0 -8423
- package/dist/elements/p-011e627f.js +0 -4
- package/dist/elements/p-1949ecba.entry.js +0 -9
- package/dist/elements/p-195c8b60.js +0 -32
- package/dist/elements/p-37c43290.js +0 -4
- package/dist/elements/p-3f05b00a.js +0 -4
- package/dist/elements/p-6c05b99e.js +0 -7
- package/dist/elements/p-6dfca133.entry.js +0 -7
- package/dist/elements/p-6e75e3e5.entry.js +0 -1
- package/dist/elements/p-843c25a6.entry.js +0 -1
- package/dist/elements/p-8a5fdd45.entry.js +0 -1
- package/dist/elements/p-a8083674.js +0 -4
- package/dist/elements/p-b5e115b1.js +0 -90
- package/dist/elements/p-c12d7195.entry.js +0 -1
- package/dist/elements/p-c29ec519.entry.js +0 -4
- package/dist/elements/p-dc89477c.js +0 -4
- package/dist/elements/p-e0574155.entry.js +0 -1
- package/dist/elements/p-efa41d7d.entry.js +0 -1
- package/dist/esm/jsonld-HFR6RJUN-519a9242.js +0 -8423
|
@@ -2,15 +2,15 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
const index = require('./index-db5db51f.js');
|
|
5
|
+
const index$1 = require('./index-db5db51f.js');
|
|
6
6
|
const index$2 = require('./index-4e78c1d2.js');
|
|
7
7
|
const ionicGlobal = require('./ionic-global-66c719bf.js');
|
|
8
8
|
const focusVisible = require('./focus-visible-f8b0cb52.js');
|
|
9
9
|
const helpers = require('./helpers-cb08f5ae.js');
|
|
10
|
-
const index
|
|
10
|
+
const index = require('./index-b2a479e4.js');
|
|
11
11
|
const dir = require('./dir-011f46ea.js');
|
|
12
12
|
const theme = require('./theme-fc63803b.js');
|
|
13
|
-
const data = require('./data-
|
|
13
|
+
const data = require('./data-5be6ab7b.js');
|
|
14
14
|
|
|
15
15
|
/*!
|
|
16
16
|
* (C) Ionic http://ionicframework.com - MIT License
|
|
@@ -151,20 +151,50 @@ const isNextMonthDisabled = (refParts, maxParts) => {
|
|
|
151
151
|
maxParts,
|
|
152
152
|
});
|
|
153
153
|
};
|
|
154
|
+
/**
|
|
155
|
+
* Given the value of the highlightedDates property
|
|
156
|
+
* and an ISO string, return the styles to use for
|
|
157
|
+
* that date, or undefined if none are found.
|
|
158
|
+
*/
|
|
159
|
+
const getHighlightStyles = (highlightedDates, dateIsoString, el) => {
|
|
160
|
+
if (Array.isArray(highlightedDates)) {
|
|
161
|
+
const dateStringWithoutTime = dateIsoString.split('T')[0];
|
|
162
|
+
const matchingHighlight = highlightedDates.find((hd) => hd.date === dateStringWithoutTime);
|
|
163
|
+
if (matchingHighlight) {
|
|
164
|
+
return {
|
|
165
|
+
textColor: matchingHighlight.textColor,
|
|
166
|
+
backgroundColor: matchingHighlight.backgroundColor,
|
|
167
|
+
};
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
else {
|
|
171
|
+
/**
|
|
172
|
+
* Wrap in a try-catch to prevent exceptions in the user's function
|
|
173
|
+
* from interrupting the calendar's rendering.
|
|
174
|
+
*/
|
|
175
|
+
try {
|
|
176
|
+
return highlightedDates(dateIsoString);
|
|
177
|
+
}
|
|
178
|
+
catch (e) {
|
|
179
|
+
index.printIonError('Exception thrown from provided `highlightedDates` callback. Please check your function and try again.', el, e);
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
return undefined;
|
|
183
|
+
};
|
|
154
184
|
|
|
155
|
-
const datetimeIosCss = ":host{display:flex;flex-flow:column;background:var(--background);overflow:hidden}ion-picker-column-internal{min-width:26px}:host(.datetime-size-fixed){width:auto;height:auto}:host(.datetime-size-fixed:not(.datetime-prefer-wheel)){max-width:350px}:host(.datetime-size-fixed.datetime-prefer-wheel){min-width:350px;max-width:max-content}:host(.datetime-size-cover){width:100%}:host .calendar-body,:host .datetime-year{opacity:0}:host(:not(.datetime-ready)) .datetime-year{position:absolute;pointer-events:none}:host(.datetime-ready) .calendar-body{opacity:1}:host(.datetime-ready) .datetime-year{display:none;opacity:1}:host .wheel-order-year-first .day-column{order:3;text-align:end}:host .wheel-order-year-first .month-column{order:2;text-align:end}:host .wheel-order-year-first .year-column{order:1;text-align:start}:host .datetime-calendar,:host .datetime-year{display:flex;flex:1 1 auto;flex-flow:column}:host(.show-month-and-year) .datetime-year{display:flex}@supports (background: -webkit-named-image(apple-pay-logo-black)) and (not (aspect-ratio: 1/1)){:host(.show-month-and-year) .calendar-next-prev,:host(.show-month-and-year) .calendar-days-of-week,:host(.show-month-and-year) .calendar-body,:host(.show-month-and-year) .datetime-time{left:-99999px;position:absolute;visibility:hidden;pointer-events:none}:host-context([dir=rtl]):host(.show-month-and-year) .calendar-next-prev,:host-context([dir=rtl]).show-month-and-year .calendar-next-prev,:host-context([dir=rtl]):host(.show-month-and-year) .calendar-days-of-week,:host-context([dir=rtl]).show-month-and-year .calendar-days-of-week,:host-context([dir=rtl]):host(.show-month-and-year) .calendar-body,:host-context([dir=rtl]).show-month-and-year .calendar-body,:host-context([dir=rtl]):host(.show-month-and-year) .datetime-time,:host-context([dir=rtl]).show-month-and-year .datetime-time{left:unset;right:unset;right:-99999px}}@supports (not (background: -webkit-named-image(apple-pay-logo-black))) or ((background: -webkit-named-image(apple-pay-logo-black)) and (aspect-ratio: 1/1)){:host(.show-month-and-year) .calendar-next-prev,:host(.show-month-and-year) .calendar-days-of-week,:host(.show-month-and-year) .calendar-body,:host(.show-month-and-year) .datetime-time{display:none}}:host(.month-year-picker-open) .datetime-footer{display:none}:host(.datetime-readonly),:host(.datetime-disabled){pointer-events:none}:host(.datetime-disabled){opacity:0.4}:host .datetime-header .datetime-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}:host .datetime-action-buttons.has-clear-button{width:100%}:host .datetime-action-buttons ion-buttons{display:flex;justify-content:space-between}:host .calendar-action-buttons{display:flex;justify-content:space-between}:host .calendar-action-buttons ion-item,:host .calendar-action-buttons ion-button{--background:translucent}:host .calendar-action-buttons ion-item ion-label{display:flex;align-items:center}:host .calendar-action-buttons ion-item ion-icon{padding-left:4px;padding-right:0;padding-top:0;padding-bottom:0}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host .calendar-action-buttons ion-item ion-icon{padding-left:unset;padding-right:unset;-webkit-padding-start:4px;padding-inline-start:4px;-webkit-padding-end:0;padding-inline-end:0}}:host .calendar-days-of-week{display:grid;grid-template-columns:repeat(7, 1fr);text-align:center}:host .calendar-body{display:flex;flex-grow:1;scroll-snap-type:x mandatory;overflow-x:scroll;overflow-y:hidden;scrollbar-width:none;outline:none}:host .calendar-body .calendar-month{scroll-snap-align:start;scroll-snap-stop:always;flex-shrink:0;width:100%}:host .calendar-body .calendar-month-disabled{scroll-snap-align:none}:host .calendar-body::-webkit-scrollbar{display:none}:host .calendar-body .calendar-month-grid{display:grid;grid-template-columns:repeat(7, 1fr)}:host .calendar-day{padding-left:0px;padding-right:0px;padding-top:0px;padding-bottom:0px;margin-left:0px;margin-right:0px;margin-top:0px;margin-bottom:0px;display:flex;position:relative;align-items:center;justify-content:center;border:none;outline:none;background:none;color:currentColor;font-family:var(--ion-font-family, inherit);cursor:pointer;appearance:none;z-index:0}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host .calendar-day{padding-left:unset;padding-right:unset;-webkit-padding-start:0px;padding-inline-start:0px;-webkit-padding-end:0px;padding-inline-end:0px}}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host .calendar-day{margin-left:unset;margin-right:unset;-webkit-margin-start:0px;margin-inline-start:0px;-webkit-margin-end:0px;margin-inline-end:0px}}:host .calendar-day[disabled]{pointer-events:none;opacity:0.4}
|
|
185
|
+
const datetimeIosCss = ":host{display:flex;flex-flow:column;background:var(--background);overflow:hidden}ion-picker-column-internal{min-width:26px}:host(.datetime-size-fixed){width:auto;height:auto}:host(.datetime-size-fixed:not(.datetime-prefer-wheel)){max-width:350px}:host(.datetime-size-fixed.datetime-prefer-wheel){min-width:350px;max-width:max-content}:host(.datetime-size-cover){width:100%}:host .calendar-body,:host .datetime-year{opacity:0}:host(:not(.datetime-ready)) .datetime-year{position:absolute;pointer-events:none}:host(.datetime-ready) .calendar-body{opacity:1}:host(.datetime-ready) .datetime-year{display:none;opacity:1}:host .wheel-order-year-first .day-column{order:3;text-align:end}:host .wheel-order-year-first .month-column{order:2;text-align:end}:host .wheel-order-year-first .year-column{order:1;text-align:start}:host .datetime-calendar,:host .datetime-year{display:flex;flex:1 1 auto;flex-flow:column}:host(.show-month-and-year) .datetime-year{display:flex}@supports (background: -webkit-named-image(apple-pay-logo-black)) and (not (aspect-ratio: 1/1)){:host(.show-month-and-year) .calendar-next-prev,:host(.show-month-and-year) .calendar-days-of-week,:host(.show-month-and-year) .calendar-body,:host(.show-month-and-year) .datetime-time{left:-99999px;position:absolute;visibility:hidden;pointer-events:none}:host-context([dir=rtl]):host(.show-month-and-year) .calendar-next-prev,:host-context([dir=rtl]).show-month-and-year .calendar-next-prev,:host-context([dir=rtl]):host(.show-month-and-year) .calendar-days-of-week,:host-context([dir=rtl]).show-month-and-year .calendar-days-of-week,:host-context([dir=rtl]):host(.show-month-and-year) .calendar-body,:host-context([dir=rtl]).show-month-and-year .calendar-body,:host-context([dir=rtl]):host(.show-month-and-year) .datetime-time,:host-context([dir=rtl]).show-month-and-year .datetime-time{left:unset;right:unset;right:-99999px}}@supports (not (background: -webkit-named-image(apple-pay-logo-black))) or ((background: -webkit-named-image(apple-pay-logo-black)) and (aspect-ratio: 1/1)){:host(.show-month-and-year) .calendar-next-prev,:host(.show-month-and-year) .calendar-days-of-week,:host(.show-month-and-year) .calendar-body,:host(.show-month-and-year) .datetime-time{display:none}}:host(.month-year-picker-open) .datetime-footer{display:none}:host(.datetime-readonly),:host(.datetime-disabled){pointer-events:none}:host(.datetime-disabled){opacity:0.4}:host .datetime-header .datetime-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}:host .datetime-action-buttons.has-clear-button{width:100%}:host .datetime-action-buttons ion-buttons{display:flex;justify-content:space-between}:host .calendar-action-buttons{display:flex;justify-content:space-between}:host .calendar-action-buttons ion-item,:host .calendar-action-buttons ion-button{--background:translucent}:host .calendar-action-buttons ion-item ion-label{display:flex;align-items:center}:host .calendar-action-buttons ion-item ion-icon{padding-left:4px;padding-right:0;padding-top:0;padding-bottom:0}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host .calendar-action-buttons ion-item ion-icon{padding-left:unset;padding-right:unset;-webkit-padding-start:4px;padding-inline-start:4px;-webkit-padding-end:0;padding-inline-end:0}}:host .calendar-days-of-week{display:grid;grid-template-columns:repeat(7, 1fr);text-align:center}:host .calendar-body{display:flex;flex-grow:1;scroll-snap-type:x mandatory;overflow-x:scroll;overflow-y:hidden;scrollbar-width:none;outline:none}:host .calendar-body .calendar-month{scroll-snap-align:start;scroll-snap-stop:always;flex-shrink:0;width:100%}:host .calendar-body .calendar-month-disabled{scroll-snap-align:none}:host .calendar-body::-webkit-scrollbar{display:none}:host .calendar-body .calendar-month-grid{display:grid;grid-template-columns:repeat(7, 1fr)}:host .calendar-day{padding-left:0px;padding-right:0px;padding-top:0px;padding-bottom:0px;margin-left:0px;margin-right:0px;margin-top:0px;margin-bottom:0px;display:flex;position:relative;align-items:center;justify-content:center;border:none;outline:none;background:none;color:currentColor;font-family:var(--ion-font-family, inherit);cursor:pointer;appearance:none;z-index:0}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host .calendar-day{padding-left:unset;padding-right:unset;-webkit-padding-start:0px;padding-inline-start:0px;-webkit-padding-end:0px;padding-inline-end:0px}}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host .calendar-day{margin-left:unset;margin-right:unset;-webkit-margin-start:0px;margin-inline-start:0px;-webkit-margin-end:0px;margin-inline-end:0px}}:host .calendar-day[disabled]{pointer-events:none;opacity:0.4}.calendar-day-highlight{border-radius:32px;padding-left:4px;padding-right:4px;padding-top:4px;padding-bottom:4px;position:absolute;width:32px;height:32px;z-index:-1}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){.calendar-day-highlight{padding-left:unset;padding-right:unset;-webkit-padding-start:4px;padding-inline-start:4px;-webkit-padding-end:4px;padding-inline-end:4px}}:host .datetime-time{display:flex;justify-content:space-between}:host(.datetime-presentation-time) .datetime-time{padding-left:0;padding-right:0;padding-top:0;padding-bottom:0}:host ion-popover{--height:200px}:host .time-header{display:flex;align-items:center}:host .time-body{border-radius:8px;padding-left:12px;padding-right:12px;padding-top:6px;padding-bottom:6px;display:flex;border:none;background:var(--ion-color-step-300, #edeef0);color:var(--ion-text-color, #000);font-family:inherit;font-size:inherit;cursor:pointer;appearance:none}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host .time-body{padding-left:unset;padding-right:unset;-webkit-padding-start:12px;padding-inline-start:12px;-webkit-padding-end:12px;padding-inline-end:12px}}:host .time-body-active{color:var(--ion-color-base)}:host(.in-item){position:static}:host(.show-month-and-year) .calendar-action-buttons ion-item{--color:var(--ion-color-base)}:host{--background:var(--ion-color-light, #ffffff);--background-rgb:var(--ion-color-light-rgb);--title-color:var(--ion-color-step-600, #666666)}:host(.datetime-presentation-date-time:not(.datetime-prefer-wheel)),:host(.datetime-presentation-time-date:not(.datetime-prefer-wheel)),:host(.datetime-presentation-date:not(.datetime-prefer-wheel)){min-height:350px}:host .datetime-header{padding-left:16px;padding-right:16px;padding-top:16px;padding-bottom:16px;border-bottom:0.55px solid var(--ion-color-step-200, #cccccc);font-size:14px}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host .datetime-header{padding-left:unset;padding-right:unset;-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px}}:host .datetime-header .datetime-title{color:var(--title-color)}:host .datetime-header .datetime-selected-date{margin-top:10px}:host .calendar-action-buttons ion-item{--padding-start:16px;--background-hover:transparent;--background-activated:transparent;font-size:16px;font-weight:600}:host .calendar-action-buttons ion-item ion-icon,:host .calendar-action-buttons ion-buttons ion-button{color:var(--ion-color-base)}:host .calendar-action-buttons ion-buttons{padding-left:0;padding-right:0;padding-top:8px;padding-bottom:0}:host .calendar-action-buttons ion-buttons ion-button{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0}:host .calendar-days-of-week{padding-left:8px;padding-right:8px;padding-top:0;padding-bottom:0;color:var(--ion-color-step-300, #b3b3b3);font-size:12px;font-weight:600;line-height:24px;text-transform:uppercase}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host .calendar-days-of-week{padding-left:unset;padding-right:unset;-webkit-padding-start:8px;padding-inline-start:8px;-webkit-padding-end:8px;padding-inline-end:8px}}:host .calendar-body .calendar-month .calendar-month-grid{padding-left:8px;padding-right:8px;padding-top:8px;padding-bottom:8px;height:calc(100% - 16px)}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host .calendar-body .calendar-month .calendar-month-grid{padding-left:unset;padding-right:unset;-webkit-padding-start:8px;padding-inline-start:8px;-webkit-padding-end:8px;padding-inline-end:8px}}:host .calendar-day{font-size:20px}.calendar-day:focus .calendar-day-highlight,.calendar-day.calendar-day-active .calendar-day-highlight{opacity:0.2}.calendar-day.calendar-day-active .calendar-day-highlight{background:var(--ion-color-base)}.calendar-day:focus .calendar-day-highlight{background:var(--ion-color-base) !important}:host .calendar-day.calendar-day-today{color:var(--ion-color-base)}:host .calendar-day.calendar-day-active{color:var(--ion-color-base);font-weight:600}:host .calendar-day.calendar-day-today.calendar-day-active{color:var(--ion-color-contrast)}.calendar-day.calendar-day-today.calendar-day-active .calendar-day-highlight{background:var(--ion-color-base);opacity:1}:host .datetime-time{padding-left:16px;padding-right:16px;padding-top:8px;padding-bottom:16px;font-size:16px}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host .datetime-time{padding-left:unset;padding-right:unset;-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px}}:host .datetime-time .time-header{font-weight:600}:host .datetime-buttons{padding-left:8px;padding-right:8px;padding-top:8px;padding-bottom:8px;border-top:0.55px solid var(--ion-color-step-200, #cccccc)}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host .datetime-buttons{padding-left:unset;padding-right:unset;-webkit-padding-start:8px;padding-inline-start:8px;-webkit-padding-end:8px;padding-inline-end:8px}}:host .datetime-buttons ::slotted(ion-buttons),:host .datetime-buttons ion-buttons{display:flex;align-items:center;justify-content:space-between}:host .datetime-action-buttons{width:100%}";
|
|
156
186
|
|
|
157
|
-
const datetimeMdCss = ":host{display:flex;flex-flow:column;background:var(--background);overflow:hidden}ion-picker-column-internal{min-width:26px}:host(.datetime-size-fixed){width:auto;height:auto}:host(.datetime-size-fixed:not(.datetime-prefer-wheel)){max-width:350px}:host(.datetime-size-fixed.datetime-prefer-wheel){min-width:350px;max-width:max-content}:host(.datetime-size-cover){width:100%}:host .calendar-body,:host .datetime-year{opacity:0}:host(:not(.datetime-ready)) .datetime-year{position:absolute;pointer-events:none}:host(.datetime-ready) .calendar-body{opacity:1}:host(.datetime-ready) .datetime-year{display:none;opacity:1}:host .wheel-order-year-first .day-column{order:3;text-align:end}:host .wheel-order-year-first .month-column{order:2;text-align:end}:host .wheel-order-year-first .year-column{order:1;text-align:start}:host .datetime-calendar,:host .datetime-year{display:flex;flex:1 1 auto;flex-flow:column}:host(.show-month-and-year) .datetime-year{display:flex}@supports (background: -webkit-named-image(apple-pay-logo-black)) and (not (aspect-ratio: 1/1)){:host(.show-month-and-year) .calendar-next-prev,:host(.show-month-and-year) .calendar-days-of-week,:host(.show-month-and-year) .calendar-body,:host(.show-month-and-year) .datetime-time{left:-99999px;position:absolute;visibility:hidden;pointer-events:none}:host-context([dir=rtl]):host(.show-month-and-year) .calendar-next-prev,:host-context([dir=rtl]).show-month-and-year .calendar-next-prev,:host-context([dir=rtl]):host(.show-month-and-year) .calendar-days-of-week,:host-context([dir=rtl]).show-month-and-year .calendar-days-of-week,:host-context([dir=rtl]):host(.show-month-and-year) .calendar-body,:host-context([dir=rtl]).show-month-and-year .calendar-body,:host-context([dir=rtl]):host(.show-month-and-year) .datetime-time,:host-context([dir=rtl]).show-month-and-year .datetime-time{left:unset;right:unset;right:-99999px}}@supports (not (background: -webkit-named-image(apple-pay-logo-black))) or ((background: -webkit-named-image(apple-pay-logo-black)) and (aspect-ratio: 1/1)){:host(.show-month-and-year) .calendar-next-prev,:host(.show-month-and-year) .calendar-days-of-week,:host(.show-month-and-year) .calendar-body,:host(.show-month-and-year) .datetime-time{display:none}}:host(.month-year-picker-open) .datetime-footer{display:none}:host(.datetime-readonly),:host(.datetime-disabled){pointer-events:none}:host(.datetime-disabled){opacity:0.4}:host .datetime-header .datetime-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}:host .datetime-action-buttons.has-clear-button{width:100%}:host .datetime-action-buttons ion-buttons{display:flex;justify-content:space-between}:host .calendar-action-buttons{display:flex;justify-content:space-between}:host .calendar-action-buttons ion-item,:host .calendar-action-buttons ion-button{--background:translucent}:host .calendar-action-buttons ion-item ion-label{display:flex;align-items:center}:host .calendar-action-buttons ion-item ion-icon{padding-left:4px;padding-right:0;padding-top:0;padding-bottom:0}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host .calendar-action-buttons ion-item ion-icon{padding-left:unset;padding-right:unset;-webkit-padding-start:4px;padding-inline-start:4px;-webkit-padding-end:0;padding-inline-end:0}}:host .calendar-days-of-week{display:grid;grid-template-columns:repeat(7, 1fr);text-align:center}:host .calendar-body{display:flex;flex-grow:1;scroll-snap-type:x mandatory;overflow-x:scroll;overflow-y:hidden;scrollbar-width:none;outline:none}:host .calendar-body .calendar-month{scroll-snap-align:start;scroll-snap-stop:always;flex-shrink:0;width:100%}:host .calendar-body .calendar-month-disabled{scroll-snap-align:none}:host .calendar-body::-webkit-scrollbar{display:none}:host .calendar-body .calendar-month-grid{display:grid;grid-template-columns:repeat(7, 1fr)}:host .calendar-day{padding-left:0px;padding-right:0px;padding-top:0px;padding-bottom:0px;margin-left:0px;margin-right:0px;margin-top:0px;margin-bottom:0px;display:flex;position:relative;align-items:center;justify-content:center;border:none;outline:none;background:none;color:currentColor;font-family:var(--ion-font-family, inherit);cursor:pointer;appearance:none;z-index:0}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host .calendar-day{padding-left:unset;padding-right:unset;-webkit-padding-start:0px;padding-inline-start:0px;-webkit-padding-end:0px;padding-inline-end:0px}}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host .calendar-day{margin-left:unset;margin-right:unset;-webkit-margin-start:0px;margin-inline-start:0px;-webkit-margin-end:0px;margin-inline-end:0px}}:host .calendar-day[disabled]{pointer-events:none;opacity:0.4}
|
|
187
|
+
const datetimeMdCss = ":host{display:flex;flex-flow:column;background:var(--background);overflow:hidden}ion-picker-column-internal{min-width:26px}:host(.datetime-size-fixed){width:auto;height:auto}:host(.datetime-size-fixed:not(.datetime-prefer-wheel)){max-width:350px}:host(.datetime-size-fixed.datetime-prefer-wheel){min-width:350px;max-width:max-content}:host(.datetime-size-cover){width:100%}:host .calendar-body,:host .datetime-year{opacity:0}:host(:not(.datetime-ready)) .datetime-year{position:absolute;pointer-events:none}:host(.datetime-ready) .calendar-body{opacity:1}:host(.datetime-ready) .datetime-year{display:none;opacity:1}:host .wheel-order-year-first .day-column{order:3;text-align:end}:host .wheel-order-year-first .month-column{order:2;text-align:end}:host .wheel-order-year-first .year-column{order:1;text-align:start}:host .datetime-calendar,:host .datetime-year{display:flex;flex:1 1 auto;flex-flow:column}:host(.show-month-and-year) .datetime-year{display:flex}@supports (background: -webkit-named-image(apple-pay-logo-black)) and (not (aspect-ratio: 1/1)){:host(.show-month-and-year) .calendar-next-prev,:host(.show-month-and-year) .calendar-days-of-week,:host(.show-month-and-year) .calendar-body,:host(.show-month-and-year) .datetime-time{left:-99999px;position:absolute;visibility:hidden;pointer-events:none}:host-context([dir=rtl]):host(.show-month-and-year) .calendar-next-prev,:host-context([dir=rtl]).show-month-and-year .calendar-next-prev,:host-context([dir=rtl]):host(.show-month-and-year) .calendar-days-of-week,:host-context([dir=rtl]).show-month-and-year .calendar-days-of-week,:host-context([dir=rtl]):host(.show-month-and-year) .calendar-body,:host-context([dir=rtl]).show-month-and-year .calendar-body,:host-context([dir=rtl]):host(.show-month-and-year) .datetime-time,:host-context([dir=rtl]).show-month-and-year .datetime-time{left:unset;right:unset;right:-99999px}}@supports (not (background: -webkit-named-image(apple-pay-logo-black))) or ((background: -webkit-named-image(apple-pay-logo-black)) and (aspect-ratio: 1/1)){:host(.show-month-and-year) .calendar-next-prev,:host(.show-month-and-year) .calendar-days-of-week,:host(.show-month-and-year) .calendar-body,:host(.show-month-and-year) .datetime-time{display:none}}:host(.month-year-picker-open) .datetime-footer{display:none}:host(.datetime-readonly),:host(.datetime-disabled){pointer-events:none}:host(.datetime-disabled){opacity:0.4}:host .datetime-header .datetime-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}:host .datetime-action-buttons.has-clear-button{width:100%}:host .datetime-action-buttons ion-buttons{display:flex;justify-content:space-between}:host .calendar-action-buttons{display:flex;justify-content:space-between}:host .calendar-action-buttons ion-item,:host .calendar-action-buttons ion-button{--background:translucent}:host .calendar-action-buttons ion-item ion-label{display:flex;align-items:center}:host .calendar-action-buttons ion-item ion-icon{padding-left:4px;padding-right:0;padding-top:0;padding-bottom:0}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host .calendar-action-buttons ion-item ion-icon{padding-left:unset;padding-right:unset;-webkit-padding-start:4px;padding-inline-start:4px;-webkit-padding-end:0;padding-inline-end:0}}:host .calendar-days-of-week{display:grid;grid-template-columns:repeat(7, 1fr);text-align:center}:host .calendar-body{display:flex;flex-grow:1;scroll-snap-type:x mandatory;overflow-x:scroll;overflow-y:hidden;scrollbar-width:none;outline:none}:host .calendar-body .calendar-month{scroll-snap-align:start;scroll-snap-stop:always;flex-shrink:0;width:100%}:host .calendar-body .calendar-month-disabled{scroll-snap-align:none}:host .calendar-body::-webkit-scrollbar{display:none}:host .calendar-body .calendar-month-grid{display:grid;grid-template-columns:repeat(7, 1fr)}:host .calendar-day{padding-left:0px;padding-right:0px;padding-top:0px;padding-bottom:0px;margin-left:0px;margin-right:0px;margin-top:0px;margin-bottom:0px;display:flex;position:relative;align-items:center;justify-content:center;border:none;outline:none;background:none;color:currentColor;font-family:var(--ion-font-family, inherit);cursor:pointer;appearance:none;z-index:0}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host .calendar-day{padding-left:unset;padding-right:unset;-webkit-padding-start:0px;padding-inline-start:0px;-webkit-padding-end:0px;padding-inline-end:0px}}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host .calendar-day{margin-left:unset;margin-right:unset;-webkit-margin-start:0px;margin-inline-start:0px;-webkit-margin-end:0px;margin-inline-end:0px}}:host .calendar-day[disabled]{pointer-events:none;opacity:0.4}.calendar-day-highlight{border-radius:32px;padding-left:4px;padding-right:4px;padding-top:4px;padding-bottom:4px;position:absolute;width:32px;height:32px;z-index:-1}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){.calendar-day-highlight{padding-left:unset;padding-right:unset;-webkit-padding-start:4px;padding-inline-start:4px;-webkit-padding-end:4px;padding-inline-end:4px}}:host .datetime-time{display:flex;justify-content:space-between}:host(.datetime-presentation-time) .datetime-time{padding-left:0;padding-right:0;padding-top:0;padding-bottom:0}:host ion-popover{--height:200px}:host .time-header{display:flex;align-items:center}:host .time-body{border-radius:8px;padding-left:12px;padding-right:12px;padding-top:6px;padding-bottom:6px;display:flex;border:none;background:var(--ion-color-step-300, #edeef0);color:var(--ion-text-color, #000);font-family:inherit;font-size:inherit;cursor:pointer;appearance:none}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host .time-body{padding-left:unset;padding-right:unset;-webkit-padding-start:12px;padding-inline-start:12px;-webkit-padding-end:12px;padding-inline-end:12px}}:host .time-body-active{color:var(--ion-color-base)}:host(.in-item){position:static}:host(.show-month-and-year) .calendar-action-buttons ion-item{--color:var(--ion-color-base)}:host{--background:var(--ion-color-step-100, #ffffff);--title-color:var(--ion-color-contrast)}:host .datetime-header{padding-left:20px;padding-right:20px;padding-top:20px;padding-bottom:20px;background:var(--ion-color-base);color:var(--title-color)}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host .datetime-header{padding-left:unset;padding-right:unset;-webkit-padding-start:20px;padding-inline-start:20px;-webkit-padding-end:20px;padding-inline-end:20px}}:host .datetime-header .datetime-title{font-size:12px;text-transform:uppercase}:host .datetime-header .datetime-selected-date{margin-top:30px;font-size:34px}:host .datetime-calendar .calendar-action-buttons ion-item{--padding-start:20px}:host .calendar-action-buttons ion-item,:host .calendar-action-buttons ion-button{color:var(--ion-color-step-650, #595959)}:host .calendar-days-of-week{padding-left:10px;padding-right:10px;padding-top:0px;padding-bottom:0px;color:var(--ion-color-step-500, gray);font-size:14px;line-height:36px}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host .calendar-days-of-week{padding-left:unset;padding-right:unset;-webkit-padding-start:10px;padding-inline-start:10px;-webkit-padding-end:10px;padding-inline-end:10px}}:host .calendar-body .calendar-month .calendar-month-grid{padding-left:10px;padding-right:10px;padding-top:4px;padding-bottom:4px;grid-template-rows:repeat(6, 1fr)}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host .calendar-body .calendar-month .calendar-month-grid{padding-left:unset;padding-right:unset;-webkit-padding-start:10px;padding-inline-start:10px;-webkit-padding-end:10px;padding-inline-end:10px}}:host .calendar-day{padding-left:0px;padding-right:0;padding-top:13px;padding-bottom:13px;font-size:14px}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host .calendar-day{padding-left:unset;padding-right:unset;-webkit-padding-start:0px;padding-inline-start:0px;-webkit-padding-end:0;padding-inline-end:0}}.calendar-day:focus .calendar-day-highlight{background:rgba(var(--ion-color-base-rgb), 0.2);box-shadow:0px 0px 0px 4px rgba(var(--ion-color-base-rgb), 0.2)}:host .calendar-day.calendar-day-today{color:var(--ion-color-base)}.calendar-day.calendar-day-today .calendar-day-highlight{border:1px solid var(--ion-color-base)}:host .calendar-day.calendar-day-active{color:var(--ion-color-contrast)}.calendar-day.calendar-day-active .calendar-day-highlight{border:1px solid var(--ion-color-base);background:var(--ion-color-base)}:host .datetime-time{padding-left:16px;padding-right:16px;padding-top:8px;padding-bottom:8px}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host .datetime-time{padding-left:unset;padding-right:unset;-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px}}:host .time-header{color:var(--ion-color-step-650, #595959)}:host(.datetime-presentation-month) .datetime-year,:host(.datetime-presentation-year) .datetime-year,:host(.datetime-presentation-month-year) .datetime-year{margin-top:20px;margin-bottom:20px}:host .datetime-buttons{padding-left:10px;padding-right:10px;padding-top:10px;padding-bottom:10px;display:flex;align-items:center;justify-content:flex-end}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host .datetime-buttons{padding-left:unset;padding-right:unset;-webkit-padding-start:10px;padding-inline-start:10px;-webkit-padding-end:10px;padding-inline-end:10px}}:host .datetime-view-buttons ion-button{color:var(--ion-color-step-800, #333333)}";
|
|
158
188
|
|
|
159
189
|
const Datetime = class {
|
|
160
190
|
constructor(hostRef) {
|
|
161
|
-
index.registerInstance(this, hostRef);
|
|
162
|
-
this.ionCancel = index.createEvent(this, "ionCancel", 7);
|
|
163
|
-
this.ionChange = index.createEvent(this, "ionChange", 7);
|
|
164
|
-
this.ionFocus = index.createEvent(this, "ionFocus", 7);
|
|
165
|
-
this.ionBlur = index.createEvent(this, "ionBlur", 7);
|
|
166
|
-
this.ionStyle = index.createEvent(this, "ionStyle", 7);
|
|
167
|
-
this.ionRender = index.createEvent(this, "ionRender", 7);
|
|
191
|
+
index$1.registerInstance(this, hostRef);
|
|
192
|
+
this.ionCancel = index$1.createEvent(this, "ionCancel", 7);
|
|
193
|
+
this.ionChange = index$1.createEvent(this, "ionChange", 7);
|
|
194
|
+
this.ionFocus = index$1.createEvent(this, "ionFocus", 7);
|
|
195
|
+
this.ionBlur = index$1.createEvent(this, "ionBlur", 7);
|
|
196
|
+
this.ionStyle = index$1.createEvent(this, "ionStyle", 7);
|
|
197
|
+
this.ionRender = index$1.createEvent(this, "ionRender", 7);
|
|
168
198
|
this.inputId = `ion-dt-${datetimeIds++}`;
|
|
169
199
|
this.prevPresentation = null;
|
|
170
200
|
/**
|
|
@@ -531,7 +561,7 @@ const Datetime = class {
|
|
|
531
561
|
* scrollIntoView() will scroll entire page
|
|
532
562
|
* if element is not in viewport. Use scrollLeft instead.
|
|
533
563
|
*/
|
|
534
|
-
index.writeTask(() => {
|
|
564
|
+
index$1.writeTask(() => {
|
|
535
565
|
calendarBodyRef.scrollLeft = startMonth.clientWidth * (dir.isRTL(this.el) ? -1 : 1);
|
|
536
566
|
const getChangedMonth = (parts) => {
|
|
537
567
|
const box = calendarBodyRef.getBoundingClientRect();
|
|
@@ -613,7 +643,7 @@ const Datetime = class {
|
|
|
613
643
|
* but older/slower device may have a flicker
|
|
614
644
|
* if we did not do this.
|
|
615
645
|
*/
|
|
616
|
-
index.writeTask(() => {
|
|
646
|
+
index$1.writeTask(() => {
|
|
617
647
|
this.setWorkingParts(Object.assign(Object.assign({}, this.workingParts), { month, day: day, year }));
|
|
618
648
|
calendarBodyRef.scrollLeft = workingMonth.clientWidth * (dir.isRTL(this.el) ? -1 : 1);
|
|
619
649
|
calendarBodyRef.style.removeProperty('overflow');
|
|
@@ -854,7 +884,7 @@ const Datetime = class {
|
|
|
854
884
|
}
|
|
855
885
|
}
|
|
856
886
|
else {
|
|
857
|
-
index
|
|
887
|
+
index.printIonWarning(`Unable to parse date string: ${value}. Please provide a valid ISO 8601 datetime string.`);
|
|
858
888
|
}
|
|
859
889
|
}
|
|
860
890
|
this.emitStyle();
|
|
@@ -961,7 +991,7 @@ const Datetime = class {
|
|
|
961
991
|
* is that the content will pop into view a frame after. Maybe there
|
|
962
992
|
* is a better way to handle this?
|
|
963
993
|
*/
|
|
964
|
-
index.writeTask(() => {
|
|
994
|
+
index$1.writeTask(() => {
|
|
965
995
|
this.el.classList.add('datetime-ready');
|
|
966
996
|
});
|
|
967
997
|
};
|
|
@@ -994,7 +1024,7 @@ const Datetime = class {
|
|
|
994
1024
|
* As a result, the wrong month will be shown.
|
|
995
1025
|
*/
|
|
996
1026
|
this.showMonthAndYear = false;
|
|
997
|
-
index.writeTask(() => {
|
|
1027
|
+
index$1.writeTask(() => {
|
|
998
1028
|
this.el.classList.remove('datetime-ready');
|
|
999
1029
|
});
|
|
1000
1030
|
};
|
|
@@ -1060,13 +1090,21 @@ const Datetime = class {
|
|
|
1060
1090
|
});
|
|
1061
1091
|
}
|
|
1062
1092
|
componentWillLoad() {
|
|
1063
|
-
const { el, multiple, presentation, preferWheel } = this;
|
|
1093
|
+
const { el, highlightedDates, multiple, presentation, preferWheel } = this;
|
|
1064
1094
|
if (multiple) {
|
|
1065
1095
|
if (presentation !== 'date') {
|
|
1066
|
-
index
|
|
1096
|
+
index.printIonWarning('Multiple date selection is only supported for presentation="date".', el);
|
|
1067
1097
|
}
|
|
1068
1098
|
if (preferWheel) {
|
|
1069
|
-
index
|
|
1099
|
+
index.printIonWarning('Multiple date selection is not supported with preferWheel="true".', el);
|
|
1100
|
+
}
|
|
1101
|
+
}
|
|
1102
|
+
if (highlightedDates !== undefined) {
|
|
1103
|
+
if (presentation !== 'date' && presentation !== 'date-time' && presentation !== 'time-date') {
|
|
1104
|
+
index.printIonWarning('The highlightedDates property is only supported with the date, date-time, and time-date presentations.', el);
|
|
1105
|
+
}
|
|
1106
|
+
if (preferWheel) {
|
|
1107
|
+
index.printIonWarning('The highlightedDates property is not supported with preferWheel="true".', el);
|
|
1070
1108
|
}
|
|
1071
1109
|
}
|
|
1072
1110
|
this.processMinParts();
|
|
@@ -1110,10 +1148,10 @@ const Datetime = class {
|
|
|
1110
1148
|
* OK - Dismisses the datetime and
|
|
1111
1149
|
* updates the `value` prop.
|
|
1112
1150
|
*/
|
|
1113
|
-
return (index.h("div", { class: "datetime-footer" }, index.h("div", { class: "datetime-buttons" }, index.h("div", { class: {
|
|
1151
|
+
return (index$1.h("div", { class: "datetime-footer" }, index$1.h("div", { class: "datetime-buttons" }, index$1.h("div", { class: {
|
|
1114
1152
|
['datetime-action-buttons']: true,
|
|
1115
1153
|
['has-clear-button']: this.showClearButton,
|
|
1116
|
-
} }, index.h("slot", { name: "buttons" }, index.h("ion-buttons", null, showDefaultButtons && (index.h("ion-button", { id: "cancel-button", color: this.color, onClick: () => this.cancel(true) }, this.cancelText)), index.h("div", null, showClearButton && (index.h("ion-button", { id: "clear-button", color: this.color, onClick: () => clearButtonClick() }, this.clearText)), showDefaultButtons && (index.h("ion-button", { id: "confirm-button", color: this.color, onClick: () => this.confirm(true) }, this.doneText)))))))));
|
|
1154
|
+
} }, index$1.h("slot", { name: "buttons" }, index$1.h("ion-buttons", null, showDefaultButtons && (index$1.h("ion-button", { id: "cancel-button", color: this.color, onClick: () => this.cancel(true) }, this.cancelText)), index$1.h("div", null, showClearButton && (index$1.h("ion-button", { id: "clear-button", color: this.color, onClick: () => clearButtonClick() }, this.clearText)), showDefaultButtons && (index$1.h("ion-button", { id: "confirm-button", color: this.color, onClick: () => this.confirm(true) }, this.doneText)))))))));
|
|
1117
1155
|
}
|
|
1118
1156
|
/**
|
|
1119
1157
|
* Wheel picker render methods
|
|
@@ -1131,7 +1169,7 @@ const Datetime = class {
|
|
|
1131
1169
|
const renderArray = forcePresentation === 'time-date'
|
|
1132
1170
|
? [this.renderTimePickerColumns(forcePresentation), this.renderDatePickerColumns(forcePresentation)]
|
|
1133
1171
|
: [this.renderDatePickerColumns(forcePresentation), this.renderTimePickerColumns(forcePresentation)];
|
|
1134
|
-
return index.h("ion-picker-internal", null, renderArray);
|
|
1172
|
+
return index$1.h("ion-picker-internal", null, renderArray);
|
|
1135
1173
|
}
|
|
1136
1174
|
renderDatePickerColumns(forcePresentation) {
|
|
1137
1175
|
return forcePresentation === 'date-time' || forcePresentation === 'time-date'
|
|
@@ -1166,8 +1204,8 @@ const Datetime = class {
|
|
|
1166
1204
|
let items = result.items;
|
|
1167
1205
|
const parts = result.parts;
|
|
1168
1206
|
if (isDateEnabled) {
|
|
1169
|
-
items = items.map((itemObject, index) => {
|
|
1170
|
-
const referenceParts = parts[index];
|
|
1207
|
+
items = items.map((itemObject, index$1) => {
|
|
1208
|
+
const referenceParts = parts[index$1];
|
|
1171
1209
|
let disabled;
|
|
1172
1210
|
try {
|
|
1173
1211
|
/**
|
|
@@ -1178,7 +1216,7 @@ const Datetime = class {
|
|
|
1178
1216
|
disabled = !isDateEnabled(data.convertDataToISO(referenceParts));
|
|
1179
1217
|
}
|
|
1180
1218
|
catch (e) {
|
|
1181
|
-
index
|
|
1219
|
+
index.printIonError('Exception thrown from provided `isDateEnabled` function. Please check your function and try again.', e);
|
|
1182
1220
|
}
|
|
1183
1221
|
return Object.assign(Object.assign({}, itemObject), { disabled });
|
|
1184
1222
|
});
|
|
@@ -1190,7 +1228,7 @@ const Datetime = class {
|
|
|
1190
1228
|
const todayString = workingParts.day !== null
|
|
1191
1229
|
? `${workingParts.year}-${workingParts.month}-${workingParts.day}`
|
|
1192
1230
|
: `${defaultParts.year}-${defaultParts.month}-${defaultParts.day}`;
|
|
1193
|
-
return (index.h("ion-picker-column-internal", { class: "date-column", color: this.color, items: items, value: todayString, onIonChange: (ev) => {
|
|
1231
|
+
return (index$1.h("ion-picker-column-internal", { class: "date-column", color: this.color, items: items, value: todayString, onIonChange: (ev) => {
|
|
1194
1232
|
// TODO(FW-1823) Remove this when iOS 14 support is dropped.
|
|
1195
1233
|
// Due to a Safari 14 issue we need to destroy
|
|
1196
1234
|
// the scroll listener before we update state
|
|
@@ -1237,7 +1275,7 @@ const Datetime = class {
|
|
|
1237
1275
|
disabled = !isDateEnabled(data.convertDataToISO(referenceParts));
|
|
1238
1276
|
}
|
|
1239
1277
|
catch (e) {
|
|
1240
|
-
index
|
|
1278
|
+
index.printIonError('Exception thrown from provided `isDateEnabled` function. Please check your function and try again.', e);
|
|
1241
1279
|
}
|
|
1242
1280
|
return Object.assign(Object.assign({}, dayObject), { disabled });
|
|
1243
1281
|
});
|
|
@@ -1274,7 +1312,7 @@ const Datetime = class {
|
|
|
1274
1312
|
}
|
|
1275
1313
|
const { workingParts } = this;
|
|
1276
1314
|
const activePart = this.getActivePartsWithFallback();
|
|
1277
|
-
return (index.h("ion-picker-column-internal", { class: "day-column", color: this.color, items: days, value: (_a = (workingParts.day !== null ? workingParts.day : this.defaultParts.day)) !== null && _a !== void 0 ? _a : undefined, onIonChange: (ev) => {
|
|
1315
|
+
return (index$1.h("ion-picker-column-internal", { class: "day-column", color: this.color, items: days, value: (_a = (workingParts.day !== null ? workingParts.day : this.defaultParts.day)) !== null && _a !== void 0 ? _a : undefined, onIonChange: (ev) => {
|
|
1278
1316
|
// TODO(FW-1823) Remove this when iOS 14 support is dropped.
|
|
1279
1317
|
// Due to a Safari 14 issue we need to destroy
|
|
1280
1318
|
// the scroll listener before we update state
|
|
@@ -1296,7 +1334,7 @@ const Datetime = class {
|
|
|
1296
1334
|
}
|
|
1297
1335
|
const { workingParts } = this;
|
|
1298
1336
|
const activePart = this.getActivePartsWithFallback();
|
|
1299
|
-
return (index.h("ion-picker-column-internal", { class: "month-column", color: this.color, items: months, value: workingParts.month, onIonChange: (ev) => {
|
|
1337
|
+
return (index$1.h("ion-picker-column-internal", { class: "month-column", color: this.color, items: months, value: workingParts.month, onIonChange: (ev) => {
|
|
1300
1338
|
// TODO(FW-1823) Remove this when iOS 14 support is dropped.
|
|
1301
1339
|
// Due to a Safari 14 issue we need to destroy
|
|
1302
1340
|
// the scroll listener before we update state
|
|
@@ -1318,7 +1356,7 @@ const Datetime = class {
|
|
|
1318
1356
|
}
|
|
1319
1357
|
const { workingParts } = this;
|
|
1320
1358
|
const activePart = this.getActivePartsWithFallback();
|
|
1321
|
-
return (index.h("ion-picker-column-internal", { class: "year-column", color: this.color, items: years, value: workingParts.year, onIonChange: (ev) => {
|
|
1359
|
+
return (index$1.h("ion-picker-column-internal", { class: "year-column", color: this.color, items: years, value: workingParts.year, onIonChange: (ev) => {
|
|
1322
1360
|
// TODO(FW-1823) Remove this when iOS 14 support is dropped.
|
|
1323
1361
|
// Due to a Safari 14 issue we need to destroy
|
|
1324
1362
|
// the scroll listener before we update state
|
|
@@ -1361,7 +1399,7 @@ const Datetime = class {
|
|
|
1361
1399
|
if (hoursData.length === 0)
|
|
1362
1400
|
return [];
|
|
1363
1401
|
const activePart = this.getActivePartsWithFallback();
|
|
1364
|
-
return (index.h("ion-picker-column-internal", { color: this.color, value: activePart.hour, items: hoursData, numericInput: true, onIonChange: (ev) => {
|
|
1402
|
+
return (index$1.h("ion-picker-column-internal", { color: this.color, value: activePart.hour, items: hoursData, numericInput: true, onIonChange: (ev) => {
|
|
1365
1403
|
this.setWorkingParts(Object.assign(Object.assign({}, workingParts), { hour: ev.detail.value }));
|
|
1366
1404
|
this.setActiveParts(Object.assign(Object.assign({}, activePart), { hour: ev.detail.value }));
|
|
1367
1405
|
ev.stopPropagation();
|
|
@@ -1372,7 +1410,7 @@ const Datetime = class {
|
|
|
1372
1410
|
if (minutesData.length === 0)
|
|
1373
1411
|
return [];
|
|
1374
1412
|
const activePart = this.getActivePartsWithFallback();
|
|
1375
|
-
return (index.h("ion-picker-column-internal", { color: this.color, value: activePart.minute, items: minutesData, numericInput: true, onIonChange: (ev) => {
|
|
1413
|
+
return (index$1.h("ion-picker-column-internal", { color: this.color, value: activePart.minute, items: minutesData, numericInput: true, onIonChange: (ev) => {
|
|
1376
1414
|
this.setWorkingParts(Object.assign(Object.assign({}, workingParts), { minute: ev.detail.value }));
|
|
1377
1415
|
this.setActiveParts(Object.assign(Object.assign({}, activePart), { minute: ev.detail.value }));
|
|
1378
1416
|
ev.stopPropagation();
|
|
@@ -1385,7 +1423,7 @@ const Datetime = class {
|
|
|
1385
1423
|
}
|
|
1386
1424
|
const activePart = this.getActivePartsWithFallback();
|
|
1387
1425
|
const isDayPeriodRTL = data.isLocaleDayPeriodRTL(this.locale);
|
|
1388
|
-
return (index.h("ion-picker-column-internal", { style: isDayPeriodRTL ? { order: '-1' } : {}, color: this.color, value: activePart.ampm, items: dayPeriodData, onIonChange: (ev) => {
|
|
1426
|
+
return (index$1.h("ion-picker-column-internal", { style: isDayPeriodRTL ? { order: '-1' } : {}, color: this.color, value: activePart.ampm, items: dayPeriodData, onIonChange: (ev) => {
|
|
1389
1427
|
const hour = data.calculateHourFromAMPM(workingParts, ev.detail.value);
|
|
1390
1428
|
this.setWorkingParts(Object.assign(Object.assign({}, workingParts), { ampm: ev.detail.value, hour }));
|
|
1391
1429
|
this.setActiveParts(Object.assign(Object.assign({}, activePart), { ampm: ev.detail.value, hour }));
|
|
@@ -1396,7 +1434,7 @@ const Datetime = class {
|
|
|
1396
1434
|
const { locale } = this;
|
|
1397
1435
|
const showMonthFirst = data.isMonthFirstLocale(locale);
|
|
1398
1436
|
const columnOrder = showMonthFirst ? 'month-first' : 'year-first';
|
|
1399
|
-
return (index.h("div", { class: {
|
|
1437
|
+
return (index$1.h("div", { class: {
|
|
1400
1438
|
[`wheel-order-${columnOrder}`]: true,
|
|
1401
1439
|
} }, this.renderWheelPicker(forcePresentation)));
|
|
1402
1440
|
}
|
|
@@ -1410,8 +1448,8 @@ const Datetime = class {
|
|
|
1410
1448
|
const nextMonthDisabled = isNextMonthDisabled(this.workingParts, this.maxParts);
|
|
1411
1449
|
// don't use the inheritAttributes util because it removes dir from the host, and we still need that
|
|
1412
1450
|
const hostDir = this.el.getAttribute('dir') || undefined;
|
|
1413
|
-
return (index.h("div", { class: "calendar-header" }, index.h("div", { class: "calendar-action-buttons" }, index.h("div", { class: "calendar-month-year" }, index.h("ion-item", { button: true, detail: false, lines: "none", onClick: () => this.toggleMonthAndYearView() }, index.h("ion-label", null, data.getMonthAndYear(this.locale, this.workingParts), index.h("ion-icon", { "aria-hidden": "true", icon: this.showMonthAndYear ? expandedIcon : collapsedIcon, lazy: false, flipRtl: true })))), index.h("div", { class: "calendar-next-prev" }, index.h("ion-buttons", null, index.h("ion-button", { "aria-label": "previous month", disabled: prevMonthDisabled, onClick: () => this.prevMonth() }, index.h("ion-icon", { dir: hostDir, "aria-hidden": "true", slot: "icon-only", icon: index$2.chevronBack, lazy: false, flipRtl: true })), index.h("ion-button", { "aria-label": "next month", disabled: nextMonthDisabled, onClick: () => this.nextMonth() }, index.h("ion-icon", { dir: hostDir, "aria-hidden": "true", slot: "icon-only", icon: index$2.chevronForward, lazy: false, flipRtl: true }))))), index.h("div", { class: "calendar-days-of-week", "aria-hidden": "true" }, data.getDaysOfWeek(this.locale, mode, this.firstDayOfWeek % 7).map((d) => {
|
|
1414
|
-
return index.h("div", { class: "day-of-week" }, d);
|
|
1451
|
+
return (index$1.h("div", { class: "calendar-header" }, index$1.h("div", { class: "calendar-action-buttons" }, index$1.h("div", { class: "calendar-month-year" }, index$1.h("ion-item", { button: true, detail: false, lines: "none", onClick: () => this.toggleMonthAndYearView() }, index$1.h("ion-label", null, data.getMonthAndYear(this.locale, this.workingParts), index$1.h("ion-icon", { "aria-hidden": "true", icon: this.showMonthAndYear ? expandedIcon : collapsedIcon, lazy: false, flipRtl: true })))), index$1.h("div", { class: "calendar-next-prev" }, index$1.h("ion-buttons", null, index$1.h("ion-button", { "aria-label": "previous month", disabled: prevMonthDisabled, onClick: () => this.prevMonth() }, index$1.h("ion-icon", { dir: hostDir, "aria-hidden": "true", slot: "icon-only", icon: index$2.chevronBack, lazy: false, flipRtl: true })), index$1.h("ion-button", { "aria-label": "next month", disabled: nextMonthDisabled, onClick: () => this.nextMonth() }, index$1.h("ion-icon", { dir: hostDir, "aria-hidden": "true", slot: "icon-only", icon: index$2.chevronForward, lazy: false, flipRtl: true }))))), index$1.h("div", { class: "calendar-days-of-week", "aria-hidden": "true" }, data.getDaysOfWeek(this.locale, mode, this.firstDayOfWeek % 7).map((d) => {
|
|
1452
|
+
return index$1.h("div", { class: "day-of-week" }, d);
|
|
1415
1453
|
}))));
|
|
1416
1454
|
}
|
|
1417
1455
|
renderMonth(month, year) {
|
|
@@ -1434,16 +1472,17 @@ const Datetime = class {
|
|
|
1434
1472
|
// can free-scroll the calendar.
|
|
1435
1473
|
const isWorkingMonth = this.workingParts.month === month && this.workingParts.year === year;
|
|
1436
1474
|
const activePart = this.getActivePartsWithFallback();
|
|
1437
|
-
return (index.h("div", { "aria-hidden": !isWorkingMonth ? 'true' : null, class: {
|
|
1475
|
+
return (index$1.h("div", { "aria-hidden": !isWorkingMonth ? 'true' : null, class: {
|
|
1438
1476
|
'calendar-month': true,
|
|
1439
1477
|
// Prevents scroll snap swipe gestures for months outside of the min/max bounds
|
|
1440
1478
|
'calendar-month-disabled': !isWorkingMonth && swipeDisabled,
|
|
1441
|
-
} }, index.h("div", { class: "calendar-month-grid" }, data.getDaysOfMonth(month, year, this.firstDayOfWeek % 7).map((dateObject, index$2) => {
|
|
1479
|
+
} }, index$1.h("div", { class: "calendar-month-grid" }, data.getDaysOfMonth(month, year, this.firstDayOfWeek % 7).map((dateObject, index$2) => {
|
|
1442
1480
|
const { day, dayOfWeek } = dateObject;
|
|
1443
|
-
const { isDateEnabled, multiple } = this;
|
|
1481
|
+
const { el, highlightedDates, isDateEnabled, multiple } = this;
|
|
1444
1482
|
const referenceParts = { month, day, year };
|
|
1445
1483
|
const isCalendarPadding = day === null;
|
|
1446
1484
|
const { isActive, isToday, ariaLabel, ariaSelected, disabled, text } = getCalendarDayState(this.locale, referenceParts, this.activePartsClone, this.todayParts, this.minParts, this.maxParts, this.parsedDayValues);
|
|
1485
|
+
const dateIsoString = data.convertDataToISO(referenceParts);
|
|
1447
1486
|
let isCalDayDisabled = isCalMonthDisabled || disabled;
|
|
1448
1487
|
if (!isCalDayDisabled && isDateEnabled !== undefined) {
|
|
1449
1488
|
try {
|
|
@@ -1452,17 +1491,27 @@ const Datetime = class {
|
|
|
1452
1491
|
* to prevent exceptions in the user's function from
|
|
1453
1492
|
* interrupting the calendar rendering.
|
|
1454
1493
|
*/
|
|
1455
|
-
isCalDayDisabled = !isDateEnabled(
|
|
1494
|
+
isCalDayDisabled = !isDateEnabled(dateIsoString);
|
|
1456
1495
|
}
|
|
1457
1496
|
catch (e) {
|
|
1458
|
-
index
|
|
1497
|
+
index.printIonError('Exception thrown from provided `isDateEnabled` function. Please check your function and try again.', el, e);
|
|
1459
1498
|
}
|
|
1460
1499
|
}
|
|
1461
|
-
|
|
1500
|
+
let dateStyle = undefined;
|
|
1501
|
+
/**
|
|
1502
|
+
* Custom highlight styles should not override the style for selected dates,
|
|
1503
|
+
* nor apply to "filler days" at the start of the grid.
|
|
1504
|
+
*/
|
|
1505
|
+
if (highlightedDates !== undefined && !isActive && day !== null) {
|
|
1506
|
+
dateStyle = getHighlightStyles(highlightedDates, dateIsoString, el);
|
|
1507
|
+
}
|
|
1508
|
+
return (index$1.h("button", { tabindex: "-1", "data-day": day, "data-month": month, "data-year": year, "data-index": index$2, "data-day-of-week": dayOfWeek, disabled: isCalDayDisabled, class: {
|
|
1462
1509
|
'calendar-day-padding': isCalendarPadding,
|
|
1463
1510
|
'calendar-day': true,
|
|
1464
1511
|
'calendar-day-active': isActive,
|
|
1465
1512
|
'calendar-day-today': isToday,
|
|
1513
|
+
}, style: dateStyle && {
|
|
1514
|
+
color: dateStyle.textColor,
|
|
1466
1515
|
}, "aria-hidden": isCalendarPadding ? 'true' : null, "aria-selected": ariaSelected, "aria-label": ariaLabel, onClick: () => {
|
|
1467
1516
|
if (isCalendarPadding) {
|
|
1468
1517
|
return;
|
|
@@ -1483,30 +1532,32 @@ const Datetime = class {
|
|
|
1483
1532
|
day,
|
|
1484
1533
|
year }));
|
|
1485
1534
|
}
|
|
1486
|
-
} },
|
|
1535
|
+
} }, index$1.h("div", { class: "calendar-day-highlight", style: {
|
|
1536
|
+
backgroundColor: dateStyle === null || dateStyle === void 0 ? void 0 : dateStyle.backgroundColor,
|
|
1537
|
+
} }), text));
|
|
1487
1538
|
}))));
|
|
1488
1539
|
}
|
|
1489
1540
|
renderCalendarBody() {
|
|
1490
|
-
return (index.h("div", { class: "calendar-body ion-focusable", ref: (el) => (this.calendarBodyRef = el), tabindex: "0" }, data.generateMonths(this.workingParts).map(({ month, year }) => {
|
|
1541
|
+
return (index$1.h("div", { class: "calendar-body ion-focusable", ref: (el) => (this.calendarBodyRef = el), tabindex: "0" }, data.generateMonths(this.workingParts).map(({ month, year }) => {
|
|
1491
1542
|
return this.renderMonth(month, year);
|
|
1492
1543
|
})));
|
|
1493
1544
|
}
|
|
1494
1545
|
renderCalendar(mode) {
|
|
1495
|
-
return (index.h("div", { class: "datetime-calendar", key: "datetime-calendar" }, this.renderCalendarHeader(mode), this.renderCalendarBody()));
|
|
1546
|
+
return (index$1.h("div", { class: "datetime-calendar", key: "datetime-calendar" }, this.renderCalendarHeader(mode), this.renderCalendarBody()));
|
|
1496
1547
|
}
|
|
1497
1548
|
renderTimeLabel() {
|
|
1498
1549
|
const hasSlottedTimeLabel = this.el.querySelector('[slot="time-label"]') !== null;
|
|
1499
1550
|
if (!hasSlottedTimeLabel && !this.showDefaultTimeLabel) {
|
|
1500
1551
|
return;
|
|
1501
1552
|
}
|
|
1502
|
-
return index.h("slot", { name: "time-label" }, "Time");
|
|
1553
|
+
return index$1.h("slot", { name: "time-label" }, "Time");
|
|
1503
1554
|
}
|
|
1504
1555
|
renderTimeOverlay() {
|
|
1505
1556
|
const use24Hour = data.is24Hour(this.locale, this.hourCycle);
|
|
1506
1557
|
const activePart = this.getActivePartsWithFallback();
|
|
1507
1558
|
return [
|
|
1508
|
-
index.h("div", { class: "time-header" }, this.renderTimeLabel()),
|
|
1509
|
-
index.h("button", { class: {
|
|
1559
|
+
index$1.h("div", { class: "time-header" }, this.renderTimeLabel()),
|
|
1560
|
+
index$1.h("button", { class: {
|
|
1510
1561
|
'time-body': true,
|
|
1511
1562
|
'time-body-active': this.isTimePopoverOpen,
|
|
1512
1563
|
}, "aria-expanded": "false", "aria-haspopup": "true", onClick: async (ev) => {
|
|
@@ -1522,7 +1573,7 @@ const Datetime = class {
|
|
|
1522
1573
|
this.isTimePopoverOpen = false;
|
|
1523
1574
|
}
|
|
1524
1575
|
} }, data.getLocalizedTime(this.locale, activePart, use24Hour)),
|
|
1525
|
-
index.h("ion-popover", { alignment: "center", translucent: true, overlayIndex: 1, arrow: false, onWillPresent: (ev) => {
|
|
1576
|
+
index$1.h("ion-popover", { alignment: "center", translucent: true, overlayIndex: 1, arrow: false, onWillPresent: (ev) => {
|
|
1526
1577
|
/**
|
|
1527
1578
|
* Intersection Observers do not consistently fire between Blink and Webkit
|
|
1528
1579
|
* when toggling the visibility of the popover and trying to scroll the picker
|
|
@@ -1554,7 +1605,7 @@ const Datetime = class {
|
|
|
1554
1605
|
headerText = titleSelectedDatesFormatter(data.convertDataToISO(activeParts));
|
|
1555
1606
|
}
|
|
1556
1607
|
catch (e) {
|
|
1557
|
-
index
|
|
1608
|
+
index.printIonError('Exception in provided `titleSelectedDatesFormatter`: ', e);
|
|
1558
1609
|
}
|
|
1559
1610
|
}
|
|
1560
1611
|
}
|
|
@@ -1569,7 +1620,7 @@ const Datetime = class {
|
|
|
1569
1620
|
if (!hasSlottedTitle && !this.showDefaultTitle) {
|
|
1570
1621
|
return;
|
|
1571
1622
|
}
|
|
1572
|
-
return (index.h("div", { class: "datetime-header" }, index.h("div", { class: "datetime-title" }, index.h("slot", { name: "title" }, "Select Date")), showExpandedHeader && index.h("div", { class: "datetime-selected-date" }, this.getHeaderSelectedDateText())));
|
|
1623
|
+
return (index$1.h("div", { class: "datetime-header" }, index$1.h("div", { class: "datetime-title" }, index$1.h("slot", { name: "title" }, "Select Date")), showExpandedHeader && index$1.h("div", { class: "datetime-selected-date" }, this.getHeaderSelectedDateText())));
|
|
1573
1624
|
}
|
|
1574
1625
|
/**
|
|
1575
1626
|
* Render time picker inside of datetime.
|
|
@@ -1581,7 +1632,7 @@ const Datetime = class {
|
|
|
1581
1632
|
renderTime() {
|
|
1582
1633
|
const { presentation } = this;
|
|
1583
1634
|
const timeOnlyPresentation = presentation === 'time';
|
|
1584
|
-
return (index.h("div", { class: "datetime-time" }, timeOnlyPresentation ? this.renderWheelPicker() : this.renderTimeOverlay()));
|
|
1635
|
+
return (index$1.h("div", { class: "datetime-time" }, timeOnlyPresentation ? this.renderWheelPicker() : this.renderTimeOverlay()));
|
|
1585
1636
|
}
|
|
1586
1637
|
/**
|
|
1587
1638
|
* Renders the month/year picker that is
|
|
@@ -1592,7 +1643,7 @@ const Datetime = class {
|
|
|
1592
1643
|
* toggle in the calendar header.
|
|
1593
1644
|
*/
|
|
1594
1645
|
renderCalendarViewMonthYearPicker() {
|
|
1595
|
-
return index.h("div", { class: "datetime-year" }, this.renderWheelView('month-year'));
|
|
1646
|
+
return index$1.h("div", { class: "datetime-year" }, this.renderWheelView('month-year'));
|
|
1596
1647
|
}
|
|
1597
1648
|
/**
|
|
1598
1649
|
* Render entry point
|
|
@@ -1650,7 +1701,7 @@ const Datetime = class {
|
|
|
1650
1701
|
const hasWheelVariant = hasDatePresentation && preferWheel;
|
|
1651
1702
|
const hasGrid = hasDatePresentation && !preferWheel;
|
|
1652
1703
|
helpers.renderHiddenInput(true, el, name, data.formatValue(value), disabled);
|
|
1653
|
-
return (index.h(index.Host, { "aria-disabled": disabled ? 'true' : null, onFocus: this.onFocus, onBlur: this.onBlur, class: Object.assign({}, theme.createColorClasses(color, {
|
|
1704
|
+
return (index$1.h(index$1.Host, { "aria-disabled": disabled ? 'true' : null, onFocus: this.onFocus, onBlur: this.onBlur, class: Object.assign({}, theme.createColorClasses(color, {
|
|
1654
1705
|
[mode]: true,
|
|
1655
1706
|
['datetime-presented']: isPresented,
|
|
1656
1707
|
['datetime-readonly']: readonly,
|
|
@@ -1663,7 +1714,7 @@ const Datetime = class {
|
|
|
1663
1714
|
[`datetime-grid`]: hasGrid,
|
|
1664
1715
|
})) }, this.renderDatetime(mode)));
|
|
1665
1716
|
}
|
|
1666
|
-
get el() { return index.getElement(this); }
|
|
1717
|
+
get el() { return index$1.getElement(this); }
|
|
1667
1718
|
static get watchers() { return {
|
|
1668
1719
|
"disabled": ["disabledChanged"],
|
|
1669
1720
|
"min": ["minChanged"],
|
|
@@ -4,7 +4,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
4
4
|
|
|
5
5
|
const index = require('./index-db5db51f.js');
|
|
6
6
|
const ionicGlobal = require('./ionic-global-66c719bf.js');
|
|
7
|
-
const overlays = require('./overlays-
|
|
7
|
+
const overlays = require('./overlays-5d99746a.js');
|
|
8
8
|
const index$1 = require('./index-39630668.js');
|
|
9
9
|
const theme = require('./theme-fc63803b.js');
|
|
10
10
|
const animation = require('./animation-ca5a256a.js');
|
|
@@ -8,7 +8,7 @@ const cubicBezier = require('./cubic-bezier-0b702a31.js');
|
|
|
8
8
|
const gestureController = require('./gesture-controller-00a6b02f.js');
|
|
9
9
|
const helpers = require('./helpers-cb08f5ae.js');
|
|
10
10
|
const index$1 = require('./index-7cf535d7.js');
|
|
11
|
-
const overlays = require('./overlays-
|
|
11
|
+
const overlays = require('./overlays-5d99746a.js');
|
|
12
12
|
require('./hardware-back-button-25372ec7.js');
|
|
13
13
|
require('./animation-ca5a256a.js');
|
|
14
14
|
require('./index-57b9fa9e.js');
|
|
@@ -100,7 +100,7 @@ const Menu = class {
|
|
|
100
100
|
async connectedCallback() {
|
|
101
101
|
// TODO: connectedCallback is fired in CE build
|
|
102
102
|
// before WC is defined. This needs to be fixed in Stencil.
|
|
103
|
-
if (typeof customElements !== 'undefined') {
|
|
103
|
+
if (typeof customElements !== 'undefined' && customElements != null) {
|
|
104
104
|
await customElements.whenDefined('ion-menu');
|
|
105
105
|
}
|
|
106
106
|
if (this.type === undefined) {
|
|
@@ -433,6 +433,22 @@ const Menu = class {
|
|
|
433
433
|
if (this.backdropEl) {
|
|
434
434
|
this.backdropEl.classList.add(SHOW_BACKDROP);
|
|
435
435
|
}
|
|
436
|
+
// add css class and hide content behind menu from screen readers
|
|
437
|
+
if (this.contentEl) {
|
|
438
|
+
this.contentEl.classList.add(MENU_CONTENT_OPEN);
|
|
439
|
+
/**
|
|
440
|
+
* When the menu is open and overlaying the main
|
|
441
|
+
* content, the main content should not be announced
|
|
442
|
+
* by the screenreader as the menu is the main
|
|
443
|
+
* focus. This is useful with screenreaders that have
|
|
444
|
+
* "read from top" gestures that read the entire
|
|
445
|
+
* page from top to bottom when activated.
|
|
446
|
+
* This should be done before the animation starts
|
|
447
|
+
* so that users cannot accidentally scroll
|
|
448
|
+
* the content while dragging a menu open.
|
|
449
|
+
*/
|
|
450
|
+
this.contentEl.setAttribute('aria-hidden', 'true');
|
|
451
|
+
}
|
|
436
452
|
this.blocker.block();
|
|
437
453
|
this.isAnimating = true;
|
|
438
454
|
if (shouldOpen) {
|
|
@@ -455,19 +471,6 @@ const Menu = class {
|
|
|
455
471
|
this.blocker.unblock();
|
|
456
472
|
}
|
|
457
473
|
if (isOpen) {
|
|
458
|
-
// add css class and hide content behind menu from screen readers
|
|
459
|
-
if (this.contentEl) {
|
|
460
|
-
this.contentEl.classList.add(MENU_CONTENT_OPEN);
|
|
461
|
-
/**
|
|
462
|
-
* When the menu is open and overlaying the main
|
|
463
|
-
* content, the main content should not be announced
|
|
464
|
-
* by the screenreader as the menu is the main
|
|
465
|
-
* focus. This is useful with screenreaders that have
|
|
466
|
-
* "read from top" gestures that read the entire
|
|
467
|
-
* page from top to bottom when activated.
|
|
468
|
-
*/
|
|
469
|
-
this.contentEl.setAttribute('aria-hidden', 'true');
|
|
470
|
-
}
|
|
471
474
|
// emit open event
|
|
472
475
|
this.ionDidOpen.emit();
|
|
473
476
|
/**
|