@hokulea/ember 0.9.0 → 0.10.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.
- package/declarations/-private/helpers.d.ts +3 -1
- package/declarations/-private/helpers.d.ts.map +1 -1
- package/declarations/-private/push.gts.d.ts +20 -0
- package/declarations/-private/push.gts.d.ts.map +1 -0
- package/declarations/-private/shapes.d.ts +5 -0
- package/declarations/-private/shapes.d.ts.map +1 -0
- package/declarations/components/actions/button.gts.d.ts +6 -7
- package/declarations/components/actions/button.gts.d.ts.map +1 -1
- package/declarations/components/actions/icon-button.gts.d.ts +6 -7
- package/declarations/components/actions/icon-button.gts.d.ts.map +1 -1
- package/declarations/components/avatar.gts.d.ts +2 -0
- package/declarations/components/avatar.gts.d.ts.map +1 -0
- package/declarations/components/controls/-input.d.ts +3 -2
- package/declarations/components/controls/-input.d.ts.map +1 -1
- package/declarations/components/controls/{-menu.d.ts → -menu.gts.d.ts} +3 -4
- package/declarations/components/controls/-menu.gts.d.ts.map +1 -0
- package/declarations/components/controls/currency-input.gts.d.ts.map +1 -1
- package/declarations/components/controls/date-input.gts.d.ts.map +1 -1
- package/declarations/components/controls/email-input.gts.d.ts.map +1 -1
- package/declarations/components/controls/input-builder.gts.d.ts +2 -1
- package/declarations/components/controls/input-builder.gts.d.ts.map +1 -1
- package/declarations/components/controls/menu.gts.d.ts +1 -1
- package/declarations/components/controls/menu.gts.d.ts.map +1 -1
- package/declarations/components/controls/number-input.gts.d.ts.map +1 -1
- package/declarations/components/controls/password-input.gts.d.ts.map +1 -1
- package/declarations/components/controls/phone-input.gts.d.ts.map +1 -1
- package/declarations/components/controls/radio.gts.d.ts.map +1 -1
- package/declarations/components/controls/range-input.gts.d.ts +1 -1
- package/declarations/components/controls/range-input.gts.d.ts.map +1 -1
- package/declarations/components/controls/select.gts.d.ts +3 -0
- package/declarations/components/controls/select.gts.d.ts.map +1 -1
- package/declarations/components/controls/text-area.gts.d.ts.map +1 -1
- package/declarations/components/controls/text-input.gts.d.ts.map +1 -1
- package/declarations/components/data/data-table.gts.d.ts +19 -0
- package/declarations/components/data/data-table.gts.d.ts.map +1 -0
- package/declarations/components/data-table.gts.d.ts +2 -0
- package/declarations/components/data-table.gts.d.ts.map +1 -0
- package/declarations/components/form/form.gts.d.ts +2 -1
- package/declarations/components/form/form.gts.d.ts.map +1 -1
- package/declarations/components/form/reset.gts.d.ts +4 -4
- package/declarations/components/form/reset.gts.d.ts.map +1 -1
- package/declarations/components/form/submit.gts.d.ts +4 -4
- package/declarations/components/form/submit.gts.d.ts.map +1 -1
- package/declarations/components/graphics/avatar.gts.d.ts +10 -0
- package/declarations/components/graphics/avatar.gts.d.ts.map +1 -0
- package/declarations/components/link.gts.d.ts +2 -0
- package/declarations/components/link.gts.d.ts.map +1 -0
- package/declarations/components/navigation/-pagination.d.ts +17 -0
- package/declarations/components/navigation/-pagination.d.ts.map +1 -0
- package/declarations/components/navigation/app-header.gts.d.ts +2 -3
- package/declarations/components/navigation/app-header.gts.d.ts.map +1 -1
- package/declarations/components/navigation/link.gts.d.ts +13 -0
- package/declarations/components/navigation/link.gts.d.ts.map +1 -0
- package/declarations/components/navigation/nav-link.gts.d.ts +4 -2
- package/declarations/components/navigation/nav-link.gts.d.ts.map +1 -1
- package/declarations/components/navigation/pagination.gts.d.ts +78 -0
- package/declarations/components/navigation/pagination.gts.d.ts.map +1 -0
- package/declarations/components/pagination.gts.d.ts +2 -0
- package/declarations/components/pagination.gts.d.ts.map +1 -0
- package/declarations/index.d.ts +5 -1
- package/declarations/index.d.ts.map +1 -1
- package/declarations/template-registry.d.ts +9 -1
- package/declarations/template-registry.d.ts.map +1 -1
- package/declarations/test-support/index.d.ts +3 -0
- package/declarations/test-support/index.d.ts.map +1 -1
- package/declarations/test-support/page-objects/avatar.d.ts +10 -0
- package/declarations/test-support/page-objects/avatar.d.ts.map +1 -0
- package/declarations/test-support/page-objects/data-table.d.ts +36 -0
- package/declarations/test-support/page-objects/data-table.d.ts.map +1 -0
- package/declarations/test-support/page-objects/input.d.ts +1 -0
- package/declarations/test-support/page-objects/input.d.ts.map +1 -1
- package/declarations/test-support/page-objects/pagination.d.ts +65 -0
- package/declarations/test-support/page-objects/pagination.d.ts.map +1 -0
- package/declarations/test-support/page-objects/select.d.ts +1 -0
- package/declarations/test-support/page-objects/select.d.ts.map +1 -1
- package/dist/-input-DGR-n9U_.js.map +1 -1
- package/dist/_app_/components/avatar.js +1 -0
- package/dist/_app_/components/data-table.js +1 -0
- package/dist/_app_/components/link.js +1 -0
- package/dist/_app_/components/pagination.js +1 -0
- package/dist/{app-header-B6Q7pbiY.js → app-header-nmqytjxx.js} +7 -12
- package/dist/app-header-nmqytjxx.js.map +1 -0
- package/dist/avatar-CtqAk4G6.js +29 -0
- package/dist/avatar-CtqAk4G6.js.map +1 -0
- package/dist/button-BhxkZ70u.js +26 -0
- package/dist/button-BhxkZ70u.js.map +1 -0
- package/dist/{card-Bdv-UvKX.js → card-tK78paQn.js} +2 -2
- package/dist/{card-Bdv-UvKX.js.map → card-tK78paQn.js.map} +1 -1
- package/dist/{checkbox-D4vALmT2.js → checkbox-D3_2ps5M.js} +2 -2
- package/dist/{checkbox-D4vALmT2.js.map → checkbox-D3_2ps5M.js.map} +1 -1
- package/dist/components/app-header.js +1 -1
- package/dist/components/avatar.js +2 -0
- package/dist/components/avatar.js.map +1 -0
- package/dist/components/button.js +1 -1
- package/dist/components/card.js +1 -1
- package/dist/components/checkbox.js +1 -1
- package/dist/components/currency-input.js +1 -1
- package/dist/components/data-table.js +2 -0
- package/dist/components/data-table.js.map +1 -0
- package/dist/components/date-input.js +1 -1
- package/dist/components/email-input.js +1 -1
- package/dist/components/focus-page.js +1 -1
- package/dist/components/form.js +1 -1
- package/dist/components/icon-button.js +1 -1
- package/dist/components/icon.js +1 -1
- package/dist/components/input-builder.js +1 -1
- package/dist/components/link.js +2 -0
- package/dist/components/link.js.map +1 -0
- package/dist/components/menu.js +1 -1
- package/dist/components/navigation-list.js +1 -1
- package/dist/components/number-input.js +1 -1
- package/dist/components/page.js +1 -1
- package/dist/components/pagination.js +2 -0
- package/dist/components/pagination.js.map +1 -0
- package/dist/components/password-input.js +1 -1
- package/dist/components/phone-input.js +1 -1
- package/dist/components/radio.js +1 -1
- package/dist/components/range-input.js +1 -1
- package/dist/components/sectioned-page.js +1 -1
- package/dist/components/select.js +1 -1
- package/dist/components/tabs.js +1 -1
- package/dist/components/text-area.js +1 -1
- package/dist/components/text-input.js +1 -1
- package/dist/{currency-input-8ef0Igfb.js → currency-input-tBhgIMTh.js} +4 -4
- package/dist/currency-input-tBhgIMTh.js.map +1 -0
- package/dist/data-table-5VDYeRya.js +18 -0
- package/dist/data-table-5VDYeRya.js.map +1 -0
- package/dist/{date-input-BayaBuSb.js → date-input-DLv9jE39.js} +3 -3
- package/dist/{date-input-BayaBuSb.js.map → date-input-DLv9jE39.js.map} +1 -1
- package/dist/{email-input-j-Z0KO4A.js → email-input-BR33Qevz.js} +3 -3
- package/dist/{email-input-j-Z0KO4A.js.map → email-input-BR33Qevz.js.map} +1 -1
- package/dist/{focus-page-B9myJVvL.js → focus-page-DFu6qtBk.js} +2 -2
- package/dist/{focus-page-B9myJVvL.js.map → focus-page-DFu6qtBk.js.map} +1 -1
- package/dist/{form-DWyQ6QHX.js → form-VsNkRlXs.js} +15 -15
- package/dist/{form-DWyQ6QHX.js.map → form-VsNkRlXs.js.map} +1 -1
- package/dist/{helpers-DS9du02l.js → helpers-D4So5-uK.js} +8 -2
- package/dist/helpers-D4So5-uK.js.map +1 -0
- package/dist/{icon-bLZqjTMP.js → icon-BfRBkZ72.js} +2 -2
- package/dist/icon-BfRBkZ72.js.map +1 -0
- package/dist/icon-button-DBt7fMi1.js +38 -0
- package/dist/icon-button-DBt7fMi1.js.map +1 -0
- package/dist/index.js +29 -25
- package/dist/index.js.map +1 -1
- package/dist/{input-builder-DmcQbywA.js → input-builder-DHYx-2Yz.js} +2 -2
- package/dist/input-builder-DHYx-2Yz.js.map +1 -0
- package/dist/link-bqsg26Cc.js +18 -0
- package/dist/link-bqsg26Cc.js.map +1 -0
- package/dist/{menu-CZKNGJ91.js → menu-s0AthZse.js} +6 -4
- package/dist/menu-s0AthZse.js.map +1 -0
- package/dist/nav-link-CDtYj6HW.js +22 -0
- package/dist/nav-link-CDtYj6HW.js.map +1 -0
- package/dist/{navigation-list-Cxs6uZdM.js → navigation-list-Ng5UsNCY.js} +2 -2
- package/dist/{navigation-list-Cxs6uZdM.js.map → navigation-list-Ng5UsNCY.js.map} +1 -1
- package/dist/{number-input-B84zcPlM.js → number-input-FJympEv2.js} +3 -3
- package/dist/{number-input-B84zcPlM.js.map → number-input-FJympEv2.js.map} +1 -1
- package/dist/{page-BcSgHxr7.js → page-BuLkLO08.js} +2 -2
- package/dist/{page-BcSgHxr7.js.map → page-BuLkLO08.js.map} +1 -1
- package/dist/pagination-DCMxI10i.js +124 -0
- package/dist/pagination-DCMxI10i.js.map +1 -0
- package/dist/{password-input-BMp5uscw.js → password-input-DV5yb10h.js} +3 -3
- package/dist/password-input-DV5yb10h.js.map +1 -0
- package/dist/{phone-input-DeaTM5yP.js → phone-input-Uv5v9hK9.js} +3 -3
- package/dist/{phone-input-DeaTM5yP.js.map → phone-input-Uv5v9hK9.js.map} +1 -1
- package/dist/push-DnJFFc_p.js +24 -0
- package/dist/push-DnJFFc_p.js.map +1 -0
- package/dist/{radio-CGBLrzK4.js → radio-CLF40kob.js} +3 -3
- package/dist/{radio-CGBLrzK4.js.map → radio-CLF40kob.js.map} +1 -1
- package/dist/{range-input-BiAPgpW8.js → range-input-BIb7GkKH.js} +2 -2
- package/dist/range-input-BIb7GkKH.js.map +1 -0
- package/dist/{sectioned-page-fB9mV5WD.js → sectioned-page-CgINWVQ2.js} +3 -3
- package/dist/{sectioned-page-fB9mV5WD.js.map → sectioned-page-CgINWVQ2.js.map} +1 -1
- package/dist/{select-DxyaUFuy.js → select-CeO8AZMK.js} +5 -2
- package/dist/select-CeO8AZMK.js.map +1 -0
- package/dist/{tabs-a9GhNQv9.js → tabs-DAscspzh.js} +2 -2
- package/dist/{tabs-a9GhNQv9.js.map → tabs-DAscspzh.js.map} +1 -1
- package/dist/test-support/index.js +61 -16
- package/dist/test-support/index.js.map +1 -1
- package/dist/{text-area-55_E1zv8.js → text-area-DF8-cDiy.js} +3 -3
- package/dist/{text-area-55_E1zv8.js.map → text-area-DF8-cDiy.js.map} +1 -1
- package/dist/{text-input-CK-yGbI5.js → text-input-CcIcYksE.js} +3 -3
- package/dist/{text-input-CK-yGbI5.js.map → text-input-CcIcYksE.js.map} +1 -1
- package/package.json +9 -5
- package/declarations/components/controls/-menu.d.ts.map +0 -1
- package/dist/app-header-B6Q7pbiY.js.map +0 -1
- package/dist/button-XdQyGTGA.js +0 -24
- package/dist/button-XdQyGTGA.js.map +0 -1
- package/dist/currency-input-8ef0Igfb.js.map +0 -1
- package/dist/helpers-DS9du02l.js.map +0 -1
- package/dist/icon-bLZqjTMP.js.map +0 -1
- package/dist/icon-button-7K-W_8jc.js +0 -37
- package/dist/icon-button-7K-W_8jc.js.map +0 -1
- package/dist/input-builder-DmcQbywA.js.map +0 -1
- package/dist/menu-CZKNGJ91.js.map +0 -1
- package/dist/nav-link-CGVtuqwC.js +0 -30
- package/dist/nav-link-CGVtuqwC.js.map +0 -1
- package/dist/password-input-BMp5uscw.js.map +0 -1
- package/dist/range-input-BiAPgpW8.js.map +0 -1
- package/dist/select-DxyaUFuy.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"link-bqsg26Cc.js","sources":["../src/components/navigation/link.gts"],"sourcesContent":["import { on } from '@ember/modifier';\n\nimport { link } from 'ember-link';\n\nimport { isActive } from '../../-private/push.gts';\n\nimport type { TOC } from '@ember/component/template-only';\n\ninterface LinkSignature {\n Element: HTMLAnchorElement;\n Args: {\n href: string;\n };\n Blocks: {\n default: [];\n };\n}\n\nexport const Link: TOC<LinkSignature> = <template>\n {{#let (link @href) as |l|}}\n <a\n href={{l.url}}\n {{on \"click\" l.open}}\n data-external={{l.isExternal}}\n aria-current=\"{{if (isActive l) 'page'}}\"\n ...attributes\n >\n {{yield}}\n </a>\n {{/let}}\n</template>;\n"],"names":["Link","setComponentTemplate","precompileTemplate","strictMode","scope","link","isActive","on","templateOnly"],"mappings":";;;;;;;MAkBaA,IAAU,GAAAC,oBAAA,CAAiBC,kBAAA,CAAA,sNAAA,EAYxC;EAAAC,UAAA,EAAA,IAAA;AAAAC,EAAAA,KAAA,EAAAA,OAAA;IAAAC,IAAA;IAAAC,QAAA;AAAAC,IAAAA;AAAA,GAAA;AAAU,CAAA,CAAA,EAAAC,YAAA,EAAA;;;;"}
|
|
@@ -6,10 +6,10 @@ import { next } from '@ember/runloop';
|
|
|
6
6
|
import { service } from '@ember/service';
|
|
7
7
|
import { htmlSafe } from '@ember/template';
|
|
8
8
|
import { ariaMenu } from 'ember-aria-voyager';
|
|
9
|
-
import { CommandElement } from 'ember-command';
|
|
10
9
|
import { TrackedArray } from 'tracked-built-ins';
|
|
11
10
|
import styles from '@hokulea/core/controls.module.css';
|
|
12
11
|
import { d as disabled } from './disabled-B_FQ0Z51.js';
|
|
12
|
+
import { P as PushElement } from './push-DnJFFc_p.js';
|
|
13
13
|
import { popover } from './helpers/popover.js';
|
|
14
14
|
import { precompileTemplate } from '@ember/template-compilation';
|
|
15
15
|
import { setComponentTemplate } from '@ember/component';
|
|
@@ -53,19 +53,21 @@ import { g, i } from 'decorator-transforms/runtime-esm';
|
|
|
53
53
|
class MenuItem extends Component {
|
|
54
54
|
constructor(owner, args) {
|
|
55
55
|
super(owner, args);
|
|
56
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-call
|
|
56
57
|
args.registerItem(this);
|
|
57
58
|
registerDestructor(this, () => {
|
|
59
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-call
|
|
58
60
|
args.unregisterItem(this);
|
|
59
61
|
});
|
|
60
62
|
}
|
|
61
63
|
static {
|
|
62
|
-
setComponentTemplate(precompileTemplate("\n {{#if (has-block \"menu\")}}\n {{#let (popover position=\"right-start\") as |p|}}\n <button type=\"button\" role=\"menuitem\" aria-haspopup=\"menu\" {{disabled when=(if @disabled @disabled false)}} {{p.trigger}}>\n {{~yield to=\"label\"~}}\n </button>\n\n <Menu {{p.target}} as |m|>\n {{yield m to=\"menu\"}}\n </Menu>\n {{/let}}\n {{else}}\n <
|
|
64
|
+
setComponentTemplate(precompileTemplate("\n {{#if (has-block \"menu\")}}\n {{#let (popover position=\"right-start\") as |p|}}\n <button type=\"button\" role=\"menuitem\" aria-haspopup=\"menu\" {{disabled when=(if @disabled @disabled false)}} {{p.trigger}}>\n {{~yield to=\"label\"~}}\n </button>\n\n <Menu {{p.target}} as |m|>\n {{yield m to=\"menu\"}}\n </Menu>\n {{/let}}\n {{else}}\n <PushElement @push={{@push}} @href={{@href}} {{disabled when=(if @disabled @disabled false)}} role=\"menuitem\">\n {{~yield~}}\n </PushElement>\n {{/if}}\n ", {
|
|
63
65
|
strictMode: true,
|
|
64
66
|
scope: () => ({
|
|
65
67
|
popover,
|
|
66
68
|
disabled,
|
|
67
69
|
Menu,
|
|
68
|
-
|
|
70
|
+
PushElement
|
|
69
71
|
})
|
|
70
72
|
}), this);
|
|
71
73
|
}
|
|
@@ -113,4 +115,4 @@ class Menu extends Component {
|
|
|
113
115
|
}
|
|
114
116
|
|
|
115
117
|
export { Menu as M };
|
|
116
|
-
//# sourceMappingURL=menu-
|
|
118
|
+
//# sourceMappingURL=menu-s0AthZse.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"menu-s0AthZse.js","sources":["../src/components/controls/menu.gts"],"sourcesContent":["import Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\nimport { registerDestructor } from '@ember/destroyable';\nimport { hash } from '@ember/helper';\nimport { next } from '@ember/runloop';\nimport { service } from '@ember/service';\nimport { htmlSafe } from '@ember/template';\n\nimport { ariaMenu } from 'ember-aria-voyager';\nimport { TrackedArray } from 'tracked-built-ins';\n\nimport styles from '@hokulea/core/controls.module.css';\n\nimport disabled from '../../-private/modifiers/disabled.ts';\nimport { PushElement } from '../../-private/push.gts';\nimport { popover } from '../../helpers/popover.ts';\n\nimport type { MenuItemArgs, MenuItemBlocks, MenuItemElement } from './-menu.gts';\nimport type Owner from '@ember/owner';\nimport type { WithBoundArgs } from '@glint/template';\nimport type FastBoot from 'ember-cli-fastboot/services/fastboot';\n\nexport type MenuDefaultBlock = {\n Item: WithBoundArgs<typeof MenuItem, 'registerItem' | 'unregisterItem'>;\n};\n\nexport interface MenuItemSignature {\n Element: MenuItemElement;\n Args: MenuItemArgs & {\n registerItem: (item: MenuItem) => void;\n unregisterItem: (item: MenuItem) => void;\n };\n Blocks: MenuItemBlocks & {\n menu?: [MenuDefaultBlock];\n };\n}\n\n// below are attempts at conditional typing based on provided blocks in dynamic invocation\n\n// type MenuItemArgs = {\n// disabled?: boolean;\n// registerItem: (item: MenuItem) => void;\n// unregisterItem: (item: MenuItem) => void;\n// };\n\n// export interface MenuItemSignature<T = {}> {\n// Element: HTMLButtonElement | HTMLAnchorElement;\n// Args: T extends { Blocks: { default: [] } }\n// ? MenuItemArgs & {\n// push: CommandAction;\n// }\n// : MenuItemArgs;\n// Blocks: T extends { Blocks: { default: [] } }\n// ? { default: [] }\n// : { label: []; menu: [MenuDefaultBlock] };\n// }\n\n// & (\n// | {\n// Args: MenuItemArgs & {\n// push: CommandAction;\n// };\n// Blocks: {\n// default: [];\n// };\n// }\n// | {\n// Args: MenuItemArgs;\n// Blocks: {\n// label: [];\n// menu: [MenuDefaultBlock];\n// };\n// }\n// );\n\n/* eslint-disable @typescript-eslint/no-use-before-define */\nclass MenuItem extends Component<MenuItemSignature> {\n constructor(owner: Owner, args: MenuItemSignature['Args']) {\n super(owner, args);\n\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call\n args.registerItem(this);\n\n registerDestructor(this, () => {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call\n args.unregisterItem(this);\n });\n }\n\n <template>\n {{#if (has-block \"menu\")}}\n {{#let (popover position=\"right-start\") as |p|}}\n <button\n type=\"button\"\n role=\"menuitem\"\n aria-haspopup=\"menu\"\n {{disabled when=(if @disabled @disabled false)}}\n {{p.trigger}}\n >\n {{~yield to=\"label\"~}}\n </button>\n\n <Menu {{p.target}} as |m|>\n {{yield m to=\"menu\"}}\n </Menu>\n {{/let}}\n {{else}}\n <PushElement\n @push={{@push}}\n @href={{@href}}\n {{disabled when=(if @disabled @disabled false)}}\n role=\"menuitem\"\n >\n {{~yield~}}\n </PushElement>\n {{/if}}\n </template>\n}\n/* eslint-enable @typescript-eslint/no-use-before-define */\n\nexport interface MenuSignature {\n Element: HTMLDivElement;\n Args: {\n disabled?: boolean;\n };\n Blocks: {\n default: [MenuDefaultBlock];\n };\n}\n\nexport class Menu extends Component<MenuSignature> {\n @service declare fastboot?: FastBoot;\n\n @tracked items: MenuItem[] = new TrackedArray();\n\n get hideInSSR() {\n return this.fastboot?.isFastBoot;\n }\n\n registerItem = (item: MenuItem) => {\n // eslint-disable-next-line ember/no-runloop\n next(() => {\n this.items.push(item);\n });\n };\n\n unregisterItem = (item: MenuItem) => {\n // eslint-disable-next-line ember/no-runloop\n next(() => {\n this.items.splice(this.items.indexOf(item), 1);\n });\n };\n\n <template>\n <div\n class={{styles.menu}}\n data-test-menu\n ...attributes\n {{ariaMenu items=this.items disabled=@disabled}}\n style={{if this.hideInSSR (htmlSafe \"display: none\")}}\n >\n {{yield\n (hash\n Item=(component\n MenuItem registerItem=this.registerItem unregisterItem=this.unregisterItem\n )\n )\n }}\n </div>\n </template>\n}\n"],"names":["MenuItem","Component","constructor","owner","args","registerItem","registerDestructor","unregisterItem","setComponentTemplate","precompileTemplate","strictMode","scope","popover","disabled","Menu","PushElement","g","prototype","service","i","void 0","tracked","TrackedArray","hideInSSR","fastboot","isFastBoot","item","next","items","push","splice","indexOf","styles","htmlSafe","ariaMenu","hash"],"mappings":";;;;;;;;;;;;;;;;;AAqCA;AAEA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA,MAAMA,QAAA,SAAiBC,SAAA,CAAU;AAC/BC,EAAAA,WAAAA,CAAYC,KAAY,EAAEC,IAA+B,EAAE;AACzD,IAAA,KAAK,CAACD,KAAA,EAAOC,IAAA,CAAA;AAEb;AACAA,IAAAA,IAAA,CAAKC,YAAY,CAAC,IAAI,CAAA;IAEtBC,kBAAA,CAAmB,IAAI,EAAE,MAAA;AACvB;AACAF,MAAAA,IAAA,CAAKG,cAAc,CAAC,IAAI,CAAA;AAC1B,IAAA,CAAA,CAAA;AACF,EAAA;AAEA,EAAA;IAAAC,oBAAA,CAAAC,kBAAA,CAAA,2kBAAA,EA2BA;MAAAC,UAAA,EAAA,IAAA;AAAAC,MAAAA,KAAA,EAAAA,OAAA;QAAAC,OAAA;QAAAC,QAAA;QAAAC,IAAA;AAAAC,QAAAA;AAAA,OAAA;KAAU,CAAA,EAAV,IAAW,CAAA;AAAD;AACZ;AACA;;AAYO,MAAMD,aAAab,SAAA,CAAU;AAAA,EAAA;IAAAe,CAAA,CAAA,IAAA,CAAAC,SAAA,EAAA,UAAA,EAAA,CACjCC,OAAA,CAAA,CAAA;AAAA;AAAA,EAAA,SAAA,IAAAC,CAAA,CAAA,IAAA,EAAA,UAAA,CAAA,EAAAC,MAAA;AAAA,EAAA;IAAAJ,CAAA,CAAA,IAAA,CAAAC,SAAA,EAAA,OAAA,EAAA,CAEAI,OAAA,CAAA,EAAA,YAAA;MAAA,OAA4B,IAAIC,YAAA,EAAA;AAAA,IAAA,CAAA,CAAA;AAAA;AAAA,EAAA,MAAA,IAAAH,CAAA,CAAA,IAAA,EAAA,OAAA,CAAA,EAAAC,MAAA;EAEjC,IAAIG,SAAAA,GAAY;AACd,IAAA,OAAO,IAAI,CAACC,QAAQ,EAAEC,UAAA;AACxB,EAAA;EAEApB,YAAA,GAAgBqB,IAAM,IAAA;AACpB;AACAC,IAAAA,IAAA,CAAK,MAAA;AACH,MAAA,IAAI,CAACC,KAAK,CAACC,IAAI,CAACH,IAAA,CAAA;AAClB,IAAA,CAAA,CAAA;EACF,CAAA;EAEAnB,cAAA,GAAkBmB,IAAM,IAAA;AACtB;AACAC,IAAAA,IAAA,CAAK,MAAA;AACH,MAAA,IAAI,CAACC,KAAK,CAACE,MAAM,CAAC,IAAI,CAACF,KAAK,CAACG,OAAO,CAACL,IAAA,CAAA,EAAO,CAAA,CAAA;AAC9C,IAAA,CAAA,CAAA;EACF,CAAA;AAEA,EAAA;IAAAlB,oBAAA,CAAAC,kBAAA,CAAA,8SAAA,EAgBA;MAAAC,UAAA,EAAA,IAAA;AAAAC,MAAAA,KAAA,EAAAA,OAAA;QAAAqB,MAAA;QAAAC,QAAA;QAAAC,QAAA;QAAAC,IAAA;AAAAnC,QAAAA;AAAA,OAAA;KAAU,CAAA,EAAV,IAAW,CAAA;AAAD;AACZ;;;;"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { P as PushElement } from './push-DnJFFc_p.js';
|
|
2
|
+
import { I as Icon } from './icon-BfRBkZ72.js';
|
|
3
|
+
import { precompileTemplate } from '@ember/template-compilation';
|
|
4
|
+
import { setComponentTemplate } from '@ember/component';
|
|
5
|
+
import templateOnly from '@ember/component/template-only';
|
|
6
|
+
|
|
7
|
+
const MaybeIcon = setComponentTemplate(precompileTemplate("\n {{#if @icon}}\n <Icon @icon={{@icon}} part=\"icon\" />\n {{/if}}\n", {
|
|
8
|
+
strictMode: true,
|
|
9
|
+
scope: () => ({
|
|
10
|
+
Icon
|
|
11
|
+
})
|
|
12
|
+
}), templateOnly());
|
|
13
|
+
const NavLink = setComponentTemplate(precompileTemplate("\n <PushElement @push={{@push}} @href={{@href}} part=\"item\" ...attributes>\n <MaybeIcon @icon={{@icon}} />\n {{yield}}\n </PushElement>\n", {
|
|
14
|
+
strictMode: true,
|
|
15
|
+
scope: () => ({
|
|
16
|
+
PushElement,
|
|
17
|
+
MaybeIcon
|
|
18
|
+
})
|
|
19
|
+
}), templateOnly());
|
|
20
|
+
|
|
21
|
+
export { NavLink as N };
|
|
22
|
+
//# sourceMappingURL=nav-link-CDtYj6HW.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nav-link-CDtYj6HW.js","sources":["../src/components/navigation/nav-link.gts"],"sourcesContent":["import { PushElement } from '../../-private/push.gts';\nimport { Icon } from '../graphics/icon.gts';\n\nimport type { MenuItemArgs, MenuItemBlocks } from '../controls/-menu.gts';\nimport type { TOC } from '@ember/component/template-only';\n\nconst MaybeIcon: TOC<{ Args: { icon?: string } }> = <template>\n {{#if @icon}}\n <Icon @icon={{@icon}} part=\"icon\" />\n {{/if}}\n</template>;\n\ninterface NavLinkSignature {\n Args: MenuItemArgs & {\n href?: string;\n icon?: string;\n };\n Blocks: MenuItemBlocks;\n}\n\nexport const NavLink: TOC<NavLinkSignature> = <template>\n <PushElement @push={{@push}} @href={{@href}} part=\"item\" ...attributes>\n <MaybeIcon @icon={{@icon}} />\n {{yield}}\n </PushElement>\n</template>;\n"],"names":["MaybeIcon","setComponentTemplate","precompileTemplate","strictMode","scope","Icon","templateOnly","NavLink","PushElement"],"mappings":";;;;;;AAMA,MAAMA,SAA8C,GAAAC,oBAAA,CAAAC,kBAAA,CAAA,4EAAA,EAIpD;EAAAC,UAAA,EAAA,IAAA;AAAAC,EAAAA,KAAA,EAAAA,OAAA;AAAAC,IAAAA;AAAA,GAAA;AAAU,CAAA,CAAA,EAAAC,YAAA,EAAA,CAAA;MAUGC,OAAa,GAAAN,oBAAA,CAAoBC,kBAAA,CAAA,qJAAA,EAK9C;EAAAC,UAAA,EAAA,IAAA;AAAAC,EAAAA,KAAA,EAAAA,OAAA;IAAAI,WAAA;AAAAR,IAAAA;AAAA,GAAA;AAAU,CAAA,CAAA,EAAAM,YAAA,EAAA;;;;"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { hash } from '@ember/helper';
|
|
2
2
|
import styles from '@hokulea/core/navigation.module.css';
|
|
3
|
-
import { N as NavLink } from './nav-link-
|
|
3
|
+
import { N as NavLink } from './nav-link-CDtYj6HW.js';
|
|
4
4
|
import { precompileTemplate } from '@ember/template-compilation';
|
|
5
5
|
import { setComponentTemplate } from '@ember/component';
|
|
6
6
|
import templateOnly from '@ember/component/template-only';
|
|
@@ -19,4 +19,4 @@ const NavigationList = setComponentTemplate(precompileTemplate("\n <nav class={
|
|
|
19
19
|
}), templateOnly());
|
|
20
20
|
|
|
21
21
|
export { NavigationList as N };
|
|
22
|
-
//# sourceMappingURL=navigation-list-
|
|
22
|
+
//# sourceMappingURL=navigation-list-Ng5UsNCY.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"navigation-list-
|
|
1
|
+
{"version":3,"file":"navigation-list-Ng5UsNCY.js","sources":["../src/components/navigation/navigation-list.gts"],"sourcesContent":["import { hash } from '@ember/helper';\n\nimport styles from '@hokulea/core/navigation.module.css';\n\nimport { NavLink } from './nav-link.gts';\n\nimport type { TOC } from '@ember/component/template-only';\n\nconst Title: TOC<{ Blocks: { default: [] } }> = <template>\n <span part=\"title\">{{yield}}</span>\n</template>;\n\nexport interface NavigationListSignature {\n Element: HTMLElement;\n Blocks: {\n default?: [{ Item: typeof NavLink; Title: typeof Title }];\n };\n}\n\nexport const NavigationList: TOC<NavigationListSignature> = <template>\n <nav class={{styles.navigationList}} data-test-navigation-list ...attributes>\n {{yield (hash Item=NavLink Title=Title)}}\n </nav>\n</template>;\n"],"names":["Title","setComponentTemplate","precompileTemplate","strictMode","templateOnly","NavigationList","scope","styles","hash","NavLink"],"mappings":";;;;;;;AAQA,MAAMA,KAA0C,GAAAC,oBAAA,CAAAC,kBAAA,CAAA,6CAAA,EAEhD;EAAAC,UAAA,EAAA;AAAU,CAAA,CAAA,EAAAC,YAAA,EAAA,CAAA;MASGC,cAAoB,GAAAJ,oBAAA,CAA2BC,kBAAA,CAAA,8IAAA,EAI5D;EAAAC,UAAA,EAAA,IAAA;AAAAG,EAAAA,KAAA,EAAAA,OAAA;IAAAC,MAAA;IAAAC,IAAA;IAAAC,OAAA;AAAAT,IAAAA;AAAA,GAAA;AAAU,CAAA,CAAA,EAAAI,YAAA,EAAA;;;;"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { on } from '@ember/modifier';
|
|
2
2
|
import styles from '@hokulea/core/controls.module.css';
|
|
3
|
-
import { p as pick } from './helpers-
|
|
3
|
+
import { p as pick } from './helpers-D4So5-uK.js';
|
|
4
4
|
import { p as pickAsNumber } from './-input-DGR-n9U_.js';
|
|
5
5
|
import { precompileTemplate } from '@ember/template-compilation';
|
|
6
6
|
import { setComponentTemplate } from '@ember/component';
|
|
7
7
|
import templateOnly from '@ember/component/template-only';
|
|
8
8
|
|
|
9
|
-
const NumberInput = setComponentTemplate(precompileTemplate("\n <input class={{styles.input}} type=\"number\" value={{@value}} disabled={{@disabled}} data-test-input {{on \"input\" (pick \"target.value\" (pickAsNumber @update)) capture=true}} ...attributes />\n", {
|
|
9
|
+
const NumberInput = setComponentTemplate(precompileTemplate("\n <input class={{styles.input}} type=\"number\" value={{@value}} disabled={{@disabled}} data-spacing={{@spacing}} data-test-input {{on \"input\" (pick \"target.value\" (pickAsNumber @update)) capture=true}} ...attributes />\n", {
|
|
10
10
|
strictMode: true,
|
|
11
11
|
scope: () => ({
|
|
12
12
|
styles,
|
|
@@ -17,4 +17,4 @@ const NumberInput = setComponentTemplate(precompileTemplate("\n <input class={{
|
|
|
17
17
|
}), templateOnly());
|
|
18
18
|
|
|
19
19
|
export { NumberInput as N };
|
|
20
|
-
//# sourceMappingURL=number-input-
|
|
20
|
+
//# sourceMappingURL=number-input-FJympEv2.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"number-input-
|
|
1
|
+
{"version":3,"file":"number-input-FJympEv2.js","sources":["../src/components/controls/number-input.gts"],"sourcesContent":["import { on } from '@ember/modifier';\n\nimport styles from '@hokulea/core/controls.module.css';\n\nimport { pick } from '../../-private/helpers.ts';\nimport { pickAsNumber } from './-input.ts';\n\nimport type { InputArgs } from './-input.ts';\nimport type { TOC } from '@ember/component/template-only';\n\nexport interface NumberInputSignature {\n Element: HTMLInputElement;\n Args: InputArgs<number>;\n}\n\nexport const NumberInput: TOC<NumberInputSignature> = <template>\n <input\n class={{styles.input}}\n type=\"number\"\n value={{@value}}\n disabled={{@disabled}}\n data-spacing={{@spacing}}\n data-test-input\n {{on \"input\" (pick \"target.value\" (pickAsNumber @update)) capture=true}}\n ...attributes\n />\n</template>;\n"],"names":["NumberInput","setComponentTemplate","precompileTemplate","strictMode","scope","styles","on","pick","pickAsNumber","templateOnly"],"mappings":";;;;;;;;MAeaA,WAAiB,GAAAC,oBAAA,CAAwBC,kBAAA,CAAA,qOAAA,EAWtD;EAAAC,UAAA,EAAA,IAAA;AAAAC,EAAAA,KAAA,EAAAA,OAAA;IAAAC,MAAA;IAAAC,EAAA;IAAAC,IAAA;AAAAC,IAAAA;AAAA,GAAA;AAAU,CAAA,CAAA,EAAAC,YAAA,EAAA;;;;"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { element } from 'ember-element-helper';
|
|
2
2
|
import styles from '@hokulea/core/layouts.module.css';
|
|
3
3
|
import typo from '@hokulea/core/typography.module.css';
|
|
4
|
-
import { o as or } from './helpers-
|
|
4
|
+
import { o as or } from './helpers-D4So5-uK.js';
|
|
5
5
|
import { P as PageDestructor, a as PageElement } from './pages-DgHJEvSy.js';
|
|
6
6
|
import { precompileTemplate } from '@ember/template-compilation';
|
|
7
7
|
import { setComponentTemplate } from '@ember/component';
|
|
@@ -20,4 +20,4 @@ const Page = setComponentTemplate(precompileTemplate("\n {{#let (if @element @e
|
|
|
20
20
|
}), templateOnly());
|
|
21
21
|
|
|
22
22
|
export { Page as P };
|
|
23
|
-
//# sourceMappingURL=page-
|
|
23
|
+
//# sourceMappingURL=page-BuLkLO08.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page-
|
|
1
|
+
{"version":3,"file":"page-BuLkLO08.js","sources":["../src/components/layouts/page.gts"],"sourcesContent":["import { element } from 'ember-element-helper';\n\n// eslint-disable-next-line import-x/no-duplicates\nimport styles from '@hokulea/core/layouts.module.css';\n// eslint-disable-next-line import-x/no-duplicates\nimport typo from '@hokulea/core/typography.module.css';\n\nimport { or } from '../../-private/helpers.ts';\nimport { pageDestructor, pageElement } from './pages.ts';\n\nimport type { TOC } from '@ember/component/template-only';\nimport type { ComponentLike } from '@glint/template';\n\ninterface PageSignature {\n Element: HTMLElement;\n Args: {\n title?: string;\n description?: string;\n element?: ComponentLike<{ Element: HTMLElement; Blocks: { default: [] } }>;\n };\n Blocks: {\n title?: [];\n description?: [];\n content?: [];\n default?: [];\n };\n}\n\nexport const Page: TOC<PageSignature> = <template>\n {{#let (if @element @element (element (pageElement))) as |Element|}}\n <Element class={{styles.page}} {{pageDestructor}} ...attributes data-test-page>\n {{#if\n (or @title @description (has-block \"title\") (has-block \"description\") (has-block \"nav\"))\n }}\n <header class={{styles.pageContent}}>\n <h1 class={{typo.display}}>\n {{#if (has-block \"title\")}}\n {{yield to=\"title\"}}\n {{else if @title}}\n {{@title}}\n {{/if}}\n </h1>\n\n {{#if (or (has-block \"description\") @description)}}\n <p>\n {{#if (has-block \"description\")}}\n {{yield to=\"description\"}}\n {{else if @description}}\n {{@description}}\n {{/if}}\n </p>\n {{/if}}\n </header>\n {{/if}}\n\n <div class=\"{{styles.pageContent}} {{styles.flow}}\" part=\"content\">\n {{#if (has-block \"content\")}}\n {{yield to=\"content\"}}\n {{else if (has-block)}}\n {{yield}}\n {{/if}}\n </div>\n </Element>\n {{/let}}\n</template>;\n"],"names":["Page","setComponentTemplate","precompileTemplate","strictMode","scope","element","pageElement","styles","pageDestructor","or","typo","templateOnly"],"mappings":";;;;;;;;;MA4BaA,IAAU,GAAAC,oBAAA,CAAiBC,kBAAA,CAAA,koCAAA,EAoCxC;EAAAC,UAAA,EAAA,IAAA;AAAAC,EAAAA,KAAA,EAAAA,OAAA;IAAAC,OAAA;iBAAAC,WAAA;IAAAC,MAAA;oBAAAC,cAAA;IAAAC,EAAA;AAAAC,IAAAA;AAAA,GAAA;AAAU,CAAA,CAAA,EAAAC,YAAA,EAAA;;;;"}
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
import Component from '@glimmer/component';
|
|
2
|
+
import { tracked } from '@glimmer/tracking';
|
|
3
|
+
import styles from '@hokulea/core/navigation.module.css';
|
|
4
|
+
import { c as asNumber, r as range, g as gt } from './helpers-D4So5-uK.js';
|
|
5
|
+
import { I as IconButton } from './icon-button-DBt7fMi1.js';
|
|
6
|
+
import { N as NumberInput } from './number-input-FJympEv2.js';
|
|
7
|
+
import { S as Select } from './select-CeO8AZMK.js';
|
|
8
|
+
import { precompileTemplate } from '@ember/template-compilation';
|
|
9
|
+
import { setComponentTemplate } from '@ember/component';
|
|
10
|
+
import { g, i } from 'decorator-transforms/runtime-esm';
|
|
11
|
+
|
|
12
|
+
const PrevIcon = `<svg xmlns="http://www.w3.org/2000/svg" width="256" height="256" viewBox="0 0 256 256"><path fill="currentColor" d="M168 48v160a8 8 0 0 1-13.66 5.66l-80-80a8 8 0 0 1 0-11.32l80-80A8 8 0 0 1 168 48"/></svg>`;
|
|
13
|
+
const NextIcon = `<svg xmlns="http://www.w3.org/2000/svg" width="256" height="256" viewBox="0 0 256 256"><path fill="currentColor" d="m181.66 133.66l-80 80A8 8 0 0 1 88 208V48a8 8 0 0 1 13.66-5.66l80 80a8 8 0 0 1 0 11.32"/></svg>`;
|
|
14
|
+
const LABELS = {
|
|
15
|
+
backward: 'Previous page',
|
|
16
|
+
forward: 'Next page',
|
|
17
|
+
itemPerPage: 'Items per page:',
|
|
18
|
+
itemRange: (min, max, total) => `${min} – ${max} of ${total} items`,
|
|
19
|
+
item: (min, max) => `${min} – ${max} items`,
|
|
20
|
+
page: page => `page ${page}`,
|
|
21
|
+
pageRange: total => `of ${total} ${total === 1 ? 'page' : 'pages'}`,
|
|
22
|
+
pageNumber: 'Page Number'
|
|
23
|
+
};
|
|
24
|
+
|
|
25
|
+
class Pagination extends Component {
|
|
26
|
+
static {
|
|
27
|
+
g(this.prototype, "total", [tracked], function () {
|
|
28
|
+
return 0;
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
#total = (i(this, "total"), void 0);
|
|
32
|
+
get minItems() {
|
|
33
|
+
return (this.page - 1) * this.args.pageSize + 1;
|
|
34
|
+
}
|
|
35
|
+
get maxItems() {
|
|
36
|
+
return this.page * this.args.pageSize;
|
|
37
|
+
}
|
|
38
|
+
get pages() {
|
|
39
|
+
if (this.args.totalItems) {
|
|
40
|
+
return Math.ceil(this.args.totalItems / this.args.pageSize);
|
|
41
|
+
}
|
|
42
|
+
return undefined;
|
|
43
|
+
}
|
|
44
|
+
get page() {
|
|
45
|
+
return this.args.page ?? 1;
|
|
46
|
+
}
|
|
47
|
+
get itemsPerPageLabel() {
|
|
48
|
+
return this.args.itemsPerPageLabel ?? LABELS.itemPerPage;
|
|
49
|
+
}
|
|
50
|
+
get itemRangeLabel() {
|
|
51
|
+
return (this.args.itemRangeLabel ?? LABELS.itemRange)(this.minItems, this.maxItems, this.args.totalItems ?? 1);
|
|
52
|
+
}
|
|
53
|
+
get itemLabel() {
|
|
54
|
+
return (this.args.itemLabel ?? LABELS.item)(this.minItems, this.maxItems);
|
|
55
|
+
}
|
|
56
|
+
get pageLabel() {
|
|
57
|
+
return (this.args.pageLabel ?? LABELS.page)(this.page);
|
|
58
|
+
}
|
|
59
|
+
get pageNumberLabel() {
|
|
60
|
+
return this.args.pageNumberLabel ?? LABELS.pageNumber;
|
|
61
|
+
}
|
|
62
|
+
get pageRangeLabel() {
|
|
63
|
+
return (this.args.pageRangeLabel ?? LABELS.pageRange)(this.pages ?? 0);
|
|
64
|
+
}
|
|
65
|
+
get pageSizeOptions() {
|
|
66
|
+
return (this.args.pageSizes ?? []).map(i => typeof i === 'object' ? i : {
|
|
67
|
+
value: i,
|
|
68
|
+
label: i
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
get backwardLabel() {
|
|
72
|
+
return this.args.backwardLabel ?? LABELS.backward;
|
|
73
|
+
}
|
|
74
|
+
get forwardLabel() {
|
|
75
|
+
return this.args.forwardLabel ?? LABELS.forward;
|
|
76
|
+
}
|
|
77
|
+
changePage = page => {
|
|
78
|
+
if (page) {
|
|
79
|
+
this.args.change?.({
|
|
80
|
+
page: this.pages ? Math.min(page, this.pages) : page,
|
|
81
|
+
pageSize: this.args.pageSize
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
};
|
|
85
|
+
changePageSize = pageSize => {
|
|
86
|
+
this.args.change?.({
|
|
87
|
+
page: this.page,
|
|
88
|
+
pageSize: Number.parseInt(pageSize)
|
|
89
|
+
});
|
|
90
|
+
};
|
|
91
|
+
prev = () => {
|
|
92
|
+
if (this.page > 1) {
|
|
93
|
+
this.changePage(this.page - 1);
|
|
94
|
+
}
|
|
95
|
+
};
|
|
96
|
+
next = () => {
|
|
97
|
+
if (this.pages) {
|
|
98
|
+
if (this.page < this.pages) {
|
|
99
|
+
this.changePage(this.page + 1);
|
|
100
|
+
}
|
|
101
|
+
} else {
|
|
102
|
+
this.changePage(this.page + 1);
|
|
103
|
+
}
|
|
104
|
+
};
|
|
105
|
+
static {
|
|
106
|
+
setComponentTemplate(precompileTemplate("\n <div class={{styles.pagination}} data-test-pagination>\n {{#if @pageSizes}}\n <span part=\"page-size\">\n {{this.itemsPerPageLabel}}\n\n {{!-- @glint-ignore --}}\n <Select @spacing=\"-1\" @value={{@pageSize}} @update={{this.changePageSize}} as |s|>\n {{#each this.pageSizeOptions as |o|}}\n <s.Option @value={{o.value}}>{{o.label}}</s.Option>\n {{/each}}\n </Select>\n </span>\n {{/if}}\n <span part=\"items\">\n {{#if @totalItems}}\n {{this.itemRangeLabel}}\n {{else}}\n {{this.itemLabel}}\n {{/if}}\n </span>\n <span part=\"page\">\n {{#if @totalItems}}\n {{#if (gt this.pages 20)}}\n <NumberInput @spacing=\"-1\" @value={{this.page}} @update={{this.changePage}} />\n {{else}}\n {{!-- @glint-ignore --}}\n <Select @spacing=\"-1\" @value={{this.page}} @update={{this.changePage}} as |s|>\n {{#each (range (asNumber this.pages)) as |p|}}\n <s.Option @value={{p}}>{{p}}</s.Option>\n {{/each}}\n </Select>\n {{/if}}\n {{this.pageRangeLabel}}\n {{else}}\n {{this.pageLabel}}\n {{/if}}\n </span>\n <span part=\"nav\">\n <IconButton @push={{this.prev}} @icon={{PrevIcon}} @label={{this.backwardLabel}} @importance=\"plain\" @spacing=\"-1\" data-test-prev />\n <IconButton @push={{this.next}} @icon={{NextIcon}} @label={{this.forwardLabel}} @importance=\"plain\" @spacing=\"-1\" data-test-next />\n </span>\n </div>\n ", {
|
|
107
|
+
strictMode: true,
|
|
108
|
+
scope: () => ({
|
|
109
|
+
styles,
|
|
110
|
+
Select,
|
|
111
|
+
gt,
|
|
112
|
+
NumberInput,
|
|
113
|
+
range,
|
|
114
|
+
asNumber,
|
|
115
|
+
IconButton,
|
|
116
|
+
PrevIcon,
|
|
117
|
+
NextIcon
|
|
118
|
+
})
|
|
119
|
+
}), this);
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
export { Pagination as P };
|
|
124
|
+
//# sourceMappingURL=pagination-DCMxI10i.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pagination-DCMxI10i.js","sources":["../src/components/navigation/-pagination.ts","../src/components/navigation/pagination.gts"],"sourcesContent":["export const FirstIcon = `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"256\" height=\"256\" viewBox=\"0 0 256 256\"><path fill=\"currentColor\" d=\"M200 48v160a8 8 0 0 1-13.66 5.66l-80-80a8 8 0 0 1 0-11.32l80-80A8 8 0 0 1 200 48M72 40a8 8 0 0 0-8 8v160a8 8 0 0 0 16 0V48a8 8 0 0 0-8-8\"/></svg>`;\nexport const PrevIcon = `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"256\" height=\"256\" viewBox=\"0 0 256 256\"><path fill=\"currentColor\" d=\"M168 48v160a8 8 0 0 1-13.66 5.66l-80-80a8 8 0 0 1 0-11.32l80-80A8 8 0 0 1 168 48\"/></svg>`;\nexport const NextIcon = `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"256\" height=\"256\" viewBox=\"0 0 256 256\"><path fill=\"currentColor\" d=\"m181.66 133.66l-80 80A8 8 0 0 1 88 208V48a8 8 0 0 1 13.66-5.66l80 80a8 8 0 0 1 0 11.32\"/></svg>`;\nexport const LastIcon = `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"256\" height=\"256\" viewBox=\"0 0 256 256\"><path fill=\"currentColor\" d=\"M149.66 122.34a8 8 0 0 1 0 11.32l-80 80A8 8 0 0 1 56 208V48a8 8 0 0 1 13.66-5.66ZM184 40a8 8 0 0 0-8 8v160a8 8 0 0 0 16 0V48a8 8 0 0 0-8-8\"/></svg>`;\n\nexport const LABELS = {\n backward: 'Previous page',\n first: 'First page',\n forward: 'Next page',\n last: 'Last page',\n itemPerPage: 'Items per page:',\n itemRange: (min: number, max: number, total: number) => `${min} – ${max} of ${total} items`,\n item: (min: number, max: number) => `${min} – ${max} items`,\n page: (page: number) => `page ${page}`,\n pageRange: (total: number) => `of ${total} ${total === 1 ? 'page' : 'pages'}`,\n pageNumber: 'Page Number'\n};\n","import Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\n\nimport styles from '@hokulea/core/navigation.module.css';\n\nimport { asNumber, gt, range } from '../../-private/helpers.ts';\nimport { IconButton } from '../actions/icon-button.gts';\nimport { NumberInput } from '../controls/number-input.gts';\nimport { Select } from '../controls/select.gts';\nimport { LABELS, NextIcon, PrevIcon } from './-pagination.ts';\n\ninterface PaginationSignature {\n Element: HTMLElement;\n Args: {\n backwardLabel?: string;\n\n forwardLabel?: string;\n\n change?: (value: { page: number; pageSize: number }) => void;\n\n /**\n * The translatable text indicating the number of items per page.\n */\n itemsPerPageLabel?: string;\n /**\n * The function returning a translatable text showing where the current page is,\n * in a manner of the range of items.\n */\n itemRangeLabel?: (min: number, max: number, total: number) => string;\n itemLabel?: (min: number, max: number) => string;\n\n /**\n * The current page.\n */\n page?: number;\n\n /**\n * The number dictating how many items a page contains.\n */\n pageSize: number;\n\n /**\n * The choices for `pageSize`.\n */\n pageSizes?: number[] | { label: string; value: number }[];\n /**\n * The translatable text showing the current page.\n */\n pageLabel?: (page: number) => string;\n /**\n * A function returning PII showing where the current page is.\n */\n pageRangeLabel?: (total: number) => string;\n pageNumberLabel?: string;\n /**\n * The total number of items.\n */\n totalItems?: number;\n };\n}\n\nexport class Pagination extends Component<PaginationSignature> {\n @tracked total = 0;\n\n get minItems() {\n return (this.page - 1) * this.args.pageSize + 1;\n }\n\n get maxItems() {\n return this.page * this.args.pageSize;\n }\n\n get pages(): number | undefined {\n if (this.args.totalItems) {\n return Math.ceil(this.args.totalItems / this.args.pageSize);\n }\n\n return undefined;\n }\n\n get page() {\n return this.args.page ?? 1;\n }\n\n get itemsPerPageLabel() {\n return this.args.itemsPerPageLabel ?? LABELS.itemPerPage;\n }\n\n get itemRangeLabel() {\n return (this.args.itemRangeLabel ?? LABELS.itemRange)(\n this.minItems,\n this.maxItems,\n this.args.totalItems ?? 1\n );\n }\n\n get itemLabel() {\n return (this.args.itemLabel ?? LABELS.item)(this.minItems, this.maxItems);\n }\n\n get pageLabel() {\n return (this.args.pageLabel ?? LABELS.page)(this.page);\n }\n\n get pageNumberLabel() {\n return this.args.pageNumberLabel ?? LABELS.pageNumber;\n }\n\n get pageRangeLabel() {\n return (this.args.pageRangeLabel ?? LABELS.pageRange)(this.pages ?? 0);\n }\n\n get pageSizeOptions() {\n return (this.args.pageSizes ?? []).map((i) =>\n typeof i === 'object' ? i : { value: i, label: i }\n );\n }\n\n get backwardLabel() {\n return this.args.backwardLabel ?? LABELS.backward;\n }\n\n get forwardLabel() {\n return this.args.forwardLabel ?? LABELS.forward;\n }\n\n changePage = (page?: number) => {\n if (page) {\n this.args.change?.({\n page: this.pages ? Math.min(page, this.pages) : page,\n pageSize: this.args.pageSize\n });\n }\n };\n\n changePageSize = (pageSize: string) => {\n this.args.change?.({\n page: this.page,\n pageSize: Number.parseInt(pageSize)\n });\n };\n\n prev = () => {\n if (this.page > 1) {\n this.changePage(this.page - 1);\n }\n };\n\n next = () => {\n if (this.pages) {\n if (this.page < this.pages) {\n this.changePage(this.page + 1);\n }\n } else {\n this.changePage(this.page + 1);\n }\n };\n\n <template>\n <div class={{styles.pagination}} data-test-pagination>\n {{#if @pageSizes}}\n <span part=\"page-size\">\n {{this.itemsPerPageLabel}}\n\n {{! @glint-ignore }}\n <Select @spacing=\"-1\" @value={{@pageSize}} @update={{this.changePageSize}} as |s|>\n {{#each this.pageSizeOptions as |o|}}\n <s.Option @value={{o.value}}>{{o.label}}</s.Option>\n {{/each}}\n </Select>\n </span>\n {{/if}}\n <span part=\"items\">\n {{#if @totalItems}}\n {{this.itemRangeLabel}}\n {{else}}\n {{this.itemLabel}}\n {{/if}}\n </span>\n <span part=\"page\">\n {{#if @totalItems}}\n {{#if (gt this.pages 20)}}\n <NumberInput @spacing=\"-1\" @value={{this.page}} @update={{this.changePage}} />\n {{else}}\n {{! @glint-ignore }}\n <Select @spacing=\"-1\" @value={{this.page}} @update={{this.changePage}} as |s|>\n {{#each (range (asNumber this.pages)) as |p|}}\n <s.Option @value={{p}}>{{p}}</s.Option>\n {{/each}}\n </Select>\n {{/if}}\n {{this.pageRangeLabel}}\n {{else}}\n {{this.pageLabel}}\n {{/if}}\n </span>\n <span part=\"nav\">\n <IconButton\n @push={{this.prev}}\n @icon={{PrevIcon}}\n @label={{this.backwardLabel}}\n @importance=\"plain\"\n @spacing=\"-1\"\n data-test-prev\n />\n <IconButton\n @push={{this.next}}\n @icon={{NextIcon}}\n @label={{this.forwardLabel}}\n @importance=\"plain\"\n @spacing=\"-1\"\n data-test-next\n />\n </span>\n </div>\n </template>\n}\n"],"names":["PrevIcon","NextIcon","LABELS","backward","first","forward","last","itemPerPage","itemRange","min","max","total","item","page","pageRange","pageNumber","Pagination","Component","g","prototype","tracked","i","void 0","minItems","args","pageSize","maxItems","pages","totalItems","Math","ceil","undefined","itemsPerPageLabel","itemRangeLabel","itemLabel","pageLabel","pageNumberLabel","pageRangeLabel","pageSizeOptions","pageSizes","map","value","label","backwardLabel","forwardLabel","changePage","change","changePageSize","Number","parseInt","prev","next","setComponentTemplate","precompileTemplate","strictMode","scope","styles","Select","gt","NumberInput","range","asNumber","IconButton"],"mappings":"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"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { on } from '@ember/modifier';
|
|
2
2
|
import styles from '@hokulea/core/controls.module.css';
|
|
3
|
-
import { p as pick } from './helpers-
|
|
3
|
+
import { p as pick } from './helpers-D4So5-uK.js';
|
|
4
4
|
import { precompileTemplate } from '@ember/template-compilation';
|
|
5
5
|
import { setComponentTemplate } from '@ember/component';
|
|
6
6
|
import templateOnly from '@ember/component/template-only';
|
|
7
7
|
|
|
8
|
-
const PasswordInput = setComponentTemplate(precompileTemplate("\n <input class={{styles.input}} type=\"password\" value={{@value}} disabled={{@disabled}} data-test-input {{on \"input\" (pick \"target.value\" @update) capture=true}} ...attributes />\n", {
|
|
8
|
+
const PasswordInput = setComponentTemplate(precompileTemplate("\n <input class={{styles.input}} type=\"password\" value={{@value}} disabled={{@disabled}} data-spacing={{@spacing}} data-test-input {{on \"input\" (pick \"target.value\" @update) capture=true}} ...attributes />\n", {
|
|
9
9
|
strictMode: true,
|
|
10
10
|
scope: () => ({
|
|
11
11
|
styles,
|
|
@@ -15,4 +15,4 @@ const PasswordInput = setComponentTemplate(precompileTemplate("\n <input class=
|
|
|
15
15
|
}), templateOnly());
|
|
16
16
|
|
|
17
17
|
export { PasswordInput as P };
|
|
18
|
-
//# sourceMappingURL=password-input-
|
|
18
|
+
//# sourceMappingURL=password-input-DV5yb10h.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"password-input-DV5yb10h.js","sources":["../src/components/controls/password-input.gts"],"sourcesContent":["import { on } from '@ember/modifier';\n\nimport styles from '@hokulea/core/controls.module.css';\n\nimport { pick } from '../../-private/helpers.ts';\n\nimport type { InputArgs } from './-input.ts';\nimport type { TOC } from '@ember/component/template-only';\n\nexport interface PasswordInputSignature {\n Element: HTMLInputElement;\n Args: InputArgs<string>;\n}\n\nexport const PasswordInput: TOC<PasswordInputSignature> = <template>\n <input\n class={{styles.input}}\n type=\"password\"\n value={{@value}}\n disabled={{@disabled}}\n data-spacing={{@spacing}}\n data-test-input\n {{on \"input\" (pick \"target.value\" @update) capture=true}}\n ...attributes\n />\n</template>;\n"],"names":["PasswordInput","setComponentTemplate","precompileTemplate","strictMode","scope","styles","on","pick","templateOnly"],"mappings":";;;;;;;MAcaA,aAAmB,GAAAC,oBAAA,CAA0BC,kBAAA,CAAA,wNAAA,EAW1D;EAAAC,UAAA,EAAA,IAAA;AAAAC,EAAAA,KAAA,EAAAA,OAAA;IAAAC,MAAA;IAAAC,EAAA;AAAAC,IAAAA;AAAA,GAAA;AAAU,CAAA,CAAA,EAAAC,YAAA,EAAA;;;;"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { on } from '@ember/modifier';
|
|
2
2
|
import styles from '@hokulea/core/controls.module.css';
|
|
3
|
-
import { p as pick } from './helpers-
|
|
3
|
+
import { p as pick } from './helpers-D4So5-uK.js';
|
|
4
4
|
import { precompileTemplate } from '@ember/template-compilation';
|
|
5
5
|
import { setComponentTemplate } from '@ember/component';
|
|
6
6
|
import templateOnly from '@ember/component/template-only';
|
|
7
7
|
|
|
8
|
-
const PhoneInput = setComponentTemplate(precompileTemplate("\n <input class={{styles.input}} type=\"tel\" value={{@value}} disabled={{@disabled}} data-test-input {{on \"input\" (pick \"target.value\" @update) capture=true}} ...attributes />\n", {
|
|
8
|
+
const PhoneInput = setComponentTemplate(precompileTemplate("\n <input class={{styles.input}} type=\"tel\" value={{@value}} disabled={{@disabled}} data-spacing={{@spacing}} data-test-input {{on \"input\" (pick \"target.value\" @update) capture=true}} ...attributes />\n", {
|
|
9
9
|
strictMode: true,
|
|
10
10
|
scope: () => ({
|
|
11
11
|
styles,
|
|
@@ -15,4 +15,4 @@ const PhoneInput = setComponentTemplate(precompileTemplate("\n <input class={{s
|
|
|
15
15
|
}), templateOnly());
|
|
16
16
|
|
|
17
17
|
export { PhoneInput as P };
|
|
18
|
-
//# sourceMappingURL=phone-input-
|
|
18
|
+
//# sourceMappingURL=phone-input-Uv5v9hK9.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"phone-input-
|
|
1
|
+
{"version":3,"file":"phone-input-Uv5v9hK9.js","sources":["../src/components/controls/phone-input.gts"],"sourcesContent":["import { on } from '@ember/modifier';\n\nimport styles from '@hokulea/core/controls.module.css';\n\nimport { pick } from '../../-private/helpers.ts';\n\nimport type { InputArgs } from './-input.ts';\nimport type { TOC } from '@ember/component/template-only';\n\nexport interface PhoneInputSignature {\n Element: HTMLInputElement;\n Args: InputArgs<string>;\n}\n\nexport const PhoneInput: TOC<PhoneInputSignature> = <template>\n <input\n class={{styles.input}}\n type=\"tel\"\n value={{@value}}\n disabled={{@disabled}}\n data-spacing={{@spacing}}\n data-test-input\n {{on \"input\" (pick \"target.value\" @update) capture=true}}\n ...attributes\n />\n</template>;\n"],"names":["PhoneInput","setComponentTemplate","precompileTemplate","strictMode","scope","styles","on","pick","templateOnly"],"mappings":";;;;;;;MAcaA,UAAgB,GAAAC,oBAAA,CAAuBC,kBAAA,CAAA,mNAAA,EAWpD;EAAAC,UAAA,EAAA,IAAA;AAAAC,EAAAA,KAAA,EAAAA,OAAA;IAAAC,MAAA;IAAAC,EAAA;AAAAC,IAAAA;AAAA,GAAA;AAAU,CAAA,CAAA,EAAAC,YAAA,EAAA;;;;"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { on } from '@ember/modifier';
|
|
2
|
+
import { CommandElement } from 'ember-command';
|
|
3
|
+
import { element } from 'ember-element-helper';
|
|
4
|
+
import { link, Link } from 'ember-link';
|
|
5
|
+
import { precompileTemplate } from '@ember/template-compilation';
|
|
6
|
+
import { setComponentTemplate } from '@ember/component';
|
|
7
|
+
import templateOnly from '@ember/component/template-only';
|
|
8
|
+
|
|
9
|
+
const isActive = commandable => {
|
|
10
|
+
return commandable instanceof Link && commandable.isActive;
|
|
11
|
+
};
|
|
12
|
+
const PushElement = setComponentTemplate(precompileTemplate("\n {{#if @href}}\n {{#let (link @href) as |l|}}\n <a href={{l.url}} {{on \"click\" l.open}} aria-current=\"{{if (isActive l) \"page\"}}\" ...attributes>\n {{yield}}\n </a>\n {{/let}}\n {{else if @push}}\n <CommandElement @element={{@element}} @command={{@push}} aria-current=\"{{if (isActive @push) \"page\"}}\" ...attributes>\n {{yield}}\n </CommandElement>\n {{else}}\n {{#let (if @element @element (element \"span\")) as |Element|}}\n <Element ...attributes>\n {{yield}}\n </Element>\n {{/let}}\n {{/if}}\n", {
|
|
13
|
+
strictMode: true,
|
|
14
|
+
scope: () => ({
|
|
15
|
+
link,
|
|
16
|
+
isActive,
|
|
17
|
+
on,
|
|
18
|
+
CommandElement,
|
|
19
|
+
element
|
|
20
|
+
})
|
|
21
|
+
}), templateOnly());
|
|
22
|
+
|
|
23
|
+
export { PushElement as P, isActive as i };
|
|
24
|
+
//# sourceMappingURL=push-DnJFFc_p.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"push-DnJFFc_p.js","sources":["../src/-private/push.gts"],"sourcesContent":["import { on } from '@ember/modifier';\n\nimport { type CommandAction, CommandElement } from 'ember-command';\nimport { element, type ElementFromTagName, type ElementSignature } from 'ember-element-helper';\nimport { Link, link } from 'ember-link';\n\nimport type { TOC } from '@ember/component/template-only';\n\nexport const isActive = (commandable: CommandAction) => {\n return commandable instanceof Link && commandable.isActive;\n};\n\nexport interface PushArgs {\n push?: CommandAction;\n href?: string;\n}\n\ninterface PushSignature<T extends string = 'span'> {\n Element: HTMLButtonElement | HTMLAnchorElement | ElementFromTagName<T>;\n Args: PushArgs & {\n element?: ElementSignature<'a' | 'button' | T>['Return'];\n };\n Blocks: {\n default: [];\n };\n}\n\nexport const PushElement: TOC<PushSignature> = <template>\n {{#if @href}}\n {{#let (link @href) as |l|}}\n <a\n href={{l.url}}\n {{on \"click\" l.open}}\n aria-current=\"{{if (isActive l) 'page'}}\"\n ...attributes\n >\n {{yield}}\n </a>\n {{/let}}\n {{else if @push}}\n <CommandElement\n @element={{@element}}\n @command={{@push}}\n aria-current=\"{{if (isActive @push) 'page'}}\"\n ...attributes\n >\n {{yield}}\n </CommandElement>\n {{else}}\n {{#let (if @element @element (element \"span\")) as |Element|}}\n <Element ...attributes>\n {{yield}}\n </Element>\n {{/let}}\n {{/if}}\n</template>;\n"],"names":["isActive","commandable","Link","PushElement","setComponentTemplate","precompileTemplate","strictMode","scope","link","on","CommandElement","element","templateOnly"],"mappings":";;;;;;;;AAQO,MAAMA,QAAA,GAAYC,WAAa,IAAA;AACpC,EAAA,OAAOA,WAAA,YAAuBC,IAAA,IAAQD,WAAA,CAAYD,QAAQ;AAC5D;MAiBaG,WAAiB,GAAAC,oBAAA,CAAiBC,kBAAA,CAAA,4jBAAA,EA4B/C;EAAAC,UAAA,EAAA,IAAA;AAAAC,EAAAA,KAAA,EAAAA,OAAA;IAAAC,IAAA;IAAAR,QAAA;IAAAS,EAAA;IAAAC,cAAA;AAAAC,IAAAA;AAAA,GAAA;AAAU,CAAA,CAAA,EAAAC,YAAA,EAAA;;;;"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { on } from '@ember/modifier';
|
|
2
2
|
import styles from '@hokulea/core/controls.module.css';
|
|
3
|
-
import { p as pick } from './helpers-
|
|
3
|
+
import { p as pick } from './helpers-D4So5-uK.js';
|
|
4
4
|
import { precompileTemplate } from '@ember/template-compilation';
|
|
5
5
|
import { setComponentTemplate } from '@ember/component';
|
|
6
6
|
import templateOnly from '@ember/component/template-only';
|
|
7
7
|
|
|
8
|
-
const Radio = setComponentTemplate(precompileTemplate("\n <input class={{styles.choice}} type=\"radio\" checked={{@value}} disabled={{@disabled}} data-test-choice {{on \"input\" (pick \"target.checked\" @update) capture=true}} ...attributes />\n", {
|
|
8
|
+
const Radio = setComponentTemplate(precompileTemplate("\n <input class={{styles.choice}} type=\"radio\" checked={{@value}} disabled={{@disabled}} data-spacing={{@spacing}} data-test-choice {{on \"input\" (pick \"target.checked\" @update) capture=true}} ...attributes />\n", {
|
|
9
9
|
strictMode: true,
|
|
10
10
|
scope: () => ({
|
|
11
11
|
styles,
|
|
@@ -15,4 +15,4 @@ const Radio = setComponentTemplate(precompileTemplate("\n <input class={{styles
|
|
|
15
15
|
}), templateOnly());
|
|
16
16
|
|
|
17
17
|
export { Radio as R };
|
|
18
|
-
//# sourceMappingURL=radio-
|
|
18
|
+
//# sourceMappingURL=radio-CLF40kob.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"radio-
|
|
1
|
+
{"version":3,"file":"radio-CLF40kob.js","sources":["../src/components/controls/radio.gts"],"sourcesContent":["import { on } from '@ember/modifier';\n\nimport styles from '@hokulea/core/controls.module.css';\n\nimport { pick } from '../../-private/helpers.ts';\n\nimport type { InputArgs } from './-input.ts';\nimport type { TOC } from '@ember/component/template-only';\n\nexport interface RadioSignature {\n Element: HTMLInputElement;\n Args: InputArgs<boolean>;\n}\n\nexport const Radio: TOC<RadioSignature> = <template>\n <input\n class={{styles.choice}}\n type=\"radio\"\n checked={{@value}}\n disabled={{@disabled}}\n data-spacing={{@spacing}}\n data-test-choice\n {{on \"input\" (pick \"target.checked\" @update) capture=true}}\n ...attributes\n />\n</template>;\n"],"names":["Radio","setComponentTemplate","precompileTemplate","strictMode","scope","styles","on","pick","templateOnly"],"mappings":";;;;;;;MAcaA,KAAW,GAAAC,oBAAA,CAAkBC,kBAAA,CAAA,2NAAA,EAW1C;EAAAC,UAAA,EAAA,IAAA;AAAAC,EAAAA,KAAA,EAAAA,OAAA;IAAAC,MAAA;IAAAC,EAAA;AAAAC,IAAAA;AAAA,GAAA;AAAU,CAAA,CAAA,EAAAC,YAAA,EAAA;;;;"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { on } from '@ember/modifier';
|
|
2
2
|
import { modifier } from 'ember-modifier';
|
|
3
3
|
import styles from '@hokulea/core/controls.module.css';
|
|
4
|
-
import { p as pick } from './helpers-
|
|
4
|
+
import { p as pick } from './helpers-D4So5-uK.js';
|
|
5
5
|
import { p as pickAsNumber } from './-input-DGR-n9U_.js';
|
|
6
6
|
import { precompileTemplate } from '@ember/template-compilation';
|
|
7
7
|
import { setComponentTemplate } from '@ember/component';
|
|
@@ -34,4 +34,4 @@ const RangeInput = setComponentTemplate(precompileTemplate("\n <input class={{s
|
|
|
34
34
|
}), templateOnly());
|
|
35
35
|
|
|
36
36
|
export { RangeInput as R };
|
|
37
|
-
//# sourceMappingURL=range-input-
|
|
37
|
+
//# sourceMappingURL=range-input-BIb7GkKH.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"range-input-BIb7GkKH.js","sources":["../src/components/controls/range-input.gts"],"sourcesContent":["import { on } from '@ember/modifier';\n\nimport { modifier } from 'ember-modifier';\n\nimport styles from '@hokulea/core/controls.module.css';\n\nimport { pick } from '../../-private/helpers.ts';\nimport { pickAsNumber } from './-input.ts';\n\nimport type { InputArgs } from './-input.ts';\nimport type { TOC } from '@ember/component/template-only';\n\nfunction applyProgressStyle(range: HTMLInputElement, value?: number) {\n const min = Number.parseFloat(range.min) || 0;\n const max = Number.parseFloat(range.max) || 100;\n const currentVal = value ?? Number.parseFloat(range.value);\n const progress = ((currentVal - min) / (max - min)) * 100;\n\n range.style.setProperty('--_hokulea-slider-progress', `${progress}%`);\n}\n\nconst progressStyle = modifier((element: HTMLInputElement, [value]: [number?]) => {\n applyProgressStyle(element, value);\n\n const listenForProgressChange = () => {\n applyProgressStyle(element);\n };\n\n element.addEventListener('input', listenForProgressChange);\n\n return () => element.removeEventListener('input', listenForProgressChange);\n});\n\nexport interface RangeInputSignature {\n Element: HTMLInputElement;\n Args: Omit<InputArgs<number>, 'spacing'> & {\n min?: number;\n max?: number;\n step?: number | 'any';\n orientation?: 'horizontal' | 'vertical';\n };\n}\n\nexport const 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 {{on \"input\" (pick \"target.value\" (pickAsNumber @update)) capture=true}}\n {{progressStyle @value}}\n ...attributes\n />\n</template>;\n"],"names":["applyProgressStyle","range","value","min","Number","parseFloat","max","currentVal","progress","style","setProperty","progressStyle","modifier","element","listenForProgressChange","addEventListener","removeEventListener","RangeInput","setComponentTemplate","precompileTemplate","strictMode","scope","styles","on","pick","pickAsNumber","templateOnly"],"mappings":";;;;;;;;;AAYA,SAASA,kBAAAA,CAAmBC,KAAuB,EAAEC,KAAc,EAAA;EACjE,MAAMC,MAAMC,MAAA,CAAOC,UAAU,CAACJ,KAAA,CAAME,GAAG,CAAA,IAAK,CAAA;EAC5C,MAAMG,MAAMF,MAAA,CAAOC,UAAU,CAACJ,KAAA,CAAMK,GAAG,CAAA,IAAK,GAAA;EAC5C,MAAMC,aAAaL,KAAA,IAASE,MAAA,CAAOC,UAAU,CAACJ,MAAMC,KAAK,CAAA;AACzD,EAAA,MAAMM,QAAA,GAAY,CAACD,UAAA,GAAaJ,GAAG,KAAKG,GAAA,GAAMH,GAAG,CAAC,GAAI,GAAA;EAEtDF,KAAA,CAAMQ,KAAK,CAACC,WAAW,CAAC,8BAA8B,CAAA,EAAGF,QAAA,CAAA,CAAA,CAAW,CAAA;AACtE;AAEA,MAAMG,aAAA,GAAgBC,SAAS,CAACC,SAA2B,CAACX,KAAA,CAAiB,KAAA;AAC3EF,EAAAA,kBAAA,CAAmBa,OAAA,EAASX,KAAA,CAAA;EAE5B,MAAMY,uBAAA,GAA0BA,MAAA;IAC9Bd,kBAAA,CAAmBa,OAAA,CAAA;EACrB,CAAA;AAEAA,EAAAA,OAAA,CAAQE,gBAAgB,CAAC,OAAA,EAASD,uBAAA,CAAA;EAElC,OAAO,MAAMD,OAAA,CAAQG,mBAAmB,CAAC,OAAA,EAASF,uBAAA,CAAA;AACpD,CAAA,CAAA;MAYaG,UAAgB,GAAAC,oBAAA,CAAuBC,kBAAA,CAAA,qQAAA,EAYpD;EAAAC,UAAA,EAAA,IAAA;AAAAC,EAAAA,KAAA,EAAAA,OAAA;IAAAC,MAAA;IAAAC,EAAA;IAAAC,IAAA;IAAAC,YAAA;AAAAd,IAAAA;AAAA,GAAA;AAAU,CAAA,CAAA,EAAAe,YAAA,EAAA;;;;"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { element } from 'ember-element-helper';
|
|
2
2
|
import styles from '@hokulea/core/layouts.module.css';
|
|
3
3
|
import typo from '@hokulea/core/typography.module.css';
|
|
4
|
-
import { o as or } from './helpers-
|
|
5
|
-
import { N as NavLink } from './nav-link-
|
|
4
|
+
import { o as or } from './helpers-D4So5-uK.js';
|
|
5
|
+
import { N as NavLink } from './nav-link-CDtYj6HW.js';
|
|
6
6
|
import { P as PageDestructor, a as PageElement } from './pages-DgHJEvSy.js';
|
|
7
7
|
import { precompileTemplate } from '@ember/template-compilation';
|
|
8
8
|
import { setComponentTemplate } from '@ember/component';
|
|
@@ -22,4 +22,4 @@ const SectionedPage = setComponentTemplate(precompileTemplate("\n {{#let (if @e
|
|
|
22
22
|
}), templateOnly());
|
|
23
23
|
|
|
24
24
|
export { SectionedPage as S };
|
|
25
|
-
//# sourceMappingURL=sectioned-page-
|
|
25
|
+
//# sourceMappingURL=sectioned-page-CgINWVQ2.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sectioned-page-
|
|
1
|
+
{"version":3,"file":"sectioned-page-CgINWVQ2.js","sources":["../src/components/layouts/sectioned-page.gts"],"sourcesContent":["import { element } from 'ember-element-helper';\n\n// eslint-disable-next-line import-x/no-duplicates\nimport styles from '@hokulea/core/layouts.module.css';\n// eslint-disable-next-line import-x/no-duplicates\nimport typo from '@hokulea/core/typography.module.css';\n\nimport { or } from '../../-private/helpers.ts';\nimport { NavLink } from '../navigation/nav-link.gts';\nimport { pageDestructor, pageElement } from './pages.ts';\n\nimport type { TOC } from '@ember/component/template-only';\nimport type { ComponentLike } from '@glint/template';\n\ninterface SectionedPageSignature {\n Element: HTMLElement;\n Args: {\n title?: string;\n description?: string;\n element?: ComponentLike<{ Element: HTMLElement; Blocks: { default: [] } }>;\n };\n Blocks: {\n title?: [];\n description?: [];\n nav?: [typeof NavLink];\n content?: [];\n default?: [];\n };\n}\n\nexport const SectionedPage: TOC<SectionedPageSignature> = <template>\n {{#let (if @element @element (element (pageElement))) as |Element|}}\n <Element class={{styles.sectionedPage}} {{pageDestructor}} ...attributes data-test-page>\n {{#if\n (or @title @description (has-block \"title\") (has-block \"description\") (has-block \"nav\"))\n }}\n <header class={{styles.pageContent}}>\n <h1 class={{typo.display}}>\n {{#if (has-block \"title\")}}\n {{yield to=\"title\"}}\n {{else if @title}}\n {{@title}}\n {{/if}}\n </h1>\n\n {{#if (or (has-block \"description\") @description)}}\n <p>\n {{#if (has-block \"description\")}}\n {{yield to=\"description\"}}\n {{else if @description}}\n {{@description}}\n {{/if}}\n </p>\n {{/if}}\n\n {{#if (has-block \"nav\")}}\n <nav>\n {{yield NavLink to=\"nav\"}}\n </nav>\n {{/if}}\n </header>\n {{/if}}\n\n <div class=\"{{styles.pageContent}} {{styles.flow}}\" part=\"content\">\n {{#if (has-block \"content\")}}\n {{yield to=\"content\"}}\n {{else if (has-block)}}\n {{yield}}\n {{/if}}\n </div>\n </Element>\n {{/let}}\n</template>;\n"],"names":["SectionedPage","setComponentTemplate","precompileTemplate","strictMode","scope","element","pageElement","styles","pageDestructor","or","typo","NavLink","templateOnly"],"mappings":";;;;;;;;;;MA8BaA,aAAmB,GAAAC,oBAAA,CAA0BC,kBAAA,CAAA,0xCAAA,EA0C1D;EAAAC,UAAA,EAAA,IAAA;AAAAC,EAAAA,KAAA,EAAAA,OAAA;IAAAC,OAAA;iBAAAC,WAAA;IAAAC,MAAA;oBAAAC,cAAA;IAAAC,EAAA;IAAAC,IAAA;AAAAC,IAAAA;AAAA,GAAA;AAAU,CAAA,CAAA,EAAAC,YAAA,EAAA;;;;"}
|
|
@@ -22,8 +22,11 @@ class Select extends Component {
|
|
|
22
22
|
const value = selection.length === 1 ? selection[0] : selection;
|
|
23
23
|
this.args.update?.(value);
|
|
24
24
|
};
|
|
25
|
+
get spacing() {
|
|
26
|
+
return this.args.spacing ?? 1;
|
|
27
|
+
}
|
|
25
28
|
static {
|
|
26
|
-
setComponentTemplate(precompileTemplate("\n <span class={{styles.select}}>\n <select disabled={{@disabled}} data-test-select {{on \"input\" this.select capture=true}} ...attributes>\n {{yield (hash Option=(component Option isSelected=this.isSelected))}}\n </select>\n </span>\n ", {
|
|
29
|
+
setComponentTemplate(precompileTemplate("\n <span class={{styles.select}} data-spacing={{this.spacing}}>\n <select disabled={{@disabled}} data-test-select {{on \"input\" this.select capture=true}} ...attributes>\n {{yield (hash Option=(component Option isSelected=this.isSelected))}}\n </select>\n </span>\n ", {
|
|
27
30
|
strictMode: true,
|
|
28
31
|
scope: () => ({
|
|
29
32
|
styles,
|
|
@@ -36,4 +39,4 @@ class Select extends Component {
|
|
|
36
39
|
}
|
|
37
40
|
|
|
38
41
|
export { Select as S };
|
|
39
|
-
//# sourceMappingURL=select-
|
|
42
|
+
//# sourceMappingURL=select-CeO8AZMK.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"select-CeO8AZMK.js","sources":["../src/components/controls/select.gts"],"sourcesContent":["import Component from '@glimmer/component';\nimport { hash } from '@ember/helper';\nimport { on } from '@ember/modifier';\n\nimport styles from '@hokulea/core/controls.module.css';\n\nimport type { TOC } from '@ember/component/template-only';\nimport type { WithBoundArgs } from '@glint/template';\nimport type { Spacing } from '@hokulea/tokens';\n\nexport type Value = string | number;\n\nexport interface OptionSignature {\n Element: HTMLOptionElement;\n Args: {\n value: Value;\n isSelected: (option: Value) => boolean;\n };\n Blocks: {\n default: [];\n };\n}\n\nconst Option: TOC<OptionSignature> = <template>\n <option value={{@value}} selected={{@isSelected @value}} ...attributes>\n {{#if (has-block)}}\n {{yield}}\n {{else}}\n {{@value}}\n {{/if}}\n </option>\n</template>;\n\nexport interface SelectSignature {\n Element: HTMLSelectElement;\n Args: {\n value?: Value | Value[];\n update?: (value: Value | Value[]) => void;\n disabled?: boolean;\n spacing?: Spacing;\n };\n Blocks: {\n default: [\n {\n Option: WithBoundArgs<typeof Option, 'isSelected'>;\n }\n ];\n };\n}\n\nexport class Select extends Component<SelectSignature> {\n isSelected = (option: Value) => {\n if (Array.isArray(this.args.value)) {\n return this.args.value.includes(option);\n }\n\n return String(option) === String(this.args.value);\n };\n\n select = (event: Event) => {\n const select = event.target as HTMLSelectElement;\n const selection = Array.of(...select.selectedOptions).map((option) => option.value);\n const value = selection.length === 1 ? (selection[0] as Value) : (selection as Value[]);\n\n this.args.update?.(value);\n };\n\n get spacing() {\n return this.args.spacing ?? 1;\n }\n\n <template>\n <span class={{styles.select}} data-spacing={{this.spacing}}>\n <select\n disabled={{@disabled}}\n data-test-select\n {{on \"input\" this.select capture=true}}\n ...attributes\n >\n {{yield (hash Option=(component Option isSelected=this.isSelected))}}\n </select>\n </span>\n </template>\n}\n"],"names":["Option","setComponentTemplate","precompileTemplate","strictMode","templateOnly","Select","Component","isSelected","option","Array","isArray","args","value","includes","String","select","event","target","selection","of","selectedOptions","map","length","update","spacing","scope","styles","on","hash"],"mappings":";;;;;;;;AAuBA,MAAMA,MAAY,GAAAC,oBAAA,CAAmBC,kBAAA,CAAA,mLAAA,EAQrC;EAAAC,UAAA,EAAA;AAAU,CAAA,CAAA,EAAAC,YAAA,EAAA,CAAA;AAmBH,MAAMC,eAAeC,SAAA,CAAU;EACpCC,UAAA,GAAcC,MAAQ,IAAA;IACpB,IAAIC,KAAA,CAAMC,OAAO,CAAC,IAAI,CAACC,IAAI,CAACC,KAAK,CAAA,EAAG;MAClC,OAAO,IAAI,CAACD,IAAI,CAACC,KAAK,CAACC,QAAQ,CAACL,MAAA,CAAA;AAClC,IAAA;AAEA,IAAA,OAAOM,OAAON,MAAA,CAAA,KAAYM,MAAA,CAAO,IAAI,CAACH,IAAI,CAACC,KAAK,CAAA;EAClD,CAAA;EAEAG,MAAA,GAAUC,KAAO,IAAA;AACf,IAAA,MAAMD,MAAA,GAASC,KAAA,CAAMC,MAAU;AAC/B,IAAA,MAAMC,SAAA,GAAYT,KAAA,CAAMU,EAAE,CAAA,GAAIJ,MAAA,CAAOK,eAAe,CAAA,CAAEC,GAAG,CAAEb,MAAA,IAAWA,MAAA,CAAOI,KAAK,CAAA;AAClF,IAAA,MAAMA,KAAA,GAAQM,SAAA,CAAUI,MAAM,KAAK,IAAKJ,SAAS,CAAC,CAAA,CAAE,GAAcA,SAAoB;AAEtF,IAAA,IAAI,CAACP,IAAI,CAACY,MAAM,GAAGX,KAAA,CAAA;EACrB,CAAA;EAEA,IAAIY,OAAAA,GAAU;AACZ,IAAA,OAAO,IAAI,CAACb,IAAI,CAACa,OAAO,IAAI,CAAA;AAC9B,EAAA;AAEA,EAAA;IAAAvB,oBAAA,CAAAC,kBAAA,CAAA,qSAAA,EAWA;MAAAC,UAAA,EAAA,IAAA;AAAAsB,MAAAA,KAAA,EAAAA,OAAA;QAAAC,MAAA;QAAAC,EAAA;QAAAC,IAAA;AAAA5B,QAAAA;AAAA,OAAA;KAAU,CAAA,EAAV,IAAW,CAAA;AAAD;AACZ;;;;"}
|
|
@@ -10,7 +10,7 @@ import Portal from 'ember-stargate/components/portal';
|
|
|
10
10
|
import PortalTarget from 'ember-stargate/components/portal-target';
|
|
11
11
|
import { TrackedArray } from 'tracked-built-ins';
|
|
12
12
|
import styles from '@hokulea/core/controls.module.css';
|
|
13
|
-
import { n as not, e as eq } from './helpers-
|
|
13
|
+
import { n as not, e as eq } from './helpers-D4So5-uK.js';
|
|
14
14
|
import { precompileTemplate } from '@ember/template-compilation';
|
|
15
15
|
import { setComponentTemplate } from '@ember/component';
|
|
16
16
|
import { n, g, i } from 'decorator-transforms/runtime-esm';
|
|
@@ -108,4 +108,4 @@ class Tabs extends Component {
|
|
|
108
108
|
}
|
|
109
109
|
|
|
110
110
|
export { Tabs as T, TabValue as a };
|
|
111
|
-
//# sourceMappingURL=tabs-
|
|
111
|
+
//# sourceMappingURL=tabs-DAscspzh.js.map
|