@nanoporetech-digital/components 8.3.2 → 8.4.1
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/dist/cjs/constructible-style-BsHBb9au.js +133 -0
- package/dist/cjs/{fade-BzBFJiQK.js → fade-DBuNbJEw.js} +1 -1
- package/dist/cjs/{fullscreen-Cz3eYnOp.js → fullscreen-Bk4jXSN0.js} +1 -1
- package/dist/cjs/index-DGttnXif.js +28 -16
- package/dist/cjs/{lazyload-DIFYejbf.js → lazyload-gQqOMvpr.js} +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/nano-accordion.cjs.entry.js +28 -9
- package/dist/cjs/nano-avatar_5.cjs.entry.js +11 -11
- package/dist/cjs/nano-components.cjs.js +1 -1
- package/dist/cjs/{nano-data-table-DFEflpc4.js → nano-data-table-BHQIpW0N.js} +31 -1
- package/dist/cjs/nano-data-table.cjs.entry.js +1 -1
- package/dist/cjs/nano-details.cjs.entry.js +6 -4
- package/dist/cjs/nano-field-validator.cjs.entry.js +4 -2
- package/dist/cjs/nano-footer.cjs.entry.js +2 -2
- package/dist/cjs/nano-global-nav.cjs.entry.js +22 -21
- package/dist/cjs/nano-grid-item.cjs.entry.js +1 -1
- package/dist/cjs/nano-grid_2.cjs.entry.js +6 -130
- package/dist/cjs/nano-hero.cjs.entry.js +4 -4
- package/dist/cjs/{nano-icon_3.cjs.entry.js → nano-icon-button_2.cjs.entry.js} +2 -320
- package/dist/cjs/nano-icon.cjs.entry.js +326 -0
- package/dist/cjs/nano-in-page-nav.cjs.entry.js +1 -1
- package/dist/cjs/nano-increment.cjs.entry.js +1 -1
- package/dist/cjs/nano-intersection-observe.cjs.entry.js +1 -1
- package/dist/cjs/nano-masked-overflow.cjs.entry.js +3 -3
- package/dist/cjs/nano-menu-drawer.cjs.entry.js +2 -2
- package/dist/cjs/nano-more-less.cjs.entry.js +2 -2
- package/dist/cjs/nano-rating.cjs.entry.js +4 -4
- package/dist/cjs/nano-resize-observe.cjs.entry.js +2 -2
- package/dist/cjs/nano-slide.cjs.entry.js +1 -1
- package/dist/cjs/{nano-slides-C576PTmo.js → nano-slides-C73bSG0h.js} +7 -7
- package/dist/cjs/nano-slides.cjs.entry.js +1 -1
- package/dist/cjs/nano-sortable.cjs.entry.js +1 -1
- package/dist/cjs/nano-step-accordion.cjs.entry.js +101 -0
- package/dist/cjs/nano-step-breadcrumb.cjs.entry.js +133 -0
- package/dist/cjs/nano-sticker.cjs.entry.js +2 -2
- package/dist/cjs/nano-tab-content.cjs.entry.js +2 -2
- package/dist/cjs/nano-tab.cjs.entry.js +2 -2
- package/dist/cjs/nano-table.cjs.entry.js +2 -2
- package/dist/cjs/{page-dots-Clb2QknR.js → page-dots-BLPta5z5.js} +1 -1
- package/dist/cjs/{table.worker-DxRLPmU9.js → table.worker-BeE8kdSf.js} +1 -1
- package/dist/collection/collection-manifest.json +2 -0
- package/dist/collection/components/accordion/accordion.js +51 -13
- package/dist/collection/components/breadcrumb/breadcrumb.js +1 -1
- package/dist/collection/components/data-table/table.js +1 -13
- package/dist/collection/components/details/details.js +9 -6
- package/dist/collection/components/field-validator/field-validator.js +4 -2
- package/dist/collection/components/footer/footer.css +7 -7
- package/dist/collection/components/footer/footer.js +2 -1
- package/dist/collection/components/global-nav/global-nav.js +23 -22
- package/dist/collection/components/global-search-results/global-search-results.js +4 -4
- package/dist/collection/components/grid/grid-item.js +1 -1
- package/dist/collection/components/grid/grid.js +1 -1
- package/dist/collection/components/hero/hero.js +4 -4
- package/dist/collection/components/icon/icon.js +1 -1
- package/dist/collection/components/icon/validate.js +1 -1
- package/dist/collection/components/img/img.js +3 -3
- package/dist/collection/components/in-page-nav/in-page-nav.js +1 -1
- package/dist/collection/components/increment/increment.js +1 -1
- package/dist/collection/components/intersection-observe/intersection-observe.js +1 -1
- package/dist/collection/components/masked-overflow/masked-overflow.js +3 -3
- package/dist/collection/components/menu-drawer/menu-drawer.js +2 -2
- package/dist/collection/components/more-less/more-less.js +2 -2
- package/dist/collection/components/rating/rating.js +4 -4
- package/dist/collection/components/resize-observe/resize-observe.js +2 -2
- package/dist/collection/components/select/select.js +7 -7
- package/dist/collection/components/slides/slide.js +1 -1
- package/dist/collection/components/slides/slides.js +3 -3
- package/dist/collection/components/sortable/sortable.js +1 -1
- package/dist/collection/components/step-accordion/step-accordion.css +138 -0
- package/dist/collection/components/step-accordion/step-accordion.js +190 -0
- package/dist/collection/components/step-breadcrumb/step-breadcrumb.css +231 -0
- package/dist/collection/components/step-breadcrumb/step-breadcrumb.js +222 -0
- package/dist/collection/components/sticker/sticker.js +2 -2
- package/dist/collection/components/table/table.js +2 -2
- package/dist/collection/components/tabs/tab-content.js +2 -2
- package/dist/collection/components/tabs/tab.js +2 -2
- package/dist/collection/components/tooltip/tooltip.js +2 -2
- package/dist/collection/utils/constructible-style.js +2 -2
- package/dist/collection/utils/performance.js +17 -0
- package/dist/components/accordion.js +80 -0
- package/dist/components/constructible-style.js +131 -0
- package/dist/components/details.js +6 -4
- package/dist/components/global-search-results.js +4 -4
- package/dist/components/grid.js +5 -129
- package/dist/components/icon.js +2 -2
- package/dist/components/img.js +3 -3
- package/dist/components/masked-overflow.js +3 -3
- package/dist/components/nano-accordion.js +1 -56
- package/dist/components/nano-data-table.js +30 -0
- package/dist/components/nano-field-validator.js +4 -2
- package/dist/components/nano-footer.js +2 -2
- package/dist/components/nano-global-nav.js +22 -21
- package/dist/components/nano-grid-item.js +1 -1
- package/dist/components/nano-hero.js +4 -4
- package/dist/components/nano-in-page-nav.js +1 -1
- package/dist/components/nano-increment.js +1 -1
- package/dist/components/nano-intersection-observe.js +1 -1
- package/dist/components/nano-menu-drawer.js +2 -2
- package/dist/components/nano-more-less.js +2 -2
- package/dist/components/nano-rating.js +4 -4
- package/dist/components/nano-slide.js +1 -1
- package/dist/components/nano-sortable.js +1 -1
- package/dist/components/nano-step-accordion.d.ts +11 -0
- package/dist/components/nano-step-accordion.js +141 -0
- package/dist/components/nano-step-breadcrumb.d.ts +11 -0
- package/dist/components/nano-step-breadcrumb.js +181 -0
- package/dist/components/nano-tab-content.js +2 -2
- package/dist/components/nano-tab.js +2 -2
- package/dist/components/nano-table.js +2 -2
- package/dist/components/resize-observe.js +2 -2
- package/dist/components/select.js +7 -7
- package/dist/components/slides.js +3 -3
- package/dist/components/sticker.js +2 -2
- package/dist/components/tooltip.js +2 -2
- package/dist/esm/constructible-style-B2_GfhhS.js +131 -0
- package/dist/esm/{fade-D4P3XGVa.js → fade-C0NluV0K.js} +1 -1
- package/dist/esm/{fullscreen-Cfl6LvH2.js → fullscreen-Ck_w6MCZ.js} +1 -1
- package/dist/esm/index-BM3Om9WE.js +28 -16
- package/dist/esm/{lazyload-CQYknGN2.js → lazyload-DddTyM-A.js} +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/nano-accordion.entry.js +28 -9
- package/dist/esm/nano-avatar_5.entry.js +11 -11
- package/dist/esm/nano-components.js +1 -1
- package/dist/esm/{nano-data-table-Bqk8ZUaL.js → nano-data-table-CWliPF7Y.js} +31 -1
- package/dist/esm/nano-data-table.entry.js +1 -1
- package/dist/esm/nano-details.entry.js +6 -4
- package/dist/esm/nano-field-validator.entry.js +4 -2
- package/dist/esm/nano-footer.entry.js +2 -2
- package/dist/esm/nano-global-nav.entry.js +22 -21
- package/dist/esm/nano-grid-item.entry.js +1 -1
- package/dist/esm/nano-grid_2.entry.js +7 -131
- package/dist/esm/nano-hero.entry.js +4 -4
- package/dist/esm/{nano-icon_3.entry.js → nano-icon-button_2.entry.js} +4 -321
- package/dist/esm/nano-icon.entry.js +324 -0
- package/dist/esm/nano-in-page-nav.entry.js +1 -1
- package/dist/esm/nano-increment.entry.js +1 -1
- package/dist/esm/nano-intersection-observe.entry.js +1 -1
- package/dist/esm/nano-masked-overflow.entry.js +3 -3
- package/dist/esm/nano-menu-drawer.entry.js +2 -2
- package/dist/esm/nano-more-less.entry.js +2 -2
- package/dist/esm/nano-rating.entry.js +4 -4
- package/dist/esm/nano-resize-observe.entry.js +2 -2
- package/dist/esm/nano-slide.entry.js +1 -1
- package/dist/esm/{nano-slides-DcJWApi6.js → nano-slides-BiPGpe5F.js} +7 -7
- package/dist/esm/nano-slides.entry.js +1 -1
- package/dist/esm/nano-sortable.entry.js +1 -1
- package/dist/esm/nano-step-accordion.entry.js +99 -0
- package/dist/esm/nano-step-breadcrumb.entry.js +131 -0
- package/dist/esm/nano-sticker.entry.js +2 -2
- package/dist/esm/nano-tab-content.entry.js +2 -2
- package/dist/esm/nano-tab.entry.js +2 -2
- package/dist/esm/nano-table.entry.js +2 -2
- package/dist/esm/{page-dots-kX7jiD3G.js → page-dots-WKehEjjM.js} +1 -1
- package/dist/esm/{table.worker-a52UkSRM.js → table.worker-DJks4i_l.js} +1 -1
- package/dist/nano-components/constructible-style-B2_GfhhS.js +4 -0
- package/dist/nano-components/{fade-D4P3XGVa.js → fade-C0NluV0K.js} +1 -1
- package/dist/nano-components/{fullscreen-Cfl6LvH2.js → fullscreen-Ck_w6MCZ.js} +1 -1
- package/dist/nano-components/{lazyload-CQYknGN2.js → lazyload-DddTyM-A.js} +1 -1
- package/dist/nano-components/nano-accordion.entry.js +1 -1
- package/dist/nano-components/nano-avatar_5.entry.js +1 -1
- package/dist/nano-components/nano-components.css +32 -1
- package/dist/nano-components/nano-components.esm.js +1 -1
- package/dist/nano-components/nano-data-table-CWliPF7Y.js +4 -0
- package/dist/nano-components/nano-data-table.entry.js +1 -1
- package/dist/nano-components/nano-details.entry.js +1 -1
- package/dist/nano-components/nano-field-validator.entry.js +1 -1
- package/dist/nano-components/nano-footer.entry.js +1 -1
- package/dist/nano-components/nano-global-nav.entry.js +1 -1
- package/dist/nano-components/nano-grid-item.entry.js +1 -1
- package/dist/nano-components/nano-grid_2.entry.js +1 -1
- package/dist/nano-components/nano-hero.entry.js +1 -1
- package/dist/nano-components/nano-icon-button_2.entry.js +4 -0
- package/dist/nano-components/nano-icon.entry.js +4 -0
- package/dist/nano-components/nano-in-page-nav.entry.js +1 -1
- package/dist/nano-components/nano-increment.entry.js +1 -1
- package/dist/nano-components/nano-intersection-observe.entry.js +1 -1
- package/dist/nano-components/nano-masked-overflow.entry.js +1 -1
- package/dist/nano-components/nano-menu-drawer.entry.js +1 -1
- package/dist/nano-components/nano-more-less.entry.js +1 -1
- package/dist/nano-components/nano-rating.entry.js +1 -1
- package/dist/nano-components/nano-resize-observe.entry.js +1 -1
- package/dist/nano-components/nano-slide.entry.js +1 -1
- package/dist/nano-components/{nano-slides-DcJWApi6.js → nano-slides-BiPGpe5F.js} +3 -3
- package/dist/nano-components/nano-slides.entry.js +1 -1
- package/dist/nano-components/nano-sortable.entry.js +1 -1
- package/dist/nano-components/nano-step-accordion.entry.js +4 -0
- package/dist/nano-components/nano-step-breadcrumb.entry.js +4 -0
- package/dist/nano-components/nano-sticker.entry.js +1 -1
- package/dist/nano-components/nano-tab-content.entry.js +1 -1
- package/dist/nano-components/nano-tab.entry.js +1 -1
- package/dist/nano-components/nano-table.entry.js +1 -1
- package/dist/nano-components/{page-dots-kX7jiD3G.js → page-dots-WKehEjjM.js} +1 -1
- package/dist/nano-components/{table.worker-a52UkSRM.js → table.worker-DJks4i_l.js} +1 -1
- package/dist/stencil.config.js +1 -0
- package/dist/style/components.css +1 -1
- package/dist/style/components.css.map +1 -1
- package/dist/style/core.css +1 -1
- package/dist/style/core.css.map +1 -1
- package/dist/style/nano.css +1 -1
- package/dist/style/nano.css.map +1 -1
- package/dist/types/components/accordion/accordion.d.ts +10 -4
- package/dist/types/components/details/details.d.ts +3 -2
- package/dist/types/components/footer/footer.d.ts +1 -0
- package/dist/types/components/global-nav/global-nav.d.ts +1 -1
- package/dist/types/components/step-accordion/step-accordion.d.ts +38 -0
- package/dist/types/components/step-breadcrumb/step-breadcrumb.d.ts +37 -0
- package/dist/types/components.d.ts +174 -4
- package/dist/types/utils/performance.d.ts +1 -0
- package/docs-json.json +352 -18
- package/docs-vscode.json +41 -2
- package/hydrate/index.js +404 -99
- package/hydrate/index.mjs +404 -99
- package/package.json +2 -2
- package/dist/nano-components/nano-data-table-Bqk8ZUaL.js +0 -4
- package/dist/nano-components/nano-icon_3.entry.js +0 -4
- /package/dist/types/builds/{x6knoJK1 → QrfEi4pt}/0/Digital/nano-components/packages/components/.stencil/plugins/stencil/vue-output/generate-vue-component.d.ts +0 -0
- /package/dist/types/builds/{x6knoJK1 → QrfEi4pt}/0/Digital/nano-components/packages/components/.stencil/plugins/stencil/vue-output/index.d.ts +0 -0
- /package/dist/types/builds/{x6knoJK1 → QrfEi4pt}/0/Digital/nano-components/packages/components/.stencil/plugins/stencil/vue-output/output-vue.d.ts +0 -0
- /package/dist/types/builds/{x6knoJK1 → QrfEi4pt}/0/Digital/nano-components/packages/components/.stencil/plugins/stencil/vue-output/plugin.d.ts +0 -0
- /package/dist/types/builds/{x6knoJK1 → QrfEi4pt}/0/Digital/nano-components/packages/components/.stencil/plugins/stencil/vue-output/types.d.ts +0 -0
- /package/dist/types/builds/{x6knoJK1 → QrfEi4pt}/0/Digital/nano-components/packages/components/.stencil/plugins/stencil/vue-output/utils.d.ts +0 -0
- /package/dist/types/builds/{x6knoJK1 → QrfEi4pt}/0/Digital/nano-components/packages/components/.stencil/stencil.config.d.ts +0 -0
- /package/dist/types/builds/{x6knoJK1 → QrfEi4pt}/0/Digital/nano-components/packages/components/.stencil/stencil.config.prod.d.ts +0 -0
- /package/dist/types/builds/{x6knoJK1 → QrfEi4pt}/0/Digital/nano-components/packages/components/.stencil/testing/mocks/intersection-observer.d.ts +0 -0
- /package/dist/types/builds/{x6knoJK1 → QrfEi4pt}/0/Digital/nano-components/packages/components/.stencil/wdio.conf.d.ts +0 -0
@@ -147,14 +147,14 @@ export class MenuDrawer {
|
|
147
147
|
}
|
148
148
|
}
|
149
149
|
render() {
|
150
|
-
return (h(Host, { key: '
|
150
|
+
return (h(Host, { key: '4ad542c84da0045168bcee1df744cb94c2a1196e', class: {
|
151
151
|
open: this.open,
|
152
152
|
'secondary-open': this.secondaryOpen,
|
153
153
|
hide: this.hide,
|
154
154
|
loading: this.isLoading,
|
155
155
|
'has-global-nav': !!this.globalNav,
|
156
156
|
'nano-menu-drawer': true,
|
157
|
-
}, dir: this.el.ownerDocument.dir === 'rtl' ? 'rtl' : null }, h("div", { key: '
|
157
|
+
}, dir: this.el.ownerDocument.dir === 'rtl' ? 'rtl' : null }, h("div", { key: 'b00cad9c3696b9c373e8d98fcd1f86c2c7b23aa2', ref: (div) => (this.containerDiv = div), class: "container" }, h("div", { key: 'a7746088c4458802d386f1c3d092e0a386fe4bd6', class: `content-wrap ${this.secondaryOpen ? 'secondary-open' : ''}` }, h("nav", { key: '993f550de47fc9410aa04bf98d9d076a6290637c', ref: (div) => (this.contentDiv = div), class: "content" }, h("div", { key: '3da3d0268df95d3080938e33f6e80d659dce1525', class: "head" }, h("button", { key: 'af104da5e67aaf06194317086daa6a5d4c008b6a', onClick: this.toggle, class: "collapse-btn" }, h("nano-icon", { key: 'b6e85eb6690440da7ccd893ccd9feb082d7a4552', name: "light/arrow-right-to-line" }), h("span", { key: '443c2afa504892d6de2a75a126e09c484540c677', class: "visually-hidden" }, "collapse / expand menu"))), h("slot", { key: '275ab007d04f3bde8269f0b4927aec81d1e47ccd' }), this.slotCtrl.has('foot') && (h("div", { key: 'c0eb043b9447264d48ca65d6e51c986c05ba10eb', class: "foot" }, h("slot", { key: 'bee82590231f9cfffc15c22ba0fafb313298e232', name: "foot" }))))))));
|
158
158
|
}
|
159
159
|
static get is() { return "nano-menu-drawer"; }
|
160
160
|
static get encapsulation() { return "shadow"; }
|
@@ -65,8 +65,8 @@ export class Rating {
|
|
65
65
|
this.handleShowHideElements();
|
66
66
|
}
|
67
67
|
render() {
|
68
|
-
return (h(Host, { key: '
|
69
|
-
h("div", { key: '
|
68
|
+
return (h(Host, { key: 'cdfbe00c8ce785ad89f711c8488b514dba8f3fb6', class: "nano-more-less" }, h("slot", { key: '8c17f3540c587129feff6905e518e01f4866b90d', onSlotchange: () => this.handleShowHideElements() }), this.children?.length > this.maxToShow && [
|
69
|
+
h("div", { key: 'fd937a181108336345a5278b4e2e230feb13f891', style: { display: this.show ? 'none' : 'contents' }, class: "button-wrapper", part: "button-wrapper button-wrapper--less", onClick: (e) => this.handleClick(e) }, h("slot", { key: 'bd7c0630e06de922c8ed48e5efc0db640594c776', name: "less" }, h("button", { key: '8c924f74b1b7939d17a9defd02ccb41ecd403257', part: "button button--less" }, "Show more (+", this.children.length - this.maxToShow, ")"))),
|
70
70
|
!this.noHideBtn ? (h("div", { style: { display: this.show ? 'contents' : 'none' }, class: "button-wrapper", part: "button-wrapper button-wrapper--more", onClick: (e) => this.handleClick(e) }, h("slot", { name: "more" }, h("button", { part: "button button--more" }, "Show less (-", this.children.length - this.maxToShow, ")")))) : (''),
|
71
71
|
]));
|
72
72
|
}
|
@@ -192,20 +192,20 @@ export class Rating {
|
|
192
192
|
else {
|
193
193
|
displayValue = this.isHovering ? this.hoverValue : this.value;
|
194
194
|
}
|
195
|
-
return (h(Host, { key: '
|
195
|
+
return (h(Host, { key: 'bacb1319a8119e09eb7223396c0fd308d8f1bcf0', class: "nano-rating" }, h("label", { key: 'e96dd3dc5d27aad666c9273fb48a0dde49b05bcd', class: `rating-label${this.hideLabel ? ' visually-hidden' : ''}`, part: "label", htmlFor: this.name }, h("slot", { key: 'a50e1bb855e58080b964cde932b6e850be44cff5', name: "label" }, this.label)), h("input", { key: 'c95ba7bf46db99df309030b4e7c9a006909e47a7', class: "range-input visually-hidden", name: this.name, id: this.name, disabled: this.disabled || this.readonly, required: this.required, value: this.value, onFocus: () => {
|
196
196
|
this.setFocus();
|
197
|
-
} }), h("div", { key: '
|
197
|
+
} }), h("div", { key: 'a04e24da1bf879b551f31b3692e990e912739643', class: "rating-wrap" }, h("div", { key: '2686f949da578a7bcdbd3043f131edccc24f0f30', dir: this.isRtl ? 'rtl' : null, ref: (el) => (this.rating = el), part: "base", class: {
|
198
198
|
rating: true,
|
199
199
|
'rating--readonly': this.readonly,
|
200
200
|
'rating--disabled': this.disabled,
|
201
|
-
}, "aria-disabled": this.disabled ? 'true' : 'false', "aria-readonly": this.readonly ? 'true' : 'false', "aria-valuenow": this.value, "aria-valuemin": 0, "aria-valuemax": this.max, tabIndex: this.disabled ? -1 : 0, onClick: this.handleClick, onKeyDown: this.handleKeyDown, onMouseEnter: this.handleMouseEnter, onMouseLeave: this.handleMouseLeave, onMouseMove: this.handleMouseMove, onFocus: this.handleFocus, onBlur: this.handleBlur }, h("span", { key: '
|
201
|
+
}, "aria-disabled": this.disabled ? 'true' : 'false', "aria-readonly": this.readonly ? 'true' : 'false', "aria-valuenow": this.value, "aria-valuemin": 0, "aria-valuemax": this.max, tabIndex: this.disabled ? -1 : 0, onClick: this.handleClick, onKeyDown: this.handleKeyDown, onMouseEnter: this.handleMouseEnter, onMouseLeave: this.handleMouseLeave, onMouseMove: this.handleMouseMove, onFocus: this.handleFocus, onBlur: this.handleBlur }, h("span", { key: '890e0a8296994061f88cdfa42811ff61d1fbb2b2', class: "rating__symbols rating__symbols--inactive" }, counter.map((index) => (h("span", { class: {
|
202
202
|
rating__symbol: true,
|
203
203
|
'rating__symbol--hover': this.isHovering && Math.ceil(displayValue) === index + 1,
|
204
204
|
},
|
205
205
|
// Users can click the current value to clear the rating. When this happens, we set this.isHovering to
|
206
206
|
// false to prevent the hover state from confusing them as they move the mouse out of the control. This
|
207
207
|
// extra mouseenter will reinstate it if they happen to mouse over an adjacent symbol.
|
208
|
-
onMouseEnter: this.handleMouseEnter, innerHTML: this.symbol(index + 1) })))), h("span", { key: '
|
208
|
+
onMouseEnter: this.handleMouseEnter, innerHTML: this.symbol(index + 1) })))), h("span", { key: 'fad1f1de103c1451d848a215c9c7b18084f172ce', ref: (span) => (this.indicator = span), class: "rating__symbols rating__symbols--indicator", style: {
|
209
209
|
clip: this.clip(displayValue),
|
210
210
|
} }, counter.map((index) => (h("span", { class: {
|
211
211
|
rating__symbol: true,
|
@@ -230,13 +230,13 @@ export class ResizeObserve {
|
|
230
230
|
}
|
231
231
|
}
|
232
232
|
render() {
|
233
|
-
return (h(Host, { key: '
|
233
|
+
return (h(Host, { key: '3d1301e7d8a6c0f96188ea4dadddcc3f71a349cc', class: {
|
234
234
|
'nano-resize-observe': true,
|
235
235
|
'content-fit-x': this.contentFitX,
|
236
236
|
'content-fit-y': this.contentFitY,
|
237
237
|
'content-nofit-x': this.contentFitX === false,
|
238
238
|
'content-nofit-y': this.contentFitY === false,
|
239
|
-
} }, h("slot", { key: '
|
239
|
+
} }, h("slot", { key: '363d69b62debe81c7d3d1790d4dead42538f7118' }), !!this.notifyContentFit &&
|
240
240
|
(this.contentFitX !== null || this.contentFitY !== null) && [
|
241
241
|
this.contentFitX ? (h("slot", { name: "content-fit-x" })) : (h("slot", { name: "content-nofit-x" })),
|
242
242
|
this.contentFitY ? (h("slot", { name: "content-fit-y" })) : (h("slot", { name: "content-nofit-y" })),
|
@@ -705,30 +705,30 @@ export class Select {
|
|
705
705
|
disabled,
|
706
706
|
clearControl: this.clearable,
|
707
707
|
}))(this);
|
708
|
-
return (h(Host, { key: '
|
708
|
+
return (h(Host, { key: '0648eef02c3e5fc9891e3aee3baa81eae2fc2b5e', type: this.multiple ? 'select-multiple' : 'select-one', "aria-disabled": this.disabled ? 'true' : null, class: {
|
709
709
|
'has-value': !!this.value.length || !!this.inputSearchVal.length,
|
710
710
|
'has-focus': this.hasFocus,
|
711
711
|
'is-invalid': this._invalid === true,
|
712
712
|
'is-valid': this._invalid === false,
|
713
713
|
'nano-select': true,
|
714
|
-
} }, h(FormControlWrap, { key: '
|
714
|
+
} }, h(FormControlWrap, { key: '36dcb0e4ef701eaf17ddf03f8f64cf83dee35b07', ...wrapOptions, class: {
|
715
715
|
'has-error': !!this.errorMessage &&
|
716
716
|
this.showInlineError &&
|
717
717
|
this._invalid === true,
|
718
718
|
'has-helper': this.hasHelperSlot,
|
719
719
|
'is-open': this.hasOpened,
|
720
720
|
masked: this.mask,
|
721
|
-
} }, h(FormControl, { key: '
|
722
|
-
this.mask && (h("div", { key: '
|
723
|
-
h("input", { key: '
|
724
|
-
])), !this.readonly && !this.disabled && (h("nano-datalist", { key: '
|
721
|
+
} }, h(FormControl, { key: '6adbd4bf79d59de4a8d8f20c6dc287b9f70c9e5c', ...controlOptions, ref: (el) => (this.selectWrap = el), onClearText: this.clearSelectValue, control: this.el, endValueSlot: h("slot", { name: "down-arrow" }, h("nano-icon", { class: "select__down-arrow", name: "light/chevron-down" })), showInlineError: this.showInlineError }, this.multiple && (h("div", { key: 'eaf182a6e691f3490a2e26522be8daef9f3c0e58', class: "select__multi-wrap select" }, this.multipleValues(labelId, moreId, helperEndId))), !this.multiple && [
|
722
|
+
this.mask && (h("div", { key: 'd08b3d345fde15bd92a9d3237c9f0265b39a1cbb', class: "select__mask" }, this.getLabel(this.value))),
|
723
|
+
h("input", { key: '29eb562d57d5af570132b502652fbf0109563481', ref: (input) => (this.inputCtrl = input), id: this.selectId, class: "select__native-input", "aria-labelledby": labelId + ' ' + moreId + ' ' + helperEndId, disabled: this.disabled, form: this.form, placeholder: this.placeholder, readonly: true, required: this.required, value: this.getLabel(this.value), onFocus: this.onFocus }),
|
724
|
+
])), !this.readonly && !this.disabled && (h("nano-datalist", { key: 'c7135aca51ac7e0b3f23fc63b8e8fef3d5d0d4a8', ref: (el) => (this.datalist = el), selected: this.valArray, type: this.multiple ? 'selectMulti' : 'select', options: this._options.length ? this._options : undefined, onNanoDeselect: (e) => {
|
725
725
|
e.preventDefault();
|
726
726
|
this.removeValue(e.detail.value);
|
727
727
|
}, onNanoOptionsUpdated: this.setOptions, onNanoSelect: this.setValue,
|
728
728
|
// @ts-expect-error - this bubbles from the nano-dropdown
|
729
729
|
onNanoShow: () => (this.hasOpened = true), onNanoHide: () => (this.hasOpened = false) }, this.allowCustomValues &&
|
730
730
|
this.multiple &&
|
731
|
-
!!this.inputSearchVal && (h("nano-option", { key: '
|
731
|
+
!!this.inputSearchVal && (h("nano-option", { key: 'c1bfe32d20443e5be164a400e5553e30488f26be', slot: "list-top", value: this.inputSearchVal, selected: false, label: this.inputSearchVal, onNanoSelect: () => this.inputCtrl.focus() }, h("span", { key: 'aad3f8699ac6e9538055437e30d040ba686b0c46', slot: "check-icon" }), "Add '", this.inputSearchVal, "'")), h("slot", { key: 'bbbc2b303f78dcdc9aaf19c78279099b389159c4' }))), h("select", { key: '87e9d612386dc3b0baf0a79b6de750d22043c967', id: this.selectId + '-hidden', class: "select__native-ctrl", ref: (select) => (this.nativeSelect = select), "aria-labelledby": labelId + ' ' + moreId + ' ' + helperEndId, disabled: this.disabled, form: this.form, multiple: this.multiple, name: this.name, required: this.required, onInvalid: this.handleInvalid }, this.allowCustomValues &&
|
732
732
|
this.valArray.map((val) => {
|
733
733
|
return (h("option", { value: val, selected: true }, val));
|
734
734
|
}), !this.allowCustomValues &&
|
@@ -38,7 +38,7 @@ export class Slide {
|
|
38
38
|
});
|
39
39
|
}
|
40
40
|
render() {
|
41
|
-
return (h(Host, { key: '
|
41
|
+
return (h(Host, { key: '3d5f03684b14b0944b06802a26955b035ae20a9f', class: "nano-slide" }, h("slot", { key: '5115d41ae13fb0980ae656c106b9105b5f14703b' })));
|
42
42
|
}
|
43
43
|
static get is() { return "nano-slide"; }
|
44
44
|
static get encapsulation() { return "shadow"; }
|
@@ -502,15 +502,15 @@ export class Slides {
|
|
502
502
|
this.destroyflickity();
|
503
503
|
}
|
504
504
|
render() {
|
505
|
-
return (h(Host, { key: '
|
505
|
+
return (h(Host, { key: '905eab94c6853e11f8103ade8a2711515a957a88', class: "nano-slides" }, h("div", { key: 'a6ca3bf953dc8ad8643b5f196bbbb4cad5696739', class: {
|
506
506
|
slideshow: true,
|
507
507
|
ready: this.ready,
|
508
508
|
'not-ready': !this.ready,
|
509
|
-
}, part: "base" }, h("div", { key: '
|
509
|
+
}, part: "base" }, h("div", { key: 'ebf38a42c8c0ee4a192e2c10c7e882f4953cf707', ref: (div) => (this.flickityEl = div), class: {
|
510
510
|
'flickity-container': true,
|
511
511
|
'slides-ready': this.slidesReady,
|
512
512
|
'slides-not-ready': !this.slidesReady,
|
513
|
-
}, part: "slide-container" }, h("slot", { key: '
|
513
|
+
}, part: "slide-container" }, h("slot", { key: 'ac8e76e6ee701ef38a73a1f753cbf7ad30ef9c59' })), h("div", { key: 'e74cad0bd4ec8e2e15308b26550a697ff3dd4dcb', class: "ui-extras" }, h("slot", { key: '8b7b6cfb6ba0e531a8c7707f5f65cba334e8eba6', name: "ui" })))));
|
514
514
|
}
|
515
515
|
static get is() { return "nano-slides"; }
|
516
516
|
static get encapsulation() { return "shadow"; }
|
@@ -732,7 +732,7 @@ export class Sortable {
|
|
732
732
|
}
|
733
733
|
}
|
734
734
|
render() {
|
735
|
-
return (h(Host, { key: '
|
735
|
+
return (h(Host, { key: 'f9329f87a60f9b77ad917b9bbf0aa526f4779e82', class: "nano-sortable" }, h("div", { key: 'c30a6d47b7a932906b17f0cd0cec80e0c7ea38ef', class: "sortable__live-region", "aria-live": "polite", "aria-relevant": "additions", "aria-atomic": "true", role: "log", part: "announcements" }, this.ariaTextList.map((str) => (h("div", null, str)))), h("slot", { key: 'a377bb437eb590b3f77d10f105b2fa09e0d21cbd' })));
|
736
736
|
}
|
737
737
|
static get is() { return "nano-sortable"; }
|
738
738
|
static get encapsulation() { return "shadow"; }
|
@@ -0,0 +1,138 @@
|
|
1
|
+
:host,
|
2
|
+
*,
|
3
|
+
*::before,
|
4
|
+
*::after {
|
5
|
+
box-sizing: border-box;
|
6
|
+
}
|
7
|
+
[hidden] {
|
8
|
+
display: none !important;
|
9
|
+
}
|
10
|
+
@media (prefers-reduced-motion: reduce) {
|
11
|
+
:host,
|
12
|
+
*,
|
13
|
+
*::before,
|
14
|
+
*::after {
|
15
|
+
animation-duration: 0.01ms !important;
|
16
|
+
animation-iteration-count: 1 !important;
|
17
|
+
transition-duration: 0.01ms !important;
|
18
|
+
scroll-behavior: auto !important;
|
19
|
+
}
|
20
|
+
}:host,
|
21
|
+
*,
|
22
|
+
*::before,
|
23
|
+
*::after {
|
24
|
+
box-sizing: border-box;
|
25
|
+
}
|
26
|
+
[hidden] {
|
27
|
+
display: none !important;
|
28
|
+
}
|
29
|
+
@media (prefers-reduced-motion: reduce) {
|
30
|
+
:host,
|
31
|
+
*,
|
32
|
+
*::before,
|
33
|
+
*::after {
|
34
|
+
animation-duration: 0.01ms !important;
|
35
|
+
animation-iteration-count: 1 !important;
|
36
|
+
transition-duration: 0.01ms !important;
|
37
|
+
scroll-behavior: auto !important;
|
38
|
+
}
|
39
|
+
}/** Typography */
|
40
|
+
:host {
|
41
|
+
display: block;
|
42
|
+
}
|
43
|
+
|
44
|
+
.nano-details {
|
45
|
+
--padding: 0;
|
46
|
+
--btn-bg-color--hover: transparent;
|
47
|
+
--btn-bg-color--active: transparent;
|
48
|
+
border: none;
|
49
|
+
margin-block-end: var(--nano-spacing-sm);
|
50
|
+
}
|
51
|
+
.nano-details::part(base) {
|
52
|
+
display: grid;
|
53
|
+
grid-template-rows: auto auto;
|
54
|
+
grid-template-columns: auto 1fr;
|
55
|
+
gap: var(--nano-spacing-sm) 1.625rem;
|
56
|
+
}
|
57
|
+
.nano-details.step--grid-working::part(base)::before {
|
58
|
+
content: "";
|
59
|
+
display: block;
|
60
|
+
grid-column: 1;
|
61
|
+
grid-row: 2;
|
62
|
+
inline-size: 1rem;
|
63
|
+
min-block-size: 1rem;
|
64
|
+
border-inline-end: 2px solid var(--nano-color-neutral-300);
|
65
|
+
}
|
66
|
+
.nano-details.step--grid-working::part(base)::after {
|
67
|
+
content: "";
|
68
|
+
grid-column: 1;
|
69
|
+
grid-row: 2;
|
70
|
+
inline-size: 0.4rem;
|
71
|
+
block-size: 0.4rem;
|
72
|
+
place-self: end end;
|
73
|
+
translate: -50% 0;
|
74
|
+
inset-inline-start: calc(50% - 2.5px);
|
75
|
+
position: relative;
|
76
|
+
border-inline-end: 2px solid var(--nano-color-neutral-300);
|
77
|
+
border-block-end: 2px solid var(--nano-color-neutral-300);
|
78
|
+
rotate: 45deg;
|
79
|
+
}
|
80
|
+
.nano-details:last-of-type::part(base)::before {
|
81
|
+
min-block-size: 0;
|
82
|
+
}
|
83
|
+
.nano-details:last-of-type::part(base)::after {
|
84
|
+
display: none;
|
85
|
+
}
|
86
|
+
.nano-details::part(header) {
|
87
|
+
grid-column: 1/-1;
|
88
|
+
grid-row: 1;
|
89
|
+
display: inline-flex;
|
90
|
+
gap: var(--nano-spacing-sm);
|
91
|
+
}
|
92
|
+
.nano-details::part(body) {
|
93
|
+
grid-column: 2;
|
94
|
+
grid-row: 2;
|
95
|
+
}
|
96
|
+
.nano-details::part(content-wrapper) {
|
97
|
+
padding: 1px;
|
98
|
+
}
|
99
|
+
.nano-details.step--grid-not-working::part(header) {
|
100
|
+
padding-block-end: var(--nano-spacing-sm);
|
101
|
+
}
|
102
|
+
.nano-details.step--grid-not-working::part(body) {
|
103
|
+
padding: 0 0 0 2.5625rem;
|
104
|
+
}
|
105
|
+
|
106
|
+
.step .step-header {
|
107
|
+
display: inline-flex;
|
108
|
+
gap: var(--nano-spacing-sm);
|
109
|
+
align-items: center;
|
110
|
+
}
|
111
|
+
.step .step-icon {
|
112
|
+
display: inline-flex;
|
113
|
+
align-items: center;
|
114
|
+
justify-content: center;
|
115
|
+
inline-size: 2rem;
|
116
|
+
block-size: 2rem;
|
117
|
+
border-radius: var(--nano-border-radius-circle);
|
118
|
+
background-color: transparent;
|
119
|
+
color: var(--nano-color-neutral-1400);
|
120
|
+
border: 1px solid var(--nano-color-neutral-300);
|
121
|
+
}
|
122
|
+
.step.step--complete .step-icon {
|
123
|
+
background-color: var(--nano-color-success-1000);
|
124
|
+
color: var(--nano-color-base-0);
|
125
|
+
border: none;
|
126
|
+
}
|
127
|
+
.step[open] .step-icon {
|
128
|
+
background-color: var(--nano-color-primary-1000);
|
129
|
+
color: var(--nano-color-base-0);
|
130
|
+
border: none;
|
131
|
+
}
|
132
|
+
.step .step-change {
|
133
|
+
font-size: var(--nano-font-size-xs);
|
134
|
+
line-height: var(--nano-line-height-normal);
|
135
|
+
letter-spacing: var(--nano-letter-spacing-loose);
|
136
|
+
text-decoration: underline;
|
137
|
+
color: var(--nano-color-primary-1200);
|
138
|
+
}
|
@@ -0,0 +1,190 @@
|
|
1
|
+
/*!
|
2
|
+
* Custom elements for Nanopore-Digital Web applications
|
3
|
+
*/
|
4
|
+
import { Fragment, forceUpdate, } from "@stencil/core";
|
5
|
+
import { h } from "../../utils/renderer";
|
6
|
+
/**
|
7
|
+
* Presents an accordion interface for a multi-step process,
|
8
|
+
* allowing users to see their progress and navigate back to completed steps.
|
9
|
+
*
|
10
|
+
* @version 8.4.0
|
11
|
+
* @status new
|
12
|
+
*
|
13
|
+
* @slot - Dynamic slots. Use `slot="step-0"`, `slot="step-1"`, etc. for each step.
|
14
|
+
*/
|
15
|
+
export class NanoStepAccordion {
|
16
|
+
host;
|
17
|
+
nanoDetails;
|
18
|
+
gridWorking = true;
|
19
|
+
/** The currently active step, zero-based index */
|
20
|
+
activeStep = 0;
|
21
|
+
handleActiveStepChange(newValue, oldValue) {
|
22
|
+
if (!this.steps[newValue]?.enabled)
|
23
|
+
this.activeStep = oldValue;
|
24
|
+
else {
|
25
|
+
const event = this.nanoStepActive.emit({
|
26
|
+
index: newValue,
|
27
|
+
step: this.steps[newValue],
|
28
|
+
});
|
29
|
+
if (event.defaultPrevented) {
|
30
|
+
this.activeStep = oldValue;
|
31
|
+
}
|
32
|
+
}
|
33
|
+
}
|
34
|
+
_steps = [];
|
35
|
+
stepProxyHandler = {
|
36
|
+
set: (target, prop, value) => {
|
37
|
+
target[prop] = value;
|
38
|
+
forceUpdate(this.host);
|
39
|
+
return true;
|
40
|
+
},
|
41
|
+
};
|
42
|
+
/** An array of steps, each with a title, completion status, and enabled state */
|
43
|
+
get steps() {
|
44
|
+
return this._steps;
|
45
|
+
}
|
46
|
+
set steps(value) {
|
47
|
+
this._steps = [];
|
48
|
+
// improved devX - use a proxy to re-render when step properties change
|
49
|
+
value.forEach((step) => {
|
50
|
+
const proxyStep = new Proxy(step, this.stepProxyHandler);
|
51
|
+
this._steps.push(proxyStep);
|
52
|
+
});
|
53
|
+
}
|
54
|
+
/** Emitted when the active step changes. Prevent default to cancel the change */
|
55
|
+
nanoStepActive;
|
56
|
+
handleToggle(event) {
|
57
|
+
if (event.detail.index === this.activeStep)
|
58
|
+
return;
|
59
|
+
this.activeStep = event.detail.index;
|
60
|
+
}
|
61
|
+
// A dirty great hack for Firefox - it doesn't support grid layout in `<details>`
|
62
|
+
// so we use this to apply different styles based on whether grid is working or not
|
63
|
+
isDetailsGridWorking(detailsEl) {
|
64
|
+
// Create a test element with explicit grid placement
|
65
|
+
const testEl = document.createElement('div');
|
66
|
+
testEl.style.gridColumn = '2';
|
67
|
+
testEl.style.height = '1px';
|
68
|
+
testEl.style.width = '1px';
|
69
|
+
testEl.style.visibility = 'hidden';
|
70
|
+
detailsEl.appendChild(testEl);
|
71
|
+
const parentX = detailsEl.getBoundingClientRect().x;
|
72
|
+
const testX = testEl.getBoundingClientRect().x;
|
73
|
+
detailsEl.removeChild(testEl);
|
74
|
+
// If testEl moved horizontally, grid is in effect
|
75
|
+
return Math.abs(testX - parentX) > 1;
|
76
|
+
}
|
77
|
+
componentDidLoad() {
|
78
|
+
if (!this.nanoDetails)
|
79
|
+
return;
|
80
|
+
const detailsEl = this.nanoDetails.shadowRoot.querySelector('details');
|
81
|
+
if (detailsEl) {
|
82
|
+
this.gridWorking = this.isDetailsGridWorking(detailsEl);
|
83
|
+
}
|
84
|
+
}
|
85
|
+
render() {
|
86
|
+
return (h("nano-accordion", { key: 'd92d8997c0486e26c132793db92b12e04d46a384', alwaysOpen: true, onNanoToggle: (event) => this.handleToggle(event) }, this.steps.map((step, index) => (h("nano-details", { open: index === this.activeStep, disabled: !step.enabled, class: {
|
87
|
+
step: true,
|
88
|
+
'step--active': index === this.activeStep,
|
89
|
+
'step--complete': step.complete,
|
90
|
+
'step--grid-working': this.gridWorking,
|
91
|
+
'step--grid-not-working': !this.gridWorking,
|
92
|
+
'step--disabled': !step.enabled,
|
93
|
+
}, ref: (el) => (this.nanoDetails = el) }, h("span", { class: "step-icon", slot: "icon-start" }, index + 1), h("div", { class: "step-header", slot: "label" }, h("span", { class: `step-title ${step.complete ? 'complete' : ''}` }, step.title), step.complete && (h(Fragment, null, h("span", null, " - "), h("span", { class: "step-change" }, "Change")))), h("span", { slot: "icon-end" }), h("div", { class: "step-content" }, h("slot", { name: `step-${index}` })))))));
|
94
|
+
}
|
95
|
+
static get is() { return "nano-step-accordion"; }
|
96
|
+
static get encapsulation() { return "shadow"; }
|
97
|
+
static get originalStyleUrls() {
|
98
|
+
return {
|
99
|
+
"$": ["step-accordion.scss"]
|
100
|
+
};
|
101
|
+
}
|
102
|
+
static get styleUrls() {
|
103
|
+
return {
|
104
|
+
"$": ["step-accordion.css"]
|
105
|
+
};
|
106
|
+
}
|
107
|
+
static get properties() {
|
108
|
+
return {
|
109
|
+
"activeStep": {
|
110
|
+
"type": "number",
|
111
|
+
"attribute": "active-step",
|
112
|
+
"mutable": true,
|
113
|
+
"complexType": {
|
114
|
+
"original": "number",
|
115
|
+
"resolved": "number",
|
116
|
+
"references": {}
|
117
|
+
},
|
118
|
+
"required": false,
|
119
|
+
"optional": false,
|
120
|
+
"docs": {
|
121
|
+
"tags": [],
|
122
|
+
"text": "The currently active step, zero-based index"
|
123
|
+
},
|
124
|
+
"getter": false,
|
125
|
+
"setter": false,
|
126
|
+
"reflect": false,
|
127
|
+
"defaultValue": "0"
|
128
|
+
},
|
129
|
+
"steps": {
|
130
|
+
"type": "unknown",
|
131
|
+
"attribute": "steps",
|
132
|
+
"mutable": false,
|
133
|
+
"complexType": {
|
134
|
+
"original": "Step[]",
|
135
|
+
"resolved": "Step[]",
|
136
|
+
"references": {
|
137
|
+
"Step": {
|
138
|
+
"location": "global",
|
139
|
+
"id": "global::Step"
|
140
|
+
}
|
141
|
+
}
|
142
|
+
},
|
143
|
+
"required": false,
|
144
|
+
"optional": false,
|
145
|
+
"docs": {
|
146
|
+
"tags": [],
|
147
|
+
"text": "An array of steps, each with a title, completion status, and enabled state"
|
148
|
+
},
|
149
|
+
"getter": true,
|
150
|
+
"setter": true,
|
151
|
+
"defaultValue": "[]"
|
152
|
+
}
|
153
|
+
};
|
154
|
+
}
|
155
|
+
static get states() {
|
156
|
+
return {
|
157
|
+
"gridWorking": {}
|
158
|
+
};
|
159
|
+
}
|
160
|
+
static get events() {
|
161
|
+
return [{
|
162
|
+
"method": "nanoStepActive",
|
163
|
+
"name": "nanoStepActive",
|
164
|
+
"bubbles": true,
|
165
|
+
"cancelable": true,
|
166
|
+
"composed": true,
|
167
|
+
"docs": {
|
168
|
+
"tags": [],
|
169
|
+
"text": "Emitted when the active step changes. Prevent default to cancel the change"
|
170
|
+
},
|
171
|
+
"complexType": {
|
172
|
+
"original": "{ index: number; step: Step }",
|
173
|
+
"resolved": "{ index: number; step: Step; }",
|
174
|
+
"references": {
|
175
|
+
"Step": {
|
176
|
+
"location": "global",
|
177
|
+
"id": "global::Step"
|
178
|
+
}
|
179
|
+
}
|
180
|
+
}
|
181
|
+
}];
|
182
|
+
}
|
183
|
+
static get elementRef() { return "host"; }
|
184
|
+
static get watchers() {
|
185
|
+
return [{
|
186
|
+
"propName": "activeStep",
|
187
|
+
"methodName": "handleActiveStepChange"
|
188
|
+
}];
|
189
|
+
}
|
190
|
+
}
|