@dsn-starter-kit/components-web 2.0.0 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (129) hide show
  1. package/dist/index.cjs +929 -0
  2. package/dist/index.cjs.map +1 -0
  3. package/dist/index.d.cts +258 -0
  4. package/dist/index.d.cts.map +1 -0
  5. package/dist/index.d.mts +258 -0
  6. package/dist/index.d.mts.map +1 -0
  7. package/dist/index.mjs +914 -0
  8. package/dist/index.mjs.map +1 -0
  9. package/package.json +21 -13
  10. package/dist/button/Button.d.ts +0 -50
  11. package/dist/button/Button.d.ts.map +0 -1
  12. package/dist/button/Button.js +0 -247
  13. package/dist/button/Button.js.map +0 -1
  14. package/dist/button/Button.test.d.ts +0 -2
  15. package/dist/button/Button.test.d.ts.map +0 -1
  16. package/dist/button/Button.test.js +0 -299
  17. package/dist/button/Button.test.js.map +0 -1
  18. package/dist/button/button-styles.generated.d.ts +0 -2
  19. package/dist/button/button-styles.generated.d.ts.map +0 -1
  20. package/dist/button/button-styles.generated.js +0 -4
  21. package/dist/button/button-styles.generated.js.map +0 -1
  22. package/dist/button/index.d.ts +0 -3
  23. package/dist/button/index.d.ts.map +0 -1
  24. package/dist/button/index.js +0 -2
  25. package/dist/button/index.js.map +0 -1
  26. package/dist/heading/Heading.d.ts +0 -30
  27. package/dist/heading/Heading.d.ts.map +0 -1
  28. package/dist/heading/Heading.js +0 -79
  29. package/dist/heading/Heading.js.map +0 -1
  30. package/dist/heading/Heading.test.d.ts +0 -2
  31. package/dist/heading/Heading.test.d.ts.map +0 -1
  32. package/dist/heading/Heading.test.js +0 -157
  33. package/dist/heading/Heading.test.js.map +0 -1
  34. package/dist/heading/heading-styles.generated.d.ts +0 -2
  35. package/dist/heading/heading-styles.generated.d.ts.map +0 -1
  36. package/dist/heading/heading-styles.generated.js +0 -4
  37. package/dist/heading/heading-styles.generated.js.map +0 -1
  38. package/dist/heading/index.d.ts +0 -3
  39. package/dist/heading/index.d.ts.map +0 -1
  40. package/dist/heading/index.js +0 -2
  41. package/dist/heading/index.js.map +0 -1
  42. package/dist/icon/Icon.d.ts +0 -31
  43. package/dist/icon/Icon.d.ts.map +0 -1
  44. package/dist/icon/Icon.js +0 -110
  45. package/dist/icon/Icon.js.map +0 -1
  46. package/dist/icon/Icon.test.d.ts +0 -2
  47. package/dist/icon/Icon.test.d.ts.map +0 -1
  48. package/dist/icon/Icon.test.js +0 -193
  49. package/dist/icon/Icon.test.js.map +0 -1
  50. package/dist/icon/icon-paths.generated.d.ts +0 -2
  51. package/dist/icon/icon-paths.generated.d.ts.map +0 -1
  52. package/dist/icon/icon-paths.generated.js +0 -56
  53. package/dist/icon/icon-paths.generated.js.map +0 -1
  54. package/dist/icon/icon-styles.generated.d.ts +0 -2
  55. package/dist/icon/icon-styles.generated.d.ts.map +0 -1
  56. package/dist/icon/icon-styles.generated.js +0 -4
  57. package/dist/icon/icon-styles.generated.js.map +0 -1
  58. package/dist/icon/index.d.ts +0 -3
  59. package/dist/icon/index.d.ts.map +0 -1
  60. package/dist/icon/index.js +0 -2
  61. package/dist/icon/index.js.map +0 -1
  62. package/dist/index.d.ts +0 -52
  63. package/dist/index.d.ts.map +0 -1
  64. package/dist/index.js +0 -71
  65. package/dist/index.js.map +0 -1
  66. package/dist/link/Link.d.ts +0 -52
  67. package/dist/link/Link.d.ts.map +0 -1
  68. package/dist/link/Link.js +0 -260
  69. package/dist/link/Link.js.map +0 -1
  70. package/dist/link/Link.test.d.ts +0 -2
  71. package/dist/link/Link.test.d.ts.map +0 -1
  72. package/dist/link/Link.test.js +0 -256
  73. package/dist/link/Link.test.js.map +0 -1
  74. package/dist/link/index.d.ts +0 -3
  75. package/dist/link/index.d.ts.map +0 -1
  76. package/dist/link/index.js +0 -2
  77. package/dist/link/index.js.map +0 -1
  78. package/dist/link/link-styles.generated.d.ts +0 -2
  79. package/dist/link/link-styles.generated.d.ts.map +0 -1
  80. package/dist/link/link-styles.generated.js +0 -4
  81. package/dist/link/link-styles.generated.js.map +0 -1
  82. package/dist/ordered-list/OrderedList.d.ts +0 -32
  83. package/dist/ordered-list/OrderedList.d.ts.map +0 -1
  84. package/dist/ordered-list/OrderedList.js +0 -72
  85. package/dist/ordered-list/OrderedList.js.map +0 -1
  86. package/dist/ordered-list/OrderedList.test.d.ts +0 -2
  87. package/dist/ordered-list/OrderedList.test.d.ts.map +0 -1
  88. package/dist/ordered-list/OrderedList.test.js +0 -82
  89. package/dist/ordered-list/OrderedList.test.js.map +0 -1
  90. package/dist/ordered-list/index.d.ts +0 -2
  91. package/dist/ordered-list/index.d.ts.map +0 -1
  92. package/dist/ordered-list/index.js +0 -2
  93. package/dist/ordered-list/index.js.map +0 -1
  94. package/dist/ordered-list/ordered-list-styles.generated.d.ts +0 -2
  95. package/dist/ordered-list/ordered-list-styles.generated.d.ts.map +0 -1
  96. package/dist/ordered-list/ordered-list-styles.generated.js +0 -4
  97. package/dist/ordered-list/ordered-list-styles.generated.js.map +0 -1
  98. package/dist/paragraph/Paragraph.d.ts +0 -26
  99. package/dist/paragraph/Paragraph.d.ts.map +0 -1
  100. package/dist/paragraph/Paragraph.js +0 -60
  101. package/dist/paragraph/Paragraph.js.map +0 -1
  102. package/dist/paragraph/Paragraph.test.d.ts +0 -2
  103. package/dist/paragraph/Paragraph.test.d.ts.map +0 -1
  104. package/dist/paragraph/Paragraph.test.js +0 -121
  105. package/dist/paragraph/Paragraph.test.js.map +0 -1
  106. package/dist/paragraph/index.d.ts +0 -3
  107. package/dist/paragraph/index.d.ts.map +0 -1
  108. package/dist/paragraph/index.js +0 -2
  109. package/dist/paragraph/index.js.map +0 -1
  110. package/dist/paragraph/paragraph-styles.generated.d.ts +0 -2
  111. package/dist/paragraph/paragraph-styles.generated.d.ts.map +0 -1
  112. package/dist/paragraph/paragraph-styles.generated.js +0 -4
  113. package/dist/paragraph/paragraph-styles.generated.js.map +0 -1
  114. package/dist/unordered-list/UnorderedList.d.ts +0 -22
  115. package/dist/unordered-list/UnorderedList.d.ts.map +0 -1
  116. package/dist/unordered-list/UnorderedList.js +0 -42
  117. package/dist/unordered-list/UnorderedList.js.map +0 -1
  118. package/dist/unordered-list/UnorderedList.test.d.ts +0 -2
  119. package/dist/unordered-list/UnorderedList.test.d.ts.map +0 -1
  120. package/dist/unordered-list/UnorderedList.test.js +0 -56
  121. package/dist/unordered-list/UnorderedList.test.js.map +0 -1
  122. package/dist/unordered-list/index.d.ts +0 -2
  123. package/dist/unordered-list/index.d.ts.map +0 -1
  124. package/dist/unordered-list/index.js +0 -2
  125. package/dist/unordered-list/index.js.map +0 -1
  126. package/dist/unordered-list/unordered-list-styles.generated.d.ts +0 -2
  127. package/dist/unordered-list/unordered-list-styles.generated.d.ts.map +0 -1
  128. package/dist/unordered-list/unordered-list-styles.generated.js +0 -4
  129. package/dist/unordered-list/unordered-list-styles.generated.js.map +0 -1
@@ -1,157 +0,0 @@
1
- import { describe, it, expect, beforeAll, beforeEach } from 'vitest';
2
- import { DsnHeading, defineHeading } from './Heading';
3
- // Register the custom element once for all tests
4
- beforeAll(() => {
5
- defineHeading();
6
- });
7
- function createElement(attrs = {}) {
8
- const el = document.createElement('dsn-heading');
9
- for (const [key, value] of Object.entries(attrs)) {
10
- el.setAttribute(key, value);
11
- }
12
- document.body.appendChild(el);
13
- return el;
14
- }
15
- function getInternalHeading(el) {
16
- return el.shadowRoot.querySelector('h1, h2, h3, h4, h5, h6');
17
- }
18
- describe('DsnHeading', () => {
19
- beforeEach(() => {
20
- document.body.innerHTML = '';
21
- });
22
- describe('rendering', () => {
23
- it('creates a shadow root', () => {
24
- const el = createElement();
25
- expect(el.shadowRoot).not.toBeNull();
26
- });
27
- it('renders an internal heading element', () => {
28
- const el = createElement();
29
- const h = getInternalHeading(el);
30
- expect(h).not.toBeNull();
31
- });
32
- it('renders a style element in shadow DOM', () => {
33
- const el = createElement();
34
- const style = el.shadowRoot.querySelector('style');
35
- expect(style).not.toBeNull();
36
- expect(style.textContent).toContain('.dsn-heading');
37
- });
38
- it('renders a slot for content projection', () => {
39
- const el = createElement();
40
- const slot = el.shadowRoot.querySelector('slot');
41
- expect(slot).not.toBeNull();
42
- });
43
- });
44
- describe('level attribute', () => {
45
- it('defaults to h2', () => {
46
- const el = createElement();
47
- const h = getInternalHeading(el);
48
- expect(h.tagName).toBe('H2');
49
- });
50
- it('renders h1 when level is 1', () => {
51
- const el = createElement({ level: '1' });
52
- const h = getInternalHeading(el);
53
- expect(h.tagName).toBe('H1');
54
- });
55
- it('renders h3 when level is 3', () => {
56
- const el = createElement({ level: '3' });
57
- const h = getInternalHeading(el);
58
- expect(h.tagName).toBe('H3');
59
- });
60
- it('renders h4 when level is 4', () => {
61
- const el = createElement({ level: '4' });
62
- const h = getInternalHeading(el);
63
- expect(h.tagName).toBe('H4');
64
- });
65
- it('renders h5 when level is 5', () => {
66
- const el = createElement({ level: '5' });
67
- const h = getInternalHeading(el);
68
- expect(h.tagName).toBe('H5');
69
- });
70
- it('renders h6 when level is 6', () => {
71
- const el = createElement({ level: '6' });
72
- const h = getInternalHeading(el);
73
- expect(h.tagName).toBe('H6');
74
- });
75
- it('updates element when level changes', () => {
76
- const el = createElement({ level: '2' });
77
- expect(getInternalHeading(el).tagName).toBe('H2');
78
- el.setAttribute('level', '4');
79
- expect(getInternalHeading(el).tagName).toBe('H4');
80
- });
81
- });
82
- describe('appearance attribute', () => {
83
- it('defaults appearance to match level', () => {
84
- const el = createElement({ level: '3' });
85
- const h = getInternalHeading(el);
86
- expect(h.className).toContain('dsn-heading--heading-3');
87
- });
88
- it('allows appearance independent of level', () => {
89
- const el = createElement({ level: '2', appearance: 'heading-4' });
90
- const h = getInternalHeading(el);
91
- expect(h.tagName).toBe('H2');
92
- expect(h.className).toContain('dsn-heading--heading-4');
93
- });
94
- it('updates classes when appearance changes', () => {
95
- const el = createElement({ appearance: 'heading-1' });
96
- const h = getInternalHeading(el);
97
- expect(h.className).toContain('dsn-heading--heading-1');
98
- el.setAttribute('appearance', 'heading-5');
99
- expect(h.className).toContain('dsn-heading--heading-5');
100
- expect(h.className).not.toContain('dsn-heading--heading-1');
101
- });
102
- });
103
- describe('level property', () => {
104
- it('returns "2" when no attribute set', () => {
105
- const el = createElement();
106
- expect(el.level).toBe('2');
107
- });
108
- it('reflects the attribute value', () => {
109
- const el = createElement({ level: '3' });
110
- expect(el.level).toBe('3');
111
- });
112
- it('sets the attribute when property is set', () => {
113
- const el = createElement();
114
- el.level = '5';
115
- expect(el.getAttribute('level')).toBe('5');
116
- });
117
- });
118
- describe('appearance property', () => {
119
- it('defaults to heading-2 when no attributes set', () => {
120
- const el = createElement();
121
- expect(el.appearance).toBe('heading-2');
122
- });
123
- it('reflects the attribute value', () => {
124
- const el = createElement({ appearance: 'heading-3' });
125
- expect(el.appearance).toBe('heading-3');
126
- });
127
- it('sets the attribute when property is set', () => {
128
- const el = createElement();
129
- el.appearance = 'heading-6';
130
- expect(el.getAttribute('appearance')).toBe('heading-6');
131
- });
132
- });
133
- describe('base class', () => {
134
- it('always includes dsn-heading base class', () => {
135
- const el = createElement();
136
- const h = getInternalHeading(el);
137
- expect(h.className).toContain('dsn-heading');
138
- });
139
- it('includes base class with heading-1 appearance', () => {
140
- const el = createElement({ appearance: 'heading-1' });
141
- const h = getInternalHeading(el);
142
- expect(h.className).toContain('dsn-heading');
143
- expect(h.className).toContain('dsn-heading--heading-1');
144
- });
145
- });
146
- describe('custom element registration', () => {
147
- it('is defined as dsn-heading', () => {
148
- expect(customElements.get('dsn-heading')).toBe(DsnHeading);
149
- });
150
- it('does not re-register if already defined', () => {
151
- // Should not throw
152
- defineHeading();
153
- expect(customElements.get('dsn-heading')).toBe(DsnHeading);
154
- });
155
- });
156
- });
157
- //# sourceMappingURL=Heading.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Heading.test.js","sourceRoot":"","sources":["../../src/heading/Heading.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export declare const headingStyles = "/**\n * Shadow DOM wrapper styles for the Heading Web Component.\n * The core heading styles are imported from the shared HTML/CSS source.\n */\n\n:host {\n display: block;\n}\n\n/* Shared heading styles - single source of truth */\n/**\n * Heading Component\n * Uses semantic component tokens for consistent styling\n *\n * Each appearance level has its own complete set of tokens\n * (font-family, font-weight, color, font-size, line-height, margin).\n *\n * The `level` prop controls the semantic HTML element (h1\u2013h6).\n * The `appearance` prop controls the visual style, independently of level.\n */\n\n.dsn-heading {\n margin-block-start: 0;\n text-wrap: balance;\n}\n\n/* Heading 1 Appearance */\n.dsn-heading--heading-1 {\n font-family: var(--dsn-heading-level-1-font-family);\n font-weight: var(--dsn-heading-level-1-font-weight);\n color: var(--dsn-heading-level-1-color);\n font-size: var(--dsn-heading-level-1-font-size);\n line-height: var(--dsn-heading-level-1-line-height);\n margin-block-end: var(--dsn-heading-level-1-margin-block-end);\n}\n\n/* Heading 2 Appearance */\n.dsn-heading--heading-2 {\n font-family: var(--dsn-heading-level-2-font-family);\n font-weight: var(--dsn-heading-level-2-font-weight);\n color: var(--dsn-heading-level-2-color);\n font-size: var(--dsn-heading-level-2-font-size);\n line-height: var(--dsn-heading-level-2-line-height);\n margin-block-end: var(--dsn-heading-level-2-margin-block-end);\n}\n\n/* Heading 3 Appearance */\n.dsn-heading--heading-3 {\n font-family: var(--dsn-heading-level-3-font-family);\n font-weight: var(--dsn-heading-level-3-font-weight);\n color: var(--dsn-heading-level-3-color);\n font-size: var(--dsn-heading-level-3-font-size);\n line-height: var(--dsn-heading-level-3-line-height);\n margin-block-end: var(--dsn-heading-level-3-margin-block-end);\n}\n\n/* Heading 4 Appearance */\n.dsn-heading--heading-4 {\n font-family: var(--dsn-heading-level-4-font-family);\n font-weight: var(--dsn-heading-level-4-font-weight);\n color: var(--dsn-heading-level-4-color);\n font-size: var(--dsn-heading-level-4-font-size);\n line-height: var(--dsn-heading-level-4-line-height);\n margin-block-end: var(--dsn-heading-level-4-margin-block-end);\n}\n\n/* Heading 5 Appearance */\n.dsn-heading--heading-5 {\n font-family: var(--dsn-heading-level-5-font-family);\n font-weight: var(--dsn-heading-level-5-font-weight);\n color: var(--dsn-heading-level-5-color);\n font-size: var(--dsn-heading-level-5-font-size);\n line-height: var(--dsn-heading-level-5-line-height);\n margin-block-end: var(--dsn-heading-level-5-margin-block-end);\n}\n\n/* Heading 6 Appearance */\n.dsn-heading--heading-6 {\n font-family: var(--dsn-heading-level-6-font-family);\n font-weight: var(--dsn-heading-level-6-font-weight);\n color: var(--dsn-heading-level-6-color);\n font-size: var(--dsn-heading-level-6-font-size);\n line-height: var(--dsn-heading-level-6-line-height);\n margin-block-end: var(--dsn-heading-level-6-margin-block-end);\n}\n\n";
2
- //# sourceMappingURL=heading-styles.generated.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"heading-styles.generated.d.ts","sourceRoot":"","sources":["../../src/heading/heading-styles.generated.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,aAAa,o9FAA+8F,CAAC"}
@@ -1,4 +0,0 @@
1
- // Auto-generated — do not edit manually.
2
- // Source: heading.shadow.css + components-html source
3
- export const headingStyles = "/**\n * Shadow DOM wrapper styles for the Heading Web Component.\n * The core heading styles are imported from the shared HTML/CSS source.\n */\n\n:host {\n display: block;\n}\n\n/* Shared heading styles - single source of truth */\n/**\n * Heading Component\n * Uses semantic component tokens for consistent styling\n *\n * Each appearance level has its own complete set of tokens\n * (font-family, font-weight, color, font-size, line-height, margin).\n *\n * The `level` prop controls the semantic HTML element (h1–h6).\n * The `appearance` prop controls the visual style, independently of level.\n */\n\n.dsn-heading {\n margin-block-start: 0;\n text-wrap: balance;\n}\n\n/* Heading 1 Appearance */\n.dsn-heading--heading-1 {\n font-family: var(--dsn-heading-level-1-font-family);\n font-weight: var(--dsn-heading-level-1-font-weight);\n color: var(--dsn-heading-level-1-color);\n font-size: var(--dsn-heading-level-1-font-size);\n line-height: var(--dsn-heading-level-1-line-height);\n margin-block-end: var(--dsn-heading-level-1-margin-block-end);\n}\n\n/* Heading 2 Appearance */\n.dsn-heading--heading-2 {\n font-family: var(--dsn-heading-level-2-font-family);\n font-weight: var(--dsn-heading-level-2-font-weight);\n color: var(--dsn-heading-level-2-color);\n font-size: var(--dsn-heading-level-2-font-size);\n line-height: var(--dsn-heading-level-2-line-height);\n margin-block-end: var(--dsn-heading-level-2-margin-block-end);\n}\n\n/* Heading 3 Appearance */\n.dsn-heading--heading-3 {\n font-family: var(--dsn-heading-level-3-font-family);\n font-weight: var(--dsn-heading-level-3-font-weight);\n color: var(--dsn-heading-level-3-color);\n font-size: var(--dsn-heading-level-3-font-size);\n line-height: var(--dsn-heading-level-3-line-height);\n margin-block-end: var(--dsn-heading-level-3-margin-block-end);\n}\n\n/* Heading 4 Appearance */\n.dsn-heading--heading-4 {\n font-family: var(--dsn-heading-level-4-font-family);\n font-weight: var(--dsn-heading-level-4-font-weight);\n color: var(--dsn-heading-level-4-color);\n font-size: var(--dsn-heading-level-4-font-size);\n line-height: var(--dsn-heading-level-4-line-height);\n margin-block-end: var(--dsn-heading-level-4-margin-block-end);\n}\n\n/* Heading 5 Appearance */\n.dsn-heading--heading-5 {\n font-family: var(--dsn-heading-level-5-font-family);\n font-weight: var(--dsn-heading-level-5-font-weight);\n color: var(--dsn-heading-level-5-color);\n font-size: var(--dsn-heading-level-5-font-size);\n line-height: var(--dsn-heading-level-5-line-height);\n margin-block-end: var(--dsn-heading-level-5-margin-block-end);\n}\n\n/* Heading 6 Appearance */\n.dsn-heading--heading-6 {\n font-family: var(--dsn-heading-level-6-font-family);\n font-weight: var(--dsn-heading-level-6-font-weight);\n color: var(--dsn-heading-level-6-color);\n font-size: var(--dsn-heading-level-6-font-size);\n line-height: var(--dsn-heading-level-6-line-height);\n margin-block-end: var(--dsn-heading-level-6-margin-block-end);\n}\n\n";
4
- //# sourceMappingURL=heading-styles.generated.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"heading-styles.generated.js","sourceRoot":"","sources":["../../src/heading/heading-styles.generated.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,sDAAsD;AACtD,MAAM,CAAC,MAAM,aAAa,GAAG,48FAA48F,CAAC"}
@@ -1,3 +0,0 @@
1
- export { DsnHeading, defineHeading } from './Heading';
2
- export type { HeadingLevel, HeadingAppearance } from './Heading';
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/heading/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AACtD,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC"}
@@ -1,2 +0,0 @@
1
- export { DsnHeading, defineHeading } from './Heading';
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/heading/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC"}
@@ -1,31 +0,0 @@
1
- /**
2
- * DSN Icon Web Component
3
- *
4
- * A custom element that renders SVG icons from the design system icon set.
5
- * Icons are inlined as SVG markup for Shadow DOM encapsulation.
6
- *
7
- * @example
8
- * ```html
9
- * <dsn-icon name="check" size="md"></dsn-icon>
10
- * <dsn-icon name="settings" size="lg" label="Open settings"></dsn-icon>
11
- * ```
12
- */
13
- import { iconPaths } from './icon-paths.generated';
14
- export type IconSize = 'sm' | 'md' | 'lg' | 'xl' | '2xl' | '3xl' | '4xl';
15
- export type IconName = keyof typeof iconPaths;
16
- export declare class DsnIcon extends HTMLElement {
17
- static get observedAttributes(): string[];
18
- private _svg;
19
- constructor();
20
- connectedCallback(): void;
21
- attributeChangedCallback(): void;
22
- private _render;
23
- get name(): string;
24
- set name(value: string);
25
- get size(): IconSize;
26
- set size(value: IconSize);
27
- get label(): string;
28
- set label(value: string);
29
- }
30
- export declare function defineIcon(tagName?: string): void;
31
- //# sourceMappingURL=Icon.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Icon.d.ts","sourceRoot":"","sources":["../../src/icon/Icon.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAEnD,MAAM,MAAM,QAAQ,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC;AACzE,MAAM,MAAM,QAAQ,GAAG,MAAM,OAAO,SAAS,CAAC;AAE9C,qBAAa,OAAQ,SAAQ,WAAW;IACtC,MAAM,KAAK,kBAAkB,IAAI,MAAM,EAAE,CAExC;IAED,OAAO,CAAC,IAAI,CAA8B;;IAW1C,iBAAiB,IAAI,IAAI;IAIzB,wBAAwB,IAAI,IAAI;IAIhC,OAAO,CAAC,OAAO;IAwDf,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,IAAI,CAAC,KAAK,EAAE,MAAM,EAErB;IAGD,IAAI,IAAI,IAAI,QAAQ,CAEnB;IAED,IAAI,IAAI,CAAC,KAAK,EAAE,QAAQ,EAEvB;IAGD,IAAI,KAAK,IAAI,MAAM,CAElB;IAED,IAAI,KAAK,CAAC,KAAK,EAAE,MAAM,EAMtB;CACF;AAGD,wBAAgB,UAAU,CAAC,OAAO,SAAa,GAAG,IAAI,CAIrD"}
package/dist/icon/Icon.js DELETED
@@ -1,110 +0,0 @@
1
- /**
2
- * DSN Icon Web Component
3
- *
4
- * A custom element that renders SVG icons from the design system icon set.
5
- * Icons are inlined as SVG markup for Shadow DOM encapsulation.
6
- *
7
- * @example
8
- * ```html
9
- * <dsn-icon name="check" size="md"></dsn-icon>
10
- * <dsn-icon name="settings" size="lg" label="Open settings"></dsn-icon>
11
- * ```
12
- */
13
- import { iconStyles } from './icon-styles.generated';
14
- import { iconPaths } from './icon-paths.generated';
15
- export class DsnIcon extends HTMLElement {
16
- static get observedAttributes() {
17
- return ['name', 'size', 'label'];
18
- }
19
- constructor() {
20
- super();
21
- this._svg = null;
22
- this.attachShadow({ mode: 'open' });
23
- const style = document.createElement('style');
24
- style.textContent = iconStyles;
25
- this.shadowRoot.appendChild(style);
26
- }
27
- connectedCallback() {
28
- this._render();
29
- }
30
- attributeChangedCallback() {
31
- this._render();
32
- }
33
- _render() {
34
- const name = this.name;
35
- const size = this.size;
36
- const label = this.label;
37
- // Remove existing SVG if any
38
- if (this._svg) {
39
- this._svg.remove();
40
- this._svg = null;
41
- }
42
- if (!name || !(name in iconPaths)) {
43
- return;
44
- }
45
- const paths = iconPaths[name];
46
- // Build SVG element
47
- const svg = document.createElementNS('http://www.w3.org/2000/svg', 'svg');
48
- svg.setAttribute('viewBox', '0 0 24 24');
49
- svg.setAttribute('fill', 'none');
50
- svg.setAttribute('stroke', 'currentColor');
51
- svg.setAttribute('stroke-width', '2');
52
- svg.setAttribute('stroke-linecap', 'round');
53
- svg.setAttribute('stroke-linejoin', 'round');
54
- // Apply CSS classes
55
- const classes = ['dsn-icon'];
56
- if (size !== 'md') {
57
- classes.push(`dsn-icon--${size}`);
58
- }
59
- svg.setAttribute('class', classes.join(' '));
60
- // Accessibility
61
- if (label) {
62
- svg.setAttribute('role', 'img');
63
- svg.setAttribute('aria-label', label);
64
- }
65
- else {
66
- svg.setAttribute('aria-hidden', 'true');
67
- }
68
- // Add paths
69
- for (const d of paths) {
70
- const path = document.createElementNS('http://www.w3.org/2000/svg', 'path');
71
- path.setAttribute('d', d);
72
- svg.appendChild(path);
73
- }
74
- this._svg = svg;
75
- this.shadowRoot.appendChild(svg);
76
- }
77
- // Property: name
78
- get name() {
79
- return this.getAttribute('name') || '';
80
- }
81
- set name(value) {
82
- this.setAttribute('name', value);
83
- }
84
- // Property: size
85
- get size() {
86
- return this.getAttribute('size') || 'md';
87
- }
88
- set size(value) {
89
- this.setAttribute('size', value);
90
- }
91
- // Property: label (accessible label)
92
- get label() {
93
- return this.getAttribute('label') || '';
94
- }
95
- set label(value) {
96
- if (value) {
97
- this.setAttribute('label', value);
98
- }
99
- else {
100
- this.removeAttribute('label');
101
- }
102
- }
103
- }
104
- // Register the custom element
105
- export function defineIcon(tagName = 'dsn-icon') {
106
- if (!customElements.get(tagName)) {
107
- customElements.define(tagName, DsnIcon);
108
- }
109
- }
110
- //# sourceMappingURL=Icon.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Icon.js","sourceRoot":"","sources":["../../src/icon/Icon.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=Icon.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Icon.test.d.ts","sourceRoot":"","sources":["../../src/icon/Icon.test.ts"],"names":[],"mappings":""}
@@ -1,193 +0,0 @@
1
- import { describe, it, expect, beforeEach } from 'vitest';
2
- import { DsnIcon, defineIcon } from './Icon';
3
- // Register the custom element for tests
4
- defineIcon();
5
- function createElement(attrs = {}) {
6
- const el = document.createElement('dsn-icon');
7
- for (const [key, value] of Object.entries(attrs)) {
8
- el.setAttribute(key, value);
9
- }
10
- document.body.appendChild(el);
11
- return el;
12
- }
13
- describe('DsnIcon', () => {
14
- beforeEach(() => {
15
- document.body.innerHTML = '';
16
- });
17
- describe('registration', () => {
18
- it('should be registered as dsn-icon', () => {
19
- expect(customElements.get('dsn-icon')).toBe(DsnIcon);
20
- });
21
- it('should be an instance of HTMLElement', () => {
22
- const el = createElement({ name: 'check' });
23
- expect(el).toBeInstanceOf(HTMLElement);
24
- });
25
- it('should have a shadow root', () => {
26
- const el = createElement({ name: 'check' });
27
- expect(el.shadowRoot).not.toBeNull();
28
- });
29
- });
30
- describe('rendering', () => {
31
- it('should render an SVG when name is set', () => {
32
- const el = createElement({ name: 'check' });
33
- const svg = el.shadowRoot.querySelector('svg');
34
- expect(svg).not.toBeNull();
35
- });
36
- it('should not render an SVG when name is empty', () => {
37
- const el = createElement();
38
- const svg = el.shadowRoot.querySelector('svg');
39
- expect(svg).toBeNull();
40
- });
41
- it('should not render an SVG for unknown icon names', () => {
42
- const el = createElement({ name: 'nonexistent-icon' });
43
- const svg = el.shadowRoot.querySelector('svg');
44
- expect(svg).toBeNull();
45
- });
46
- it('should render path elements inside the SVG', () => {
47
- const el = createElement({ name: 'check' });
48
- const paths = el.shadowRoot.querySelectorAll('svg path');
49
- expect(paths.length).toBeGreaterThan(0);
50
- });
51
- it('should have correct SVG attributes', () => {
52
- const el = createElement({ name: 'check' });
53
- const svg = el.shadowRoot.querySelector('svg');
54
- expect(svg.getAttribute('viewBox')).toBe('0 0 24 24');
55
- expect(svg.getAttribute('fill')).toBe('none');
56
- expect(svg.getAttribute('stroke')).toBe('currentColor');
57
- expect(svg.getAttribute('stroke-width')).toBe('2');
58
- expect(svg.getAttribute('stroke-linecap')).toBe('round');
59
- expect(svg.getAttribute('stroke-linejoin')).toBe('round');
60
- });
61
- it('should update SVG when name attribute changes', () => {
62
- const el = createElement({ name: 'check' });
63
- const pathsBefore = el.shadowRoot.querySelectorAll('svg path');
64
- el.setAttribute('name', 'plus');
65
- const pathsAfter = el.shadowRoot.querySelectorAll('svg path');
66
- // plus has 2 paths, check has 1
67
- expect(pathsAfter.length).toBe(2);
68
- expect(pathsBefore.length).toBe(1);
69
- });
70
- it('should remove SVG when name is set to unknown', () => {
71
- const el = createElement({ name: 'check' });
72
- expect(el.shadowRoot.querySelector('svg')).not.toBeNull();
73
- el.setAttribute('name', 'invalid');
74
- expect(el.shadowRoot.querySelector('svg')).toBeNull();
75
- });
76
- });
77
- describe('sizes', () => {
78
- it('should default to md size', () => {
79
- const el = createElement({ name: 'check' });
80
- const svg = el.shadowRoot.querySelector('svg');
81
- expect(svg.classList.contains('dsn-icon')).toBe(true);
82
- // md is default, no modifier class needed
83
- expect(svg.classList.contains('dsn-icon--md')).toBe(false);
84
- });
85
- it.each(['sm', 'lg', 'xl', '2xl', '3xl', '4xl'])('should apply dsn-icon--%s class for size="%s"', (size) => {
86
- const el = createElement({ name: 'check', size });
87
- const svg = el.shadowRoot.querySelector('svg');
88
- expect(svg.classList.contains(`dsn-icon--${size}`)).toBe(true);
89
- });
90
- it('should update size class when size attribute changes', () => {
91
- const el = createElement({ name: 'check', size: 'sm' });
92
- let svg = el.shadowRoot.querySelector('svg');
93
- expect(svg.classList.contains('dsn-icon--sm')).toBe(true);
94
- el.setAttribute('size', 'lg');
95
- svg = el.shadowRoot.querySelector('svg');
96
- expect(svg.classList.contains('dsn-icon--lg')).toBe(true);
97
- expect(svg.classList.contains('dsn-icon--sm')).toBe(false);
98
- });
99
- });
100
- describe('accessibility', () => {
101
- it('should be aria-hidden when no label is provided', () => {
102
- const el = createElement({ name: 'check' });
103
- const svg = el.shadowRoot.querySelector('svg');
104
- expect(svg.getAttribute('aria-hidden')).toBe('true');
105
- });
106
- it('should have role=img and aria-label when label is provided', () => {
107
- const el = createElement({ name: 'check', label: 'Checkmark' });
108
- const svg = el.shadowRoot.querySelector('svg');
109
- expect(svg.getAttribute('role')).toBe('img');
110
- expect(svg.getAttribute('aria-label')).toBe('Checkmark');
111
- });
112
- it('should not have aria-hidden when label is provided', () => {
113
- const el = createElement({ name: 'check', label: 'Checkmark' });
114
- const svg = el.shadowRoot.querySelector('svg');
115
- expect(svg.hasAttribute('aria-hidden')).toBe(false);
116
- });
117
- it('should update accessibility when label changes', () => {
118
- const el = createElement({ name: 'check' });
119
- let svg = el.shadowRoot.querySelector('svg');
120
- expect(svg.getAttribute('aria-hidden')).toBe('true');
121
- el.setAttribute('label', 'Done');
122
- svg = el.shadowRoot.querySelector('svg');
123
- expect(svg.getAttribute('role')).toBe('img');
124
- expect(svg.getAttribute('aria-label')).toBe('Done');
125
- });
126
- });
127
- describe('properties', () => {
128
- it('should reflect name property to attribute', () => {
129
- const el = createElement();
130
- el.name = 'star';
131
- expect(el.getAttribute('name')).toBe('star');
132
- });
133
- it('should reflect size property to attribute', () => {
134
- const el = createElement({ name: 'check' });
135
- el.size = 'lg';
136
- expect(el.getAttribute('size')).toBe('lg');
137
- });
138
- it('should reflect label property to attribute', () => {
139
- const el = createElement({ name: 'check' });
140
- el.label = 'Done';
141
- expect(el.getAttribute('label')).toBe('Done');
142
- });
143
- it('should remove label attribute when set to empty string', () => {
144
- const el = createElement({ name: 'check', label: 'Done' });
145
- el.label = '';
146
- expect(el.hasAttribute('label')).toBe(false);
147
- });
148
- it('should return correct default values for properties', () => {
149
- const el = createElement({ name: 'check' });
150
- expect(el.name).toBe('check');
151
- expect(el.size).toBe('md');
152
- expect(el.label).toBe('');
153
- });
154
- });
155
- describe('icons', () => {
156
- const iconNames = [
157
- 'arrow-left',
158
- 'arrow-right',
159
- 'check',
160
- 'chevron-down',
161
- 'chevron-left',
162
- 'chevron-right',
163
- 'chevron-up',
164
- 'download',
165
- 'edit',
166
- 'heart',
167
- 'home',
168
- 'menu',
169
- 'minus',
170
- 'plus',
171
- 'search',
172
- 'settings',
173
- 'star',
174
- 'trash',
175
- 'user',
176
- 'x',
177
- ];
178
- it.each(iconNames)('should render icon "%s"', (name) => {
179
- const el = createElement({ name });
180
- const svg = el.shadowRoot.querySelector('svg');
181
- expect(svg).not.toBeNull();
182
- const paths = svg.querySelectorAll('path');
183
- expect(paths.length).toBeGreaterThan(0);
184
- });
185
- });
186
- describe('defineIcon', () => {
187
- it('should not throw when called multiple times', () => {
188
- expect(() => defineIcon()).not.toThrow();
189
- expect(() => defineIcon()).not.toThrow();
190
- });
191
- });
192
- });
193
- //# sourceMappingURL=Icon.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Icon.test.js","sourceRoot":"","sources":["../../src/icon/Icon.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export declare const iconPaths: Record<string, string[]>;
2
- //# sourceMappingURL=icon-paths.generated.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"icon-paths.generated.d.ts","sourceRoot":"","sources":["../../src/icon/icon-paths.generated.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAoD9C,CAAC"}