@hokulea/ember 0.14.0 → 0.15.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. package/declarations/components/actions/-button.d.ts +31 -0
  2. package/declarations/components/actions/-button.d.ts.map +1 -1
  3. package/declarations/components/actions/button-group.d.ts +10 -0
  4. package/declarations/components/actions/button-group.d.ts.map +1 -0
  5. package/declarations/components/actions/button.d.ts +7 -17
  6. package/declarations/components/actions/button.d.ts.map +1 -1
  7. package/declarations/components/actions/icon-button.d.ts +6 -13
  8. package/declarations/components/actions/icon-button.d.ts.map +1 -1
  9. package/declarations/components/actions/radio-button-group.d.ts +57 -0
  10. package/declarations/components/actions/radio-button-group.d.ts.map +1 -0
  11. package/declarations/components/button-group.d.ts +2 -0
  12. package/declarations/components/button-group.d.ts.map +1 -0
  13. package/declarations/components/radio-button-group.d.ts +2 -0
  14. package/declarations/components/radio-button-group.d.ts.map +1 -0
  15. package/declarations/index.d.ts +2 -0
  16. package/declarations/index.d.ts.map +1 -1
  17. package/declarations/template-registry.d.ts +4 -0
  18. package/declarations/template-registry.d.ts.map +1 -1
  19. package/declarations/test-support/index.d.ts +2 -0
  20. package/declarations/test-support/index.d.ts.map +1 -1
  21. package/declarations/test-support/page-objects/button-group.d.ts +9 -0
  22. package/declarations/test-support/page-objects/button-group.d.ts.map +1 -0
  23. package/declarations/test-support/page-objects/button.d.ts.map +1 -1
  24. package/declarations/test-support/page-objects/radio-button-group.d.ts +33 -0
  25. package/declarations/test-support/page-objects/radio-button-group.d.ts.map +1 -0
  26. package/dist/{-button-KUaJCQaB.js → -button-zstwNwHq.js} +8 -2
  27. package/dist/-button-zstwNwHq.js.map +1 -0
  28. package/dist/_app_/components/button-group.js +1 -0
  29. package/dist/_app_/components/radio-button-group.js +1 -0
  30. package/dist/{app-header-B9BWy4HI.js → app-header-zFoKDgm0.js} +2 -2
  31. package/dist/{app-header-B9BWy4HI.js.map → app-header-zFoKDgm0.js.map} +1 -1
  32. package/dist/button-DCEeKVJE.js +25 -0
  33. package/dist/button-DCEeKVJE.js.map +1 -0
  34. package/dist/button-group-L-yIZgQe.js +14 -0
  35. package/dist/button-group-L-yIZgQe.js.map +1 -0
  36. package/dist/components/app-header.js +1 -1
  37. package/dist/components/button-group.js +2 -0
  38. package/dist/components/button-group.js.map +1 -0
  39. package/dist/components/button.js +1 -1
  40. package/dist/components/icon-button.js +1 -1
  41. package/dist/components/pagination.js +1 -1
  42. package/dist/components/radio-button-group.js +2 -0
  43. package/dist/components/radio-button-group.js.map +1 -0
  44. package/dist/{icon-button-ClE5SC8Y.js → icon-button-C1YrOLFe.js} +7 -5
  45. package/dist/icon-button-C1YrOLFe.js.map +1 -0
  46. package/dist/index.js +6 -4
  47. package/dist/index.js.map +1 -1
  48. package/dist/{pagination-Mgv860Cf.js → pagination-CjkoHYcN.js} +2 -2
  49. package/dist/{pagination-Mgv860Cf.js.map → pagination-CjkoHYcN.js.map} +1 -1
  50. package/dist/radio-button-group-D7LjyINa.js +91 -0
  51. package/dist/radio-button-group-D7LjyINa.js.map +1 -0
  52. package/dist/test-support/index.js +22 -2
  53. package/dist/test-support/index.js.map +1 -1
  54. package/package.json +8 -7
  55. package/dist/-button-KUaJCQaB.js.map +0 -1
  56. package/dist/button-CRe5grz4.js +0 -24
  57. package/dist/button-CRe5grz4.js.map +0 -1
  58. package/dist/icon-button-ClE5SC8Y.js.map +0 -1
@@ -1,4 +1,35 @@
1
1
  import { Link } from 'ember-link';
2
+ import type { Importance, Intent, Spacing } from '@hokulea/tokens';
2
3
  import type { CommandAction } from 'ember-command';
3
4
  export declare function isLink(commandable?: CommandAction): commandable is Link;
5
+ export interface ButtonArgs {
6
+ intent?: Intent;
7
+ importance?: Importance;
8
+ spacing?: Spacing;
9
+ disabled?: boolean;
10
+ }
11
+ export interface IconButtonArgs {
12
+ label: string;
13
+ /**
14
+ * A string containing a `<svg>` element.
15
+ * Make sure to use `currentColor` to comply with the styling
16
+ */
17
+ icon: string;
18
+ }
19
+ export interface ButtonBlocks {
20
+ /** The label for the button */
21
+ default: [];
22
+ /** The label for the button */
23
+ label: [];
24
+ /** A slot in front of the label */
25
+ before: [];
26
+ /** A slot after the label */
27
+ after: [];
28
+ }
29
+ export type ToggleFn = (value: boolean) => void;
30
+ export interface PressedButtonArgs {
31
+ push?: ToggleFn;
32
+ pressed?: boolean;
33
+ }
34
+ export declare function pushOrToggle(push?: ToggleFn | CommandAction, press?: boolean): import("ember-command/-private/action").AnyFunction | import("ember-command").Command | import("ember-command").LinkCommand | Link | undefined;
4
35
  //# sourceMappingURL=-button.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"-button.d.ts","sourceRoot":"","sources":["../../../src/components/actions/-button.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAElC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AA4BnD,wBAAgB,MAAM,CAAC,WAAW,CAAC,EAAE,aAAa,GAAG,WAAW,IAAI,IAAI,CAevE"}
1
+ {"version":3,"file":"-button.d.ts","sourceRoot":"","sources":["../../../src/components/actions/-button.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAElC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AACnE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AA4BnD,wBAAgB,MAAM,CAAC,WAAW,CAAC,EAAE,aAAa,GAAG,WAAW,IAAI,IAAI,CAevE;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,YAAY;IAC3B,+BAA+B;IAC/B,OAAO,EAAE,EAAE,CAAC;IAEZ,+BAA+B;IAC/B,KAAK,EAAE,EAAE,CAAC;IAEV,mCAAmC;IACnC,MAAM,EAAE,EAAE,CAAC;IAEX,6BAA6B;IAC7B,KAAK,EAAE,EAAE,CAAC;CACX;AAED,MAAM,MAAM,QAAQ,GAAG,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;AAEhD,MAAM,WAAW,iBAAiB;IAChC,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,wBAAgB,YAAY,CAAC,IAAI,CAAC,EAAE,QAAQ,GAAG,aAAa,EAAE,KAAK,CAAC,EAAE,OAAO,kJAM5E"}
@@ -0,0 +1,10 @@
1
+ import type { TOC } from '@ember/component/template-only';
2
+ type ButtonGroupSignature = {
3
+ Element: HTMLDivElement;
4
+ Blocks: {
5
+ default: [];
6
+ };
7
+ };
8
+ declare const ButtonGroup: TOC<ButtonGroupSignature>;
9
+ export { ButtonGroup };
10
+ //# sourceMappingURL=button-group.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"button-group.d.ts","sourceRoot":"","sources":["../../../src/components/actions/button-group.gts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,gCAAgC,CAAC;AAE1D,KAAK,oBAAoB,GAAG;IAC1B,OAAO,EAAE,cAAc,CAAC;IACxB,MAAM,EAAE;QACN,OAAO,EAAE,EAAE,CAAC;KACb,CAAC;CACH,CAAC;AAEF,QAAA,MAAM,WAAW,EAAE,GAAG,CAAC,oBAAoB,CAczC,CAAC;AAEH,OAAO,EAAE,WAAW,EAAE,CAAC"}
@@ -1,24 +1,14 @@
1
1
  import { type PushArgs } from '../../-private/push';
2
+ import { type ButtonArgs, type ButtonBlocks, type PressedButtonArgs, type ToggleFn } from './-button.ts';
2
3
  import type { TOC } from '@ember/component/template-only';
3
- import type { Importance, Intent, Spacing } from '@hokulea/tokens';
4
+ import type { CommandAction } from 'ember-command';
5
+ import type { Simplify } from 'type-fest';
4
6
  export interface ButtonSignature {
5
7
  Element: HTMLButtonElement | HTMLAnchorElement | HTMLSpanElement;
6
- Args: PushArgs & {
7
- intent?: Intent;
8
- importance?: Importance;
9
- spacing?: Spacing;
10
- disabled?: boolean;
11
- };
12
- Blocks: {
13
- /** The label for the button */
14
- default: [];
15
- /** The label for the button */
16
- label: [];
17
- /** A slot in front of the label */
18
- before: [];
19
- /** A slot after the label */
20
- after: [];
21
- };
8
+ Args: Simplify<Omit<PushArgs, 'push'> & Omit<PressedButtonArgs, 'push'> & ButtonArgs & {
9
+ push?: ToggleFn | CommandAction;
10
+ }>;
11
+ Blocks: ButtonBlocks;
22
12
  }
23
13
  export declare const Button: TOC<ButtonSignature>;
24
14
  //# sourceMappingURL=button.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"button.d.ts","sourceRoot":"","sources":["../../../src/components/actions/button.gts"],"names":[],"mappings":"AA0EA,OAAO,EAAE,KAAK,QAAQ,EAAe,MAAM,yBAAyB,CAAC;AAGrE,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,gCAAgC,CAAC;AAC1D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAEnE,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,iBAAiB,GAAG,iBAAiB,GAAG,eAAe,CAAC;IACjE,IAAI,EAAE,QAAQ,GAAG;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,UAAU,CAAC,EAAE,UAAU,CAAC;QACxB,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;KACpB,CAAC;IACF,MAAM,EAAE;QACN,+BAA+B;QAC/B,OAAO,EAAE,EAAE,CAAC;QAEZ,+BAA+B;QAC/B,KAAK,EAAE,EAAE,CAAC;QAEV,mCAAmC;QACnC,MAAM,EAAE,EAAE,CAAC;QAEX,6BAA6B;QAC7B,KAAK,EAAE,EAAE,CAAC;KACX,CAAC;CACH;AAED,eAAO,MAAM,MAAM,EAAE,GAAG,CAAC,eAAe,CAgEtC,CAAC"}
1
+ {"version":3,"file":"button.d.ts","sourceRoot":"","sources":["../../../src/components/actions/button.gts"],"names":[],"mappings":"AAwEA,OAAO,EAAE,KAAK,QAAQ,EAAe,MAAM,yBAAyB,CAAC;AACrE,OAAO,EACL,KAAK,UAAU,EACf,KAAK,YAAY,EAEjB,KAAK,iBAAiB,EAEtB,KAAK,QAAQ,EACd,MAAM,cAAc,CAAC;AAEtB,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,gCAAgC,CAAC;AAC1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAE1C,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,iBAAiB,GAAG,iBAAiB,GAAG,eAAe,CAAC;IACjE,IAAI,EAAE,QAAQ,CACZ,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,GACpB,IAAI,CAAC,iBAAiB,EAAE,MAAM,CAAC,GAC/B,UAAU,GAAG;QACX,IAAI,CAAC,EAAE,QAAQ,GAAG,aAAa,CAAC;KACjC,CACJ,CAAC;IACF,MAAM,EAAE,YAAY,CAAC;CACtB;AAED,eAAO,MAAM,MAAM,EAAE,GAAG,CAAC,eAAe,CAkEtC,CAAC"}
@@ -1,20 +1,13 @@
1
1
  import Component from '@glimmer/component';
2
2
  import { type PushArgs } from '../../-private/push';
3
- import type { Importance, Intent, Spacing } from '@hokulea/tokens';
3
+ import { type ButtonArgs, type IconButtonArgs, type PressedButtonArgs, type ToggleFn } from './-button.ts';
4
+ import type { CommandAction } from 'ember-command';
5
+ import type { Simplify } from 'type-fest';
4
6
  export interface IconButtonSignature {
5
7
  Element: HTMLButtonElement | HTMLAnchorElement | HTMLSpanElement;
6
- Args: PushArgs & {
7
- intent?: Intent;
8
- importance?: Importance;
9
- spacing?: Spacing;
10
- disabled?: boolean;
11
- label: string;
12
- /**
13
- * A string containing a `<svg>` element.
14
- * Make sure to use `currentColor` to comply with the styling
15
- */
16
- icon: string;
17
- };
8
+ Args: Simplify<Omit<PushArgs, 'push'> & Omit<PressedButtonArgs, 'push'> & ButtonArgs & {
9
+ push?: ToggleFn | CommandAction;
10
+ } & IconButtonArgs>;
18
11
  Blocks: {
19
12
  default: [];
20
13
  };
@@ -1 +1 @@
1
- {"version":3,"file":"icon-button.d.ts","sourceRoot":"","sources":["../../../src/components/actions/icon-button.gts"],"names":[],"mappings":"AA+DA,OAAO,SAAS,MAAM,oBAAoB,CAAC;AAO3C,OAAO,EAAE,KAAK,QAAQ,EAAe,MAAM,yBAAyB,CAAC;AAIrE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAEnE,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,iBAAiB,GAAG,iBAAiB,GAAG,eAAe,CAAC;IACjE,IAAI,EAAE,QAAQ,GAAG;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,UAAU,CAAC,EAAE,UAAU,CAAC;QACxB,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,KAAK,EAAE,MAAM,CAAC;QACd;;;WAGG;QACH,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;IACF,MAAM,EAAE;QACN,OAAO,EAAE,EAAE,CAAC;KACb,CAAC;CACH;AAED,qBAAa,UAAW,SAAQ,SAAS,CAAC,mBAAmB,CAAC;IAC5D,IAAI,KAAK,WASR;CA0CF"}
1
+ {"version":3,"file":"icon-button.d.ts","sourceRoot":"","sources":["../../../src/components/actions/icon-button.gts"],"names":[],"mappings":"AAmEA,OAAO,SAAS,MAAM,oBAAoB,CAAC;AAO3C,OAAO,EAAE,KAAK,QAAQ,EAAe,MAAM,yBAAyB,CAAC;AAErE,OAAO,EACL,KAAK,UAAU,EACf,KAAK,cAAc,EAEnB,KAAK,iBAAiB,EAEtB,KAAK,QAAQ,EACd,MAAM,cAAc,CAAC;AAEtB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAE1C,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,iBAAiB,GAAG,iBAAiB,GAAG,eAAe,CAAC;IACjE,IAAI,EAAE,QAAQ,CACZ,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,GACpB,IAAI,CAAC,iBAAiB,EAAE,MAAM,CAAC,GAC/B,UAAU,GAAG;QACX,IAAI,CAAC,EAAE,QAAQ,GAAG,aAAa,CAAC;KACjC,GAAG,cAAc,CACrB,CAAC;IACF,MAAM,EAAE;QACN,OAAO,EAAE,EAAE,CAAC;KACb,CAAC;CACH;AAED,qBAAa,UAAW,SAAQ,SAAS,CAAC,mBAAmB,CAAC;IAC5D,IAAI,KAAK,WASR;CA4CF"}
@@ -0,0 +1,57 @@
1
+ import Component from '@glimmer/component';
2
+ import type { ButtonArgs, ButtonBlocks, IconButtonArgs } from './-button.ts';
3
+ import type Owner from '@ember/owner';
4
+ import type { WithBoundArgs } from '@glint/template';
5
+ interface RadioArgs<V> {
6
+ value: V;
7
+ register: (button: V) => void;
8
+ unregister: (button: V) => void;
9
+ isSelected: (value: V) => boolean;
10
+ }
11
+ interface RadioButtonSignature<V> {
12
+ Element: HTMLButtonElement;
13
+ Args: ButtonArgs & RadioArgs<V>;
14
+ Blocks: ButtonBlocks;
15
+ }
16
+ declare class RadioButton<V> extends Component<RadioButtonSignature<V>> {
17
+ constructor(owner: Owner, args: RadioButtonSignature<V>['Args']);
18
+ }
19
+ interface RadioIconButtonSignature<V> {
20
+ Element: HTMLButtonElement;
21
+ Args: ButtonArgs & IconButtonArgs & RadioArgs<V>;
22
+ Blocks: ButtonBlocks;
23
+ }
24
+ declare class RadioIconButton<V> extends Component<RadioIconButtonSignature<V>> {
25
+ constructor(owner: Owner, args: RadioIconButtonSignature<V>['Args']);
26
+ get label(): string;
27
+ }
28
+ type RadioButtonGroupSignature<V> = {
29
+ Element: HTMLDivElement;
30
+ Args: {
31
+ value: V;
32
+ update?: (value: V) => void;
33
+ };
34
+ Blocks: {
35
+ default: [
36
+ {
37
+ Button: WithBoundArgs<typeof RadioButton<V>, 'register' | 'unregister' | 'isSelected'>;
38
+ IconButton: WithBoundArgs<typeof RadioIconButton<V>, 'register' | 'unregister' | 'isSelected'>;
39
+ }
40
+ ];
41
+ };
42
+ };
43
+ export declare class RadioButtonGroup<V> extends Component<RadioButtonGroupSignature<V>> {
44
+ Button: {
45
+ new (owner: Owner, args: ButtonArgs & RadioArgs<V>): RadioButton<V>;
46
+ };
47
+ IconButton: {
48
+ new (owner: Owner, args: ButtonArgs & IconButtonArgs & RadioArgs<V>): RadioIconButton<V>;
49
+ };
50
+ items: V[];
51
+ register: (item: V) => void;
52
+ unregister: (item: V) => void;
53
+ isChecked: (value: V) => boolean;
54
+ select: (value: V) => void;
55
+ }
56
+ export {};
57
+ //# sourceMappingURL=radio-button-group.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"radio-button-group.d.ts","sourceRoot":"","sources":["../../../src/components/actions/radio-button-group.gts"],"names":[],"mappings":"AAuMA,OAAO,SAAS,MAAM,oBAAoB,CAAC;AAc3C,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC7E,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAErD,UAAU,SAAS,CAAC,CAAC;IACnB,KAAK,EAAE,CAAC,CAAC;IACT,QAAQ,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,IAAI,CAAC;IAC9B,UAAU,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,IAAI,CAAC;IAChC,UAAU,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,CAAC;CACnC;AAED,UAAU,oBAAoB,CAAC,CAAC;IAC9B,OAAO,EAAE,iBAAiB,CAAC;IAC3B,IAAI,EAAE,UAAU,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;IAChC,MAAM,EAAE,YAAY,CAAC;CACtB;AAED,cAAM,WAAW,CAAC,CAAC,CAAE,SAAQ,SAAS,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC;gBACjD,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,oBAAoB,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;CAyEhE;AAED,UAAU,wBAAwB,CAAC,CAAC;IAClC,OAAO,EAAE,iBAAiB,CAAC;IAC3B,IAAI,EAAE,UAAU,GAAG,cAAc,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;IACjD,MAAM,EAAE,YAAY,CAAC;CACtB;AAED,cAAM,eAAe,CAAC,CAAC,CAAE,SAAQ,SAAS,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC;gBACzD,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,wBAAwB,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IAUnE,IAAI,KAAK,WASR;CA0CF;AAED,KAAK,yBAAyB,CAAC,CAAC,IAAI;IAClC,OAAO,EAAE,cAAc,CAAC;IACxB,IAAI,EAAE;QACJ,KAAK,EAAE,CAAC,CAAC;QACT,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC;KAC7B,CAAC;IACF,MAAM,EAAE;QACN,OAAO,EAAE;YACP;gBACE,MAAM,EAAE,aAAa,CAAC,OAAO,WAAW,CAAC,CAAC,CAAC,EAAE,UAAU,GAAG,YAAY,GAAG,YAAY,CAAC,CAAC;gBACvF,UAAU,EAAE,aAAa,CACvB,OAAO,eAAe,CAAC,CAAC,CAAC,EACzB,UAAU,GAAG,YAAY,GAAG,YAAY,CACzC,CAAC;aACH;SACF,CAAC;KACH,CAAC;CACH,CAAC;AAEF,qBAAa,gBAAgB,CAAC,CAAC,CAAE,SAAQ,SAAS,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC;IAC9E,MAAM;oBArKa,KAAK;MAqKA;IACxB,UAAU;oBApFS,KAAK;MAoFQ;IAEhC,KAAK,EAAE,CAAC,EAAE,CAAsB;IAEhC,QAAQ,GAAI,MAAM,CAAC,UAKjB;IAEF,UAAU,GAAI,MAAM,CAAC,UAKnB;IAEF,SAAS,GAAI,OAAO,CAAC,aAEnB;IAEF,MAAM,GAAI,OAAO,CAAC,UAKhB;CAkBH"}
@@ -0,0 +1,2 @@
1
+ export { ButtonGroup as default } from './actions/button-group';
2
+ //# sourceMappingURL=button-group.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"button-group.d.ts","sourceRoot":"","sources":["../../src/components/button-group.gts"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,IAAI,OAAO,EAAE,MAAM,4BAA4B,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { RadioButtonGroup as default } from './actions/radio-button-group';
2
+ //# sourceMappingURL=radio-button-group.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"radio-button-group.d.ts","sourceRoot":"","sources":["../../src/components/radio-button-group.gts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,IAAI,OAAO,EAAE,MAAM,kCAAkC,CAAC"}
@@ -1,5 +1,7 @@
1
1
  export { Button } from './components/actions/button';
2
+ export { ButtonGroup } from './components/actions/button-group';
2
3
  export { IconButton } from './components/actions/icon-button';
4
+ export { RadioButtonGroup } from './components/actions/radio-button-group';
3
5
  export type { MenuBuilder } from './components/controls/-menu';
4
6
  export { Checkbox } from './components/controls/checkbox';
5
7
  export { CurrencyInput } from './components/controls/currency-input';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,iCAAiC,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,sCAAsC,CAAC;AAGlE,YAAY,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,QAAQ,EAAE,MAAM,oCAAoC,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,0CAA0C,CAAC;AACzE,OAAO,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,uCAAuC,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAC;AACvE,OAAO,EAAE,IAAI,EAAE,MAAM,gCAAgC,CAAC;AACtD,OAAO,EAAE,IAAI,EAAE,MAAM,gCAAgC,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,wCAAwC,CAAC;AACrE,OAAO,EAAE,aAAa,EAAE,MAAM,0CAA0C,CAAC;AACzE,OAAO,EAAE,UAAU,EAAE,MAAM,uCAAuC,CAAC;AACnE,OAAO,EAAE,KAAK,EAAE,MAAM,iCAAiC,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,uCAAuC,CAAC;AACnE,OAAO,EAAE,MAAM,EAAE,MAAM,kCAAkC,CAAC;AAC1D,OAAO,EAAE,IAAI,EAAE,MAAM,gCAAgC,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAC;AAC/D,OAAO,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAC;AAGjE,OAAO,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAC;AAG7D,OAAO,EAAE,KAAK,EAAE,MAAM,iCAAiC,CAAC;AAGxD,YAAY,EACV,sBAAsB,EACtB,WAAW,EACX,qBAAqB,EACrB,aAAa,EACb,gBAAgB,EAChB,gBAAgB,EACjB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,IAAI,EAAE,MAAM,4BAA4B,CAAC;AAGlD,OAAO,EAAE,MAAM,EAAE,MAAM,kCAAkC,CAAC;AAC1D,YAAY,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAE,IAAI,EAAE,MAAM,gCAAgC,CAAC;AAGtD,OAAO,EAAE,SAAS,EAAE,MAAM,wCAAwC,CAAC;AACnE,OAAO,EAAE,IAAI,EAAE,MAAM,kCAAkC,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,6CAA6C,CAAC;AAC7E,OAAO,EAAE,UAAU,EAAE,MAAM,wCAAwC,CAAC;AACpE,OAAO,EAAE,MAAM,EAAE,MAAM,qCAAqC,CAAC;AAG7D,OAAO,EAAE,SAAS,EAAE,MAAM,qCAAqC,CAAC;AAChE,OAAO,EAAE,IAAI,EAAE,MAAM,+BAA+B,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAC;AAGxE,OAAO,EAAE,GAAG,EAAE,MAAM,8BAA8B,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,+BAA+B,CAAC;AACrD,OAAO,EAAE,OAAO,EAAE,MAAM,kCAAkC,CAAC;AAG3D,OAAO,EAAE,OAAO,EAAE,MAAM,kCAAkC,CAAC;AAC3D,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAG/C,OAAO;AACL,gBAAgB;AAChB,OAAO,IAAI,cAAc,EAC1B,MAAM,wBAAwB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,iCAAiC,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,uCAAuC,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,sCAAsC,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,6CAA6C,CAAC;AAG/E,YAAY,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,QAAQ,EAAE,MAAM,oCAAoC,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,0CAA0C,CAAC;AACzE,OAAO,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,uCAAuC,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAC;AACvE,OAAO,EAAE,IAAI,EAAE,MAAM,gCAAgC,CAAC;AACtD,OAAO,EAAE,IAAI,EAAE,MAAM,gCAAgC,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,wCAAwC,CAAC;AACrE,OAAO,EAAE,aAAa,EAAE,MAAM,0CAA0C,CAAC;AACzE,OAAO,EAAE,UAAU,EAAE,MAAM,uCAAuC,CAAC;AACnE,OAAO,EAAE,KAAK,EAAE,MAAM,iCAAiC,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,uCAAuC,CAAC;AACnE,OAAO,EAAE,MAAM,EAAE,MAAM,kCAAkC,CAAC;AAC1D,OAAO,EAAE,IAAI,EAAE,MAAM,gCAAgC,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAC;AAC/D,OAAO,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAC;AAGjE,OAAO,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAC;AAG7D,OAAO,EAAE,KAAK,EAAE,MAAM,iCAAiC,CAAC;AAGxD,YAAY,EACV,sBAAsB,EACtB,WAAW,EACX,qBAAqB,EACrB,aAAa,EACb,gBAAgB,EAChB,gBAAgB,EACjB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,IAAI,EAAE,MAAM,4BAA4B,CAAC;AAGlD,OAAO,EAAE,MAAM,EAAE,MAAM,kCAAkC,CAAC;AAC1D,YAAY,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAE,IAAI,EAAE,MAAM,gCAAgC,CAAC;AAGtD,OAAO,EAAE,SAAS,EAAE,MAAM,wCAAwC,CAAC;AACnE,OAAO,EAAE,IAAI,EAAE,MAAM,kCAAkC,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,6CAA6C,CAAC;AAC7E,OAAO,EAAE,UAAU,EAAE,MAAM,wCAAwC,CAAC;AACpE,OAAO,EAAE,MAAM,EAAE,MAAM,qCAAqC,CAAC;AAG7D,OAAO,EAAE,SAAS,EAAE,MAAM,qCAAqC,CAAC;AAChE,OAAO,EAAE,IAAI,EAAE,MAAM,+BAA+B,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAC;AAGxE,OAAO,EAAE,GAAG,EAAE,MAAM,8BAA8B,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,+BAA+B,CAAC;AACrD,OAAO,EAAE,OAAO,EAAE,MAAM,kCAAkC,CAAC;AAG3D,OAAO,EAAE,OAAO,EAAE,MAAM,kCAAkC,CAAC;AAC3D,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAG/C,OAAO;AACL,gBAAgB;AAChB,OAAO,IAAI,cAAc,EAC1B,MAAM,wBAAwB,CAAC"}
@@ -1,5 +1,7 @@
1
1
  import type { Button } from './components/actions/button';
2
+ import type { ButtonGroup } from './components/actions/button-group';
2
3
  import type { IconButton } from './components/actions/icon-button';
4
+ import type { RadioButtonGroup } from './components/actions/radio-button-group';
3
5
  import type Avatar from './components/avatar';
4
6
  import type { Box } from './components/content/box';
5
7
  import type { Card } from './components/content/card';
@@ -36,6 +38,8 @@ import type { popover } from './helpers/popover.ts';
36
38
  export default interface HokuleaRegistry {
37
39
  Button: typeof Button;
38
40
  IconButton: typeof IconButton;
41
+ ButtonGroup: typeof ButtonGroup;
42
+ RadioButtonGroup: typeof RadioButtonGroup;
39
43
  Box: typeof Box;
40
44
  Card: typeof Card;
41
45
  Section: typeof Section;
@@ -1 +1 @@
1
- {"version":3,"file":"template-registry.d.ts","sourceRoot":"","sources":["../src/template-registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"template-registry.d.ts","sourceRoot":"","sources":["../src/template-registry.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ export { AlertPageObject } from './page-objects/alert.ts';
2
2
  export { AppHeaderPageObject } from './page-objects/app-header.ts';
3
3
  export { AvatarPageObject } from './page-objects/avatar.ts';
4
4
  export { ButtonPageObject } from './page-objects/button.ts';
5
+ export { ButtonGroupPageObject } from './page-objects/button-group.ts';
5
6
  export { CheckboxPageObject, RadioPageObject } from './page-objects/choice.ts';
6
7
  export { DataTablePageObject } from './page-objects/data-table.ts';
7
8
  export { type FieldError, FormPageObject, type OptionPageObject } from './page-objects/form.ts';
@@ -17,6 +18,7 @@ export { PagePageObject, SectionedPagePageObject } from './page-objects/page.ts'
17
18
  export { PaginationPageObject } from './page-objects/pagination.ts';
18
19
  export { PillButtonPageObject } from './page-objects/pill-button.ts';
19
20
  export { PopoverPageObject } from './page-objects/popover.ts';
21
+ export { RadioButtonGroupPageObject } from './page-objects/radio-button-group.ts';
20
22
  export { SectionPageObject } from './page-objects/section.ts';
21
23
  export { SelectPageObject } from './page-objects/select.ts';
22
24
  export { TabNavPageObject } from './page-objects/tab-nav.ts';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/test-support/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC/E,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAAE,KAAK,UAAU,EAAE,cAAc,EAAE,KAAK,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAChG,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EACL,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,uBAAuB,EACvB,oBAAoB,EACpB,oBAAoB,EACpB,mBAAmB,EACpB,MAAM,yBAAyB,CAAC;AACjC,YAAY,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAC9E,OAAO,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAAE,cAAc,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACjF,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/test-support/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AACvE,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC/E,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAAE,KAAK,UAAU,EAAE,cAAc,EAAE,KAAK,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAChG,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EACL,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,uBAAuB,EACvB,oBAAoB,EACpB,oBAAoB,EACpB,mBAAmB,EACpB,MAAM,yBAAyB,CAAC;AACjC,YAAY,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAC9E,OAAO,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAAE,cAAc,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACjF,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,0BAA0B,EAAE,MAAM,sCAAsC,CAAC;AAClF,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { PageObject } from 'fractal-page-object';
2
+ import { ButtonPageObject } from './button.ts';
3
+ import type { ElementLike } from 'fractal-page-object';
4
+ export declare class ButtonGroupPageObject extends PageObject<HTMLDivElement> {
5
+ static SELECTOR: string;
6
+ constructor(selector?: string, parent?: PageObject | ElementLike | null, index?: number | null);
7
+ $button: ButtonPageObject;
8
+ }
9
+ //# sourceMappingURL=button-group.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"button-group.d.ts","sourceRoot":"","sources":["../../../src/test-support/page-objects/button-group.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAmB,MAAM,qBAAqB,CAAC;AAElE,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAE/C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAEvD,qBAAa,qBAAsB,SAAQ,UAAU,CAAC,cAAc,CAAC;IACnE,MAAM,CAAC,QAAQ,SAA8B;gBAEjC,QAAQ,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,UAAU,GAAG,WAAW,GAAG,IAAI,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IAI9F,OAAO,mBAAoD;CAC5D"}
@@ -1 +1 @@
1
- {"version":3,"file":"button.d.ts","sourceRoot":"","sources":["../../../src/test-support/page-objects/button.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAmB,MAAM,qBAAqB,CAAC;AAElE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAEvD,qBAAa,gBAAiB,SAAQ,UAAU,CAC9C,iBAAiB,GAAG,iBAAiB,GAAG,eAAe,CACxD;IACC,MAAM,CAAC,QAAQ,SAAwB;gBAE3B,QAAQ,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,UAAU,GAAG,WAAW,GAAG,IAAI,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IAI9F,IAAI,MAAM,IAAI,MAAM,GAAG,IAAI,GAAG,SAAS,CAEtC;IAED,IAAI,UAAU,IAAI,MAAM,GAAG,IAAI,GAAG,SAAS,CAE1C;IAED,IAAI,OAAO,IAAI,MAAM,GAAG,IAAI,GAAG,SAAS,CAEvC;IAED,OAAO,8BAAuD;IAC9D,MAAM,8BAAsD;IAC5D,MAAM,8BAAsD;IAEtD,IAAI;CAKX"}
1
+ {"version":3,"file":"button.d.ts","sourceRoot":"","sources":["../../../src/test-support/page-objects/button.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAmB,MAAM,qBAAqB,CAAC;AAElE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAEvD,qBAAa,gBAAiB,SAAQ,UAAU,CAC9C,iBAAiB,GAAG,iBAAiB,GAAG,eAAe,CACxD;IACC,MAAM,CAAC,QAAQ,SAA2B;gBAE9B,QAAQ,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,UAAU,GAAG,WAAW,GAAG,IAAI,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IAI9F,IAAI,MAAM,IAAI,MAAM,GAAG,IAAI,GAAG,SAAS,CAEtC;IAED,IAAI,UAAU,IAAI,MAAM,GAAG,IAAI,GAAG,SAAS,CAE1C;IAED,IAAI,OAAO,IAAI,MAAM,GAAG,IAAI,GAAG,SAAS,CAEvC;IAED,OAAO,8BAAuD;IAC9D,MAAM,8BAAsD;IAC5D,MAAM,8BAAsD;IAEtD,IAAI;CAKX"}
@@ -0,0 +1,33 @@
1
+ import { PageObject } from 'fractal-page-object';
2
+ import type { ElementLike } from 'fractal-page-object';
3
+ export declare class RadioButtonGroupPageObject extends PageObject<HTMLDivElement> {
4
+ static SELECTOR: string;
5
+ constructor(selector?: string, parent?: PageObject | ElementLike | null, index?: number | null);
6
+ $option: {
7
+ readonly [n: number]: /*elided*/ any;
8
+ get checked(): string | null | undefined;
9
+ get element(): HTMLButtonElement | null;
10
+ get elements(): HTMLButtonElement[];
11
+ readonly __dom_element_descriptor_is_descriptor__: true;
12
+ readonly length: number;
13
+ pop: () => import("fractal-page-object").WithElement</*elided*/ any, HTMLButtonElement> | undefined;
14
+ reverse: () => import("fractal-page-object").WithElement</*elided*/ any, HTMLButtonElement>[];
15
+ shift: () => import("fractal-page-object").WithElement</*elided*/ any, HTMLButtonElement> | undefined;
16
+ slice: (_start?: number, _end?: number) => import("fractal-page-object").WithElement</*elided*/ any, HTMLButtonElement>[];
17
+ sort: (_compareFn?: ((a: import("fractal-page-object").WithElement</*elided*/ any, HTMLButtonElement>, b: import("fractal-page-object").WithElement</*elided*/ any, HTMLButtonElement>) => number) | undefined) => /*elided*/ any[];
18
+ every: (predicate: (value: import("fractal-page-object").WithElement</*elided*/ any, HTMLButtonElement>, index: number, array: import("fractal-page-object").WithElement</*elided*/ any, HTMLButtonElement>[]) => unknown, _thisArg?: any) => boolean;
19
+ some: (_predicate: (value: import("fractal-page-object").WithElement</*elided*/ any, HTMLButtonElement>, index: number, array: import("fractal-page-object").WithElement</*elided*/ any, HTMLButtonElement>[]) => unknown, _thisArg?: any) => boolean;
20
+ forEach: (_callbackfn: (value: import("fractal-page-object").WithElement</*elided*/ any, HTMLButtonElement>, index: number, array: import("fractal-page-object").WithElement</*elided*/ any, HTMLButtonElement>[]) => void, _thisArg?: any) => void;
21
+ map: <U>(_callbackfn: (value: import("fractal-page-object").WithElement</*elided*/ any, HTMLButtonElement>, index: number, array: import("fractal-page-object").WithElement</*elided*/ any, HTMLButtonElement>[]) => U, _thisArg?: any) => U[];
22
+ filter: (predicate: (value: import("fractal-page-object").WithElement</*elided*/ any, HTMLButtonElement>, index: number, array: import("fractal-page-object").WithElement</*elided*/ any, HTMLButtonElement>[]) => unknown, thisArg?: any) => import("fractal-page-object").WithElement</*elided*/ any, HTMLButtonElement>[];
23
+ reduce: <U>(_callbackfn: (previousValue: U, currentValue: import("fractal-page-object").WithElement</*elided*/ any, HTMLButtonElement>, currentIndex: number, array: import("fractal-page-object").WithElement</*elided*/ any, HTMLButtonElement>[]) => U, initialValue: U) => U;
24
+ reduceRight: <U>(_callbackfn: (previousValue: U, currentValue: import("fractal-page-object").WithElement</*elided*/ any, HTMLButtonElement>, currentIndex: number, array: import("fractal-page-object").WithElement</*elided*/ any, HTMLButtonElement>[]) => U, initialValue: U) => U;
25
+ find: (predicate: (value: import("fractal-page-object").WithElement</*elided*/ any, HTMLButtonElement>, index: number, obj: import("fractal-page-object").WithElement</*elided*/ any, HTMLButtonElement>[]) => unknown, thisArg?: any) => import("fractal-page-object").WithElement</*elided*/ any, HTMLButtonElement> | undefined;
26
+ findIndex: (_predicate: (value: import("fractal-page-object").WithElement</*elided*/ any, HTMLButtonElement>, index: number, obj: import("fractal-page-object").WithElement</*elided*/ any, HTMLButtonElement>[]) => unknown, _thisArg?: any) => number;
27
+ entries: () => IterableIterator<[number, import("fractal-page-object").WithElement</*elided*/ any, HTMLButtonElement>]>;
28
+ keys: () => IterableIterator<number>;
29
+ values: () => IterableIterator<import("fractal-page-object").WithElement</*elided*/ any, HTMLButtonElement>>;
30
+ [Symbol.iterator]: () => IterableIterator<import("fractal-page-object").WithElement</*elided*/ any, HTMLButtonElement>>;
31
+ };
32
+ }
33
+ //# sourceMappingURL=radio-button-group.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"radio-button-group.d.ts","sourceRoot":"","sources":["../../../src/test-support/page-objects/radio-button-group.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAmB,MAAM,qBAAqB,CAAC;AAElE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAEvD,qBAAa,0BAA2B,SAAQ,UAAU,CAAC,cAAc,CAAC;IACxE,MAAM,CAAC,QAAQ,SAAyB;gBAE5B,QAAQ,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,UAAU,GAAG,WAAW,GAAG,IAAI,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IAI9F,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;MAOL;CACH"}
@@ -27,6 +27,12 @@ function isLink(commandable) {
27
27
  // so, there is another duck-type check for the link
28
28
  return commandable instanceof Link || LINK_PROPERTIES.every(prop => props.includes(prop));
29
29
  }
30
+ function pushOrToggle(push, press) {
31
+ if (press !== undefined) {
32
+ return () => push(!press);
33
+ }
34
+ return push;
35
+ }
30
36
 
31
- export { isLink as i };
32
- //# sourceMappingURL=-button-KUaJCQaB.js.map
37
+ export { isLink as i, pushOrToggle as p };
38
+ //# sourceMappingURL=-button-zstwNwHq.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"-button-zstwNwHq.js","sources":["../src/components/actions/-button.ts"],"sourcesContent":["import { Link } from 'ember-link';\n\nimport type { Importance, Intent, Spacing } from '@hokulea/tokens';\nimport type { CommandAction } from 'ember-command';\n\nconst LINK_PROPERTIES = [\n 'active',\n 'activeWithoutModels',\n 'activeWithoutQueryParams',\n 'entering',\n 'exiting',\n // 'open', // as of `ember-link@3`\n 'transitionTo',\n 'replaceWith',\n 'qualifiedRouteName',\n 'url',\n 'models',\n 'queryParams'\n];\n\nfunction getAllPropertyNames(obj: object) {\n const names: string[] = [];\n\n do {\n names.push(...Object.getOwnPropertyNames(obj));\n obj = Object.getPrototypeOf(obj) as object;\n } while (obj !== Object.prototype);\n\n return names.filter((name) => name !== 'constructor');\n}\n\nexport function isLink(commandable?: CommandAction): commandable is Link {\n if (commandable === undefined) {\n return false;\n }\n\n // `instanceOf` is not a reliable check, only when the host app runs with\n // embroider. In classic mode, the ember-link instance in the host app and in\n // ember-command addon are different and the check will fail, so this performs\n // some duck-type check\n const props = getAllPropertyNames(commandable);\n\n // the first check should be sufficient enough, but isn't due to:\n // https://github.com/gossi/ember-command/issues/23\n // so, there is another duck-type check for the link\n return commandable instanceof Link || LINK_PROPERTIES.every((prop) => props.includes(prop));\n}\n\nexport interface ButtonArgs {\n intent?: Intent;\n importance?: Importance;\n spacing?: Spacing;\n disabled?: boolean;\n}\n\nexport interface IconButtonArgs {\n label: string;\n /**\n * A string containing a `<svg>` element.\n * Make sure to use `currentColor` to comply with the styling\n */\n icon: string;\n}\n\nexport interface ButtonBlocks {\n /** The label for the button */\n default: [];\n\n /** The label for the button */\n label: [];\n\n /** A slot in front of the label */\n before: [];\n\n /** A slot after the label */\n after: [];\n}\n\nexport type ToggleFn = (value: boolean) => void;\n\nexport interface PressedButtonArgs {\n push?: ToggleFn;\n pressed?: boolean;\n}\n\nexport function pushOrToggle(push?: ToggleFn | CommandAction, press?: boolean) {\n if (press !== undefined) {\n return () => (push as ToggleFn)(!press);\n }\n\n return push;\n}\n"],"names":["LINK_PROPERTIES","getAllPropertyNames","obj","names","push","Object","getOwnPropertyNames","getPrototypeOf","prototype","filter","name","isLink","commandable","undefined","props","Link","every","prop","includes","pushOrToggle","press"],"mappings":";;AAKA,MAAMA,eAAe,GAAG,CACtB,QAAQ,EACR,qBAAqB,EACrB,0BAA0B,EAC1B,UAAU,EACV,SAAS;AACT;AACA,cAAc,EACd,aAAa,EACb,oBAAoB,EACpB,KAAK,EACL,QAAQ,EACR,aAAa,CACd;AAED,SAASC,mBAAmBA,CAACC,GAAW,EAAE;EACxC,MAAMC,KAAe,GAAG,EAAE;EAE1B,GAAG;IACDA,KAAK,CAACC,IAAI,CAAC,GAAGC,MAAM,CAACC,mBAAmB,CAACJ,GAAG,CAAC,CAAC;AAC9CA,IAAAA,GAAG,GAAGG,MAAM,CAACE,cAAc,CAACL,GAAG,CAAW;AAC5C,EAAA,CAAC,QAAQA,GAAG,KAAKG,MAAM,CAACG,SAAS;EAEjC,OAAOL,KAAK,CAACM,MAAM,CAAEC,IAAI,IAAKA,IAAI,KAAK,aAAa,CAAC;AACvD;AAEO,SAASC,MAAMA,CAACC,WAA2B,EAAuB;EACvE,IAAIA,WAAW,KAAKC,SAAS,EAAE;AAC7B,IAAA,OAAO,KAAK;AACd,EAAA;;AAEA;AACA;AACA;AACA;AACA,EAAA,MAAMC,KAAK,GAAGb,mBAAmB,CAACW,WAAW,CAAC;;AAE9C;AACA;AACA;AACA,EAAA,OAAOA,WAAW,YAAYG,IAAI,IAAIf,eAAe,CAACgB,KAAK,CAAEC,IAAI,IAAKH,KAAK,CAACI,QAAQ,CAACD,IAAI,CAAC,CAAC;AAC7F;AAuCO,SAASE,YAAYA,CAACf,IAA+B,EAAEgB,KAAe,EAAE;EAC7E,IAAIA,KAAK,KAAKP,SAAS,EAAE;AACvB,IAAA,OAAO,MAAOT,IAAI,CAAc,CAACgB,KAAK,CAAC;AACzC,EAAA;AAEA,EAAA,OAAOhB,IAAI;AACb;;;;"}
@@ -0,0 +1 @@
1
+ export { default } from "@hokulea/ember/components/button-group";
@@ -0,0 +1 @@
1
+ export { default } from "@hokulea/ember/components/radio-button-group";
@@ -7,7 +7,7 @@ import { timeout } from 'ember-concurrency';
7
7
  import { modifier } from 'ember-modifier';
8
8
  import { a as and, n as not, o as or } from './helpers-D4So5-uK.js';
9
9
  import popover from './helpers/popover.js';
10
- import { I as IconButton } from './icon-button-ClE5SC8Y.js';
10
+ import { I as IconButton } from './icon-button-C1YrOLFe.js';
11
11
  import { M as Menu } from './menu-Dcc72jZp.js';
12
12
  import { N as NavLink } from './nav-link-KZJghY_q.js';
13
13
  import { precompileTemplate } from '@ember/template-compilation';
@@ -112,4 +112,4 @@ class AppHeader extends Component {
112
112
  }
113
113
 
114
114
  export { AppHeader as A };
115
- //# sourceMappingURL=app-header-B9BWy4HI.js.map
115
+ //# sourceMappingURL=app-header-zFoKDgm0.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"app-header-B9BWy4HI.js","sources":["../src/components/navigation/app-header.gts"],"sourcesContent":["import Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\nimport { hash, uniqueId } from '@ember/helper';\n\nimport { type CommandAction, CommandElement } from 'ember-command';\nimport { keepLatestTask, timeout } from 'ember-concurrency';\nimport { modifier } from 'ember-modifier';\n\nimport { and, not, or } from '../../-private/helpers.ts';\nimport { popover } from '../../helpers/popover.ts';\nimport { IconButton } from '../actions/icon-button.gts';\nimport { Menu } from '../controls/menu.gts';\nimport { NavLink } from './nav-link.gts';\n\nimport type { MenuItemArgs, MenuItemSignature } from '../controls/-menu.gts';\nimport type { TOC } from '@ember/component/template-only';\nimport type { ComponentLike } from '@glint/template';\nimport type { PositionArea } from '#src/helpers/-position.ts';\n\ninterface NavItemSignature extends MenuItemSignature {\n Args: MenuItemArgs & {\n position?: PositionArea;\n };\n}\n\nconst NavItem: TOC<NavItemSignature> = <template>\n {{#if (has-block)}}\n <NavLink @push={{@push}} @href={{@href}}>{{yield}}</NavLink>\n {{else if (and (has-block \"menu\") (has-block \"label\"))}}\n {{#let (popover position=(if @position @position \"bottom span-right\")) as |p|}}\n <button type=\"button\" aria-haspopup=\"menu\" part=\"item\" {{p.trigger}}>\n <span>{{yield to=\"label\"}}</span>\n </button>\n\n <Menu {{p.target}} as |m|>\n {{yield m to=\"menu\"}}\n </Menu>\n {{/let}}\n {{/if}}\n</template>;\n\nconst PopoverNavItem: TOC<NavItemSignature> = <template>\n {{#if (has-block)}}\n <NavLink @push={{@push}} @href={{@href}}>{{yield}}</NavLink>\n {{else if (and (has-block \"menu\") (has-block \"label\"))}}\n <details>\n <summary part=\"item\">{{yield to=\"label\"}}</summary>\n\n <div>\n {{yield (hash Item=PopoverNavItem) to=\"menu\"}}\n </div>\n </details>\n {{/if}}\n</template>;\n\nconst CloseIcon =\n '<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"256\" height=\"256\" viewBox=\"0 0 256 256\"><path fill=\"currentColor\" d=\"M205.66 194.34a8 8 0 0 1-11.32 11.32L128 139.31l-66.34 66.35a8 8 0 0 1-11.32-11.32L116.69 128L50.34 61.66a8 8 0 0 1 11.32-11.32L128 116.69l66.34-66.35a8 8 0 0 1 11.32 11.32L139.31 128Z\"/></svg>';\nconst ListIcon =\n '<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"256\" height=\"256\" viewBox=\"0 0 256 256\"><path fill=\"currentColor\" d=\"M224 128a8 8 0 0 1-8 8H40a8 8 0 0 1 0-16h176a8 8 0 0 1 8 8M40 72h176a8 8 0 0 0 0-16H40a8 8 0 0 0 0 16m176 112H40a8 8 0 0 0 0 16h176a8 8 0 0 0 0-16\"/></svg>';\n\ninterface AppHeaderSignature {\n Element: HTMLElement;\n Args: {\n /**\n * Position of the navbar\n *\n * @default start\n */\n position?: 'start' | 'center' | 'end';\n\n home?: CommandAction;\n };\n Blocks: {\n brand?: [];\n nav?: [{ Item: typeof NavItem }];\n aux?: [{ Item: ComponentLike<typeof NavItem> }];\n };\n}\n\nexport class AppHeader extends Component<AppHeaderSignature> {\n @tracked topNavShown = true;\n @tracked sensing = false;\n\n detectOverflow = keepLatestTask(async (element: HTMLElement) => {\n await timeout(30);\n\n this.sensing = true;\n\n // wait till sensing is flushed to the browser and made elements visible\n await timeout(0);\n\n const relevantChildren = [...element.children].filter(\n (elem) => elem.tagName.toLowerCase() === 'nav' || elem.getAttribute('part') === 'aux'\n );\n\n if (relevantChildren.length === 0) {\n this.sensing = false;\n\n return;\n }\n\n let headerWidth = [...element.children]\n .filter((elem) => elem.getAttribute('part') !== 'menu')\n .map((e) => Math.floor(e.scrollWidth))\n .reduce((sum, elemWidth) => sum + elemWidth, 0);\n\n // + padding\n headerWidth +=\n Number.parseInt(getComputedStyle(element).getPropertyValue('padding-inline'), 10) * 2;\n\n // + gap\n headerWidth +=\n Number.parseInt(getComputedStyle(element).getPropertyValue('gap'), 10) *\n (element.childElementCount - 1);\n\n this.topNavShown = element.clientWidth >= headerWidth;\n this.sensing = false;\n });\n\n flipflop = modifier((element: HTMLElement) => {\n const sensor = () => this.detectOverflow.perform(element);\n\n void sensor();\n // eslint-disable-next-line @typescript-eslint/no-misused-promises\n window.addEventListener('resize', sensor);\n\n return () => {\n // eslint-disable-next-line @typescript-eslint/no-misused-promises\n window.removeEventListener('resize', sensor);\n };\n });\n\n closeWhenLink = modifier((element: HTMLElement) => {\n const checkForClose = (event: Event) => {\n const hitALink = event\n .composedPath()\n .some(\n (target: EventTarget) =>\n (target as HTMLElement | null)?.tagName &&\n ['a', 'button'].includes((target as HTMLElement).tagName.toLowerCase()) &&\n !(target as HTMLElement).getAttribute('aria-haspopup')\n );\n\n if (hitALink) {\n element.hidePopover();\n }\n };\n\n element.addEventListener('click', checkForClose);\n\n return () => {\n element.removeEventListener('click', checkForClose);\n };\n });\n\n <template>\n {{#let (uniqueId) as |brandId|}}\n <header class=\"app-header\" data-test-app-header ...attributes>\n <div data-sensing={{this.sensing}} {{this.flipflop}}>\n {{#if (has-block \"brand\")}}\n <CommandElement @command={{@home}} part=\"brand\" id={{brandId}}>\n <span>{{yield to=\"brand\"}}</span>\n </CommandElement>\n {{/if}}\n\n {{#if (or this.topNavShown this.sensing)}}\n <nav data-position={{if @position @position}} aria-labelledby={{brandId}}>\n {{yield (hash Item=NavItem) to=\"nav\"}}\n </nav>\n\n {{#if (has-block \"aux\")}}\n <span part=\"aux\">\n {{yield (hash Item=NavItem) to=\"aux\"}}\n </span>\n {{/if}}\n {{/if}}\n\n {{#if (not this.topNavShown)}}\n <span part=\"menu\">\n {{#let (popover) as |p|}}\n <IconButton\n @importance=\"plain\"\n @icon={{if p.opened CloseIcon ListIcon}}\n {{p.trigger}}\n data-test-toggle\n @label=\"toggle\"\n />\n\n <div popover {{p.target}} {{this.closeWhenLink}}>\n <div data-menu-header>\n {{#if (has-block \"brand\")}}\n <span part=\"brand\">\n {{yield to=\"brand\"}}\n </span>\n {{/if}}\n </div>\n\n <div data-menu-content>\n {{! template-lint-disable no-duplicate-landmark-elements }}\n <nav aria-labelledby={{brandId}}>\n {{yield (hash Item=PopoverNavItem) to=\"nav\"}}\n </nav>\n {{! template-lint-enable no-duplicate-landmark-elements }}\n\n {{#if (has-block \"aux\")}}\n <span part=\"aux\">\n {{yield (hash Item=(component NavItem position=\"top span-right\")) to=\"aux\"}}\n </span>\n {{/if}}\n </div>\n </div>\n {{/let}}\n </span>\n {{/if}}\n </div>\n </header>\n {{/let}}\n </template>\n}\n"],"names":["NavItem","setComponentTemplate","precompileTemplate","strictMode","scope","NavLink","and","popover","Menu","templateOnly","PopoverNavItem","hash","CloseIcon","ListIcon","AppHeader","Component","g","prototype","tracked","i","void 0","detectOverflow","_buildTask","context","generator","element","timeout","sensing","relevantChildren","children","filter","elem","tagName","toLowerCase","getAttribute","length","headerWidth","map","e","Math","floor","scrollWidth","reduce","sum","elemWidth","Number","parseInt","getComputedStyle","getPropertyValue","childElementCount","topNavShown","clientWidth","flipflop","modifier","sensor","perform","window","addEventListener","removeEventListener","closeWhenLink","checkForClose","event","hitALink","composedPath","some","target","includes","hidePopover","uniqueId","CommandElement","or","not","IconButton"],"mappings":"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"}
1
+ {"version":3,"file":"app-header-zFoKDgm0.js","sources":["../src/components/navigation/app-header.gts"],"sourcesContent":["import Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\nimport { hash, uniqueId } from '@ember/helper';\n\nimport { type CommandAction, CommandElement } from 'ember-command';\nimport { keepLatestTask, timeout } from 'ember-concurrency';\nimport { modifier } from 'ember-modifier';\n\nimport { and, not, or } from '../../-private/helpers.ts';\nimport { popover } from '../../helpers/popover.ts';\nimport { IconButton } from '../actions/icon-button.gts';\nimport { Menu } from '../controls/menu.gts';\nimport { NavLink } from './nav-link.gts';\n\nimport type { MenuItemArgs, MenuItemSignature } from '../controls/-menu.gts';\nimport type { TOC } from '@ember/component/template-only';\nimport type { ComponentLike } from '@glint/template';\nimport type { PositionArea } from '#src/helpers/-position.ts';\n\ninterface NavItemSignature extends MenuItemSignature {\n Args: MenuItemArgs & {\n position?: PositionArea;\n };\n}\n\nconst NavItem: TOC<NavItemSignature> = <template>\n {{#if (has-block)}}\n <NavLink @push={{@push}} @href={{@href}}>{{yield}}</NavLink>\n {{else if (and (has-block \"menu\") (has-block \"label\"))}}\n {{#let (popover position=(if @position @position \"bottom span-right\")) as |p|}}\n <button type=\"button\" aria-haspopup=\"menu\" part=\"item\" {{p.trigger}}>\n <span>{{yield to=\"label\"}}</span>\n </button>\n\n <Menu {{p.target}} as |m|>\n {{yield m to=\"menu\"}}\n </Menu>\n {{/let}}\n {{/if}}\n</template>;\n\nconst PopoverNavItem: TOC<NavItemSignature> = <template>\n {{#if (has-block)}}\n <NavLink @push={{@push}} @href={{@href}}>{{yield}}</NavLink>\n {{else if (and (has-block \"menu\") (has-block \"label\"))}}\n <details>\n <summary part=\"item\">{{yield to=\"label\"}}</summary>\n\n <div>\n {{yield (hash Item=PopoverNavItem) to=\"menu\"}}\n </div>\n </details>\n {{/if}}\n</template>;\n\nconst CloseIcon =\n '<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"256\" height=\"256\" viewBox=\"0 0 256 256\"><path fill=\"currentColor\" d=\"M205.66 194.34a8 8 0 0 1-11.32 11.32L128 139.31l-66.34 66.35a8 8 0 0 1-11.32-11.32L116.69 128L50.34 61.66a8 8 0 0 1 11.32-11.32L128 116.69l66.34-66.35a8 8 0 0 1 11.32 11.32L139.31 128Z\"/></svg>';\nconst ListIcon =\n '<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"256\" height=\"256\" viewBox=\"0 0 256 256\"><path fill=\"currentColor\" d=\"M224 128a8 8 0 0 1-8 8H40a8 8 0 0 1 0-16h176a8 8 0 0 1 8 8M40 72h176a8 8 0 0 0 0-16H40a8 8 0 0 0 0 16m176 112H40a8 8 0 0 0 0 16h176a8 8 0 0 0 0-16\"/></svg>';\n\ninterface AppHeaderSignature {\n Element: HTMLElement;\n Args: {\n /**\n * Position of the navbar\n *\n * @default start\n */\n position?: 'start' | 'center' | 'end';\n\n home?: CommandAction;\n };\n Blocks: {\n brand?: [];\n nav?: [{ Item: typeof NavItem }];\n aux?: [{ Item: ComponentLike<typeof NavItem> }];\n };\n}\n\nexport class AppHeader extends Component<AppHeaderSignature> {\n @tracked topNavShown = true;\n @tracked sensing = false;\n\n detectOverflow = keepLatestTask(async (element: HTMLElement) => {\n await timeout(30);\n\n this.sensing = true;\n\n // wait till sensing is flushed to the browser and made elements visible\n await timeout(0);\n\n const relevantChildren = [...element.children].filter(\n (elem) => elem.tagName.toLowerCase() === 'nav' || elem.getAttribute('part') === 'aux'\n );\n\n if (relevantChildren.length === 0) {\n this.sensing = false;\n\n return;\n }\n\n let headerWidth = [...element.children]\n .filter((elem) => elem.getAttribute('part') !== 'menu')\n .map((e) => Math.floor(e.scrollWidth))\n .reduce((sum, elemWidth) => sum + elemWidth, 0);\n\n // + padding\n headerWidth +=\n Number.parseInt(getComputedStyle(element).getPropertyValue('padding-inline'), 10) * 2;\n\n // + gap\n headerWidth +=\n Number.parseInt(getComputedStyle(element).getPropertyValue('gap'), 10) *\n (element.childElementCount - 1);\n\n this.topNavShown = element.clientWidth >= headerWidth;\n this.sensing = false;\n });\n\n flipflop = modifier((element: HTMLElement) => {\n const sensor = () => this.detectOverflow.perform(element);\n\n void sensor();\n // eslint-disable-next-line @typescript-eslint/no-misused-promises\n window.addEventListener('resize', sensor);\n\n return () => {\n // eslint-disable-next-line @typescript-eslint/no-misused-promises\n window.removeEventListener('resize', sensor);\n };\n });\n\n closeWhenLink = modifier((element: HTMLElement) => {\n const checkForClose = (event: Event) => {\n const hitALink = event\n .composedPath()\n .some(\n (target: EventTarget) =>\n (target as HTMLElement | null)?.tagName &&\n ['a', 'button'].includes((target as HTMLElement).tagName.toLowerCase()) &&\n !(target as HTMLElement).getAttribute('aria-haspopup')\n );\n\n if (hitALink) {\n element.hidePopover();\n }\n };\n\n element.addEventListener('click', checkForClose);\n\n return () => {\n element.removeEventListener('click', checkForClose);\n };\n });\n\n <template>\n {{#let (uniqueId) as |brandId|}}\n <header class=\"app-header\" data-test-app-header ...attributes>\n <div data-sensing={{this.sensing}} {{this.flipflop}}>\n {{#if (has-block \"brand\")}}\n <CommandElement @command={{@home}} part=\"brand\" id={{brandId}}>\n <span>{{yield to=\"brand\"}}</span>\n </CommandElement>\n {{/if}}\n\n {{#if (or this.topNavShown this.sensing)}}\n <nav data-position={{if @position @position}} aria-labelledby={{brandId}}>\n {{yield (hash Item=NavItem) to=\"nav\"}}\n </nav>\n\n {{#if (has-block \"aux\")}}\n <span part=\"aux\">\n {{yield (hash Item=NavItem) to=\"aux\"}}\n </span>\n {{/if}}\n {{/if}}\n\n {{#if (not this.topNavShown)}}\n <span part=\"menu\">\n {{#let (popover) as |p|}}\n <IconButton\n @importance=\"plain\"\n @icon={{if p.opened CloseIcon ListIcon}}\n {{p.trigger}}\n data-test-toggle\n @label=\"toggle\"\n />\n\n <div popover {{p.target}} {{this.closeWhenLink}}>\n <div data-menu-header>\n {{#if (has-block \"brand\")}}\n <span part=\"brand\">\n {{yield to=\"brand\"}}\n </span>\n {{/if}}\n </div>\n\n <div data-menu-content>\n {{! template-lint-disable no-duplicate-landmark-elements }}\n <nav aria-labelledby={{brandId}}>\n {{yield (hash Item=PopoverNavItem) to=\"nav\"}}\n </nav>\n {{! template-lint-enable no-duplicate-landmark-elements }}\n\n {{#if (has-block \"aux\")}}\n <span part=\"aux\">\n {{yield (hash Item=(component NavItem position=\"top span-right\")) to=\"aux\"}}\n </span>\n {{/if}}\n </div>\n </div>\n {{/let}}\n </span>\n {{/if}}\n </div>\n </header>\n {{/let}}\n </template>\n}\n"],"names":["NavItem","setComponentTemplate","precompileTemplate","strictMode","scope","NavLink","and","popover","Menu","templateOnly","PopoverNavItem","hash","CloseIcon","ListIcon","AppHeader","Component","g","prototype","tracked","i","void 0","detectOverflow","_buildTask","context","generator","element","timeout","sensing","relevantChildren","children","filter","elem","tagName","toLowerCase","getAttribute","length","headerWidth","map","e","Math","floor","scrollWidth","reduce","sum","elemWidth","Number","parseInt","getComputedStyle","getPropertyValue","childElementCount","topNavShown","clientWidth","flipflop","modifier","sensor","perform","window","addEventListener","removeEventListener","closeWhenLink","checkForClose","event","hitALink","composedPath","some","target","includes","hidePopover","uniqueId","CommandElement","or","not","IconButton"],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ import { element } from 'ember-element-helper';
2
+ import { b as asBoolean, n as not, a as and } from './helpers-D4So5-uK.js';
3
+ import { d as disabled } from './disabled-B_FQ0Z51.js';
4
+ import { P as PushElement } from './push-C8z1Qw41.js';
5
+ import { i as isLink, p as pushOrToggle } from './-button-zstwNwHq.js';
6
+ import { precompileTemplate } from '@ember/template-compilation';
7
+ import { setComponentTemplate } from '@ember/component';
8
+ import templateOnly from '@ember/component/template-only';
9
+
10
+ const Button = setComponentTemplate(precompileTemplate("<PushElement @push={{pushOrToggle @push @pressed}} @href={{@href}} @element={{element \"button\"}} class=\"button\" type={{if (and (not (isLink @push)) (not (asBoolean @href))) \"button\"}} aria-pressed={{if @pressed (if @pressed \"true\" \"false\")}} data-intent={{if @intent @intent \"action\"}} data-importance={{if @importance @importance \"supreme\"}} data-spacing={{@spacing}} {{disabled when=(if @disabled @disabled false)}} data-test-button ...attributes>\n {{#if (has-block \"before\")}}\n <span data-test-button=\"before\">\n {{yield to=\"before\"}}\n </span>\n {{/if}}\n\n <span data-test-button=\"label\">\n {{#if (has-block \"label\")}}\n {{yield to=\"label\"}}\n {{/if}}\n\n {{#if (has-block)}}\n {{yield}}\n {{/if}}\n </span>\n\n {{#if (has-block \"after\")}}\n <span data-test-button=\"after\">\n {{yield to=\"after\"}}\n </span>\n {{/if}}\n</PushElement>", {
11
+ strictMode: true,
12
+ scope: () => ({
13
+ PushElement,
14
+ pushOrToggle,
15
+ element,
16
+ and,
17
+ not,
18
+ isLink,
19
+ asBoolean,
20
+ disabled
21
+ })
22
+ }), templateOnly());
23
+
24
+ export { Button as B };
25
+ //# sourceMappingURL=button-DCEeKVJE.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"button-DCEeKVJE.js","sources":["../src/components/actions/button.gts"],"sourcesContent":["import { element } from 'ember-element-helper';\n\nimport { and, asBoolean, not } from '../../-private/helpers.ts';\nimport disabled from '../../-private/modifiers/disabled.ts';\nimport { type PushArgs, PushElement } from '../../-private/push.gts';\nimport {\n type ButtonArgs,\n type ButtonBlocks,\n isLink,\n type PressedButtonArgs,\n pushOrToggle,\n type ToggleFn\n} from './-button.ts';\n\nimport type { TOC } from '@ember/component/template-only';\nimport type { CommandAction } from 'ember-command';\nimport type { Simplify } from 'type-fest';\n\nexport interface ButtonSignature {\n Element: HTMLButtonElement | HTMLAnchorElement | HTMLSpanElement;\n Args: Simplify<\n Omit<PushArgs, 'push'> &\n Omit<PressedButtonArgs, 'push'> &\n ButtonArgs & {\n push?: ToggleFn | CommandAction;\n }\n >;\n Blocks: ButtonBlocks;\n}\n\nexport const Button: TOC<ButtonSignature> = <template>\n <PushElement\n @push={{pushOrToggle @push @pressed}}\n @href={{@href}}\n @element={{element \"button\"}}\n class=\"button\"\n type={{if (and (not (isLink @push)) (not (asBoolean @href))) \"button\"}}\n aria-pressed={{if @pressed (if @pressed \"true\" \"false\")}}\n data-intent={{if @intent @intent \"action\"}}\n data-importance={{if @importance @importance \"supreme\"}}\n data-spacing={{@spacing}}\n {{disabled when=(if @disabled @disabled false)}}\n data-test-button\n ...attributes\n >\n {{#if (has-block \"before\")}}\n <span data-test-button=\"before\">\n {{yield to=\"before\"}}\n </span>\n {{/if}}\n\n <span data-test-button=\"label\">\n {{#if (has-block \"label\")}}\n {{yield to=\"label\"}}\n {{/if}}\n\n {{#if (has-block)}}\n {{yield}}\n {{/if}}\n </span>\n\n {{#if (has-block \"after\")}}\n <span data-test-button=\"after\">\n {{yield to=\"after\"}}\n </span>\n {{/if}}\n </PushElement>\n</template>;\n"],"names":["Button","setComponentTemplate","precompileTemplate","strictMode","scope","PushElement","pushOrToggle","element","and","not","isLink","asBoolean","disabled","templateOnly"],"mappings":";;;;;;;;;MA8BaA,MAAY,GAAAC,oBAAA,CAAmBC,kBAAA,CAAA,25BAAA,EAqC5C;EAAAC,UAAA,EAAA,IAAA;AAAAC,EAAAA,KAAA,EAAAA,OAAA;IAAAC,WAAA;IAAAC,YAAA;IAAAC,OAAA;IAAAC,GAAA;IAAAC,GAAA;IAAAC,MAAA;IAAAC,SAAA;AAAAC,IAAAA;AAAA,GAAA;AAAU,CAAA,CAAA,EAAAC,YAAA,EAAA;;;;"}
@@ -0,0 +1,14 @@
1
+ import { ariaGroup } from 'ember-aria-voyager';
2
+ import { precompileTemplate } from '@ember/template-compilation';
3
+ import { setComponentTemplate } from '@ember/component';
4
+ import templateOnly from '@ember/component/template-only';
5
+
6
+ const ButtonGroup = setComponentTemplate(precompileTemplate("<div class=\"button-group\" data-test-button-group {{ariaGroup}}>\n {{yield}}\n</div>", {
7
+ strictMode: true,
8
+ scope: () => ({
9
+ ariaGroup
10
+ })
11
+ }), templateOnly());
12
+
13
+ export { ButtonGroup as B };
14
+ //# sourceMappingURL=button-group-L-yIZgQe.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"button-group-L-yIZgQe.js","sources":["../src/components/actions/button-group.gts"],"sourcesContent":["import { ariaGroup } from 'ember-aria-voyager';\n\nimport type { TOC } from '@ember/component/template-only';\n\ntype ButtonGroupSignature = {\n Element: HTMLDivElement;\n Blocks: {\n default: [];\n };\n};\n\nconst ButtonGroup: TOC<ButtonGroupSignature> = <template>\n <div class=\"button-group\" data-test-button-group {{ariaGroup}}>\n {{yield}}\n </div>\n</template>;\n\nexport { ButtonGroup };\n"],"names":["ButtonGroup","setComponentTemplate","precompileTemplate","strictMode","scope","ariaGroup","templateOnly"],"mappings":";;;;;AAWA,MAAMA,WAAiB,GAAAC,oBAAA,CAAwBC,kBAAA,CAAA,wFAAA,EAI/C;EAAAC,UAAA,EAAA,IAAA;AAAAC,EAAAA,KAAA,EAAAA,OAAA;AAAAC,IAAAA;AAAA,GAAA;AAAU,CAAA,CAAA,EAAAC,YAAA,EAAA;;;;"}
@@ -1,2 +1,2 @@
1
- export { A as default } from '../app-header-B9BWy4HI.js';
1
+ export { A as default } from '../app-header-zFoKDgm0.js';
2
2
  //# sourceMappingURL=app-header.js.map
@@ -0,0 +1,2 @@
1
+ export { B as default } from '../button-group-L-yIZgQe.js';
2
+ //# sourceMappingURL=button-group.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"button-group.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,2 +1,2 @@
1
- export { B as default } from '../button-CRe5grz4.js';
1
+ export { B as default } from '../button-DCEeKVJE.js';
2
2
  //# sourceMappingURL=button.js.map
@@ -1,2 +1,2 @@
1
- export { I as default } from '../icon-button-ClE5SC8Y.js';
1
+ export { I as default } from '../icon-button-C1YrOLFe.js';
2
2
  //# sourceMappingURL=icon-button.js.map
@@ -1,2 +1,2 @@
1
- export { P as default } from '../pagination-Mgv860Cf.js';
1
+ export { P as default } from '../pagination-CjkoHYcN.js';
2
2
  //# sourceMappingURL=pagination.js.map
@@ -0,0 +1,2 @@
1
+ export { R as default } from '../radio-button-group-D7LjyINa.js';
2
+ //# sourceMappingURL=radio-button-group.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"radio-button-group.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}