@table-bro/native 1.1.0 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,33 +1,34 @@
1
- if(typeof exports!=`object`&&typeof define!=`function`&&typeof TableBro>`u`)throw Error(`@table-bro/native: load the @table-bro/core script before the skin script, the TableBro global is missing.`);(function(e,t){typeof exports==`object`&&typeof module<`u`?t(exports,require("@table-bro/core")):typeof define==`function`&&define.amd?define([`exports`,`@table-bro/core`],t):(e=typeof globalThis<`u`?globalThis:e||self,t(e.TableBroNative={},e.TableBro))})(this,function(e,t){Object.defineProperty(e,Symbol.toStringTag,{value:`Module`});let{escape:n}=t.BroHTML;var r=class extends t.BroHTMLElement{template(){this.css=this.config.components.switch?.css,this.checked=this.getAttribute(`checked`);let e=this.checked===`true`;return`
2
- <div ${this.css?`class="${n(this.css.div.className)}"`:``}>
1
+ if(typeof exports!=`object`&&typeof define!=`function`&&typeof TableBro>`u`)throw Error(`@table-bro/native: load the @table-bro/core script before the skin script, the TableBro global is missing.`);(function(e,t){typeof exports==`object`&&typeof module<`u`?t(exports,require("@table-bro/core")):typeof define==`function`&&define.amd?define([`exports`,`@table-bro/core`],t):(e=typeof globalThis<`u`?globalThis:e||self,t(e.TableBroNative={},e.TableBro))})(this,function(e,t){Object.defineProperty(e,Symbol.toStringTag,{value:`Module`});let n={},r=/* @__PURE__ */ new Set;function i(e){n={...n,...e},r.forEach(e=>e.renderEmpty())}var a=class extends t.BroHTMLElement{template(){let e=this.col?.name,t=e&&this.row?.[e];return this.empty=!(Array.isArray(t)&&t.length),this.items=this.empty?[this.emptyText()]:t,this.items.map(()=>this.tagHTML).join(``)}row;col;config;items=[];empty=!1;fitting;rendered=!1;render(){this.insertAdjacentHTML(`afterbegin`,this.template()),Array.from(this.children).forEach((e,t)=>this.renderTag(e,this.items[t]))}renderEmpty(){this.empty&&this.firstElementChild&&(this.items=[this.emptyText()],this.renderTag(this.firstElementChild,this.items[0]))}renderTag(e,t){this.col?.html?e.innerHTML=t:e.textContent=t}emptyText(){return n.empty??this.config?.texts.noItems??`No data`}connectedCallback(){r.add(this),this.rendered?this.renderEmpty():(this.rendered=!0,this.render()),this.fitting=new AbortController,(0,t.fitCellItems)(this,this.fitting.signal)}disconnectedCallback(){r.delete(this),this.fitting?.abort()}};let{escape:o}=t.BroHTML;var s=class extends t.BroHTMLElement{template(){this.css=this.config.components.switch?.css,this.checked=this.getAttribute(`checked`);let e=this.checked===`true`;return`
2
+ <div ${this.css?`class="${o(this.css.div.className)}"`:``}>
3
3
  <input type="checkbox"
4
- ${this.css?`class="${n(this.css.div.input.className)}"`:``}
4
+ ${this.css?`class="${o(this.css.div.input.className)}"`:``}
5
5
  role="switch"
6
6
  ${e?` checked`:``}>
7
- </div>`}config;col;checked;css;rendered=!1;events(){let e=this.querySelector(`input`),t=this.getAttribute(`name`);e.setAttribute(`aria-label`,this.col?.title??``),e.addEventListener(`change`,()=>{t&&this.dispatchEvent(new CustomEvent(`action`,{detail:t}))})}render(){this.insertAdjacentHTML(`afterbegin`,this.template()),this.events()}connectedCallback(){this.rendered||(this.rendered=!0,this.render())}};let{escape:i}=t.BroHTML;var a=class extends t.BroHTMLElement{template(){this.css=this.config.components.toolbar.css;let e=this.css.nav.div?.className?`${this.css.nav.div.className} ${this.contentClassName}`:this.contentClassName;return`
8
- <nav class="${i(this.css.nav.className)}">
9
- <div class="${i(e)}">
7
+ </div>`}config;col;checked;css;rendered=!1;events(){let e=this.querySelector(`input`),t=this.getAttribute(`name`);e.setAttribute(`aria-label`,this.col?.title??``),e.addEventListener(`change`,()=>{t&&this.dispatchEvent(new CustomEvent(`action`,{detail:t}))})}render(){this.insertAdjacentHTML(`afterbegin`,this.template()),this.events()}connectedCallback(){this.rendered||(this.rendered=!0,this.render())}};let{escape:c}=t.BroHTML;var l=class extends t.BroHTMLElement{template(){this.css=this.config.components.toolbar.css;let e=this.css.nav.div?.className?`${this.css.nav.div.className} ${this.contentClassName}`:this.contentClassName;return`
8
+ <nav class="${c(this.css.nav.className)}">
9
+ <div class="${c(e)}">
10
10
  <!-- toolbar content -->
11
11
  </div>
12
- </nav>`}config;contentClassName=`bro-toolbar-content`;css;render(){this.insertAdjacentHTML(`afterbegin`,this.template())}appendToolbarContent(...e){this.firstChild||this.render(),this.querySelector(`.${this.contentClassName}`)?.append(...e)}};let{createElement:o,escape:s}=t.BroHTML;var c=class extends t.BroHTMLElement{template(){this.css=this.config.components.toolbarMain.css,this.toolbarTitle=this.config.toolbarTitle;let e=this.css.navbarCollapse.ul.className?`${this.css.navbarCollapse.ul.className} ${this.contentClassName}`:this.contentClassName;return`
12
+ </nav>`}config;contentClassName=`bro-toolbar-content`;css;render(){this.insertAdjacentHTML(`afterbegin`,this.template())}appendToolbarContent(...e){this.firstChild||this.render(),this.querySelector(`.${this.contentClassName}`)?.append(...e)}};let{escape:u}=t.BroHTML;var d=class extends t.BroHTMLElement{template(){this.css=this.config.components.toolbarMain.css,this.toolbarTitle=this.config.toolbarTitle;let e=this.css.navbarCollapse.ul.className?`${this.css.navbarCollapse.ul.className} ${this.contentClassName}`:this.contentClassName;return`
13
13
  <!--bro-toolbar-->
14
14
  <span class="bro-toolbar-title-space"></span>
15
- <span class="${s(this.css.toolbarTitle.className)}">${s(this.toolbarTitle)}</span>
15
+ <span class="${u(this.css.toolbarTitle.className)}">${u(this.toolbarTitle)}</span>
16
16
 
17
17
  <span class="bro-toolbar-space"></span>
18
18
 
19
- <div class="${s(this.css.navbarCollapse.className)} bro-toolbar-buttons">
20
- <ul class="${s(e)}">
19
+ <div class="${u(this.css.navbarCollapse.className)} bro-toolbar-buttons">
20
+ <ul class="${u(e)}">
21
21
  <!-- search-button -->
22
22
  <!-- buttons -->
23
23
  </ul>
24
24
  </div>
25
- <!--/bro-toolbar-->`}config;contentClassName=`bro-navbar-nav`;toolbarTitle;css;navContentEl;rendered=!1;events(){this.addEventListener(`click`,e=>{e.preventDefault()}),this.navContentEl.children[0].addEventListener(`click`,()=>{this.dispatchEvent(new CustomEvent(t.events.toolbarEvent,{bubbles:!0,composed:!0,detail:t.events.toolbarSearchOpenEvent}))})}render(){let e=document.createElement(this.config.components.toolbar.selector);e.setAttribute(`class`,`bro-toolbar`),e.config=this.config,this.appendChild(e);let t=document.createElement(`div`);t.insertAdjacentHTML(`afterbegin`,this.template()),e.appendToolbarContent(...Array.from(t.children)),this.appendToolbarContent(this.renderSearchButton(),...this.renderButtons()),this.querySelectorAll(this.config.components.dropdown?.selector).forEach(e=>{e.replaceWith(e.children[0])}),this.events()}connectedCallback(){this.rendered||(this.rendered=!0,this.render())}appendToolbarContent(...e){this.navContentEl||=this.querySelector(`.${this.contentClassName}`),this.navContentEl.append(...e)}templateToolbarButton(e,t,n){return o(`
26
- <li class="${s(this.css.navbarCollapse.ul.li.className)}">
27
- <a class="${s(this.css.navbarCollapse.ul.li.a.className)}${n?` ${s(n)}`:``}" href="">
28
- ${t||``}${s(e)}
25
+ <!--/bro-toolbar-->`}config;contentClassName=`bro-navbar-nav`;toolbarTitle;css;navContentEl;rendered=!1;events(){this.addEventListener(`click`,e=>{e.preventDefault()}),this.addEventListener(`keydown`,e=>{let t=e.target.closest?.(`a[role="button"]`);e.key===` `&&!e.repeat&&!e.defaultPrevented&&t&&(e.preventDefault(),t.click())}),this.navContentEl.children[0].addEventListener(`click`,()=>{this.dispatchEvent(new CustomEvent(t.events.toolbarEvent,{bubbles:!0,composed:!0,detail:t.events.toolbarSearchOpenEvent}))})}render(){let e=this.dom.createElement(this.config.components.toolbar.selector);e.setAttribute(`class`,`bro-toolbar`),e.config=this.config,this.appendChild(e);let t=this.dom.createElement(`div`);t.insertAdjacentHTML(`afterbegin`,this.template()),e.appendToolbarContent(...Array.from(t.children)),this.appendToolbarContent(this.renderSearchButton(),...this.renderButtons()),this.querySelectorAll(this.config.components.dropdown?.selector).forEach(e=>{e.replaceWith(e.children[0])}),this.events()}connectedCallback(){(0,t.isPrerendered)(this)||this.rendered||(this.rendered=!0,this.render())}appendToolbarContent(...e){this.navContentEl||=this.querySelector(`.${this.contentClassName}`),this.navContentEl.append(...e)}get dom(){return new t.BroDom(this.ownerDocument)}templateToolbarButton(e,n,r,i){let a=n===this.config.texts.buttonRole?` aria-hidden="true"`:``,o=e&&n?`<span class="${u(t.broVisuallyHidden)}"${a}> ${u(n)}</span>`:``;return this.dom.createFromHTML(`
26
+ <li class="${u(this.css.navbarCollapse.ul.li.className)}">
27
+ <a class="${u(this.css.navbarCollapse.ul.li.a.className)}${i?` ${u(i)}`:``}" href=""
28
+ role="button">
29
+ ${r||``}${u(e)}${o}
29
30
  </a>
30
- </li>`)}renderSearchButton(){let e=document.createElement(this.config.components.button.selector);this.config.components.toolbarMain.beforeRender?.(e,this.config.texts.search);let t=e.getAttribute(`button-title`)??``;return this.templateToolbarButton(t,e.iconHTML,`bro-toolbar-button-search`)}renderButtons(){return(this.config.components.toolbarMain.buttons??[]).map(e=>{if(e.mode===`navbar-dropdown`){let n=document.createElement(this.config.components.dropdown?.selector);return n.config=this.config,n.setAttribute(`mode`,`navbar-dropdown`),n.setAttribute(`button-title`,e.buttonTitle),n.setAttribute(`options`,JSON.stringify(e.options)),n.addEventListener(`value`,e=>{this.dispatchEvent(new CustomEvent(t.events.toolbarEvent,{bubbles:!0,composed:!0,detail:e.detail}))}),n}{let n=this.templateToolbarButton(e.buttonTitle,e.iconHTML);return n.querySelector(`a`)?.addEventListener(`click`,()=>{this.dispatchEvent(new CustomEvent(t.events.toolbarEvent,{bubbles:!0,composed:!0,detail:e.eventType}))}),n}})}};let{escape:l}=t.BroHTML;var u=class extends t.BroHTMLElement{template(){this.label=this.getAttribute(`label`)||``,this.buttonClassName=this.getAttribute(`button-class`),this.buttonTitle=this.getAttribute(`button-title`)||``,this.iconHTML=this.getAttribute(`icon-html`)||this.iconHTML,this.mode=this.getAttribute(`mode`)||`button`,this.eventType=this.getAttribute(`event-type`)||`action`;let e=this.buttonClassName?` class="${l(this.buttonClassName)}"`:``,t=!this.buttonTitle&&this.label?` aria-label="${l(this.label)}"`:``,n=`${l(this.buttonTitle)}${this.iconHTML?`${this.buttonTitle?`&nbsp;`:``}${this.iconHTML}`:``}`;return this.mode===`link`?`
31
+ </li>`)}renderSearchButton(){let e=this.dom.createElement(this.config.components.button.selector);this.config.components.toolbarMain.beforeRender?.(e,this.config.texts.search);let t=e.getAttribute(`button-title`)??``;return this.templateToolbarButton(t,this.config.texts.searchRole(this.config.toolbarTitle),e.iconHTML,`bro-toolbar-button-search`)}renderButtons(){return(this.config.components.toolbarMain.buttons??[]).map(e=>{if(e.mode===`navbar-dropdown`){let n=this.dom.createElement(this.config.components.dropdown?.selector);return n.config=this.config,n.setAttribute(`mode`,`navbar-dropdown`),n.setAttribute(`button-title`,e.buttonTitle),n.setAttribute(`options`,JSON.stringify(e.options)),n.addEventListener(`value`,e=>{this.dispatchEvent(new CustomEvent(t.events.toolbarEvent,{bubbles:!0,composed:!0,detail:e.detail}))}),n}{let n=this.templateToolbarButton(e.buttonTitle,this.config.texts.buttonRole,e.iconHTML);return n.querySelector(`a`)?.addEventListener(`click`,()=>{this.dispatchEvent(new CustomEvent(t.events.toolbarEvent,{bubbles:!0,composed:!0,detail:e.eventType}))}),n}})}};let{escape:f}=t.BroHTML;var p=class extends t.BroHTMLElement{template(){this.label=this.getAttribute(`label`)||``,this.buttonClassName=this.getAttribute(`button-class`),this.buttonTitle=this.getAttribute(`button-title`)||``,this.iconHTML=this.getAttribute(`icon-html`)||this.iconHTML,this.mode=this.getAttribute(`mode`)||`button`,this.eventType=this.getAttribute(`event-type`)||`action`;let e=this.buttonClassName?` class="${f(this.buttonClassName)}"`:``,t=!this.buttonTitle&&this.label?` aria-label="${f(this.label)}"`:``,n=`${f(this.buttonTitle)}${this.iconHTML?`${this.buttonTitle?`&nbsp;`:``}${this.iconHTML}`:``}`;return this.mode===`link`?`
31
32
  <a${e} href=""
32
33
  role="button"${t}>
33
34
  ${n}
@@ -35,14 +36,14 @@ if(typeof exports!=`object`&&typeof define!=`function`&&typeof TableBro>`u`)thro
35
36
  <button${e}
36
37
  type="button"${t}>
37
38
  ${n}
38
- </button>`}label;buttonClassName;buttonTitle;iconHTML;mode;eventType;events(){let e=this.children[0];e.addEventListener(`click`,n=>{(0,t.dispatchAction)(e,this.eventType),n.preventDefault()}),this.mode===`link`&&e.addEventListener(`keydown`,t=>{t.key===` `&&!t.repeat&&(t.preventDefault(),e.click())})}render(){this.insertAdjacentHTML(`afterbegin`,this.template()),this.events()}connectedCallback(){this.firstChild||this.render()}};let{escape:d,text:f}=t.BroHTML;var p=class extends t.BroHTMLElement{template(){return this.containerClassName=this.getAttribute(`container-class`),this.value=this.getAttribute(`value`)||``,`
39
- <span class="${t.broCellSelectors.ellipsisContainer}${this.containerClassName?` ${d(this.containerClassName)}`:``}">
39
+ </button>`}label;buttonClassName;buttonTitle;iconHTML;mode;eventType;events(){let e=this.children[0];e.addEventListener(`click`,n=>{(0,t.dispatchAction)(e,this.eventType),n.preventDefault()}),this.mode===`link`&&e.addEventListener(`keydown`,t=>{t.key===` `&&!t.repeat&&(t.preventDefault(),e.click())})}render(){this.insertAdjacentHTML(`afterbegin`,this.template()),this.events()}connectedCallback(){this.firstChild||this.render()}};let{escape:m,text:h}=t.BroHTML;var g=class extends t.BroHTMLElement{template(){return this.containerClassName=this.getAttribute(`container-class`),this.value=this.getAttribute(`value`)||``,`
40
+ <span class="${t.broCellSelectors.ellipsisContainer}${this.containerClassName?` ${m(this.containerClassName)}`:``}">
40
41
  <span class="${t.broCellSelectors.ellipsis}"></span>
41
- </span>`}row;col;config;containerClassName;tooltip;value;release;released=!1;rendered=!1;render(){this.insertAdjacentHTML(`afterbegin`,this.template());let e=this.querySelector(`.${t.broCellSelectors.ellipsis}`);this.col?.html?(e.innerHTML=this.value,this.tooltip=f(this.value)):(e.textContent=this.value,this.tooltip=this.value),this.afterRender()}connectedCallback(){this.rendered?this.released&&(this.released=!1,this.afterRender()):(this.rendered=!0,this.render())}disconnectedCallback(){queueMicrotask(()=>{this.isConnected||(typeof this.release==`function`&&this.release(),this.release=void 0,this.released=!0)})}afterRender(){let e=this.children[0];this.config.components.textEllipsis.afterRender&&(this.release=this.config.components.textEllipsis.afterRender(e,this.tooltip))}};let{escape:m}=t.BroHTML;var h=class extends t.BroHTMLElement{template(){this.arrowPosition=this.getAttribute(`arrow-position`)||`after`,this.sortId=this.getAttribute(`sort-id`)||``,this.dataType=this.getAttribute(`data-type`)||``,this.headerTitle=this.getAttribute(`header-title`)||``,this.iconHTML=this.getAttribute(`icon-html`)||``,this.tooltip=this.getAttribute(`tooltip`)||``;let e=``;this.arrowPosition===`before`&&(e+=` bro-sort-header-position-before`),e+=` bro-sort-header-descending`;let t=this.headerTitle?` role="button" tabindex="0"`:``;return`
42
+ </span>`}row;col;config;containerClassName;tooltip;value;release;released=!1;rendered=!1;render(){this.insertAdjacentHTML(`afterbegin`,this.template());let e=this.querySelector(`.${t.broCellSelectors.ellipsis}`);this.col?.html?(e.innerHTML=this.value,this.tooltip=h(this.value)):(e.textContent=this.value,this.tooltip=this.value),this.afterRender()}connectedCallback(){this.rendered?this.released&&(this.released=!1,this.afterRender()):(this.rendered=!0,this.render())}disconnectedCallback(){queueMicrotask(()=>{this.isConnected||(typeof this.release==`function`&&this.release(),this.release=void 0,this.released=!0)})}afterRender(){let e=this.children[0];this.config.components.textEllipsis.afterRender&&(this.release=this.config.components.textEllipsis.afterRender(e,this.tooltip))}};let{escape:_}=t.BroHTML;var v=class extends t.BroHTMLElement{template(){this.arrowPosition=this.getAttribute(`arrow-position`)||`after`,this.sortId=this.getAttribute(`sort-id`)||``,this.dataType=this.getAttribute(`data-type`)||``,this.headerTitle=this.getAttribute(`header-title`)||``,this.iconHTML=this.getAttribute(`icon-html`)||``,this.tooltip=this.getAttribute(`tooltip`)||``;let e=``;this.arrowPosition===`before`&&(e+=` bro-sort-header-position-before`),e+=` bro-sort-header-descending`;let t=this.headerTitle?` role="button" tabindex="0"`:``;return`
42
43
  <div class="bro-sort-header-container${e}"${t}>
43
- <div class="bro-sort-header-content">${m(this.headerTitle)}</div>
44
+ <div class="bro-sort-header-content">${_(this.headerTitle)}</div>
44
45
  <div class="bro-sort-header-arrow" aria-hidden="true">${this.iconHTML}</div>
45
- </div>`}static get observedAttributes(){return[`tooltip`]}config;arrowPosition;headerTitle;dataType;iconHTML;sortId;tooltip;_activeSort;direction=``;release;released=!1;rendered=!1;events(){let e=this.children[0];this.headerTitle&&(e.addEventListener(`blur`,()=>{e.classList.remove(`bro-sort-header-recently-cleared-ascending`)}),e.addEventListener(`keydown`,t=>{(t.key===`Enter`||t.key===` `)&&(t.preventDefault(),e.click())}),e.addEventListener(`click`,()=>{this.direction===``?(this.direction=`desc`,e.classList.add(`bro-sort-header-sorted`),e.classList.remove(`bro-sort-header-recently-cleared-ascending`)):this.direction===`desc`?(this.direction=`asc`,e.classList.remove(`bro-sort-header-descending`)):this.direction===`asc`&&(this.direction=``,e.classList.remove(`bro-sort-header-sorted`),e.classList.add(`bro-sort-header-descending`),e.classList.add(`bro-sort-header-recently-cleared-ascending`)),(0,t.dispatchAction)(this,t.events.filtersSortEvent,{sortKey:this.sortId,sortDirection:this.direction||void 0})}))}render(){this.insertAdjacentHTML(`afterbegin`,this.template()),this.afterRender(),this.events()}get activeSort(){return this._activeSort}set activeSort(e){this._activeSort=e;let t=this.children[0];this.direction!==``&&e?.sortKey!==this.sortId&&t&&(this.direction=``,t.classList.remove(`bro-sort-header-sorted`),t.classList.add(`bro-sort-header-descending`))}connectedCallback(){this.rendered?this.released&&(this.released=!1,this.afterRender()):(this.rendered=!0,this.render())}disconnectedCallback(){queueMicrotask(()=>{this.isConnected||(typeof this.release==`function`&&this.release(),this.release=void 0,this.released=!0)})}attributeChangedCallback(e,t,n){this.rendered&&t!==n&&(this.tooltip=n||``,typeof this.release==`function`&&this.release(),this.release=void 0,this.isConnected?this.afterRender():this.released=!0)}afterRender(){let e=this.children[0];this.release=this.config.components.sortHeader.afterRender?.(e,this.tooltip)}};
46
+ </div>`}static get observedAttributes(){return[`tooltip`]}config;arrowPosition;headerTitle;dataType;iconHTML;sortId;tooltip;_activeSort;direction=``;release;released=!1;rendered=!1;events(){let e=this.children[0];this.headerTitle&&(e.addEventListener(`blur`,()=>{e.classList.remove(`bro-sort-header-recently-cleared-ascending`)}),e.addEventListener(`keydown`,t=>{(t.key===`Enter`||t.key===` `)&&(t.preventDefault(),e.click())}),e.addEventListener(`click`,()=>{this.direction===``?(this.direction=`desc`,e.classList.add(`bro-sort-header-sorted`),e.classList.remove(`bro-sort-header-recently-cleared-ascending`)):this.direction===`desc`?(this.direction=`asc`,e.classList.remove(`bro-sort-header-descending`)):this.direction===`asc`&&(this.direction=``,e.classList.remove(`bro-sort-header-sorted`),e.classList.add(`bro-sort-header-descending`),e.classList.add(`bro-sort-header-recently-cleared-ascending`)),(0,t.dispatchAction)(this,t.events.filtersSortEvent,{sortKey:this.sortId,sortDirection:this.direction||void 0})}))}render(){this.insertAdjacentHTML(`afterbegin`,this.template()),this.afterRender(),this.events()}get activeSort(){return this._activeSort}set activeSort(e){this._activeSort=e;let t=this.children[0];this.direction!==``&&e?.sortKey!==this.sortId&&t&&(this.direction=``,t.classList.remove(`bro-sort-header-sorted`),t.classList.add(`bro-sort-header-descending`))}connectedCallback(){(0,t.isPrerendered)(this)||(this.rendered?this.released&&(this.released=!1,this.afterRender()):(this.rendered=!0,this.render()))}disconnectedCallback(){queueMicrotask(()=>{this.isConnected||(typeof this.release==`function`&&this.release(),this.release=void 0,this.released=!0)})}attributeChangedCallback(e,t,n){this.rendered&&t!==n&&(this.tooltip=n||``,typeof this.release==`function`&&this.release(),this.release=void 0,this.isConnected?this.afterRender():this.released=!0)}afterRender(){let e=this.children[0];this.config.prerender||(this.release=this.config.components.sortHeader.afterRender?.(e,this.tooltip))}};
46
47
  /**
47
48
  * @license
48
49
  * Copyright Google LLC All Rights Reserved.
@@ -50,12 +51,12 @@ if(typeof exports!=`object`&&typeof define!=`function`&&typeof TableBro>`u`)thro
50
51
  * Use of this source code is governed by an MIT-style license that can be
51
52
  * found in the LICENSE file at https://angular.dev/license
52
53
  */
53
- let{escape:g}=t.BroHTML,_={"bro-button":u,"bro-paginator":class extends t.BroHTMLElement{template(){this.disabled=this.getAttribute(`disabled`)===`true`||!1,this.length=Number(this.getAttribute(`length`))||0,this.pageIndex=Math.max(Number(this.getAttribute(`page-index`))||0,0),this.pageSize=Number(this.getAttribute(`page-size`)),this.showFirstLastButtons=this.getAttribute(`show-first-last-buttons`)!==`false`,this.parsePageSizeOptions();let e=this.texts=this.config.texts,t=this.config.components.paginator.css?.ul,n=t?.className?` class="${g(t.className)}"`:``,r=t?.li?.className?` class="${g(t.li.className)}"`:``,i=t?.li?.a?.className?`${g(t.li.a.className)} `:``;return this.dropdownSelector=this.config.components.dropdown?.selector,`
54
+ let{escape:y}=t.BroHTML,b={"bro-button":p,"bro-paginator":class extends t.BroHTMLElement{template(){this.disabled=this.getAttribute(`disabled`)===`true`||!1,this.length=Number(this.getAttribute(`length`))||0,this.pageIndex=Math.max(Number(this.getAttribute(`page-index`))||0,0),this.pageSize=Number(this.getAttribute(`page-size`)),this.showFirstLastButtons=this.getAttribute(`show-first-last-buttons`)!==`false`,this.parsePageSizeOptions();let e=this.texts=this.config.texts,t=this.config.components.paginator.css?.ul,n=t?.className?` class="${y(t.className)}"`:``,r=t?.li?.className?` class="${y(t.li.className)}"`:``,i=t?.li?.a?.className?`${y(t.li.a.className)} `:``;return this.dropdownSelector=this.config.components.dropdown?.selector,`
54
55
  <div class="bro-paginator-outer-container">
55
56
  <div class="bro-paginator-inner-container">
56
57
  <div class="bro-paginator-page-size">
57
58
  <div class="bro-paginator-page-size-label">
58
- ${g(e.itemsPerPage)}
59
+ ${y(e.itemsPerPage)}
59
60
  </div>
60
61
 
61
62
  ${this.pageSizeDropdown?.length?``:this.templatePageSizeValue()}
@@ -63,51 +64,51 @@ let{escape:g}=t.BroHTML,_={"bro-button":u,"bro-paginator":class extends t.BroHTM
63
64
 
64
65
  <div class="bro-paginator-range-actions">
65
66
  <div class="bro-paginator-range-label" aria-live="polite">
66
- ${g(e.rangeLabel(this.pageIndex,this.pageSize,this.length))}
67
+ ${y(e.rangeLabel(this.pageIndex,this.pageSize,this.length))}
67
68
  </div>
68
69
 
69
- <nav aria-label="${g(e.pageNavigation)}">
70
+ <nav aria-label="${y(e.pageNavigation)}">
70
71
  <ul${n}>
71
72
  ${this.showFirstLastButtons?`
72
73
  <li${r}>
73
74
  <a class="${i}bro-paginator-navigation-first" href=""
74
- aria-label="${g(e.firstPage)}">${g(e.first)}</a>
75
+ aria-label="${y(e.firstPage)}">${y(e.first)}</a>
75
76
  </li>`:``}
76
77
 
77
78
  <li${r}>
78
79
  <a class="${i}bro-paginator-navigation-previous" href=""
79
- aria-label="${g(e.previousPage)}">${g(e.previous)}</a>
80
+ aria-label="${y(e.previousPage)}">${y(e.previous)}</a>
80
81
  </li>
81
82
 
82
83
  <li${r}>
83
84
  <a class="${i}bro-paginator-navigation-next" href=""
84
- aria-label="${g(e.nextPage)}">${g(e.next)}</a>
85
+ aria-label="${y(e.nextPage)}">${y(e.next)}</a>
85
86
  </li>
86
87
 
87
88
  ${this.showFirstLastButtons?`
88
89
  <li${r}>
89
90
  <a class="${i}bro-paginator-navigation-last" href=""
90
- aria-label="${g(e.lastPage)}">${g(e.last)}</a>
91
+ aria-label="${y(e.lastPage)}">${y(e.last)}</a>
91
92
  </li>`:``}
92
93
  </ul>
93
94
  </nav>
94
95
  </div>
95
96
  </div>
96
- </div>`}static get observedAttributes(){return[`page-index`,`page-size`,`length`,`page-size-options`,`disabled`]}config;disabled;length;pageIndex;pageSize;pageSizeOptions;showFirstLastButtons;page;eventName=`page`;firstEl;previousEl;nextEl;lastEl;pageSizeEl;pageSizeValueEl;rangeLabelEl;dropdownSelector;texts;pageSizeDropdown;rendered=!1;events(){this.previousEl=this.querySelector(`.bro-paginator-navigation-previous`),this.nextEl=this.querySelector(`.bro-paginator-navigation-next`),this.previousEl.addEventListener(`click`,e=>{e.preventDefault(),this.hasPreviousPage()&&this.navigate(this.pageIndex-1)}),this.nextEl.addEventListener(`click`,e=>{e.preventDefault(),this.hasNextPage()&&this.navigate(this.pageIndex+1)}),this.showFirstLastButtons&&(this.firstEl=this.querySelector(`.bro-paginator-navigation-first`),this.lastEl=this.querySelector(`.bro-paginator-navigation-last`),this.firstEl.addEventListener(`click`,e=>{e.preventDefault(),this.hasPreviousPage()&&this.navigate(0)}),this.lastEl.addEventListener(`click`,e=>{e.preventDefault(),this.hasNextPage()&&this.navigate(this.getNumberOfPages()-1)}))}render(){this.insertAdjacentHTML(`afterbegin`,this.template()),this.pageSizeDropdown?.length&&(this.pageSizeEl=this.querySelector(`.bro-paginator-page-size`),this.renderPageSizeDropdown()),this.events(),this.renderNavigationState()}connectedCallback(){this.rendered||(this.rendered=!0,this.render())}attributeChangedCallback(e,t,n){this.texts&&((e===`page-index`||e===`page-size`||e===`length`)&&(this.rangeLabelEl||=this.querySelector(`.bro-paginator-range-label`),this.pageSizeValueEl||=this.querySelector(`.bro-paginator-page-size-value`),e===`page-index`&&(this.pageIndex=+n),e===`page-size`&&(this.pageSize=+n,this.pageSizeOptions.length||(this.pageSizeValueEl.innerText=n)),e===`length`&&(this.length=+n),this.rangeLabelEl.textContent=this.texts.rangeLabel(this.pageIndex,this.pageSize,this.length),this.renderNavigationState()),e===`page-size-options`&&(this.parsePageSizeOptions(),this.unrenderPageSizeControls(),this.pageSizeEl||=this.querySelector(`.bro-paginator-page-size`),this.pageSizeDropdown?.length?this.renderPageSizeDropdown():(this.renderPageSizeValue(),this.setAttribute(`disabled`,`true`))),e===`disabled`&&this.setDisabledState(n===`true`))}hasPreviousPage(){return this.pageIndex>=1&&this.pageSize!=0}hasNextPage(){let e=this.getNumberOfPages()-1;return this.pageIndex<e&&this.pageSize!=0}getNumberOfPages(){return this.pageSize?Math.ceil(this.length/this.pageSize):0}parsePageSizeOptions(){if(this.getAttribute(`page-size-options`))try{this.pageSizeOptions=JSON.parse(this.getAttribute(`page-size-options`)).map(e=>+e),this.pageSizeDropdown=this.pageSizeOptions.map(e=>({value:e.toString(),title:e.toString()}))}catch(e){this.pageSizeOptions=[],this.config.debug&&console.log(e)}}templatePageSizeValue(){return`<div class="bro-paginator-page-size-value">${this.pageSize}</div>`}unrenderPageSizeControls(){let e=this.querySelector(this.dropdownSelector);e&&e.remove();let t=this.querySelector(`.bro-paginator-page-size-value`);t&&t.remove()}renderPageSizeDropdown(){let e=document.createElement(this.dropdownSelector);e.config=this.config,e.setAttribute(`mode`,`select`),e.setAttribute(`button-title`,this.pageSize.toString()),e.setAttribute(`options`,JSON.stringify(this.pageSizeDropdown)),e.setAttribute(`label`,this.texts.itemsPerPage),this.eventsPageSize(e),this.pageSizeEl.append(e)}eventsPageSize(e){e.addEventListener(`value`,e=>{let t=e.detail;this.changePageSize(+t),this.setAttribute(`page-size`,t)})}renderPageSizeValue(){this.pageSizeEl.insertAdjacentHTML(`beforeend`,this.templatePageSizeValue())}setDisabledState(e){this.disabled=e;let t=this.querySelector(this.dropdownSelector);t&&t.setAttribute(`disabled`,e.toString()),this.renderNavigationState()}renderNavigationState(){let e=this.disabled||!this.hasPreviousPage(),t=this.disabled||!this.hasNextPage();[[this.firstEl,e],[this.previousEl,e],[this.nextEl,t],[this.lastEl,t]].forEach(([e,t])=>{t?(e?.parentElement?.classList.add(`disabled`),e?.setAttribute(`aria-disabled`,`true`)):(e?.parentElement?.classList.remove(`disabled`),e?.removeAttribute(`aria-disabled`))})}navigate(e){let t=this.pageIndex;e!==t&&(this.pageIndex=e,this.setAttribute(`page-index`,this.pageIndex.toString()),this.emitPageEvent(t))}changePageSize(e){let t=this.pageIndex*this.pageSize,n=this.pageIndex;this.pageIndex=Math.floor(t/e)||0,this.pageSize=e,this.emitPageEvent(n)}emitPageEvent(e){this.page={previousPageIndex:e,pageIndex:this.pageIndex,pageSize:this.pageSize,length:this.length},this.dispatchEvent(new CustomEvent(this.eventName,{bubbles:!0,composed:!0,detail:this.page}))}},"bro-sort-header":h,"bro-text-ellipsis":p,"bro-toolbar":a,"bro-toolbar-main":c};function v(){y(`bro-switch`,r)}function y(e,t){typeof customElements<`u`&&!customElements.get(e)&&customElements.define(e,t)}function b(e){let t=[];Object.entries(_).forEach(([e,n])=>{let r=customElements.get(e);r?r!==n&&t.push(e):customElements.define(e,n)}),t.length&&console.warn(`${e}: ${t.join(`, `)} are already defined by another vanilla skin bundle, so this skin uses its elements. Load one vanilla skin bundle per page.`)}let{escape:x}=t.BroHTML;var S=class extends t.BroHTMLElement{template(){this.buttonTitle=this.getAttribute(`button-title`)||``,this.name=this.getAttribute(`name`)||`action`,this.mode=this.getAttribute(`mode`)||`dropdown`;try{this.options=JSON.parse(this.getAttribute(`options`))}catch(e){this.options=[],this.config.debug&&console.log(e)}let e=this.getAttribute(`label`)||this.buttonTitle,t=e?` aria-label="${x(e)}"`:``;return this.mode===`select`||this.mode===`dropdown`?`
97
- <select name="${x(this.name)}"${t}>
98
- <option value="" hidden>${x(this.buttonTitle)}</option>
97
+ </div>`}static get observedAttributes(){return[`page-index`,`page-size`,`length`,`page-size-options`,`disabled`]}config;disabled;length;pageIndex;pageSize;pageSizeOptions;showFirstLastButtons;page;eventName=`page`;firstEl;previousEl;nextEl;lastEl;pageSizeEl;pageSizeValueEl;rangeLabelEl;dropdownSelector;texts;pageSizeDropdown;rendered=!1;events(){this.previousEl=this.querySelector(`.bro-paginator-navigation-previous`),this.nextEl=this.querySelector(`.bro-paginator-navigation-next`),this.previousEl.addEventListener(`click`,e=>{e.preventDefault(),this.hasPreviousPage()&&this.navigate(this.pageIndex-1)}),this.nextEl.addEventListener(`click`,e=>{e.preventDefault(),this.hasNextPage()&&this.navigate(this.pageIndex+1)}),this.showFirstLastButtons&&(this.firstEl=this.querySelector(`.bro-paginator-navigation-first`),this.lastEl=this.querySelector(`.bro-paginator-navigation-last`),this.firstEl.addEventListener(`click`,e=>{e.preventDefault(),this.hasPreviousPage()&&this.navigate(0)}),this.lastEl.addEventListener(`click`,e=>{e.preventDefault(),this.hasNextPage()&&this.navigate(this.getNumberOfPages()-1)}))}render(){this.insertAdjacentHTML(`afterbegin`,this.template()),this.pageSizeDropdown?.length&&(this.pageSizeEl=this.querySelector(`.bro-paginator-page-size`),this.renderPageSizeDropdown()),this.events(),this.renderNavigationState()}connectedCallback(){(0,t.isPrerendered)(this)||this.rendered||(this.rendered=!0,this.render())}attributeChangedCallback(e,t,n){this.texts&&((e===`page-index`||e===`page-size`||e===`length`)&&(this.rangeLabelEl||=this.querySelector(`.bro-paginator-range-label`),this.pageSizeValueEl||=this.querySelector(`.bro-paginator-page-size-value`),e===`page-index`&&(this.pageIndex=+n),e===`page-size`&&(this.pageSize=+n,this.pageSizeOptions.length||(this.pageSizeValueEl.innerText=n)),e===`length`&&(this.length=+n),this.rangeLabelEl.textContent=this.texts.rangeLabel(this.pageIndex,this.pageSize,this.length),this.renderNavigationState()),e===`page-size-options`&&(this.parsePageSizeOptions(),this.unrenderPageSizeControls(),this.pageSizeEl||=this.querySelector(`.bro-paginator-page-size`),this.pageSizeDropdown?.length?this.renderPageSizeDropdown():(this.renderPageSizeValue(),this.setAttribute(`disabled`,`true`))),e===`disabled`&&this.setDisabledState(n===`true`))}hasPreviousPage(){return this.pageIndex>=1&&this.pageSize!=0}hasNextPage(){let e=this.getNumberOfPages()-1;return this.pageIndex<e&&this.pageSize!=0}getNumberOfPages(){return this.pageSize?Math.ceil(this.length/this.pageSize):0}parsePageSizeOptions(){if(this.getAttribute(`page-size-options`))try{this.pageSizeOptions=JSON.parse(this.getAttribute(`page-size-options`)).map(e=>+e),this.pageSizeDropdown=this.pageSizeOptions.map(e=>({value:e.toString(),title:e.toString()}))}catch(e){this.pageSizeOptions=[],this.config.debug&&console.log(e)}}templatePageSizeValue(){return`<div class="bro-paginator-page-size-value">${this.pageSize}</div>`}unrenderPageSizeControls(){let e=this.querySelector(this.dropdownSelector);e&&e.remove();let t=this.querySelector(`.bro-paginator-page-size-value`);t&&t.remove()}renderPageSizeDropdown(){let e=new t.BroDom(this.ownerDocument).createElement(this.dropdownSelector);e.config=this.config,e.setAttribute(`mode`,`select`),e.setAttribute(`button-title`,this.pageSize.toString()),e.setAttribute(`options`,JSON.stringify(this.pageSizeDropdown)),e.setAttribute(`label`,this.texts.itemsPerPage),e.setAttribute(`disabled`,this.disabled.toString()),this.eventsPageSize(e),this.pageSizeEl.append(e)}eventsPageSize(e){e.addEventListener(`value`,e=>{let t=e.detail;this.changePageSize(+t),this.setAttribute(`page-size`,t)})}renderPageSizeValue(){this.pageSizeEl.insertAdjacentHTML(`beforeend`,this.templatePageSizeValue())}setDisabledState(e){this.disabled=e;let t=this.querySelector(this.dropdownSelector);t&&t.setAttribute(`disabled`,e.toString()),this.renderNavigationState()}renderNavigationState(){let e=this.disabled||!this.hasPreviousPage(),t=this.disabled||!this.hasNextPage();[[this.firstEl,e],[this.previousEl,e],[this.nextEl,t],[this.lastEl,t]].forEach(([e,t])=>{t?(e?.parentElement?.classList.add(`disabled`),e?.setAttribute(`aria-disabled`,`true`)):(e?.parentElement?.classList.remove(`disabled`),e?.removeAttribute(`aria-disabled`))})}navigate(e){let t=this.pageIndex;e!==t&&(this.pageIndex=e,this.setAttribute(`page-index`,this.pageIndex.toString()),this.emitPageEvent(t))}changePageSize(e){let t=this.pageIndex*this.pageSize,n=this.pageIndex;this.pageIndex=Math.floor(t/e)||0,this.pageSize=e,this.emitPageEvent(n)}emitPageEvent(e){this.page={previousPageIndex:e,pageIndex:this.pageIndex,pageSize:this.pageSize,length:this.length},this.dispatchEvent(new CustomEvent(this.eventName,{bubbles:!0,composed:!0,detail:this.page}))}},"bro-sort-header":v,"bro-text-ellipsis":g,"bro-toolbar":l,"bro-toolbar-main":d};function x(){S(`bro-switch`,s)}function S(e,t,n=typeof customElements<`u`?customElements:void 0){n&&!n.get(e)&&n.define(e,t)}function C(e,t){let n=[];Object.entries(b).forEach(([e,r])=>{let i=t.get(e);i?i!==r&&n.push(e):t.define(e,r)}),n.length&&console.warn(`${e}: ${n.join(`, `)} are already defined by another vanilla skin bundle, so this skin uses its elements. Load one vanilla skin bundle per page.`)}var w=class extends a{tagHTML=`<mark></mark>`};let{escape:T}=t.BroHTML;var E=class extends t.BroHTMLElement{template(){this.buttonTitle=this.getAttribute(`button-title`)||``,this.name=this.getAttribute(`name`)||`action`,this.mode=this.getAttribute(`mode`)||`dropdown`;try{this.options=JSON.parse(this.getAttribute(`options`))}catch(e){this.options=[],this.config.debug&&console.log(e)}let e=this.getAttribute(`label`)||this.buttonTitle,t=e?` aria-label="${T(e)}"`:``;return this.mode===`select`||this.mode===`dropdown`?`
98
+ <select name="${T(this.name)}"${t}>
99
+ <option value="" hidden>${T(this.buttonTitle)}</option>
99
100
  ${this.templateDropdown(this.options)}
100
101
  </select>`:`
101
102
  <li class="bro-nav-item bro-dropdown">
102
- <select name="${x(this.name)}"${t}>
103
- <option value="" hidden>${x(this.buttonTitle)}</option>
103
+ <select name="${T(this.name)}"${t}>
104
+ <option value="" hidden>${T(this.buttonTitle)}</option>
104
105
  ${this.templateDropdown(this.options)}
105
106
  </select>
106
- </li>`}static get observedAttributes(){return[`disabled`]}config;buttonTitle;name;mode;options;eventName=`value`;dropdownToggleEl;rendered=!1;events(){let e=this.querySelector(`select`),t=this.mode===`navbar-dropdown`,n=!1,r=null;this.dropdownToggleEl=e,this.renderDisabled();let i=n=>{r=null,t&&(e.selectedIndex=0),this.dispatchEvent(new CustomEvent(this.eventName,{bubbles:!0,composed:!0,detail:n}))};t&&(e.addEventListener(`pointerdown`,()=>{n=!1}),e.addEventListener(`keydown`,e=>{n=e.key!==`Enter`,e.key===`Enter`&&r!==null&&i(r)}),e.addEventListener(`blur`,()=>{r!==null&&(r=null,e.selectedIndex=0)})),e.addEventListener(`change`,()=>{t&&n?r=e.value:i(e.value)})}render(){this.insertAdjacentHTML(`afterbegin`,this.template()),this.events()}connectedCallback(){this.rendered||(this.rendered=!0,this.render())}attributeChangedCallback(e){e===`disabled`&&this.dropdownToggleEl&&this.renderDisabled()}templateDropdown(e){return`
107
+ </li>`}static get observedAttributes(){return[`disabled`]}config;buttonTitle;name;mode;options;eventName=`value`;dropdownToggleEl;rendered=!1;events(){let e=this.querySelector(`select`),t=this.mode===`navbar-dropdown`,n=!1,r=null;this.dropdownToggleEl=e,this.renderDisabled();let i=n=>{r=null,t&&(e.selectedIndex=0),this.dispatchEvent(new CustomEvent(this.eventName,{bubbles:!0,composed:!0,detail:n}))};t&&(e.addEventListener(`pointerdown`,()=>{n=!1}),e.addEventListener(`keydown`,e=>{n=e.key!==`Enter`,e.key===`Enter`&&r!==null&&i(r)}),e.addEventListener(`blur`,()=>{r!==null&&(r=null,e.selectedIndex=0)})),e.addEventListener(`change`,()=>{t&&n?r=e.value:i(e.value)})}render(){this.insertAdjacentHTML(`afterbegin`,this.template()),this.events()}connectedCallback(){(0,t.isPrerendered)(this)||this.rendered||(this.rendered=!0,this.render())}attributeChangedCallback(e){e===`disabled`&&this.dropdownToggleEl&&this.renderDisabled()}templateDropdown(e){return`
107
108
  ${e.map(e=>{if(`value`in e&&`title`in e)return`
108
- <option value="${x(e.value)}">${x(e.title)}</option>`;if(`divider`in e)return`
109
+ <option value="${T(e.value)}">${T(e.title)}</option>`;if(`divider`in e)return`
109
110
  <hr>`;if(`header`in e)return`
110
- <optgroup label="${x(e.header)}"></optgroup>`}).join(``)}`}renderDisabled(){this.dropdownToggleEl.toggleAttribute(`disabled`,this.getAttribute(`disabled`)===`true`)}};let{escape:C}=t.BroHTML;var w=class extends t.BroHTMLElement{template(){this.color=this.getAttribute(`color`)||``,this.mode=this.getAttribute(`mode`)||`indeterminate`;let e=this.mode===`indeterminate`;return this.value=(e?100:this.getAttribute(`value`)||0).toString(),`
111
+ <optgroup label="${T(e.header)}"></optgroup>`}).join(``)}`}renderDisabled(){this.dropdownToggleEl.toggleAttribute(`disabled`,this.getAttribute(`disabled`)===`true`)}};let{escape:D}=t.BroHTML;var O=class extends t.BroHTMLElement{template(){this.color=this.getAttribute(`color`)||``,this.mode=this.getAttribute(`mode`)||`indeterminate`;let e=this.mode===`indeterminate`;return this.value=(e?100:this.getAttribute(`value`)||0).toString(),`
111
112
  <progress ${e?``:`value="${this.value}"`}
112
- max="${e?``:100}" aria-label="${C(this.config.texts.loadingProgress)}"></progress>`}static get observedAttributes(){return[`value`]}config;color;mode;value;rendered=!1;valueEl;render(){this.insertAdjacentHTML(`afterbegin`,this.template())}connectedCallback(){this.rendered||(this.rendered=!0,this.render())}attributeChangedCallback(e,t,n){this.mode===`determinate`&&e===`value`&&(this.valueEl||=this.querySelector(`progress`),this.valueEl.value=+n)}},T=class extends t.BroHTMLElement{template(){let e=this.col?.name,t=e&&this.row?.[e];return this.items=Array.isArray(t)&&t.length?t:[this.config?.texts.noItems??``],this.items.map(()=>this.tagHTML).join(``)}row;col;config;items=[];fitting;rendered=!1;render(){this.insertAdjacentHTML(`afterbegin`,this.template()),Array.from(this.children).forEach((e,t)=>{this.col?.html?e.innerHTML=this.items[t]:e.textContent=this.items[t]})}connectedCallback(){this.rendered||(this.rendered=!0,this.render()),this.fitting=new AbortController,(0,t.fitCellItems)(this,this.fitting.signal)}disconnectedCallback(){this.fitting?.abort()}},E=class extends T{tagHTML=`<mark></mark>`};let D={css:{table:{thead:{tr:{className:`bro-header-row`,th:{className:`bro-header-cell`}}},tbody:{tr:{className:`bro-row`,td:{className:`bro-cell`}}}},shadow:{className:`shadow-lg`}},components:{button:{selector:`bro-button`,iconSelector:`.bro-button-toggle`,beforeRender:(e,t)=>{e.setAttribute(`mode`,`link`),e.setAttribute(`button-title`,t),e.setAttribute(`icon-html`,`<span class="bro-button-toggle"></span>`)}},dropdown:{selector:`bro-nv-dropdown`},filterDrawer:{beforeRender:e=>{e.iconHTML=`&times;`,e.setAttribute(`button-class`,`bro-nav-link`),e.setAttribute(`mode`,`link`)}},paginator:{selector:`bro-paginator`,css:{ul:{className:`bro-pagination`,li:{className:`bro-page-item`,a:{className:`bro-page-link`}}}}},progressBar:{selector:`bro-nv-progress-bar`},sortHeader:{selector:`bro-sort-header`,contentSelector:`.bro-sort-header-content`,beforeRender:(e=>{e.setAttribute(`icon-html`,`<span class="bro-button-icon">&#9660;</span>`)}),afterRender:(e,t)=>{e.setAttribute(`title`,t)}},state:{states:{loading:[`🚀`,`Loading`],"no-data":[`💔`,`No data`],"not-found":[`🔦`,`No records found`],fail:[`😕`,`Failed`]}},switch:{selector:`bro-switch`,css:{div:{className:`bro-form-check bro-form-switch`,input:{className:`bro-form-check-input`}}}},textEllipsis:{selector:`bro-text-ellipsis`,afterRender:(e,t)=>{e.setAttribute(`title`,t)}},toolbar:{selector:`bro-toolbar`,css:{nav:{className:`bro-navbar bro-navbar-expand`}}},toolbarMain:{selector:`bro-toolbar-main`,css:{toolbarTitle:{className:`bro-navbar-brand`},navbarCollapse:{className:`bro-navbar-collapse`,ul:{li:{className:`bro-nav-item`,a:{className:`bro-nav-link`}}}}},beforeRender:(e,t)=>{e.setAttribute(`button-title`,t)}},toolbarSearch:{beforeRender:(e,t)=>{e.iconHTML=`&larr;`,e.setAttribute(`button-class`,`bro-nav-link`),e.setAttribute(`mode`,`link`),t.iconHTML=`&times;`,t.setAttribute(`button-class`,`bro-nav-link`),t.setAttribute(`mode`,`link`)}}},elements:{"bro-nv-tags":`withTags`,"bro-switch":`withSwitch`}};typeof customElements<`u`&&(b(`@table-bro/native`),y(`bro-nv-dropdown`,S),y(`bro-nv-progress-bar`,w)),(0,t.registerSkin)(`nv`,D);function O(){y(`bro-nv-tags`,E)}e.BroNativeTagsComponent=E,e.BroSwitchComponent=r,e.nativeSkinConfig=D,e.withSwitch=v,e.withTags=O});
113
+ max="${e?``:100}" aria-label="${D(this.config.texts.loadingProgress)}"></progress>`}static get observedAttributes(){return[`value`]}config;color;mode;value;rendered=!1;valueEl;render(){this.insertAdjacentHTML(`afterbegin`,this.template())}connectedCallback(){(0,t.isPrerendered)(this)||this.rendered||(this.rendered=!0,this.render())}attributeChangedCallback(e,t,n){this.mode===`determinate`&&e===`value`&&(this.valueEl||=this.querySelector(`progress`),this.valueEl.value=+n)}};let k={css:{table:{thead:{tr:{className:`bro-header-row`,th:{className:`bro-header-cell`}}},tbody:{tr:{className:`bro-row`,td:{className:`bro-cell`}}}},shadow:{className:`shadow-lg`}},components:{button:{selector:`bro-button`,iconSelector:`.bro-button-toggle`,beforeRender:(e,t)=>{e.setAttribute(`mode`,`link`),e.setAttribute(`button-title`,t),e.setAttribute(`icon-html`,`<span class="bro-button-toggle"></span>`)}},dropdown:{selector:`bro-nv-dropdown`},filterDrawer:{beforeRender:e=>{e.iconHTML=`&times;`,e.setAttribute(`button-class`,`bro-nav-link`),e.setAttribute(`mode`,`link`)}},paginator:{selector:`bro-paginator`,css:{ul:{className:`bro-pagination`,li:{className:`bro-page-item`,a:{className:`bro-page-link`}}}}},progressBar:{selector:`bro-nv-progress-bar`},sortHeader:{selector:`bro-sort-header`,contentSelector:`.bro-sort-header-content`,beforeRender:(e=>{e.setAttribute(`icon-html`,`<span class="bro-button-icon">&#9660;</span>`)}),afterRender:(e,t)=>{e.setAttribute(`title`,t)}},state:{states:{loading:[`🚀`,`Loading`],"no-data":[`💔`,`No data`],"not-found":[`🔦`,`No records found`],fail:[`😕`,`Failed`]}},switch:{selector:`bro-switch`,css:{div:{className:`bro-form-check bro-form-switch`,input:{className:`bro-form-check-input`}}}},textEllipsis:{selector:`bro-text-ellipsis`,afterRender:(e,t)=>{e.setAttribute(`title`,t)}},toolbar:{selector:`bro-toolbar`,css:{nav:{className:`bro-navbar bro-navbar-expand`}}},toolbarMain:{selector:`bro-toolbar-main`,css:{toolbarTitle:{className:`bro-navbar-brand`},navbarCollapse:{className:`bro-navbar-collapse`,ul:{li:{className:`bro-nav-item`,a:{className:`bro-nav-link`}}}}},beforeRender:(e,t)=>{e.setAttribute(`button-title`,t)}},toolbarSearch:{beforeRender:(e,t)=>{e.iconHTML=`&larr;`,e.setAttribute(`button-class`,`bro-nav-link`),e.setAttribute(`mode`,`link`),t.iconHTML=`&times;`,t.setAttribute(`button-class`,`bro-nav-link`),t.setAttribute(`mode`,`link`)}}},elements:{"bro-nv-tags":`withTags`,"bro-switch":`withSwitch`},defineElements:e=>{C(`@table-bro/native`,e),S(`bro-nv-dropdown`,E,e),S(`bro-nv-progress-bar`,O,e)}};typeof customElements<`u`&&k.defineElements(customElements),(0,t.registerSkin)(`nv`,k);function A(e={}){i(e.texts??{}),S(`bro-nv-tags`,w)}e.BroNativeTagsComponent=w,e.BroSwitchComponent=s,e.nativeSkinConfig=k,e.setTagsTexts=i,e.withSwitch=x,e.withTags=A});
113
114
  //# sourceMappingURL=table-bro.native.umd.js.map