@aurodesignsystem-dev/auro-accordion 0.0.0-pr190.0 → 0.0.0-pr200.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 (133) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/NOTICE +2 -0
  3. package/README.md +25 -59
  4. package/demo/api.js +2 -1
  5. package/demo/api.md +13 -7
  6. package/demo/api.min.js +15 -2028
  7. package/demo/auro-accordion.min.js +727 -0
  8. package/demo/index.js +12 -14
  9. package/demo/index.min.js +13 -2024
  10. package/dist/auro-accordion-B6aPKaGa.js +113 -0
  11. package/dist/index.d.ts +121 -0
  12. package/dist/index.js +1 -0
  13. package/dist/registered.js +1 -0
  14. package/package.json +40 -129
  15. package/.husky/commit-msg +0 -1
  16. package/.husky/pre-commit +0 -1
  17. package/.vscode/settings.json +0 -8
  18. package/apiExamples/accordionGroup.html +0 -47
  19. package/apiExamples/accordionGroupLg.html +0 -47
  20. package/apiExamples/accordionGroupSm.html +0 -47
  21. package/apiExamples/alignChevronRight.html +0 -15
  22. package/apiExamples/alignRight.html +0 -15
  23. package/apiExamples/basic.html +0 -15
  24. package/apiExamples/chevronNone.html +0 -15
  25. package/apiExamples/chevronRight.html +0 -15
  26. package/apiExamples/custom.html +0 -15
  27. package/apiExamples/customGroup.html +0 -47
  28. package/apiExamples/disabled.html +0 -15
  29. package/apiExamples/disabledGroup.html +0 -47
  30. package/apiExamples/emphasis.html +0 -47
  31. package/apiExamples/expanded.html +0 -17
  32. package/apiExamples/expanded.js +0 -11
  33. package/apiExamples/noToggleExpanded.html +0 -47
  34. package/coverage/lcov-report/auro-accordion-group.js.html +0 -472
  35. package/coverage/lcov-report/auro-accordion.js.html +0 -664
  36. package/coverage/lcov-report/base.css +0 -224
  37. package/coverage/lcov-report/block-navigation.js +0 -87
  38. package/coverage/lcov-report/color-css.js.html +0 -91
  39. package/coverage/lcov-report/favicon.png +0 -0
  40. package/coverage/lcov-report/iconVersion.js.html +0 -85
  41. package/coverage/lcov-report/index.html +0 -131
  42. package/coverage/lcov-report/prettify.css +0 -1
  43. package/coverage/lcov-report/prettify.js +0 -2
  44. package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  45. package/coverage/lcov-report/sorter.js +0 -196
  46. package/coverage/lcov-report/src/auro-accordion-button.js.html +0 -283
  47. package/coverage/lcov-report/src/auro-accordion-group.js.html +0 -538
  48. package/coverage/lcov-report/src/auro-accordion.js.html +0 -895
  49. package/coverage/lcov-report/src/iconVersion.js.html +0 -85
  50. package/coverage/lcov-report/src/index.html +0 -161
  51. package/coverage/lcov-report/src/styles/color-css.js.html +0 -91
  52. package/coverage/lcov-report/src/styles/index.html +0 -161
  53. package/coverage/lcov-report/src/styles/style-button-css.js.html +0 -91
  54. package/coverage/lcov-report/src/styles/style-css.js.html +0 -91
  55. package/coverage/lcov-report/src/styles/tokens-css.js.html +0 -91
  56. package/coverage/lcov-report/style-css.js.html +0 -91
  57. package/coverage/lcov-report/tokens-css.js.html +0 -91
  58. package/coverage/lcov.info +0 -682
  59. package/dist/auro-accordion-button.d.ts +0 -17
  60. package/dist/auro-accordion-button.d.ts.map +0 -1
  61. package/dist/auro-accordion-group.d.ts +0 -61
  62. package/dist/auro-accordion-group.d.ts.map +0 -1
  63. package/dist/auro-accordion.d.ts +0 -106
  64. package/dist/auro-accordion.d.ts.map +0 -1
  65. package/dist/auro-accordion__bundled.js +0 -2023
  66. package/dist/color-css.d.ts +0 -3
  67. package/dist/color-css.d.ts.map +0 -1
  68. package/dist/iconVersion.d.ts +0 -3
  69. package/dist/iconVersion.d.ts.map +0 -1
  70. package/dist/src/auro-accordion-button.d.ts +0 -19
  71. package/dist/src/auro-accordion-button.d.ts.map +0 -1
  72. package/dist/src/auro-accordion-group.d.ts +0 -61
  73. package/dist/src/auro-accordion-group.d.ts.map +0 -1
  74. package/dist/src/auro-accordion.d.ts +0 -106
  75. package/dist/src/auro-accordion.d.ts.map +0 -1
  76. package/dist/src/color-css.d.ts +0 -3
  77. package/dist/src/color-css.d.ts.map +0 -1
  78. package/dist/src/iconVersion.d.ts +0 -3
  79. package/dist/src/iconVersion.d.ts.map +0 -1
  80. package/dist/src/style-button-css.d.ts +0 -3
  81. package/dist/src/style-button-css.d.ts.map +0 -1
  82. package/dist/src/style-css.d.ts +0 -3
  83. package/dist/src/style-css.d.ts.map +0 -1
  84. package/dist/src/styles/color-css.d.ts +0 -3
  85. package/dist/src/styles/color-css.d.ts.map +0 -1
  86. package/dist/src/styles/style-button-css.d.ts +0 -3
  87. package/dist/src/styles/style-button-css.d.ts.map +0 -1
  88. package/dist/src/styles/style-css.d.ts +0 -3
  89. package/dist/src/styles/style-css.d.ts.map +0 -1
  90. package/dist/src/styles/tokens-css.d.ts +0 -3
  91. package/dist/src/styles/tokens-css.d.ts.map +0 -1
  92. package/dist/src/tokens-css.d.ts +0 -3
  93. package/dist/src/tokens-css.d.ts.map +0 -1
  94. package/dist/style-button-css.d.ts +0 -3
  95. package/dist/style-button-css.d.ts.map +0 -1
  96. package/dist/style-css.d.ts +0 -3
  97. package/dist/style-css.d.ts.map +0 -1
  98. package/dist/test/auro-accordion-group.test.d.ts +0 -2
  99. package/dist/test/auro-accordion-group.test.d.ts.map +0 -1
  100. package/dist/test/auro-accordion.test.d.ts +0 -2
  101. package/dist/test/auro-accordion.test.d.ts.map +0 -1
  102. package/dist/tokens-css.d.ts +0 -3
  103. package/dist/tokens-css.d.ts.map +0 -1
  104. package/index.js +0 -3
  105. package/packageScripts/postinstall.mjs +0 -28
  106. package/scripts/version.mjs +0 -3
  107. package/scripts/wca/auro-accordion.js +0 -12
  108. package/src/auro-accordion-button.js +0 -66
  109. package/src/auro-accordion-group.js +0 -151
  110. package/src/auro-accordion.js +0 -270
  111. package/src/color-css.js +0 -2
  112. package/src/color.css +0 -39
  113. package/src/iconVersion.js +0 -1
  114. package/src/style-button-css.js +0 -2
  115. package/src/style-button.css +0 -53
  116. package/src/style-css.js +0 -2
  117. package/src/style.css +0 -147
  118. package/src/styles/color-css.js +0 -2
  119. package/src/styles/color.css +0 -43
  120. package/src/styles/color.scss +0 -75
  121. package/src/styles/style-button-css.js +0 -2
  122. package/src/styles/style-button.css +0 -63
  123. package/src/styles/style-button.scss +0 -86
  124. package/src/styles/style-css.js +0 -2
  125. package/src/styles/style.css +0 -347
  126. package/src/styles/style.scss +0 -200
  127. package/src/styles/tokens-css.js +0 -2
  128. package/src/styles/tokens.css +0 -7
  129. package/src/styles/tokens.scss +0 -9
  130. package/src/tokens-css.js +0 -2
  131. package/src/tokens.css +0 -7
  132. package/test/auro-accordion-group.test.js +0 -230
  133. package/test/auro-accordion.test.js +0 -104
@@ -1,270 +0,0 @@
1
- // Copyright (c) 2023 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
2
- // See LICENSE in the project root for license information.
3
-
4
- // ---------------------------------------------------------------------
5
-
6
- /* eslint-disable lit/binding-positions, lit/no-invalid-html */
7
-
8
- // If using litElement base class
9
- import { LitElement, nothing } from "lit";
10
- import { html } from 'lit/static-html.js';
11
- import { classMap } from 'lit/directives/class-map.js';
12
- import { unsafeHTML } from 'lit/directives/unsafe-html.js';
13
-
14
- import { AuroAccordionGroup } from './auro-accordion-group.js';
15
- import { AuroAccordionButton } from './auro-accordion-button.js';
16
-
17
- import { AuroDependencyVersioning } from '@aurodesignsystem/auro-library/scripts/runtime/dependencyTagVersioning.mjs';
18
-
19
- import AuroLibraryRuntimeUtils from '@aurodesignsystem/auro-library/scripts/utils/runtimeUtils.mjs';
20
-
21
- import { AuroIcon } from '@aurodesignsystem/auro-icon/src/auro-icon.js';
22
- import iconVersion from './iconVersion.js';
23
-
24
- import chevronUp from "@alaskaairux/icons/dist/icons/interface/chevron-up.mjs";
25
- import chevronDown from "@alaskaairux/icons/dist/icons/interface/chevron-down.mjs";
26
-
27
- import styleCss from "./styles/style-css.js";
28
- import colorCss from "./styles/color-css.js";
29
- import tokensCss from "./styles/tokens-css.js";
30
-
31
- // See https://git.io/JJ6SJ for "How to document your components using JSDoc"
32
- /**
33
- * Auro-accordion provides users a way to have collapsible content on a page.
34
- * Use auro-accordion-group if you want to have auto closing accordion components when others are selected.
35
- *
36
- * @attr {Boolean} alignRight - If set, the trigger content will align right.
37
- * @attr {Boolean} expanded - If set, the accordion is expanded.
38
- * @attr {Boolean} emphasis - If set, emphasis styles will be applied to the auro-accordions.
39
- * @attr {Boolean} grouped - Attribute will be set on accordion when it appears in an accordion group.
40
- * @attr {Boolean} disabled - If set, the accordion is disabled and have reduced opacity.
41
- * @attr {String} chevron - Sets chevron variant option. Possible values are: `none`, `right`.
42
- * @attr {String} variant - Sets accordion variant option. Possible values are: `sm`, `lg`.
43
- * @slot - Default slot for the accordion content.
44
- * @slot trigger - Defines the content of the trigger element.
45
- * @csspart accordion - Apply CSS to Accordion wrapper.
46
- * @csspart trigger - Apply CSS to trigger element.
47
- * @csspart chevron - Apply CSS to chevron icon.
48
- * @csspart content - Apply CSS to the accordion content.
49
- * @event toggleExpanded - Notifies that the accordion has been expanded or closed.
50
- */
51
-
52
- // build the component class
53
- export class AuroAccordion extends LitElement {
54
- constructor() {
55
- super();
56
-
57
- const versioning = new AuroDependencyVersioning();
58
-
59
- /**
60
- * @private
61
- */
62
- this.iconTag = versioning.generateTag('auro-icon', iconVersion, AuroIcon);
63
-
64
- /**
65
- * @private
66
- */
67
- this.buttonNameHash = this.generateRandomLetters(4); //eslint-disable-line
68
-
69
- /**
70
- * @private
71
- */
72
- this.buttonTag = versioning.generateTag('auro-accordion-button', this.buttonNameHash, AuroAccordionButton);
73
-
74
- /**
75
- * @private
76
- */
77
- this.runtimeUtils = new AuroLibraryRuntimeUtils();
78
-
79
- this.expanded = false;
80
- }
81
-
82
- // This function is to define props used within the scope of this component
83
- // Be sure to review https://lit.dev/docs/components/properties/
84
- // to understand how to use reflected attributes with your property settings.
85
- static get properties() {
86
- return {
87
- // ...super.properties,
88
-
89
- alignRight: {
90
- type: Boolean,
91
- reflect: true,
92
- },
93
- expanded: {
94
- type: Boolean,
95
- reflect: true,
96
- },
97
- emphasis: {
98
- type: Boolean,
99
- reflect: true
100
- },
101
- grouped: {
102
- type: Boolean,
103
- reflect: true
104
- },
105
- chevron: {
106
- type: String,
107
- reflect: true
108
- },
109
- variant: {
110
- type: String,
111
- reflect: true
112
- },
113
- disabled: {
114
- type: Boolean,
115
- reflect: true
116
- }
117
- };
118
- }
119
-
120
- static get styles() {
121
- return [
122
- colorCss,
123
- styleCss,
124
- tokensCss
125
- ];
126
- }
127
-
128
- /**
129
- * This will register this element with the browser.
130
- * @param {string} [name="auro-accordion"] - The name of element that you want to register to.
131
- *
132
- * @example
133
- * AuroAccordion.register("custom-accordion") // this will register this element to <custom-accordion/>
134
- *
135
- */
136
- static register(name = "auro-accordion") {
137
- const nameGroup = `${name}-group`;
138
- AuroLibraryRuntimeUtils.prototype.registerComponent(name, AuroAccordion);
139
- AuroAccordionGroup.register(nameGroup);
140
- }
141
-
142
- firstUpdated() {
143
- // Add the tag name as an attribute if it is different than the component name
144
- this.runtimeUtils.handleComponentTagRename(this, 'auro-accordion');
145
- }
146
-
147
- updated(changedProperties) {
148
- // Update button when ariaexpanded changes
149
- if (changedProperties.has('expanded')) {
150
- const button = this.shadowRoot.querySelector('#accordionTrigger');
151
- if (button) {
152
- button.ariaexpanded = this.expanded;
153
- }
154
- }
155
- }
156
-
157
- /**
158
- * Renders the chevron icons.
159
- * @private
160
- * @returns {TemplateResult} - The html template for the chevron icons.
161
- */
162
- renderChevronIcons() {
163
- if (this.chevron === 'none') {
164
- return nothing;
165
- }
166
-
167
- const iconSvg = this.expanded ? chevronUp.svg : chevronDown.svg;
168
-
169
- return html`
170
- <${this.iconTag}
171
- customSvg
172
- customColor
173
- ?disabled="${this.disabled}"
174
- part="chevron">
175
- <div slot="svg">${unsafeHTML(iconSvg)}</div>
176
- </${this.iconTag}>
177
- `;
178
- }
179
-
180
- /**
181
- * Generates a random string of letters.
182
- * @private
183
- * @param {number} length - The number of characters to generate in the string.
184
- * @returns {string} - The generated string.
185
- */
186
- generateRandomLetters(length) {
187
- let result = '';
188
- const characters = 'abcdefghijklmnopqrstuvwxyz';
189
- const charactersLength = characters.length;
190
- for (let index = 0; index < length; index += 1) {
191
- result += characters.charAt(Math.floor(Math.random() * charactersLength));
192
- }
193
-
194
- return result;
195
- }
196
-
197
- /**
198
- * Toggles the visibility of the accordion content.
199
- */
200
- toggle() {
201
- this.expanded = !this.expanded;
202
-
203
- this.dispatchEvent(new CustomEvent('toggleExpanded', {
204
- bubbles: true,
205
- composed: true,
206
- detail: {
207
- expanded: this.expanded
208
- }
209
- }));
210
- }
211
-
212
- /**
213
- * Toggles the visibility of the accordion content when button gets clicked.
214
- * @private
215
- * @param {Event} event - The event object.
216
- */
217
- handleButtonClick(event) {
218
- if (this.disabled) {
219
- event.preventDefault();
220
- return;
221
- }
222
- this.toggle();
223
- }
224
-
225
- // function that renders the HTML and CSS into the scope of the component
226
- render() {
227
- const buttonClasses = {
228
- "trigger": true,
229
- "iconRight": this.getAttribute('chevron') === 'right',
230
- "iconNone": this.getAttribute('chevron') === 'none',
231
- "sm": this.getAttribute('variant') === 'sm',
232
- "lg": this.getAttribute('variant') === 'lg',
233
- };
234
-
235
- const variantClassMap = {
236
- 'sm': 'body-default',
237
- 'lg': 'heading-xs'
238
- };
239
-
240
- const triggerSlotClass = variantClassMap[this.variant] || 'heading-2xs';
241
-
242
- // Generate unique ID & apply aria-controls
243
- const accordionContentId = `accordionContent-${this.buttonNameHash}`;
244
-
245
- return html`
246
- <div class="componentWrapper" part="accordion">
247
- <${this.buttonTag}
248
- ?fluid="${this.emphasis}"
249
- class="${classMap(buttonClasses)}"
250
- id="accordionTrigger"
251
- aria-controls="${accordionContentId}"
252
- ?ariaexpanded="${this.expanded}"
253
- ?aria-disabled="${this.disabled}"
254
- ?disabled="${this.disabled}"
255
- @click="${this.handleButtonClick}"
256
- part="trigger">
257
- ${this.chevron === 'right' ? nothing : this.renderChevronIcons()}
258
- <slot name="trigger" part="triggerSlot" class="${triggerSlotClass}"></slot>
259
- ${this.chevron === 'right' ? this.renderChevronIcons() : nothing}
260
- </${this.buttonTag}>
261
-
262
- <div class="content body-default" id="${accordionContentId}" aria-labelledby="accordionTrigger" inert="${!this.expanded || nothing}" part="content">
263
- <div class="contentWrapper" part="contentWrapper">
264
- <slot></slot>
265
- </div>
266
- </div>
267
- </div>
268
- `;
269
- }
270
- }
package/src/color-css.js DELETED
@@ -1,2 +0,0 @@
1
- import { css } from 'lit';
2
- export default css`:host .trigger{color:var(--ds-auro-accordion-trigger-color);border-color:var(--ds-auro-accordion-trigger-border-color)}:host [auro-icon]{color:var(--ds-auro-accordion-trigger-icon-color)}:host([disabled]){--ds-auro-accordion-trigger-color:var(--ds-basic-color-texticon-disabled, $ds-basic-color-texticon-disabled)}:host(:focus){--ds-auro-accordion-trigger-border-color:var(--ds-advanced-color-state-focused, #01426a)}:host([grouped]) .componentWrapper{border-bottom-color:var(--ds-auro-accordion-group-border-color)}:host([emphasis]) .trigger:before{border-color:var(--ds-auro-accordion-trigger-border-color)}:host([emphasis]) .trigger:focus:before,:host([emphasis]) .trigger:hover:before{--ds-auro-accordion-trigger-border-color:var(--ds-advanced-color-state-selected, #01426a)}:host([emphasis]) .trigger:focus{--ds-auro-accordion-trigger-border-color:var(--ds-advanced-color-state-focused, #01426a)}:host([emphasis]) .content{border-left-color:var(--ds-auro-accordion-content-border-color)}:host([emphasis][expanded]) .trigger:before{--ds-auro-accordion-trigger-border-color:var(--ds-advanced-color-state-selected, #01426a)}:host([emphasis][expanded]) .content{--ds-auro-accordion-content-border-color:var(--ds-basic-color-border-subtle, #dddddd)}`;
package/src/color.css DELETED
@@ -1,39 +0,0 @@
1
- :host .trigger{
2
- color:var(--ds-auro-accordion-trigger-color);
3
- border-color:var(--ds-auro-accordion-trigger-border-color);
4
- }
5
- :host [auro-icon]{
6
- color:var(--ds-auro-accordion-trigger-icon-color);
7
- }
8
-
9
- :host([disabled]){
10
- --ds-auro-accordion-trigger-color:var(--ds-basic-color-texticon-disabled, $ds-basic-color-texticon-disabled);
11
- }
12
-
13
- :host(:focus){
14
- --ds-auro-accordion-trigger-border-color:var(--ds-advanced-color-state-focused, #01426a);
15
- }
16
-
17
- :host([grouped]) .componentWrapper{
18
- border-bottom-color:var(--ds-auro-accordion-group-border-color);
19
- }
20
-
21
- :host([emphasis]) .trigger:before{
22
- border-color:var(--ds-auro-accordion-trigger-border-color);
23
- }
24
- :host([emphasis]) .trigger:focus:before, :host([emphasis]) .trigger:hover:before{
25
- --ds-auro-accordion-trigger-border-color:var(--ds-advanced-color-state-selected, #01426a);
26
- }
27
- :host([emphasis]) .trigger:focus{
28
- --ds-auro-accordion-trigger-border-color:var(--ds-advanced-color-state-focused, #01426a);
29
- }
30
- :host([emphasis]) .content{
31
- border-left-color:var(--ds-auro-accordion-content-border-color);
32
- }
33
-
34
- :host([emphasis][expanded]) .trigger:before{
35
- --ds-auro-accordion-trigger-border-color:var(--ds-advanced-color-state-selected, #01426a);
36
- }
37
- :host([emphasis][expanded]) .content{
38
- --ds-auro-accordion-content-border-color:var(--ds-basic-color-border-subtle, #dddddd);
39
- }
@@ -1 +0,0 @@
1
- export default '8.1.4'
@@ -1,2 +0,0 @@
1
- import { css } from 'lit';
2
- export default css`:focus:not(:focus-visible){outline:3px solid transparent}:host{border:unset;cursor:pointer}:host .auro-button{all:unset;width:100%;padding:var(--ds-size-200, 1rem) var(--trigger-padding-right, 0) var(--ds-size-200, 1rem) var(--trigger-padding-left, 0);box-sizing:border-box}:host .auro-button:focus,:host .auro-button:focus-visible,:host .auro-button:focus-within{outline:0}:host .auro-button:after{border-color:transparent}:host .contentWrapper{display:flex;flex-direction:row-reverse}:host .textSlot{display:flex;flex:1}:host([disabled]){cursor:not-allowed}:host([disabled]) .auro-button{pointer-events:none}:host(.sm) .auro-button{padding-top:var(--ds-size-150, 0.75rem);padding-bottom:var(--ds-size-150, 0.75rem)}:host(.lg) .auro-button{padding-top:var(--ds-size-250, 1.25rem);padding-bottom:var(--ds-size-250, 1.25rem)}:host([fluid]) .contentWrapper{width:100%}:host(.iconRight) .contentWrapper{display:flex;flex-direction:row}`;
@@ -1,53 +0,0 @@
1
- :focus:not(:focus-visible){
2
- outline:3px solid transparent;
3
- }
4
- :host{
5
- border:unset;
6
- cursor:pointer;
7
- }
8
- :host .auro-button{
9
- all:unset;
10
- width:100%;
11
- padding:var(--ds-size-200, 1rem) var(--trigger-padding-right, 0) var(--ds-size-200, 1rem) var(--trigger-padding-left, 0);
12
- box-sizing:border-box;
13
- }
14
- :host .auro-button:focus, :host .auro-button:focus-visible, :host .auro-button:focus-within{
15
- outline:0;
16
- }
17
- :host .auro-button:after{
18
- border-color:transparent;
19
- }
20
- :host .contentWrapper{
21
- display:flex;
22
- flex-direction:row-reverse;
23
- }
24
- :host .textSlot{
25
- display:flex;
26
- flex:1;
27
- }
28
-
29
- :host([disabled]){
30
- cursor:not-allowed;
31
- }
32
- :host([disabled]) .auro-button{
33
- pointer-events:none;
34
- }
35
-
36
- :host(.sm) .auro-button{
37
- padding-top:var(--ds-size-150, 0.75rem);
38
- padding-bottom:var(--ds-size-150, 0.75rem);
39
- }
40
-
41
- :host(.lg) .auro-button{
42
- padding-top:var(--ds-size-250, 1.25rem);
43
- padding-bottom:var(--ds-size-250, 1.25rem);
44
- }
45
-
46
- :host([fluid]) .contentWrapper{
47
- width:100%;
48
- }
49
-
50
- :host(.iconRight) .contentWrapper{
51
- display:flex;
52
- flex-direction:row;
53
- }
package/src/style-css.js DELETED
@@ -1,2 +0,0 @@
1
- import { css } from 'lit';
2
- export default css`:host{interpolate-size:allow-keywords;--webkit-fill:-webkit-fill-available}:host .trigger{position:relative;display:inline-block;border-width:1px;border-style:solid;border-radius:var(--ds-border-radius, 0.375rem)}:host .trigger:hover{text-decoration:underline}:host ::slotted([slot=trigger]){padding-left:var(--ds-size-100, 0.5rem);padding-right:var(--ds-size-200, 1rem);font-size:var(--ds-text-heading-300-size, 1.125rem)}:host .iconWrapper{height:var(--ds-size-300, 1.5rem);margin-top:-2px}:host [auro-icon]{--ds-auro-icon-size:var(--ds-size-300, 1.5rem)}:host [auro-icon][hidden]{display:none}:host .content{width:100%;transition:all .5s ease-in-out;transition-property:height;font-size:var(--ds-text-body-size-default, 1rem)}:host .componentWrapper{height:100%;overflow:hidden}:host .contentWrapper{padding-left:var(--ds-size-400, 2rem);padding-bottom:var(--ds-size-300, 1.5rem)}:host(:focus) .trigger{border-width:1px;border-style:solid}:host([chevron=right]) ::slotted([slot=trigger]){padding-left:0;padding-right:var(--ds-size-100, 0.5rem)}:host([chevron=right]) .contentWrapper{padding-left:var(--ds-size-400, 2rem)}:host([chevron=right]:not([emphasis])) ::slotted([slot=trigger]){padding-left:var(--ds-size-250, 1.25rem)}:host([chevron=right]:not([emphasis])) .contentWrapper{padding-left:var(--ds-size-250, 1.25rem)}:host([alignRight]) .componentWrapper{display:flex;flex-direction:column;align-items:flex-end}:host([fluid]) .trigger{width:100%}:host([grouped]) .componentWrapper{border-bottom-width:1px;border-bottom-style:solid}:host([grouped][chevron=right]:not([alignright])) .trigger{width:var(--webkit-fill, 100%);--trigger-padding-right:var(--ds-size-200, 1rem)}:host(:not([expanded])) .content,:host([expanded=false]) .content{height:0 !important}:host([expanded]) .content{height:auto}:host([emphasis]) .trigger{border-style:solid;border-width:1px;border-left-width:2px;--trigger-padding-left:var(--ds-size-200, 1rem)}:host([emphasis]) .trigger:before{display:block;position:absolute;top:-1px;left:-2px;width:1px;height:calc(100% + 2px);content:"";border-left-style:solid;border-left-width:2px}:host([emphasis]) .trigger:focus{border-left-width:1px;margin-left:1px}:host([emphasis]) .content{border-left-width:2px;border-left-style:solid;padding:unset}:host([emphasis]) .contentWrapper{padding-left:var(--ds-size-200, 1rem)}:host([emphasis]) .iconWrapper{padding-right:var(--ds-size-200, 1rem)}:host([emphasis][variant=lg]) .trigger,:host([emphasis][variant=lg]) .contentWrapper{padding-left:calc(var(--ds-size-200, 1rem) + var(--ds-size-50, 0.25rem))}:host([emphasis]:not([expanded]):hover) .trigger{text-decoration:unset}:host([variant=sm]) ::slotted([slot=trigger]){font-size:var(--ds-text-body-size-default, 1rem)}:host([variant=lg]) ::slotted([slot=trigger]){font-size:var(--ds-text-heading-400-size, 1.25rem)}:host([chevron=none]) ::slotted([slot=trigger]),:host([chevron=none]) .contentWrapper{padding-left:unset}`;
package/src/style.css DELETED
@@ -1,147 +0,0 @@
1
- :host{
2
- interpolate-size:allow-keywords;
3
- --webkit-fill:-webkit-fill-available;
4
- }
5
- :host .trigger{
6
- position:relative;
7
- display:inline-block;
8
- border-width:1px;
9
- border-style:solid;
10
- border-radius:var(--ds-border-radius, 0.375rem);
11
- }
12
- :host .trigger:hover{
13
- text-decoration:underline;
14
- }
15
- :host ::slotted([slot=trigger]){
16
- padding-left:var(--ds-size-100, 0.5rem);
17
- padding-right:var(--ds-size-200, 1rem);
18
- font-size:var(--ds-text-heading-300-size, 1.125rem);
19
- }
20
- :host .iconWrapper{
21
- height:var(--ds-size-300, 1.5rem);
22
- margin-top:-2px;
23
- }
24
- :host [auro-icon]{
25
- --ds-auro-icon-size:var(--ds-size-300, 1.5rem);
26
- }
27
- :host [auro-icon][hidden]{
28
- display:none;
29
- }
30
- :host .content{
31
- width:100%;
32
- transition:all 0.5s ease-in-out;
33
- transition-property:height;
34
- font-size:var(--ds-text-body-size-default, 1rem);
35
- }
36
- :host .componentWrapper{
37
- height:100%;
38
- overflow:hidden;
39
- }
40
- :host .contentWrapper{
41
- padding-left:var(--ds-size-400, 2rem);
42
- padding-bottom:var(--ds-size-300, 1.5rem);
43
- }
44
-
45
- :host(:focus) .trigger{
46
- border-width:1px;
47
- border-style:solid;
48
- }
49
-
50
- :host([chevron=right]) ::slotted([slot=trigger]){
51
- padding-left:0;
52
- padding-right:var(--ds-size-100, 0.5rem);
53
- }
54
- :host([chevron=right]) .contentWrapper{
55
- padding-left:var(--ds-size-400, 2rem);
56
- }
57
-
58
- :host([chevron=right]:not([emphasis])) ::slotted([slot=trigger]){
59
- padding-left:var(--ds-size-250, 1.25rem);
60
- }
61
- :host([chevron=right]:not([emphasis])) .contentWrapper{
62
- padding-left:var(--ds-size-250, 1.25rem);
63
- }
64
-
65
- :host([alignRight]) .componentWrapper{
66
- display:flex;
67
- flex-direction:column;
68
- align-items:flex-end;
69
- }
70
-
71
- :host([fluid]) .trigger{
72
- width:100%;
73
- }
74
-
75
- :host([grouped]) .componentWrapper{
76
- border-bottom-width:1px;
77
- border-bottom-style:solid;
78
- }
79
-
80
- :host([grouped][chevron=right]:not([alignright])) .trigger{
81
- width:var(--webkit-fill, 100%);
82
- --trigger-padding-right:var(--ds-size-200, 1rem);
83
- }
84
-
85
- :host(:not([expanded])) .content,
86
- :host([expanded=false]) .content{
87
- height:0 !important;
88
- }
89
-
90
- :host([expanded]) .content{
91
- height:auto;
92
- }
93
-
94
- :host([emphasis]) .trigger{
95
- border-style:solid;
96
- border-width:1px;
97
- border-left-width:2px;
98
- --trigger-padding-left:var(--ds-size-200, 1rem);
99
- }
100
- :host([emphasis]) .trigger:before{
101
- display:block;
102
- position:absolute;
103
- top:-1px;
104
- left:-2px;
105
- width:1px;
106
- height:calc(100% + 2px);
107
- content:"";
108
- border-left-style:solid;
109
- border-left-width:2px;
110
- }
111
- :host([emphasis]) .trigger:focus{
112
- border-left-width:1px;
113
- margin-left:1px;
114
- }
115
- :host([emphasis]) .content{
116
- border-left-width:2px;
117
- border-left-style:solid;
118
- padding:unset;
119
- }
120
- :host([emphasis]) .contentWrapper{
121
- padding-left:var(--ds-size-200, 1rem);
122
- }
123
- :host([emphasis]) .iconWrapper{
124
- padding-right:var(--ds-size-200, 1rem);
125
- }
126
-
127
- :host([emphasis][variant=lg]) .trigger,
128
- :host([emphasis][variant=lg]) .contentWrapper{
129
- padding-left:calc(var(--ds-size-200, 1rem) + var(--ds-size-50, 0.25rem));
130
- }
131
-
132
- :host([emphasis]:not([expanded]):hover) .trigger{
133
- text-decoration:unset;
134
- }
135
-
136
- :host([variant=sm]) ::slotted([slot=trigger]){
137
- font-size:var(--ds-text-body-size-default, 1rem);
138
- }
139
-
140
- :host([variant=lg]) ::slotted([slot=trigger]){
141
- font-size:var(--ds-text-heading-400-size, 1.25rem);
142
- }
143
-
144
- :host([chevron=none]) ::slotted([slot=trigger]),
145
- :host([chevron=none]) .contentWrapper{
146
- padding-left:unset;
147
- }
@@ -1,2 +0,0 @@
1
- import { css } from 'lit';
2
- export default css`:host .trigger{color:var(--ds-auro-accordion-trigger-color);border-color:var(--ds-auro-accordion-trigger-border-color)}:host [auro-icon]{color:var(--ds-auro-accordion-trigger-icon-color)}:host([disabled]){--ds-auro-accordion-trigger-color: var(--ds-basic-color-texticon-disabled, v.$ds-basic-color-texticon-disabled)}:host([disabled]) [auro-icon]{color:var(--ds-basic-color-texticon-disabled, #d0d0d0)}:host(:focus){--ds-auro-accordion-trigger-border-color: var(--ds-advanced-color-state-focused, #01426a)}:host([grouped]) .componentWrapper{border-bottom-color:var(--ds-auro-accordion-group-border-color)}:host([emphasis]) .trigger:before{border-color:var(--ds-auro-accordion-trigger-border-color)}:host([emphasis]) .trigger:focus:before,:host([emphasis]) .trigger:hover:before{--ds-auro-accordion-trigger-border-color: var(--ds-advanced-color-state-selected, #01426a)}:host([emphasis]) .trigger:focus{--ds-auro-accordion-trigger-border-color: var(--ds-advanced-color-state-focused, #01426a)}:host([emphasis]) .content{border-left-color:var(--ds-auro-accordion-content-border-color)}:host([emphasis][expanded]) .trigger:before{--ds-auro-accordion-trigger-border-color: var(--ds-advanced-color-state-selected, #01426a)}:host([emphasis][expanded]) .content{--ds-auro-accordion-content-border-color: var(--ds-basic-color-border-subtle, #dddddd)}`;
@@ -1,43 +0,0 @@
1
- /* stylelint-disable max-nesting-depth, order/properties-order, selector-max-combinators, selector-max-compound-selectors, declaration-empty-line-before, declaration-no-important, no-descending-specificity */
2
- :host .trigger {
3
- color: var(--ds-auro-accordion-trigger-color);
4
- border-color: var(--ds-auro-accordion-trigger-border-color);
5
- }
6
- :host [auro-icon] {
7
- color: var(--ds-auro-accordion-trigger-icon-color);
8
- }
9
-
10
- :host([disabled]) {
11
- --ds-auro-accordion-trigger-color: var(--ds-basic-color-texticon-disabled, v.$ds-basic-color-texticon-disabled);
12
- }
13
- :host([disabled]) [auro-icon] {
14
- color: var(--ds-basic-color-texticon-disabled, #d0d0d0);
15
- }
16
-
17
- :host(:focus) {
18
- --ds-auro-accordion-trigger-border-color: var(--ds-advanced-color-state-focused, #01426a);
19
- }
20
-
21
- :host([grouped]) .componentWrapper {
22
- border-bottom-color: var(--ds-auro-accordion-group-border-color);
23
- }
24
-
25
- :host([emphasis]) .trigger:before {
26
- border-color: var(--ds-auro-accordion-trigger-border-color);
27
- }
28
- :host([emphasis]) .trigger:focus:before, :host([emphasis]) .trigger:hover:before {
29
- --ds-auro-accordion-trigger-border-color: var(--ds-advanced-color-state-selected, #01426a);
30
- }
31
- :host([emphasis]) .trigger:focus {
32
- --ds-auro-accordion-trigger-border-color: var(--ds-advanced-color-state-focused, #01426a);
33
- }
34
- :host([emphasis]) .content {
35
- border-left-color: var(--ds-auro-accordion-content-border-color);
36
- }
37
-
38
- :host([emphasis][expanded]) .trigger:before {
39
- --ds-auro-accordion-trigger-border-color: var(--ds-advanced-color-state-selected, #01426a);
40
- }
41
- :host([emphasis][expanded]) .content {
42
- --ds-auro-accordion-content-border-color: var(--ds-basic-color-border-subtle, #dddddd);
43
- }
@@ -1,75 +0,0 @@
1
- // Copyright (c) 2023 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
2
- // See LICENSE in the project root for license information.
3
-
4
- // ---------------------------------------------------------------------
5
-
6
- /* stylelint-disable max-nesting-depth, order/properties-order, selector-max-combinators, selector-max-compound-selectors, declaration-empty-line-before, declaration-no-important, no-descending-specificity */
7
-
8
- // Import Auro tokens
9
- @use "@aurodesignsystem/design-tokens/dist/themes/alaska/SCSSVariables--alaska" as v;
10
-
11
- :host {
12
- .trigger {
13
- color: var(--ds-auro-accordion-trigger-color);
14
-
15
- border-color: var(--ds-auro-accordion-trigger-border-color);
16
- }
17
-
18
- [auro-icon] {
19
- color: var(--ds-auro-accordion-trigger-icon-color);
20
- }
21
- }
22
-
23
-
24
- :host([disabled]) {
25
- --ds-auro-accordion-trigger-color: var(--ds-basic-color-texticon-disabled, v.$ds-basic-color-texticon-disabled);
26
-
27
- [auro-icon] {
28
- color: var(--ds-basic-color-texticon-disabled, v.$ds-basic-color-texticon-disabled);
29
- }
30
- }
31
-
32
- :host(:focus) {
33
- --ds-auro-accordion-trigger-border-color: var(--ds-advanced-color-state-focused, #{v.$ds-advanced-color-state-focused});
34
- }
35
-
36
- :host([grouped]) {
37
- .componentWrapper {
38
- border-bottom-color: var(--ds-auro-accordion-group-border-color);
39
- }
40
- }
41
-
42
- :host([emphasis]) {
43
- .trigger {
44
- &:before {
45
- border-color: var(--ds-auro-accordion-trigger-border-color);
46
- }
47
-
48
- &:focus,
49
- &:hover {
50
- &:before {
51
- --ds-auro-accordion-trigger-border-color: var(--ds-advanced-color-state-selected, #{v.$ds-advanced-color-state-selected});
52
- }
53
- }
54
-
55
- &:focus {
56
- --ds-auro-accordion-trigger-border-color: var(--ds-advanced-color-state-focused, #{v.$ds-advanced-color-state-focused});
57
- }
58
- }
59
-
60
- .content {
61
- border-left-color: var(--ds-auro-accordion-content-border-color);
62
- }
63
- }
64
-
65
- :host([emphasis][expanded]) {
66
- .trigger {
67
- &:before {
68
- --ds-auro-accordion-trigger-border-color: var(--ds-advanced-color-state-selected, #{v.$ds-advanced-color-state-selected});
69
- }
70
- }
71
-
72
- .content {
73
- --ds-auro-accordion-content-border-color: var(--ds-basic-color-border-subtle, #{v.$ds-basic-color-border-subtle});
74
- }
75
- }
@@ -1,2 +0,0 @@
1
- import { css } from 'lit';
2
- export default css`:focus:not(:focus-visible){outline:3px solid transparent}:host{border:unset;cursor:pointer;overflow:visible}:host .auro-button{all:unset;width:100%;padding:var(--ds-size-200, 1rem) var(--trigger-padding-right, 0) var(--ds-size-200, 1rem) var(--trigger-padding-left, 0);box-sizing:border-box}:host .auro-button:focus,:host .auro-button:focus-visible,:host .auro-button:focus-within{outline:0}:host .auro-button:after{border-color:transparent}:host .contentWrapper{display:flex;flex-direction:row-reverse;margin-left:0 !important;margin-right:0 !important}:host .textSlot{display:flex;flex:1;gap:0;align-items:center}:host([disabled]){cursor:not-allowed;text-decoration:none !important}:host([disabled]) .auro-button{pointer-events:none}:host(.sm) .auro-button{padding-top:var(--ds-size-150, 0.75rem);padding-bottom:var(--ds-size-150, 0.75rem)}:host(.lg) .auro-button{padding-top:var(--ds-size-250, 1.25rem);padding-bottom:var(--ds-size-250, 1.25rem)}:host([fluid]) .textSlot{width:100%}:host(.iconRight) .textSlot{display:flex;flex-direction:row;justify-content:space-between}`;