@noctuatech/uswds 0.0.8 → 0.0.10

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 (68) hide show
  1. package/README.md +2 -2
  2. package/package.json +2 -1
  3. package/src/lib/define.ts +2 -1
  4. package/src/lib/file-input/{file-input-preview.element.ts → file-input-preview/file-input-preview.element.ts} +21 -18
  5. package/src/lib/file-input/{file-input-preview.test.ts → file-input-preview/file-input-preview.test.ts} +3 -3
  6. package/src/lib/file-input/file-input.element.ts +22 -18
  7. package/src/lib/modal/modal.element.ts +5 -23
  8. package/src/lib/summary-box/summary-box.element.ts +35 -0
  9. package/src/lib/summary-box/summary-box.stories.ts +24 -0
  10. package/src/lib/summary-box/summary-box.test.ts +15 -0
  11. package/src/lib.ts +2 -0
  12. package/target/lib/button/button.element.d.ts +3 -0
  13. package/target/lib/button/button.element.js +27 -3
  14. package/target/lib/button/button.element.js.map +1 -1
  15. package/target/lib/define.d.ts +5 -1
  16. package/target/lib/define.js +5 -1
  17. package/target/lib/define.js.map +1 -1
  18. package/target/lib/file-input/{file-input-preview.element.js → file-input-preview/file-input-preview.element.js} +20 -16
  19. package/target/lib/file-input/file-input-preview/file-input-preview.element.js.map +1 -0
  20. package/target/lib/file-input/{file-input-preview.test.d.ts → file-input-preview/file-input-preview.test.d.ts} +1 -1
  21. package/target/lib/file-input/{file-input-preview.test.js → file-input-preview/file-input-preview.test.js} +3 -3
  22. package/target/lib/file-input/file-input-preview/file-input-preview.test.js.map +1 -0
  23. package/target/lib/file-input/file-input.element.d.ts +0 -2
  24. package/target/lib/file-input/file-input.element.js +32 -20
  25. package/target/lib/file-input/file-input.element.js.map +1 -1
  26. package/target/lib/file-input/file-input.stories.js +0 -2
  27. package/target/lib/file-input/file-input.stories.js.map +1 -1
  28. package/target/lib/input/input.element.d.ts +1 -0
  29. package/target/lib/input/input.element.js +12 -8
  30. package/target/lib/input/input.element.js.map +1 -1
  31. package/target/lib/modal/modal-close/modal-close.element.d.ts +8 -0
  32. package/target/lib/modal/modal-close/modal-close.element.js +78 -0
  33. package/target/lib/modal/modal-close/modal-close.element.js.map +1 -0
  34. package/target/lib/modal/modal-close/modal-close.test.d.ts +1 -0
  35. package/target/lib/modal/modal-close/modal-close.test.js +11 -0
  36. package/target/lib/modal/modal-close/modal-close.test.js.map +1 -0
  37. package/target/lib/modal/modal-heading/modal-heading.element.d.ts +7 -0
  38. package/target/lib/modal/modal-heading/modal-heading.element.js +50 -0
  39. package/target/lib/modal/modal-heading/modal-heading.element.js.map +1 -0
  40. package/target/lib/modal/modal-heading/modal-heading.test.d.ts +1 -0
  41. package/target/lib/modal/modal-heading/modal-heading.test.js +11 -0
  42. package/target/lib/modal/modal-heading/modal-heading.test.js.map +1 -0
  43. package/target/lib/modal/modal.element.d.ts +13 -0
  44. package/target/lib/modal/modal.element.js +96 -0
  45. package/target/lib/modal/modal.element.js.map +1 -0
  46. package/target/lib/modal/modal.stories.d.ts +12 -0
  47. package/target/lib/modal/modal.stories.js +34 -0
  48. package/target/lib/modal/modal.stories.js.map +1 -0
  49. package/target/lib/modal/modal.test.d.ts +3 -0
  50. package/target/lib/modal/modal.test.js +21 -0
  51. package/target/lib/modal/modal.test.js.map +1 -0
  52. package/target/lib/summary-box/summary-box.element.d.ts +7 -0
  53. package/target/lib/summary-box/summary-box.element.js +47 -0
  54. package/target/lib/summary-box/summary-box.element.js.map +1 -0
  55. package/target/lib/summary-box/summary-box.stories.d.ts +12 -0
  56. package/target/lib/summary-box/summary-box.stories.js +17 -0
  57. package/target/lib/summary-box/summary-box.stories.js.map +1 -0
  58. package/target/lib/summary-box/summary-box.test.d.ts +1 -0
  59. package/target/lib/summary-box/summary-box.test.js +11 -0
  60. package/target/lib/summary-box/summary-box.test.js.map +1 -0
  61. package/target/lib.d.ts +4 -0
  62. package/target/lib.js +4 -0
  63. package/target/lib.js.map +1 -1
  64. package/assets/css/global.css +0 -21
  65. package/assets/uswds.min.js +0 -1
  66. package/target/lib/file-input/file-input-preview.element.js.map +0 -1
  67. package/target/lib/file-input/file-input-preview.test.js.map +0 -1
  68. /package/target/lib/file-input/{file-input-preview.element.d.ts → file-input-preview/file-input-preview.element.d.ts} +0 -0
@@ -1,5 +1,5 @@
1
1
  import "./file-input-preview.element.js";
2
- import "../link/link.element.js";
2
+ import "../../link/link.element.js";
3
3
  import { assert, fixture, html } from "@open-wc/testing";
4
4
  describe("usa-file-input-preview", () => {
5
5
  it("should be accessible with no files", async () => {
@@ -30,7 +30,7 @@ describe("usa-file-input-preview", () => {
30
30
  Selected file <usa-link>Change file</usa-link>
31
31
  </usa-file-input-preview>
32
32
  `);
33
- const previewItems = Array.from(shadowRoot.querySelectorAll(".preview-item")).map((item) => item.textContent);
33
+ const previewItems = Array.from(shadowRoot.querySelectorAll(".preview-item")).map((item) => item.textContent?.trim());
34
34
  assert.deepEqual(previewItems, ["image1.jpg", "image2.jpg"]);
35
35
  });
36
36
  it("should display fewer previews when the number of items decreases", async () => {
@@ -47,7 +47,7 @@ describe("usa-file-input-preview", () => {
47
47
  fileInputPreview.files = data2.files;
48
48
  // need this to wait for effects to resolve
49
49
  await Promise.resolve();
50
- const previewItems = Array.from(fileInputPreview.shadowRoot.querySelectorAll(".preview-item")).map((item) => item.textContent);
50
+ const previewItems = Array.from(fileInputPreview.shadowRoot.querySelectorAll(".preview-item")).map((item) => item.textContent?.trim());
51
51
  assert.deepEqual(previewItems, ["image1.jpg"]);
52
52
  });
53
53
  it("should create preview images for each file", async () => {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file-input-preview.test.js","sourceRoot":"","sources":["../../../../src/lib/file-input/file-input-preview/file-input-preview.test.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,3 @@
1
- import "./file-input-preview.element.js";
2
- import "../link/link.element.js";
3
1
  declare global {
4
2
  interface HTMLElementTagNameMap {
5
3
  "usa-file-input": USAFileInputElement;
@@ -1,6 +1,4 @@
1
1
  import { __classPrivateFieldGet, __classPrivateFieldSet, __esDecorate, __runInitializers, __setFunctionName } from "tslib";
2
- import "./file-input-preview.element.js";
3
- import "../link/link.element.js";
4
2
  import { attr, css, element, html, listen, query } from "@joist/element";
5
3
  import { effect, observe } from "@joist/observable";
6
4
  let USAFileInputElement = (() => {
@@ -26,18 +24,23 @@ let USAFileInputElement = (() => {
26
24
 
27
25
  input {
28
26
  cursor: pointer;
29
- height: 100%;
30
27
  left: 0;
31
28
  margin: 0;
32
29
  max-width: none;
33
30
  position: absolute;
34
31
  text-indent: -999em;
35
- top: 0;
36
32
  width: 100%;
37
33
  z-index: 1;
34
+ bottom: 0;
35
+ top: 0;
36
+ }
37
+
38
+ input:focus {
39
+ outline: 0.25rem solid #2491ff;
40
+ outline-offset: 0;
38
41
  }
39
42
 
40
- label slot {
43
+ label slot.label {
41
44
  font-size: 1.06rem;
42
45
  line-height: 1.3;
43
46
  display: block;
@@ -47,30 +50,39 @@ let USAFileInputElement = (() => {
47
50
 
48
51
  .box {
49
52
  border: 1px dashed #adadad;
50
- display: block;
53
+ display: flex;
51
54
  font-size: 0.93rem;
52
55
  position: relative;
53
56
  text-align: center;
54
57
  width: 100%;
55
58
  max-width: 30rem;
56
- padding: 2rem 1rem;
59
+ height: 5.2rem;
60
+ align-items: center;
61
+ justify-content: center;
62
+ }
63
+
64
+ .container {
65
+ position: relative;
57
66
  }
58
67
  `,
59
68
  html `
60
69
  <label>
61
- <slot></slot>
62
- <input type="file" />
63
- </label>
70
+ <slot class="label"></slot>
64
71
 
65
- <div class="box">
66
- <slot name="description">
67
- Drag file here or <usa-link>choose from folder</usa-link>
68
- </slot>
69
- </div>
72
+ <div class="container">
73
+ <input type="file" />
70
74
 
71
- <usa-file-input-preview>
72
- Selected file <usa-link>Change file</usa-link>
73
- </usa-file-input-preview>
75
+ <div class="box">
76
+ <slot name="description">
77
+ Drag file here or <usa-link>choose from folder</usa-link>
78
+ </slot>
79
+ </div>
80
+
81
+ <usa-file-input-preview>
82
+ Selected file <usa-link>Change file</usa-link>
83
+ </usa-file-input-preview>
84
+ </div>
85
+ </label>
74
86
  `,
75
87
  ],
76
88
  })];
@@ -132,14 +144,14 @@ let USAFileInputElement = (() => {
132
144
  const preview = __classPrivateFieldGet(this, _USAFileInputElement_preview, "f").call(this);
133
145
  preview.files = input.files;
134
146
  const formData = new FormData();
135
- if (input.files) {
147
+ if (input.files && input.files.length) {
136
148
  box.style.display = "none";
137
149
  for (let file of input.files) {
138
150
  formData.append(this.name, file);
139
151
  }
140
152
  }
141
153
  else {
142
- box.style.display = "block";
154
+ box.style.display = "flex";
143
155
  }
144
156
  __classPrivateFieldGet(this, _USAFileInputElement_internals, "f").setFormValue(formData);
145
157
  }
@@ -1 +1 @@
1
- {"version":3,"file":"file-input.element.js","sourceRoot":"","sources":["../../../src/lib/file-input/file-input.element.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"file-input.element.js","sourceRoot":"","sources":["../../../src/lib/file-input/file-input.element.ts"],"names":[],"mappings":"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"}
@@ -19,8 +19,6 @@ const meta = {
19
19
  </div>
20
20
  </usa-file-input>
21
21
 
22
- <br />
23
-
24
22
  <usa-button type="submit">SUBMIT</usa-button>
25
23
  </form>
26
24
  `;
@@ -1 +1 @@
1
- {"version":3,"file":"file-input.stories.js","sourceRoot":"","sources":["../../../src/lib/file-input/file-input.stories.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAI3B,kFAAkF;AAClF,MAAM,IAAI,GAAG;IACX,KAAK,EAAE,gBAAgB;IACvB,IAAI,EAAE,CAAC,UAAU,CAAC;IAClB,MAAM,CAAC,IAAI;QACT,SAAS,QAAQ,CAAC,CAAQ;YACxB,CAAC,CAAC,cAAc,EAAE,CAAC;YAEnB,MAAM,IAAI,GAAG,IAAI,QAAQ,CAAC,CAAC,CAAC,MAAyB,CAAC,CAAC;YAEvD,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;QACrC,CAAC;QAED,OAAO,IAAI,CAAA;sBACO,QAAQ;;;;;;;;;;;;;KAazB,CAAC;IACJ,CAAC;IACD,QAAQ,EAAE,EAAE;IACZ,IAAI,EAAE,EAAE;CAC2B,CAAC;AAEtC,eAAe,IAAI,CAAC;AAIpB,wFAAwF;AACxF,MAAM,CAAC,MAAM,OAAO,GAAU;IAC5B,IAAI,EAAE,EAAE;CACT,CAAC"}
1
+ {"version":3,"file":"file-input.stories.js","sourceRoot":"","sources":["../../../src/lib/file-input/file-input.stories.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAI3B,kFAAkF;AAClF,MAAM,IAAI,GAAG;IACX,KAAK,EAAE,gBAAgB;IACvB,IAAI,EAAE,CAAC,UAAU,CAAC;IAClB,MAAM,CAAC,IAAI;QACT,SAAS,QAAQ,CAAC,CAAQ;YACxB,CAAC,CAAC,cAAc,EAAE,CAAC;YAEnB,MAAM,IAAI,GAAG,IAAI,QAAQ,CAAC,CAAC,CAAC,MAAyB,CAAC,CAAC;YAEvD,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;QACrC,CAAC;QAED,OAAO,IAAI,CAAA;sBACO,QAAQ;;;;;;;;;;;KAWzB,CAAC;IACJ,CAAC;IACD,QAAQ,EAAE,EAAE;IACZ,IAAI,EAAE,EAAE;CAC2B,CAAC;AAEtC,eAAe,IAAI,CAAC;AAIpB,wFAAwF;AACxF,MAAM,CAAC,MAAM,OAAO,GAAU;IAC5B,IAAI,EAAE,EAAE;CACT,CAAC"}
@@ -13,6 +13,7 @@ export declare class USATextInputElement extends HTMLElement implements Maskable
13
13
  accessor value: string;
14
14
  get selectionStart(): number | null;
15
15
  setSelectionRange(start: number, end: number): void;
16
+ onReady(): void;
16
17
  onChange(): void;
17
18
  onInputChange(): void;
18
19
  attributeChangedCallback(attr: string): void;
@@ -1,10 +1,14 @@
1
1
  import { __classPrivateFieldGet, __classPrivateFieldSet, __esDecorate, __runInitializers, __setFunctionName } from "tslib";
2
- import { attr, css, element, html, listen, query } from "@joist/element";
2
+ import { attr, css, element, html, listen, query, ready } from "@joist/element";
3
3
  import { effect, observe } from "@joist/observable";
4
4
  let USATextInputElement = (() => {
5
5
  var _USATextInputElement_internals, _USATextInputElement_input, _USATextInputElement_name_accessor_storage, _USATextInputElement_autocomplete_accessor_storage, _USATextInputElement_placeholder_accessor_storage, _USATextInputElement_value_accessor_storage;
6
6
  let _classDecorators = [element({
7
7
  tagName: "usa-input",
8
+ shadowDomOpts: {
9
+ mode: "open",
10
+ delegatesFocus: true,
11
+ },
8
12
  shadowDom: [
9
13
  css `
10
14
  * {
@@ -12,13 +16,6 @@ let USATextInputElement = (() => {
12
16
  }
13
17
 
14
18
  :host {
15
- font-family:
16
- Source Sans Pro Web,
17
- Helvetica Neue,
18
- Helvetica,
19
- Roboto,
20
- Arial,
21
- sans-serif;
22
19
  font-size: 1.06rem;
23
20
  line-height: 1.3;
24
21
  display: block;
@@ -73,6 +70,7 @@ let USATextInputElement = (() => {
73
70
  let _value_decorators;
74
71
  let _value_initializers = [];
75
72
  let _value_extraInitializers = [];
73
+ let _onReady_decorators;
76
74
  let _onChange_decorators;
77
75
  let _onInputChange_decorators;
78
76
  var USATextInputElement = _classThis = class extends _classSuper {
@@ -101,6 +99,10 @@ let USATextInputElement = (() => {
101
99
  const input = __classPrivateFieldGet(this, _USATextInputElement_input, "f").call(this);
102
100
  input.setSelectionRange(start, end);
103
101
  }
102
+ onReady() {
103
+ const input = __classPrivateFieldGet(this, _USATextInputElement_input, "f").call(this);
104
+ input.autofocus = this.autofocus;
105
+ }
104
106
  onChange() {
105
107
  const input = __classPrivateFieldGet(this, _USATextInputElement_input, "f").call(this);
106
108
  input.value = this.value;
@@ -144,12 +146,14 @@ let USATextInputElement = (() => {
144
146
  _value_decorators = [attr({
145
147
  reflect: false,
146
148
  }), observe()];
149
+ _onReady_decorators = [ready()];
147
150
  _onChange_decorators = [effect()];
148
151
  _onInputChange_decorators = [listen("input")];
149
152
  __esDecorate(_classThis, null, _name_decorators, { kind: "accessor", name: "name", static: false, private: false, access: { has: obj => "name" in obj, get: obj => obj.name, set: (obj, value) => { obj.name = value; } }, metadata: _metadata }, _name_initializers, _name_extraInitializers);
150
153
  __esDecorate(_classThis, null, _autocomplete_decorators, { kind: "accessor", name: "autocomplete", static: false, private: false, access: { has: obj => "autocomplete" in obj, get: obj => obj.autocomplete, set: (obj, value) => { obj.autocomplete = value; } }, metadata: _metadata }, _autocomplete_initializers, _autocomplete_extraInitializers);
151
154
  __esDecorate(_classThis, null, _placeholder_decorators, { kind: "accessor", name: "placeholder", static: false, private: false, access: { has: obj => "placeholder" in obj, get: obj => obj.placeholder, set: (obj, value) => { obj.placeholder = value; } }, metadata: _metadata }, _placeholder_initializers, _placeholder_extraInitializers);
152
155
  __esDecorate(_classThis, null, _value_decorators, { kind: "accessor", name: "value", static: false, private: false, access: { has: obj => "value" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);
156
+ __esDecorate(_classThis, null, _onReady_decorators, { kind: "method", name: "onReady", static: false, private: false, access: { has: obj => "onReady" in obj, get: obj => obj.onReady }, metadata: _metadata }, null, _instanceExtraInitializers);
153
157
  __esDecorate(_classThis, null, _onChange_decorators, { kind: "method", name: "onChange", static: false, private: false, access: { has: obj => "onChange" in obj, get: obj => obj.onChange }, metadata: _metadata }, null, _instanceExtraInitializers);
154
158
  __esDecorate(_classThis, null, _onInputChange_decorators, { kind: "method", name: "onInputChange", static: false, private: false, access: { has: obj => "onInputChange" in obj, get: obj => obj.onInputChange }, metadata: _metadata }, null, _instanceExtraInitializers);
155
159
  __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
@@ -1 +1 @@
1
- {"version":3,"file":"input.element.js","sourceRoot":"","sources":["../../../src/lib/input/input.element.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"input.element.js","sourceRoot":"","sources":["../../../src/lib/input/input.element.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ declare global {
2
+ interface HTMLElementTagNameMap {
3
+ "usa-modal-close": USAModalCloseElement;
4
+ }
5
+ }
6
+ export declare class USAModalCloseElement extends HTMLElement {
7
+ accessor modalAction: string;
8
+ }
@@ -0,0 +1,78 @@
1
+ import { __classPrivateFieldGet, __classPrivateFieldSet, __esDecorate, __runInitializers, __setFunctionName } from "tslib";
2
+ import { attr, css, element, html } from "@joist/element";
3
+ let USAModalCloseElement = (() => {
4
+ var _USAModalCloseElement_modalAction_accessor_storage;
5
+ let _classDecorators = [element({
6
+ tagName: "usa-modal-close",
7
+ shadowDom: [
8
+ css `
9
+ * {
10
+ box-sizing: border-box;
11
+ }
12
+
13
+ :host {
14
+ display: block;
15
+ position: absolute;
16
+ top: 1rem;
17
+ right: 1rem;
18
+ }
19
+
20
+ button {
21
+ display: flex;
22
+ align-items: center;
23
+ justify-content: center;
24
+ background: none;
25
+ border: none;
26
+ cursor: pointer;
27
+ height: 100%;
28
+ width: 100%;
29
+ border-radius: 100%;
30
+ padding: 0;
31
+ margin: 0;
32
+ }
33
+
34
+ button:focus {
35
+ outline: 0.25rem solid #2491ff;
36
+ outline-offset: 0;
37
+ }
38
+ `,
39
+ html `
40
+ <button aria-label="close modal">
41
+ <usa-icon icon="close"></usa-icon>
42
+ </button>
43
+ `,
44
+ ],
45
+ })];
46
+ let _classDescriptor;
47
+ let _classExtraInitializers = [];
48
+ let _classThis;
49
+ let _classSuper = HTMLElement;
50
+ let _modalAction_decorators;
51
+ let _modalAction_initializers = [];
52
+ let _modalAction_extraInitializers = [];
53
+ var USAModalCloseElement = _classThis = class extends _classSuper {
54
+ get modalAction() { return __classPrivateFieldGet(this, _USAModalCloseElement_modalAction_accessor_storage, "f"); }
55
+ set modalAction(value) { __classPrivateFieldSet(this, _USAModalCloseElement_modalAction_accessor_storage, value, "f"); }
56
+ constructor() {
57
+ super(...arguments);
58
+ _USAModalCloseElement_modalAction_accessor_storage.set(this, __runInitializers(this, _modalAction_initializers, "close"));
59
+ __runInitializers(this, _modalAction_extraInitializers);
60
+ }
61
+ };
62
+ _USAModalCloseElement_modalAction_accessor_storage = new WeakMap();
63
+ __setFunctionName(_classThis, "USAModalCloseElement");
64
+ (() => {
65
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
66
+ _modalAction_decorators = [attr({
67
+ name: "modal-action",
68
+ })];
69
+ __esDecorate(_classThis, null, _modalAction_decorators, { kind: "accessor", name: "modalAction", static: false, private: false, access: { has: obj => "modalAction" in obj, get: obj => obj.modalAction, set: (obj, value) => { obj.modalAction = value; } }, metadata: _metadata }, _modalAction_initializers, _modalAction_extraInitializers);
70
+ __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
71
+ USAModalCloseElement = _classThis = _classDescriptor.value;
72
+ if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
73
+ __runInitializers(_classThis, _classExtraInitializers);
74
+ })();
75
+ return USAModalCloseElement = _classThis;
76
+ })();
77
+ export { USAModalCloseElement };
78
+ //# sourceMappingURL=modal-close.element.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"modal-close.element.js","sourceRoot":"","sources":["../../../../src/lib/modal/modal-close/modal-close.element.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;IAiD7C,oBAAoB;;4BAzChC,OAAO,CAAC;YACP,OAAO,EAAE,iBAAiB;YAC1B,SAAS,EAAE;gBACT,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA8BF;gBACD,IAAI,CAAA;;;;KAIH;aACF;SACF,CAAC;;;;sBACwC,WAAW;;;;iDAAnB,SAAQ,WAAW;QAInD,IAAS,WAAW,oGAAW;QAA/B,IAAS,WAAW,yGAAW;;;YAAtB,gHAAc,OAAO,GAAC;;;;;;;;mCAH9B,IAAI,CAAC;gBACJ,IAAI,EAAE,cAAc;aACrB,CAAC;QACF,4LAAS,WAAW,6BAAX,WAAW,iGAAW;QAJjC,6KAKC;;;QALY,uDAAoB;;;;SAApB,oBAAoB"}
@@ -0,0 +1 @@
1
+ import "./modal-close.element.js";
@@ -0,0 +1,11 @@
1
+ import "./modal-close.element.js";
2
+ import { fixture, html, assert } from "@open-wc/testing";
3
+ describe("usa-modal-close", () => {
4
+ it("should be accessible", async () => {
5
+ const modalClose = await fixture(html `
6
+ <usa-modal-close>Hello World</usa-modal-close>
7
+ `);
8
+ return assert.isAccessible(modalClose);
9
+ });
10
+ });
11
+ //# sourceMappingURL=modal-close.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"modal-close.test.js","sourceRoot":"","sources":["../../../../src/lib/modal/modal-close/modal-close.test.ts"],"names":[],"mappings":"AAAA,OAAO,0BAA0B,CAAC;AAElC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAIzD,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;IAC/B,EAAE,CAAC,sBAAsB,EAAE,KAAK,IAAI,EAAE;QACpC,MAAM,UAAU,GAAG,MAAM,OAAO,CAAuB,IAAI,CAAA;;KAE1D,CAAC,CAAC;QAEH,OAAO,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;IACzC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,7 @@
1
+ declare global {
2
+ interface HTMLElementTagNameMap {
3
+ "usa-modal-heading": USAModalHeadingElement;
4
+ }
5
+ }
6
+ export declare class USAModalHeadingElement extends HTMLElement {
7
+ }
@@ -0,0 +1,50 @@
1
+ import { __esDecorate, __runInitializers, __setFunctionName } from "tslib";
2
+ import { css, element, html } from "@joist/element";
3
+ let USAModalHeadingElement = (() => {
4
+ let _classDecorators = [element({
5
+ tagName: "usa-modal-heading",
6
+ shadowDom: [
7
+ css `
8
+ :host {
9
+ font-family:
10
+ Merriweather Web,
11
+ Georgia,
12
+ Cambria,
13
+ Times New Roman,
14
+ Times,
15
+ serif !important;
16
+
17
+ font-size: 1.22rem;
18
+ }
19
+
20
+ h2 {
21
+ margin-top: 0;
22
+ line-height: 1.4;
23
+ font-size: 1.45rem;
24
+ }
25
+ `,
26
+ html `
27
+ <h2>
28
+ <slot></slot>
29
+ </h2>
30
+ `,
31
+ ],
32
+ })];
33
+ let _classDescriptor;
34
+ let _classExtraInitializers = [];
35
+ let _classThis;
36
+ let _classSuper = HTMLElement;
37
+ var USAModalHeadingElement = _classThis = class extends _classSuper {
38
+ };
39
+ __setFunctionName(_classThis, "USAModalHeadingElement");
40
+ (() => {
41
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
42
+ __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
43
+ USAModalHeadingElement = _classThis = _classDescriptor.value;
44
+ if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
45
+ __runInitializers(_classThis, _classExtraInitializers);
46
+ })();
47
+ return USAModalHeadingElement = _classThis;
48
+ })();
49
+ export { USAModalHeadingElement };
50
+ //# sourceMappingURL=modal-heading.element.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"modal-heading.element.js","sourceRoot":"","sources":["../../../../src/lib/modal/modal-heading/modal-heading.element.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;IAqCvC,sBAAsB;4BA7BlC,OAAO,CAAC;YACP,OAAO,EAAE,mBAAmB;YAC5B,SAAS,EAAE;gBACT,GAAG,CAAA;;;;;;;;;;;;;;;;;;KAkBF;gBACD,IAAI,CAAA;;;;KAIH;aACF;SACF,CAAC;;;;sBAC0C,WAAW;mDAAnB,SAAQ,WAAW;;;;;QAAvD,6KAA0D;;;QAA7C,uDAAsB;;;;SAAtB,sBAAsB"}
@@ -0,0 +1 @@
1
+ import "./modal-heading.element.js";
@@ -0,0 +1,11 @@
1
+ import "./modal-heading.element.js";
2
+ import { fixture, html, assert } from "@open-wc/testing";
3
+ describe("usa-modal-heading", () => {
4
+ it("should be accessible", async () => {
5
+ const modalHeading = await fixture(html `
6
+ <usa-modal-heading>Hello World</usa-modal-heading>
7
+ `);
8
+ return assert.isAccessible(modalHeading);
9
+ });
10
+ });
11
+ //# sourceMappingURL=modal-heading.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"modal-heading.test.js","sourceRoot":"","sources":["../../../../src/lib/modal/modal-heading/modal-heading.test.ts"],"names":[],"mappings":"AAAA,OAAO,4BAA4B,CAAC;AAEpC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAIzD,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;IACjC,EAAE,CAAC,sBAAsB,EAAE,KAAK,IAAI,EAAE;QACpC,MAAM,YAAY,GAAG,MAAM,OAAO,CAAyB,IAAI,CAAA;;KAE9D,CAAC,CAAC;QAEH,OAAO,MAAM,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,13 @@
1
+ declare global {
2
+ interface HTMLElementTagNameMap {
3
+ "usa-modal": USAModalElement;
4
+ }
5
+ }
6
+ export declare class USAModalElement extends HTMLElement {
7
+ #private;
8
+ modalAction: null | string;
9
+ openModal(): void;
10
+ closeModal(): void;
11
+ onGlobalModalAction(e: Event): void;
12
+ onModalAction(e: Event): void;
13
+ }
@@ -0,0 +1,96 @@
1
+ import { __classPrivateFieldGet, __esDecorate, __runInitializers, __setFunctionName } from "tslib";
2
+ import { css, element, html, listen, query } from "@joist/element";
3
+ let USAModalElement = (() => {
4
+ var _USAModalElement_dialog;
5
+ let _classDecorators = [element({
6
+ tagName: "usa-modal",
7
+ shadowDom: [
8
+ css `
9
+ * {
10
+ box-sizing: border-box;
11
+ }
12
+
13
+ :host {
14
+ display: contents;
15
+ }
16
+
17
+ dialog {
18
+ border: none;
19
+ font-size: 1.06rem;
20
+ line-height: 1.5;
21
+ border-radius: 0.5rem;
22
+ background: #fff;
23
+ color: #1b1b1b;
24
+ max-width: 30rem;
25
+ padding-top: 4rem;
26
+ padding-left: 4rem;
27
+ padding-right: 4rem;
28
+ padding-bottom: 2rem;
29
+ width: 100%;
30
+ }
31
+
32
+ ::backdrop {
33
+ background: rgba(0, 0, 0, 0.7);
34
+ }
35
+ `,
36
+ html `
37
+ <dialog>
38
+ <slot></slot>
39
+ </dialog>
40
+ `,
41
+ ],
42
+ })];
43
+ let _classDescriptor;
44
+ let _classExtraInitializers = [];
45
+ let _classThis;
46
+ let _classSuper = HTMLElement;
47
+ let _instanceExtraInitializers = [];
48
+ let _onGlobalModalAction_decorators;
49
+ let _onModalAction_decorators;
50
+ var USAModalElement = _classThis = class extends _classSuper {
51
+ constructor() {
52
+ super(...arguments);
53
+ this.modalAction = (__runInitializers(this, _instanceExtraInitializers), null);
54
+ _USAModalElement_dialog.set(this, query("dialog"));
55
+ }
56
+ openModal() {
57
+ const dialog = __classPrivateFieldGet(this, _USAModalElement_dialog, "f").call(this);
58
+ dialog.showModal();
59
+ }
60
+ closeModal() {
61
+ const dialog = __classPrivateFieldGet(this, _USAModalElement_dialog, "f").call(this);
62
+ dialog.close();
63
+ }
64
+ onGlobalModalAction(e) {
65
+ if (e.target instanceof Element) {
66
+ const modalTarget = e.target.getAttribute("modal-target");
67
+ if (modalTarget === this.id) {
68
+ this.openModal();
69
+ }
70
+ }
71
+ }
72
+ onModalAction(e) {
73
+ if (e.target instanceof Element) {
74
+ this.modalAction = e.target.getAttribute("modal-action");
75
+ this.closeModal();
76
+ this.dispatchEvent(new Event("usa::modal::close"));
77
+ }
78
+ }
79
+ };
80
+ _USAModalElement_dialog = new WeakMap();
81
+ __setFunctionName(_classThis, "USAModalElement");
82
+ (() => {
83
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
84
+ _onGlobalModalAction_decorators = [listen("click", () => document.body)];
85
+ _onModalAction_decorators = [listen("click", (host) => host)];
86
+ __esDecorate(_classThis, null, _onGlobalModalAction_decorators, { kind: "method", name: "onGlobalModalAction", static: false, private: false, access: { has: obj => "onGlobalModalAction" in obj, get: obj => obj.onGlobalModalAction }, metadata: _metadata }, null, _instanceExtraInitializers);
87
+ __esDecorate(_classThis, null, _onModalAction_decorators, { kind: "method", name: "onModalAction", static: false, private: false, access: { has: obj => "onModalAction" in obj, get: obj => obj.onModalAction }, metadata: _metadata }, null, _instanceExtraInitializers);
88
+ __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
89
+ USAModalElement = _classThis = _classDescriptor.value;
90
+ if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
91
+ __runInitializers(_classThis, _classExtraInitializers);
92
+ })();
93
+ return USAModalElement = _classThis;
94
+ })();
95
+ export { USAModalElement };
96
+ //# sourceMappingURL=modal.element.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"modal.element.js","sourceRoot":"","sources":["../../../src/lib/modal/modal.element.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;IA8CtD,eAAe;;4BAtC3B,OAAO,CAAC;YACP,OAAO,EAAE,WAAW;YACpB,SAAS,EAAE;gBACT,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;KA2BF;gBACD,IAAI,CAAA;;;;KAIH;aACF;SACF,CAAC;;;;sBACmC,WAAW;;;;4CAAnB,SAAQ,WAAW;;;YAC9C,gBAAW,IADA,mDAAe,EACG,IAAI,EAAC;YAElC,kCAAU,KAAK,CAAC,QAAQ,CAAC,EAAC;QAmC5B,CAAC;QAjCC,SAAS;YACP,MAAM,MAAM,GAAG,uBAAA,IAAI,+BAAQ,MAAZ,IAAI,CAAU,CAAC;YAE9B,MAAM,CAAC,SAAS,EAAE,CAAC;QACrB,CAAC;QAED,UAAU;YACR,MAAM,MAAM,GAAG,uBAAA,IAAI,+BAAQ,MAAZ,IAAI,CAAU,CAAC;YAE9B,MAAM,CAAC,KAAK,EAAE,CAAC;QACjB,CAAC;QAGD,mBAAmB,CAAC,CAAQ;YAC1B,IAAI,CAAC,CAAC,MAAM,YAAY,OAAO,EAAE,CAAC;gBAChC,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;gBAE1D,IAAI,WAAW,KAAK,IAAI,CAAC,EAAE,EAAE,CAAC;oBAC5B,IAAI,CAAC,SAAS,EAAE,CAAC;gBACnB,CAAC;YACH,CAAC;QACH,CAAC;QAGD,aAAa,CAAC,CAAQ;YACpB,IAAI,CAAC,CAAC,MAAM,YAAY,OAAO,EAAE,CAAC;gBAChC,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;gBAEzD,IAAI,CAAC,UAAU,EAAE,CAAC;gBAElB,IAAI,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC;YACrD,CAAC;QACH,CAAC;;;;;;2CApBA,MAAM,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC;qCAWpC,MAAM,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC;QAVhC,kNAAA,mBAAmB,6DAQlB;QAGD,gMAAA,aAAa,6DAQZ;QArCH,6KAsCC;;;QAtCY,uDAAe;;;;SAAf,eAAe"}
@@ -0,0 +1,12 @@
1
+ import type { StoryObj } from "@storybook/web-components";
2
+ import type { USAModalElement } from "./modal.element.js";
3
+ declare const meta: {
4
+ title: string;
5
+ tags: string[];
6
+ render(): import("lit-html").TemplateResult<1>;
7
+ argTypes: {};
8
+ args: {};
9
+ };
10
+ export default meta;
11
+ type Story = StoryObj<USAModalElement>;
12
+ export declare const Primary: Story;
@@ -0,0 +1,34 @@
1
+ import { html } from "lit";
2
+ // More on how to set up stories at: https://storybook.js.org/docs/writing-stories
3
+ const meta = {
4
+ title: "usa-modal",
5
+ tags: ["autodocs"],
6
+ render() {
7
+ return html `
8
+ <usa-button modal-target="mymodal">Open Modal</usa-button>
9
+
10
+ <usa-modal id="mymodal">
11
+ <usa-modal-close></usa-modal-close>
12
+
13
+ <usa-modal-heading>
14
+ Are you sure you want to continue?
15
+ </usa-modal-heading>
16
+
17
+ <usa-input placeholder="foo@email.com" autofocus>
18
+ Enter your email to continue
19
+ </usa-input>
20
+
21
+ <usa-button modal-action="confirm">Yes I am sure</usa-button>
22
+ <usa-button modal-action="cancel" variant="outline">Cancel</usa-button>
23
+ </usa-modal>
24
+ `;
25
+ },
26
+ argTypes: {},
27
+ args: {},
28
+ };
29
+ export default meta;
30
+ // More on writing stories with args: https://storybook.js.org/docs/writing-stories/args
31
+ export const Primary = {
32
+ args: {},
33
+ };
34
+ //# sourceMappingURL=modal.stories.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"modal.stories.js","sourceRoot":"","sources":["../../../src/lib/modal/modal.stories.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAI3B,kFAAkF;AAClF,MAAM,IAAI,GAAG;IACX,KAAK,EAAE,WAAW;IAClB,IAAI,EAAE,CAAC,UAAU,CAAC;IAClB,MAAM;QACJ,OAAO,IAAI,CAAA;;;;;;;;;;;;;;;;;KAiBV,CAAC;IACJ,CAAC;IACD,QAAQ,EAAE,EAAE;IACZ,IAAI,EAAE,EAAE;CACuB,CAAC;AAElC,eAAe,IAAI,CAAC;AAIpB,wFAAwF;AACxF,MAAM,CAAC,MAAM,OAAO,GAAU;IAC5B,IAAI,EAAE,EAAE;CACT,CAAC"}
@@ -0,0 +1,3 @@
1
+ import "./modal.element.js";
2
+ import "./modal-heading/modal-heading.element.js";
3
+ import "./modal-close/modal-close.element.js";