@ionic/core 9.0.11-dev.11793874002.1c88a1d0 → 9.0.11-dev.11793888057.13a7fa02

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/hydrate/index.js CHANGED
@@ -6850,7 +6850,7 @@ const reorderTwoSharp = "data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2
6850
6850
  const searchOutline = "data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' class='ionicon'><path d='M221.09 64a157.09 157.09 0 1 0 157.09 157.09A157.1 157.1 0 0 0 221.09 64Z' stroke-miterlimit='10' class='ionicon-fill-none ionicon-stroke-width'/><path d='M338.29 338.29 448 448' stroke-linecap='round' stroke-miterlimit='10' class='ionicon-fill-none ionicon-stroke-width'/></svg>";
6851
6851
  const searchSharp = "data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' class='ionicon'><path d='M464 428 339.92 303.9a160.48 160.48 0 0 0 30.72-94.58C370.64 120.37 298.27 48 209.32 48S48 120.37 48 209.32s72.37 161.32 161.32 161.32a160.48 160.48 0 0 0 94.58-30.72L428 464ZM209.32 319.69a110.38 110.38 0 1 1 110.37-110.37 110.5 110.5 0 0 1-110.37 110.37'/></svg>";
6852
6852
 
6853
- const accordionIonicCss = () => `:host{display:block;position:relative;width:100%;overflow:hidden;z-index:0}:host(.accordion-expanding) ::slotted(ion-item[slot=header]),:host(.accordion-expanded) ::slotted(ion-item[slot=header]){--border-width:0px}#content{overflow:hidden;will-change:max-height}:host(.accordion-collapsing) #content{max-height:0 !important}:host(.accordion-collapsed) #content{display:none}:host(.accordion-expanding) #content{max-height:0}:host(.accordion-expanding) #content-wrapper{overflow:auto}:host(.accordion-disabled) #header,:host(.accordion-readonly) #header,:host(.accordion-disabled) #content,:host(.accordion-readonly) #content{pointer-events:none}@media (prefers-reduced-motion: reduce){:host,#content{-webkit-transition:none !important;transition:none !important}}:host{position:relative}:host::after{-webkit-margin-start:var(--token-space-400, var(--token-scale-400, 16px));margin-inline-start:var(--token-space-400, var(--token-scale-400, 16px));-webkit-margin-end:var(--token-space-400, var(--token-scale-400, 16px));margin-inline-end:var(--token-space-400, var(--token-scale-400, 16px));right:0;left:0;bottom:0;display:block;position:absolute;height:var(--token-border-size-025, var(--token-scale-025, 1px));background-color:var(--token-border-default, var(--token-primitives-neutral-400, #d0d7df));content:"";z-index:3}:host(.accordion-last)::after{display:none}:host(.accordion-animated){-webkit-transition:all 300ms cubic-bezier(0.25, 0.8, 0.5, 1);transition:all 300ms cubic-bezier(0.25, 0.8, 0.5, 1)}:host(.accordion-animated) #content{-webkit-transition:max-height 300ms cubic-bezier(0.25, 0.8, 0.5, 1);transition:max-height 300ms cubic-bezier(0.25, 0.8, 0.5, 1)}::slotted(ion-item[slot=header]){--border-radius:inherit;--color:var(--token-text-default, var(--token-primitives-neutral-1200, #242528));--border-width:var(--token-border-size-0, var(--token-scale-0, 0px));--inner-border-width:var(--token-scale-0, 0px);--min-height:var(--token-scale-700, 28px);--padding-top:var(--token-space-300, var(--token-scale-300, 12px));--padding-end:var(--token-space-400, var(--token-scale-400, 16px));--padding-bottom:var(--token-space-300, var(--token-scale-300, 12px));--padding-start:var(--token-space-400, var(--token-scale-400, 16px));--background-activated:var(--token-bg-neutral-subtlest-press, var(--token-primitives-neutral-200, #ebeef2));font-family:var(--token-font-family, -apple-system, system-ui, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol");font-size:var(--token-font-size-450, 1.125rem);font-weight:var(--token-font-weight-medium, 500);letter-spacing:var(--token-font-letter-spacing-0, 0);line-height:1.555556}#content-wrapper{-webkit-padding-start:var(--token-space-400, var(--token-scale-400, 16px));padding-inline-start:var(--token-space-400, var(--token-scale-400, 16px));-webkit-padding-end:var(--token-space-400, var(--token-scale-400, 16px));padding-inline-end:var(--token-space-400, var(--token-scale-400, 16px));padding-top:var(--token-space-300, var(--token-scale-300, 12px));padding-bottom:var(--token-space-300, var(--token-scale-300, 12px));font-family:var(--token-font-family, -apple-system, system-ui, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol");font-size:var(--token-font-size-350, 0.875rem);font-weight:var(--token-font-weight-regular, 400);letter-spacing:var(--token-font-letter-spacing-0, 0);line-height:1.714286;color:var(--token-text-default, var(--token-primitives-neutral-1200, #242528))}:host(.accordion-disabled)::before{border-radius:inherit;right:0;left:0;top:0;bottom:0;position:absolute;background-color:var(--token-state-disabled, rgba(255, 255, 255, 0.6));content:"";pointer-events:none;z-index:2}`;
6853
+ const accordionIonicCss = () => `:host{display:block;position:relative;width:100%;overflow:hidden;z-index:0}:host(.accordion-expanding) ::slotted(ion-item[slot=header]),:host(.accordion-expanded) ::slotted(ion-item[slot=header]){--border-width:0px}#content{overflow:hidden;will-change:max-height}:host(.accordion-collapsing) #content{max-height:0 !important}:host(.accordion-collapsed) #content{display:none}:host(.accordion-expanding) #content{max-height:0}:host(.accordion-expanding) #content-wrapper{overflow:auto}:host(.accordion-disabled) #header,:host(.accordion-readonly) #header,:host(.accordion-disabled) #content,:host(.accordion-readonly) #content{pointer-events:none}@media (prefers-reduced-motion: reduce){:host,#content{-webkit-transition:none !important;transition:none !important}}:host{position:relative}:host::after{-webkit-margin-start:var(--token-space-400, var(--token-scale-400, 16px));margin-inline-start:var(--token-space-400, var(--token-scale-400, 16px));-webkit-margin-end:var(--token-space-400, var(--token-scale-400, 16px));margin-inline-end:var(--token-space-400, var(--token-scale-400, 16px));right:0;left:0;bottom:0;display:block;position:absolute;height:var(--token-border-size-025, var(--token-scale-025, 1px));background-color:var(--token-border-default, var(--token-primitives-neutral-400, #d0d7df));content:"";z-index:3}:host(.accordion-last)::after{display:none}:host(.accordion-animated){-webkit-transition:all 300ms cubic-bezier(0.25, 0.8, 0.5, 1);transition:all 300ms cubic-bezier(0.25, 0.8, 0.5, 1)}:host(.accordion-animated) #content{-webkit-transition:max-height 300ms cubic-bezier(0.25, 0.8, 0.5, 1);transition:max-height 300ms cubic-bezier(0.25, 0.8, 0.5, 1)}::slotted(ion-item[slot=header]){--border-radius:inherit;--color:var(--token-text-default, var(--token-primitives-neutral-1200, #242528));--border-width:var(--token-border-size-0, var(--token-scale-0, 0px));--inner-border-width:var(--token-scale-0, 0px);--min-height:var(--token-scale-700, 28px);--padding-top:var(--token-space-300, var(--token-scale-300, 12px));--padding-end:var(--token-space-400, var(--token-scale-400, 16px));--padding-bottom:var(--token-space-300, var(--token-scale-300, 12px));--padding-start:var(--token-space-400, var(--token-scale-400, 16px));--background-activated:var(--token-bg-neutral-subtlest-press, var(--token-primitives-neutral-200, #ebeef2));font-family:var(--token-font-family, -apple-system, system-ui, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol");font-size:var(--token-font-size-450, 1.125rem);font-weight:var(--token-font-weight-medium, 500);letter-spacing:var(--token-font-letter-spacing-0, 0);line-height:1.555556}#content-wrapper{-webkit-padding-start:var(--token-space-400, var(--token-scale-400, 16px));padding-inline-start:var(--token-space-400, var(--token-scale-400, 16px));-webkit-padding-end:var(--token-space-400, var(--token-scale-400, 16px));padding-inline-end:var(--token-space-400, var(--token-scale-400, 16px));padding-top:var(--token-space-300, var(--token-scale-300, 12px));padding-bottom:var(--token-space-300, var(--token-scale-300, 12px));font-family:var(--token-font-family, -apple-system, system-ui, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol");font-size:var(--token-font-size-350, 0.875rem);font-weight:var(--token-font-weight-regular, 400);letter-spacing:var(--token-font-letter-spacing-0, 0);line-height:1.714286;color:var(--token-text-default, var(--token-primitives-neutral-1200, #242528))}:host(.accordion-disabled) #header,:host(.accordion-disabled) #content{opacity:0.6}`;
6854
6854
 
6855
6855
  const accordionIosCss = () => `:host{display:block;position:relative;width:100%;overflow:hidden;z-index:0}:host(.accordion-expanding) ::slotted(ion-item[slot=header]),:host(.accordion-expanded) ::slotted(ion-item[slot=header]){--border-width:0px}#content{overflow:hidden;will-change:max-height}:host(.accordion-collapsing) #content{max-height:0 !important}:host(.accordion-collapsed) #content{display:none}:host(.accordion-expanding) #content{max-height:0}:host(.accordion-expanding) #content-wrapper{overflow:auto}:host(.accordion-disabled) #header,:host(.accordion-readonly) #header,:host(.accordion-disabled) #content,:host(.accordion-readonly) #content{pointer-events:none}@media (prefers-reduced-motion: reduce){:host,#content{-webkit-transition:none !important;transition:none !important}}:host{background-color:var(--ion-background-color, #ffffff)}:host(.accordion-animated){-webkit-transition:all 300ms cubic-bezier(0.25, 0.8, 0.5, 1);transition:all 300ms cubic-bezier(0.25, 0.8, 0.5, 1)}:host(.accordion-animated) #content{-webkit-transition:max-height 300ms cubic-bezier(0.25, 0.8, 0.5, 1);transition:max-height 300ms cubic-bezier(0.25, 0.8, 0.5, 1)}:host(.accordion-disabled) #header,:host(.accordion-disabled) #content{opacity:0.4}:host(.accordion-next) ::slotted(ion-item[slot=header]){--border-width:0.55px 0px 0.55px 0px}`;
6856
6856
 
@@ -46763,7 +46763,6 @@ class Toolbar {
46763
46763
  ];
46764
46764
  this.showClasses = ['show-start', 'show-end', 'show-primary', 'show-secondary'];
46765
46765
  this.slotSizeVars = ['--start-end-size', '--primary-secondary-size'];
46766
- this.hasLoaded = false;
46767
46766
  }
46768
46767
  componentWillLoad() {
46769
46768
  const buttons = Array.from(this.el.querySelectorAll('ion-buttons'));
@@ -46782,23 +46781,9 @@ class Toolbar {
46782
46781
  }
46783
46782
  this.updateSlotClasses();
46784
46783
  }
46785
- connectedCallback() {
46786
- /**
46787
- * The resize observer is stopped when the toolbar is removed from the DOM.
46788
- * If the toolbar is added back (for example, when it is moved), start it again.
46789
- * On the first connection the toolbar has not rendered yet, so this is left
46790
- * to componentDidLoad.
46791
- */
46792
- if (this.hasLoaded) {
46793
- this.updateSlotClasses();
46794
- }
46795
- }
46796
46784
  componentDidLoad() {
46797
- this.hasLoaded = true;
46798
46785
  this.updateSlotClasses();
46799
- }
46800
- disconnectedCallback() {
46801
- this.stopObservingSlotSizes();
46786
+ this.updateSlotWidths();
46802
46787
  }
46803
46788
  titlePlacementChanged() {
46804
46789
  this.updateSlotClasses();
@@ -46818,67 +46803,26 @@ class Toolbar {
46818
46803
  * Updates the CSS custom properties for slot widths
46819
46804
  * This ensures that slots shown by their met conditions
46820
46805
  * have a minimum width matching their required slot
46821
- *
46822
- * The slotted content is watched with a ResizeObserver instead of being
46823
- * measured after a timeout:
46824
- * - The observer callback runs after layout and before paint, so the slot
46825
- * widths are set in the same frame the content is first laid out. The
46826
- * title is already centered when it is first painted and does not move.
46827
- * - The callback runs again whenever the slotted content changes size,
46828
- * for example when a button is added or removed, or when a hidden
46829
- * toolbar becomes visible.
46830
- */
46831
- updateSlotWidths() {
46832
- // Stop watching the previous content before watching the current one.
46833
- this.stopObservingSlotSizes();
46834
- // Browsers without ResizeObserver can only measure once.
46835
- if (typeof ResizeObserver === 'undefined') {
46836
- this.measureAndUpdateSlots();
46837
- return;
46838
- }
46839
- const elementsToObserve = [];
46840
- const slots = ['start', 'end', 'primary', 'secondary'];
46841
- slots.forEach((slot) => {
46842
- if (this.el.classList.contains(`has-${slot}-content`)) {
46843
- elementsToObserve.push(...this.getSlottedElements(slot));
46806
+ */
46807
+ updateSlotWidths(tries = 0) {
46808
+ // Set timeout to try to execute after everything is rendered
46809
+ setTimeout(() => {
46810
+ // Attempt to measure and update
46811
+ const success = this.measureAndUpdateSlots();
46812
+ // If not all measurements were successful, try again in 100 ms
46813
+ // cap recursion at 5 tries for safety
46814
+ if (!success && tries < 5) {
46815
+ setTimeout(() => {
46816
+ this.updateSlotWidths(tries + 1);
46817
+ }, 100);
46844
46818
  }
46845
46819
  });
46846
- if (elementsToObserve.length === 0) {
46847
- return;
46848
- }
46849
- /**
46850
- * The observer also calls the callback once right after observing
46851
- * an element, which takes care of the first measurement.
46852
- */
46853
- const observer = new ResizeObserver(() => this.measureAndUpdateSlots());
46854
- elementsToObserve.forEach((element) => observer.observe(element));
46855
- this.slotResizeObserver = observer;
46856
- }
46857
- /**
46858
- * Stops watching the slotted content for size changes.
46859
- */
46860
- stopObservingSlotSizes() {
46861
- if (this.slotResizeObserver) {
46862
- this.slotResizeObserver.disconnect();
46863
- this.slotResizeObserver = undefined;
46864
- }
46865
- }
46866
- /**
46867
- * Returns the elements assigned to the given slot of the toolbar.
46868
- */
46869
- getSlottedElements(slotName) {
46870
- const slotElement = this.el.shadowRoot?.querySelector(`slot[name="${slotName}"]`);
46871
- if (!slotElement) {
46872
- return [];
46873
- }
46874
- return slotElement.assignedElements({ flatten: true });
46875
46820
  }
46876
46821
  /**
46877
46822
  * Measure the widths of the slots and update the CSS custom properties
46878
46823
  * for the minimum width of each pair of slots based on the largest width in each pair.
46879
46824
  * Returns whether we successfully measured all of the slots we expect to have content.
46880
- * If not, the content probably hasn't rendered yet, and the ResizeObserver
46881
- * measures again once it does.
46825
+ * If not, the content probably hasn't rendered yet and we need to try again.
46882
46826
  */
46883
46827
  measureAndUpdateSlots() {
46884
46828
  // Define the relationship between slots based on the conditions array
@@ -46887,13 +46831,6 @@ class Toolbar {
46887
46831
  { name: 'start-end', slots: ['start', 'end'] },
46888
46832
  { name: 'primary-secondary', slots: ['primary', 'secondary'] },
46889
46833
  ];
46890
- /**
46891
- * Once a size property is set, the slots cannot be narrower than it.
46892
- * Remove the properties first so each slot is measured at the width of
46893
- * its content, which lets the slots shrink when their content does.
46894
- * This runs before paint, so the slots are never painted without a size.
46895
- */
46896
- this.slotSizeVars.forEach((cssVar) => this.el.style.removeProperty(cssVar));
46897
46834
  // First, measure all slot widths
46898
46835
  const slotWidths = new Map();
46899
46836
  let allMeasurementsSuccessful = true;
@@ -46952,8 +46889,6 @@ class Toolbar {
46952
46889
  * Removes all slot visibility classes and slot width CSS variables.
46953
46890
  */
46954
46891
  removeSlotClasses() {
46955
- // The slot widths are no longer used, so there is nothing to watch.
46956
- this.stopObservingSlotSizes();
46957
46892
  this.el.classList.remove(...this.slotClasses, ...this.showClasses);
46958
46893
  this.slotSizeVars.forEach((cssVar) => this.el.style.removeProperty(cssVar));
46959
46894
  }
@@ -47037,14 +46972,14 @@ class Toolbar {
47037
46972
  Object.assign(childStyles, style);
47038
46973
  });
47039
46974
  const titlePlacement = this.getTitlePlacement();
47040
- return (hAsync(Host, { key: '2ee4ee2329ba499bd3fe24eb58f8954c86d39b01', class: {
46975
+ return (hAsync(Host, { key: '3b97d3de5b1910257170355995eb7a50a2b6dcc4', class: {
47041
46976
  ...createColorClasses$1(this.color, {
47042
46977
  [theme]: true,
47043
46978
  'in-toolbar': hostContext('ion-toolbar', this.el),
47044
46979
  [`toolbar-title-placement-${titlePlacement}`]: true,
47045
46980
  }),
47046
46981
  ...childStyles,
47047
- } }, hAsync("div", { key: '68da02a622db1ed136a31700421c5da005ae3884', class: "toolbar-background", part: "background" }), hAsync("div", { key: 'cefcad22e28e1468de024a0cbe477464a872dc66', class: "toolbar-container", part: "container" }, hAsync("slot", { key: '9ebfc464b5c32c6d2b5c81a0a0c415effa15ce3c', name: "start", onSlotchange: () => this.updateSlotClasses() }), hAsync("slot", { key: '55a07aa0000e1b02814f7a01ad1610d1d723f442', name: "secondary", onSlotchange: () => this.updateSlotClasses() }), hAsync("div", { key: '51d1e06e0463788b5f794831faadd305aa8bca75', class: "toolbar-content", part: "content" }, hAsync("slot", { key: '6982cc6886f76cf43d78e3f0e9243dc05f67d34c' })), hAsync("slot", { key: 'b00b9b9b28c1637a04781ef88b5d9474fb5c0647', name: "primary", onSlotchange: () => this.updateSlotClasses() }), hAsync("slot", { key: '4fce3b9b17f7775d0ba14cd5185e500753b4976e', name: "end", onSlotchange: () => this.updateSlotClasses() }))));
46982
+ } }, hAsync("div", { key: '26f85390aa62f118e585fd8560fba0620b30fd51', class: "toolbar-background", part: "background" }), hAsync("div", { key: '57e32773d5642dde7f5d7cca9aaceb41b4d800bd', class: "toolbar-container", part: "container" }, hAsync("slot", { key: '5429b3f898703339749a55af6bb28d7e4d969679', name: "start", onSlotchange: () => this.updateSlotClasses }), hAsync("slot", { key: 'c5565f7020f52a1f075d9c6908ace042d488642f', name: "secondary", onSlotchange: () => this.updateSlotClasses }), hAsync("div", { key: '2d083bcd57512041321a68b43d6b90144eb20166', class: "toolbar-content", part: "content" }, hAsync("slot", { key: 'eb8abc0b9b96c699355891fbd0d284094cde7632' })), hAsync("slot", { key: 'ca66f2dcce1f5382ed40a120cf32f759597a11ad', name: "primary", onSlotchange: () => this.updateSlotClasses }), hAsync("slot", { key: '19e3eb792d45c21404fe48f119d68248b5d7dca7', name: "end", onSlotchange: () => this.updateSlotClasses }))));
47048
46983
  }
47049
46984
  get el() { return getElement(this); }
47050
46985
  static get watchers() { return {
package/hydrate/index.mjs CHANGED
@@ -6848,7 +6848,7 @@ const reorderTwoSharp = "data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2
6848
6848
  const searchOutline = "data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' class='ionicon'><path d='M221.09 64a157.09 157.09 0 1 0 157.09 157.09A157.1 157.1 0 0 0 221.09 64Z' stroke-miterlimit='10' class='ionicon-fill-none ionicon-stroke-width'/><path d='M338.29 338.29 448 448' stroke-linecap='round' stroke-miterlimit='10' class='ionicon-fill-none ionicon-stroke-width'/></svg>";
6849
6849
  const searchSharp = "data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' class='ionicon'><path d='M464 428 339.92 303.9a160.48 160.48 0 0 0 30.72-94.58C370.64 120.37 298.27 48 209.32 48S48 120.37 48 209.32s72.37 161.32 161.32 161.32a160.48 160.48 0 0 0 94.58-30.72L428 464ZM209.32 319.69a110.38 110.38 0 1 1 110.37-110.37 110.5 110.5 0 0 1-110.37 110.37'/></svg>";
6850
6850
 
6851
- const accordionIonicCss = () => `:host{display:block;position:relative;width:100%;overflow:hidden;z-index:0}:host(.accordion-expanding) ::slotted(ion-item[slot=header]),:host(.accordion-expanded) ::slotted(ion-item[slot=header]){--border-width:0px}#content{overflow:hidden;will-change:max-height}:host(.accordion-collapsing) #content{max-height:0 !important}:host(.accordion-collapsed) #content{display:none}:host(.accordion-expanding) #content{max-height:0}:host(.accordion-expanding) #content-wrapper{overflow:auto}:host(.accordion-disabled) #header,:host(.accordion-readonly) #header,:host(.accordion-disabled) #content,:host(.accordion-readonly) #content{pointer-events:none}@media (prefers-reduced-motion: reduce){:host,#content{-webkit-transition:none !important;transition:none !important}}:host{position:relative}:host::after{-webkit-margin-start:var(--token-space-400, var(--token-scale-400, 16px));margin-inline-start:var(--token-space-400, var(--token-scale-400, 16px));-webkit-margin-end:var(--token-space-400, var(--token-scale-400, 16px));margin-inline-end:var(--token-space-400, var(--token-scale-400, 16px));right:0;left:0;bottom:0;display:block;position:absolute;height:var(--token-border-size-025, var(--token-scale-025, 1px));background-color:var(--token-border-default, var(--token-primitives-neutral-400, #d0d7df));content:"";z-index:3}:host(.accordion-last)::after{display:none}:host(.accordion-animated){-webkit-transition:all 300ms cubic-bezier(0.25, 0.8, 0.5, 1);transition:all 300ms cubic-bezier(0.25, 0.8, 0.5, 1)}:host(.accordion-animated) #content{-webkit-transition:max-height 300ms cubic-bezier(0.25, 0.8, 0.5, 1);transition:max-height 300ms cubic-bezier(0.25, 0.8, 0.5, 1)}::slotted(ion-item[slot=header]){--border-radius:inherit;--color:var(--token-text-default, var(--token-primitives-neutral-1200, #242528));--border-width:var(--token-border-size-0, var(--token-scale-0, 0px));--inner-border-width:var(--token-scale-0, 0px);--min-height:var(--token-scale-700, 28px);--padding-top:var(--token-space-300, var(--token-scale-300, 12px));--padding-end:var(--token-space-400, var(--token-scale-400, 16px));--padding-bottom:var(--token-space-300, var(--token-scale-300, 12px));--padding-start:var(--token-space-400, var(--token-scale-400, 16px));--background-activated:var(--token-bg-neutral-subtlest-press, var(--token-primitives-neutral-200, #ebeef2));font-family:var(--token-font-family, -apple-system, system-ui, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol");font-size:var(--token-font-size-450, 1.125rem);font-weight:var(--token-font-weight-medium, 500);letter-spacing:var(--token-font-letter-spacing-0, 0);line-height:1.555556}#content-wrapper{-webkit-padding-start:var(--token-space-400, var(--token-scale-400, 16px));padding-inline-start:var(--token-space-400, var(--token-scale-400, 16px));-webkit-padding-end:var(--token-space-400, var(--token-scale-400, 16px));padding-inline-end:var(--token-space-400, var(--token-scale-400, 16px));padding-top:var(--token-space-300, var(--token-scale-300, 12px));padding-bottom:var(--token-space-300, var(--token-scale-300, 12px));font-family:var(--token-font-family, -apple-system, system-ui, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol");font-size:var(--token-font-size-350, 0.875rem);font-weight:var(--token-font-weight-regular, 400);letter-spacing:var(--token-font-letter-spacing-0, 0);line-height:1.714286;color:var(--token-text-default, var(--token-primitives-neutral-1200, #242528))}:host(.accordion-disabled)::before{border-radius:inherit;right:0;left:0;top:0;bottom:0;position:absolute;background-color:var(--token-state-disabled, rgba(255, 255, 255, 0.6));content:"";pointer-events:none;z-index:2}`;
6851
+ const accordionIonicCss = () => `:host{display:block;position:relative;width:100%;overflow:hidden;z-index:0}:host(.accordion-expanding) ::slotted(ion-item[slot=header]),:host(.accordion-expanded) ::slotted(ion-item[slot=header]){--border-width:0px}#content{overflow:hidden;will-change:max-height}:host(.accordion-collapsing) #content{max-height:0 !important}:host(.accordion-collapsed) #content{display:none}:host(.accordion-expanding) #content{max-height:0}:host(.accordion-expanding) #content-wrapper{overflow:auto}:host(.accordion-disabled) #header,:host(.accordion-readonly) #header,:host(.accordion-disabled) #content,:host(.accordion-readonly) #content{pointer-events:none}@media (prefers-reduced-motion: reduce){:host,#content{-webkit-transition:none !important;transition:none !important}}:host{position:relative}:host::after{-webkit-margin-start:var(--token-space-400, var(--token-scale-400, 16px));margin-inline-start:var(--token-space-400, var(--token-scale-400, 16px));-webkit-margin-end:var(--token-space-400, var(--token-scale-400, 16px));margin-inline-end:var(--token-space-400, var(--token-scale-400, 16px));right:0;left:0;bottom:0;display:block;position:absolute;height:var(--token-border-size-025, var(--token-scale-025, 1px));background-color:var(--token-border-default, var(--token-primitives-neutral-400, #d0d7df));content:"";z-index:3}:host(.accordion-last)::after{display:none}:host(.accordion-animated){-webkit-transition:all 300ms cubic-bezier(0.25, 0.8, 0.5, 1);transition:all 300ms cubic-bezier(0.25, 0.8, 0.5, 1)}:host(.accordion-animated) #content{-webkit-transition:max-height 300ms cubic-bezier(0.25, 0.8, 0.5, 1);transition:max-height 300ms cubic-bezier(0.25, 0.8, 0.5, 1)}::slotted(ion-item[slot=header]){--border-radius:inherit;--color:var(--token-text-default, var(--token-primitives-neutral-1200, #242528));--border-width:var(--token-border-size-0, var(--token-scale-0, 0px));--inner-border-width:var(--token-scale-0, 0px);--min-height:var(--token-scale-700, 28px);--padding-top:var(--token-space-300, var(--token-scale-300, 12px));--padding-end:var(--token-space-400, var(--token-scale-400, 16px));--padding-bottom:var(--token-space-300, var(--token-scale-300, 12px));--padding-start:var(--token-space-400, var(--token-scale-400, 16px));--background-activated:var(--token-bg-neutral-subtlest-press, var(--token-primitives-neutral-200, #ebeef2));font-family:var(--token-font-family, -apple-system, system-ui, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol");font-size:var(--token-font-size-450, 1.125rem);font-weight:var(--token-font-weight-medium, 500);letter-spacing:var(--token-font-letter-spacing-0, 0);line-height:1.555556}#content-wrapper{-webkit-padding-start:var(--token-space-400, var(--token-scale-400, 16px));padding-inline-start:var(--token-space-400, var(--token-scale-400, 16px));-webkit-padding-end:var(--token-space-400, var(--token-scale-400, 16px));padding-inline-end:var(--token-space-400, var(--token-scale-400, 16px));padding-top:var(--token-space-300, var(--token-scale-300, 12px));padding-bottom:var(--token-space-300, var(--token-scale-300, 12px));font-family:var(--token-font-family, -apple-system, system-ui, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol");font-size:var(--token-font-size-350, 0.875rem);font-weight:var(--token-font-weight-regular, 400);letter-spacing:var(--token-font-letter-spacing-0, 0);line-height:1.714286;color:var(--token-text-default, var(--token-primitives-neutral-1200, #242528))}:host(.accordion-disabled) #header,:host(.accordion-disabled) #content{opacity:0.6}`;
6852
6852
 
6853
6853
  const accordionIosCss = () => `:host{display:block;position:relative;width:100%;overflow:hidden;z-index:0}:host(.accordion-expanding) ::slotted(ion-item[slot=header]),:host(.accordion-expanded) ::slotted(ion-item[slot=header]){--border-width:0px}#content{overflow:hidden;will-change:max-height}:host(.accordion-collapsing) #content{max-height:0 !important}:host(.accordion-collapsed) #content{display:none}:host(.accordion-expanding) #content{max-height:0}:host(.accordion-expanding) #content-wrapper{overflow:auto}:host(.accordion-disabled) #header,:host(.accordion-readonly) #header,:host(.accordion-disabled) #content,:host(.accordion-readonly) #content{pointer-events:none}@media (prefers-reduced-motion: reduce){:host,#content{-webkit-transition:none !important;transition:none !important}}:host{background-color:var(--ion-background-color, #ffffff)}:host(.accordion-animated){-webkit-transition:all 300ms cubic-bezier(0.25, 0.8, 0.5, 1);transition:all 300ms cubic-bezier(0.25, 0.8, 0.5, 1)}:host(.accordion-animated) #content{-webkit-transition:max-height 300ms cubic-bezier(0.25, 0.8, 0.5, 1);transition:max-height 300ms cubic-bezier(0.25, 0.8, 0.5, 1)}:host(.accordion-disabled) #header,:host(.accordion-disabled) #content{opacity:0.4}:host(.accordion-next) ::slotted(ion-item[slot=header]){--border-width:0.55px 0px 0.55px 0px}`;
6854
6854
 
@@ -46761,7 +46761,6 @@ class Toolbar {
46761
46761
  ];
46762
46762
  this.showClasses = ['show-start', 'show-end', 'show-primary', 'show-secondary'];
46763
46763
  this.slotSizeVars = ['--start-end-size', '--primary-secondary-size'];
46764
- this.hasLoaded = false;
46765
46764
  }
46766
46765
  componentWillLoad() {
46767
46766
  const buttons = Array.from(this.el.querySelectorAll('ion-buttons'));
@@ -46780,23 +46779,9 @@ class Toolbar {
46780
46779
  }
46781
46780
  this.updateSlotClasses();
46782
46781
  }
46783
- connectedCallback() {
46784
- /**
46785
- * The resize observer is stopped when the toolbar is removed from the DOM.
46786
- * If the toolbar is added back (for example, when it is moved), start it again.
46787
- * On the first connection the toolbar has not rendered yet, so this is left
46788
- * to componentDidLoad.
46789
- */
46790
- if (this.hasLoaded) {
46791
- this.updateSlotClasses();
46792
- }
46793
- }
46794
46782
  componentDidLoad() {
46795
- this.hasLoaded = true;
46796
46783
  this.updateSlotClasses();
46797
- }
46798
- disconnectedCallback() {
46799
- this.stopObservingSlotSizes();
46784
+ this.updateSlotWidths();
46800
46785
  }
46801
46786
  titlePlacementChanged() {
46802
46787
  this.updateSlotClasses();
@@ -46816,67 +46801,26 @@ class Toolbar {
46816
46801
  * Updates the CSS custom properties for slot widths
46817
46802
  * This ensures that slots shown by their met conditions
46818
46803
  * have a minimum width matching their required slot
46819
- *
46820
- * The slotted content is watched with a ResizeObserver instead of being
46821
- * measured after a timeout:
46822
- * - The observer callback runs after layout and before paint, so the slot
46823
- * widths are set in the same frame the content is first laid out. The
46824
- * title is already centered when it is first painted and does not move.
46825
- * - The callback runs again whenever the slotted content changes size,
46826
- * for example when a button is added or removed, or when a hidden
46827
- * toolbar becomes visible.
46828
- */
46829
- updateSlotWidths() {
46830
- // Stop watching the previous content before watching the current one.
46831
- this.stopObservingSlotSizes();
46832
- // Browsers without ResizeObserver can only measure once.
46833
- if (typeof ResizeObserver === 'undefined') {
46834
- this.measureAndUpdateSlots();
46835
- return;
46836
- }
46837
- const elementsToObserve = [];
46838
- const slots = ['start', 'end', 'primary', 'secondary'];
46839
- slots.forEach((slot) => {
46840
- if (this.el.classList.contains(`has-${slot}-content`)) {
46841
- elementsToObserve.push(...this.getSlottedElements(slot));
46804
+ */
46805
+ updateSlotWidths(tries = 0) {
46806
+ // Set timeout to try to execute after everything is rendered
46807
+ setTimeout(() => {
46808
+ // Attempt to measure and update
46809
+ const success = this.measureAndUpdateSlots();
46810
+ // If not all measurements were successful, try again in 100 ms
46811
+ // cap recursion at 5 tries for safety
46812
+ if (!success && tries < 5) {
46813
+ setTimeout(() => {
46814
+ this.updateSlotWidths(tries + 1);
46815
+ }, 100);
46842
46816
  }
46843
46817
  });
46844
- if (elementsToObserve.length === 0) {
46845
- return;
46846
- }
46847
- /**
46848
- * The observer also calls the callback once right after observing
46849
- * an element, which takes care of the first measurement.
46850
- */
46851
- const observer = new ResizeObserver(() => this.measureAndUpdateSlots());
46852
- elementsToObserve.forEach((element) => observer.observe(element));
46853
- this.slotResizeObserver = observer;
46854
- }
46855
- /**
46856
- * Stops watching the slotted content for size changes.
46857
- */
46858
- stopObservingSlotSizes() {
46859
- if (this.slotResizeObserver) {
46860
- this.slotResizeObserver.disconnect();
46861
- this.slotResizeObserver = undefined;
46862
- }
46863
- }
46864
- /**
46865
- * Returns the elements assigned to the given slot of the toolbar.
46866
- */
46867
- getSlottedElements(slotName) {
46868
- const slotElement = this.el.shadowRoot?.querySelector(`slot[name="${slotName}"]`);
46869
- if (!slotElement) {
46870
- return [];
46871
- }
46872
- return slotElement.assignedElements({ flatten: true });
46873
46818
  }
46874
46819
  /**
46875
46820
  * Measure the widths of the slots and update the CSS custom properties
46876
46821
  * for the minimum width of each pair of slots based on the largest width in each pair.
46877
46822
  * Returns whether we successfully measured all of the slots we expect to have content.
46878
- * If not, the content probably hasn't rendered yet, and the ResizeObserver
46879
- * measures again once it does.
46823
+ * If not, the content probably hasn't rendered yet and we need to try again.
46880
46824
  */
46881
46825
  measureAndUpdateSlots() {
46882
46826
  // Define the relationship between slots based on the conditions array
@@ -46885,13 +46829,6 @@ class Toolbar {
46885
46829
  { name: 'start-end', slots: ['start', 'end'] },
46886
46830
  { name: 'primary-secondary', slots: ['primary', 'secondary'] },
46887
46831
  ];
46888
- /**
46889
- * Once a size property is set, the slots cannot be narrower than it.
46890
- * Remove the properties first so each slot is measured at the width of
46891
- * its content, which lets the slots shrink when their content does.
46892
- * This runs before paint, so the slots are never painted without a size.
46893
- */
46894
- this.slotSizeVars.forEach((cssVar) => this.el.style.removeProperty(cssVar));
46895
46832
  // First, measure all slot widths
46896
46833
  const slotWidths = new Map();
46897
46834
  let allMeasurementsSuccessful = true;
@@ -46950,8 +46887,6 @@ class Toolbar {
46950
46887
  * Removes all slot visibility classes and slot width CSS variables.
46951
46888
  */
46952
46889
  removeSlotClasses() {
46953
- // The slot widths are no longer used, so there is nothing to watch.
46954
- this.stopObservingSlotSizes();
46955
46890
  this.el.classList.remove(...this.slotClasses, ...this.showClasses);
46956
46891
  this.slotSizeVars.forEach((cssVar) => this.el.style.removeProperty(cssVar));
46957
46892
  }
@@ -47035,14 +46970,14 @@ class Toolbar {
47035
46970
  Object.assign(childStyles, style);
47036
46971
  });
47037
46972
  const titlePlacement = this.getTitlePlacement();
47038
- return (hAsync(Host, { key: '2ee4ee2329ba499bd3fe24eb58f8954c86d39b01', class: {
46973
+ return (hAsync(Host, { key: '3b97d3de5b1910257170355995eb7a50a2b6dcc4', class: {
47039
46974
  ...createColorClasses$1(this.color, {
47040
46975
  [theme]: true,
47041
46976
  'in-toolbar': hostContext('ion-toolbar', this.el),
47042
46977
  [`toolbar-title-placement-${titlePlacement}`]: true,
47043
46978
  }),
47044
46979
  ...childStyles,
47045
- } }, hAsync("div", { key: '68da02a622db1ed136a31700421c5da005ae3884', class: "toolbar-background", part: "background" }), hAsync("div", { key: 'cefcad22e28e1468de024a0cbe477464a872dc66', class: "toolbar-container", part: "container" }, hAsync("slot", { key: '9ebfc464b5c32c6d2b5c81a0a0c415effa15ce3c', name: "start", onSlotchange: () => this.updateSlotClasses() }), hAsync("slot", { key: '55a07aa0000e1b02814f7a01ad1610d1d723f442', name: "secondary", onSlotchange: () => this.updateSlotClasses() }), hAsync("div", { key: '51d1e06e0463788b5f794831faadd305aa8bca75', class: "toolbar-content", part: "content" }, hAsync("slot", { key: '6982cc6886f76cf43d78e3f0e9243dc05f67d34c' })), hAsync("slot", { key: 'b00b9b9b28c1637a04781ef88b5d9474fb5c0647', name: "primary", onSlotchange: () => this.updateSlotClasses() }), hAsync("slot", { key: '4fce3b9b17f7775d0ba14cd5185e500753b4976e', name: "end", onSlotchange: () => this.updateSlotClasses() }))));
46980
+ } }, hAsync("div", { key: '26f85390aa62f118e585fd8560fba0620b30fd51', class: "toolbar-background", part: "background" }), hAsync("div", { key: '57e32773d5642dde7f5d7cca9aaceb41b4d800bd', class: "toolbar-container", part: "container" }, hAsync("slot", { key: '5429b3f898703339749a55af6bb28d7e4d969679', name: "start", onSlotchange: () => this.updateSlotClasses }), hAsync("slot", { key: 'c5565f7020f52a1f075d9c6908ace042d488642f', name: "secondary", onSlotchange: () => this.updateSlotClasses }), hAsync("div", { key: '2d083bcd57512041321a68b43d6b90144eb20166', class: "toolbar-content", part: "content" }, hAsync("slot", { key: 'eb8abc0b9b96c699355891fbd0d284094cde7632' })), hAsync("slot", { key: 'ca66f2dcce1f5382ed40a120cf32f759597a11ad', name: "primary", onSlotchange: () => this.updateSlotClasses }), hAsync("slot", { key: '19e3eb792d45c21404fe48f119d68248b5d7dca7', name: "end", onSlotchange: () => this.updateSlotClasses }))));
47046
46981
  }
47047
46982
  get el() { return getElement(this); }
47048
46983
  static get watchers() { return {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ionic/core",
3
- "version": "9.0.11-dev.11793874002.1c88a1d0",
3
+ "version": "9.0.11-dev.11793888057.13a7fa02",
4
4
  "description": "Base components for Ionic",
5
5
  "engines": {
6
6
  "node": ">= 16"
@@ -1,4 +0,0 @@
1
- /*!
2
- * (C) Ionic http://ionicframework.com - MIT License
3
- */
4
- import{d as t,H as o,j as e,h as a,f as r,t as n}from"./p-DFBWAYvo.js";import{c as i,h as s}from"./p-BUF_V-Kg.js";import{b as d}from"./p-C93i7QCU.js";const l=t(class extends o{constructor(t){super(),!1!==t&&this.__registerHost(),this.__attachShadow(),this.childrenStyles=new Map,this.slotClasses=["has-start-content","has-end-content","has-primary-content","has-secondary-content"],this.showClasses=["show-start","show-end","show-primary","show-secondary"],this.slotSizeVars=["--start-end-size","--primary-secondary-size"],this.hasLoaded=!1}componentWillLoad(){const t=Array.from(this.el.querySelectorAll("ion-buttons")),o=t.find((t=>"start"===t.slot));o&&o.classList.add("buttons-first-slot");const e=t.reverse(),a=e.find((t=>"end"===t.slot))||e.find((t=>"primary"===t.slot))||e.find((t=>"secondary"===t.slot));a&&a.classList.add("buttons-last-slot"),this.updateSlotClasses()}connectedCallback(){this.hasLoaded&&this.updateSlotClasses()}componentDidLoad(){this.hasLoaded=!0,this.updateSlotClasses()}disconnectedCallback(){this.stopObservingSlotSizes()}titlePlacementChanged(){this.updateSlotClasses()}getTitlePlacement(){return void 0!==this.titlePlacement?this.titlePlacement:"ionic"===d(this)||"ios"===d(this)?"center":"start"}updateSlotWidths(){if(this.stopObservingSlotSizes(),"undefined"==typeof ResizeObserver)return void this.measureAndUpdateSlots();const t=[];if(["start","end","primary","secondary"].forEach((o=>{this.el.classList.contains(`has-${o}-content`)&&t.push(...this.getSlottedElements(o))})),0===t.length)return;const o=new ResizeObserver((()=>this.measureAndUpdateSlots()));t.forEach((t=>o.observe(t))),this.slotResizeObserver=o}stopObservingSlotSizes(){this.slotResizeObserver&&(this.slotResizeObserver.disconnect(),this.slotResizeObserver=void 0)}getSlottedElements(t){const o=this.el.shadowRoot?.querySelector(`slot[name="${t}"]`);return o?o.assignedElements({flatten:!0}):[]}measureAndUpdateSlots(){const t=[{name:"start-end",slots:["start","end"]},{name:"primary-secondary",slots:["primary","secondary"]}];this.slotSizeVars.forEach((t=>this.el.style.removeProperty(t)));const o=new Map;let e=!0;return["start","end","primary","secondary"].forEach((a=>{if(this.el.classList.contains(`has-${a}-content`)){const r=this.el.shadowRoot?.querySelector(`slot[name="${a}"]`);if(r){if(r.assignedElements({flatten:!0}).some((t=>"IMG"===t.tagName||"ION-IMG"===t.tagName||null!==t.querySelector("img, ion-img")))){const{name:o}=t.find((t=>t.slots.includes(a)));this.el.style.setProperty(`--${o}-size`,"auto")}const n=r.offsetWidth;n>0?o.set(a,n):e=!1}}})),t.forEach((({name:t,slots:e})=>{let a=0,r=!1;e.forEach((t=>{o.has(t)&&(r=!0,a=Math.max(a,o.get(t)??0))})),r&&a>0&&this.el.style.setProperty(`--${t}-size`,`${a}px`)})),e}removeSlotClasses(){this.stopObservingSlotSizes(),this.el.classList.remove(...this.slotClasses,...this.showClasses),this.slotSizeVars.forEach((t=>this.el.style.removeProperty(t)))}updateSlotClasses(){if("center"!==this.getTitlePlacement())return void this.removeSlotClasses();const t=[],o=[];["start","end","primary","secondary"].forEach((e=>{const a=`has-${e}-content`;this.hasSlotContent(e)?t.push(a):o.push(a)})),[{name:"end",requiredSlots:["start"],excludeSlots:["end","primary"]},{name:"start",requiredSlots:["end"],excludeSlots:["start","secondary"]},{name:"secondary",requiredSlots:["primary"],excludeSlots:["secondary","start"]},{name:"primary",requiredSlots:["secondary"],excludeSlots:["primary","end"]}].forEach((e=>{const a=e.requiredSlots.every((o=>t.includes(`has-${o}-content`))),r=e.excludeSlots.some((o=>t.includes(`has-${o}-content`))),n=`show-${e.name}`;a&&!r?t.push(n):o.push(n)})),this.el.classList.add(...t),this.el.classList.remove(...o),this.updateSlotWidths()}hasSlotContent(t){const o=this.el.shadowRoot?.querySelector(`slot[name="${t}"]`);return!!o&&o.assignedNodes().length>0}childrenStyle(t){t.stopPropagation();const o=t.target.tagName,a=t.detail,r={},n=this.childrenStyles.get(o)||{};let i=!1;Object.keys(a).forEach((t=>{const o=`toolbar-${t}`,e=a[t];e!==n[o]&&(i=!0),e&&(r[o]=!0)})),i&&(this.childrenStyles.set(o,r),e(this))}render(){const t=d(this),o={};this.childrenStyles.forEach((t=>{Object.assign(o,t)}));const e=this.getTitlePlacement();return a(r,{key:"2ee4ee2329ba499bd3fe24eb58f8954c86d39b01",class:{...i(this.color,{[t]:!0,"in-toolbar":s("ion-toolbar",this.el),[`toolbar-title-placement-${e}`]:!0}),...o}},a("div",{key:"68da02a622db1ed136a31700421c5da005ae3884",class:"toolbar-background",part:"background"}),a("div",{key:"cefcad22e28e1468de024a0cbe477464a872dc66",class:"toolbar-container",part:"container"},a("slot",{key:"9ebfc464b5c32c6d2b5c81a0a0c415effa15ce3c",name:"start",onSlotchange:()=>this.updateSlotClasses()}),a("slot",{key:"55a07aa0000e1b02814f7a01ad1610d1d723f442",name:"secondary",onSlotchange:()=>this.updateSlotClasses()}),a("div",{key:"51d1e06e0463788b5f794831faadd305aa8bca75",class:"toolbar-content",part:"content"},a("slot",{key:"6982cc6886f76cf43d78e3f0e9243dc05f67d34c"})),a("slot",{key:"b00b9b9b28c1637a04781ef88b5d9474fb5c0647",name:"primary",onSlotchange:()=>this.updateSlotClasses()}),a("slot",{key:"4fce3b9b17f7775d0ba14cd5185e500753b4976e",name:"end",onSlotchange:()=>this.updateSlotClasses()})))}get el(){return this}static get watchers(){return{titlePlacement:[{titlePlacementChanged:0}]}}static get style(){return{ionic:":host{--border-width:0;--border-style:solid;--opacity:1;--opacity-scale:1;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:block;position:relative;width:100%;padding-right:var(--ion-safe-area-right);padding-left:var(--ion-safe-area-left);color:var(--color);contain:content;-webkit-box-sizing:border-box;box-sizing:border-box}.toolbar-container{-webkit-padding-start:var(--padding-start);padding-inline-start:var(--padding-start);-webkit-padding-end:var(--padding-end);padding-inline-end:var(--padding-end);padding-top:var(--padding-top);padding-bottom:var(--padding-bottom);display:-ms-flexbox;display:flex;position:relative;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;width:100%;min-height:var(--min-height);contain:content;overflow:hidden;-webkit-box-sizing:border-box;box-sizing:border-box}.toolbar-background{right:0;left:0;top:0;bottom:0;position:absolute;-webkit-transform:translateZ(0);transform:translateZ(0);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);contain:strict;opacity:calc(var(--opacity) * var(--opacity-scale));pointer-events:none}::slotted(ion-progress-bar){right:0;left:0;bottom:0;position:absolute}:host{--background:var(--token-bg-surface-default, var(--token-primitives-base-white, #ffffff));--color:var(--token-text-default, var(--token-primitives-neutral-1200, #242528));--border-color:currentColor;--padding-top:var(--token-space-200, var(--token-scale-200, 8px));--padding-bottom:var(--token-space-200, var(--token-scale-200, 8px));--padding-start:var(--token-space-200, var(--token-scale-200, 8px));--padding-end:var(--token-space-200, var(--token-scale-200, 8px));--min-height:var(--token-scale-1400, 56px)}.toolbar-container{gap:var(--token-space-400, var(--token-scale-400, 16px));z-index:10}.toolbar-background{z-index:-1}.toolbar-content{-ms-flex:1 1 auto;flex:1 1 auto;min-width:0}:host(.toolbar-searchbar) ::slotted(ion-searchbar){padding-left:0;padding-right:0;padding-top:0;padding-bottom:0}::slotted(ion-buttons){gap:var(--token-space-200, var(--token-scale-200, 8px))}::slotted(ion-title){-webkit-padding-start:var(--token-space-200, var(--token-scale-200, 8px));padding-inline-start:var(--token-space-200, var(--token-scale-200, 8px));-webkit-padding-end:var(--token-space-200, var(--token-scale-200, 8px));padding-inline-end:var(--token-space-200, var(--token-scale-200, 8px))}:host(.toolbar-title-large) ::slotted(ion-title){-webkit-padding-start:var(--token-space-400, var(--token-scale-400, 16px));padding-inline-start:var(--token-space-400, var(--token-scale-400, 16px));-webkit-padding-end:var(--token-space-400, var(--token-scale-400, 16px));padding-inline-end:var(--token-space-400, var(--token-scale-400, 16px))}:host(.has-end-content) slot[name=end],:host(.show-end) slot[name=end]{display:-ms-flexbox;display:flex;-ms-flex:0 0 var(--start-end-size, 0);flex:0 0 var(--start-end-size, 0);-ms-flex-pack:end;justify-content:flex-end;text-align:end}:host(.has-start-content) slot[name=start],:host(.show-start) slot[name=start]{display:-ms-flexbox;display:flex;-ms-flex:0 0 var(--start-end-size, 0);flex:0 0 var(--start-end-size, 0)}:host(.has-primary-content) slot[name=primary],:host(.show-primary) slot[name=primary]{display:-ms-flexbox;display:flex;-ms-flex:0 0 var(--primary-secondary-size, 0);flex:0 0 var(--primary-secondary-size, 0);-ms-flex-pack:end;justify-content:flex-end;text-align:end}:host(.has-secondary-content) slot[name=secondary],:host(.show-secondary) slot[name=secondary]{display:-ms-flexbox;display:flex;-ms-flex:0 0 var(--primary-secondary-size, 0);flex:0 0 var(--primary-secondary-size, 0)}:host(.toolbar-title-placement-start) ::slotted(ion-title){text-align:start}:host(.toolbar-title-placement-center) ::slotted(ion-title){text-align:center}:host(.toolbar-title-placement-end) ::slotted(ion-title){text-align:end}",ios:":host{--border-width:0;--border-style:solid;--opacity:1;--opacity-scale:1;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:block;position:relative;width:100%;padding-right:var(--ion-safe-area-right);padding-left:var(--ion-safe-area-left);color:var(--color);contain:content;-webkit-box-sizing:border-box;box-sizing:border-box}.toolbar-container{-webkit-padding-start:var(--padding-start);padding-inline-start:var(--padding-start);-webkit-padding-end:var(--padding-end);padding-inline-end:var(--padding-end);padding-top:var(--padding-top);padding-bottom:var(--padding-bottom);display:-ms-flexbox;display:flex;position:relative;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;width:100%;min-height:var(--min-height);contain:content;overflow:hidden;-webkit-box-sizing:border-box;box-sizing:border-box}.toolbar-background{right:0;left:0;top:0;bottom:0;position:absolute;-webkit-transform:translateZ(0);transform:translateZ(0);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);contain:strict;opacity:calc(var(--opacity) * var(--opacity-scale));pointer-events:none}::slotted(ion-progress-bar){right:0;left:0;bottom:0;position:absolute}:host{font-family:var(--ion-font-family, inherit);z-index:10}:host(.ion-color){color:var(--ion-color-contrast)}:host(.ion-color) .toolbar-background{background:var(--ion-color-base)}.toolbar-container{z-index:10}.toolbar-background{z-index:-1}:host{--background:var(--ion-toolbar-background, var(--ion-color-step-50, var(--ion-background-color-step-50, #f7f7f7)));--color:var(--ion-toolbar-color, var(--ion-text-color, #000));--border-color:var(--ion-toolbar-border-color, var(--ion-border-color, var(--ion-color-step-150, var(--ion-background-color-step-150, rgba(0, 0, 0, 0.2)))));--padding-top:3px;--padding-bottom:3px;--padding-start:4px;--padding-end:4px;--min-height:44px}.toolbar-content{-ms-flex:1;flex:1;-ms-flex-order:4;order:4;min-width:0}:host(.toolbar-segment) .toolbar-content{display:-ms-inline-flexbox;display:inline-flex}:host(.toolbar-searchbar) .toolbar-container{padding-top:0;padding-bottom:0}:host(.toolbar-searchbar) ::slotted(*){-ms-flex-item-align:start;align-self:start}:host(.toolbar-searchbar) ::slotted(ion-chip){margin-top:3px}::slotted(ion-buttons){min-height:38px}::slotted([slot=start]){-ms-flex-order:2;order:2}::slotted([slot=secondary]){-ms-flex-order:3;order:3}::slotted([slot=primary]){-ms-flex-order:5;order:5;text-align:end}::slotted([slot=end]){-ms-flex-order:6;order:6;text-align:end}:host(.toolbar-title-large) .toolbar-container{-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-align:start;align-items:flex-start}:host(.toolbar-title-large) .toolbar-content ion-title{-ms-flex:1;flex:1;-ms-flex-order:8;order:8;min-width:100%}",md:":host{--border-width:0;--border-style:solid;--opacity:1;--opacity-scale:1;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:block;position:relative;width:100%;padding-right:var(--ion-safe-area-right);padding-left:var(--ion-safe-area-left);color:var(--color);contain:content;-webkit-box-sizing:border-box;box-sizing:border-box}.toolbar-container{-webkit-padding-start:var(--padding-start);padding-inline-start:var(--padding-start);-webkit-padding-end:var(--padding-end);padding-inline-end:var(--padding-end);padding-top:var(--padding-top);padding-bottom:var(--padding-bottom);display:-ms-flexbox;display:flex;position:relative;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;width:100%;min-height:var(--min-height);contain:content;overflow:hidden;-webkit-box-sizing:border-box;box-sizing:border-box}.toolbar-background{right:0;left:0;top:0;bottom:0;position:absolute;-webkit-transform:translateZ(0);transform:translateZ(0);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);contain:strict;opacity:calc(var(--opacity) * var(--opacity-scale));pointer-events:none}::slotted(ion-progress-bar){right:0;left:0;bottom:0;position:absolute}:host{font-family:var(--ion-font-family, inherit);z-index:10}:host(.ion-color){color:var(--ion-color-contrast)}:host(.ion-color) .toolbar-background{background:var(--ion-color-base)}.toolbar-container{z-index:10}.toolbar-background{z-index:-1}:host{--background:var(--ion-toolbar-background, var(--ion-background-color, #fff));--color:var(--ion-toolbar-color, var(--ion-text-color, #424242));--border-color:var(--ion-toolbar-border-color, var(--ion-border-color, var(--ion-color-step-150, var(--ion-background-color-step-150, #c1c4cd))));--padding-top:0;--padding-bottom:0;--padding-start:0;--padding-end:0;--min-height:56px}.toolbar-content{-ms-flex:1;flex:1;-ms-flex-order:3;order:3;min-width:0;max-width:100%}::slotted(.buttons-first-slot){-webkit-margin-start:4px;margin-inline-start:4px}::slotted(.buttons-last-slot){-webkit-margin-end:4px;margin-inline-end:4px}::slotted([slot=start]){-ms-flex-order:2;order:2}::slotted([slot=secondary]){-ms-flex-order:4;order:4}::slotted([slot=primary]){-ms-flex-order:5;order:5;text-align:end}::slotted([slot=end]){-ms-flex-order:6;order:6;text-align:end}"}}},[289,"ion-toolbar",{color:[513],titlePlacement:[1,"title-placement"]},[[0,"ionStyle","childrenStyle"]],{titlePlacement:[{titlePlacementChanged:0}]}]);function c(){"undefined"!=typeof customElements&&["ion-toolbar"].forEach((t=>{"ion-toolbar"===t&&(customElements.get(n(t))||customElements.define(n(t),l))}))}export{l as T,c as d}