@ionic/core 7.3.2 → 7.3.3-dev.11693533652.1969cc78
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/components/action-sheet.js +8 -16
- package/components/alert.js +8 -16
- package/components/framework-delegate.js +21 -2
- package/components/ion-loading.js +8 -16
- package/components/ion-modal.js +21 -29
- package/components/ion-picker.js +8 -16
- package/components/ion-router-outlet.js +1 -0
- package/components/ion-toast.js +8 -16
- package/components/label.js +2 -2
- package/components/lock-controller.js +38 -0
- package/components/popover.js +15 -29
- package/dist/cjs/{framework-delegate-e8174951.js → framework-delegate-c0873a6f.js} +21 -2
- package/dist/cjs/index.cjs.js +2 -2
- package/dist/cjs/ion-action-sheet.cjs.entry.js +10 -18
- package/dist/cjs/ion-alert.cjs.entry.js +10 -18
- package/dist/cjs/ion-app_8.cjs.entry.js +2 -1
- package/dist/cjs/ion-datetime_3.cjs.entry.js +10 -18
- package/dist/cjs/ion-item_8.cjs.entry.js +2 -2
- package/dist/cjs/ion-loading.cjs.entry.js +10 -18
- package/dist/cjs/ion-menu_3.cjs.entry.js +2 -2
- package/dist/cjs/ion-modal.cjs.entry.js +23 -31
- package/dist/cjs/ion-nav_2.cjs.entry.js +1 -1
- package/dist/cjs/ion-popover.cjs.entry.js +17 -31
- package/dist/cjs/ion-select_3.cjs.entry.js +2 -2
- package/dist/cjs/ion-tab_2.cjs.entry.js +1 -1
- package/dist/cjs/ion-toast.cjs.entry.js +10 -18
- package/dist/cjs/lock-controller-4ae2eb59.js +40 -0
- package/dist/cjs/{overlays-0ea06fcb.js → overlays-5c1706ed.js} +1 -1
- package/dist/collection/components/action-sheet/action-sheet.js +8 -16
- package/dist/collection/components/alert/alert.js +8 -16
- package/dist/collection/components/checkbox/test/color/checkbox.e2e.js +2 -2
- package/dist/collection/components/checkbox/test/item/checkbox.e2e.js +4 -4
- package/dist/collection/components/checkbox/test/label/checkbox.e2e.js +10 -10
- package/dist/collection/components/checkbox/test/legacy/basic/checkbox.e2e.js +1 -1
- package/dist/collection/components/checkbox/test/legacy/indeterminate/checkbox.e2e.js +1 -1
- package/dist/collection/components/checkbox/test/states/checkbox.e2e.js +4 -4
- package/dist/collection/components/datetime/test/custom/datetime.e2e.js +0 -7
- package/dist/collection/components/datetime/test/presentation/datetime.e2e.js +48 -17
- package/dist/collection/components/input/test/bottom-content/input.e2e.js +7 -7
- package/dist/collection/components/input/test/card/input.e2e.js +1 -1
- package/dist/collection/components/input/test/color/input.e2e.js +15 -15
- package/dist/collection/components/input/test/fill/input.e2e.js +10 -10
- package/dist/collection/components/input/test/highlight/input.e2e.js +9 -9
- package/dist/collection/components/input/test/item/input.e2e.js +2 -2
- package/dist/collection/components/input/test/label-placement/input.e2e.js +16 -16
- package/dist/collection/components/input/test/legacy/basic/input.e2e.js +10 -10
- package/dist/collection/components/input/test/states/input.e2e.js +2 -2
- package/dist/collection/components/label/label.ios.css +2 -4
- package/dist/collection/components/label/label.md.css +2 -4
- package/dist/collection/components/loading/loading.js +8 -16
- package/dist/collection/components/modal/modal.js +21 -29
- package/dist/collection/components/picker/picker.js +8 -16
- package/dist/collection/components/popover/popover.js +15 -29
- package/dist/collection/components/popover/test/async/popover.e2e.js +42 -0
- package/dist/collection/components/radio/test/color/radio.e2e.js +2 -2
- package/dist/collection/components/radio/test/item/radio.e2e.js +3 -3
- package/dist/collection/components/radio/test/label-placement/radio.e2e.js +9 -9
- package/dist/collection/components/radio/test/states/radio.e2e.js +4 -4
- package/dist/collection/components/range/test/color/range.e2e.js +1 -1
- package/dist/collection/components/range/test/custom/range.e2e.js +1 -1
- package/dist/collection/components/range/test/item/range.e2e.js +3 -3
- package/dist/collection/components/range/test/label/range.e2e.js +12 -12
- package/dist/collection/components/range/test/legacy/a11y/range.e2e.js +3 -3
- package/dist/collection/components/range/test/legacy/active-bar-start/range.e2e.js +1 -1
- package/dist/collection/components/range/test/legacy/basic/range.e2e.js +1 -1
- package/dist/collection/components/range/test/states/range.e2e.js +4 -4
- package/dist/collection/components/router-outlet/router-outlet.js +1 -0
- package/dist/collection/components/select/test/card/select.e2e.js +1 -1
- package/dist/collection/components/select/test/color/select.e2e.js +3 -3
- package/dist/collection/components/select/test/fill/select.e2e.js +10 -10
- package/dist/collection/components/select/test/highlight/select.e2e.js +3 -3
- package/dist/collection/components/select/test/item/select.e2e.js +2 -2
- package/dist/collection/components/select/test/label/select.e2e.js +20 -20
- package/dist/collection/components/select/test/states/select.e2e.js +4 -4
- package/dist/collection/components/textarea/test/bottom-content/textarea.e2e.js +6 -6
- package/dist/collection/components/textarea/test/card/textarea.e2e.js +1 -1
- package/dist/collection/components/textarea/test/color/textarea.e2e.js +15 -15
- package/dist/collection/components/textarea/test/fill/textarea.e2e.js +10 -10
- package/dist/collection/components/textarea/test/highlight/textarea.e2e.js +9 -9
- package/dist/collection/components/textarea/test/item/textarea.e2e.js +2 -2
- package/dist/collection/components/textarea/test/label-placement/textarea.e2e.js +21 -21
- package/dist/collection/components/textarea/test/legacy/autogrow/textarea.e2e.js +5 -5
- package/dist/collection/components/textarea/test/states/textarea.e2e.js +2 -2
- package/dist/collection/components/toast/toast.js +8 -16
- package/dist/collection/components/toggle/test/color/toggle.e2e.js +2 -2
- package/dist/collection/components/toggle/test/item/toggle.e2e.js +4 -4
- package/dist/collection/components/toggle/test/label/toggle.e2e.js +9 -9
- package/dist/collection/components/toggle/test/legacy/enable-on-off-labels/toggle.e2e.js +2 -2
- package/dist/collection/components/toggle/test/legacy/sizes/toggle.e2e.js +1 -1
- package/dist/collection/components/toggle/test/states/toggle.e2e.js +3 -3
- package/dist/collection/utils/framework-delegate.js +21 -2
- package/dist/collection/utils/lock-controller.js +36 -0
- package/dist/docs.json +1 -1
- package/dist/esm/{framework-delegate-2b76c681.js → framework-delegate-aa433dea.js} +21 -2
- package/dist/esm/index.js +2 -2
- package/dist/esm/ion-action-sheet.entry.js +10 -18
- package/dist/esm/ion-alert.entry.js +10 -18
- package/dist/esm/ion-app_8.entry.js +2 -1
- package/dist/esm/ion-datetime_3.entry.js +10 -18
- package/dist/esm/ion-item_8.entry.js +2 -2
- package/dist/esm/ion-loading.entry.js +10 -18
- package/dist/esm/ion-menu_3.entry.js +2 -2
- package/dist/esm/ion-modal.entry.js +23 -31
- package/dist/esm/ion-nav_2.entry.js +1 -1
- package/dist/esm/ion-popover.entry.js +17 -31
- package/dist/esm/ion-select_3.entry.js +2 -2
- package/dist/esm/ion-tab_2.entry.js +1 -1
- package/dist/esm/ion-toast.entry.js +10 -18
- package/dist/esm/lock-controller-e8c6c051.js +38 -0
- package/dist/esm/{overlays-c3387ec0.js → overlays-e1dadfe6.js} +1 -1
- package/dist/esm-es5/framework-delegate-aa433dea.js +4 -0
- package/dist/esm-es5/index.js +1 -1
- package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
- package/dist/esm-es5/ion-alert.entry.js +1 -1
- package/dist/esm-es5/ion-app_8.entry.js +1 -1
- package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
- package/dist/esm-es5/ion-item_8.entry.js +1 -1
- package/dist/esm-es5/ion-loading.entry.js +1 -1
- package/dist/esm-es5/ion-menu_3.entry.js +1 -1
- package/dist/esm-es5/ion-modal.entry.js +1 -1
- package/dist/esm-es5/ion-nav_2.entry.js +1 -1
- package/dist/esm-es5/ion-popover.entry.js +1 -1
- package/dist/esm-es5/ion-select_3.entry.js +1 -1
- package/dist/esm-es5/ion-tab_2.entry.js +1 -1
- package/dist/esm-es5/ion-toast.entry.js +1 -1
- package/dist/esm-es5/lock-controller-e8c6c051.js +4 -0
- package/dist/esm-es5/{overlays-c3387ec0.js → overlays-e1dadfe6.js} +1 -1
- package/dist/ionic/index.esm.js +1 -1
- package/dist/ionic/ionic.esm.js +1 -1
- package/dist/ionic/{p-958bde76.entry.js → p-091cd81e.entry.js} +1 -1
- package/dist/ionic/{p-d1356034.system.entry.js → p-0b68c41d.system.entry.js} +1 -1
- package/dist/ionic/p-0cc2bf5a.system.entry.js +4 -0
- package/dist/ionic/p-208f640c.entry.js +4 -0
- package/dist/ionic/p-2539e967.system.entry.js +4 -0
- package/dist/ionic/{p-74bd26b8.system.entry.js → p-28f5715a.system.entry.js} +1 -1
- package/dist/ionic/{p-b9312889.entry.js → p-341d5877.entry.js} +1 -1
- package/dist/ionic/p-38dd9aec.entry.js +4 -0
- package/dist/ionic/p-3ff018da.entry.js +4 -0
- package/dist/ionic/{p-8074bdd7.system.entry.js → p-45ee211b.system.entry.js} +1 -1
- package/dist/ionic/p-5009cb46.entry.js +4 -0
- package/dist/ionic/p-53b2a46f.js +4 -0
- package/dist/ionic/{p-5ef91692.js → p-582dc7c1.js} +1 -1
- package/dist/ionic/{p-79e30193.system.entry.js → p-5ba27716.system.entry.js} +1 -1
- package/dist/ionic/{p-c0d1e5a1.entry.js → p-5c17f888.entry.js} +1 -1
- package/dist/ionic/{p-8d9475b5.system.js → p-613d4042.system.js} +1 -1
- package/dist/ionic/p-647d15d4.system.entry.js +4 -0
- package/dist/ionic/p-653f2fc6.entry.js +4 -0
- package/dist/ionic/p-721933ff.system.js +1 -1
- package/dist/ionic/p-772f6c84.system.js +4 -0
- package/dist/ionic/p-87383d00.system.entry.js +4 -0
- package/dist/ionic/{p-db46fc66.system.js → p-8843b046.system.js} +1 -1
- package/dist/ionic/p-93e47822.entry.js +4 -0
- package/dist/ionic/{p-229df0d8.entry.js → p-98ebc376.entry.js} +1 -1
- package/dist/ionic/p-af0bc751.system.entry.js +4 -0
- package/dist/ionic/p-b0e9e0b8.system.entry.js +4 -0
- package/dist/ionic/p-b287ab05.js +4 -0
- package/dist/ionic/{p-81b46714.system.js → p-b32742f3.system.js} +1 -1
- package/dist/ionic/p-b3394798.system.entry.js +4 -0
- package/dist/ionic/{p-20087c90.entry.js → p-c759a704.entry.js} +1 -1
- package/dist/ionic/{p-6b9bf14c.system.entry.js → p-d1d3b740.system.entry.js} +1 -1
- package/dist/ionic/{p-8fa43732.system.entry.js → p-d693e765.system.entry.js} +1 -1
- package/dist/ionic/{p-5c96dc4e.entry.js → p-f7faa32d.entry.js} +1 -1
- package/dist/ionic/p-fabb7294.entry.js +4 -0
- package/dist/types/components/action-sheet/action-sheet.d.ts +1 -1
- package/dist/types/components/alert/alert.d.ts +1 -1
- package/dist/types/components/loading/loading.d.ts +1 -1
- package/dist/types/components/modal/modal.d.ts +1 -1
- package/dist/types/components/picker/picker.d.ts +1 -1
- package/dist/types/components/popover/popover.d.ts +1 -1
- package/dist/types/components/toast/toast.d.ts +1 -1
- package/dist/types/utils/lock-controller.d.ts +10 -0
- package/hydrate/index.js +127 -142
- package/package.json +1 -1
- package/dist/esm-es5/framework-delegate-2b76c681.js +0 -4
- package/dist/ionic/p-06f1f560.system.entry.js +0 -4
- package/dist/ionic/p-2936ec7f.system.entry.js +0 -4
- package/dist/ionic/p-29b3e70a.entry.js +0 -4
- package/dist/ionic/p-2bc49e5d.system.entry.js +0 -4
- package/dist/ionic/p-2da3e015.system.entry.js +0 -4
- package/dist/ionic/p-423d5a4d.entry.js +0 -4
- package/dist/ionic/p-564aaba3.entry.js +0 -4
- package/dist/ionic/p-61769039.entry.js +0 -4
- package/dist/ionic/p-74723f41.entry.js +0 -4
- package/dist/ionic/p-9b3c3564.entry.js +0 -4
- package/dist/ionic/p-b34c1ae1.js +0 -4
- package/dist/ionic/p-ccea9adc.system.entry.js +0 -4
- package/dist/ionic/p-d5db0834.system.entry.js +0 -4
- package/dist/ionic/p-d8538837.entry.js +0 -4
- package/dist/ionic/p-dd0b6889.system.entry.js +0 -4
package/hydrate/index.js
CHANGED
|
@@ -7968,6 +7968,40 @@ const createButtonActiveGesture = (el, isButton) => {
|
|
|
7968
7968
|
});
|
|
7969
7969
|
};
|
|
7970
7970
|
|
|
7971
|
+
/**
|
|
7972
|
+
* Creates a lock controller.
|
|
7973
|
+
*
|
|
7974
|
+
* Claiming a lock means that nothing else can acquire the lock until it is released.
|
|
7975
|
+
* This can momentarily prevent execution of code that needs to wait for the earlier code to finish.
|
|
7976
|
+
* For example, this can be used to prevent multiple transitions from occurring at the same time.
|
|
7977
|
+
*/
|
|
7978
|
+
const createLockController = () => {
|
|
7979
|
+
let waitPromise;
|
|
7980
|
+
/**
|
|
7981
|
+
* When lock() is called, the lock is claimed.
|
|
7982
|
+
* Once a lock has been claimed, it cannot be claimed again until it is released.
|
|
7983
|
+
* When this function gets resolved, the lock is released, allowing it to be claimed again.
|
|
7984
|
+
*
|
|
7985
|
+
* @example ```tsx
|
|
7986
|
+
* const unlock = await this.lockController.lock();
|
|
7987
|
+
* // do other stuff
|
|
7988
|
+
* unlock();
|
|
7989
|
+
* ```
|
|
7990
|
+
*/
|
|
7991
|
+
const lock = async () => {
|
|
7992
|
+
const p = waitPromise;
|
|
7993
|
+
let resolve;
|
|
7994
|
+
waitPromise = new Promise((r) => (resolve = r));
|
|
7995
|
+
if (p !== undefined) {
|
|
7996
|
+
await p;
|
|
7997
|
+
}
|
|
7998
|
+
return resolve;
|
|
7999
|
+
};
|
|
8000
|
+
return {
|
|
8001
|
+
lock,
|
|
8002
|
+
};
|
|
8003
|
+
};
|
|
8004
|
+
|
|
7971
8005
|
// TODO(FW-2832): types
|
|
7972
8006
|
const attachComponent = async (delegate, container, component, cssClasses, componentProps, inline) => {
|
|
7973
8007
|
var _a;
|
|
@@ -8004,6 +8038,7 @@ const CoreDelegate = () => {
|
|
|
8004
8038
|
const attachViewToDom = async (parentElement, userComponent, userComponentProps = {}, cssClasses = []) => {
|
|
8005
8039
|
var _a, _b;
|
|
8006
8040
|
BaseComponent = parentElement;
|
|
8041
|
+
let ChildComponent;
|
|
8007
8042
|
/**
|
|
8008
8043
|
* If passing in a component via the `component` props
|
|
8009
8044
|
* we need to append it inside of our overlay component.
|
|
@@ -8030,6 +8065,7 @@ const CoreDelegate = () => {
|
|
|
8030
8065
|
* inside of the overlay component.
|
|
8031
8066
|
*/
|
|
8032
8067
|
BaseComponent.appendChild(el);
|
|
8068
|
+
ChildComponent = el;
|
|
8033
8069
|
await new Promise((resolve) => componentOnReady(el, resolve));
|
|
8034
8070
|
}
|
|
8035
8071
|
else if (BaseComponent.children.length > 0 &&
|
|
@@ -8038,7 +8074,7 @@ const CoreDelegate = () => {
|
|
|
8038
8074
|
* The delegate host wrapper el is only needed for modals and popovers
|
|
8039
8075
|
* because they allow the dev to provide custom content to the overlay.
|
|
8040
8076
|
*/
|
|
8041
|
-
const root = BaseComponent.children[0];
|
|
8077
|
+
const root = (ChildComponent = BaseComponent.children[0]);
|
|
8042
8078
|
if (!root.classList.contains('ion-delegate-host')) {
|
|
8043
8079
|
/**
|
|
8044
8080
|
* If the root element is not a delegate host, it means
|
|
@@ -8053,6 +8089,12 @@ const CoreDelegate = () => {
|
|
|
8053
8089
|
el.append(...BaseComponent.children);
|
|
8054
8090
|
// Append the new parent element to the original parent element.
|
|
8055
8091
|
BaseComponent.appendChild(el);
|
|
8092
|
+
/**
|
|
8093
|
+
* Update the ChildComponent to be the
|
|
8094
|
+
* newly created div in the event that one
|
|
8095
|
+
* does not already exist.
|
|
8096
|
+
*/
|
|
8097
|
+
ChildComponent = el;
|
|
8056
8098
|
}
|
|
8057
8099
|
}
|
|
8058
8100
|
/**
|
|
@@ -8068,7 +8110,18 @@ const CoreDelegate = () => {
|
|
|
8068
8110
|
Reference = document.createComment('ionic teleport');
|
|
8069
8111
|
BaseComponent.parentNode.insertBefore(Reference, BaseComponent);
|
|
8070
8112
|
app.appendChild(BaseComponent);
|
|
8071
|
-
|
|
8113
|
+
/**
|
|
8114
|
+
* We return the child component rather than the overlay
|
|
8115
|
+
* reference itself since modal and popover will
|
|
8116
|
+
* use this to wait for any Ionic components in the child view
|
|
8117
|
+
* to be ready (i.e. componentOnReady) when using the
|
|
8118
|
+
* lazy loaded component bundle.
|
|
8119
|
+
*
|
|
8120
|
+
* However, we fall back to returning BaseComponent
|
|
8121
|
+
* in the event that a modal or popover is presented
|
|
8122
|
+
* with no child content.
|
|
8123
|
+
*/
|
|
8124
|
+
return ChildComponent !== null && ChildComponent !== void 0 ? ChildComponent : BaseComponent;
|
|
8072
8125
|
};
|
|
8073
8126
|
const removeViewFromDom = () => {
|
|
8074
8127
|
/**
|
|
@@ -9873,6 +9926,7 @@ class ActionSheet {
|
|
|
9873
9926
|
this.willDismissShorthand = createEvent(this, "willDismiss", 7);
|
|
9874
9927
|
this.didDismissShorthand = createEvent(this, "didDismiss", 7);
|
|
9875
9928
|
this.delegateController = createDelegateController(this);
|
|
9929
|
+
this.lockController = createLockController();
|
|
9876
9930
|
this.triggerController = createTriggerController();
|
|
9877
9931
|
this.presented = false;
|
|
9878
9932
|
this.onBackdropTap = () => {
|
|
@@ -9920,21 +9974,10 @@ class ActionSheet {
|
|
|
9920
9974
|
* Present the action sheet overlay after it has been created.
|
|
9921
9975
|
*/
|
|
9922
9976
|
async present() {
|
|
9923
|
-
|
|
9924
|
-
* When using an inline action sheet
|
|
9925
|
-
* and dismissing a action sheet it is possible to
|
|
9926
|
-
* quickly present the action sheet while it is
|
|
9927
|
-
* dismissing. We need to await any current
|
|
9928
|
-
* transition to allow the dismiss to finish
|
|
9929
|
-
* before presenting again.
|
|
9930
|
-
*/
|
|
9931
|
-
if (this.currentTransition !== undefined) {
|
|
9932
|
-
await this.currentTransition;
|
|
9933
|
-
}
|
|
9977
|
+
const unlock = await this.lockController.lock();
|
|
9934
9978
|
await this.delegateController.attachViewToDom();
|
|
9935
|
-
|
|
9936
|
-
|
|
9937
|
-
this.currentTransition = undefined;
|
|
9979
|
+
await present(this, 'actionSheetEnter', iosEnterAnimation$6, mdEnterAnimation$5);
|
|
9980
|
+
unlock();
|
|
9938
9981
|
}
|
|
9939
9982
|
/**
|
|
9940
9983
|
* Dismiss the action sheet overlay after it has been presented.
|
|
@@ -9946,11 +9989,12 @@ class ActionSheet {
|
|
|
9946
9989
|
* Some examples include: ``"cancel"`, `"destructive"`, "selected"`, and `"backdrop"`.
|
|
9947
9990
|
*/
|
|
9948
9991
|
async dismiss(data, role) {
|
|
9949
|
-
|
|
9950
|
-
const dismissed = await this
|
|
9992
|
+
const unlock = await this.lockController.lock();
|
|
9993
|
+
const dismissed = await dismiss(this, data, role, 'actionSheetLeave', iosLeaveAnimation$6, mdLeaveAnimation$5);
|
|
9951
9994
|
if (dismissed) {
|
|
9952
9995
|
this.delegateController.removeViewFromDom();
|
|
9953
9996
|
}
|
|
9997
|
+
unlock();
|
|
9954
9998
|
return dismissed;
|
|
9955
9999
|
}
|
|
9956
10000
|
/**
|
|
@@ -10360,6 +10404,7 @@ class Alert {
|
|
|
10360
10404
|
this.willDismissShorthand = createEvent(this, "willDismiss", 7);
|
|
10361
10405
|
this.didDismissShorthand = createEvent(this, "didDismiss", 7);
|
|
10362
10406
|
this.delegateController = createDelegateController(this);
|
|
10407
|
+
this.lockController = createLockController();
|
|
10363
10408
|
this.triggerController = createTriggerController();
|
|
10364
10409
|
this.customHTMLEnabled = config.get('innerHTMLTemplatesEnabled', ENABLE_HTML_CONTENT_DEFAULT);
|
|
10365
10410
|
this.processedInputs = [];
|
|
@@ -10526,21 +10571,10 @@ class Alert {
|
|
|
10526
10571
|
* Present the alert overlay after it has been created.
|
|
10527
10572
|
*/
|
|
10528
10573
|
async present() {
|
|
10529
|
-
|
|
10530
|
-
* When using an inline alert
|
|
10531
|
-
* and dismissing an alert it is possible to
|
|
10532
|
-
* quickly present the alert while it is
|
|
10533
|
-
* dismissing. We need to await any current
|
|
10534
|
-
* transition to allow the dismiss to finish
|
|
10535
|
-
* before presenting again.
|
|
10536
|
-
*/
|
|
10537
|
-
if (this.currentTransition !== undefined) {
|
|
10538
|
-
await this.currentTransition;
|
|
10539
|
-
}
|
|
10574
|
+
const unlock = await this.lockController.lock();
|
|
10540
10575
|
await this.delegateController.attachViewToDom();
|
|
10541
|
-
|
|
10542
|
-
|
|
10543
|
-
this.currentTransition = undefined;
|
|
10576
|
+
await present(this, 'alertEnter', iosEnterAnimation$5, mdEnterAnimation$4);
|
|
10577
|
+
unlock();
|
|
10544
10578
|
}
|
|
10545
10579
|
/**
|
|
10546
10580
|
* Dismiss the alert overlay after it has been presented.
|
|
@@ -10552,11 +10586,12 @@ class Alert {
|
|
|
10552
10586
|
* Some examples include: ``"cancel"`, `"destructive"`, "selected"`, and `"backdrop"`.
|
|
10553
10587
|
*/
|
|
10554
10588
|
async dismiss(data, role) {
|
|
10555
|
-
|
|
10556
|
-
const dismissed = await this
|
|
10589
|
+
const unlock = await this.lockController.lock();
|
|
10590
|
+
const dismissed = await dismiss(this, data, role, 'alertLeave', iosLeaveAnimation$5, mdLeaveAnimation$4);
|
|
10557
10591
|
if (dismissed) {
|
|
10558
10592
|
this.delegateController.removeViewFromDom();
|
|
10559
10593
|
}
|
|
10594
|
+
unlock();
|
|
10560
10595
|
return dismissed;
|
|
10561
10596
|
}
|
|
10562
10597
|
/**
|
|
@@ -19502,9 +19537,9 @@ const swipeShouldReset = (isResetDirection, isMovingFast, isOnResetZone) => {
|
|
|
19502
19537
|
return (!isMovingFast && isOnResetZone) || (isResetDirection && isMovingFast);
|
|
19503
19538
|
};
|
|
19504
19539
|
|
|
19505
|
-
const labelIosCss = ".item.sc-ion-label-ios-h,.item .sc-ion-label-ios-h{--color:initial;display:block;color:var(--color);font-family:var(--ion-font-family, inherit);font-size:inherit;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;-webkit-box-sizing:border-box;box-sizing:border-box}.ion-color.sc-ion-label-ios-h{color:var(--ion-color-base)}.ion-text-wrap.sc-ion-label-ios-h
|
|
19540
|
+
const labelIosCss = ".item.sc-ion-label-ios-h,.item .sc-ion-label-ios-h{--color:initial;display:block;color:var(--color);font-family:var(--ion-font-family, inherit);font-size:inherit;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;-webkit-box-sizing:border-box;box-sizing:border-box}.ion-color.sc-ion-label-ios-h{color:var(--ion-color-base)}.ion-text-wrap.sc-ion-label-ios-h{white-space:normal}.item-interactive-disabled.sc-ion-label-ios-h:not(.item-multiple-inputs),.item-interactive-disabled:not(.item-multiple-inputs) .sc-ion-label-ios-h{cursor:default;opacity:0.3;pointer-events:none}.item-input.sc-ion-label-ios-h,.item-input .sc-ion-label-ios-h{-ms-flex:initial;flex:initial;max-width:200px;pointer-events:none}.item-textarea.sc-ion-label-ios-h,.item-textarea .sc-ion-label-ios-h{-ms-flex-item-align:baseline;align-self:baseline}.label-fixed.sc-ion-label-ios-h{-ms-flex:0 0 100px;flex:0 0 100px;width:100px;min-width:100px;max-width:200px}.label-stacked.sc-ion-label-ios-h,.label-floating.sc-ion-label-ios-h{margin-bottom:0;-ms-flex-item-align:stretch;align-self:stretch;width:auto;max-width:100%}.label-no-animate.label-floating.sc-ion-label-ios-h{-webkit-transition:none;transition:none}.sc-ion-label-ios-s h1,.sc-ion-label-ios-s h2,.sc-ion-label-ios-s h3,.sc-ion-label-ios-s h4,.sc-ion-label-ios-s h5,.sc-ion-label-ios-s h6{text-overflow:inherit;overflow:inherit}.ion-text-wrap.sc-ion-label-ios-h{font-size:14px;line-height:1.5}.label-stacked.sc-ion-label-ios-h{margin-bottom:4px;font-size:14px}.label-floating.sc-ion-label-ios-h{margin-bottom:0;-webkit-transform:translate(0, 29px);transform:translate(0, 29px);-webkit-transform-origin:left top;transform-origin:left top;-webkit-transition:-webkit-transform 150ms ease-in-out;transition:-webkit-transform 150ms ease-in-out;transition:transform 150ms ease-in-out;transition:transform 150ms ease-in-out, -webkit-transform 150ms ease-in-out}[dir=rtl].sc-ion-label-ios-h -no-combinator.label-floating.sc-ion-label-ios-h,[dir=rtl] .sc-ion-label-ios-h -no-combinator.label-floating.sc-ion-label-ios-h,[dir=rtl].label-floating.sc-ion-label-ios-h,[dir=rtl] .label-floating.sc-ion-label-ios-h{-webkit-transform-origin:right top;transform-origin:right top}@supports selector(:dir(rtl)){.label-floating.sc-ion-label-ios-h:dir(rtl){-webkit-transform-origin:right top;transform-origin:right top}}.item-textarea.label-floating.sc-ion-label-ios-h,.item-textarea .label-floating.sc-ion-label-ios-h{-webkit-transform:translate(0, 28px);transform:translate(0, 28px)}.item-has-focus.label-floating.sc-ion-label-ios-h,.item-has-focus .label-floating.sc-ion-label-ios-h,.item-has-placeholder.sc-ion-label-ios-h:not(.item-input).label-floating,.item-has-placeholder:not(.item-input) .label-floating.sc-ion-label-ios-h,.item-has-value.label-floating.sc-ion-label-ios-h,.item-has-value .label-floating.sc-ion-label-ios-h{-webkit-transform:scale(0.82);transform:scale(0.82)}.sc-ion-label-ios-s h1{margin-left:0;margin-right:0;margin-top:3px;margin-bottom:2px;font-size:22px;font-weight:normal}.sc-ion-label-ios-s h2{margin-left:0;margin-right:0;margin-top:0;margin-bottom:2px;font-size:17px;font-weight:normal}.sc-ion-label-ios-s h3,.sc-ion-label-ios-s h4,.sc-ion-label-ios-s h5,.sc-ion-label-ios-s h6{margin-left:0;margin-right:0;margin-top:0;margin-bottom:3px;font-size:14px;font-weight:normal;line-height:normal}.sc-ion-label-ios-s p{margin-left:0;margin-right:0;margin-top:0;margin-bottom:2px;font-size:14px;line-height:normal;text-overflow:inherit;overflow:inherit}.sc-ion-label-ios-s>p{color:rgba(var(--ion-text-color-rgb, 0, 0, 0), 0.4)}.sc-ion-label-ios-h.in-item-color.sc-ion-label-ios-s>p{color:inherit}.sc-ion-label-ios-s h2:last-child,.sc-ion-label-ios-s h3:last-child,.sc-ion-label-ios-s h4:last-child,.sc-ion-label-ios-s h5:last-child,.sc-ion-label-ios-s h6:last-child,.sc-ion-label-ios-s p:last-child{margin-bottom:0}";
|
|
19506
19541
|
|
|
19507
|
-
const labelMdCss = ".item.sc-ion-label-md-h,.item .sc-ion-label-md-h{--color:initial;display:block;color:var(--color);font-family:var(--ion-font-family, inherit);font-size:inherit;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;-webkit-box-sizing:border-box;box-sizing:border-box}.ion-color.sc-ion-label-md-h{color:var(--ion-color-base)}.ion-text-wrap.sc-ion-label-md-h,[text-wrap].sc-ion-label-md-h{white-space:normal}.item-interactive-disabled.sc-ion-label-md-h:not(.item-multiple-inputs),.item-interactive-disabled:not(.item-multiple-inputs) .sc-ion-label-md-h{cursor:default;opacity:0.3;pointer-events:none}.item-input.sc-ion-label-md-h,.item-input .sc-ion-label-md-h{-ms-flex:initial;flex:initial;max-width:200px;pointer-events:none}.item-textarea.sc-ion-label-md-h,.item-textarea .sc-ion-label-md-h{-ms-flex-item-align:baseline;align-self:baseline}.label-fixed.sc-ion-label-md-h{-ms-flex:0 0 100px;flex:0 0 100px;width:100px;min-width:100px;max-width:200px}.label-stacked.sc-ion-label-md-h,.label-floating.sc-ion-label-md-h{margin-bottom:0;-ms-flex-item-align:stretch;align-self:stretch;width:auto;max-width:100%}.label-no-animate.label-floating.sc-ion-label-md-h{-webkit-transition:none;transition:none}.sc-ion-label-md-s h1,.sc-ion-label-md-s h2,.sc-ion-label-md-s h3,.sc-ion-label-md-s h4,.sc-ion-label-md-s h5,.sc-ion-label-md-s h6{text-overflow:inherit;overflow:inherit}.ion-text-wrap.sc-ion-label-md-h,[text-wrap].sc-ion-label-md-h{line-height:1.5}.label-stacked.sc-ion-label-md-h,.label-floating.sc-ion-label-md-h{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;-webkit-transform-origin:top left;transform-origin:top left}.label-stacked.label-rtl.sc-ion-label-md-h,.label-floating.label-rtl.sc-ion-label-md-h{-webkit-transform-origin:top right;transform-origin:top right}.label-stacked.sc-ion-label-md-h{-webkit-transform:translateY(50%) scale(0.75);transform:translateY(50%) scale(0.75);-webkit-transition:color 150ms cubic-bezier(0.4, 0, 0.2, 1);transition:color 150ms cubic-bezier(0.4, 0, 0.2, 1)}.label-floating.sc-ion-label-md-h{-webkit-transform:translateY(96%);transform:translateY(96%);-webkit-transition:color 150ms cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 150ms cubic-bezier(0.4, 0, 0.2, 1);transition:color 150ms cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 150ms cubic-bezier(0.4, 0, 0.2, 1);transition:color 150ms cubic-bezier(0.4, 0, 0.2, 1), transform 150ms cubic-bezier(0.4, 0, 0.2, 1);transition:color 150ms cubic-bezier(0.4, 0, 0.2, 1), transform 150ms cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 150ms cubic-bezier(0.4, 0, 0.2, 1)}.ion-focused.label-floating.sc-ion-label-md-h,.ion-focused .label-floating.sc-ion-label-md-h,.item-has-focus.label-floating.sc-ion-label-md-h,.item-has-focus .label-floating.sc-ion-label-md-h,.item-has-placeholder.sc-ion-label-md-h:not(.item-input).label-floating,.item-has-placeholder:not(.item-input) .label-floating.sc-ion-label-md-h,.item-has-value.label-floating.sc-ion-label-md-h,.item-has-value .label-floating.sc-ion-label-md-h{-webkit-transform:translateY(50%) scale(0.75);transform:translateY(50%) scale(0.75)}.item-fill-outline.ion-focused.label-floating.sc-ion-label-md-h,.item-fill-outline.ion-focused .label-floating.sc-ion-label-md-h,.item-fill-outline.item-has-focus.label-floating.sc-ion-label-md-h,.item-fill-outline.item-has-focus .label-floating.sc-ion-label-md-h,.item-fill-outline.item-has-placeholder.sc-ion-label-md-h:not(.item-input).label-floating,.item-fill-outline.item-has-placeholder:not(.item-input) .label-floating.sc-ion-label-md-h,.item-fill-outline.item-has-value.label-floating.sc-ion-label-md-h,.item-fill-outline.item-has-value .label-floating.sc-ion-label-md-h{-webkit-transform:translateY(-6px) scale(0.75);transform:translateY(-6px) scale(0.75);position:relative;max-width:-webkit-min-content;max-width:-moz-min-content;max-width:min-content;background-color:var(--ion-item-background, var(--ion-background-color, #fff));overflow:visible;z-index:3}.item-fill-outline.ion-focused.label-floating.sc-ion-label-md-h::before,.item-fill-outline.ion-focused .label-floating.sc-ion-label-md-h::before,.item-fill-outline.ion-focused.label-floating.sc-ion-label-md-h::after,.item-fill-outline.ion-focused .label-floating.sc-ion-label-md-h::after,.item-fill-outline.item-has-focus.label-floating.sc-ion-label-md-h::before,.item-fill-outline.item-has-focus .label-floating.sc-ion-label-md-h::before,.item-fill-outline.item-has-focus.label-floating.sc-ion-label-md-h::after,.item-fill-outline.item-has-focus .label-floating.sc-ion-label-md-h::after,.item-fill-outline.item-has-placeholder.sc-ion-label-md-h:not(.item-input).label-floating::before,.item-fill-outline.item-has-placeholder:not(.item-input) .label-floating.sc-ion-label-md-h::before,.item-fill-outline.item-has-placeholder.sc-ion-label-md-h:not(.item-input).label-floating::after,.item-fill-outline.item-has-placeholder:not(.item-input) .label-floating.sc-ion-label-md-h::after,.item-fill-outline.item-has-value.label-floating.sc-ion-label-md-h::before,.item-fill-outline.item-has-value .label-floating.sc-ion-label-md-h::before,.item-fill-outline.item-has-value.label-floating.sc-ion-label-md-h::after,.item-fill-outline.item-has-value .label-floating.sc-ion-label-md-h::after{position:absolute;width:4px;height:100%;background-color:var(--ion-item-background, var(--ion-background-color, #fff));content:\"\"}.item-fill-outline.ion-focused.label-floating.sc-ion-label-md-h::before,.item-fill-outline.ion-focused .label-floating.sc-ion-label-md-h::before,.item-fill-outline.item-has-focus.label-floating.sc-ion-label-md-h::before,.item-fill-outline.item-has-focus .label-floating.sc-ion-label-md-h::before,.item-fill-outline.item-has-placeholder.sc-ion-label-md-h:not(.item-input).label-floating::before,.item-fill-outline.item-has-placeholder:not(.item-input) .label-floating.sc-ion-label-md-h::before,.item-fill-outline.item-has-value.label-floating.sc-ion-label-md-h::before,.item-fill-outline.item-has-value .label-floating.sc-ion-label-md-h::before{left:calc(-1 * 4px)}.item-fill-outline.ion-focused.label-floating.sc-ion-label-md-h::after,.item-fill-outline.ion-focused .label-floating.sc-ion-label-md-h::after,.item-fill-outline.item-has-focus.label-floating.sc-ion-label-md-h::after,.item-fill-outline.item-has-focus .label-floating.sc-ion-label-md-h::after,.item-fill-outline.item-has-placeholder.sc-ion-label-md-h:not(.item-input).label-floating::after,.item-fill-outline.item-has-placeholder:not(.item-input) .label-floating.sc-ion-label-md-h::after,.item-fill-outline.item-has-value.label-floating.sc-ion-label-md-h::after,.item-fill-outline.item-has-value .label-floating.sc-ion-label-md-h::after{right:calc(-1 * 4px)}.item-fill-outline.ion-focused.item-has-start-slot.label-floating.sc-ion-label-md-h,.item-fill-outline.ion-focused.item-has-start-slot .label-floating.sc-ion-label-md-h,.item-fill-outline.item-has-focus.item-has-start-slot.label-floating.sc-ion-label-md-h,.item-fill-outline.item-has-focus.item-has-start-slot .label-floating.sc-ion-label-md-h,.item-fill-outline.item-has-placeholder.sc-ion-label-md-h:not(.item-input).item-has-start-slot.label-floating,.item-fill-outline.item-has-placeholder:not(.item-input).item-has-start-slot .label-floating.sc-ion-label-md-h,.item-fill-outline.item-has-value.item-has-start-slot.label-floating.sc-ion-label-md-h,.item-fill-outline.item-has-value.item-has-start-slot .label-floating.sc-ion-label-md-h{-webkit-transform:translateX(-32px) translateY(-6px) scale(0.75);transform:translateX(-32px) translateY(-6px) scale(0.75)}.item-fill-outline.ion-focused.item-has-start-slot.label-floating.label-rtl.sc-ion-label-md-h,.item-fill-outline.ion-focused.item-has-start-slot .label-floating.label-rtl.sc-ion-label-md-h,.item-fill-outline.item-has-focus.item-has-start-slot.label-floating.label-rtl.sc-ion-label-md-h,.item-fill-outline.item-has-focus.item-has-start-slot .label-floating.label-rtl.sc-ion-label-md-h,.item-fill-outline.item-has-placeholder.sc-ion-label-md-h:not(.item-input).item-has-start-slot.label-floating.label-rtl,.item-fill-outline.item-has-placeholder:not(.item-input).item-has-start-slot .label-floating.label-rtl.sc-ion-label-md-h,.item-fill-outline.item-has-value.item-has-start-slot.label-floating.label-rtl.sc-ion-label-md-h,.item-fill-outline.item-has-value.item-has-start-slot .label-floating.label-rtl.sc-ion-label-md-h{-webkit-transform:translateX(calc(-1 * -32px)) translateY(-6px) scale(0.75);transform:translateX(calc(-1 * -32px)) translateY(-6px) scale(0.75)}.ion-focused.label-stacked.sc-ion-label-md-h:not(.ion-color),.ion-focused .label-stacked.sc-ion-label-md-h:not(.ion-color),.ion-focused.label-floating.sc-ion-label-md-h:not(.ion-color),.ion-focused .label-floating.sc-ion-label-md-h:not(.ion-color),.item-has-focus.label-stacked.sc-ion-label-md-h:not(.ion-color),.item-has-focus .label-stacked.sc-ion-label-md-h:not(.ion-color),.item-has-focus.label-floating.sc-ion-label-md-h:not(.ion-color),.item-has-focus .label-floating.sc-ion-label-md-h:not(.ion-color){color:var(--ion-color-primary, #3880ff)}.ion-focused.ion-color.label-stacked.sc-ion-label-md-h:not(.ion-color),.ion-focused.ion-color .label-stacked.sc-ion-label-md-h:not(.ion-color),.ion-focused.ion-color.label-floating.sc-ion-label-md-h:not(.ion-color),.ion-focused.ion-color .label-floating.sc-ion-label-md-h:not(.ion-color),.item-has-focus.ion-color.label-stacked.sc-ion-label-md-h:not(.ion-color),.item-has-focus.ion-color .label-stacked.sc-ion-label-md-h:not(.ion-color),.item-has-focus.ion-color.label-floating.sc-ion-label-md-h:not(.ion-color),.item-has-focus.ion-color .label-floating.sc-ion-label-md-h:not(.ion-color){color:var(--ion-color-contrast)}.item-fill-solid.ion-focused.ion-color.label-stacked.sc-ion-label-md-h:not(.ion-color),.item-fill-solid.ion-focused.ion-color .label-stacked.sc-ion-label-md-h:not(.ion-color),.item-fill-solid.ion-focused.ion-color.label-floating.sc-ion-label-md-h:not(.ion-color),.item-fill-solid.ion-focused.ion-color .label-floating.sc-ion-label-md-h:not(.ion-color),.item-fill-outline.ion-focused.ion-color.label-stacked.sc-ion-label-md-h:not(.ion-color),.item-fill-outline.ion-focused.ion-color .label-stacked.sc-ion-label-md-h:not(.ion-color),.item-fill-outline.ion-focused.ion-color.label-floating.sc-ion-label-md-h:not(.ion-color),.item-fill-outline.ion-focused.ion-color .label-floating.sc-ion-label-md-h:not(.ion-color),.item-fill-solid.item-has-focus.ion-color.label-stacked.sc-ion-label-md-h:not(.ion-color),.item-fill-solid.item-has-focus.ion-color .label-stacked.sc-ion-label-md-h:not(.ion-color),.item-fill-solid.item-has-focus.ion-color.label-floating.sc-ion-label-md-h:not(.ion-color),.item-fill-solid.item-has-focus.ion-color .label-floating.sc-ion-label-md-h:not(.ion-color),.item-fill-outline.item-has-focus.ion-color.label-stacked.sc-ion-label-md-h:not(.ion-color),.item-fill-outline.item-has-focus.ion-color .label-stacked.sc-ion-label-md-h:not(.ion-color),.item-fill-outline.item-has-focus.ion-color.label-floating.sc-ion-label-md-h:not(.ion-color),.item-fill-outline.item-has-focus.ion-color .label-floating.sc-ion-label-md-h:not(.ion-color){color:var(--ion-color-base)}.ion-invalid.ion-touched.label-stacked.sc-ion-label-md-h:not(.ion-color),.ion-invalid.ion-touched .label-stacked.sc-ion-label-md-h:not(.ion-color),.ion-invalid.ion-touched.label-floating.sc-ion-label-md-h:not(.ion-color),.ion-invalid.ion-touched .label-floating.sc-ion-label-md-h:not(.ion-color){color:var(--highlight-color-invalid)}.sc-ion-label-md-s h1{margin-left:0;margin-right:0;margin-top:0;margin-bottom:2px;font-size:24px;font-weight:normal}.sc-ion-label-md-s h2{margin-left:0;margin-right:0;margin-top:2px;margin-bottom:2px;font-size:16px;font-weight:normal}.sc-ion-label-md-s h3,.sc-ion-label-md-s h4,.sc-ion-label-md-s h5,.sc-ion-label-md-s h6{margin-left:0;margin-right:0;margin-top:2px;margin-bottom:2px;font-size:14px;font-weight:normal;line-height:normal}.sc-ion-label-md-s p{margin-left:0;margin-right:0;margin-top:0;margin-bottom:2px;font-size:14px;line-height:20px;text-overflow:inherit;overflow:inherit}.sc-ion-label-md-s>p{color:var(--ion-color-step-600, #666666)}.sc-ion-label-md-h.in-item-color.sc-ion-label-md-s>p{color:inherit}";
|
|
19542
|
+
const labelMdCss = ".item.sc-ion-label-md-h,.item .sc-ion-label-md-h{--color:initial;display:block;color:var(--color);font-family:var(--ion-font-family, inherit);font-size:inherit;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;-webkit-box-sizing:border-box;box-sizing:border-box}.ion-color.sc-ion-label-md-h{color:var(--ion-color-base)}.ion-text-wrap.sc-ion-label-md-h{white-space:normal}.item-interactive-disabled.sc-ion-label-md-h:not(.item-multiple-inputs),.item-interactive-disabled:not(.item-multiple-inputs) .sc-ion-label-md-h{cursor:default;opacity:0.3;pointer-events:none}.item-input.sc-ion-label-md-h,.item-input .sc-ion-label-md-h{-ms-flex:initial;flex:initial;max-width:200px;pointer-events:none}.item-textarea.sc-ion-label-md-h,.item-textarea .sc-ion-label-md-h{-ms-flex-item-align:baseline;align-self:baseline}.label-fixed.sc-ion-label-md-h{-ms-flex:0 0 100px;flex:0 0 100px;width:100px;min-width:100px;max-width:200px}.label-stacked.sc-ion-label-md-h,.label-floating.sc-ion-label-md-h{margin-bottom:0;-ms-flex-item-align:stretch;align-self:stretch;width:auto;max-width:100%}.label-no-animate.label-floating.sc-ion-label-md-h{-webkit-transition:none;transition:none}.sc-ion-label-md-s h1,.sc-ion-label-md-s h2,.sc-ion-label-md-s h3,.sc-ion-label-md-s h4,.sc-ion-label-md-s h5,.sc-ion-label-md-s h6{text-overflow:inherit;overflow:inherit}.ion-text-wrap.sc-ion-label-md-h{line-height:1.5}.label-stacked.sc-ion-label-md-h,.label-floating.sc-ion-label-md-h{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;-webkit-transform-origin:top left;transform-origin:top left}.label-stacked.label-rtl.sc-ion-label-md-h,.label-floating.label-rtl.sc-ion-label-md-h{-webkit-transform-origin:top right;transform-origin:top right}.label-stacked.sc-ion-label-md-h{-webkit-transform:translateY(50%) scale(0.75);transform:translateY(50%) scale(0.75);-webkit-transition:color 150ms cubic-bezier(0.4, 0, 0.2, 1);transition:color 150ms cubic-bezier(0.4, 0, 0.2, 1)}.label-floating.sc-ion-label-md-h{-webkit-transform:translateY(96%);transform:translateY(96%);-webkit-transition:color 150ms cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 150ms cubic-bezier(0.4, 0, 0.2, 1);transition:color 150ms cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 150ms cubic-bezier(0.4, 0, 0.2, 1);transition:color 150ms cubic-bezier(0.4, 0, 0.2, 1), transform 150ms cubic-bezier(0.4, 0, 0.2, 1);transition:color 150ms cubic-bezier(0.4, 0, 0.2, 1), transform 150ms cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 150ms cubic-bezier(0.4, 0, 0.2, 1)}.ion-focused.label-floating.sc-ion-label-md-h,.ion-focused .label-floating.sc-ion-label-md-h,.item-has-focus.label-floating.sc-ion-label-md-h,.item-has-focus .label-floating.sc-ion-label-md-h,.item-has-placeholder.sc-ion-label-md-h:not(.item-input).label-floating,.item-has-placeholder:not(.item-input) .label-floating.sc-ion-label-md-h,.item-has-value.label-floating.sc-ion-label-md-h,.item-has-value .label-floating.sc-ion-label-md-h{-webkit-transform:translateY(50%) scale(0.75);transform:translateY(50%) scale(0.75)}.item-fill-outline.ion-focused.label-floating.sc-ion-label-md-h,.item-fill-outline.ion-focused .label-floating.sc-ion-label-md-h,.item-fill-outline.item-has-focus.label-floating.sc-ion-label-md-h,.item-fill-outline.item-has-focus .label-floating.sc-ion-label-md-h,.item-fill-outline.item-has-placeholder.sc-ion-label-md-h:not(.item-input).label-floating,.item-fill-outline.item-has-placeholder:not(.item-input) .label-floating.sc-ion-label-md-h,.item-fill-outline.item-has-value.label-floating.sc-ion-label-md-h,.item-fill-outline.item-has-value .label-floating.sc-ion-label-md-h{-webkit-transform:translateY(-6px) scale(0.75);transform:translateY(-6px) scale(0.75);position:relative;max-width:-webkit-min-content;max-width:-moz-min-content;max-width:min-content;background-color:var(--ion-item-background, var(--ion-background-color, #fff));overflow:visible;z-index:3}.item-fill-outline.ion-focused.label-floating.sc-ion-label-md-h::before,.item-fill-outline.ion-focused .label-floating.sc-ion-label-md-h::before,.item-fill-outline.ion-focused.label-floating.sc-ion-label-md-h::after,.item-fill-outline.ion-focused .label-floating.sc-ion-label-md-h::after,.item-fill-outline.item-has-focus.label-floating.sc-ion-label-md-h::before,.item-fill-outline.item-has-focus .label-floating.sc-ion-label-md-h::before,.item-fill-outline.item-has-focus.label-floating.sc-ion-label-md-h::after,.item-fill-outline.item-has-focus .label-floating.sc-ion-label-md-h::after,.item-fill-outline.item-has-placeholder.sc-ion-label-md-h:not(.item-input).label-floating::before,.item-fill-outline.item-has-placeholder:not(.item-input) .label-floating.sc-ion-label-md-h::before,.item-fill-outline.item-has-placeholder.sc-ion-label-md-h:not(.item-input).label-floating::after,.item-fill-outline.item-has-placeholder:not(.item-input) .label-floating.sc-ion-label-md-h::after,.item-fill-outline.item-has-value.label-floating.sc-ion-label-md-h::before,.item-fill-outline.item-has-value .label-floating.sc-ion-label-md-h::before,.item-fill-outline.item-has-value.label-floating.sc-ion-label-md-h::after,.item-fill-outline.item-has-value .label-floating.sc-ion-label-md-h::after{position:absolute;width:4px;height:100%;background-color:var(--ion-item-background, var(--ion-background-color, #fff));content:\"\"}.item-fill-outline.ion-focused.label-floating.sc-ion-label-md-h::before,.item-fill-outline.ion-focused .label-floating.sc-ion-label-md-h::before,.item-fill-outline.item-has-focus.label-floating.sc-ion-label-md-h::before,.item-fill-outline.item-has-focus .label-floating.sc-ion-label-md-h::before,.item-fill-outline.item-has-placeholder.sc-ion-label-md-h:not(.item-input).label-floating::before,.item-fill-outline.item-has-placeholder:not(.item-input) .label-floating.sc-ion-label-md-h::before,.item-fill-outline.item-has-value.label-floating.sc-ion-label-md-h::before,.item-fill-outline.item-has-value .label-floating.sc-ion-label-md-h::before{left:calc(-1 * 4px)}.item-fill-outline.ion-focused.label-floating.sc-ion-label-md-h::after,.item-fill-outline.ion-focused .label-floating.sc-ion-label-md-h::after,.item-fill-outline.item-has-focus.label-floating.sc-ion-label-md-h::after,.item-fill-outline.item-has-focus .label-floating.sc-ion-label-md-h::after,.item-fill-outline.item-has-placeholder.sc-ion-label-md-h:not(.item-input).label-floating::after,.item-fill-outline.item-has-placeholder:not(.item-input) .label-floating.sc-ion-label-md-h::after,.item-fill-outline.item-has-value.label-floating.sc-ion-label-md-h::after,.item-fill-outline.item-has-value .label-floating.sc-ion-label-md-h::after{right:calc(-1 * 4px)}.item-fill-outline.ion-focused.item-has-start-slot.label-floating.sc-ion-label-md-h,.item-fill-outline.ion-focused.item-has-start-slot .label-floating.sc-ion-label-md-h,.item-fill-outline.item-has-focus.item-has-start-slot.label-floating.sc-ion-label-md-h,.item-fill-outline.item-has-focus.item-has-start-slot .label-floating.sc-ion-label-md-h,.item-fill-outline.item-has-placeholder.sc-ion-label-md-h:not(.item-input).item-has-start-slot.label-floating,.item-fill-outline.item-has-placeholder:not(.item-input).item-has-start-slot .label-floating.sc-ion-label-md-h,.item-fill-outline.item-has-value.item-has-start-slot.label-floating.sc-ion-label-md-h,.item-fill-outline.item-has-value.item-has-start-slot .label-floating.sc-ion-label-md-h{-webkit-transform:translateX(-32px) translateY(-6px) scale(0.75);transform:translateX(-32px) translateY(-6px) scale(0.75)}.item-fill-outline.ion-focused.item-has-start-slot.label-floating.label-rtl.sc-ion-label-md-h,.item-fill-outline.ion-focused.item-has-start-slot .label-floating.label-rtl.sc-ion-label-md-h,.item-fill-outline.item-has-focus.item-has-start-slot.label-floating.label-rtl.sc-ion-label-md-h,.item-fill-outline.item-has-focus.item-has-start-slot .label-floating.label-rtl.sc-ion-label-md-h,.item-fill-outline.item-has-placeholder.sc-ion-label-md-h:not(.item-input).item-has-start-slot.label-floating.label-rtl,.item-fill-outline.item-has-placeholder:not(.item-input).item-has-start-slot .label-floating.label-rtl.sc-ion-label-md-h,.item-fill-outline.item-has-value.item-has-start-slot.label-floating.label-rtl.sc-ion-label-md-h,.item-fill-outline.item-has-value.item-has-start-slot .label-floating.label-rtl.sc-ion-label-md-h{-webkit-transform:translateX(calc(-1 * -32px)) translateY(-6px) scale(0.75);transform:translateX(calc(-1 * -32px)) translateY(-6px) scale(0.75)}.ion-focused.label-stacked.sc-ion-label-md-h:not(.ion-color),.ion-focused .label-stacked.sc-ion-label-md-h:not(.ion-color),.ion-focused.label-floating.sc-ion-label-md-h:not(.ion-color),.ion-focused .label-floating.sc-ion-label-md-h:not(.ion-color),.item-has-focus.label-stacked.sc-ion-label-md-h:not(.ion-color),.item-has-focus .label-stacked.sc-ion-label-md-h:not(.ion-color),.item-has-focus.label-floating.sc-ion-label-md-h:not(.ion-color),.item-has-focus .label-floating.sc-ion-label-md-h:not(.ion-color){color:var(--ion-color-primary, #3880ff)}.ion-focused.ion-color.label-stacked.sc-ion-label-md-h:not(.ion-color),.ion-focused.ion-color .label-stacked.sc-ion-label-md-h:not(.ion-color),.ion-focused.ion-color.label-floating.sc-ion-label-md-h:not(.ion-color),.ion-focused.ion-color .label-floating.sc-ion-label-md-h:not(.ion-color),.item-has-focus.ion-color.label-stacked.sc-ion-label-md-h:not(.ion-color),.item-has-focus.ion-color .label-stacked.sc-ion-label-md-h:not(.ion-color),.item-has-focus.ion-color.label-floating.sc-ion-label-md-h:not(.ion-color),.item-has-focus.ion-color .label-floating.sc-ion-label-md-h:not(.ion-color){color:var(--ion-color-contrast)}.item-fill-solid.ion-focused.ion-color.label-stacked.sc-ion-label-md-h:not(.ion-color),.item-fill-solid.ion-focused.ion-color .label-stacked.sc-ion-label-md-h:not(.ion-color),.item-fill-solid.ion-focused.ion-color.label-floating.sc-ion-label-md-h:not(.ion-color),.item-fill-solid.ion-focused.ion-color .label-floating.sc-ion-label-md-h:not(.ion-color),.item-fill-outline.ion-focused.ion-color.label-stacked.sc-ion-label-md-h:not(.ion-color),.item-fill-outline.ion-focused.ion-color .label-stacked.sc-ion-label-md-h:not(.ion-color),.item-fill-outline.ion-focused.ion-color.label-floating.sc-ion-label-md-h:not(.ion-color),.item-fill-outline.ion-focused.ion-color .label-floating.sc-ion-label-md-h:not(.ion-color),.item-fill-solid.item-has-focus.ion-color.label-stacked.sc-ion-label-md-h:not(.ion-color),.item-fill-solid.item-has-focus.ion-color .label-stacked.sc-ion-label-md-h:not(.ion-color),.item-fill-solid.item-has-focus.ion-color.label-floating.sc-ion-label-md-h:not(.ion-color),.item-fill-solid.item-has-focus.ion-color .label-floating.sc-ion-label-md-h:not(.ion-color),.item-fill-outline.item-has-focus.ion-color.label-stacked.sc-ion-label-md-h:not(.ion-color),.item-fill-outline.item-has-focus.ion-color .label-stacked.sc-ion-label-md-h:not(.ion-color),.item-fill-outline.item-has-focus.ion-color.label-floating.sc-ion-label-md-h:not(.ion-color),.item-fill-outline.item-has-focus.ion-color .label-floating.sc-ion-label-md-h:not(.ion-color){color:var(--ion-color-base)}.ion-invalid.ion-touched.label-stacked.sc-ion-label-md-h:not(.ion-color),.ion-invalid.ion-touched .label-stacked.sc-ion-label-md-h:not(.ion-color),.ion-invalid.ion-touched.label-floating.sc-ion-label-md-h:not(.ion-color),.ion-invalid.ion-touched .label-floating.sc-ion-label-md-h:not(.ion-color){color:var(--highlight-color-invalid)}.sc-ion-label-md-s h1{margin-left:0;margin-right:0;margin-top:0;margin-bottom:2px;font-size:24px;font-weight:normal}.sc-ion-label-md-s h2{margin-left:0;margin-right:0;margin-top:2px;margin-bottom:2px;font-size:16px;font-weight:normal}.sc-ion-label-md-s h3,.sc-ion-label-md-s h4,.sc-ion-label-md-s h5,.sc-ion-label-md-s h6{margin-left:0;margin-right:0;margin-top:2px;margin-bottom:2px;font-size:14px;font-weight:normal;line-height:normal}.sc-ion-label-md-s p{margin-left:0;margin-right:0;margin-top:0;margin-bottom:2px;font-size:14px;line-height:20px;text-overflow:inherit;overflow:inherit}.sc-ion-label-md-s>p{color:var(--ion-color-step-600, #666666)}.sc-ion-label-md-h.in-item-color.sc-ion-label-md-s>p{color:inherit}";
|
|
19508
19543
|
|
|
19509
19544
|
/**
|
|
19510
19545
|
* @virtualProp {"ios" | "md"} mode - The mode determines which platform styles to use.
|
|
@@ -19794,6 +19829,7 @@ class Loading {
|
|
|
19794
19829
|
this.willDismissShorthand = createEvent(this, "willDismiss", 7);
|
|
19795
19830
|
this.didDismissShorthand = createEvent(this, "didDismiss", 7);
|
|
19796
19831
|
this.delegateController = createDelegateController(this);
|
|
19832
|
+
this.lockController = createLockController();
|
|
19797
19833
|
this.triggerController = createTriggerController();
|
|
19798
19834
|
this.customHTMLEnabled = config.get('innerHTMLTemplatesEnabled', ENABLE_HTML_CONTENT_DEFAULT);
|
|
19799
19835
|
this.presented = false;
|
|
@@ -19859,24 +19895,13 @@ class Loading {
|
|
|
19859
19895
|
* Present the loading overlay after it has been created.
|
|
19860
19896
|
*/
|
|
19861
19897
|
async present() {
|
|
19862
|
-
|
|
19863
|
-
* When using an inline loading indicator
|
|
19864
|
-
* and dismissing a loading indicator it is possible to
|
|
19865
|
-
* quickly present the loading indicator while it is
|
|
19866
|
-
* dismissing. We need to await any current
|
|
19867
|
-
* transition to allow the dismiss to finish
|
|
19868
|
-
* before presenting again.
|
|
19869
|
-
*/
|
|
19870
|
-
if (this.currentTransition !== undefined) {
|
|
19871
|
-
await this.currentTransition;
|
|
19872
|
-
}
|
|
19898
|
+
const unlock = await this.lockController.lock();
|
|
19873
19899
|
await this.delegateController.attachViewToDom();
|
|
19874
|
-
|
|
19875
|
-
await this.currentTransition;
|
|
19900
|
+
await present(this, 'loadingEnter', iosEnterAnimation$4, mdEnterAnimation$3);
|
|
19876
19901
|
if (this.duration > 0) {
|
|
19877
19902
|
this.durationTimeout = setTimeout(() => this.dismiss(), this.duration + 10);
|
|
19878
19903
|
}
|
|
19879
|
-
|
|
19904
|
+
unlock();
|
|
19880
19905
|
}
|
|
19881
19906
|
/**
|
|
19882
19907
|
* Dismiss the loading overlay after it has been presented.
|
|
@@ -19888,14 +19913,15 @@ class Loading {
|
|
|
19888
19913
|
* Some examples include: ``"cancel"`, `"destructive"`, "selected"`, and `"backdrop"`.
|
|
19889
19914
|
*/
|
|
19890
19915
|
async dismiss(data, role) {
|
|
19916
|
+
const unlock = await this.lockController.lock();
|
|
19891
19917
|
if (this.durationTimeout) {
|
|
19892
19918
|
clearTimeout(this.durationTimeout);
|
|
19893
19919
|
}
|
|
19894
|
-
|
|
19895
|
-
const dismissed = await this.currentTransition;
|
|
19920
|
+
const dismissed = await dismiss(this, data, role, 'loadingLeave', iosLeaveAnimation$4, mdLeaveAnimation$3);
|
|
19896
19921
|
if (dismissed) {
|
|
19897
19922
|
this.delegateController.removeViewFromDom();
|
|
19898
19923
|
}
|
|
19924
|
+
unlock();
|
|
19899
19925
|
return dismissed;
|
|
19900
19926
|
}
|
|
19901
19927
|
/**
|
|
@@ -22396,6 +22422,7 @@ class Modal {
|
|
|
22396
22422
|
this.willDismissShorthand = createEvent(this, "willDismiss", 7);
|
|
22397
22423
|
this.didDismissShorthand = createEvent(this, "didDismiss", 7);
|
|
22398
22424
|
this.ionMount = createEvent(this, "ionMount", 7);
|
|
22425
|
+
this.lockController = createLockController();
|
|
22399
22426
|
this.triggerController = createTriggerController();
|
|
22400
22427
|
this.coreDelegate = CoreDelegate();
|
|
22401
22428
|
this.isSheetModal = false;
|
|
@@ -22560,29 +22587,25 @@ class Modal {
|
|
|
22560
22587
|
* Present the modal overlay after it has been created.
|
|
22561
22588
|
*/
|
|
22562
22589
|
async present() {
|
|
22590
|
+
const unlock = await this.lockController.lock();
|
|
22563
22591
|
if (this.presented) {
|
|
22592
|
+
unlock();
|
|
22564
22593
|
return;
|
|
22565
22594
|
}
|
|
22566
22595
|
const { presentingElement, el } = this;
|
|
22567
|
-
/**
|
|
22568
|
-
* When using an inline modal
|
|
22569
|
-
* and dismissing a modal it is possible to
|
|
22570
|
-
* quickly present the modal while it is
|
|
22571
|
-
* dismissing. We need to await any current
|
|
22572
|
-
* transition to allow the dismiss to finish
|
|
22573
|
-
* before presenting again.
|
|
22574
|
-
*/
|
|
22575
|
-
if (this.currentTransition !== undefined) {
|
|
22576
|
-
await this.currentTransition;
|
|
22577
|
-
}
|
|
22578
22596
|
/**
|
|
22579
22597
|
* If the modal is presented multiple times (inline modals), we
|
|
22580
22598
|
* need to reset the current breakpoint to the initial breakpoint.
|
|
22581
22599
|
*/
|
|
22582
22600
|
this.currentBreakpoint = this.initialBreakpoint;
|
|
22583
22601
|
const { inline, delegate } = this.getDelegate(true);
|
|
22584
|
-
|
|
22602
|
+
/**
|
|
22603
|
+
* Emit ionMount so JS Frameworks have an opportunity
|
|
22604
|
+
* to add the child component to the DOM. The child
|
|
22605
|
+
* component will be assigned to this.usersElement below.
|
|
22606
|
+
*/
|
|
22585
22607
|
this.ionMount.emit();
|
|
22608
|
+
this.usersElement = await attachComponent(delegate, el, this.component, ['ion-page'], this.componentProps, inline);
|
|
22586
22609
|
/**
|
|
22587
22610
|
* When using the lazy loaded build of Stencil, we need to wait
|
|
22588
22611
|
* for every Stencil component instance to be ready before presenting
|
|
@@ -22606,7 +22629,7 @@ class Modal {
|
|
|
22606
22629
|
await waitForMount();
|
|
22607
22630
|
}
|
|
22608
22631
|
writeTask(() => this.el.classList.add('show-modal'));
|
|
22609
|
-
|
|
22632
|
+
await present(this, 'modalEnter', iosEnterAnimation$3, mdEnterAnimation$2, {
|
|
22610
22633
|
presentingEl: presentingElement,
|
|
22611
22634
|
currentBreakpoint: this.initialBreakpoint,
|
|
22612
22635
|
backdropBreakpoint: this.backdropBreakpoint,
|
|
@@ -22653,14 +22676,13 @@ class Modal {
|
|
|
22653
22676
|
this.statusBarStyle = await StatusBar.getStyle();
|
|
22654
22677
|
setCardStatusBarDark();
|
|
22655
22678
|
}
|
|
22656
|
-
await this.currentTransition;
|
|
22657
22679
|
if (this.isSheetModal) {
|
|
22658
22680
|
this.initSheetGesture();
|
|
22659
22681
|
}
|
|
22660
22682
|
else if (hasCardModal) {
|
|
22661
22683
|
this.initSwipeToClose();
|
|
22662
22684
|
}
|
|
22663
|
-
|
|
22685
|
+
unlock();
|
|
22664
22686
|
}
|
|
22665
22687
|
initSwipeToClose() {
|
|
22666
22688
|
var _a;
|
|
@@ -22750,12 +22772,19 @@ class Modal {
|
|
|
22750
22772
|
if (this.gestureAnimationDismissing && role !== GESTURE) {
|
|
22751
22773
|
return false;
|
|
22752
22774
|
}
|
|
22775
|
+
/**
|
|
22776
|
+
* Because the canDismiss check below is async,
|
|
22777
|
+
* we need to claim a lock before the check happens,
|
|
22778
|
+
* in case the dismiss transition does run.
|
|
22779
|
+
*/
|
|
22780
|
+
const unlock = await this.lockController.lock();
|
|
22753
22781
|
/**
|
|
22754
22782
|
* If a canDismiss handler is responsible
|
|
22755
22783
|
* for calling the dismiss method, we should
|
|
22756
22784
|
* not run the canDismiss check again.
|
|
22757
22785
|
*/
|
|
22758
22786
|
if (role !== 'handler' && !(await this.checkCanDismiss(data, role))) {
|
|
22787
|
+
unlock();
|
|
22759
22788
|
return false;
|
|
22760
22789
|
}
|
|
22761
22790
|
const { presentingElement } = this;
|
|
@@ -22773,24 +22802,12 @@ class Modal {
|
|
|
22773
22802
|
window.removeEventListener(KEYBOARD_DID_OPEN, this.keyboardOpenCallback);
|
|
22774
22803
|
this.keyboardOpenCallback = undefined;
|
|
22775
22804
|
}
|
|
22776
|
-
/**
|
|
22777
|
-
* When using an inline modal
|
|
22778
|
-
* and presenting a modal it is possible to
|
|
22779
|
-
* quickly dismiss the modal while it is
|
|
22780
|
-
* presenting. We need to await any current
|
|
22781
|
-
* transition to allow the present to finish
|
|
22782
|
-
* before dismissing again.
|
|
22783
|
-
*/
|
|
22784
|
-
if (this.currentTransition !== undefined) {
|
|
22785
|
-
await this.currentTransition;
|
|
22786
|
-
}
|
|
22787
22805
|
const enteringAnimation = activeAnimations.get(this) || [];
|
|
22788
|
-
|
|
22806
|
+
const dismissed = await dismiss(this, data, role, 'modalLeave', iosLeaveAnimation$3, mdLeaveAnimation$2, {
|
|
22789
22807
|
presentingEl: presentingElement,
|
|
22790
22808
|
currentBreakpoint: (_a = this.currentBreakpoint) !== null && _a !== void 0 ? _a : this.initialBreakpoint,
|
|
22791
22809
|
backdropBreakpoint: this.backdropBreakpoint,
|
|
22792
22810
|
});
|
|
22793
|
-
const dismissed = await this.currentTransition;
|
|
22794
22811
|
if (dismissed) {
|
|
22795
22812
|
const { delegate } = this.getDelegate();
|
|
22796
22813
|
await detachComponent(delegate, this.usersElement);
|
|
@@ -22804,8 +22821,8 @@ class Modal {
|
|
|
22804
22821
|
enteringAnimation.forEach((ani) => ani.destroy());
|
|
22805
22822
|
}
|
|
22806
22823
|
this.currentBreakpoint = undefined;
|
|
22807
|
-
this.currentTransition = undefined;
|
|
22808
22824
|
this.animation = undefined;
|
|
22825
|
+
unlock();
|
|
22809
22826
|
return dismissed;
|
|
22810
22827
|
}
|
|
22811
22828
|
/**
|
|
@@ -24024,6 +24041,7 @@ class Picker {
|
|
|
24024
24041
|
this.willDismissShorthand = createEvent(this, "willDismiss", 7);
|
|
24025
24042
|
this.didDismissShorthand = createEvent(this, "didDismiss", 7);
|
|
24026
24043
|
this.delegateController = createDelegateController(this);
|
|
24044
|
+
this.lockController = createLockController();
|
|
24027
24045
|
this.triggerController = createTriggerController();
|
|
24028
24046
|
this.onBackdropTap = () => {
|
|
24029
24047
|
this.dismiss(undefined, BACKDROP);
|
|
@@ -24090,24 +24108,13 @@ class Picker {
|
|
|
24090
24108
|
* Present the picker overlay after it has been created.
|
|
24091
24109
|
*/
|
|
24092
24110
|
async present() {
|
|
24093
|
-
|
|
24094
|
-
* When using an inline picker
|
|
24095
|
-
* and dismissing an picker it is possible to
|
|
24096
|
-
* quickly present the picker while it is
|
|
24097
|
-
* dismissing. We need to await any current
|
|
24098
|
-
* transition to allow the dismiss to finish
|
|
24099
|
-
* before presenting again.
|
|
24100
|
-
*/
|
|
24101
|
-
if (this.currentTransition !== undefined) {
|
|
24102
|
-
await this.currentTransition;
|
|
24103
|
-
}
|
|
24111
|
+
const unlock = await this.lockController.lock();
|
|
24104
24112
|
await this.delegateController.attachViewToDom();
|
|
24105
|
-
|
|
24106
|
-
await this.currentTransition;
|
|
24107
|
-
this.currentTransition = undefined;
|
|
24113
|
+
await present(this, 'pickerEnter', iosEnterAnimation$2, iosEnterAnimation$2, undefined);
|
|
24108
24114
|
if (this.duration > 0) {
|
|
24109
24115
|
this.durationTimeout = setTimeout(() => this.dismiss(), this.duration);
|
|
24110
24116
|
}
|
|
24117
|
+
unlock();
|
|
24111
24118
|
}
|
|
24112
24119
|
/**
|
|
24113
24120
|
* Dismiss the picker overlay after it has been presented.
|
|
@@ -24119,14 +24126,15 @@ class Picker {
|
|
|
24119
24126
|
* Some examples include: ``"cancel"`, `"destructive"`, "selected"`, and `"backdrop"`.
|
|
24120
24127
|
*/
|
|
24121
24128
|
async dismiss(data, role) {
|
|
24129
|
+
const unlock = await this.lockController.lock();
|
|
24122
24130
|
if (this.durationTimeout) {
|
|
24123
24131
|
clearTimeout(this.durationTimeout);
|
|
24124
24132
|
}
|
|
24125
|
-
|
|
24126
|
-
const dismissed = await this.currentTransition;
|
|
24133
|
+
const dismissed = await dismiss(this, data, role, 'pickerLeave', iosLeaveAnimation$2, iosLeaveAnimation$2);
|
|
24127
24134
|
if (dismissed) {
|
|
24128
24135
|
this.delegateController.removeViewFromDom();
|
|
24129
24136
|
}
|
|
24137
|
+
unlock();
|
|
24130
24138
|
return dismissed;
|
|
24131
24139
|
}
|
|
24132
24140
|
/**
|
|
@@ -26447,6 +26455,7 @@ class Popover {
|
|
|
26447
26455
|
this.ionMount = createEvent(this, "ionMount", 7);
|
|
26448
26456
|
this.parentPopover = null;
|
|
26449
26457
|
this.coreDelegate = CoreDelegate();
|
|
26458
|
+
this.lockController = createLockController();
|
|
26450
26459
|
this.inline = false;
|
|
26451
26460
|
this.focusDescendantOnPresent = false;
|
|
26452
26461
|
this.onBackdropTap = () => {
|
|
@@ -26620,28 +26629,24 @@ class Popover {
|
|
|
26620
26629
|
* was dispatched.
|
|
26621
26630
|
*/
|
|
26622
26631
|
async present(event) {
|
|
26632
|
+
const unlock = await this.lockController.lock();
|
|
26623
26633
|
if (this.presented) {
|
|
26634
|
+
unlock();
|
|
26624
26635
|
return;
|
|
26625
26636
|
}
|
|
26626
|
-
/**
|
|
26627
|
-
* When using an inline popover
|
|
26628
|
-
* and dismissing a popover it is possible to
|
|
26629
|
-
* quickly present the popover while it is
|
|
26630
|
-
* dismissing. We need to await any current
|
|
26631
|
-
* transition to allow the dismiss to finish
|
|
26632
|
-
* before presenting again.
|
|
26633
|
-
*/
|
|
26634
|
-
if (this.currentTransition !== undefined) {
|
|
26635
|
-
await this.currentTransition;
|
|
26636
|
-
}
|
|
26637
26637
|
const { el } = this;
|
|
26638
26638
|
const { inline, delegate } = this.getDelegate(true);
|
|
26639
|
+
/**
|
|
26640
|
+
* Emit ionMount so JS Frameworks have an opportunity
|
|
26641
|
+
* to add the child component to the DOM. The child
|
|
26642
|
+
* component will be assigned to this.usersElement below.
|
|
26643
|
+
*/
|
|
26644
|
+
this.ionMount.emit();
|
|
26639
26645
|
this.usersElement = await attachComponent(delegate, el, this.component, ['popover-viewport'], this.componentProps, inline);
|
|
26640
26646
|
if (!this.keyboardEvents) {
|
|
26641
26647
|
this.configureKeyboardInteraction();
|
|
26642
26648
|
}
|
|
26643
26649
|
this.configureDismissInteraction();
|
|
26644
|
-
this.ionMount.emit();
|
|
26645
26650
|
/**
|
|
26646
26651
|
* When using the lazy loaded build of Stencil, we need to wait
|
|
26647
26652
|
* for every Stencil component instance to be ready before presenting
|
|
@@ -26664,7 +26669,7 @@ class Popover {
|
|
|
26664
26669
|
else if (!this.keepContentsMounted) {
|
|
26665
26670
|
await waitForMount();
|
|
26666
26671
|
}
|
|
26667
|
-
|
|
26672
|
+
await present(this, 'popoverEnter', iosEnterAnimation$1, mdEnterAnimation$1, {
|
|
26668
26673
|
event: event || this.event,
|
|
26669
26674
|
size: this.size,
|
|
26670
26675
|
trigger: this.triggerEl,
|
|
@@ -26672,8 +26677,6 @@ class Popover {
|
|
|
26672
26677
|
side: this.side,
|
|
26673
26678
|
align: this.alignment,
|
|
26674
26679
|
});
|
|
26675
|
-
await this.currentTransition;
|
|
26676
|
-
this.currentTransition = undefined;
|
|
26677
26680
|
/**
|
|
26678
26681
|
* If popover is nested and was
|
|
26679
26682
|
* presented using the "Right" arrow key,
|
|
@@ -26683,6 +26686,7 @@ class Popover {
|
|
|
26683
26686
|
if (this.focusDescendantOnPresent) {
|
|
26684
26687
|
focusFirstDescendant(this.el, this.el);
|
|
26685
26688
|
}
|
|
26689
|
+
unlock();
|
|
26686
26690
|
}
|
|
26687
26691
|
/**
|
|
26688
26692
|
* Dismiss the popover overlay after it has been presented.
|
|
@@ -26693,23 +26697,12 @@ class Popover {
|
|
|
26693
26697
|
* a parent popover if this popover is nested. Defaults to `true`.
|
|
26694
26698
|
*/
|
|
26695
26699
|
async dismiss(data, role, dismissParentPopover = true) {
|
|
26696
|
-
|
|
26697
|
-
* When using an inline popover
|
|
26698
|
-
* and presenting a popover it is possible to
|
|
26699
|
-
* quickly dismiss the popover while it is
|
|
26700
|
-
* presenting. We need to await any current
|
|
26701
|
-
* transition to allow the present to finish
|
|
26702
|
-
* before dismissing again.
|
|
26703
|
-
*/
|
|
26704
|
-
if (this.currentTransition !== undefined) {
|
|
26705
|
-
await this.currentTransition;
|
|
26706
|
-
}
|
|
26700
|
+
const unlock = await this.lockController.lock();
|
|
26707
26701
|
const { destroyKeyboardInteraction, destroyDismissInteraction } = this;
|
|
26708
26702
|
if (dismissParentPopover && this.parentPopover) {
|
|
26709
26703
|
this.parentPopover.dismiss(data, role, dismissParentPopover);
|
|
26710
26704
|
}
|
|
26711
|
-
|
|
26712
|
-
const shouldDismiss = await this.currentTransition;
|
|
26705
|
+
const shouldDismiss = await dismiss(this, data, role, 'popoverLeave', iosLeaveAnimation$1, mdLeaveAnimation$1, this.event);
|
|
26713
26706
|
if (shouldDismiss) {
|
|
26714
26707
|
if (destroyKeyboardInteraction) {
|
|
26715
26708
|
destroyKeyboardInteraction();
|
|
@@ -26727,7 +26720,7 @@ class Popover {
|
|
|
26727
26720
|
const { delegate } = this.getDelegate();
|
|
26728
26721
|
await detachComponent(delegate, this.usersElement);
|
|
26729
26722
|
}
|
|
26730
|
-
|
|
26723
|
+
unlock();
|
|
26731
26724
|
return shouldDismiss;
|
|
26732
26725
|
}
|
|
26733
26726
|
/**
|
|
@@ -30413,6 +30406,7 @@ class RouterOutlet {
|
|
|
30413
30406
|
this.ionNavDidChange.emit();
|
|
30414
30407
|
return true;
|
|
30415
30408
|
}
|
|
30409
|
+
// TODO: FW-5048 - Remove this code in favor of using lock controller from utils
|
|
30416
30410
|
async lock() {
|
|
30417
30411
|
const p = this.waitPromise;
|
|
30418
30412
|
let resolve;
|
|
@@ -33471,6 +33465,7 @@ class Toast {
|
|
|
33471
33465
|
this.willDismissShorthand = createEvent(this, "willDismiss", 7);
|
|
33472
33466
|
this.didDismissShorthand = createEvent(this, "didDismiss", 7);
|
|
33473
33467
|
this.delegateController = createDelegateController(this);
|
|
33468
|
+
this.lockController = createLockController();
|
|
33474
33469
|
this.triggerController = createTriggerController();
|
|
33475
33470
|
this.customHTMLEnabled = config.get('innerHTMLTemplatesEnabled', ENABLE_HTML_CONTENT_DEFAULT);
|
|
33476
33471
|
this.presented = false;
|
|
@@ -33540,30 +33535,19 @@ class Toast {
|
|
|
33540
33535
|
* Present the toast overlay after it has been created.
|
|
33541
33536
|
*/
|
|
33542
33537
|
async present() {
|
|
33543
|
-
|
|
33544
|
-
* When using an inline toast
|
|
33545
|
-
* and dismissing a toast it is possible to
|
|
33546
|
-
* quickly present the toast while it is
|
|
33547
|
-
* dismissing. We need to await any current
|
|
33548
|
-
* transition to allow the dismiss to finish
|
|
33549
|
-
* before presenting again.
|
|
33550
|
-
*/
|
|
33551
|
-
if (this.currentTransition !== undefined) {
|
|
33552
|
-
await this.currentTransition;
|
|
33553
|
-
}
|
|
33538
|
+
const unlock = await this.lockController.lock();
|
|
33554
33539
|
await this.delegateController.attachViewToDom();
|
|
33555
|
-
|
|
33556
|
-
await this.currentTransition;
|
|
33540
|
+
await present(this, 'toastEnter', iosEnterAnimation, mdEnterAnimation, this.position);
|
|
33557
33541
|
/**
|
|
33558
33542
|
* Content is revealed to screen readers after
|
|
33559
33543
|
* the transition to avoid jank since this
|
|
33560
33544
|
* state updates will cause a re-render.
|
|
33561
33545
|
*/
|
|
33562
33546
|
this.revealContentToScreenReader = true;
|
|
33563
|
-
this.currentTransition = undefined;
|
|
33564
33547
|
if (this.duration > 0) {
|
|
33565
33548
|
this.durationTimeout = setTimeout(() => this.dismiss(undefined, 'timeout'), this.duration);
|
|
33566
33549
|
}
|
|
33550
|
+
unlock();
|
|
33567
33551
|
}
|
|
33568
33552
|
/**
|
|
33569
33553
|
* Dismiss the toast overlay after it has been presented.
|
|
@@ -33575,15 +33559,16 @@ class Toast {
|
|
|
33575
33559
|
* Some examples include: ``"cancel"`, `"destructive"`, "selected"`, and `"backdrop"`.
|
|
33576
33560
|
*/
|
|
33577
33561
|
async dismiss(data, role) {
|
|
33562
|
+
const unlock = await this.lockController.lock();
|
|
33578
33563
|
if (this.durationTimeout) {
|
|
33579
33564
|
clearTimeout(this.durationTimeout);
|
|
33580
33565
|
}
|
|
33581
|
-
|
|
33582
|
-
const dismissed = await this.currentTransition;
|
|
33566
|
+
const dismissed = await dismiss(this, data, role, 'toastLeave', iosLeaveAnimation, mdLeaveAnimation, this.position);
|
|
33583
33567
|
if (dismissed) {
|
|
33584
33568
|
this.delegateController.removeViewFromDom();
|
|
33585
33569
|
this.revealContentToScreenReader = false;
|
|
33586
33570
|
}
|
|
33571
|
+
unlock();
|
|
33587
33572
|
return dismissed;
|
|
33588
33573
|
}
|
|
33589
33574
|
/**
|