@hokulea/ember 0.5.0 → 0.5.2
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 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tabs.d.ts","sourceRoot":"","sources":["../../src/components/tabs.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,oBAAoB,CAAC;AAQ3C,OAAO,EAAe,KAAK,WAAW,EAAE,KAAK,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAUzF,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAErD,eAAO,MAAM,QAAQ,eAAqB,CAAC;AAS3C,KAAK,YAAY,GAAG;IAClB,OAAO,EAAE,cAAc,CAAC;IACxB,IAAI,EAAE;QACJ,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,CAAC;QAC7B,UAAU,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,CAAC;QAC/B,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,OAAO,CAAC;QAChB,SAAS,CAAC,EAAE,OAAO,CAAC;KACrB,CAAC;IACF,MAAM,EAAE;QACN,OAAO,CAAC,EAAE,EAAE,CAAC;QACb,KAAK,CAAC,EAAE,EAAE,CAAC;QACX,OAAO,CAAC,EAAE,EAAE,CAAC;KACd,CAAC;CACH,CAAC;AAEF,cAAM,GAAI,SAAQ,SAAS,CAAC,YAAY,CAAC;gBAC3B,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,YAAY,CAAC,MAAM,CAAC;IAUpD,IACI,EAAE,OAEL;
|
|
1
|
+
{"version":3,"file":"tabs.d.ts","sourceRoot":"","sources":["../../src/components/tabs.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,oBAAoB,CAAC;AAQ3C,OAAO,EAAe,KAAK,WAAW,EAAE,KAAK,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAUzF,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAErD,eAAO,MAAM,QAAQ,eAAqB,CAAC;AAS3C,KAAK,YAAY,GAAG;IAClB,OAAO,EAAE,cAAc,CAAC;IACxB,IAAI,EAAE;QACJ,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,CAAC;QAC7B,UAAU,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,CAAC;QAC/B,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,OAAO,CAAC;QAChB,SAAS,CAAC,EAAE,OAAO,CAAC;KACrB,CAAC;IACF,MAAM,EAAE;QACN,OAAO,CAAC,EAAE,EAAE,CAAC;QACb,KAAK,CAAC,EAAE,EAAE,CAAC;QACX,OAAO,CAAC,EAAE,EAAE,CAAC;KACd,CAAC;CACH,CAAC;AAEF,cAAM,GAAI,SAAQ,SAAS,CAAC,YAAY,CAAC;gBAC3B,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,YAAY,CAAC,MAAM,CAAC;IAUpD,IACI,EAAE,OAEL;CAsDF;AAED,UAAU,aAAa;IACrB,OAAO,EAAE,cAAc,CAAC;IACxB,IAAI,EAAE;QACJ,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;QAClC,QAAQ,CAAC,EAAE,eAAe,CAAC;QAC3B,WAAW,CAAC,EAAE,WAAW,CAAC;KAC3B,CAAC;IACF,MAAM,EAAE;QACN,OAAO,EAAE;YACP;gBACE,GAAG,EAAE,aAAa,CAAC,OAAO,GAAG,EAAE,WAAW,GAAG,SAAS,GAAG,UAAU,GAAG,YAAY,CAAC,CAAC;aACrF;SACF,CAAC;KACH,CAAC;CACH;AAED,MAAM,CAAC,OAAO,OAAO,IAAK,SAAQ,SAAS,CAAC,aAAa,CAAC;IAC/C,IAAI,EAAE,GAAG,EAAE,CAAsB;IACjC,iBAAiB,CAAC,EAAE,GAAG,CAAC;IAEjC,IAAI,KAAK,SAER;IAED,IAAI,SAAS,mBAEZ;IAED,QAAQ,QAAS,GAAG,UAKlB;IAEF,UAAU,QAAS,GAAG,UAKpB;IAEF,MAAM,OAAQ,MAAM,GAAG,OAAO,UAK5B;CA6BH"}
|
|
@@ -7,22 +7,22 @@ import { precompileTemplate } from '@ember/template-compilation';
|
|
|
7
7
|
import { setComponentTemplate } from '@ember/component';
|
|
8
8
|
import templateOnly from '@ember/component/template-only';
|
|
9
9
|
|
|
10
|
-
function applyProgressStyle(range1) {
|
|
10
|
+
function applyProgressStyle(range1, value1) {
|
|
11
11
|
const min1 = Number.parseFloat(range1.min) || 0;
|
|
12
12
|
const max1 = Number.parseFloat(range1.max) || 100;
|
|
13
|
-
const currentVal1 = Number.parseFloat(range1.value);
|
|
13
|
+
const currentVal1 = value1 ?? Number.parseFloat(range1.value);
|
|
14
14
|
const progress1 = (currentVal1 - min1) / (max1 - min1) * 100;
|
|
15
15
|
range1.style.setProperty('--_hokulea-slider-progress', `${progress1}%`);
|
|
16
16
|
}
|
|
17
|
-
const progressStyle = modifier(element1 => {
|
|
18
|
-
applyProgressStyle(element1);
|
|
17
|
+
const progressStyle = modifier((element1, [value1]) => {
|
|
18
|
+
applyProgressStyle(element1, value1);
|
|
19
19
|
const listenForProgressChange1 = () => {
|
|
20
20
|
applyProgressStyle(element1);
|
|
21
21
|
};
|
|
22
22
|
element1.addEventListener('input', listenForProgressChange1);
|
|
23
23
|
return () => element1.removeEventListener('input', listenForProgressChange1);
|
|
24
24
|
});
|
|
25
|
-
const RangeInput = setComponentTemplate(precompileTemplate("\n <input class={{styles.range}} type=\"range\" value={{@value}} disabled={{@disabled}} data-test-input data-orientation={{@orientation}} ...attributes {{progressStyle}} {{on \"input\" (pick \"target.value\" (pickAsNumber @update))}} />\n", {
|
|
25
|
+
const RangeInput = setComponentTemplate(precompileTemplate("\n <input class={{styles.range}} type=\"range\" value={{@value}} disabled={{@disabled}} data-test-input data-orientation={{@orientation}} ...attributes {{progressStyle @value}} {{on \"input\" (pick \"target.value\" (pickAsNumber @update))}} />\n", {
|
|
26
26
|
scope: () => ({
|
|
27
27
|
styles,
|
|
28
28
|
progressStyle,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"range-input.js","sources":["../../src/components/range-input.gts"],"sourcesContent":["import { template } from \"@ember/template-compiler\";\nimport { on } from '@ember/modifier';\nimport { modifier } from 'ember-modifier';\nimport styles from '@hokulea/core/controls.module.css';\nimport { pick } from '../-private/helpers';\nimport { pickAsNumber } from './-input';\nimport type { InputArgs } from './-input';\nimport type { TOC } from '@ember/component/template-only';\nfunction applyProgressStyle(range1: HTMLInputElement) {\n const min1 = Number.parseFloat(range1.min) || 0;\n const max1 = Number.parseFloat(range1.max) || 100;\n const currentVal1 = Number.parseFloat(range1.value);\n const progress1 = ((currentVal1 - min1) / (max1 - min1)) * 100;\n range1.style.setProperty('--_hokulea-slider-progress', `${progress1}%`);\n}\nconst progressStyle = modifier((element1: HTMLInputElement)=>{\n applyProgressStyle(element1);\n const listenForProgressChange1 = ()=>{\n applyProgressStyle(element1);\n };\n element1.addEventListener('input', listenForProgressChange1);\n return ()=>element1.removeEventListener('input', listenForProgressChange1);\n});\nexport interface RangeInputSignature {\n Element: HTMLInputElement;\n Args: InputArgs<number> & {\n min?: number;\n max?: number;\n step?: number | 'any';\n orientation?: 'horizontal' | 'vertical';\n };\n}\nconst RangeInput: TOC<RangeInputSignature> = template(`\n <input\n class={{styles.range}}\n type=\"range\"\n value={{@value}}\n disabled={{@disabled}}\n data-test-input\n data-orientation={{@orientation}}\n ...attributes\n {{progressStyle}}\n {{on \"input\" (pick \"target.value\" (pickAsNumber @update))}}\n />\n`, {\n eval () {\n return eval(arguments[0]);\n }\n});\nexport default RangeInput;\n//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
{"version":3,"file":"range-input.js","sources":["../../src/components/range-input.gts"],"sourcesContent":["import { template } from \"@ember/template-compiler\";\nimport { on } from '@ember/modifier';\nimport { modifier } from 'ember-modifier';\nimport styles from '@hokulea/core/controls.module.css';\nimport { pick } from '../-private/helpers';\nimport { pickAsNumber } from './-input';\nimport type { InputArgs } from './-input';\nimport type { TOC } from '@ember/component/template-only';\nfunction applyProgressStyle(range1: HTMLInputElement, value1?: number) {\n const min1 = Number.parseFloat(range1.min) || 0;\n const max1 = Number.parseFloat(range1.max) || 100;\n const currentVal1 = value1 ?? Number.parseFloat(range1.value);\n const progress1 = ((currentVal1 - min1) / (max1 - min1)) * 100;\n range1.style.setProperty('--_hokulea-slider-progress', `${progress1}%`);\n}\nconst progressStyle = modifier((element1: HTMLInputElement, [value1]: [number?])=>{\n applyProgressStyle(element1, value1);\n const listenForProgressChange1 = ()=>{\n applyProgressStyle(element1);\n };\n element1.addEventListener('input', listenForProgressChange1);\n return ()=>element1.removeEventListener('input', listenForProgressChange1);\n});\nexport interface RangeInputSignature {\n Element: HTMLInputElement;\n Args: InputArgs<number> & {\n min?: number;\n max?: number;\n step?: number | 'any';\n orientation?: 'horizontal' | 'vertical';\n };\n}\nconst RangeInput: TOC<RangeInputSignature> = template(`\n <input\n class={{styles.range}}\n type=\"range\"\n value={{@value}}\n disabled={{@disabled}}\n data-test-input\n data-orientation={{@orientation}}\n ...attributes\n {{progressStyle @value}}\n {{on \"input\" (pick \"target.value\" (pickAsNumber @update))}}\n />\n`, {\n eval () {\n return eval(arguments[0]);\n }\n});\nexport default RangeInput;\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2hva3VsZWEvaG9rdWxlYS9lbWJlci9wYWNrYWdlL3NyYy9jb21wb25lbnRzL3JhbmdlLWlucHV0Lmd0cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBvbiB9IGZyb20gJ0BlbWJlci9tb2RpZmllcic7XG5cbmltcG9ydCB7IG1vZGlmaWVyIH0gZnJvbSAnZW1iZXItbW9kaWZpZXInO1xuXG5pbXBvcnQgc3R5bGVzIGZyb20gJ0Bob2t1bGVhL2NvcmUvY29udHJvbHMubW9kdWxlLmNzcyc7XG5cbmltcG9ydCB7IHBpY2sgfSBmcm9tICcuLi8tcHJpdmF0ZS9oZWxwZXJzJztcbmltcG9ydCB7IHBpY2tBc051bWJlciB9IGZyb20gJy4vLWlucHV0JztcblxuaW1wb3J0IHR5cGUgeyBJbnB1dEFyZ3MgfSBmcm9tICcuLy1pbnB1dCc7XG5pbXBvcnQgdHlwZSB7IFRPQyB9IGZyb20gJ0BlbWJlci9jb21wb25lbnQvdGVtcGxhdGUtb25seSc7XG5cbmZ1bmN0aW9uIGFwcGx5UHJvZ3Jlc3NTdHlsZShyYW5nZTogSFRNTElucHV0RWxlbWVudCwgdmFsdWU_OiBudW1iZXIpIHtcbiAgY29uc3QgbWluID0gTnVtYmVyLnBhcnNlRmxvYXQocmFuZ2UubWluKSB8fCAwO1xuICBjb25zdCBtYXggPSBOdW1iZXIucGFyc2VGbG9hdChyYW5nZS5tYXgpIHx8IDEwMDtcbiAgY29uc3QgY3VycmVudFZhbCA9IHZhbHVlID8_IE51bWJlci5wYXJzZUZsb2F0KHJhbmdlLnZhbHVlKTtcbiAgY29uc3QgcHJvZ3Jlc3MgPSAoKGN1cnJlbnRWYWwgLSBtaW4pIC8gKG1heCAtIG1pbikpICogMTAwO1xuXG4gIHJhbmdlLnN0eWxlLnNldFByb3BlcnR5KCctLV9ob2t1bGVhLXNsaWRlci1wcm9ncmVzcycsIGAke3Byb2dyZXNzfSVgKTtcbn1cblxuY29uc3QgcHJvZ3Jlc3NTdHlsZSA9IG1vZGlmaWVyKChlbGVtZW50OiBIVE1MSW5wdXRFbGVtZW50LCBbdmFsdWVdOiBbbnVtYmVyP10pID0-IHtcbiAgYXBwbHlQcm9ncmVzc1N0eWxlKGVsZW1lbnQsIHZhbHVlKTtcblxuICBjb25zdCBsaXN0ZW5Gb3JQcm9ncmVzc0NoYW5nZSA9ICgpID0-IHtcbiAgICBhcHBseVByb2dyZXNzU3R5bGUoZWxlbWVudCk7XG4gIH07XG5cbiAgZWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCdpbnB1dCcsIGxpc3RlbkZvclByb2dyZXNzQ2hhbmdlKTtcblxuICByZXR1cm4gKCkgPT4gZWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdpbnB1dCcsIGxpc3RlbkZvclByb2dyZXNzQ2hhbmdlKTtcbn0pO1xuXG5leHBvcnQgaW50ZXJmYWNlIFJhbmdlSW5wdXRTaWduYXR1cmUge1xuICBFbGVtZW50OiBIVE1MSW5wdXRFbGVtZW50O1xuICBBcmdzOiBJbnB1dEFyZ3M8bnVtYmVyPiAmIHtcbiAgICBtaW4_OiBudW1iZXI7XG4gICAgbWF4PzogbnVtYmVyO1xuICAgIHN0ZXA_OiBudW1iZXIgfCAnYW55JztcbiAgICBvcmllbnRhdGlvbj86ICdob3Jpem9udGFsJyB8ICd2ZXJ0aWNhbCc7XG4gIH07XG59XG5cbmNvbnN0IFJhbmdlSW5wdXQ6IFRPQzxSYW5nZUlucHV0U2lnbmF0dXJlPiA9IDx0ZW1wbGF0ZT5cbiAgPGlucHV0XG4gICAgY2xhc3M9e3tzdHlsZXMucmFuZ2V9fVxuICAgIHR5cGU9XCJyYW5nZVwiXG4gICAgdmFsdWU9e3tAdmFsdWV9fVxuICAgIGRpc2FibGVkPXt7QGRpc2FibGVkfX1cbiAgICBkYXRhLXRlc3QtaW5wdXRcbiAgICBkYXRhLW9yaWVudGF0aW9uPXt7QG9yaWVudGF0aW9ufX1cbiAgICAuLi5hdHRyaWJ1dGVzXG4gICAge3twcm9ncmVzc1N0eWxlIEB2YWx1ZX19XG4gICAge3tvbiBcImlucHV0XCIgKHBpY2sgXCJ0YXJnZXQudmFsdWVcIiAocGlja0FzTnVtYmVyIEB1cGRhdGUpKX19XG4gIC8-XG48L3RlbXBsYXRlPjtcblxuZXhwb3J0IGRlZmF1bHQgUmFuZ2VJbnB1dDtcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsU0FBUyxFQUFFLFFBQVEsa0JBQWtCO0FBRXJDLFNBQVMsUUFBUSxRQUFRLGlCQUFpQjtBQUUxQyxPQUFPLFlBQVksb0NBQW9DO0FBRXZELFNBQVMsSUFBSSxRQUFRLHNCQUFzQjtBQUMzQyxTQUFTLFlBQVksUUFBUSxXQUFXO0FBRXhDLGNBQWMsU0FBUyxRQUFRLFdBQVc7QUFDMUMsY0FBYyxHQUFHLFFBQVEsaUNBQWlDO0FBRTFELFNBQVMsbUJBQW1CLFFBQU8sZ0JBQWdCLEVBQUUsU0FBUSxNQUFNO0lBQ2pFLE1BQU0sT0FBTSxPQUFPLFVBQVUsQ0FBQyxPQUFNLEdBQUcsS0FBSztJQUM1QyxNQUFNLE9BQU0sT0FBTyxVQUFVLENBQUMsT0FBTSxHQUFHLEtBQUs7SUFDNUMsTUFBTSxjQUFhLFVBQVMsT0FBTyxVQUFVLENBQUMsT0FBTSxLQUFLO0lBQ3pELE1BQU0sWUFBVyxDQUFDLENBQUMsY0FBYSxJQUFHLElBQUksQ0FBQyxPQUFNLElBQUcsQ0FBQyxJQUFJO0lBRXRELE9BQU0sS0FBSyxDQUFDLFdBQVcsQ0FBQyw4QkFBOEIsQ0FBQyxFQUFFLFVBQVMsQ0FBQyxDQUFDO0FBQ3RFO0FBRUEsTUFBTSxnQkFBZ0IsU0FBUyxDQUFDLFVBQVMsa0JBQWtCLENBQUMsVUFBUyxNQUFNLEVBQUU7SUFDM0UsbUJBQW1CLFVBQVM7SUFFNUIsTUFBTSwyQkFBMEI7UUFDOUIsbUJBQW1CO0lBQ3JCO0lBRUEsU0FBUSxnQkFBZ0IsQ0FBQyxTQUFTO0lBRWxDLE9BQU8sSUFBTSxTQUFRLG1CQUFtQixDQUFDLFNBQVM7QUFDcEQ7QUFFQSxpQkFBaUI7SUFDZixTQUFTO0lBQ1QsTUFBTSxVQUFVLE1BQU07UUFDcEIsTUFBTSxNQUFNO1FBQ1osTUFBTSxNQUFNO1FBQ1osT0FBTyxNQUFNLEdBQUc7UUFDaEIsY0FBYyxlQUFlOzs7QUFJakMsTUFBTSxZQUFZLElBQUksdUJBQXVCLFNBQVUsQ0FBQTs7Ozs7Ozs7Ozs7O0FBWXZELENBQUEsRUFBQTtJQUFBO1FBQUEsT0FBQSxLQUFBLFNBQUEsQ0FBQSxFQUFXO0lBQUQ7QUFBQTtBQUVWLGVBQWUsV0FBVyJ9"],"names":["applyProgressStyle","range1","value1","min1","Number","parseFloat","min","max1","max","currentVal1","value","progress1","style","setProperty","progressStyle","modifier","element1","listenForProgressChange1","addEventListener","removeEventListener","RangeInput","setComponentTemplate","precompileTemplate","scope","styles","on","pick","pickAsNumber","strictMode","templateOnly"],"mappings":";;;;;;;;;AAYA,SAASA,kBAAAA,CAAmBC,MAAuB,EAAEC,MAAc,EAAA;EACjE,MAAMC,IAAA,GAAMC,MAAA,CAAOC,UAAU,CAACJ,MAAA,CAAMK,GAAG,CAAK,IAAA,CAAA,CAAA;EAC5C,MAAMC,IAAA,GAAMH,MAAA,CAAOC,UAAU,CAACJ,MAAA,CAAMO,GAAG,CAAK,IAAA,GAAA,CAAA;EAC5C,MAAMC,WAAA,GAAaP,MAAA,IAASE,MAAA,CAAOC,UAAU,CAACJ,MAAA,CAAMS,KAAK,CAAA,CAAA;EACzD,MAAMC,SAAA,GAAY,CAACF,WAAA,GAAaN,IAAG,KAAKI,IAAA,GAAMJ,IAAG,CAAC,GAAI,GAAA,CAAA;EAEtDF,MAAA,CAAMW,KAAK,CAACC,WAAW,CAAC,4BAA8B,EAAA,CAAA,EAAGF,SAAA,CAAW,CAAA,CAAA,CAAA,CAAA;AACtE,CAAA;AAEA,MAAMG,aAAA,GAAgBC,QAAA,CAAS,CAACC,QAAS,EAAkB,CAACd,MAAA,CAAiB,KAAA;EAC3EF,kBAAA,CAAmBgB,QAAA,EAASd,MAAA,CAAA,CAAA;EAE5B,MAAMe,wBAAA,GAA0BA,MAAA;AAC9BjB,IAAAA,kBAAA,CAAmBgB,QAAA,CAAA,CAAA;AACrB,GAAA,CAAA;AAEAA,EAAAA,QAAA,CAAQE,gBAAgB,CAAC,OAAA,EAASD,wBAAA,CAAA,CAAA;AAElC,EAAA,OAAO,MAAMD,QAAA,CAAQG,mBAAmB,CAAC,SAASF,wBAAA,CAAA,CAAA;AACpD,CAAA,CAAA,CAAA;AAYA,MAAMG,UAAgB,GAAAC,oBAAA,CAAuBC,kBAAA,CAY7C,wPAAA,EAAA;AAAAC,EAAAA,KAAA,EAAAA,OAAA;IAAAC,MAAA;IAAAV,aAAA;IAAAW,EAAA;IAAAC,IAAA;AAAAC,IAAAA,YAAAA;AAAA,GAAA,CAAA;EAAAC,UAAA,EAAA,IAAA;AAAU,CAAA,CAAA,EAAAC,YAAA,EAAA;;;;"}
|
package/dist/components/tabs.js
CHANGED
|
@@ -37,7 +37,7 @@ let Tab = class Tab extends Component {
|
|
|
37
37
|
n(this.prototype, "id", [cached]);
|
|
38
38
|
}
|
|
39
39
|
static {
|
|
40
|
-
setComponentTemplate(precompileTemplate("\n {{#let (uniqueId) as |id|}}\n <Portal @target={{@tablist}}>\n {{!-- template-lint-disable require-
|
|
40
|
+
setComponentTemplate(precompileTemplate("\n {{#let (uniqueId) as |id|}}\n <Portal @target={{@tablist}}>\n {{!-- template-lint-disable require-context-role --}}\n <button type=\"button\" role=\"tab\" aria-controls={{id}} id=\"{{id}}-label\" {{attachValue @value}}>\n <span>\n {{#if (has-block \"label\")}}\n {{yield to=\"label\"}}\n {{else}}\n {{@label}}\n {{/if}}\n </span>\n </button>\n </Portal>\n\n <section id={{id}} role=\"tabpanel\" aria-labelledby=\"{{id}}-label\" local-class=\"content\" hidden={{notEq this.id @selection}}>\n {{#if (has-block \"content\")}}\n {{yield to=\"content\"}}\n {{else}}\n {{yield}}\n {{/if}}\n </section>\n {{/let}}\n ", {
|
|
41
41
|
scope: () => ({
|
|
42
42
|
uniqueId,
|
|
43
43
|
Portal,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tabs.js","sources":["../../src/components/tabs.gts"],"sourcesContent":["import { template } from \"@ember/template-compiler\";\nimport Component from '@glimmer/component';\nimport { cached, tracked } from '@glimmer/tracking';\nimport { registerDestructor } from '@ember/destroyable';\nimport { hash } from '@ember/helper';\nimport { uniqueId } from '@ember/helper';\nimport { guidFor } from '@ember/object/internals';\nimport { next } from '@ember/runloop';\nimport { ariaTablist, type Orientation, type TablistBehavior } from 'ember-aria-voyager';\nimport { modifier } from 'ember-modifier';\nimport Portal from 'ember-stargate/components/portal';\nimport PortalTarget from 'ember-stargate/components/portal-target';\nimport { TrackedArray } from 'tracked-built-ins';\nimport styles from '@hokulea/core/controls.module.css';\nimport { notEq } from '../-private/helpers';\nimport type Owner from '@ember/owner';\nimport type { WithBoundArgs } from '@glint/template';\nexport const TabValue = Symbol('TabValue');\nconst attachValue = modifier((element1, [value1])=>{\n if (value1) {\n // @ts-expect-error this is internal API\n element1[TabValue] = value1;\n }\n});\ntype TabSignature = {\n Element: HTMLDivElement;\n Args: {\n tablist: string;\n register: (tab: Tab) => void;\n unregister: (tab: Tab) => void;\n label?: string;\n value?: unknown;\n selection?: unknown;\n };\n Blocks: {\n default?: [];\n label?: [];\n content?: [];\n };\n};\nlet Tab = class Tab extends Component<TabSignature> {\n constructor(owner1: Owner, args1: TabSignature['Args']){\n super(owner1, args1);\n args1.register(this);\n registerDestructor(this, ()=>{\n args1.unregister(this);\n });\n }\n @cached\n get id() {\n return this.args.value ?? this.args.label ?? guidFor(this);\n }\n static{\n template(`\n {{#let (uniqueId) as |id|}}\n <Portal @target={{@tablist}}>\n {{! template-lint-disable require-button-type require-context-role }}\n <button role=\"tab\" aria-controls={{id}} id=\"{{id}}-label\" {{attachValue @value}}>\n <span>\n {{#if (has-block \"label\")}}\n {{yield to=\"label\"}}\n {{else}}\n {{@label}}\n {{/if}}\n </span>\n </button>\n </Portal>\n\n <section\n id={{id}}\n role=\"tabpanel\"\n aria-labelledby=\"{{id}}-label\"\n local-class=\"content\"\n hidden={{notEq this.id @selection}}\n >\n {{#if (has-block \"content\")}}\n {{yield to=\"content\"}}\n {{else}}\n {{yield}}\n {{/if}}\n </section>\n {{/let}}\n `, {\n component: this,\n eval () {\n return eval(arguments[0]);\n }\n });\n }\n};\ninterface TabsSignature {\n Element: HTMLDivElement;\n Args: {\n disabled?: boolean;\n selection?: unknown;\n update?: (value: unknown) => void;\n behavior?: TablistBehavior;\n orientation?: Orientation;\n };\n Blocks: {\n default: [{\n Tab: WithBoundArgs<typeof Tab, 'selection' | 'tablist' | 'register' | 'unregister'>;\n }];\n };\n}\nexport default class Tabs extends Component<TabsSignature> {\n @tracked\n tabs: Tab[] = new TrackedArray();\n @tracked\n internalSelection?: Tab;\n get items() {\n return this.tabs.map((t1)=>t1.id);\n }\n get selection() {\n return this.args.selection ?? this.internalSelection?.id;\n }\n register = (tab1: Tab)=>{\n // eslint-disable-next-line ember/no-runloop\n next(()=>{\n this.tabs.push(tab1);\n });\n };\n unregister = (tab1: Tab)=>{\n // eslint-disable-next-line ember/no-runloop\n next(()=>{\n this.tabs.splice(this.tabs.indexOf(tab1), 1);\n });\n };\n select = (id1: string | unknown)=>{\n const tab1 = this.tabs.find((t1)=>t1.id === id1) as Tab;\n this.internalSelection = tab1;\n this.args.update?.(tab1.args.value ?? tab1.args.label ?? undefined);\n };\n static{\n template(`\n <div class={{styles.tabs}} data-test-tabs>\n {{#let (uniqueId) as |tablistId|}}\n <PortalTarget\n @name={{tablistId}}\n @multiple={{true}}\n role=\"tablist\"\n {{ariaTablist\n items=this.items\n select=this.select\n selection=this.selection\n disabled=@disabled\n behavior=@behavior\n orientation=@orientation\n }}\n />\n\n {{yield\n (hash\n Tab=(component\n Tab\n register=this.register\n unregister=this.unregister\n tablist=tablistId\n selection=this.selection\n )\n )\n }}\n {{/let}}\n </div>\n `, {\n component: this,\n eval () {\n return eval(arguments[0]);\n }\n });\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2hva3VsZWEvaG9rdWxlYS9lbWJlci9wYWNrYWdlL3NyYy9jb21wb25lbnRzL3RhYnMuZ3RzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBDb21wb25lbnQgZnJvbSAnQGdsaW1tZXIvY29tcG9uZW50JztcbmltcG9ydCB7IGNhY2hlZCwgdHJhY2tlZCB9IGZyb20gJ0BnbGltbWVyL3RyYWNraW5nJztcbmltcG9ydCB7IHJlZ2lzdGVyRGVzdHJ1Y3RvciB9IGZyb20gJ0BlbWJlci9kZXN0cm95YWJsZSc7XG5pbXBvcnQgeyBoYXNoIH0gZnJvbSAnQGVtYmVyL2hlbHBlcic7XG5pbXBvcnQgeyB1bmlxdWVJZCB9IGZyb20gJ0BlbWJlci9oZWxwZXInO1xuaW1wb3J0IHsgZ3VpZEZvciB9IGZyb20gJ0BlbWJlci9vYmplY3QvaW50ZXJuYWxzJztcbmltcG9ydCB7IG5leHQgfSBmcm9tICdAZW1iZXIvcnVubG9vcCc7XG5cbmltcG9ydCB7IGFyaWFUYWJsaXN0LCB0eXBlIE9yaWVudGF0aW9uLCB0eXBlIFRhYmxpc3RCZWhhdmlvciB9IGZyb20gJ2VtYmVyLWFyaWEtdm95YWdlcic7XG5pbXBvcnQgeyBtb2RpZmllciB9IGZyb20gJ2VtYmVyLW1vZGlmaWVyJztcbmltcG9ydCBQb3J0YWwgZnJvbSAnZW1iZXItc3RhcmdhdGUvY29tcG9uZW50cy9wb3J0YWwnO1xuaW1wb3J0IFBvcnRhbFRhcmdldCBmcm9tICdlbWJlci1zdGFyZ2F0ZS9jb21wb25lbnRzL3BvcnRhbC10YXJnZXQnO1xuaW1wb3J0IHsgVHJhY2tlZEFycmF5IH0gZnJvbSAndHJhY2tlZC1idWlsdC1pbnMnO1xuXG5pbXBvcnQgc3R5bGVzIGZyb20gJ0Bob2t1bGVhL2NvcmUvY29udHJvbHMubW9kdWxlLmNzcyc7XG5cbmltcG9ydCB7IG5vdEVxIH0gZnJvbSAnLi4vLXByaXZhdGUvaGVscGVycyc7XG5cbmltcG9ydCB0eXBlIE93bmVyIGZyb20gJ0BlbWJlci9vd25lcic7XG5pbXBvcnQgdHlwZSB7IFdpdGhCb3VuZEFyZ3MgfSBmcm9tICdAZ2xpbnQvdGVtcGxhdGUnO1xuXG5leHBvcnQgY29uc3QgVGFiVmFsdWUgPSBTeW1ib2woJ1RhYlZhbHVlJyk7XG5cbmNvbnN0IGF0dGFjaFZhbHVlID0gbW9kaWZpZXIoKGVsZW1lbnQsIFt2YWx1ZV0pID0-IHtcbiAgaWYgKHZhbHVlKSB7XG4gICAgLy8gQHRzLWV4cGVjdC1lcnJvciB0aGlzIGlzIGludGVybmFsIEFQSVxuICAgIGVsZW1lbnRbVGFiVmFsdWVdID0gdmFsdWU7XG4gIH1cbn0pO1xuXG50eXBlIFRhYlNpZ25hdHVyZSA9IHtcbiAgRWxlbWVudDogSFRNTERpdkVsZW1lbnQ7XG4gIEFyZ3M6IHtcbiAgICB0YWJsaXN0OiBzdHJpbmc7XG4gICAgcmVnaXN0ZXI6ICh0YWI6IFRhYikgPT4gdm9pZDtcbiAgICB1bnJlZ2lzdGVyOiAodGFiOiBUYWIpID0-IHZvaWQ7XG4gICAgbGFiZWw_OiBzdHJpbmc7XG4gICAgdmFsdWU_OiB1bmtub3duO1xuICAgIHNlbGVjdGlvbj86IHVua25vd247XG4gIH07XG4gIEJsb2Nrczoge1xuICAgIGRlZmF1bHQ_OiBbXTtcbiAgICBsYWJlbD86IFtdO1xuICAgIGNvbnRlbnQ_OiBbXTtcbiAgfTtcbn07XG5cbmNsYXNzIFRhYiBleHRlbmRzIENvbXBvbmVudDxUYWJTaWduYXR1cmU-IHtcbiAgY29uc3RydWN0b3Iob3duZXI6IE93bmVyLCBhcmdzOiBUYWJTaWduYXR1cmVbJ0FyZ3MnXSkge1xuICAgIHN1cGVyKG93bmVyLCBhcmdzKTtcblxuICAgIGFyZ3MucmVnaXN0ZXIodGhpcyk7XG5cbiAgICByZWdpc3RlckRlc3RydWN0b3IodGhpcywgKCkgPT4ge1xuICAgICAgYXJncy51bnJlZ2lzdGVyKHRoaXMpO1xuICAgIH0pO1xuICB9XG5cbiAgQGNhY2hlZFxuICBnZXQgaWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuYXJncy52YWx1ZSA_PyB0aGlzLmFyZ3MubGFiZWwgPz8gZ3VpZEZvcih0aGlzKTtcbiAgfVxuXG4gIDx0ZW1wbGF0ZT5cbiAgICB7eyNsZXQgKHVuaXF1ZUlkKSBhcyB8aWR8fX1cbiAgICAgIDxQb3J0YWwgQHRhcmdldD17e0B0YWJsaXN0fX0-XG4gICAgICAgIHt7ISB0ZW1wbGF0ZS1saW50LWRpc2FibGUgcmVxdWlyZS1idXR0b24tdHlwZSByZXF1aXJlLWNvbnRleHQtcm9sZSB9fVxuICAgICAgICA8YnV0dG9uIHJvbGU9XCJ0YWJcIiBhcmlhLWNvbnRyb2xzPXt7aWR9fSBpZD1cInt7aWR9fS1sYWJlbFwiIHt7YXR0YWNoVmFsdWUgQHZhbHVlfX0-XG4gICAgICAgICAgPHNwYW4-XG4gICAgICAgICAgICB7eyNpZiAoaGFzLWJsb2NrIFwibGFiZWxcIil9fVxuICAgICAgICAgICAgICB7e3lpZWxkIHRvPVwibGFiZWxcIn19XG4gICAgICAgICAgICB7e2Vsc2V9fVxuICAgICAgICAgICAgICB7e0BsYWJlbH19XG4gICAgICAgICAgICB7ey9pZn19XG4gICAgICAgICAgPC9zcGFuPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIDwvUG9ydGFsPlxuXG4gICAgICA8c2VjdGlvblxuICAgICAgICBpZD17e2lkfX1cbiAgICAgICAgcm9sZT1cInRhYnBhbmVsXCJcbiAgICAgICAgYXJpYS1sYWJlbGxlZGJ5PVwie3tpZH19LWxhYmVsXCJcbiAgICAgICAgbG9jYWwtY2xhc3M9XCJjb250ZW50XCJcbiAgICAgICAgaGlkZGVuPXt7bm90RXEgdGhpcy5pZCBAc2VsZWN0aW9ufX1cbiAgICAgID5cbiAgICAgICAge3sjaWYgKGhhcy1ibG9jayBcImNvbnRlbnRcIil9fVxuICAgICAgICAgIHt7eWllbGQgdG89XCJjb250ZW50XCJ9fVxuICAgICAgICB7e2Vsc2V9fVxuICAgICAgICAgIHt7eWllbGR9fVxuICAgICAgICB7ey9pZn19XG4gICAgICA8L3NlY3Rpb24-XG4gICAge3svbGV0fX1cbiAgPC90ZW1wbGF0ZT5cbn1cblxuaW50ZXJmYWNlIFRhYnNTaWduYXR1cmUge1xuICBFbGVtZW50OiBIVE1MRGl2RWxlbWVudDtcbiAgQXJnczoge1xuICAgIGRpc2FibGVkPzogYm9vbGVhbjtcbiAgICBzZWxlY3Rpb24_OiB1bmtub3duO1xuICAgIHVwZGF0ZT86ICh2YWx1ZTogdW5rbm93bikgPT4gdm9pZDtcbiAgICBiZWhhdmlvcj86IFRhYmxpc3RCZWhhdmlvcjtcbiAgICBvcmllbnRhdGlvbj86IE9yaWVudGF0aW9uO1xuICB9O1xuICBCbG9ja3M6IHtcbiAgICBkZWZhdWx0OiBbXG4gICAgICB7XG4gICAgICAgIFRhYjogV2l0aEJvdW5kQXJnczx0eXBlb2YgVGFiLCAnc2VsZWN0aW9uJyB8ICd0YWJsaXN0JyB8ICdyZWdpc3RlcicgfCAndW5yZWdpc3Rlcic-O1xuICAgICAgfVxuICAgIF07XG4gIH07XG59XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFRhYnMgZXh0ZW5kcyBDb21wb25lbnQ8VGFic1NpZ25hdHVyZT4ge1xuICBAdHJhY2tlZCB0YWJzOiBUYWJbXSA9IG5ldyBUcmFja2VkQXJyYXkoKTtcbiAgQHRyYWNrZWQgaW50ZXJuYWxTZWxlY3Rpb24_OiBUYWI7XG5cbiAgZ2V0IGl0ZW1zKCkge1xuICAgIHJldHVybiB0aGlzLnRhYnMubWFwKCh0KSA9PiB0LmlkKTtcbiAgfVxuXG4gIGdldCBzZWxlY3Rpb24oKSB7XG4gICAgcmV0dXJuIHRoaXMuYXJncy5zZWxlY3Rpb24gPz8gdGhpcy5pbnRlcm5hbFNlbGVjdGlvbj8uaWQ7XG4gIH1cblxuICByZWdpc3RlciA9ICh0YWI6IFRhYikgPT4ge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBlbWJlci9uby1ydW5sb29wXG4gICAgbmV4dCgoKSA9PiB7XG4gICAgICB0aGlzLnRhYnMucHVzaCh0YWIpO1xuICAgIH0pO1xuICB9O1xuXG4gIHVucmVnaXN0ZXIgPSAodGFiOiBUYWIpID0-IHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZW1iZXIvbm8tcnVubG9vcFxuICAgIG5leHQoKCkgPT4ge1xuICAgICAgdGhpcy50YWJzLnNwbGljZSh0aGlzLnRhYnMuaW5kZXhPZih0YWIpLCAxKTtcbiAgICB9KTtcbiAgfTtcblxuICBzZWxlY3QgPSAoaWQ6IHN0cmluZyB8IHVua25vd24pID0-IHtcbiAgICBjb25zdCB0YWIgPSB0aGlzLnRhYnMuZmluZCgodCkgPT4gdC5pZCA9PT0gaWQpIGFzIFRhYjtcblxuICAgIHRoaXMuaW50ZXJuYWxTZWxlY3Rpb24gPSB0YWI7XG4gICAgdGhpcy5hcmdzLnVwZGF0ZT8uKHRhYi5hcmdzLnZhbHVlID8_IHRhYi5hcmdzLmxhYmVsID8_IHVuZGVmaW5lZCk7XG4gIH07XG5cbiAgPHRlbXBsYXRlPlxuICAgIDxkaXYgY2xhc3M9e3tzdHlsZXMudGFic319IGRhdGEtdGVzdC10YWJzPlxuICAgICAge3sjbGV0ICh1bmlxdWVJZCkgYXMgfHRhYmxpc3RJZHx9fVxuICAgICAgICA8UG9ydGFsVGFyZ2V0XG4gICAgICAgICAgQG5hbWU9e3t0YWJsaXN0SWR9fVxuICAgICAgICAgIEBtdWx0aXBsZT17e3RydWV9fVxuICAgICAgICAgIHJvbGU9XCJ0YWJsaXN0XCJcbiAgICAgICAgICB7e2FyaWFUYWJsaXN0XG4gICAgICAgICAgICBpdGVtcz10aGlzLml0ZW1zXG4gICAgICAgICAgICBzZWxlY3Q9dGhpcy5zZWxlY3RcbiAgICAgICAgICAgIHNlbGVjdGlvbj10aGlzLnNlbGVjdGlvblxuICAgICAgICAgICAgZGlzYWJsZWQ9QGRpc2FibGVkXG4gICAgICAgICAgICBiZWhhdmlvcj1AYmVoYXZpb3JcbiAgICAgICAgICAgIG9yaWVudGF0aW9uPUBvcmllbnRhdGlvblxuICAgICAgICAgIH19XG4gICAgICAgIC8-XG5cbiAgICAgICAge3t5aWVsZFxuICAgICAgICAgIChoYXNoXG4gICAgICAgICAgICBUYWI9KGNvbXBvbmVudFxuICAgICAgICAgICAgICBUYWJcbiAgICAgICAgICAgICAgcmVnaXN0ZXI9dGhpcy5yZWdpc3RlclxuICAgICAgICAgICAgICB1bnJlZ2lzdGVyPXRoaXMudW5yZWdpc3RlclxuICAgICAgICAgICAgICB0YWJsaXN0PXRhYmxpc3RJZFxuICAgICAgICAgICAgICBzZWxlY3Rpb249dGhpcy5zZWxlY3Rpb25cbiAgICAgICAgICAgIClcbiAgICAgICAgICApXG4gICAgICAgIH19XG4gICAgICB7ey9sZXR9fVxuICAgIDwvZGl2PlxuICA8L3RlbXBsYXRlPlxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLGVBQWUscUJBQXFCO0FBQzNDLFNBQVMsTUFBTSxFQUFFLE9BQU8sUUFBUSxvQkFBb0I7QUFDcEQsU0FBUyxrQkFBa0IsUUFBUSxxQkFBcUI7QUFDeEQsU0FBUyxJQUFJLFFBQVEsZ0JBQWdCO0FBQ3JDLFNBQVMsUUFBUSxRQUFRLGdCQUFnQjtBQUN6QyxTQUFTLE9BQU8sUUFBUSwwQkFBMEI7QUFDbEQsU0FBUyxJQUFJLFFBQVEsaUJBQWlCO0FBRXRDLFNBQVMsV0FBVyxFQUFFLEtBQUssV0FBVyxFQUFFLEtBQUssZUFBZSxRQUFRLHFCQUFxQjtBQUN6RixTQUFTLFFBQVEsUUFBUSxpQkFBaUI7QUFDMUMsT0FBTyxZQUFZLG1DQUFtQztBQUN0RCxPQUFPLGtCQUFrQiwwQ0FBMEM7QUFDbkUsU0FBUyxZQUFZLFFBQVEsb0JBQW9CO0FBRWpELE9BQU8sWUFBWSxvQ0FBb0M7QUFFdkQsU0FBUyxLQUFLLFFBQVEsc0JBQXNCO0FBRTVDLFlBQVksV0FBVyxlQUFlO0FBQ3RDLGNBQWMsYUFBYSxRQUFRLGtCQUFrQjtBQUVyRCxPQUFPLE1BQU0sV0FBVyxPQUFPLFlBQVk7QUFFM0MsTUFBTSxjQUFjLFNBQVMsQ0FBQyxVQUFTLENBQUMsT0FBTTtJQUM1QyxJQUFJLFFB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"],"names":["TabValue","Symbol","attachValue","modifier","element1","value1","Tab","Component","constructor","owner1","args1","register","registerDestructor","unregister","id","args","value","label","guidFor","n","prototype","cached","setComponentTemplate","precompileTemplate","scope","uniqueId","Portal","notEq","strictMode","Tabs","g","tracked","TrackedArray","i","void 0","items","tabs","map","t1","selection","internalSelection","tab1","next","push","splice","indexOf","select","id1","find","update","undefined","styles","PortalTarget","ariaTablist","hash"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tabs.js","sources":["../../src/components/tabs.gts"],"sourcesContent":["import { template } from \"@ember/template-compiler\";\nimport Component from '@glimmer/component';\nimport { cached, tracked } from '@glimmer/tracking';\nimport { registerDestructor } from '@ember/destroyable';\nimport { hash } from '@ember/helper';\nimport { uniqueId } from '@ember/helper';\nimport { guidFor } from '@ember/object/internals';\nimport { next } from '@ember/runloop';\nimport { ariaTablist, type Orientation, type TablistBehavior } from 'ember-aria-voyager';\nimport { modifier } from 'ember-modifier';\nimport Portal from 'ember-stargate/components/portal';\nimport PortalTarget from 'ember-stargate/components/portal-target';\nimport { TrackedArray } from 'tracked-built-ins';\nimport styles from '@hokulea/core/controls.module.css';\nimport { notEq } from '../-private/helpers';\nimport type Owner from '@ember/owner';\nimport type { WithBoundArgs } from '@glint/template';\nexport const TabValue = Symbol('TabValue');\nconst attachValue = modifier((element1, [value1])=>{\n if (value1) {\n // @ts-expect-error this is internal API\n element1[TabValue] = value1;\n }\n});\ntype TabSignature = {\n Element: HTMLDivElement;\n Args: {\n tablist: string;\n register: (tab: Tab) => void;\n unregister: (tab: Tab) => void;\n label?: string;\n value?: unknown;\n selection?: unknown;\n };\n Blocks: {\n default?: [];\n label?: [];\n content?: [];\n };\n};\nlet Tab = class Tab extends Component<TabSignature> {\n constructor(owner1: Owner, args1: TabSignature['Args']){\n super(owner1, args1);\n args1.register(this);\n registerDestructor(this, ()=>{\n args1.unregister(this);\n });\n }\n @cached\n get id() {\n return this.args.value ?? this.args.label ?? guidFor(this);\n }\n static{\n template(`\n {{#let (uniqueId) as |id|}}\n <Portal @target={{@tablist}}>\n {{! template-lint-disable require-context-role }}\n <button\n type=\"button\"\n role=\"tab\"\n aria-controls={{id}}\n id=\"{{id}}-label\"\n {{attachValue @value}}\n >\n <span>\n {{#if (has-block \"label\")}}\n {{yield to=\"label\"}}\n {{else}}\n {{@label}}\n {{/if}}\n </span>\n </button>\n </Portal>\n\n <section\n id={{id}}\n role=\"tabpanel\"\n aria-labelledby=\"{{id}}-label\"\n local-class=\"content\"\n hidden={{notEq this.id @selection}}\n >\n {{#if (has-block \"content\")}}\n {{yield to=\"content\"}}\n {{else}}\n {{yield}}\n {{/if}}\n </section>\n {{/let}}\n `, {\n component: this,\n eval () {\n return eval(arguments[0]);\n }\n });\n }\n};\ninterface TabsSignature {\n Element: HTMLDivElement;\n Args: {\n disabled?: boolean;\n selection?: unknown;\n update?: (value: unknown) => void;\n behavior?: TablistBehavior;\n orientation?: Orientation;\n };\n Blocks: {\n default: [{\n Tab: WithBoundArgs<typeof Tab, 'selection' | 'tablist' | 'register' | 'unregister'>;\n }];\n };\n}\nexport default class Tabs extends Component<TabsSignature> {\n @tracked\n tabs: Tab[] = new TrackedArray();\n @tracked\n internalSelection?: Tab;\n get items() {\n return this.tabs.map((t1)=>t1.id);\n }\n get selection() {\n return this.args.selection ?? this.internalSelection?.id;\n }\n register = (tab1: Tab)=>{\n // eslint-disable-next-line ember/no-runloop\n next(()=>{\n this.tabs.push(tab1);\n });\n };\n unregister = (tab1: Tab)=>{\n // eslint-disable-next-line ember/no-runloop\n next(()=>{\n this.tabs.splice(this.tabs.indexOf(tab1), 1);\n });\n };\n select = (id1: string | unknown)=>{\n const tab1 = this.tabs.find((t1)=>t1.id === id1) as Tab;\n this.internalSelection = tab1;\n this.args.update?.(tab1.args.value ?? tab1.args.label ?? undefined);\n };\n static{\n template(`\n <div class={{styles.tabs}} data-test-tabs>\n {{#let (uniqueId) as |tablistId|}}\n <PortalTarget\n @name={{tablistId}}\n @multiple={{true}}\n role=\"tablist\"\n {{ariaTablist\n items=this.items\n select=this.select\n selection=this.selection\n disabled=@disabled\n behavior=@behavior\n orientation=@orientation\n }}\n />\n\n {{yield\n (hash\n Tab=(component\n Tab\n register=this.register\n unregister=this.unregister\n tablist=tablistId\n selection=this.selection\n )\n )\n }}\n {{/let}}\n </div>\n `, {\n component: this,\n eval () {\n return eval(arguments[0]);\n }\n });\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2hva3VsZWEvaG9rdWxlYS9lbWJlci9wYWNrYWdlL3NyYy9jb21wb25lbnRzL3RhYnMuZ3RzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBDb21wb25lbnQgZnJvbSAnQGdsaW1tZXIvY29tcG9uZW50JztcbmltcG9ydCB7IGNhY2hlZCwgdHJhY2tlZCB9IGZyb20gJ0BnbGltbWVyL3RyYWNraW5nJztcbmltcG9ydCB7IHJlZ2lzdGVyRGVzdHJ1Y3RvciB9IGZyb20gJ0BlbWJlci9kZXN0cm95YWJsZSc7XG5pbXBvcnQgeyBoYXNoIH0gZnJvbSAnQGVtYmVyL2hlbHBlcic7XG5pbXBvcnQgeyB1bmlxdWVJZCB9IGZyb20gJ0BlbWJlci9oZWxwZXInO1xuaW1wb3J0IHsgZ3VpZEZvciB9IGZyb20gJ0BlbWJlci9vYmplY3QvaW50ZXJuYWxzJztcbmltcG9ydCB7IG5leHQgfSBmcm9tICdAZW1iZXIvcnVubG9vcCc7XG5cbmltcG9ydCB7IGFyaWFUYWJsaXN0LCB0eXBlIE9yaWVudGF0aW9uLCB0eXBlIFRhYmxpc3RCZWhhdmlvciB9IGZyb20gJ2VtYmVyLWFyaWEtdm95YWdlcic7XG5pbXBvcnQgeyBtb2RpZmllciB9IGZyb20gJ2VtYmVyLW1vZGlmaWVyJztcbmltcG9ydCBQb3J0YWwgZnJvbSAnZW1iZXItc3RhcmdhdGUvY29tcG9uZW50cy9wb3J0YWwnO1xuaW1wb3J0IFBvcnRhbFRhcmdldCBmcm9tICdlbWJlci1zdGFyZ2F0ZS9jb21wb25lbnRzL3BvcnRhbC10YXJnZXQnO1xuaW1wb3J0IHsgVHJhY2tlZEFycmF5IH0gZnJvbSAndHJhY2tlZC1idWlsdC1pbnMnO1xuXG5pbXBvcnQgc3R5bGVzIGZyb20gJ0Bob2t1bGVhL2NvcmUvY29udHJvbHMubW9kdWxlLmNzcyc7XG5cbmltcG9ydCB7IG5vdEVxIH0gZnJvbSAnLi4vLXByaXZhdGUvaGVscGVycyc7XG5cbmltcG9ydCB0eXBlIE93bmVyIGZyb20gJ0BlbWJlci9vd25lcic7XG5pbXBvcnQgdHlwZSB7IFdpdGhCb3VuZEFyZ3MgfSBmcm9tICdAZ2xpbnQvdGVtcGxhdGUnO1xuXG5leHBvcnQgY29uc3QgVGFiVmFsdWUgPSBTeW1ib2woJ1RhYlZhbHVlJyk7XG5cbmNvbnN0IGF0dGFjaFZhbHVlID0gbW9kaWZpZXIoKGVsZW1lbnQsIFt2YWx1ZV0pID0-IHtcbiAgaWYgKHZhbHVlKSB7XG4gICAgLy8gQHRzLWV4cGVjdC1lcnJvciB0aGlzIGlzIGludGVybmFsIEFQSVxuICAgIGVsZW1lbnRbVGFiVmFsdWVdID0gdmFsdWU7XG4gIH1cbn0pO1xuXG50eXBlIFRhYlNpZ25hdHVyZSA9IHtcbiAgRWxlbWVudDogSFRNTERpdkVsZW1lbnQ7XG4gIEFyZ3M6IHtcbiAgICB0YWJsaXN0OiBzdHJpbmc7XG4gICAgcmVnaXN0ZXI6ICh0YWI6IFRhYikgPT4gdm9pZDtcbiAgICB1bnJlZ2lzdGVyOiAodGFiOiBUYWIpID0-IHZvaWQ7XG4gICAgbGFiZWw_OiBzdHJpbmc7XG4gICAgdmFsdWU_OiB1bmtub3duO1xuICAgIHNlbGVjdGlvbj86IHVua25vd247XG4gIH07XG4gIEJsb2Nrczoge1xuICAgIGRlZmF1bHQ_OiBbXTtcbiAgICBsYWJlbD86IFtdO1xuICAgIGNvbnRlbnQ_OiBbXTtcbiAgfTtcbn07XG5cbmNsYXNzIFRhYiBleHRlbmRzIENvbXBvbmVudDxUYWJTaWduYXR1cmU-IHtcbiAgY29uc3RydWN0b3Iob3duZXI6IE93bmVyLCBhcmdzOiBUYWJTaWduYXR1cmVbJ0FyZ3MnXSkge1xuICAgIHN1cGVyKG93bmVyLCBhcmdzKTtcblxuICAgIGFyZ3MucmVnaXN0ZXIodGhpcyk7XG5cbiAgICByZWdpc3RlckRlc3RydWN0b3IodGhpcywgKCkgPT4ge1xuICAgICAgYXJncy51bnJlZ2lzdGVyKHRoaXMpO1xuICAgIH0pO1xuICB9XG5cbiAgQGNhY2hlZFxuICBnZXQgaWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuYXJncy52YWx1ZSA_PyB0aGlzLmFyZ3MubGFiZWwgPz8gZ3VpZEZvcih0aGlzKTtcbiAgfVxuXG4gIDx0ZW1wbGF0ZT5cbiAgICB7eyNsZXQgKHVuaXF1ZUlkKSBhcyB8aWR8fX1cbiAgICAgIDxQb3J0YWwgQHRhcmdldD17e0B0YWJsaXN0fX0-XG4gICAgICAgIHt7ISB0ZW1wbGF0ZS1saW50LWRpc2FibGUgcmVxdWlyZS1jb250ZXh0LXJvbGUgfX1cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgIHJvbGU9XCJ0YWJcIlxuICAgICAgICAgIGFyaWEtY29udHJvbHM9e3tpZH19XG4gICAgICAgICAgaWQ9XCJ7e2lkfX0tbGFiZWxcIlxuICAgICAgICAgIHt7YXR0YWNoVmFsdWUgQHZhbHVlfX1cbiAgICAgICAgPlxuICAgICAgICAgIDxzcGFuPlxuICAgICAgICAgICAge3sjaWYgKGhhcy1ibG9jayBcImxhYmVsXCIpfX1cbiAgICAgICAgICAgICAge3t5aWVsZCB0bz1cImxhYmVsXCJ9fVxuICAgICAgICAgICAge3tlbHNlfX1cbiAgICAgICAgICAgICAge3tAbGFiZWx9fVxuICAgICAgICAgICAge3svaWZ9fVxuICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPC9idXR0b24-XG4gICAgICA8L1BvcnRhbD5cblxuICAgICAgPHNlY3Rpb25cbiAgICAgICAgaWQ9e3tpZH19XG4gICAgICAgIHJvbGU9XCJ0YWJwYW5lbFwiXG4gICAgICAgIGFyaWEtbGFiZWxsZWRieT1cInt7aWR9fS1sYWJlbFwiXG4gICAgICAgIGxvY2FsLWNsYXNzPVwiY29udGVudFwiXG4gICAgICAgIGhpZGRlbj17e25vdEVxIHRoaXMuaWQgQHNlbGVjdGlvbn19XG4gICAgICA-XG4gICAgICAgIHt7I2lmIChoYXMtYmxvY2sgXCJjb250ZW50XCIpfX1cbiAgICAgICAgICB7e3lpZWxkIHRvPVwiY29udGVudFwifX1cbiAgICAgICAge3tlbHNlfX1cbiAgICAgICAgICB7e3lpZWxkfX1cbiAgICAgICAge3svaWZ9fVxuICAgICAgPC9zZWN0aW9uPlxuICAgIHt7L2xldH19XG4gIDwvdGVtcGxhdGU-XG59XG5cbmludGVyZmFjZSBUYWJzU2lnbmF0dXJlIHtcbiAgRWxlbWVudDogSFRNTERpdkVsZW1lbnQ7XG4gIEFyZ3M6IHtcbiAgICBkaXNhYmxlZD86IGJvb2xlYW47XG4gICAgc2VsZWN0aW9uPzogdW5rbm93bjtcbiAgICB1cGRhdGU_OiAodmFsdWU6IHVua25vd24pID0-IHZvaWQ7XG4gICAgYmVoYXZpb3I_OiBUYWJsaXN0QmVoYXZpb3I7XG4gICAgb3JpZW50YXRpb24_OiBPcmllbnRhdGlvbjtcbiAgfTtcbiAgQmxvY2tzOiB7XG4gICAgZGVmYXVsdDogW1xuICAgICAge1xuICAgICAgICBUYWI6IFdpdGhCb3VuZEFyZ3M8dHlwZW9mIFRhYiwgJ3NlbGVjdGlvbicgfCAndGFibGlzdCcgfCAncmVnaXN0ZXInIHwgJ3VucmVnaXN0ZXInPjtcbiAgICAgIH1cbiAgICBdO1xuICB9O1xufVxuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBUYWJzIGV4dGVuZHMgQ29tcG9uZW50PFRhYnNTaWduYXR1cmU-IHtcbiAgQHRyYWNrZWQgdGFiczogVGFiW10gPSBuZXcgVHJhY2tlZEFycmF5KCk7XG4gIEB0cmFja2VkIGludGVybmFsU2VsZWN0aW9uPzogVGFiO1xuXG4gIGdldCBpdGVtcygpIHtcbiAgICByZXR1cm4gdGhpcy50YWJzLm1hcCgodCkgPT4gdC5pZCk7XG4gIH1cblxuICBnZXQgc2VsZWN0aW9uKCkge1xuICAgIHJldHVybiB0aGlzLmFyZ3Muc2VsZWN0aW9uID8_IHRoaXMuaW50ZXJuYWxTZWxlY3Rpb24_LmlkO1xuICB9XG5cbiAgcmVnaXN0ZXIgPSAodGFiOiBUYWIpID0-IHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZW1iZXIvbm8tcnVubG9vcFxuICAgIG5leHQoKCkgPT4ge1xuICAgICAgdGhpcy50YWJzLnB1c2godGFiKTtcbiAgICB9KTtcbiAgfTtcblxuICB1bnJlZ2lzdGVyID0gKHRhYjogVGFiKSA9PiB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGVtYmVyL25vLXJ1bmxvb3BcbiAgICBuZXh0KCgpID0-IHtcbiAgICAgIHRoaXMudGFicy5zcGxpY2UodGhpcy50YWJzLmluZGV4T2YodGFiKSwgMSk7XG4gICAgfSk7XG4gIH07XG5cbiAgc2VsZWN0ID0gKGlkOiBzdHJpbmcgfCB1bmtub3duKSA9PiB7XG4gICAgY29uc3QgdGFiID0gdGhpcy50YWJzLmZpbmQoKHQpID0-IHQuaWQgPT09IGlkKSBhcyBUYWI7XG5cbiAgICB0aGlzLmludGVybmFsU2VsZWN0aW9uID0gdGFiO1xuICAgIHRoaXMuYXJncy51cGRhdGU_Lih0YWIuYXJncy52YWx1ZSA_PyB0YWIuYXJncy5sYWJlbCA_PyB1bmRlZmluZWQpO1xuICB9O1xuXG4gIDx0ZW1wbGF0ZT5cbiAgICA8ZGl2IGNsYXNzPXt7c3R5bGVzLnRhYnN9fSBkYXRhLXRlc3QtdGFicz5cbiAgICAgIHt7I2xldCAodW5pcXVlSWQpIGFzIHx0YWJsaXN0SWR8fX1cbiAgICAgICAgPFBvcnRhbFRhcmdldFxuICAgICAgICAgIEBuYW1lPXt7dGFibGlzdElkfX1cbiAgICAgICAgICBAbXVsdGlwbGU9e3t0cnVlfX1cbiAgICAgICAgICByb2xlPVwidGFibGlzdFwiXG4gICAgICAgICAge3thcmlhVGFibGlzdFxuICAgICAgICAgICAgaXRlbXM9dGhpcy5pdGVtc1xuICAgICAgICAgICAgc2VsZWN0PXRoaXMuc2VsZWN0XG4gICAgICAgICAgICBzZWxlY3Rpb249dGhpcy5zZWxlY3Rpb25cbiAgICAgICAgICAgIGRpc2FibGVkPUBkaXNhYmxlZFxuICAgICAgICAgICAgYmVoYXZpb3I9QGJlaGF2aW9yXG4gICAgICAgICAgICBvcmllbnRhdGlvbj1Ab3JpZW50YXRpb25cbiAgICAgICAgICB9fVxuICAgICAgICAvPlxuXG4gICAgICAgIHt7eWllbGRcbiAgICAgICAgICAoaGFzaFxuICAgICAgICAgICAgVGFiPShjb21wb25lbnRcbiAgICAgICAgICAgICAgVGFiXG4gICAgICAgICAgICAgIHJlZ2lzdGVyPXRoaXMucmVnaXN0ZXJcbiAgICAgICAgICAgICAgdW5yZWdpc3Rlcj10aGlzLnVucmVnaXN0ZXJcbiAgICAgICAgICAgICAgdGFibGlzdD10YWJsaXN0SWRcbiAgICAgICAgICAgICAgc2VsZWN0aW9uPXRoaXMuc2VsZWN0aW9uXG4gICAgICAgICAgICApXG4gICAgICAgICAgKVxuICAgICAgICB9fVxuICAgICAge3svbGV0fX1cbiAgICA8L2Rpdj5cbiAgPC90ZW1wbGF0ZT5cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxlQUFlLHFCQUFxQjtBQUMzQyxTQUFTLE1BQU0sRUFBRSxPQUFPLFFBQVEsb0JBQW9C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"],"names":["TabValue","Symbol","attachValue","modifier","element1","value1","Tab","Component","constructor","owner1","args1","register","registerDestructor","unregister","id","args","value","label","guidFor","n","prototype","cached","setComponentTemplate","precompileTemplate","scope","uniqueId","Portal","notEq","strictMode","Tabs","g","tracked","TrackedArray","i","void 0","items","tabs","map","t1","selection","internalSelection","tab1","next","push","splice","indexOf","select","id1","find","update","undefined","styles","PortalTarget","ariaTablist","hash"],"mappings":"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"}
|