UNPKG

@ionic/core

Version:
4 lines • 3.95 kB
/*! * (C) Ionic http://ionicframework.com - MIT License */ import{d as o,H as t,i as s,h as e,f as a,t as i}from"./p-Ct2aBEue.js";import{c as r,h as l}from"./p-byZM6qHV.js";import{b as n}from"./p-HthJZjZ6.js";const c=o(class extends t{constructor(o){super(),!1!==o&&this.__registerHost(),this.__attachShadow(),this.ionCollapsedClick=s(this,"ionCollapsedClick",7),this.itemsBeforeCollapse=1,this.itemsAfterCollapse=1,this.breadcrumbsInit=()=>{this.setBreadcrumbSeparator(),this.setMaxItems()},this.resetActiveBreadcrumb=()=>{const o=this.getBreadcrumbs().find((o=>o.active));o&&this.activeChanged&&(o.active=!1)},this.setMaxItems=()=>{const{itemsAfterCollapse:o,itemsBeforeCollapse:t,maxItems:s}=this,e=this.getBreadcrumbs();for(const o of e)o.showCollapsedIndicator=!1,o.collapsed=!1;void 0!==s&&e.length>s&&t+o<=s&&e.forEach(((s,a)=>{a===t&&(s.showCollapsedIndicator=!0),a>=t&&a<e.length-o&&(s.collapsed=!0)}))},this.setBreadcrumbSeparator=()=>{const{itemsAfterCollapse:o,itemsBeforeCollapse:t,maxItems:s}=this,e=this.getBreadcrumbs(),a=e.find((o=>o.active));for(const i of e){const r=void 0!==s&&0===o?i===e[t]:i===e[e.length-1];i.last=r,i.separator=void 0!==i.separator?i.separator:!r||void 0,!a&&r&&(i.active=!0,this.activeChanged=!0)}},this.getBreadcrumbs=()=>Array.from(this.el.querySelectorAll("ion-breadcrumb")),this.slotChanged=()=>{this.resetActiveBreadcrumb(),this.breadcrumbsInit()}}onCollapsedClick(o){const t=this.getBreadcrumbs().filter((o=>o.collapsed));this.ionCollapsedClick.emit({...o.detail,collapsedBreadcrumbs:t})}maxItemsChanged(){this.resetActiveBreadcrumb(),this.breadcrumbsInit()}componentWillLoad(){this.breadcrumbsInit()}render(){const{color:o,collapsed:t}=this,s=n(this);return e(a,{key:"fe64e9cdf597ede2db140bf5fa05a0359d82db57",class:r(o,{[s]:!0,"in-toolbar":l("ion-toolbar",this.el),"in-toolbar-color":l("ion-toolbar[color]",this.el),"breadcrumbs-collapsed":t})},e("slot",{key:"a2c99b579e339055c50a613d5c6b61032f5ddffe",onSlotchange:this.slotChanged}))}get el(){return this}static get watchers(){return{maxItems:[{maxItemsChanged:0}],itemsBeforeCollapse:[{maxItemsChanged:0}],itemsAfterCollapse:[{maxItemsChanged:0}]}}static get style(){return{ios:":host{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-align:center;align-items:center}:host(.in-toolbar-color),:host(.in-toolbar-color) .breadcrumbs-collapsed-indicator ion-icon{color:var(--ion-color-contrast)}:host(.in-toolbar-color) .breadcrumbs-collapsed-indicator{background:rgba(var(--ion-color-contrast-rgb), 0.11)}:host(.in-toolbar){-webkit-padding-start:20px;padding-inline-start:20px;-webkit-padding-end:20px;padding-inline-end:20px;padding-top:0;padding-bottom:0;-ms-flex-pack:center;justify-content:center}",md:":host{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-align:center;align-items:center}:host(.in-toolbar-color),:host(.in-toolbar-color) .breadcrumbs-collapsed-indicator ion-icon{color:var(--ion-color-contrast)}:host(.in-toolbar-color) .breadcrumbs-collapsed-indicator{background:rgba(var(--ion-color-contrast-rgb), 0.11)}:host(.in-toolbar){-webkit-padding-start:8px;padding-inline-start:8px;-webkit-padding-end:8px;padding-inline-end:8px;padding-top:0;padding-bottom:0}"}}},[289,"ion-breadcrumbs",{color:[513],maxItems:[2,"max-items"],itemsBeforeCollapse:[2,"items-before-collapse"],itemsAfterCollapse:[2,"items-after-collapse"],collapsed:[32],activeChanged:[32]},[[0,"collapsedClick","onCollapsedClick"]],{maxItems:[{maxItemsChanged:0}],itemsBeforeCollapse:[{maxItemsChanged:0}],itemsAfterCollapse:[{maxItemsChanged:0}]}]),d=c,m=function(){"undefined"!=typeof customElements&&["ion-breadcrumbs"].forEach((o=>{"ion-breadcrumbs"===o&&(customElements.get(i(o))||customElements.define(i(o),c))}))};export{d as IonBreadcrumbs,m as defineCustomElement}