@noctuatech/uswds 0.0.11 → 0.0.13

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 (79) hide show
  1. package/README.md +1 -3
  2. package/assets/uswds.min.js +1 -1
  3. package/package.json +22 -7
  4. package/src/lib/config/config.element.ts +5 -3
  5. package/src/lib/define.ts +4 -3
  6. package/src/lib/icon/icon-element.test.ts +0 -0
  7. package/src/lib/icon/icon.element.ts +24 -12
  8. package/src/lib/radio/{radio-option.test.ts → radio-option/radio-option.test.ts} +1 -1
  9. package/src/lib/radio/radio.element.ts +1 -1
  10. package/src/lib/radio/radio.test.ts +1 -1
  11. package/src/lib/select/select.element.ts +1 -1
  12. package/src/lib/select/select.test.ts +1 -1
  13. package/src/lib/side-nav/side-nav.element.ts +3 -3
  14. package/src/lib/side-nav/side-nav.test.ts +1 -0
  15. package/src/lib/step-indicator/step/{step-indicator-step.element.ts → step.element.ts} +30 -16
  16. package/src/lib/step-indicator/step-indicator.element.ts +3 -1
  17. package/src/lib/step-indicator/step-indicator.test.ts +1 -0
  18. package/src/lib.ts +3 -4
  19. package/target/lib/config/config.element.d.ts +2 -2
  20. package/target/lib/config/config.element.js +14 -12
  21. package/target/lib/config/config.element.js.map +1 -1
  22. package/target/lib/define.d.ts +4 -3
  23. package/target/lib/define.js +4 -3
  24. package/target/lib/define.js.map +1 -1
  25. package/target/lib/icon/icon-element.test.d.ts +1 -0
  26. package/target/lib/icon/icon-element.test.js +2 -0
  27. package/target/lib/icon/icon-element.test.js.map +1 -0
  28. package/target/lib/icon/icon.element.d.ts +3 -0
  29. package/target/lib/icon/icon.element.js +18 -15
  30. package/target/lib/icon/icon.element.js.map +1 -1
  31. package/target/lib/radio/radio-option/radio-option.element.js.map +1 -0
  32. package/target/lib/radio/{radio-option.test.d.ts → radio-option/radio-option.test.d.ts} +1 -1
  33. package/target/lib/radio/{radio-option.test.js → radio-option/radio-option.test.js} +1 -1
  34. package/target/lib/radio/radio-option/radio-option.test.js.map +1 -0
  35. package/target/lib/radio/radio.test.d.ts +1 -1
  36. package/target/lib/radio/radio.test.js +1 -1
  37. package/target/lib/radio/radio.test.js.map +1 -1
  38. package/target/lib/select/select-option/select-option.element.js.map +1 -0
  39. package/target/lib/select/select.test.d.ts +1 -1
  40. package/target/lib/select/select.test.js +1 -1
  41. package/target/lib/select/select.test.js.map +1 -1
  42. package/target/lib/side-nav/side-nav-item/side-nav-item.element.js.map +1 -0
  43. package/target/lib/side-nav/side-nav.element.d.ts +1 -1
  44. package/target/lib/side-nav/side-nav.element.js +4 -1
  45. package/target/lib/side-nav/side-nav.element.js.map +1 -1
  46. package/target/lib/side-nav/side-nav.test.d.ts +1 -0
  47. package/target/lib/side-nav/side-nav.test.js +1 -0
  48. package/target/lib/side-nav/side-nav.test.js.map +1 -1
  49. package/target/lib/step-indicator/step/{step-indicator-step.element.d.ts → step.element.d.ts} +3 -0
  50. package/target/lib/step-indicator/step/{step-indicator-step.element.js → step.element.js} +42 -17
  51. package/target/lib/step-indicator/step/step.element.js.map +1 -0
  52. package/target/lib/step-indicator/step-indicator.element.d.ts +1 -0
  53. package/target/lib/step-indicator/step-indicator.element.js +4 -0
  54. package/target/lib/step-indicator/step-indicator.element.js.map +1 -1
  55. package/target/lib/step-indicator/step-indicator.test.d.ts +1 -0
  56. package/target/lib/step-indicator/step-indicator.test.js +1 -0
  57. package/target/lib/step-indicator/step-indicator.test.js.map +1 -1
  58. package/target/lib.d.ts +3 -3
  59. package/target/lib.js +3 -3
  60. package/target/lib.js.map +1 -1
  61. package/assets/img/sprite.svg +0 -790
  62. package/src/lib/step-indicator/step/step-indicator-step.test.ts +0 -15
  63. package/target/lib/radio/radio-option.element.js.map +0 -1
  64. package/target/lib/radio/radio-option.test.js.map +0 -1
  65. package/target/lib/select/select-option.element.js.map +0 -1
  66. package/target/lib/side-nav/side-nav-item.element.js.map +0 -1
  67. package/target/lib/step-indicator/step/step-indicator-step.element.js.map +0 -1
  68. package/target/lib/step-indicator/step/step-indicator-step.test.d.ts +0 -1
  69. package/target/lib/step-indicator/step/step-indicator-step.test.js +0 -11
  70. package/target/lib/step-indicator/step/step-indicator-step.test.js.map +0 -1
  71. /package/src/lib/radio/{radio-option.element.ts → radio-option/radio-option.element.ts} +0 -0
  72. /package/src/lib/select/{select-option.element.ts → select-option/select-option.element.ts} +0 -0
  73. /package/src/lib/side-nav/{side-nav-item.element.ts → side-nav-item/side-nav-item.element.ts} +0 -0
  74. /package/target/lib/radio/{radio-option.element.d.ts → radio-option/radio-option.element.d.ts} +0 -0
  75. /package/target/lib/radio/{radio-option.element.js → radio-option/radio-option.element.js} +0 -0
  76. /package/target/lib/select/{select-option.element.d.ts → select-option/select-option.element.d.ts} +0 -0
  77. /package/target/lib/select/{select-option.element.js → select-option/select-option.element.js} +0 -0
  78. /package/target/lib/side-nav/{side-nav-item.element.d.ts → side-nav-item/side-nav-item.element.d.ts} +0 -0
  79. /package/target/lib/side-nav/{side-nav-item.element.js → side-nav-item/side-nav-item.element.js} +0 -0
@@ -1,4 +1,4 @@
1
- import { css, element, html } from "@joist/element";
1
+ import { attr, attrChanged, css, element, html } from "@joist/element";
2
2
 
3
3
  declare global {
4
4
  interface HTMLElementTagNameMap {
@@ -50,23 +50,11 @@ declare global {
50
50
  text-align: left;
51
51
  }
52
52
 
53
- :host([counter][state="complete"])::after {
54
- background-color: #162e51;
55
- box-shadow: 0 0 0 0.25rem #fff;
56
- color: #fff;
57
- }
58
-
59
- :host([counter][state="current"])::after {
60
- background-color: #005ea2;
61
- box-shadow: 0 0 0 0.25rem #fff;
62
- color: #fff;
63
- }
64
-
65
53
  :host([counter]) .label {
66
54
  margin-top: 1.5rem;
67
55
  }
68
56
 
69
- :host([counter]):after {
57
+ :host([counter]) .counter:after {
70
58
  content: counter(usa-step-indicator);
71
59
  height: 2.5rem;
72
60
  border-radius: 99rem;
@@ -90,7 +78,19 @@ declare global {
90
78
  box-sizing: border-box;
91
79
  }
92
80
 
93
- :host([counter="small"]):after {
81
+ :host([counter][state="complete"]) .counter::after {
82
+ background-color: #162e51;
83
+ box-shadow: 0 0 0 0.25rem #fff;
84
+ color: #fff;
85
+ }
86
+
87
+ :host([counter][state="current"]) .counter::after {
88
+ background-color: #005ea2;
89
+ box-shadow: 0 0 0 0.25rem #fff;
90
+ color: #fff;
91
+ }
92
+
93
+ :host([counter="small"]) .counter:after {
94
94
  height: 1.5rem;
95
95
  width: 1.5rem;
96
96
  font-size: 0.93rem;
@@ -101,10 +101,24 @@ declare global {
101
101
  }
102
102
  `,
103
103
  html`
104
+ <div class="counter" aria-hidden="true"></div>
105
+
104
106
  <div class="label">
105
107
  <slot></slot>
106
108
  </div>
107
109
  `,
108
110
  ],
109
111
  })
110
- export class USAStepIndicatorStepElement extends HTMLElement {}
112
+ export class USAStepIndicatorStepElement extends HTMLElement {
113
+ @attr()
114
+ accessor state: "complete" | "current" | "" = "";
115
+
116
+ role = "listitem";
117
+
118
+ @attrChanged("state")
119
+ onStateAttrChanged() {
120
+ if (this.state === "current") {
121
+ this.ariaCurrent = "step";
122
+ }
123
+ }
124
+ }
@@ -21,4 +21,6 @@ declare global {
21
21
  html`<slot></slot>`,
22
22
  ],
23
23
  })
24
- export class USAStepIndicatorElement extends HTMLElement {}
24
+ export class USAStepIndicatorElement extends HTMLElement {
25
+ role = "list";
26
+ }
@@ -1,4 +1,5 @@
1
1
  import "./step-indicator.element.js";
2
+ import "./step/step.element.js";
2
3
 
3
4
  import { fixture, html, assert } from "@open-wc/testing";
4
5
 
package/src/lib.ts CHANGED
@@ -7,16 +7,15 @@ export { USATextInputElement } from "./lib/input/input.element.js";
7
7
  export { USAInputMaskElement } from "./lib/input-mask/input-mask.element.js";
8
8
  export { USALinkElement } from "./lib/link/link.element.js";
9
9
  export { USARadioElement } from "./lib/radio/radio.element.js";
10
- export { USARadioOptionElement } from "./lib/radio/radio-option.element.js";
10
+ export { USARadioOptionElement } from "./lib/radio/radio-option/radio-option.element.js";
11
11
  export { USASelectElement } from "./lib/select/select.element.js";
12
- export { USASelecOptionElement } from "./lib/select/select-option.element.js";
12
+ export { USASelecOptionElement } from "./lib/select/select-option/select-option.element.js";
13
13
  export { USATagElement } from "./lib/tag/tag.element.js";
14
14
  export { USAAccordionElement } from "./lib/accordion/accordion.element.js";
15
15
  export { USASideNavElement } from "./lib/side-nav/side-nav.element.js";
16
16
  export { USASummaryBoxElement } from "./lib/summary-box/summary-box.element.js";
17
17
  export { USAStepIndicatorElement } from "./lib/step-indicator/step-indicator.element.js";
18
- export { USAStepIndicatorStepElement } from "./lib/step-indicator/step/step-indicator-step.element.js";
18
+ export { USAStepIndicatorStepElement } from "./lib/step-indicator/step/step.element.js";
19
19
  export { USAModalElement } from "./lib/modal/modal.element.js";
20
20
  export { USAModalCloseElement } from "./lib/modal/modal-close/modal-close.element.js";
21
21
  export { USAModalHeadingElement } from "./lib/modal/modal-heading/modal-heading.element.js";
22
-
@@ -1,8 +1,8 @@
1
1
  export declare class USAConfig {
2
- spriteSheet: string;
2
+ iconPath: string;
3
3
  }
4
4
  export declare class USAConfigElement extends HTMLElement implements USAConfig {
5
5
  #private;
6
- accessor spriteSheet: string;
6
+ accessor iconPath: string;
7
7
  connectedCallback(): void;
8
8
  }
@@ -3,11 +3,11 @@ import { inject, injectable, Injector } from "@joist/di";
3
3
  import { attr, css, element, html } from "@joist/element";
4
4
  export class USAConfig {
5
5
  constructor() {
6
- this.spriteSheet = "";
6
+ this.iconPath = "";
7
7
  }
8
8
  }
9
9
  let USAConfigElement = (() => {
10
- var _USAConfigElement_injector, _USAConfigElement_spriteSheet_accessor_storage;
10
+ var _USAConfigElement_injector, _USAConfigElement_iconPath_accessor_storage;
11
11
  let _classDecorators = [element({
12
12
  tagName: "usa-config",
13
13
  shadowDom: [
@@ -23,29 +23,31 @@ let USAConfigElement = (() => {
23
23
  let _classExtraInitializers = [];
24
24
  let _classThis;
25
25
  let _classSuper = HTMLElement;
26
- let _spriteSheet_decorators;
27
- let _spriteSheet_initializers = [];
28
- let _spriteSheet_extraInitializers = [];
26
+ let _iconPath_decorators;
27
+ let _iconPath_initializers = [];
28
+ let _iconPath_extraInitializers = [];
29
29
  var USAConfigElement = _classThis = class extends _classSuper {
30
30
  constructor() {
31
31
  super(...arguments);
32
- _USAConfigElement_spriteSheet_accessor_storage.set(this, __runInitializers(this, _spriteSheet_initializers, "/assets/img/sprite.svg"));
33
- _USAConfigElement_injector.set(this, (__runInitializers(this, _spriteSheet_extraInitializers), inject(Injector)));
32
+ _USAConfigElement_iconPath_accessor_storage.set(this, __runInitializers(this, _iconPath_initializers, "/assets/usa-icons/"));
33
+ _USAConfigElement_injector.set(this, (__runInitializers(this, _iconPath_extraInitializers), inject(Injector)));
34
34
  }
35
- get spriteSheet() { return __classPrivateFieldGet(this, _USAConfigElement_spriteSheet_accessor_storage, "f"); }
36
- set spriteSheet(value) { __classPrivateFieldSet(this, _USAConfigElement_spriteSheet_accessor_storage, value, "f"); }
35
+ get iconPath() { return __classPrivateFieldGet(this, _USAConfigElement_iconPath_accessor_storage, "f"); }
36
+ set iconPath(value) { __classPrivateFieldSet(this, _USAConfigElement_iconPath_accessor_storage, value, "f"); }
37
37
  connectedCallback() {
38
38
  const { providers } = __classPrivateFieldGet(this, _USAConfigElement_injector, "f").call(this);
39
39
  providers.push({ provide: USAConfig, factory: () => this });
40
40
  }
41
41
  };
42
42
  _USAConfigElement_injector = new WeakMap();
43
- _USAConfigElement_spriteSheet_accessor_storage = new WeakMap();
43
+ _USAConfigElement_iconPath_accessor_storage = new WeakMap();
44
44
  __setFunctionName(_classThis, "USAConfigElement");
45
45
  (() => {
46
46
  const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
47
- _spriteSheet_decorators = [attr()];
48
- __esDecorate(_classThis, null, _spriteSheet_decorators, { kind: "accessor", name: "spriteSheet", static: false, private: false, access: { has: obj => "spriteSheet" in obj, get: obj => obj.spriteSheet, set: (obj, value) => { obj.spriteSheet = value; } }, metadata: _metadata }, _spriteSheet_initializers, _spriteSheet_extraInitializers);
47
+ _iconPath_decorators = [attr({
48
+ name: "icon-path",
49
+ })];
50
+ __esDecorate(_classThis, null, _iconPath_decorators, { kind: "accessor", name: "iconPath", static: false, private: false, access: { has: obj => "iconPath" in obj, get: obj => obj.iconPath, set: (obj, value) => { obj.iconPath = value; } }, metadata: _metadata }, _iconPath_initializers, _iconPath_extraInitializers);
49
51
  __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
50
52
  USAConfigElement = _classThis = _classDescriptor.value;
51
53
  if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
@@ -1 +1 @@
1
- {"version":3,"file":"config.element.js","sourceRoot":"","sources":["../../../src/lib/config/config.element.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACzD,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAE1D,MAAM,OAAO,SAAS;IAAtB;QACE,gBAAW,GAAG,EAAE,CAAC;IACnB,CAAC;CAAA;IAcY,gBAAgB;;4BAZ5B,OAAO,CAAC;YACP,OAAO,EAAE,YAAY;YACrB,SAAS,EAAE;gBACT,GAAG,CAAA;;;;KAIF;gBACD,IAAI,CAAA,eAAe;aACpB;SACF,CAAC,EACD,UAAU,EAAE;;;;sBACyB,WAAW;;;;6CAAnB,SAAQ,WAAW;;;YAEtC,4GAAc,wBAAwB,GAAC;YAEhD,+FAAY,MAAM,CAAC,QAAQ,CAAC,GAAC;QAO/B,CAAC;QATC,IAAS,WAAW,gGAA4B;QAAhD,IAAS,WAAW,qGAA4B;QAIhD,iBAAiB;YACf,MAAM,EAAE,SAAS,EAAE,GAAG,uBAAA,IAAI,kCAAU,MAAd,IAAI,CAAY,CAAC;YAEvC,SAAS,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;QAC9D,CAAC;;;;;;;mCATA,IAAI,EAAE;QACP,4LAAS,WAAW,6BAAX,WAAW,iGAA4B;QAFlD,6KAWC;;;QAXY,uDAAgB;;;;SAAhB,gBAAgB"}
1
+ {"version":3,"file":"config.element.js","sourceRoot":"","sources":["../../../src/lib/config/config.element.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACzD,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAE1D,MAAM,OAAO,SAAS;IAAtB;QACE,aAAQ,GAAG,EAAE,CAAC;IAChB,CAAC;CAAA;IAcY,gBAAgB;;4BAZ5B,OAAO,CAAC;YACP,OAAO,EAAE,YAAY;YACrB,SAAS,EAAE;gBACT,GAAG,CAAA;;;;KAIF;gBACD,IAAI,CAAA,eAAe;aACpB;SACF,CAAC,EACD,UAAU,EAAE;;;;sBACyB,WAAW;;;;6CAAnB,SAAQ,WAAW;;;YAItC,sGAAW,oBAAoB,GAAC;YAEzC,4FAAY,MAAM,CAAC,QAAQ,CAAC,GAAC;QAO/B,CAAC;QATC,IAAS,QAAQ,6FAAwB;QAAzC,IAAS,QAAQ,kGAAwB;QAIzC,iBAAiB;YACf,MAAM,EAAE,SAAS,EAAE,GAAG,uBAAA,IAAI,kCAAU,MAAd,IAAI,CAAY,CAAC;YAEvC,SAAS,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;QAC9D,CAAC;;;;;;;gCAXA,IAAI,CAAC;gBACJ,IAAI,EAAE,WAAW;aAClB,CAAC;QACF,mLAAS,QAAQ,6BAAR,QAAQ,2FAAwB;QAJ3C,6KAaC;;;QAbY,uDAAgB;;;;SAAhB,gBAAgB"}
@@ -10,15 +10,16 @@ import "./input/input.element.js";
10
10
  import "./input-mask/input-mask.element.js";
11
11
  import "./link/link.element.js";
12
12
  import "./radio/radio.element.js";
13
- import "./radio/radio-option.element.js";
13
+ import "./radio/radio-option/radio-option.element.js";
14
14
  import "./select/select.element.js";
15
- import "./select/select-option.element.js";
15
+ import "./select/select-option/select-option.element.js";
16
16
  import "./tag/tag.element.js";
17
17
  import "./accordion/accordion.element.js";
18
18
  import "./side-nav/side-nav.element.js";
19
+ import "./side-nav/side-nav-item/side-nav-item.element.js";
19
20
  import "./summary-box/summary-box.element.js";
20
21
  import "./step-indicator/step-indicator.element.js";
21
- import "./step-indicator/step/step-indicator-step.element.js";
22
+ import "./step-indicator/step/step.element.js";
22
23
  import "./modal/modal.element.js";
23
24
  import "./modal/modal-close/modal-close.element.js";
24
25
  import "./modal/modal-heading/modal-heading.element.js";
@@ -10,15 +10,16 @@ import "./input/input.element.js";
10
10
  import "./input-mask/input-mask.element.js";
11
11
  import "./link/link.element.js";
12
12
  import "./radio/radio.element.js";
13
- import "./radio/radio-option.element.js";
13
+ import "./radio/radio-option/radio-option.element.js";
14
14
  import "./select/select.element.js";
15
- import "./select/select-option.element.js";
15
+ import "./select/select-option/select-option.element.js";
16
16
  import "./tag/tag.element.js";
17
17
  import "./accordion/accordion.element.js";
18
18
  import "./side-nav/side-nav.element.js";
19
+ import "./side-nav/side-nav-item/side-nav-item.element.js";
19
20
  import "./summary-box/summary-box.element.js";
20
21
  import "./step-indicator/step-indicator.element.js";
21
- import "./step-indicator/step/step-indicator-step.element.js";
22
+ import "./step-indicator/step/step.element.js";
22
23
  import "./modal/modal.element.js";
23
24
  import "./modal/modal-close/modal-close.element.js";
24
25
  import "./modal/modal-heading/modal-heading.element.js";
@@ -1 +1 @@
1
- {"version":3,"file":"define.js","sourceRoot":"","sources":["../../src/lib/define.ts"],"names":[],"mappings":"AAAA,OAAO,4BAA4B,CAAC;AACpC,OAAO,0BAA0B,CAAC;AAClC,OAAO,4BAA4B,CAAC;AACpC,OAAO,gCAAgC,CAAC;AACxC,OAAO,sCAAsC,CAAC;AAC9C,OAAO,oCAAoC,CAAC;AAC5C,OAAO,+DAA+D,CAAC;AACvE,OAAO,wBAAwB,CAAC;AAChC,OAAO,0BAA0B,CAAC;AAClC,OAAO,oCAAoC,CAAC;AAC5C,OAAO,wBAAwB,CAAC;AAChC,OAAO,0BAA0B,CAAC;AAClC,OAAO,iCAAiC,CAAC;AACzC,OAAO,4BAA4B,CAAC;AACpC,OAAO,mCAAmC,CAAC;AAC3C,OAAO,sBAAsB,CAAC;AAC9B,OAAO,kCAAkC,CAAC;AAC1C,OAAO,gCAAgC,CAAC;AACxC,OAAO,sCAAsC,CAAC;AAC9C,OAAO,4CAA4C,CAAC;AACpD,OAAO,sDAAsD,CAAC;AAC9D,OAAO,0BAA0B,CAAC;AAClC,OAAO,4CAA4C,CAAC;AACpD,OAAO,gDAAgD,CAAC"}
1
+ {"version":3,"file":"define.js","sourceRoot":"","sources":["../../src/lib/define.ts"],"names":[],"mappings":"AAAA,OAAO,4BAA4B,CAAC;AACpC,OAAO,0BAA0B,CAAC;AAClC,OAAO,4BAA4B,CAAC;AACpC,OAAO,gCAAgC,CAAC;AACxC,OAAO,sCAAsC,CAAC;AAC9C,OAAO,oCAAoC,CAAC;AAC5C,OAAO,+DAA+D,CAAC;AACvE,OAAO,wBAAwB,CAAC;AAChC,OAAO,0BAA0B,CAAC;AAClC,OAAO,oCAAoC,CAAC;AAC5C,OAAO,wBAAwB,CAAC;AAChC,OAAO,0BAA0B,CAAC;AAClC,OAAO,8CAA8C,CAAC;AACtD,OAAO,4BAA4B,CAAC;AACpC,OAAO,iDAAiD,CAAC;AACzD,OAAO,sBAAsB,CAAC;AAC9B,OAAO,kCAAkC,CAAC;AAC1C,OAAO,gCAAgC,CAAC;AACxC,OAAO,mDAAmD,CAAC;AAC3D,OAAO,sCAAsC,CAAC;AAC9C,OAAO,4CAA4C,CAAC;AACpD,OAAO,uCAAuC,CAAC;AAC/C,OAAO,0BAA0B,CAAC;AAClC,OAAO,4CAA4C,CAAC;AACpD,OAAO,gDAAgD,CAAC"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=icon-element.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"icon-element.test.js","sourceRoot":"","sources":["../../../src/lib/icon/icon-element.test.ts"],"names":[],"mappings":""}
@@ -4,9 +4,12 @@ declare global {
4
4
  "usa-icon": USAIconElement;
5
5
  }
6
6
  }
7
+ export declare const ICON_CACHE: Map<string, Promise<string>>;
7
8
  export declare class USAIconElement extends HTMLElement {
8
9
  #private;
9
10
  accessor icon: USAIcon;
11
+ ariaHidden: string | null;
10
12
  connectedCallback(): void;
11
13
  attributeChangedCallback(): void;
14
+ fetchIcon(): Promise<string>;
12
15
  }
@@ -1,9 +1,10 @@
1
1
  import { __classPrivateFieldGet, __classPrivateFieldSet, __esDecorate, __runInitializers, __setFunctionName } from "tslib";
2
- import { attr, css, element, html, query } from "@joist/element";
2
+ import { attr, css, element } from "@joist/element";
3
3
  import { inject, injectable } from "@joist/di";
4
4
  import { USAConfig } from "../config/config.element.js";
5
+ export const ICON_CACHE = new Map();
5
6
  let USAIconElement = (() => {
6
- var _USAIconElement_instances, _USAIconElement_use, _USAIconElement_config, _USAIconElement_connected, _USAIconElement_updateIcon, _USAIconElement_icon_accessor_storage;
7
+ var _USAIconElement_instances, _USAIconElement_shadow, _USAIconElement_config, _USAIconElement_connected, _USAIconElement_updateIcon, _USAIconElement_icon_accessor_storage;
7
8
  let _classDecorators = [element({
8
9
  tagName: "usa-icon",
9
10
  shadowDom: [
@@ -20,11 +21,6 @@ let USAIconElement = (() => {
20
21
  height: 100%;
21
22
  width: 100%;
22
23
  }
23
- `,
24
- html `
25
- <svg class="usa-icon" aria-hidden="true" focusable="false" role="img">
26
- <use></use>
27
- </svg>
28
24
  `,
29
25
  ],
30
26
  }), injectable()];
@@ -40,7 +36,8 @@ let USAIconElement = (() => {
40
36
  super(...arguments);
41
37
  _USAIconElement_instances.add(this);
42
38
  _USAIconElement_icon_accessor_storage.set(this, __runInitializers(this, _icon_initializers, "accessibility_new"));
43
- _USAIconElement_use.set(this, (__runInitializers(this, _icon_extraInitializers), query("use")));
39
+ this.ariaHidden = (__runInitializers(this, _icon_extraInitializers), "true");
40
+ _USAIconElement_shadow.set(this, this.attachShadow({ mode: "open" }));
44
41
  _USAIconElement_config.set(this, inject(USAConfig));
45
42
  _USAIconElement_connected.set(this, false);
46
43
  }
@@ -55,18 +52,24 @@ let USAIconElement = (() => {
55
52
  __classPrivateFieldGet(this, _USAIconElement_instances, "m", _USAIconElement_updateIcon).call(this);
56
53
  }
57
54
  }
55
+ async fetchIcon() {
56
+ const cached = ICON_CACHE.get(this.icon);
57
+ if (cached) {
58
+ return cached;
59
+ }
60
+ const config = __classPrivateFieldGet(this, _USAIconElement_config, "f").call(this);
61
+ const svg = fetch(`${config.iconPath}/${this.icon}.svg`).then((res) => res.text());
62
+ ICON_CACHE.set(this.icon, svg);
63
+ return svg;
64
+ }
58
65
  };
59
- _USAIconElement_use = new WeakMap();
66
+ _USAIconElement_shadow = new WeakMap();
60
67
  _USAIconElement_config = new WeakMap();
61
68
  _USAIconElement_connected = new WeakMap();
62
69
  _USAIconElement_instances = new WeakSet();
63
70
  _USAIconElement_icon_accessor_storage = new WeakMap();
64
- _USAIconElement_updateIcon = function _USAIconElement_updateIcon() {
65
- const config = __classPrivateFieldGet(this, _USAIconElement_config, "f").call(this);
66
- const use = __classPrivateFieldGet(this, _USAIconElement_use, "f").call(this);
67
- if (this.icon !== use.getAttribute("href")) {
68
- use.setAttribute("href", `${config.spriteSheet}#${this.icon}`);
69
- }
71
+ _USAIconElement_updateIcon = async function _USAIconElement_updateIcon() {
72
+ __classPrivateFieldGet(this, _USAIconElement_shadow, "f").innerHTML = await this.fetchIcon();
70
73
  };
71
74
  __setFunctionName(_classThis, "USAIconElement");
72
75
  (() => {
@@ -1 +1 @@
1
- {"version":3,"file":"icon.element.js","sourceRoot":"","sources":["../../../src/lib/icon/icon.element.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACjE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAG/C,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;IAiC3C,cAAc;;4BAzB1B,OAAO,CAAC;YACP,OAAO,EAAE,UAAU;YACnB,SAAS,EAAE;gBACT,GAAG,CAAA;;;;;;;;;;;;;KAaF;gBACD,IAAI,CAAA;;;;KAIH;aACF;SACF,CAAC,EACD,UAAU,EAAE;;;;sBACuB,WAAW;;;;2CAAnB,SAAQ,WAAW;;;;YAEpC,4FAAgB,mBAAmB,GAAC;YAE7C,iFAAO,KAAK,CAAC,KAAK,CAAC,GAAC;YACpB,iCAAU,MAAM,CAAC,SAAS,CAAC,EAAC;YAC5B,oCAAa,KAAK,EAAC;QAqBrB,CAAC;QAzBC,IAAS,IAAI,uFAAgC;QAA7C,IAAS,IAAI,4FAAgC;QAM7C,iBAAiB;YACf,uBAAA,IAAI,6BAAc,IAAI,MAAA,CAAC;YACvB,uBAAA,IAAI,6DAAY,MAAhB,IAAI,CAAc,CAAC;QACrB,CAAC;QAED,wBAAwB;YACtB,IAAI,uBAAA,IAAI,iCAAW,EAAE,CAAC;gBACpB,uBAAA,IAAI,6DAAY,MAAhB,IAAI,CAAc,CAAC;YACrB,CAAC;QACH,CAAC;;;;;;;;QAGC,MAAM,MAAM,GAAG,uBAAA,IAAI,8BAAQ,MAAZ,IAAI,CAAU,CAAC;QAC9B,MAAM,GAAG,GAAG,uBAAA,IAAI,2BAAK,MAAT,IAAI,CAAO,CAAC;QAExB,IAAI,IAAI,CAAC,IAAI,KAAK,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC;YAC3C,GAAG,CAAC,YAAY,CAAC,MAAM,EAAE,GAAG,MAAM,CAAC,WAAW,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QACjE,CAAC;IACH,CAAC;;;;4BAzBA,IAAI,EAAE;QACP,uKAAS,IAAI,6BAAJ,IAAI,mFAAgC;QAF/C,6KA2BC;;;QA3BY,uDAAc;;;;SAAd,cAAc"}
1
+ {"version":3,"file":"icon.element.js","sourceRoot":"","sources":["../../../src/lib/icon/icon.element.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAG/C,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAQxD,MAAM,CAAC,MAAM,UAAU,GAAiC,IAAI,GAAG,EAAE,CAAC;IAsBrD,cAAc;;4BApB1B,OAAO,CAAC;YACP,OAAO,EAAE,UAAU;YACnB,SAAS,EAAE;gBACT,GAAG,CAAA;;;;;;;;;;;;;KAaF;aACF;SACF,CAAC,EACD,UAAU,EAAE;;;;sBACuB,WAAW;;;;2CAAnB,SAAQ,WAAW;;;;YAEpC,4FAAgB,mBAAmB,GAAC;YAE7C,eAAU,sDAAkB,MAAM,EAAC;YAEnC,iCAAU,IAAI,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAC;YAC9C,iCAAU,MAAM,CAAC,SAAS,CAAC,EAAC;YAC5B,oCAAa,KAAK,EAAC;QAkCrB,CAAC;QAxCC,IAAS,IAAI,uFAAgC;QAA7C,IAAS,IAAI,4FAAgC;QAQ7C,iBAAiB;YACf,uBAAA,IAAI,6BAAc,IAAI,MAAA,CAAC;YACvB,uBAAA,IAAI,6DAAY,MAAhB,IAAI,CAAc,CAAC;QACrB,CAAC;QAED,wBAAwB;YACtB,IAAI,uBAAA,IAAI,iCAAW,EAAE,CAAC;gBACpB,uBAAA,IAAI,6DAAY,MAAhB,IAAI,CAAc,CAAC;YACrB,CAAC;QACH,CAAC;QAMD,KAAK,CAAC,SAAS;YACb,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAEzC,IAAI,MAAM,EAAE,CAAC;gBACX,OAAO,MAAM,CAAC;YAChB,CAAC;YAED,MAAM,MAAM,GAAG,uBAAA,IAAI,8BAAQ,MAAZ,IAAI,CAAU,CAAC;YAE9B,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,MAAM,CAAC,QAAQ,IAAI,IAAI,CAAC,IAAI,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CACpE,GAAG,CAAC,IAAI,EAAE,CACX,CAAC;YAEF,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YAE/B,OAAO,GAAG,CAAC;QACb,CAAC;;;;;;;iCApBD,KAAK;QACH,uBAAA,IAAI,8BAAQ,CAAC,SAAS,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;IAClD,CAAC;;;;4BAtBA,IAAI,EAAE;QACP,uKAAS,IAAI,6BAAJ,IAAI,mFAAgC;QAF/C,6KA0CC;;;QA1CY,uDAAc;;;;SAAd,cAAc"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"radio-option.element.js","sourceRoot":"","sources":["../../../../src/lib/radio/radio-option/radio-option.element.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;IAqB7C,qBAAqB;;4BAbjC,OAAO,CAAC;YACP,OAAO,EAAE,kBAAkB;YAC3B,SAAS,EAAE;gBACT,GAAG,CAAA;;;;;;KAMF;gBACD,IAAI,CAAA,eAAe;aACpB;SACF,CAAC;;;;sBACyC,WAAW;;;;;;;;;;kDAAnB,SAAQ,WAAW;QAEpD,IAAS,KAAK,+FAAM;QAApB,IAAS,KAAK,oGAAM;QAGpB,IAAS,IAAI,8FAAM;QAAnB,IAAS,IAAI,mGAAM;QAGnB,IAAS,OAAO,iGAAS;QAAzB,IAAS,OAAO,sGAAS;QAOzB;YACE,KAAK,EAAE,CAAC;YAdD,qGAAQ,EAAE,GAAC;YAGX,uJAAO,EAAE,IAAC;YAGV,4JAAU,KAAK,IAAC;YAEhB,UAAK,yDAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,EAAC;YAExC,uCAAS,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,EAAC;YACzC,wCAAU,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,EAAC;YAKhD,uBAAA,IAAI,oCAAO,CAAC,IAAI,GAAG,OAAO,CAAC;YAE3B,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,uBAAA,IAAI,oCAAO,EAAE,uBAAA,IAAI,qCAAQ,CAAC,CAAC;QAC/C,CAAC;QAED,wBAAwB;YACtB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC;YAEvB,uBAAA,IAAI,oCAAO,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;YAC7B,uBAAA,IAAI,oCAAO,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;YAC/B,uBAAA,IAAI,oCAAO,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;YAEnC,uBAAA,IAAI,qCAAQ,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC;QACjC,CAAC;QAED,iBAAiB;YACf,IAAI,CAAC,aAAa,CAChB,IAAI,KAAK,CAAC,2BAA2B,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAC1D,CAAC;QACJ,CAAC;QAED,oBAAoB;YAClB,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QACtB,CAAC;;;;;;;;;;6BAxCA,IAAI,EAAE;4BAGN,IAAI,EAAE;+BAGN,IAAI,EAAE;QALP,0KAAS,KAAK,6BAAL,KAAK,qFAAM;QAGpB,uKAAS,IAAI,6BAAJ,IAAI,mFAAM;QAGnB,gLAAS,OAAO,6BAAP,OAAO,yFAAS;QAR3B,6KA0CC;;;QA1CY,uDAAqB;;;;SAArB,qBAAqB"}
@@ -1,2 +1,2 @@
1
- import "./radio.element.js";
1
+ import "../radio.element.js";
2
2
  import "./radio-option.element.js";
@@ -1,4 +1,4 @@
1
- import "./radio.element.js";
1
+ import "../radio.element.js";
2
2
  import "./radio-option.element.js";
3
3
  import { assert, fixture, html } from "@open-wc/testing";
4
4
  describe("usa-radio-option", () => {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"radio-option.test.js","sourceRoot":"","sources":["../../../../src/lib/radio/radio-option/radio-option.test.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,CAAC;AAC7B,OAAO,2BAA2B,CAAC;AAEnC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAIzD,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;IAChC,EAAE,CAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE;QACxC,MAAM,KAAK,GAAG,MAAM,OAAO,CAAwB,IAAI,CAAA;;;;KAItD,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,KAAK,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,CAAC;QAE1D,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAChD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,2 +1,2 @@
1
1
  import "./radio.element.js";
2
- import "./radio-option.element.js";
2
+ import "./radio-option/radio-option.element.js";
@@ -1,5 +1,5 @@
1
1
  import "./radio.element.js";
2
- import "./radio-option.element.js";
2
+ import "./radio-option/radio-option.element.js";
3
3
  import { fixture, html, assert } from "@open-wc/testing";
4
4
  describe("usa-radio", () => {
5
5
  it("should be accessible", async () => {
@@ -1 +1 @@
1
- {"version":3,"file":"radio.test.js","sourceRoot":"","sources":["../../../src/lib/radio/radio.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"radio.test.js","sourceRoot":"","sources":["../../../src/lib/radio/radio.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"select-option.element.js","sourceRoot":"","sources":["../../../../src/lib/select/select-option/select-option.element.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;IAmBrD,qBAAqB;;4BAXjC,OAAO,CAAC;YACP,OAAO,EAAE,mBAAmB;YAC5B,SAAS,EAAE;gBACT,GAAG,CAAA;;;;KAIF;gBACD,IAAI,CAAA,eAAe;aACpB;SACF,CAAC;;;;sBACyC,WAAW;;;;;;kDAAnB,SAAQ,WAAW;;;YAE3C,yDAFE,mDAAqB,+CAEf,EAAE,IAAC;YAEX,WAAM,uDAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAC;QAoBrD,CAAC;QAtBC,IAAS,KAAK,+FAAM;QAApB,IAAS,KAAK,oGAAM;QAIpB,wBAAwB;YACtB,IAAI,CAAC,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACjC,CAAC;QAED,iBAAiB;YACf,IAAI,CAAC,aAAa,CAChB,IAAI,KAAK,CAAC,4BAA4B,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAC3D,CAAC;QACJ,CAAC;QAGD,YAAY;YACV,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QAC7C,CAAC;QAED,oBAAoB;YAClB,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACvB,CAAC;;;;;;6BAtBA,IAAI,EAAE;oCAeN,MAAM,CAAC,YAAY,CAAC;QAdrB,0KAAS,KAAK,6BAAL,KAAK,qFAAM;QAepB,6LAAA,YAAY,6DAEX;QAnBH,6KAwBC;;;QAxBY,uDAAqB;;;;SAArB,qBAAqB"}
@@ -1,2 +1,2 @@
1
1
  import "./select.element.js";
2
- import "./select-option.element.js";
2
+ import "./select-option/select-option.element.js";
@@ -1,5 +1,5 @@
1
1
  import "./select.element.js";
2
- import "./select-option.element.js";
2
+ import "./select-option/select-option.element.js";
3
3
  import { fixture, html, assert } from "@open-wc/testing";
4
4
  import { fireEvent } from "@noctuatech-uswds/testing";
5
5
  describe("usa-select", () => {
@@ -1 +1 @@
1
- {"version":3,"file":"select.test.js","sourceRoot":"","sources":["../../../src/lib/select/select.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"select.test.js","sourceRoot":"","sources":["../../../src/lib/select/select.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"side-nav-item.element.js","sourceRoot":"","sources":["../../../../src/lib/side-nav/side-nav-item/side-nav-item.element.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;IAgF7C,qBAAqB;;4BAxEjC,OAAO,CAAC;YACP,OAAO,EAAE,mBAAmB;YAC5B,SAAS,EAAE;gBACT,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA2DF;gBACD,IAAI,CAAA;;;;;;KAMH;aACF;SACF,CAAC;;;;sBACyC,WAAW;;;;kDAAnB,SAAQ,WAAW;QAIpD,IAAS,OAAO,iGAAS;QAAzB,IAAS,OAAO,sGAAS;;;YAAhB,yGAAU,KAAK,GAAC;;;;;;;;+BAHxB,IAAI,CAAC;gBACJ,QAAQ,EAAE,KAAK;aAChB,CAAC;QACF,gLAAS,OAAO,6BAAP,OAAO,yFAAS;QAJ3B,6KAKC;;;QALY,uDAAqB;;;;SAArB,qBAAqB"}
@@ -1,8 +1,8 @@
1
- import "./side-nav-item.element.js";
2
1
  declare global {
3
2
  interface HTMLElementTagNameMap {
4
3
  "usa-side-nav": USASideNavElement;
5
4
  }
6
5
  }
7
6
  export declare class USASideNavElement extends HTMLElement {
7
+ role: string;
8
8
  }
@@ -1,5 +1,4 @@
1
1
  import { __esDecorate, __runInitializers, __setFunctionName } from "tslib";
2
- import "./side-nav-item.element.js";
3
2
  import { css, element, html } from "@joist/element";
4
3
  let USASideNavElement = (() => {
5
4
  let _classDecorators = [element({
@@ -21,6 +20,10 @@ let USASideNavElement = (() => {
21
20
  let _classThis;
22
21
  let _classSuper = HTMLElement;
23
22
  var USASideNavElement = _classThis = class extends _classSuper {
23
+ constructor() {
24
+ super(...arguments);
25
+ this.role = "navigation";
26
+ }
24
27
  };
25
28
  __setFunctionName(_classThis, "USASideNavElement");
26
29
  (() => {
@@ -1 +1 @@
1
- {"version":3,"file":"side-nav.element.js","sourceRoot":"","sources":["../../../src/lib/side-nav/side-nav.element.ts"],"names":[],"mappings":";AAAA,OAAO,4BAA4B,CAAC;AAEpC,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;IAsBvC,iBAAiB;4BAd7B,OAAO,CAAC;YACP,OAAO,EAAE,cAAc;YACvB,SAAS,EAAE;gBACT,GAAG,CAAA;;;;;;;KAOF;gBACD,IAAI,CAAA,eAAe;aACpB;SACF,CAAC;;;;sBACqC,WAAW;8CAAnB,SAAQ,WAAW;;;;;QAAlD,6KAAqD;;;QAAxC,uDAAiB;;;;SAAjB,iBAAiB"}
1
+ {"version":3,"file":"side-nav.element.js","sourceRoot":"","sources":["../../../src/lib/side-nav/side-nav.element.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;IAsBvC,iBAAiB;4BAd7B,OAAO,CAAC;YACP,OAAO,EAAE,cAAc;YACvB,SAAS,EAAE;gBACT,GAAG,CAAA;;;;;;;KAOF;gBACD,IAAI,CAAA,eAAe;aACpB;SACF,CAAC;;;;sBACqC,WAAW;8CAAnB,SAAQ,WAAW;;;YAChD,SAAI,GAAG,YAAY,CAAC;QACtB,CAAC;;;;;QAFD,6KAEC;;;QAFY,uDAAiB;;;;SAAjB,iBAAiB"}
@@ -1,2 +1,3 @@
1
1
  import "../link/link.element.js";
2
2
  import "./side-nav.element.js";
3
+ import "./side-nav-item/side-nav-item.element.js";
@@ -1,5 +1,6 @@
1
1
  import "../link/link.element.js";
2
2
  import "./side-nav.element.js";
3
+ import "./side-nav-item/side-nav-item.element.js";
3
4
  import { fixture, html, assert } from "@open-wc/testing";
4
5
  describe("usa-side-nav", () => {
5
6
  it("should be accessible", async () => {
@@ -1 +1 @@
1
- {"version":3,"file":"side-nav.test.js","sourceRoot":"","sources":["../../../src/lib/side-nav/side-nav.test.ts"],"names":[],"mappings":"AAAA,OAAO,yBAAyB,CAAC;AACjC,OAAO,uBAAuB,CAAC;AAE/B,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAIzD,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;IAC5B,EAAE,CAAC,sBAAsB,EAAE,KAAK,IAAI,EAAE;QACpC,MAAM,OAAO,GAAG,MAAM,OAAO,CAAoB,IAAI,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAsCpD,CAAC,CAAC;QAEH,OAAO,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oCAAoC,EAAE,KAAK,IAAI,EAAE;QAClD,MAAM,OAAO,GAAG,MAAM,OAAO,CAAoB,IAAI,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAsCpD,CAAC,CAAC;QAEH,MAAM,KAAK,GAAG,OAAO,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,CAAC;QAE5D,MAAM,CAAC,KAAK,CACV,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,gBAAgB,CACzC,6BAA6B,CAC9B,EACD,MAAM,CACP,CAAC;QAEF,MAAM,CAAC,KAAK,CACV,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,gBAAgB,CACzC,6BAA6B,CAC9B,EACD,MAAM,CACP,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"side-nav.test.js","sourceRoot":"","sources":["../../../src/lib/side-nav/side-nav.test.ts"],"names":[],"mappings":"AAAA,OAAO,yBAAyB,CAAC;AACjC,OAAO,uBAAuB,CAAC;AAC/B,OAAO,0CAA0C,CAAC;AAElD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAIzD,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;IAC5B,EAAE,CAAC,sBAAsB,EAAE,KAAK,IAAI,EAAE;QACpC,MAAM,OAAO,GAAG,MAAM,OAAO,CAAoB,IAAI,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAsCpD,CAAC,CAAC;QAEH,OAAO,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oCAAoC,EAAE,KAAK,IAAI,EAAE;QAClD,MAAM,OAAO,GAAG,MAAM,OAAO,CAAoB,IAAI,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAsCpD,CAAC,CAAC;QAEH,MAAM,KAAK,GAAG,OAAO,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,CAAC;QAE5D,MAAM,CAAC,KAAK,CACV,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,gBAAgB,CACzC,6BAA6B,CAC9B,EACD,MAAM,CACP,CAAC;QAEF,MAAM,CAAC,KAAK,CACV,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,gBAAgB,CACzC,6BAA6B,CAC9B,EACD,MAAM,CACP,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -4,4 +4,7 @@ declare global {
4
4
  }
5
5
  }
6
6
  export declare class USAStepIndicatorStepElement extends HTMLElement {
7
+ accessor state: "complete" | "current" | "";
8
+ role: string;
9
+ onStateAttrChanged(): void;
7
10
  }
@@ -1,6 +1,7 @@
1
- import { __esDecorate, __runInitializers, __setFunctionName } from "tslib";
2
- import { css, element, html } from "@joist/element";
1
+ import { __classPrivateFieldGet, __classPrivateFieldSet, __esDecorate, __runInitializers, __setFunctionName } from "tslib";
2
+ import { attr, attrChanged, css, element, html } from "@joist/element";
3
3
  let USAStepIndicatorStepElement = (() => {
4
+ var _USAStepIndicatorStepElement_state_accessor_storage;
4
5
  let _classDecorators = [element({
5
6
  tagName: "usa-step",
6
7
  shadowDom: [
@@ -45,23 +46,11 @@ let USAStepIndicatorStepElement = (() => {
45
46
  text-align: left;
46
47
  }
47
48
 
48
- :host([counter][state="complete"])::after {
49
- background-color: #162e51;
50
- box-shadow: 0 0 0 0.25rem #fff;
51
- color: #fff;
52
- }
53
-
54
- :host([counter][state="current"])::after {
55
- background-color: #005ea2;
56
- box-shadow: 0 0 0 0.25rem #fff;
57
- color: #fff;
58
- }
59
-
60
49
  :host([counter]) .label {
61
50
  margin-top: 1.5rem;
62
51
  }
63
52
 
64
- :host([counter]):after {
53
+ :host([counter]) .counter:after {
65
54
  content: counter(usa-step-indicator);
66
55
  height: 2.5rem;
67
56
  border-radius: 99rem;
@@ -85,7 +74,19 @@ let USAStepIndicatorStepElement = (() => {
85
74
  box-sizing: border-box;
86
75
  }
87
76
 
88
- :host([counter="small"]):after {
77
+ :host([counter][state="complete"]) .counter::after {
78
+ background-color: #162e51;
79
+ box-shadow: 0 0 0 0.25rem #fff;
80
+ color: #fff;
81
+ }
82
+
83
+ :host([counter][state="current"]) .counter::after {
84
+ background-color: #005ea2;
85
+ box-shadow: 0 0 0 0.25rem #fff;
86
+ color: #fff;
87
+ }
88
+
89
+ :host([counter="small"]) .counter:after {
89
90
  height: 1.5rem;
90
91
  width: 1.5rem;
91
92
  font-size: 0.93rem;
@@ -96,6 +97,8 @@ let USAStepIndicatorStepElement = (() => {
96
97
  }
97
98
  `,
98
99
  html `
100
+ <div class="counter" aria-hidden="true"></div>
101
+
99
102
  <div class="label">
100
103
  <slot></slot>
101
104
  </div>
@@ -106,11 +109,33 @@ let USAStepIndicatorStepElement = (() => {
106
109
  let _classExtraInitializers = [];
107
110
  let _classThis;
108
111
  let _classSuper = HTMLElement;
112
+ let _instanceExtraInitializers = [];
113
+ let _state_decorators;
114
+ let _state_initializers = [];
115
+ let _state_extraInitializers = [];
116
+ let _onStateAttrChanged_decorators;
109
117
  var USAStepIndicatorStepElement = _classThis = class extends _classSuper {
118
+ constructor() {
119
+ super(...arguments);
120
+ _USAStepIndicatorStepElement_state_accessor_storage.set(this, (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _state_initializers, "")));
121
+ this.role = (__runInitializers(this, _state_extraInitializers), "listitem");
122
+ }
123
+ get state() { return __classPrivateFieldGet(this, _USAStepIndicatorStepElement_state_accessor_storage, "f"); }
124
+ set state(value) { __classPrivateFieldSet(this, _USAStepIndicatorStepElement_state_accessor_storage, value, "f"); }
125
+ onStateAttrChanged() {
126
+ if (this.state === "current") {
127
+ this.ariaCurrent = "step";
128
+ }
129
+ }
110
130
  };
131
+ _USAStepIndicatorStepElement_state_accessor_storage = new WeakMap();
111
132
  __setFunctionName(_classThis, "USAStepIndicatorStepElement");
112
133
  (() => {
113
134
  const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
135
+ _state_decorators = [attr()];
136
+ _onStateAttrChanged_decorators = [attrChanged("state")];
137
+ __esDecorate(_classThis, null, _state_decorators, { kind: "accessor", name: "state", static: false, private: false, access: { has: obj => "state" in obj, get: obj => obj.state, set: (obj, value) => { obj.state = value; } }, metadata: _metadata }, _state_initializers, _state_extraInitializers);
138
+ __esDecorate(_classThis, null, _onStateAttrChanged_decorators, { kind: "method", name: "onStateAttrChanged", static: false, private: false, access: { has: obj => "onStateAttrChanged" in obj, get: obj => obj.onStateAttrChanged }, metadata: _metadata }, null, _instanceExtraInitializers);
114
139
  __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
115
140
  USAStepIndicatorStepElement = _classThis = _classDescriptor.value;
116
141
  if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
@@ -119,4 +144,4 @@ let USAStepIndicatorStepElement = (() => {
119
144
  return USAStepIndicatorStepElement = _classThis;
120
145
  })();
121
146
  export { USAStepIndicatorStepElement };
122
- //# sourceMappingURL=step-indicator-step.element.js.map
147
+ //# sourceMappingURL=step.element.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"step.element.js","sourceRoot":"","sources":["../../../../src/lib/step-indicator/step/step.element.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;IA+G1D,2BAA2B;;4BAvGvC,OAAO,CAAC;YACP,OAAO,EAAE,UAAU;YACnB,SAAS,EAAE;gBACT,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA0FF;gBACD,IAAI,CAAA;;;;;;KAMH;aACF;SACF,CAAC;;;;sBAC+C,WAAW;;;;;;wDAAnB,SAAQ,WAAW;;;YAEjD,+DAFE,mDAA2B,+CAEQ,EAAE,IAAC;YAEjD,SAAI,uDAAG,UAAU,EAAC;QAQpB,CAAC;QAVC,IAAS,KAAK,qGAAmC;QAAjD,IAAS,KAAK,0GAAmC;QAKjD,kBAAkB;YAChB,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;gBAC7B,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC;YAC5B,CAAC;QACH,CAAC;;;;;;6BAVA,IAAI,EAAE;0CAKN,WAAW,CAAC,OAAO,CAAC;QAJrB,0KAAS,KAAK,6BAAL,KAAK,qFAAmC;QAKjD,+MAAA,kBAAkB,6DAIjB;QAXH,6KAYC;;;QAZY,uDAA2B;;;;SAA3B,2BAA2B"}
@@ -4,4 +4,5 @@ declare global {
4
4
  }
5
5
  }
6
6
  export declare class USAStepIndicatorElement extends HTMLElement {
7
+ role: string;
7
8
  }