@salesforcedevs/arch-components 1.20.17-alpha8 → 1.25.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 (158) hide show
  1. package/LICENSE +12 -0
  2. package/lwc.config.json +42 -3
  3. package/package.json +36 -46
  4. package/src/assets/css/arch-variables.css +512 -0
  5. package/src/modules/arch/badge/badge.css +22 -0
  6. package/src/modules/arch/badge/badge.html +5 -0
  7. package/src/modules/arch/badge/badge.ts +9 -0
  8. package/src/modules/arch/button/button.css +1 -0
  9. package/src/modules/arch/button/button.html +20 -0
  10. package/src/modules/arch/button/button.ts +67 -0
  11. package/src/modules/arch/buttonLink/buttonLink.css +1 -0
  12. package/src/modules/arch/buttonLink/buttonLink.html +19 -0
  13. package/src/modules/arch/buttonLink/buttonLink.stories.js +34 -0
  14. package/src/modules/arch/buttonLink/buttonLink.ts +8 -0
  15. package/src/modules/arch/buttonStyles/buttonStyles.css +220 -0
  16. package/src/modules/arch/card/card.css +128 -0
  17. package/src/modules/arch/card/card.html +85 -0
  18. package/src/modules/arch/card/card.ts +277 -0
  19. package/src/modules/arch/cardBase/cardBase.css +11 -0
  20. package/src/modules/arch/cardBase/cardBase.html +2 -0
  21. package/src/modules/arch/cardGridA/cardGridA.css +11 -0
  22. package/src/modules/arch/cardGridA/cardGridA.html +21 -0
  23. package/src/modules/arch/cardGridA/cardGridA.stories.js +118 -0
  24. package/src/modules/arch/cardGridA/cardGridA.ts +24 -0
  25. package/src/modules/arch/cardGridC/cardGridC.css +24 -0
  26. package/src/modules/arch/cardGridC/cardGridC.html +22 -0
  27. package/src/modules/arch/cardGridC/cardGridC.stories.js +51 -0
  28. package/src/modules/arch/cardGridC/cardGridC.ts +11 -0
  29. package/src/modules/arch/cardGridD/cardGridD.css +17 -0
  30. package/src/modules/arch/cardGridD/cardGridD.html +20 -0
  31. package/src/modules/arch/cardGridD/cardGridD.stories.js +43 -0
  32. package/src/modules/arch/cardGridD/cardGridD.ts +7 -0
  33. package/src/modules/arch/cardNew/cardNew.css +31 -0
  34. package/src/modules/arch/cardNew/cardNew.html +32 -0
  35. package/src/modules/arch/cardNew/cardNew.ts +66 -0
  36. package/src/modules/arch/children/children.html +2 -0
  37. package/src/modules/arch/children/children.ts +31 -0
  38. package/src/modules/arch/color/color.ts +59 -0
  39. package/src/modules/arch/content/__fixtures__/index.ts +884 -0
  40. package/src/modules/arch/content/content.css +643 -0
  41. package/src/modules/arch/content/content.html +65 -0
  42. package/src/modules/arch/content/content.stories.js +21 -0
  43. package/src/modules/arch/content/content.ts +169 -0
  44. package/src/modules/arch/contentIcon/contentIcon.css +48 -0
  45. package/src/modules/arch/contentIcon/contentIcon.html +15 -0
  46. package/src/modules/arch/contentIcon/contentIcon.stories.js +130 -0
  47. package/src/modules/arch/contentIcon/contentIcon.ts +68 -0
  48. package/src/{common → modules/arch}/context/context.ts +21 -19
  49. package/src/modules/arch/contextAdapter/constants.ts +1 -0
  50. package/src/modules/arch/contextAdapter/contextAdapter.ts +54 -0
  51. package/src/modules/arch/debounce/debounce.ts +32 -0
  52. package/src/modules/arch/dialog/dialog.ts +154 -0
  53. package/src/modules/arch/dialogStyles/dialogStyles.css +90 -0
  54. package/src/modules/arch/effectAdapter/effectAdapter.html +1 -0
  55. package/src/modules/arch/effectAdapter/effectAdapter.ts +28 -0
  56. package/src/modules/arch/explorer/explorer.css +301 -0
  57. package/src/modules/arch/explorer/explorer.html +418 -0
  58. package/src/modules/arch/explorer/explorer.ts +718 -0
  59. package/src/modules/arch/explorer/types.d.ts +60 -0
  60. package/src/modules/arch/fetch/fetch.ts +55 -0
  61. package/src/modules/arch/footerMfe/footerMfe.html +3 -0
  62. package/src/modules/arch/footerMfe/footerMfe.ts +19 -0
  63. package/src/modules/arch/gallery/gallery.css +365 -0
  64. package/src/modules/arch/gallery/gallery.html +71 -0
  65. package/src/modules/arch/gallery/gallery.ts +366 -0
  66. package/src/modules/arch/gallery/types.d.ts +35 -0
  67. package/src/modules/arch/heading/heading.css +1 -0
  68. package/src/modules/arch/heading/heading.html +9 -0
  69. package/src/modules/arch/heading/heading.ts +36 -0
  70. package/src/modules/arch/helpers/helpers.ts +141 -0
  71. package/src/modules/arch/heroA/heroA.css +116 -0
  72. package/src/modules/arch/heroA/heroA.html +28 -0
  73. package/src/modules/arch/heroA/heroA.stories.js +60 -0
  74. package/src/modules/arch/heroA/heroA.ts +53 -0
  75. package/src/modules/arch/heroB/heroB.css +79 -0
  76. package/src/modules/arch/heroB/heroB.html +27 -0
  77. package/src/modules/arch/heroB/heroB.stories.js +55 -0
  78. package/src/modules/arch/heroB/heroB.ts +26 -0
  79. package/src/modules/arch/i18n/i18n.ts +78 -0
  80. package/src/modules/arch/icon/icon.css +28 -0
  81. package/src/modules/arch/icon/icon.html +17 -0
  82. package/src/modules/arch/icon/icon.stories.js +26 -0
  83. package/src/modules/arch/icon/icon.ts +92 -0
  84. package/src/modules/arch/instrumentation/instrumentation.css +1 -0
  85. package/src/modules/arch/instrumentation/instrumentation.html +1 -0
  86. package/src/modules/arch/instrumentation/instrumentation.ts +113 -0
  87. package/src/modules/arch/labels/helpers.ts +25 -0
  88. package/src/modules/arch/labels/pointHelpers.ts +47 -0
  89. package/src/modules/arch/labels/timeHelpers.ts +182 -0
  90. package/src/modules/arch/labels/types.d.ts +5 -0
  91. package/src/modules/arch/logger/logger.ts +33 -0
  92. package/src/modules/arch/menu/menu.ts +260 -0
  93. package/src/modules/arch/overflow/overflow.ts +71 -0
  94. package/src/modules/arch/page/page.css +3 -0
  95. package/src/modules/arch/page/page.html +3 -0
  96. package/src/modules/arch/page/page.stories.js +19 -0
  97. package/src/modules/arch/page/page.ts +3 -0
  98. package/src/modules/arch/pageHeaderA/pageHeaderA.css +82 -0
  99. package/src/modules/arch/pageHeaderA/pageHeaderA.html +24 -0
  100. package/src/modules/arch/pageHeaderA/pageHeaderA.stories.js +25 -0
  101. package/src/modules/arch/pageHeaderA/pageHeaderA.ts +51 -0
  102. package/src/modules/arch/pill/pill.css +70 -0
  103. package/src/modules/arch/pill/pill.html +17 -0
  104. package/src/modules/arch/pill/pill.ts +34 -0
  105. package/src/modules/arch/polling-request.ts +97 -0
  106. package/src/modules/arch/reflectedElement/reflectedElement.html +2 -0
  107. package/src/{common → modules/arch}/reflectedElement/reflectedElement.ts +5 -3
  108. package/src/modules/arch/reset/reset.css +39 -0
  109. package/src/modules/arch/searchList/searchList.css +120 -0
  110. package/src/modules/arch/searchList/searchList.html +46 -0
  111. package/src/modules/arch/searchList/searchList.ts +53 -0
  112. package/src/modules/arch/sectionA/sectionA.css +64 -0
  113. package/src/modules/arch/sectionA/sectionA.html +21 -0
  114. package/src/modules/arch/sectionA/sectionA.stories.js +25 -0
  115. package/src/modules/arch/sectionA/sectionA.ts +27 -0
  116. package/src/modules/arch/select/select.css +40 -0
  117. package/src/modules/arch/select/select.html +24 -0
  118. package/src/modules/arch/select/select.ts +64 -0
  119. package/src/modules/arch/socialShare/socialShare.css +50 -0
  120. package/src/modules/arch/socialShare/socialShare.html +56 -0
  121. package/src/modules/arch/socialShare/socialShare.ts +29 -0
  122. package/src/modules/arch/spinner/spinner.css +195 -0
  123. package/src/modules/arch/spinner/spinner.html +9 -0
  124. package/src/modules/arch/spinner/spinner.ts +15 -0
  125. package/src/modules/arch/styles/styles.css +24 -0
  126. package/src/modules/arch/summary/summary.css +134 -0
  127. package/src/modules/arch/summary/summary.html +71 -0
  128. package/src/modules/arch/summary/summary.stories.js +163 -0
  129. package/src/modules/arch/summary/summary.ts +96 -0
  130. package/src/modules/arch/tab/tab.css +3 -0
  131. package/src/modules/arch/tab/tab.html +5 -0
  132. package/src/modules/arch/tab/tab.ts +46 -0
  133. package/src/modules/arch/tabset/tabset.css +112 -0
  134. package/src/modules/arch/tabset/tabset.html +62 -0
  135. package/src/modules/arch/tabset/tabset.ts +244 -0
  136. package/src/modules/arch/testutils.ts +118 -0
  137. package/src/modules/arch/threeCardGrid/threeCardGrid.css +6 -0
  138. package/src/modules/arch/threeCardGrid/threeCardGrid.html +5 -0
  139. package/src/modules/arch/threeCardGrid/threeCardGrid.ts +3 -0
  140. package/src/modules/arch/track/track.ts +23 -0
  141. package/src/modules/arch/trailhead.ts +120 -0
  142. package/src/modules/arch/types.d.ts +1 -0
  143. package/src/modules/arch/useEffectAttr.ts +16 -0
  144. package/src/modules/arch/utils/utils.ts +20 -0
  145. package/src/modules/arch/withState.ts +21 -0
  146. package/src/modules/arch/xsfMfeEvents/xsfMfeEvents.html +1 -0
  147. package/src/modules/arch/xsfMfeEvents/xsfMfeEvents.ts +47 -0
  148. package/src/common/effectAdapter/__tests__/effectAdapter.test.ts +0 -12
  149. package/src/common/effectAdapter/effectAdapter.ts +0 -18
  150. package/src/common/reflectedElement/__tests__/modules/test/select/select.html +0 -3
  151. package/src/common/reflectedElement/__tests__/modules/test/select/select.ts +0 -7
  152. package/src/common/reflectedElement/__tests__/modules/test/selectTransform/selectTransform.html +0 -3
  153. package/src/common/reflectedElement/__tests__/modules/test/selectTransform/selectTransform.ts +0 -18
  154. package/src/common/reflectedElement/__tests__/reflectedElement.test.ts +0 -75
  155. package/src/common/slot/__tests__/slot.test.ts +0 -96
  156. package/src/common/slot/slot.ts +0 -20
  157. /package/src/{common → modules/arch}/context/context.html +0 -0
  158. /package/src/{common/effectAdapter/effectAdapter.html → modules/arch/contextAdapter/contextAdapter.html} +0 -0
@@ -1,18 +0,0 @@
1
- import { ReflectedElement } from '../../../../reflectedElement';
2
-
3
- export default class extends ReflectedElement {
4
- get contentElement() {
5
- return this.template.querySelector('select') as HTMLSelectElement;
6
- }
7
-
8
- innerHTMLSetCallback() {
9
- this.contentElement.setAttribute(
10
- 'data-count',
11
- String(this.contentElement.querySelectorAll('option').length)
12
- );
13
- }
14
-
15
- transformHTML(html: string) {
16
- return `${html} <option value="last">Last</option>`;
17
- }
18
- }
@@ -1,75 +0,0 @@
1
- import { html, renderIntoBody } from 'shared/testutils';
2
-
3
- import Select from './modules/test/select/select';
4
- import SelectTransform from './modules/test/selectTransform/selectTransform';
5
-
6
- customElements.define('test-select', Select.CustomElementConstructor);
7
- customElements.define(
8
- 'test-select-transform',
9
- SelectTransform.CustomElementConstructor
10
- );
11
-
12
- describe('reflected-element', () => {
13
- afterEach(() => {
14
- document.body.innerHTML = '';
15
- });
16
-
17
- // Skip these snapshot tests as LWC slot content doesn't render consistently in tests
18
- it.skip('reflects the innerHTML', async () => {
19
- let element = renderIntoBody(
20
- html`
21
- <test-select>
22
- <option value="a">A</option>
23
- <option value="b">B</option>
24
- </test-select>
25
- `
26
- );
27
- await new Promise((resolve) => setTimeout(resolve, 100));
28
- expect(
29
- element.shadowRoot!.querySelector('select')!.innerHTML
30
- ).toMatchHTMLSnapshot();
31
- }, 10000);
32
-
33
- it.skip('transforms the innerHTML', async () => {
34
- let element = renderIntoBody(
35
- html`
36
- <test-select-transform>
37
- <option value="a">A</option>
38
- <option value="b">B</option>
39
- </test-select-transform>
40
- `
41
- );
42
- await new Promise((resolve) => setTimeout(resolve, 100));
43
- expect(
44
- element.shadowRoot!.querySelector('select')!.innerHTML
45
- ).toMatchHTMLSnapshot();
46
- }, 10000);
47
-
48
- it('renders components with reflected innerHTML', async () => {
49
- let element = renderIntoBody(html`<test-select></test-select>`);
50
- await new Promise((resolve) => setTimeout(resolve, 50));
51
- expect(element).toBeTruthy();
52
- expect(element.shadowRoot!.querySelector('select')).toBeTruthy();
53
- }, 10000);
54
-
55
- it('calls innerHTMLSetCallback', async () => {
56
- let element = renderIntoBody(
57
- html`
58
- <test-select-transform>
59
- <option value="a">A</option>
60
- <option value="b">B</option>
61
- <option value="b">C</option>
62
- </test-select-transform>
63
- `
64
- );
65
- await new Promise((resolve) => setTimeout(resolve, 100));
66
-
67
- const select = element.shadowRoot!.querySelector('select')!;
68
- const count = select.getAttribute('data-count');
69
-
70
- // Due to LWC slot limitations, the count might be 1 or 4
71
- // Just verify the callback was called (count attribute exists)
72
- expect(select).toHaveAttribute('data-count');
73
- expect(parseInt(count!)).toBeGreaterThan(0);
74
- }, 10000);
75
- });
@@ -1,96 +0,0 @@
1
- import { html, renderIntoBody } from 'shared/testutils';
2
-
3
- import { assignedSlotNames, isSlotAssigned } from '../slot';
4
-
5
- customElements.define(
6
- 'test-a',
7
- class extends HTMLElement {
8
- connectedCallback() {
9
- this.attachShadow({ mode: 'open' });
10
- this.shadowRoot!.innerHTML = `
11
- <test-b>
12
- <slot></slot>
13
- <slot name="header" slot="header"></slot>
14
- <slot name="footer" slot="footer"></slot>
15
- </test-b>
16
- `;
17
- }
18
- }
19
- );
20
-
21
- customElements.define(
22
- 'test-b',
23
- class extends HTMLElement {
24
- connectedCallback() {
25
- this.attachShadow({ mode: 'open' });
26
- this.shadowRoot!.innerHTML = `
27
- <slot></slot>
28
- <slot name="header"></slot>
29
- <slot name="footer"></slot>
30
- `;
31
- }
32
- }
33
- );
34
-
35
- describe('isSlotAssigned', () => {
36
- describe('false', () => {
37
- it('test-a', () => {
38
- let element = renderIntoBody(html` <test-a></test-a> `);
39
- let slot = element.shadowRoot!.querySelector('slot')!;
40
- expect(isSlotAssigned(slot)).toBe(false);
41
- });
42
- it('test-b', () => {
43
- let element = renderIntoBody(html` <test-a></test-a> `);
44
- let slot = element
45
- .shadowRoot!.querySelector('test-b')!
46
- .shadowRoot!.querySelector('slot')!;
47
- expect(isSlotAssigned(slot)).toBe(false);
48
- });
49
- });
50
- describe('true', () => {
51
- it('test-a', () => {
52
- let element = renderIntoBody(html`
53
- <test-a>
54
- <h1>Hello</h1>
55
- </test-a>
56
- `);
57
- let slot = element.shadowRoot!.querySelector('slot')!;
58
- expect(isSlotAssigned(slot)).toBe(true);
59
- });
60
- it('test-b', () => {
61
- let element = renderIntoBody(html`
62
- <test-a>
63
- <h1>Hello</h1>
64
- </test-a>
65
- `);
66
- let slot = element
67
- .shadowRoot!.querySelector('test-b')!
68
- .shadowRoot!.querySelector('slot')!;
69
- expect(isSlotAssigned(slot)).toBe(true);
70
- });
71
- });
72
- });
73
-
74
- describe('assignedSlotNames', () => {
75
- it('test-a', () => {
76
- let element = renderIntoBody(html`
77
- <test-a>
78
- <h1>Hello</h1>
79
- <header slot="header"></header>
80
- </test-a>
81
- `);
82
- let shadowRoot = element.shadowRoot!;
83
- expect(assignedSlotNames(shadowRoot)).toEqual(['default', 'header']);
84
- });
85
- it('test-b', () => {
86
- let element = renderIntoBody(html`
87
- <test-a>
88
- <h1>Hello</h1>
89
- <header slot="header"></header>
90
- </test-a>
91
- `);
92
- let shadowRoot =
93
- element.shadowRoot!.querySelector('test-b')!.shadowRoot!;
94
- expect(assignedSlotNames(shadowRoot)).toEqual(['default', 'header']);
95
- });
96
- });
@@ -1,20 +0,0 @@
1
- export function assignedSlotNames(template: {
2
- querySelectorAll(selector: string): NodeList;
3
- }) {
4
- let slots = Array.from(
5
- template.querySelectorAll('slot')
6
- ) as HTMLSlotElement[];
7
- return slots
8
- .filter(isSlotAssigned)
9
- .map((slot) => slot.getAttribute('name') || 'default');
10
- }
11
-
12
- export function isSlotAssigned(slot: HTMLSlotElement): boolean {
13
- let [element] = slot.assignedElements();
14
- if (element) {
15
- if (element.tagName === 'SLOT')
16
- return isSlotAssigned(element as HTMLSlotElement);
17
- return true;
18
- }
19
- return slot.children.length > 0;
20
- }