@ionic/core 7.5.1-dev.11697212309.1448948d → 7.5.1-dev.11697219867.13d96ccb

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. package/components/ion-title.js +1 -1
  2. package/components/ios.transition.js +209 -41
  3. package/dist/cjs/{index-d93fb71d.js → index-eccba000.js} +2 -2
  4. package/dist/cjs/index.cjs.js +3 -3
  5. package/dist/cjs/ion-app_8.cjs.entry.js +2 -2
  6. package/dist/cjs/ion-modal.cjs.entry.js +1 -1
  7. package/dist/cjs/ion-nav_2.cjs.entry.js +1 -1
  8. package/dist/cjs/ion-popover.cjs.entry.js +1 -1
  9. package/dist/cjs/{ios.transition-a4d545dd.js → ios.transition-5af5991e.js} +210 -42
  10. package/dist/cjs/{md.transition-80bb961b.js → md.transition-1e740a6a.js} +1 -1
  11. package/dist/collection/components/title/title.ios.css +9 -0
  12. package/dist/collection/utils/transition/ios.transition.js +209 -41
  13. package/dist/docs.json +1 -1
  14. package/dist/esm/{index-7d2b2808.js → index-a09eac70.js} +2 -2
  15. package/dist/esm/index.js +3 -3
  16. package/dist/esm/ion-app_8.entry.js +2 -2
  17. package/dist/esm/ion-modal.entry.js +1 -1
  18. package/dist/esm/ion-nav_2.entry.js +1 -1
  19. package/dist/esm/ion-popover.entry.js +1 -1
  20. package/dist/esm/{ios.transition-a86d7bbe.js → ios.transition-4d1322d6.js} +210 -42
  21. package/dist/esm/{md.transition-365ef6b6.js → md.transition-66b425d0.js} +1 -1
  22. package/dist/esm-es5/{index-7d2b2808.js → index-a09eac70.js} +1 -1
  23. package/dist/esm-es5/index.js +1 -1
  24. package/dist/esm-es5/ion-app_8.entry.js +1 -1
  25. package/dist/esm-es5/ion-modal.entry.js +1 -1
  26. package/dist/esm-es5/ion-nav_2.entry.js +1 -1
  27. package/dist/esm-es5/ion-popover.entry.js +1 -1
  28. package/dist/esm-es5/ios.transition-4d1322d6.js +4 -0
  29. package/dist/esm-es5/{md.transition-365ef6b6.js → md.transition-66b425d0.js} +1 -1
  30. package/dist/ionic/index.esm.js +1 -1
  31. package/dist/ionic/ionic.esm.js +1 -1
  32. package/dist/ionic/{p-c994fff0.system.js → p-091c8792.system.js} +1 -1
  33. package/dist/ionic/{p-22923e47.entry.js → p-0f217f27.entry.js} +1 -1
  34. package/dist/ionic/{p-b08e4088.system.entry.js → p-1d8d5f9a.system.entry.js} +1 -1
  35. package/dist/ionic/{p-fcdc853a.system.entry.js → p-2592264d.system.entry.js} +1 -1
  36. package/dist/ionic/p-2a8eeef7.system.js +4 -0
  37. package/dist/ionic/p-5c3e72a8.system.js +1 -1
  38. package/dist/ionic/{p-9b9dcc3e.system.entry.js → p-61ca6685.system.entry.js} +1 -1
  39. package/dist/ionic/{p-4cba3f05.entry.js → p-7eaa585f.entry.js} +1 -1
  40. package/dist/ionic/{p-e42aaa8b.entry.js → p-8209372c.entry.js} +1 -1
  41. package/dist/ionic/{p-c05315f5.system.entry.js → p-b2fb0dda.system.entry.js} +1 -1
  42. package/dist/ionic/{p-e38a5f77.js → p-c44fe9fd.js} +1 -1
  43. package/dist/ionic/p-de68588d.js +4 -0
  44. package/dist/ionic/{p-128a98e8.system.js → p-e028178a.system.js} +1 -1
  45. package/dist/ionic/{p-ced41304.system.js → p-e0f0d55f.system.js} +1 -1
  46. package/dist/ionic/{p-f34f001c.entry.js → p-e25cb483.entry.js} +1 -1
  47. package/dist/ionic/p-eb7d0922.js +4 -0
  48. package/hydrate/index.js +210 -42
  49. package/package.json +2 -2
  50. package/dist/esm-es5/ios.transition-a86d7bbe.js +0 -4
  51. package/dist/ionic/p-16e44585.js +0 -4
  52. package/dist/ionic/p-b9047b05.system.js +0 -4
  53. package/dist/ionic/p-e2bb634f.js +0 -4
package/hydrate/index.js CHANGED
@@ -34664,7 +34664,7 @@ class Toolbar {
34664
34664
  }; }
34665
34665
  }
34666
34666
 
34667
- const titleIosCss = "/*!@:host*/.sc-ion-title-ios-h{--color:initial;display:-ms-flexbox;display:flex;-ms-flex:1;flex:1;-ms-flex-align:center;align-items:center;-webkit-transform:translateZ(0);transform:translateZ(0);color:var(--color)}/*!@:host(.ion-color)*/.ion-color.sc-ion-title-ios-h{color:var(--ion-color-base)}/*!@.toolbar-title*/.toolbar-title.sc-ion-title-ios{display:block;width:100%;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;pointer-events:auto}/*!@:host(.title-small) .toolbar-title*/.title-small.sc-ion-title-ios-h .toolbar-title.sc-ion-title-ios{white-space:normal}/*!@:host*/.sc-ion-title-ios-h{top:0;-webkit-padding-start:90px;padding-inline-start:90px;-webkit-padding-end:90px;padding-inline-end:90px;padding-top:var(--padding-top);padding-bottom:var(--padding-bottom);position:absolute;width:100%;height:100%;-webkit-transform:translateZ(0);transform:translateZ(0);font-size:min(1.0625rem, 20.4px);font-weight:600;text-align:center;-webkit-box-sizing:border-box;box-sizing:border-box;pointer-events:none}@supports (inset-inline-start: 0){/*!@:host*/.sc-ion-title-ios-h{inset-inline-start:0}}@supports not (inset-inline-start: 0){/*!@:host*/.sc-ion-title-ios-h{left:0}/*!@:host-context([dir=rtl])*/[dir=rtl].sc-ion-title-ios-h,[dir=rtl] .sc-ion-title-ios-h{left:unset;right:unset;right:0}/*!@@supports selector(:dir(rtl))*/@supports .sc-ion-title-ios selector(.sc-ion-title-ios:dir(rtl)){.sc-ion-title-ios-h:dir(rtl){left:unset;right:unset;right:0}}}/*!@:host(.title-small)*/.title-small.sc-ion-title-ios-h{-webkit-padding-start:9px;padding-inline-start:9px;-webkit-padding-end:9px;padding-inline-end:9px;padding-top:6px;padding-bottom:16px;position:relative;font-size:min(0.8125rem, 23.4px);font-weight:normal}/*!@:host(.title-large)*/.title-large.sc-ion-title-ios-h{-webkit-padding-start:12px;padding-inline-start:12px;-webkit-padding-end:12px;padding-inline-end:12px;padding-top:2px;padding-bottom:4px;-webkit-transform-origin:left center;transform-origin:left center;position:static;-ms-flex-align:end;align-items:flex-end;min-width:100%;font-size:min(2.125rem, 61.2px);font-weight:700;text-align:start}/*!@:host(.title-large.title-rtl)*/.title-large.title-rtl.sc-ion-title-ios-h{-webkit-transform-origin:right center;transform-origin:right center}/*!@:host(.title-large.ion-cloned-element)*/.title-large.ion-cloned-element.sc-ion-title-ios-h{--color:var(--ion-text-color, #000);font-family:var(--ion-font-family)}/*!@:host(.title-large) .toolbar-title*/.title-large.sc-ion-title-ios-h .toolbar-title.sc-ion-title-ios{-webkit-transform-origin:inherit;transform-origin:inherit}/*!@:host-context([dir=rtl]):host(.title-large) .toolbar-title, :host-context([dir=rtl]).title-large .toolbar-title*/[dir=rtl].sc-ion-title-ios-h -no-combinator.title-large.sc-ion-title-ios-h .toolbar-title.sc-ion-title-ios,[dir=rtl] .sc-ion-title-ios-h -no-combinator.title-large.sc-ion-title-ios-h .toolbar-title.sc-ion-title-ios,[dir=rtl].title-large.sc-ion-title-ios-h .toolbar-title.sc-ion-title-ios,[dir=rtl] .title-large.sc-ion-title-ios-h .toolbar-title.sc-ion-title-ios{-webkit-transform-origin:calc(100% - inherit);transform-origin:calc(100% - inherit)}@supports selector(:dir(rtl)){/*!@:host(.title-large) .toolbar-title:dir(rtl)*/.title-large.sc-ion-title-ios-h .toolbar-title.sc-ion-title-ios:dir(rtl){-webkit-transform-origin:calc(100% - inherit);transform-origin:calc(100% - inherit)}}";
34667
+ const titleIosCss = "/*!@:host*/.sc-ion-title-ios-h{--color:initial;display:-ms-flexbox;display:flex;-ms-flex:1;flex:1;-ms-flex-align:center;align-items:center;-webkit-transform:translateZ(0);transform:translateZ(0);color:var(--color)}/*!@:host(.ion-color)*/.ion-color.sc-ion-title-ios-h{color:var(--ion-color-base)}/*!@.toolbar-title*/.toolbar-title.sc-ion-title-ios{display:block;width:100%;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;pointer-events:auto}/*!@:host(.title-small) .toolbar-title*/.title-small.sc-ion-title-ios-h .toolbar-title.sc-ion-title-ios{white-space:normal}/*!@:host*/.sc-ion-title-ios-h{top:0;-webkit-padding-start:90px;padding-inline-start:90px;-webkit-padding-end:90px;padding-inline-end:90px;padding-top:var(--padding-top);padding-bottom:var(--padding-bottom);position:absolute;width:100%;height:100%;-webkit-transform:translateZ(0);transform:translateZ(0);font-size:min(1.0625rem, 20.4px);font-weight:600;text-align:center;-webkit-box-sizing:border-box;box-sizing:border-box;pointer-events:none}@supports (inset-inline-start: 0){/*!@:host*/.sc-ion-title-ios-h{inset-inline-start:0}}@supports not (inset-inline-start: 0){/*!@:host*/.sc-ion-title-ios-h{left:0}/*!@:host-context([dir=rtl])*/[dir=rtl].sc-ion-title-ios-h,[dir=rtl] .sc-ion-title-ios-h{left:unset;right:unset;right:0}/*!@@supports selector(:dir(rtl))*/@supports .sc-ion-title-ios selector(.sc-ion-title-ios:dir(rtl)){.sc-ion-title-ios-h:dir(rtl){left:unset;right:unset;right:0}}}/*!@:host(.title-small)*/.title-small.sc-ion-title-ios-h{-webkit-padding-start:9px;padding-inline-start:9px;-webkit-padding-end:9px;padding-inline-end:9px;padding-top:6px;padding-bottom:16px;position:relative;font-size:min(0.8125rem, 23.4px);font-weight:normal}/*!@:host(.title-large)*/.title-large.sc-ion-title-ios-h{-webkit-padding-start:12px;padding-inline-start:12px;-webkit-padding-end:12px;padding-inline-end:12px;padding-top:2px;padding-bottom:4px;-webkit-transform-origin:left center;transform-origin:left center;position:static;-ms-flex-align:end;align-items:flex-end;min-width:100%;font-size:min(2.125rem, 61.2px);font-weight:700;text-align:start}/*!@:host(.title-large.title-rtl)*/.title-large.title-rtl.sc-ion-title-ios-h{-webkit-transform-origin:right center;transform-origin:right center}/*!@:host(.title-large.ion-cloned-element)*/.title-large.ion-cloned-element.sc-ion-title-ios-h{--color:var(--ion-text-color, #000);font-family:var(--ion-font-family)}/*!@:host(.title-large) .toolbar-title*/.title-large.sc-ion-title-ios-h .toolbar-title.sc-ion-title-ios{-webkit-transform-origin:inherit;transform-origin:inherit;width:auto}/*!@:host-context([dir=rtl]):host(.title-large) .toolbar-title, :host-context([dir=rtl]).title-large .toolbar-title*/[dir=rtl].sc-ion-title-ios-h -no-combinator.title-large.sc-ion-title-ios-h .toolbar-title.sc-ion-title-ios,[dir=rtl] .sc-ion-title-ios-h -no-combinator.title-large.sc-ion-title-ios-h .toolbar-title.sc-ion-title-ios,[dir=rtl].title-large.sc-ion-title-ios-h .toolbar-title.sc-ion-title-ios,[dir=rtl] .title-large.sc-ion-title-ios-h .toolbar-title.sc-ion-title-ios{-webkit-transform-origin:calc(100% - inherit);transform-origin:calc(100% - inherit)}@supports selector(:dir(rtl)){/*!@:host(.title-large) .toolbar-title:dir(rtl)*/.title-large.sc-ion-title-ios-h .toolbar-title.sc-ion-title-ios:dir(rtl){-webkit-transform-origin:calc(100% - inherit);transform-origin:calc(100% - inherit)}}";
34668
34668
 
34669
34669
  const titleMdCss = "/*!@:host*/.sc-ion-title-md-h{--color:initial;display:-ms-flexbox;display:flex;-ms-flex:1;flex:1;-ms-flex-align:center;align-items:center;-webkit-transform:translateZ(0);transform:translateZ(0);color:var(--color)}/*!@:host(.ion-color)*/.ion-color.sc-ion-title-md-h{color:var(--ion-color-base)}/*!@.toolbar-title*/.toolbar-title.sc-ion-title-md{display:block;width:100%;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;pointer-events:auto}/*!@:host(.title-small) .toolbar-title*/.title-small.sc-ion-title-md-h .toolbar-title.sc-ion-title-md{white-space:normal}/*!@:host*/.sc-ion-title-md-h{-webkit-padding-start:20px;padding-inline-start:20px;-webkit-padding-end:20px;padding-inline-end:20px;padding-top:0;padding-bottom:0;font-size:1.25rem;font-weight:500;letter-spacing:0.0125em}/*!@:host(.title-small)*/.title-small.sc-ion-title-md-h{width:100%;height:100%;font-size:0.9375rem;font-weight:normal}";
34670
34670
 
@@ -34866,60 +34866,134 @@ const createLargeTitleTransition = (rootAnimation, rtl, backDirection, enteringE
34866
34866
  if (shouldAnimationForward) {
34867
34867
  const leavingLargeTitleBox = leavingLargeTitle.getBoundingClientRect();
34868
34868
  const enteringBackButtonBox = enteringBackButton.getBoundingClientRect();
34869
- animateLargeTitle(rootAnimation, rtl, backDirection, leavingLargeTitle, leavingLargeTitleBox, enteringBackButtonBox);
34870
- animateBackButton(rootAnimation, rtl, backDirection, enteringBackButton, leavingLargeTitleBox, enteringBackButtonBox);
34869
+ const enteringBackButtonTextEl = shadow(enteringBackButton).querySelector('.button-text');
34870
+ const enteringBackButtonTextBox = enteringBackButtonTextEl.getBoundingClientRect();
34871
+ const leavingLargeTitleTextEl = shadow(leavingLargeTitle).querySelector('.toolbar-title');
34872
+ const leavingLargeTitleTextBox = leavingLargeTitleTextEl.getBoundingClientRect();
34873
+ animateLargeTitle(rootAnimation, rtl, backDirection, leavingLargeTitle, leavingLargeTitleBox, leavingLargeTitleTextBox, enteringBackButtonTextEl, enteringBackButtonTextBox);
34874
+ animateBackButton(rootAnimation, rtl, backDirection, enteringBackButton, enteringBackButtonBox, enteringBackButtonTextEl, enteringBackButtonTextBox, leavingLargeTitle, leavingLargeTitleTextBox);
34871
34875
  }
34872
34876
  else if (shouldAnimationBackward) {
34873
34877
  const enteringLargeTitleBox = enteringLargeTitle.getBoundingClientRect();
34874
34878
  const leavingBackButtonBox = leavingBackButton.getBoundingClientRect();
34875
- animateLargeTitle(rootAnimation, rtl, backDirection, enteringLargeTitle, enteringLargeTitleBox, leavingBackButtonBox);
34876
- animateBackButton(rootAnimation, rtl, backDirection, leavingBackButton, enteringLargeTitleBox, leavingBackButtonBox);
34879
+ const leavingBackButtonTextEl = shadow(leavingBackButton).querySelector('.button-text');
34880
+ const leavingBackButtonTextBox = leavingBackButtonTextEl.getBoundingClientRect();
34881
+ const enteringLargeTitleTextEl = shadow(enteringLargeTitle).querySelector('.toolbar-title');
34882
+ const enteringLargeTitleTextBox = enteringLargeTitleTextEl.getBoundingClientRect();
34883
+ animateLargeTitle(rootAnimation, rtl, backDirection, enteringLargeTitle, enteringLargeTitleBox, enteringLargeTitleTextBox, leavingBackButtonTextEl, leavingBackButtonTextBox);
34884
+ animateBackButton(rootAnimation, rtl, backDirection, leavingBackButton, leavingBackButtonBox, leavingBackButtonTextEl, leavingBackButtonTextBox, enteringLargeTitle, enteringLargeTitleTextBox);
34877
34885
  }
34878
34886
  return {
34879
34887
  forward: shouldAnimationForward,
34880
34888
  backward: shouldAnimationBackward,
34881
34889
  };
34882
34890
  };
34883
- const animateBackButton = (rootAnimation, rtl, backDirection, backButtonEl, largeTitleBox, backButtonBox) => {
34891
+ const animateBackButton = (rootAnimation, rtl, backDirection, backButtonEl, backButtonBox, backButtonTextEl, backButtonTextBox, largeTitleEl, largeTitleTextBox) => {
34892
+ var _a, _b;
34884
34893
  const BACK_BUTTON_START_OFFSET = rtl ? `calc(100% - ${backButtonBox.right + 4}px)` : `${backButtonBox.left - 4}px`;
34885
- const START_TEXT_TRANSLATE = rtl ? '7px' : '-7px';
34886
- const END_TEXT_TRANSLATE = rtl ? '-4px' : '4px';
34887
- const ICON_TRANSLATE = rtl ? '-4px' : '4px';
34888
34894
  const TEXT_ORIGIN_X = rtl ? 'right' : 'left';
34889
34895
  const ICON_ORIGIN_X = rtl ? 'left' : 'right';
34896
+ const CONTAINER_ORIGIN_X = rtl ? 'right' : 'left';
34897
+ /**
34898
+ * When the title and back button texts match
34899
+ * then they should overlap during the page transition.
34900
+ * If the texts do not match up then the back button text scale adjusts
34901
+ * to not perfectly match the large title text otherwise the
34902
+ * proportions will be incorrect.
34903
+ * When the texts match we scale both the width and height to account for
34904
+ * font weight differences between the title and back button.
34905
+ */
34906
+ const doTitleAndButtonTextsMatch = ((_a = backButtonTextEl.textContent) === null || _a === void 0 ? void 0 : _a.trim()) === ((_b = largeTitleEl.textContent) === null || _b === void 0 ? void 0 : _b.trim());
34907
+ const WIDTH_SCALE = largeTitleTextBox.width / backButtonTextBox.width;
34908
+ /**
34909
+ * We subtract an offset to account for slight sizing/padding
34910
+ * differences between the title and the back button.
34911
+ */
34912
+ const HEIGHT_SCALE = (largeTitleTextBox.height - LARGE_TITLE_SIZE_OFFSET) / backButtonTextBox.height;
34913
+ const TEXT_START_SCALE = doTitleAndButtonTextsMatch
34914
+ ? `scale(${WIDTH_SCALE}, ${HEIGHT_SCALE})`
34915
+ : `scale(${HEIGHT_SCALE})`;
34916
+ const TEXT_END_SCALE = 'scale(1)';
34917
+ const backButtonIconEl = shadow(backButtonEl).querySelector('ion-icon');
34918
+ const backButtonIconBox = backButtonIconEl.getBoundingClientRect();
34919
+ /**
34920
+ * We need to offset the container by the icon dimensions
34921
+ * so that the back button text aligns with the large title
34922
+ * text. Otherwise, the back button icon will align with the
34923
+ * large title text but the back button text will not.
34924
+ */
34925
+ const CONTAINER_START_TRANSLATE_X = rtl
34926
+ ? `${backButtonIconBox.width / 2 - (backButtonIconBox.right - backButtonBox.right)}px`
34927
+ : `${backButtonBox.left - backButtonIconBox.width / 2}px`;
34928
+ const CONTAINER_END_TRANSLATE_X = rtl ? `-${window.innerWidth - backButtonBox.right}px` : `${backButtonBox.left}px`;
34929
+ /**
34930
+ * Back button container should be
34931
+ * aligned to the top of the title container
34932
+ * so the texts overlap as the back button
34933
+ * text begins to fade in.
34934
+ */
34935
+ const CONTAINER_START_TRANSLATE_Y = `${largeTitleTextBox.top}px`;
34936
+ /**
34937
+ * The cloned back button should align exactly with the
34938
+ * real back button on the entering page otherwise there will
34939
+ * be a layout shift.
34940
+ */
34941
+ const CONTAINER_END_TRANSLATE_Y = `${backButtonBox.top}px`;
34942
+ /**
34943
+ * In the forward direction, the cloned back button
34944
+ * container should translate from over the large title
34945
+ * to over the back button. In the backward direction,
34946
+ * it should translate from over the back button to over
34947
+ * the large title.
34948
+ */
34949
+ const FORWARD_CONTAINER_KEYFRAMES = [
34950
+ { offset: 0, transform: `translate3d(${CONTAINER_START_TRANSLATE_X}, ${CONTAINER_START_TRANSLATE_Y}, 0)` },
34951
+ { offset: 1, transform: `translate3d(${CONTAINER_END_TRANSLATE_X}, ${CONTAINER_END_TRANSLATE_Y}, 0)` },
34952
+ ];
34953
+ const BACKWARD_CONTAINER_KEYFRAMES = [
34954
+ { offset: 0, transform: `translate3d(${CONTAINER_END_TRANSLATE_X}, ${CONTAINER_END_TRANSLATE_Y}, 0)` },
34955
+ { offset: 1, transform: `translate3d(${CONTAINER_START_TRANSLATE_X}, ${CONTAINER_START_TRANSLATE_Y}, 0)` },
34956
+ ];
34957
+ const CONTAINER_KEYFRAMES = backDirection ? BACKWARD_CONTAINER_KEYFRAMES : FORWARD_CONTAINER_KEYFRAMES;
34958
+ /**
34959
+ * In the forward direction, the text in the cloned back button
34960
+ * should start to be (roughly) the size of the large title
34961
+ * and then scale down to be the size of the actual back button.
34962
+ * The text should also translate, but that translate is handled
34963
+ * by the container keyframes.
34964
+ */
34890
34965
  const FORWARD_TEXT_KEYFRAMES = [
34891
- {
34892
- offset: 0,
34893
- opacity: 0,
34894
- transform: `translate3d(${START_TEXT_TRANSLATE}, ${largeTitleBox.top - 40}px, 0) scale(2.1)`,
34895
- },
34896
- { offset: 1, opacity: 1, transform: `translate3d(${END_TEXT_TRANSLATE}, ${backButtonBox.top - 46}px, 0) scale(1)` },
34966
+ { offset: 0, opacity: 0, transform: TEXT_START_SCALE },
34967
+ { offset: 1, opacity: 1, transform: TEXT_END_SCALE },
34897
34968
  ];
34898
34969
  const BACKWARD_TEXT_KEYFRAMES = [
34899
- { offset: 0, opacity: 1, transform: `translate3d(${END_TEXT_TRANSLATE}, ${backButtonBox.top - 46}px, 0) scale(1)` },
34900
- { offset: 0.6, opacity: 0 },
34901
- {
34902
- offset: 1,
34903
- opacity: 0,
34904
- transform: `translate3d(${START_TEXT_TRANSLATE}, ${largeTitleBox.top - 40}px, 0) scale(2.1)`,
34905
- },
34970
+ { offset: 0, opacity: 1, transform: TEXT_END_SCALE },
34971
+ { offset: 1, opacity: 0, transform: TEXT_START_SCALE },
34906
34972
  ];
34907
34973
  const TEXT_KEYFRAMES = backDirection ? BACKWARD_TEXT_KEYFRAMES : FORWARD_TEXT_KEYFRAMES;
34974
+ /**
34975
+ * The icon should scale in/out in the second
34976
+ * half of the animation. The icon should also
34977
+ * translate, but that translate is handled by the
34978
+ * container keyframes.
34979
+ */
34908
34980
  const FORWARD_ICON_KEYFRAMES = [
34909
- { offset: 0, opacity: 0, transform: `translate3d(${ICON_TRANSLATE}, ${backButtonBox.top - 41}px, 0) scale(0.6)` },
34910
- { offset: 1, opacity: 1, transform: `translate3d(${ICON_TRANSLATE}, ${backButtonBox.top - 46}px, 0) scale(1)` },
34981
+ { offset: 0, opacity: 0, transform: 'scale(0.6)' },
34982
+ { offset: 0.6, opacity: 0, transform: 'scale(0.6)' },
34983
+ { offset: 1, opacity: 1, transform: 'scale(1)' },
34911
34984
  ];
34912
34985
  const BACKWARD_ICON_KEYFRAMES = [
34913
- { offset: 0, opacity: 1, transform: `translate3d(${ICON_TRANSLATE}, ${backButtonBox.top - 46}px, 0) scale(1)` },
34914
- { offset: 0.2, opacity: 0, transform: `translate3d(${ICON_TRANSLATE}, ${backButtonBox.top - 41}px, 0) scale(0.6)` },
34915
- { offset: 1, opacity: 0, transform: `translate3d(${ICON_TRANSLATE}, ${backButtonBox.top - 41}px, 0) scale(0.6)` },
34986
+ { offset: 0, opacity: 1, transform: 'scale(1)' },
34987
+ { offset: 0.2, opacity: 0, transform: 'scale(0.6)' },
34988
+ { offset: 1, opacity: 0, transform: 'scale(0.6)' },
34916
34989
  ];
34917
34990
  const ICON_KEYFRAMES = backDirection ? BACKWARD_ICON_KEYFRAMES : FORWARD_ICON_KEYFRAMES;
34918
34991
  const enteringBackButtonTextAnimation = createAnimation();
34919
34992
  const enteringBackButtonIconAnimation = createAnimation();
34993
+ const enteringBackButtonAnimation = createAnimation();
34920
34994
  const clonedBackButtonEl = getClonedElement('ion-back-button');
34921
- const backButtonTextEl = shadow(clonedBackButtonEl).querySelector('.button-text');
34922
- const backButtonIconEl = shadow(clonedBackButtonEl).querySelector('ion-icon');
34995
+ const clonedBackButtonTextEl = shadow(clonedBackButtonEl).querySelector('.button-text');
34996
+ const clonedBackButtonIconEl = shadow(clonedBackButtonEl).querySelector('ion-icon');
34923
34997
  clonedBackButtonEl.text = backButtonEl.text;
34924
34998
  clonedBackButtonEl.mode = backButtonEl.mode;
34925
34999
  clonedBackButtonEl.icon = backButtonEl.icon;
@@ -34927,11 +35001,19 @@ const animateBackButton = (rootAnimation, rtl, backDirection, backButtonEl, larg
34927
35001
  clonedBackButtonEl.disabled = backButtonEl.disabled;
34928
35002
  clonedBackButtonEl.style.setProperty('display', 'block');
34929
35003
  clonedBackButtonEl.style.setProperty('position', 'fixed');
34930
- enteringBackButtonIconAnimation.addElement(backButtonIconEl);
34931
- enteringBackButtonTextAnimation.addElement(backButtonTextEl);
35004
+ enteringBackButtonIconAnimation.addElement(clonedBackButtonIconEl);
35005
+ enteringBackButtonTextAnimation.addElement(clonedBackButtonTextEl);
35006
+ enteringBackButtonAnimation.addElement(clonedBackButtonEl);
35007
+ enteringBackButtonAnimation
35008
+ .beforeStyles({
35009
+ position: 'absolute',
35010
+ top: '0px',
35011
+ [CONTAINER_ORIGIN_X]: '0px',
35012
+ })
35013
+ .keyframes(CONTAINER_KEYFRAMES);
34932
35014
  enteringBackButtonTextAnimation
34933
35015
  .beforeStyles({
34934
- 'transform-origin': `${TEXT_ORIGIN_X} center`,
35016
+ 'transform-origin': `${TEXT_ORIGIN_X} top`,
34935
35017
  })
34936
35018
  .beforeAddWrite(() => {
34937
35019
  backButtonEl.style.setProperty('display', 'none');
@@ -34948,21 +35030,91 @@ const animateBackButton = (rootAnimation, rtl, backDirection, backButtonEl, larg
34948
35030
  'transform-origin': `${ICON_ORIGIN_X} center`,
34949
35031
  })
34950
35032
  .keyframes(ICON_KEYFRAMES);
34951
- rootAnimation.addAnimation([enteringBackButtonTextAnimation, enteringBackButtonIconAnimation]);
35033
+ rootAnimation.addAnimation([
35034
+ enteringBackButtonTextAnimation,
35035
+ enteringBackButtonIconAnimation,
35036
+ enteringBackButtonAnimation,
35037
+ ]);
34952
35038
  };
34953
- const animateLargeTitle = (rootAnimation, rtl, backDirection, largeTitleEl, largeTitleBox, backButtonBox) => {
34954
- const TITLE_START_OFFSET = rtl ? `calc(100% - ${largeTitleBox.right}px)` : `${largeTitleBox.left}px`;
34955
- const START_TRANSLATE = rtl ? '-18px' : '18px';
35039
+ const animateLargeTitle = (rootAnimation, rtl, backDirection, largeTitleEl, largeTitleBox, largeTitleTextBox, backButtonTextEl, backButtonTextBox) => {
35040
+ var _a, _b;
35041
+ /**
35042
+ * The horizontal transform origin for the large title
35043
+ */
34956
35044
  const ORIGIN_X = rtl ? 'right' : 'left';
35045
+ const TITLE_START_OFFSET = rtl ? `calc(100% - ${largeTitleBox.right}px)` : `${largeTitleBox.left}px`;
35046
+ /**
35047
+ * The cloned large should align exactly with the
35048
+ * real large title on the leaving page otherwise there will
35049
+ * be a layout shift.
35050
+ */
35051
+ const START_TRANSLATE_X = '0px';
35052
+ const START_TRANSLATE_Y = `${largeTitleBox.top}px`;
35053
+ /**
35054
+ * How much to offset the large title translation by.
35055
+ * This accounts for differences in sizing between the large
35056
+ * title and the back button due to padding and font weight.
35057
+ */
35058
+ const LARGE_TITLE_TRANSLATION_OFFSET = 8;
35059
+ /**
35060
+ * The scaled title should (roughly) overlap the back button.
35061
+ * This ensures that the back button and title overlap during
35062
+ * the animation. Note that since both elements either fade in
35063
+ * or fade out over the course of the animation, neither element
35064
+ * will be fully visible on top of the other. As a result, the overlap
35065
+ * does not need to be perfect, so approximate values are acceptable here.
35066
+ */
35067
+ const END_TRANSLATE_X = rtl
35068
+ ? `-${window.innerWidth - backButtonTextBox.right - LARGE_TITLE_TRANSLATION_OFFSET}px`
35069
+ : `${backButtonTextBox.x - LARGE_TITLE_TRANSLATION_OFFSET}px`;
35070
+ /**
35071
+ * The top of the scaled large title
35072
+ * should match with the top of the
35073
+ * back button text element.
35074
+ * We subtract 2px to account for the top padding
35075
+ * on the large title element.
35076
+ */
35077
+ const LARGE_TITLE_TOP_PADDING = 2;
35078
+ const END_TRANSLATE_Y = `${backButtonTextBox.y - LARGE_TITLE_TOP_PADDING}px`;
35079
+ /**
35080
+ * In the forward direction, the large title should start at its
35081
+ * normal size and then scale down to be (roughly) the size of the
35082
+ * back button on the other view. In the backward direction, the
35083
+ * large title should start at (roughly) the size of the back button
35084
+ * and then scale up to its original size.
35085
+ *
35086
+ * Note that since both elements either fade in
35087
+ * or fade out over the course of the animation, neither element
35088
+ * will be fully visible on top of the other. As a result, the overlap
35089
+ * does not need to be perfect, so approximate values are acceptable here.
35090
+ */
35091
+ /**
35092
+ * When the title and back button texts match
35093
+ * then they should overlap during the page transition.
35094
+ * If the texts do not match up then the large title text scale adjusts
35095
+ * to not perfectly match the back button text otherwise the
35096
+ * proportions will be incorrect.
35097
+ * When the texts match we scale both the width and height to account for
35098
+ * font weight differences between the title and back button.
35099
+ */
35100
+ const doTitleAndButtonTextsMatch = ((_a = backButtonTextEl.textContent) === null || _a === void 0 ? void 0 : _a.trim()) === ((_b = largeTitleEl.textContent) === null || _b === void 0 ? void 0 : _b.trim());
35101
+ const WIDTH_SCALE = backButtonTextBox.width / largeTitleTextBox.width;
35102
+ const HEIGHT_SCALE = backButtonTextBox.height / (largeTitleTextBox.height - LARGE_TITLE_SIZE_OFFSET);
35103
+ const START_SCALE = 'scale(1)';
35104
+ const END_SCALE = doTitleAndButtonTextsMatch ? `scale(${WIDTH_SCALE}, ${HEIGHT_SCALE})` : `scale(${HEIGHT_SCALE})`;
34957
35105
  const BACKWARDS_KEYFRAMES = [
34958
- { offset: 0, opacity: 0, transform: `translate3d(${START_TRANSLATE}, ${backButtonBox.top - 4}px, 0) scale(0.49)` },
35106
+ { offset: 0, opacity: 0, transform: `translate3d(${END_TRANSLATE_X}, ${END_TRANSLATE_Y}, 0) ${END_SCALE}` },
34959
35107
  { offset: 0.1, opacity: 0 },
34960
- { offset: 1, opacity: 1, transform: `translate3d(0, ${largeTitleBox.top + 2}px, 0) scale(1)` },
35108
+ { offset: 1, opacity: 1, transform: `translate3d(${START_TRANSLATE_X}, ${START_TRANSLATE_Y}, 0) ${START_SCALE}` },
34961
35109
  ];
34962
35110
  const FORWARDS_KEYFRAMES = [
34963
- { offset: 0, opacity: 0.99, transform: `translate3d(0, ${largeTitleBox.top + 2}px, 0) scale(1)` },
35111
+ {
35112
+ offset: 0,
35113
+ opacity: 0.99,
35114
+ transform: `translate3d(${START_TRANSLATE_X}, ${START_TRANSLATE_Y}, 0) ${START_SCALE}`,
35115
+ },
34964
35116
  { offset: 0.6, opacity: 0 },
34965
- { offset: 1, opacity: 0, transform: `translate3d(${START_TRANSLATE}, ${backButtonBox.top - 4}px, 0) scale(0.5)` },
35117
+ { offset: 1, opacity: 0, transform: `translate3d(${END_TRANSLATE_X}, ${END_TRANSLATE_Y}, 0) ${END_SCALE}` },
34966
35118
  ];
34967
35119
  const KEYFRAMES = backDirection ? BACKWARDS_KEYFRAMES : FORWARDS_KEYFRAMES;
34968
35120
  const clonedTitleEl = getClonedElement('ion-title');
@@ -34973,8 +35125,14 @@ const animateLargeTitle = (rootAnimation, rtl, backDirection, largeTitleEl, larg
34973
35125
  clonedLargeTitleAnimation.addElement(clonedTitleEl);
34974
35126
  clonedLargeTitleAnimation
34975
35127
  .beforeStyles({
34976
- 'transform-origin': `${ORIGIN_X} center`,
34977
- height: '46px',
35128
+ 'transform-origin': `${ORIGIN_X} top`,
35129
+ /**
35130
+ * Since font size changes will cause
35131
+ * the dimension of the large title to change
35132
+ * we need to set the cloned title height
35133
+ * equal to that of the original large title height.
35134
+ */
35135
+ height: `${largeTitleBox.height}px`,
34978
35136
  display: '',
34979
35137
  position: 'relative',
34980
35138
  [ORIGIN_X]: TITLE_START_OFFSET,
@@ -35287,6 +35445,16 @@ const iosTransitionAnimation = (navEl, opts) => {
35287
35445
  throw err;
35288
35446
  }
35289
35447
  };
35448
+ /**
35449
+ * The scale of the back button during the animation
35450
+ * is computed based on the scale of the large title
35451
+ * and vice versa. However, we need to account for slight
35452
+ * variations in the size of the large title due to
35453
+ * padding and font weight. This value should be used to subtract
35454
+ * a small amount from the large title height when computing scales
35455
+ * to get more accurate scale results.
35456
+ */
35457
+ const LARGE_TITLE_SIZE_OFFSET = 10;
35290
35458
 
35291
35459
  var ios_transition = /*#__PURE__*/Object.freeze({
35292
35460
  __proto__: null,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ionic/core",
3
- "version": "7.5.1-dev.11697212309.1448948d",
3
+ "version": "7.5.1-dev.11697219867.13d96ccb",
4
4
  "description": "Base components for Ionic",
5
5
  "keywords": [
6
6
  "ionic",
@@ -44,7 +44,7 @@
44
44
  "@ionic/eslint-config": "^0.3.0",
45
45
  "@ionic/prettier-config": "^2.0.0",
46
46
  "@jest/core": "^27.5.1",
47
- "@playwright/test": "^1.38.1",
47
+ "@playwright/test": "^1.39.0",
48
48
  "@rollup/plugin-node-resolve": "^8.4.0",
49
49
  "@rollup/plugin-virtual": "^2.0.3",
50
50
  "@stencil/angular-output-target": "^0.8.2",
@@ -1,4 +0,0 @@
1
- /*!
2
- * (C) Ionic http://ionicframework.com - MIT License
3
- */
4
- import{c as createAnimation}from"./animation-92066c62.js";import{g as getIonPageElement}from"./index-7d2b2808.js";import"./index-7a14ecec.js";import"./helpers-3379ba19.js";import"./index-b49b173c.js";var DURATION=540;var getClonedElement=function(t){return document.querySelector("".concat(t,".ion-cloned-element"))};var shadow=function(t){return t.shadowRoot||t};var getLargeTitle=function(t){var e=t.tagName==="ION-TABS"?t:t.querySelector("ion-tabs");var a="ion-content ion-header:not(.header-collapse-condense-inactive) ion-title.title-large";if(e!=null){var o=e.querySelector("ion-tab:not(.tab-hidden), .ion-page:not(.ion-page-hidden)");return o!=null?o.querySelector(a):null}return t.querySelector(a)};var getBackButton=function(t,e){var a=t.tagName==="ION-TABS"?t:t.querySelector("ion-tabs");var o=[];if(a!=null){var r=a.querySelector("ion-tab:not(.tab-hidden), .ion-page:not(.ion-page-hidden)");if(r!=null){o=r.querySelectorAll("ion-buttons")}}else{o=t.querySelectorAll("ion-buttons")}for(var n=0,i=o;n<i.length;n++){var l=i[n];var c=l.closest("ion-header");var s=c&&!c.classList.contains("header-collapse-condense-inactive");var f=l.querySelector("ion-back-button");var d=l.classList.contains("buttons-collapse");var m=l.slot==="start"||l.slot==="";if(f!==null&&m&&(d&&s&&e||!d)){return f}}return null};var createLargeTitleTransition=function(t,e,a,o,r){var n=getBackButton(o,a);var i=getLargeTitle(r);var l=getLargeTitle(o);var c=getBackButton(r,a);var s=n!==null&&i!==null&&!a;var f=l!==null&&c!==null&&a;if(s){var d=i.getBoundingClientRect();var m=n.getBoundingClientRect();animateLargeTitle(t,e,a,i,d,m);animateBackButton(t,e,a,n,d,m)}else if(f){var v=l.getBoundingClientRect();var p=c.getBoundingClientRect();animateLargeTitle(t,e,a,l,v,p);animateBackButton(t,e,a,c,v,p)}return{forward:s,backward:f}};var animateBackButton=function(t,e,a,o,r,n){var i=e?"calc(100% - ".concat(n.right+4,"px)"):"".concat(n.left-4,"px");var l=e?"7px":"-7px";var c=e?"-4px":"4px";var s=e?"-4px":"4px";var f=e?"right":"left";var d=e?"left":"right";var m=[{offset:0,opacity:0,transform:"translate3d(".concat(l,", ").concat(r.top-40,"px, 0) scale(2.1)")},{offset:1,opacity:1,transform:"translate3d(".concat(c,", ").concat(n.top-46,"px, 0) scale(1)")}];var v=[{offset:0,opacity:1,transform:"translate3d(".concat(c,", ").concat(n.top-46,"px, 0) scale(1)")},{offset:.6,opacity:0},{offset:1,opacity:0,transform:"translate3d(".concat(l,", ").concat(r.top-40,"px, 0) scale(2.1)")}];var p=a?v:m;var u=[{offset:0,opacity:0,transform:"translate3d(".concat(s,", ").concat(n.top-41,"px, 0) scale(0.6)")},{offset:1,opacity:1,transform:"translate3d(".concat(s,", ").concat(n.top-46,"px, 0) scale(1)")}];var y=[{offset:0,opacity:1,transform:"translate3d(".concat(s,", ").concat(n.top-46,"px, 0) scale(1)")},{offset:.2,opacity:0,transform:"translate3d(".concat(s,", ").concat(n.top-41,"px, 0) scale(0.6)")},{offset:1,opacity:0,transform:"translate3d(".concat(s,", ").concat(n.top-41,"px, 0) scale(0.6)")}];var b=a?y:u;var g=createAnimation();var A=createAnimation();var S=getClonedElement("ion-back-button");var T=shadow(S).querySelector(".button-text");var h=shadow(S).querySelector("ion-icon");S.text=o.text;S.mode=o.mode;S.icon=o.icon;S.color=o.color;S.disabled=o.disabled;S.style.setProperty("display","block");S.style.setProperty("position","fixed");A.addElement(h);g.addElement(T);g.beforeStyles({"transform-origin":"".concat(f," center")}).beforeAddWrite((function(){o.style.setProperty("display","none");S.style.setProperty(f,i)})).afterAddWrite((function(){o.style.setProperty("display","");S.style.setProperty("display","none");S.style.removeProperty(f)})).keyframes(p);A.beforeStyles({"transform-origin":"".concat(d," center")}).keyframes(b);t.addAnimation([g,A])};var animateLargeTitle=function(t,e,a,o,r,n){var i;var l=e?"calc(100% - ".concat(r.right,"px)"):"".concat(r.left,"px");var c=e?"-18px":"18px";var s=e?"right":"left";var f=[{offset:0,opacity:0,transform:"translate3d(".concat(c,", ").concat(n.top-4,"px, 0) scale(0.49)")},{offset:.1,opacity:0},{offset:1,opacity:1,transform:"translate3d(0, ".concat(r.top+2,"px, 0) scale(1)")}];var d=[{offset:0,opacity:.99,transform:"translate3d(0, ".concat(r.top+2,"px, 0) scale(1)")},{offset:.6,opacity:0},{offset:1,opacity:0,transform:"translate3d(".concat(c,", ").concat(n.top-4,"px, 0) scale(0.5)")}];var m=a?f:d;var v=getClonedElement("ion-title");var p=createAnimation();v.innerText=o.innerText;v.size=o.size;v.color=o.color;p.addElement(v);p.beforeStyles((i={"transform-origin":"".concat(s," center"),height:"46px",display:"",position:"relative"},i[s]=l,i)).beforeAddWrite((function(){o.style.setProperty("opacity","0")})).afterAddWrite((function(){o.style.setProperty("opacity","");v.style.setProperty("display","none")})).keyframes(m);t.addAnimation(p)};var iosTransitionAnimation=function(t,e){var a;try{var o="cubic-bezier(0.32,0.72,0,1)";var r="opacity";var n="transform";var i="0%";var l=.8;var c=t.ownerDocument.dir==="rtl";var s=c?"-99.5%":"99.5%";var f=c?"33%":"-33%";var d=e.enteringEl;var m=e.leavingEl;var v=e.direction==="back";var p=d.querySelector(":scope > ion-content");var u=d.querySelectorAll(":scope > ion-header > *:not(ion-toolbar), :scope > ion-footer > *");var y=d.querySelectorAll(":scope > ion-header > ion-toolbar");var b=createAnimation();var g=createAnimation();b.addElement(d).duration(((a=e.duration)!==null&&a!==void 0?a:0)||DURATION).easing(e.easing||o).fill("both").beforeRemoveClass("ion-page-invisible");if(m&&t!==null&&t!==undefined){var A=createAnimation();A.addElement(t);b.addAnimation(A)}if(!p&&y.length===0&&u.length===0){g.addElement(d.querySelector(":scope > .ion-page, :scope > ion-nav, :scope > ion-tabs"))}else{g.addElement(p);g.addElement(u)}b.addAnimation(g);if(v){g.beforeClearStyles([r]).fromTo("transform","translateX(".concat(f,")"),"translateX(".concat(i,")")).fromTo(r,l,1)}else{g.beforeClearStyles([r]).fromTo("transform","translateX(".concat(s,")"),"translateX(".concat(i,")"))}if(p){var S=shadow(p).querySelector(".transition-effect");if(S){var T=S.querySelector(".transition-cover");var h=S.querySelector(".transition-shadow");var x=createAnimation();var E=createAnimation();var q=createAnimation();x.addElement(S).beforeStyles({opacity:"1",display:"block"}).afterStyles({opacity:"",display:""});E.addElement(T).beforeClearStyles([r]).fromTo(r,0,.1);q.addElement(h).beforeClearStyles([r]).fromTo(r,.03,.7);x.addAnimation([E,q]);g.addAnimation([x])}}var X=d.querySelector("ion-header.header-collapse-condense");var C=createLargeTitleTransition(b,c,v,d,m),k=C.forward,w=C.backward;y.forEach((function(t){var e=createAnimation();e.addElement(t);b.addAnimation(e);var a=createAnimation();a.addElement(t.querySelector("ion-title"));var o=createAnimation();var n=Array.from(t.querySelectorAll("ion-buttons,[menuToggle]"));var l=t.closest("ion-header");var d=l===null||l===void 0?void 0:l.classList.contains("header-collapse-condense-inactive");var m;if(v){m=n.filter((function(t){var e=t.classList.contains("buttons-collapse");return e&&!d||!e}))}else{m=n.filter((function(t){return!t.classList.contains("buttons-collapse")}))}o.addElement(m);var p=createAnimation();p.addElement(t.querySelectorAll(":scope > *:not(ion-title):not(ion-buttons):not([menuToggle])"));var u=createAnimation();u.addElement(shadow(t).querySelector(".toolbar-background"));var y=createAnimation();var g=t.querySelector("ion-back-button");if(g){y.addElement(g)}e.addAnimation([a,o,p,u,y]);o.fromTo(r,.01,1);p.fromTo(r,.01,1);if(v){if(!d){a.fromTo("transform","translateX(".concat(f,")"),"translateX(".concat(i,")")).fromTo(r,.01,1)}p.fromTo("transform","translateX(".concat(f,")"),"translateX(".concat(i,")"));y.fromTo(r,.01,1)}else{if(!X){a.fromTo("transform","translateX(".concat(s,")"),"translateX(".concat(i,")")).fromTo(r,.01,1)}p.fromTo("transform","translateX(".concat(s,")"),"translateX(".concat(i,")"));u.beforeClearStyles([r,"transform"]);var A=l===null||l===void 0?void 0:l.translucent;if(!A){u.fromTo(r,.01,"var(--opacity)")}else{u.fromTo("transform",c?"translateX(-100%)":"translateX(100%)","translateX(0px)")}if(!k){y.fromTo(r,.01,1)}if(g&&!k){var S=createAnimation();S.addElement(shadow(g).querySelector(".button-text")).fromTo("transform",c?"translateX(-100px)":"translateX(100px)","translateX(0px)");e.addAnimation(S)}}}));if(m){var B=createAnimation();var L=m.querySelector(":scope > ion-content");var P=m.querySelectorAll(":scope > ion-header > ion-toolbar");var R=m.querySelectorAll(":scope > ion-header > *:not(ion-toolbar), :scope > ion-footer > *");if(!L&&P.length===0&&R.length===0){B.addElement(m.querySelector(":scope > .ion-page, :scope > ion-nav, :scope > ion-tabs"))}else{B.addElement(L);B.addElement(R)}b.addAnimation(B);if(v){B.beforeClearStyles([r]).fromTo("transform","translateX(".concat(i,")"),c?"translateX(-100%)":"translateX(100%)");var I=getIonPageElement(m);b.afterAddWrite((function(){if(b.getDirection()==="normal"){I.style.setProperty("display","none")}}))}else{B.fromTo("transform","translateX(".concat(i,")"),"translateX(".concat(f,")")).fromTo(r,1,l)}if(L){var N=shadow(L).querySelector(".transition-effect");if(N){var j=N.querySelector(".transition-cover");var W=N.querySelector(".transition-shadow");var D=createAnimation();var O=createAnimation();var z=createAnimation();D.addElement(N).beforeStyles({opacity:"1",display:"block"}).afterStyles({opacity:"",display:""});O.addElement(j).beforeClearStyles([r]).fromTo(r,.1,0);z.addElement(W).beforeClearStyles([r]).fromTo(r,.7,.03);D.addAnimation([O,z]);B.addAnimation([D])}}P.forEach((function(t){var e=createAnimation();e.addElement(t);var a=createAnimation();a.addElement(t.querySelector("ion-title"));var o=createAnimation();var l=t.querySelectorAll("ion-buttons,[menuToggle]");var s=t.closest("ion-header");var d=s===null||s===void 0?void 0:s.classList.contains("header-collapse-condense-inactive");var m=Array.from(l).filter((function(t){var e=t.classList.contains("buttons-collapse");return e&&!d||!e}));o.addElement(m);var p=createAnimation();var u=t.querySelectorAll(":scope > *:not(ion-title):not(ion-buttons):not([menuToggle])");if(u.length>0){p.addElement(u)}var y=createAnimation();y.addElement(shadow(t).querySelector(".toolbar-background"));var g=createAnimation();var A=t.querySelector("ion-back-button");if(A){g.addElement(A)}e.addAnimation([a,o,p,g,y]);b.addAnimation(e);g.fromTo(r,.99,0);o.fromTo(r,.99,0);p.fromTo(r,.99,0);if(v){if(!d){a.fromTo("transform","translateX(".concat(i,")"),c?"translateX(-100%)":"translateX(100%)").fromTo(r,.99,0)}p.fromTo("transform","translateX(".concat(i,")"),c?"translateX(-100%)":"translateX(100%)");y.beforeClearStyles([r,"transform"]);var S=s===null||s===void 0?void 0:s.translucent;if(!S){y.fromTo(r,"var(--opacity)",0)}else{y.fromTo("transform","translateX(0px)",c?"translateX(-100%)":"translateX(100%)")}if(A&&!w){var T=createAnimation();T.addElement(shadow(A).querySelector(".button-text")).fromTo("transform","translateX(".concat(i,")"),"translateX(".concat((c?-124:124)+"px",")"));e.addAnimation(T)}}else{if(!d){a.fromTo("transform","translateX(".concat(i,")"),"translateX(".concat(f,")")).fromTo(r,.99,0).afterClearStyles([n,r])}p.fromTo("transform","translateX(".concat(i,")"),"translateX(".concat(f,")")).afterClearStyles([n,r]);g.afterClearStyles([r]);a.afterClearStyles([r]);o.afterClearStyles([r])}}))}return b}catch(t){throw t}};export{iosTransitionAnimation,shadow};
@@ -1,4 +0,0 @@
1
- /*!
2
- * (C) Ionic http://ionicframework.com - MIT License
3
- */
4
- import{c as t}from"./p-446230d7.js";import{g as o}from"./p-e2bb634f.js";import"./p-b347cfd1.js";import"./p-63eb0acd.js";import"./p-06ac429a.js";const n=t=>document.querySelector(`${t}.ion-cloned-element`),a=t=>t.shadowRoot||t,e=t=>{const o="ION-TABS"===t.tagName?t:t.querySelector("ion-tabs"),n="ion-content ion-header:not(.header-collapse-condense-inactive) ion-title.title-large";if(null!=o){const t=o.querySelector("ion-tab:not(.tab-hidden), .ion-page:not(.ion-page-hidden)");return null!=t?t.querySelector(n):null}return t.querySelector(n)},s=(t,o)=>{const n="ION-TABS"===t.tagName?t:t.querySelector("ion-tabs");let a=[];if(null!=n){const t=n.querySelector("ion-tab:not(.tab-hidden), .ion-page:not(.ion-page-hidden)");null!=t&&(a=t.querySelectorAll("ion-buttons"))}else a=t.querySelectorAll("ion-buttons");for(const t of a){const n=t.closest("ion-header"),a=n&&!n.classList.contains("header-collapse-condense-inactive"),e=t.querySelector("ion-back-button"),s=t.classList.contains("buttons-collapse");if(null!==e&&("start"===t.slot||""===t.slot)&&(s&&a&&o||!s))return e}return null},r=(o,e,s,r,i,l)=>{const c=e?`calc(100% - ${l.right+4}px)`:l.left-4+"px",p=e?"7px":"-7px",f=e?"-4px":"4px",d=e?"-4px":"4px",$=e?"right":"left",b=e?"left":"right",u=s?[{offset:0,opacity:1,transform:`translate3d(${f}, ${l.top-46}px, 0) scale(1)`},{offset:.6,opacity:0},{offset:1,opacity:0,transform:`translate3d(${p}, ${i.top-40}px, 0) scale(2.1)`}]:[{offset:0,opacity:0,transform:`translate3d(${p}, ${i.top-40}px, 0) scale(2.1)`},{offset:1,opacity:1,transform:`translate3d(${f}, ${l.top-46}px, 0) scale(1)`}],m=s?[{offset:0,opacity:1,transform:`translate3d(${d}, ${l.top-46}px, 0) scale(1)`},{offset:.2,opacity:0,transform:`translate3d(${d}, ${l.top-41}px, 0) scale(0.6)`},{offset:1,opacity:0,transform:`translate3d(${d}, ${l.top-41}px, 0) scale(0.6)`}]:[{offset:0,opacity:0,transform:`translate3d(${d}, ${l.top-41}px, 0) scale(0.6)`},{offset:1,opacity:1,transform:`translate3d(${d}, ${l.top-46}px, 0) scale(1)`}],y=t(),X=t(),x=n("ion-back-button"),h=a(x).querySelector(".button-text"),g=a(x).querySelector("ion-icon");x.text=r.text,x.mode=r.mode,x.icon=r.icon,x.color=r.color,x.disabled=r.disabled,x.style.setProperty("display","block"),x.style.setProperty("position","fixed"),X.addElement(g),y.addElement(h),y.beforeStyles({"transform-origin":`${$} center`}).beforeAddWrite((()=>{r.style.setProperty("display","none"),x.style.setProperty($,c)})).afterAddWrite((()=>{r.style.setProperty("display",""),x.style.setProperty("display","none"),x.style.removeProperty($)})).keyframes(u),X.beforeStyles({"transform-origin":`${b} center`}).keyframes(m),o.addAnimation([y,X])},i=(o,a,e,s,r,i)=>{const l=a?`calc(100% - ${r.right}px)`:`${r.left}px`,c=a?"-18px":"18px",p=a?"right":"left",f=e?[{offset:0,opacity:0,transform:`translate3d(${c}, ${i.top-4}px, 0) scale(0.49)`},{offset:.1,opacity:0},{offset:1,opacity:1,transform:`translate3d(0, ${r.top+2}px, 0) scale(1)`}]:[{offset:0,opacity:.99,transform:`translate3d(0, ${r.top+2}px, 0) scale(1)`},{offset:.6,opacity:0},{offset:1,opacity:0,transform:`translate3d(${c}, ${i.top-4}px, 0) scale(0.5)`}],d=n("ion-title"),$=t();d.innerText=s.innerText,d.size=s.size,d.color=s.color,$.addElement(d),$.beforeStyles({"transform-origin":`${p} center`,height:"46px",display:"",position:"relative",[p]:l}).beforeAddWrite((()=>{s.style.setProperty("opacity","0")})).afterAddWrite((()=>{s.style.setProperty("opacity",""),d.style.setProperty("display","none")})).keyframes(f),o.addAnimation($)},l=(n,l)=>{var c;try{const p="cubic-bezier(0.32,0.72,0,1)",f="opacity",d="transform",$="0%",b=.8,u="rtl"===n.ownerDocument.dir,m=u?"-99.5%":"99.5%",y=u?"33%":"-33%",X=l.enteringEl,x=l.leavingEl,h="back"===l.direction,g=X.querySelector(":scope > ion-content"),v=X.querySelectorAll(":scope > ion-header > *:not(ion-toolbar), :scope > ion-footer > *"),k=X.querySelectorAll(":scope > ion-header > ion-toolbar"),w=t(),T=t();if(w.addElement(X).duration((null!==(c=l.duration)&&void 0!==c?c:0)||540).easing(l.easing||p).fill("both").beforeRemoveClass("ion-page-invisible"),x&&null!=n){const o=t();o.addElement(n),w.addAnimation(o)}if(g||0!==k.length||0!==v.length?(T.addElement(g),T.addElement(v)):T.addElement(X.querySelector(":scope > .ion-page, :scope > ion-nav, :scope > ion-tabs")),w.addAnimation(T),h?T.beforeClearStyles([f]).fromTo("transform",`translateX(${y})`,`translateX(${$})`).fromTo(f,b,1):T.beforeClearStyles([f]).fromTo("transform",`translateX(${m})`,`translateX(${$})`),g){const o=a(g).querySelector(".transition-effect");if(o){const n=o.querySelector(".transition-cover"),a=o.querySelector(".transition-shadow"),e=t(),s=t(),r=t();e.addElement(o).beforeStyles({opacity:"1",display:"block"}).afterStyles({opacity:"",display:""}),s.addElement(n).beforeClearStyles([f]).fromTo(f,0,.1),r.addElement(a).beforeClearStyles([f]).fromTo(f,.03,.7),e.addAnimation([s,r]),T.addAnimation([e])}}const j=X.querySelector("ion-header.header-collapse-condense"),{forward:A,backward:B}=((t,o,n,a,l)=>{const c=s(a,n),p=e(l),f=e(a),d=s(l,n),$=null!==c&&null!==p&&!n,b=null!==f&&null!==d&&n;if($){const a=p.getBoundingClientRect(),e=c.getBoundingClientRect();i(t,o,n,p,a,e),r(t,o,n,c,a,e)}else if(b){const a=f.getBoundingClientRect(),e=d.getBoundingClientRect();i(t,o,n,f,a,e),r(t,o,n,d,a,e)}return{forward:$,backward:b}})(w,u,h,X,x);if(k.forEach((o=>{const n=t();n.addElement(o),w.addAnimation(n);const e=t();e.addElement(o.querySelector("ion-title"));const s=t(),r=Array.from(o.querySelectorAll("ion-buttons,[menuToggle]")),i=o.closest("ion-header"),l=null==i?void 0:i.classList.contains("header-collapse-condense-inactive");let c;c=r.filter(h?t=>{const o=t.classList.contains("buttons-collapse");return o&&!l||!o}:t=>!t.classList.contains("buttons-collapse")),s.addElement(c);const p=t();p.addElement(o.querySelectorAll(":scope > *:not(ion-title):not(ion-buttons):not([menuToggle])"));const d=t();d.addElement(a(o).querySelector(".toolbar-background"));const b=t(),X=o.querySelector("ion-back-button");if(X&&b.addElement(X),n.addAnimation([e,s,p,d,b]),s.fromTo(f,.01,1),p.fromTo(f,.01,1),h)l||e.fromTo("transform",`translateX(${y})`,`translateX(${$})`).fromTo(f,.01,1),p.fromTo("transform",`translateX(${y})`,`translateX(${$})`),b.fromTo(f,.01,1);else if(j||e.fromTo("transform",`translateX(${m})`,`translateX(${$})`).fromTo(f,.01,1),p.fromTo("transform",`translateX(${m})`,`translateX(${$})`),d.beforeClearStyles([f,"transform"]),(null==i?void 0:i.translucent)?d.fromTo("transform",u?"translateX(-100%)":"translateX(100%)","translateX(0px)"):d.fromTo(f,.01,"var(--opacity)"),A||b.fromTo(f,.01,1),X&&!A){const o=t();o.addElement(a(X).querySelector(".button-text")).fromTo("transform",u?"translateX(-100px)":"translateX(100px)","translateX(0px)"),n.addAnimation(o)}})),x){const n=t(),e=x.querySelector(":scope > ion-content"),s=x.querySelectorAll(":scope > ion-header > ion-toolbar"),r=x.querySelectorAll(":scope > ion-header > *:not(ion-toolbar), :scope > ion-footer > *");if(e||0!==s.length||0!==r.length?(n.addElement(e),n.addElement(r)):n.addElement(x.querySelector(":scope > .ion-page, :scope > ion-nav, :scope > ion-tabs")),w.addAnimation(n),h){n.beforeClearStyles([f]).fromTo("transform",`translateX(${$})`,u?"translateX(-100%)":"translateX(100%)");const t=o(x);w.afterAddWrite((()=>{"normal"===w.getDirection()&&t.style.setProperty("display","none")}))}else n.fromTo("transform",`translateX(${$})`,`translateX(${y})`).fromTo(f,1,b);if(e){const o=a(e).querySelector(".transition-effect");if(o){const a=o.querySelector(".transition-cover"),e=o.querySelector(".transition-shadow"),s=t(),r=t(),i=t();s.addElement(o).beforeStyles({opacity:"1",display:"block"}).afterStyles({opacity:"",display:""}),r.addElement(a).beforeClearStyles([f]).fromTo(f,.1,0),i.addElement(e).beforeClearStyles([f]).fromTo(f,.7,.03),s.addAnimation([r,i]),n.addAnimation([s])}}s.forEach((o=>{const n=t();n.addElement(o);const e=t();e.addElement(o.querySelector("ion-title"));const s=t(),r=o.querySelectorAll("ion-buttons,[menuToggle]"),i=o.closest("ion-header"),l=null==i?void 0:i.classList.contains("header-collapse-condense-inactive"),c=Array.from(r).filter((t=>{const o=t.classList.contains("buttons-collapse");return o&&!l||!o}));s.addElement(c);const p=t(),b=o.querySelectorAll(":scope > *:not(ion-title):not(ion-buttons):not([menuToggle])");b.length>0&&p.addElement(b);const m=t();m.addElement(a(o).querySelector(".toolbar-background"));const X=t(),x=o.querySelector("ion-back-button");if(x&&X.addElement(x),n.addAnimation([e,s,p,X,m]),w.addAnimation(n),X.fromTo(f,.99,0),s.fromTo(f,.99,0),p.fromTo(f,.99,0),h){if(l||e.fromTo("transform",`translateX(${$})`,u?"translateX(-100%)":"translateX(100%)").fromTo(f,.99,0),p.fromTo("transform",`translateX(${$})`,u?"translateX(-100%)":"translateX(100%)"),m.beforeClearStyles([f,"transform"]),(null==i?void 0:i.translucent)?m.fromTo("transform","translateX(0px)",u?"translateX(-100%)":"translateX(100%)"):m.fromTo(f,"var(--opacity)",0),x&&!B){const o=t();o.addElement(a(x).querySelector(".button-text")).fromTo("transform",`translateX(${$})`,`translateX(${(u?-124:124)+"px"})`),n.addAnimation(o)}}else l||e.fromTo("transform",`translateX(${$})`,`translateX(${y})`).fromTo(f,.99,0).afterClearStyles([d,f]),p.fromTo("transform",`translateX(${$})`,`translateX(${y})`).afterClearStyles([d,f]),X.afterClearStyles([f]),e.afterClearStyles([f]),s.afterClearStyles([f])}))}return w}catch(t){throw t}};export{l as iosTransitionAnimation,a as shadow}
@@ -1,4 +0,0 @@
1
- /*!
2
- * (C) Ionic http://ionicframework.com - MIT License
3
- */
4
- System.register(["./p-015187e5.system.js","./p-128a98e8.system.js","./p-0e94957a.system.js","./p-815c2fba.system.js","./p-629aa3fd.system.js"],(function(t){"use strict";var e,a;return{setters:[function(t){e=t.c},function(t){a=t.g},function(){},function(){},function(){}],execute:function(){var o=540;var r=function(t){return document.querySelector("".concat(t,".ion-cloned-element"))};var n=t("shadow",(function(t){return t.shadowRoot||t}));var l=function(t){var e=t.tagName==="ION-TABS"?t:t.querySelector("ion-tabs");var a="ion-content ion-header:not(.header-collapse-condense-inactive) ion-title.title-large";if(e!=null){var o=e.querySelector("ion-tab:not(.tab-hidden), .ion-page:not(.ion-page-hidden)");return o!=null?o.querySelector(a):null}return t.querySelector(a)};var c=function(t,e){var a=t.tagName==="ION-TABS"?t:t.querySelector("ion-tabs");var o=[];if(a!=null){var r=a.querySelector("ion-tab:not(.tab-hidden), .ion-page:not(.ion-page-hidden)");if(r!=null){o=r.querySelectorAll("ion-buttons")}}else{o=t.querySelectorAll("ion-buttons")}for(var n=0,l=o;n<l.length;n++){var c=l[n];var s=c.closest("ion-header");var i=s&&!s.classList.contains("header-collapse-condense-inactive");var f=c.querySelector("ion-back-button");var d=c.classList.contains("buttons-collapse");var v=c.slot==="start"||c.slot==="";if(f!==null&&v&&(d&&i&&e||!d)){return f}}return null};var s=function(t,e,a,o,r){var n=c(o,a);var s=l(r);var d=l(o);var v=c(r,a);var m=n!==null&&s!==null&&!a;var p=d!==null&&v!==null&&a;if(m){var u=s.getBoundingClientRect();var y=n.getBoundingClientRect();f(t,e,a,s,u,y);i(t,e,a,n,u,y)}else if(p){var b=d.getBoundingClientRect();var S=v.getBoundingClientRect();f(t,e,a,d,b,S);i(t,e,a,v,b,S)}return{forward:m,backward:p}};var i=function(t,a,o,l,c,s){var i=a?"calc(100% - ".concat(s.right+4,"px)"):"".concat(s.left-4,"px");var f=a?"7px":"-7px";var d=a?"-4px":"4px";var v=a?"-4px":"4px";var m=a?"right":"left";var p=a?"left":"right";var u=[{offset:0,opacity:0,transform:"translate3d(".concat(f,", ").concat(c.top-40,"px, 0) scale(2.1)")},{offset:1,opacity:1,transform:"translate3d(".concat(d,", ").concat(s.top-46,"px, 0) scale(1)")}];var y=[{offset:0,opacity:1,transform:"translate3d(".concat(d,", ").concat(s.top-46,"px, 0) scale(1)")},{offset:.6,opacity:0},{offset:1,opacity:0,transform:"translate3d(".concat(f,", ").concat(c.top-40,"px, 0) scale(2.1)")}];var b=o?y:u;var S=[{offset:0,opacity:0,transform:"translate3d(".concat(v,", ").concat(s.top-41,"px, 0) scale(0.6)")},{offset:1,opacity:1,transform:"translate3d(".concat(v,", ").concat(s.top-46,"px, 0) scale(1)")}];var g=[{offset:0,opacity:1,transform:"translate3d(".concat(v,", ").concat(s.top-46,"px, 0) scale(1)")},{offset:.2,opacity:0,transform:"translate3d(".concat(v,", ").concat(s.top-41,"px, 0) scale(0.6)")},{offset:1,opacity:0,transform:"translate3d(".concat(v,", ").concat(s.top-41,"px, 0) scale(0.6)")}];var T=o?g:S;var x=e();var h=e();var q=r("ion-back-button");var X=n(q).querySelector(".button-text");var A=n(q).querySelector("ion-icon");q.text=l.text;q.mode=l.mode;q.icon=l.icon;q.color=l.color;q.disabled=l.disabled;q.style.setProperty("display","block");q.style.setProperty("position","fixed");h.addElement(A);x.addElement(X);x.beforeStyles({"transform-origin":"".concat(m," center")}).beforeAddWrite((function(){l.style.setProperty("display","none");q.style.setProperty(m,i)})).afterAddWrite((function(){l.style.setProperty("display","");q.style.setProperty("display","none");q.style.removeProperty(m)})).keyframes(b);h.beforeStyles({"transform-origin":"".concat(p," center")}).keyframes(T);t.addAnimation([x,h])};var f=function(t,a,o,n,l,c){var s;var i=a?"calc(100% - ".concat(l.right,"px)"):"".concat(l.left,"px");var f=a?"-18px":"18px";var d=a?"right":"left";var v=[{offset:0,opacity:0,transform:"translate3d(".concat(f,", ").concat(c.top-4,"px, 0) scale(0.49)")},{offset:.1,opacity:0},{offset:1,opacity:1,transform:"translate3d(0, ".concat(l.top+2,"px, 0) scale(1)")}];var m=[{offset:0,opacity:.99,transform:"translate3d(0, ".concat(l.top+2,"px, 0) scale(1)")},{offset:.6,opacity:0},{offset:1,opacity:0,transform:"translate3d(".concat(f,", ").concat(c.top-4,"px, 0) scale(0.5)")}];var p=o?v:m;var u=r("ion-title");var y=e();u.innerText=n.innerText;u.size=n.size;u.color=n.color;y.addElement(u);y.beforeStyles((s={"transform-origin":"".concat(d," center"),height:"46px",display:"",position:"relative"},s[d]=i,s)).beforeAddWrite((function(){n.style.setProperty("opacity","0")})).afterAddWrite((function(){n.style.setProperty("opacity","");u.style.setProperty("display","none")})).keyframes(p);t.addAnimation(y)};var d=t("iosTransitionAnimation",(function(t,r){var l;try{var c="cubic-bezier(0.32,0.72,0,1)";var i="opacity";var f="transform";var d="0%";var v=.8;var m=t.ownerDocument.dir==="rtl";var p=m?"-99.5%":"99.5%";var u=m?"33%":"-33%";var y=r.enteringEl;var b=r.leavingEl;var S=r.direction==="back";var g=y.querySelector(":scope > ion-content");var T=y.querySelectorAll(":scope > ion-header > *:not(ion-toolbar), :scope > ion-footer > *");var x=y.querySelectorAll(":scope > ion-header > ion-toolbar");var h=e();var q=e();h.addElement(y).duration(((l=r.duration)!==null&&l!==void 0?l:0)||o).easing(r.easing||c).fill("both").beforeRemoveClass("ion-page-invisible");if(b&&t!==null&&t!==undefined){var X=e();X.addElement(t);h.addAnimation(X)}if(!g&&x.length===0&&T.length===0){q.addElement(y.querySelector(":scope > .ion-page, :scope > ion-nav, :scope > ion-tabs"))}else{q.addElement(g);q.addElement(T)}h.addAnimation(q);if(S){q.beforeClearStyles([i]).fromTo("transform","translateX(".concat(u,")"),"translateX(".concat(d,")")).fromTo(i,v,1)}else{q.beforeClearStyles([i]).fromTo("transform","translateX(".concat(p,")"),"translateX(".concat(d,")"))}if(g){var A=n(g).querySelector(".transition-effect");if(A){var E=A.querySelector(".transition-cover");var C=A.querySelector(".transition-shadow");var k=e();var P=e();var w=e();k.addElement(A).beforeStyles({opacity:"1",display:"block"}).afterStyles({opacity:"",display:""});P.addElement(E).beforeClearStyles([i]).fromTo(i,0,.1);w.addElement(C).beforeClearStyles([i]).fromTo(i,.03,.7);k.addAnimation([P,w]);q.addAnimation([k])}}var L=y.querySelector("ion-header.header-collapse-condense");var B=s(h,m,S,y,b),R=B.forward,j=B.backward;x.forEach((function(t){var a=e();a.addElement(t);h.addAnimation(a);var o=e();o.addElement(t.querySelector("ion-title"));var r=e();var l=Array.from(t.querySelectorAll("ion-buttons,[menuToggle]"));var c=t.closest("ion-header");var s=c===null||c===void 0?void 0:c.classList.contains("header-collapse-condense-inactive");var f;if(S){f=l.filter((function(t){var e=t.classList.contains("buttons-collapse");return e&&!s||!e}))}else{f=l.filter((function(t){return!t.classList.contains("buttons-collapse")}))}r.addElement(f);var v=e();v.addElement(t.querySelectorAll(":scope > *:not(ion-title):not(ion-buttons):not([menuToggle])"));var y=e();y.addElement(n(t).querySelector(".toolbar-background"));var b=e();var g=t.querySelector("ion-back-button");if(g){b.addElement(g)}a.addAnimation([o,r,v,y,b]);r.fromTo(i,.01,1);v.fromTo(i,.01,1);if(S){if(!s){o.fromTo("transform","translateX(".concat(u,")"),"translateX(".concat(d,")")).fromTo(i,.01,1)}v.fromTo("transform","translateX(".concat(u,")"),"translateX(".concat(d,")"));b.fromTo(i,.01,1)}else{if(!L){o.fromTo("transform","translateX(".concat(p,")"),"translateX(".concat(d,")")).fromTo(i,.01,1)}v.fromTo("transform","translateX(".concat(p,")"),"translateX(".concat(d,")"));y.beforeClearStyles([i,"transform"]);var T=c===null||c===void 0?void 0:c.translucent;if(!T){y.fromTo(i,.01,"var(--opacity)")}else{y.fromTo("transform",m?"translateX(-100%)":"translateX(100%)","translateX(0px)")}if(!R){b.fromTo(i,.01,1)}if(g&&!R){var x=e();x.addElement(n(g).querySelector(".button-text")).fromTo("transform",m?"translateX(-100px)":"translateX(100px)","translateX(0px)");a.addAnimation(x)}}}));if(b){var W=e();var N=b.querySelector(":scope > ion-content");var z=b.querySelectorAll(":scope > ion-header > ion-toolbar");var D=b.querySelectorAll(":scope > ion-header > *:not(ion-toolbar), :scope > ion-footer > *");if(!N&&z.length===0&&D.length===0){W.addElement(b.querySelector(":scope > .ion-page, :scope > ion-nav, :scope > ion-tabs"))}else{W.addElement(N);W.addElement(D)}h.addAnimation(W);if(S){W.beforeClearStyles([i]).fromTo("transform","translateX(".concat(d,")"),m?"translateX(-100%)":"translateX(100%)");var I=a(b);h.afterAddWrite((function(){if(h.getDirection()==="normal"){I.style.setProperty("display","none")}}))}else{W.fromTo("transform","translateX(".concat(d,")"),"translateX(".concat(u,")")).fromTo(i,1,v)}if(N){var O=n(N).querySelector(".transition-effect");if(O){var F=O.querySelector(".transition-cover");var G=O.querySelector(".transition-shadow");var H=e();var J=e();var K=e();H.addElement(O).beforeStyles({opacity:"1",display:"block"}).afterStyles({opacity:"",display:""});J.addElement(F).beforeClearStyles([i]).fromTo(i,.1,0);K.addElement(G).beforeClearStyles([i]).fromTo(i,.7,.03);H.addAnimation([J,K]);W.addAnimation([H])}}z.forEach((function(t){var a=e();a.addElement(t);var o=e();o.addElement(t.querySelector("ion-title"));var r=e();var l=t.querySelectorAll("ion-buttons,[menuToggle]");var c=t.closest("ion-header");var s=c===null||c===void 0?void 0:c.classList.contains("header-collapse-condense-inactive");var v=Array.from(l).filter((function(t){var e=t.classList.contains("buttons-collapse");return e&&!s||!e}));r.addElement(v);var p=e();var y=t.querySelectorAll(":scope > *:not(ion-title):not(ion-buttons):not([menuToggle])");if(y.length>0){p.addElement(y)}var b=e();b.addElement(n(t).querySelector(".toolbar-background"));var g=e();var T=t.querySelector("ion-back-button");if(T){g.addElement(T)}a.addAnimation([o,r,p,g,b]);h.addAnimation(a);g.fromTo(i,.99,0);r.fromTo(i,.99,0);p.fromTo(i,.99,0);if(S){if(!s){o.fromTo("transform","translateX(".concat(d,")"),m?"translateX(-100%)":"translateX(100%)").fromTo(i,.99,0)}p.fromTo("transform","translateX(".concat(d,")"),m?"translateX(-100%)":"translateX(100%)");b.beforeClearStyles([i,"transform"]);var x=c===null||c===void 0?void 0:c.translucent;if(!x){b.fromTo(i,"var(--opacity)",0)}else{b.fromTo("transform","translateX(0px)",m?"translateX(-100%)":"translateX(100%)")}if(T&&!j){var q=e();q.addElement(n(T).querySelector(".button-text")).fromTo("transform","translateX(".concat(d,")"),"translateX(".concat((m?-124:124)+"px",")"));a.addAnimation(q)}}else{if(!s){o.fromTo("transform","translateX(".concat(d,")"),"translateX(".concat(u,")")).fromTo(i,.99,0).afterClearStyles([f,i])}p.fromTo("transform","translateX(".concat(d,")"),"translateX(".concat(u,")")).afterClearStyles([f,i]);g.afterClearStyles([i]);o.afterClearStyles([i]);r.afterClearStyles([i])}}))}return h}catch(t){throw t}}))}}}));
@@ -1,4 +0,0 @@
1
- /*!
2
- * (C) Ionic http://ionicframework.com - MIT License
3
- */
4
- import{w as a,B as i}from"./p-06ac429a.js";import{r as e}from"./p-63eb0acd.js";const n="ionViewWillEnter",o="ionViewDidEnter",s="ionViewWillLeave",t="ionViewDidLeave",r="ionViewWillUnload",c=i=>new Promise(((e,n)=>{a((()=>{p(i),w(i).then((a=>{a.animation&&a.animation.destroy(),l(i),e(a)}),(a=>{l(i),n(a)}))}))})),p=a=>{const i=a.enteringEl,e=a.leavingEl;k(i,e,a.direction),a.showGoBack?i.classList.add("can-go-back"):i.classList.remove("can-go-back"),j(i,!1),i.style.setProperty("pointer-events","none"),e&&(j(e,!1),e.style.setProperty("pointer-events","none"))},w=async a=>{const e=await d(a);return e&&i.isBrowser?m(e,a):v(a)},l=a=>{const i=a.enteringEl,e=a.leavingEl;i.classList.remove("ion-page-invisible"),i.style.removeProperty("pointer-events"),void 0!==e&&(e.classList.remove("ion-page-invisible"),e.style.removeProperty("pointer-events"))},d=async a=>{if(a.leavingEl&&a.animated&&0!==a.duration)return a.animationBuilder?a.animationBuilder:"ios"===a.mode?(await import("./p-16e44585.js")).iosTransitionAnimation:(await import("./p-e38a5f77.js")).mdTransitionAnimation},m=async(a,i)=>{await u(i,!0);const e=a(i.baseEl,i);g(i.enteringEl,i.leavingEl);const n=await f(e,i);return i.progressCallback&&i.progressCallback(void 0),n&&y(i.enteringEl,i.leavingEl),{hasCompleted:n,animation:e}},v=async a=>{const i=a.enteringEl,e=a.leavingEl;return await u(a,!1),g(i,e),y(i,e),{hasCompleted:!0}},u=async(a,i)=>{(void 0!==a.deepWait?a.deepWait:i)&&await Promise.all([V(a.enteringEl),V(a.leavingEl)]),await b(a.viewIsReady,a.enteringEl)},b=async(a,i)=>{a&&await a(i)},f=(a,i)=>{const e=i.progressCallback,n=new Promise((i=>{a.onFinish((a=>i(1===a)))}));return e?(a.progressStart(!0),e(a)):a.play(),n},g=(a,i)=>{h(i,s),h(a,n)},y=(a,i)=>{h(a,o),h(i,t)},h=(a,i)=>{if(a){const e=new CustomEvent(i,{bubbles:!1,cancelable:!1});a.dispatchEvent(e)}},P=()=>new Promise((a=>e((()=>e((()=>a())))))),V=async a=>{const i=a;if(i){if(null!=i.componentOnReady){if(null!=await i.componentOnReady())return}else if(null!=i.__registerHost){const a=new Promise((a=>e(a)));return void await a}await Promise.all(Array.from(i.children).map(V))}},j=(a,i)=>{i?(a.setAttribute("aria-hidden","true"),a.classList.add("ion-page-hidden")):(a.hidden=!1,a.removeAttribute("aria-hidden"),a.classList.remove("ion-page-hidden"))},k=(a,i,e)=>{void 0!==a&&(a.style.zIndex="back"===e?"99":"101"),void 0!==i&&(i.style.zIndex="100")},C=a=>{if(a.classList.contains("ion-page"))return a;return a.querySelector(":scope > .ion-page, :scope > ion-nav, :scope > ion-tabs")||a};export{n as L,o as a,s as b,t as c,r as d,V as e,C as g,h as l,j as s,c as t,P as w}