@aquera/nile-elements 0.0.4-9 → 0.0.5-2
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.
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/index.d.ts +0 -2
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/index.js +0 -2
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/index.js.map +1 -1
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-error-message/nile-error-message.css.js +42 -45
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-error-message/nile-error-message.css.js.map +1 -1
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-error-message/nile-error-message.d.ts +13 -5
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-error-message/nile-error-message.js +54 -84
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-error-message/nile-error-message.js.map +1 -1
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-select/nile-select.js +2 -2
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-select/nile-select.js.map +1 -1
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/index.cjs.js +1 -1
- package/dist/index.esm.js +1 -1
- package/dist/index.iife.js +136 -433
- package/dist/nile-error-message/nile-error-message.cjs.js +1 -1
- package/dist/nile-error-message/nile-error-message.cjs.js.map +1 -1
- package/dist/nile-error-message/nile-error-message.css.cjs.js +1 -1
- package/dist/nile-error-message/nile-error-message.css.cjs.js.map +1 -1
- package/dist/nile-error-message/nile-error-message.css.esm.js +42 -45
- package/dist/nile-error-message/nile-error-message.esm.js +26 -28
- package/dist/nile-select/nile-select.cjs.js +1 -1
- package/dist/nile-select/nile-select.cjs.js.map +1 -1
- package/dist/nile-select/nile-select.esm.js +1 -1
- package/dist/src/index.d.ts +0 -2
- package/dist/src/index.js +0 -2
- package/dist/src/index.js.map +1 -1
- package/dist/src/nile-error-message/nile-error-message.css.js +42 -45
- package/dist/src/nile-error-message/nile-error-message.css.js.map +1 -1
- package/dist/src/nile-error-message/nile-error-message.d.ts +13 -5
- package/dist/src/nile-error-message/nile-error-message.js +54 -84
- package/dist/src/nile-error-message/nile-error-message.js.map +1 -1
- package/dist/src/nile-select/nile-select.js +2 -2
- package/dist/src/nile-select/nile-select.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/src/index.ts +0 -2
- package/src/nile-error-message/nile-error-message.css.ts +42 -45
- package/src/nile-error-message/nile-error-message.ts +52 -90
- package/src/nile-select/nile-select.ts +2 -2
package/package.json
CHANGED
package/src/index.ts
CHANGED
@@ -30,5 +30,3 @@ export { NileFormErrorMessage } from './nile-form-error-message';
|
|
30
30
|
export { NileFormHelpText } from './nile-form-help-text';
|
31
31
|
export { NileCalendar } from './nile-calendar';
|
32
32
|
export { NileLink} from './nile-link';
|
33
|
-
export { NileRadioButton } from './nile-radio-button';
|
34
|
-
export { NileRadioButtonGroup } from './nile-radio-button-group';
|
@@ -12,76 +12,73 @@ import { css } from 'lit-element';
|
|
12
12
|
*/
|
13
13
|
export const styles = css`
|
14
14
|
:host {
|
15
|
-
width:100%;
|
16
15
|
}
|
17
16
|
|
18
17
|
.nile-error-message {
|
19
18
|
width: 100%;
|
19
|
+
word-break: break-all;
|
20
20
|
font-size: var(--nile-font-size-small);
|
21
|
+
letter-spacing: 0.2px;
|
21
22
|
font-weight: var(--nile-font-weight-regular);
|
22
23
|
line-height: var(--nile-font-size-small);
|
23
|
-
border: 1px solid var(--nile-colors-red-500);
|
24
|
-
border-left: 6px solid var(--nile-colors-red-500);
|
25
|
-
border-radius: var(--nile-radius-base-standard);
|
26
|
-
background: var(--nile-colors-red-100);
|
27
24
|
}
|
28
25
|
|
29
|
-
.nile-error-
|
26
|
+
.nile-error-message__error {
|
30
27
|
color: var(--nile-colors-red-500);
|
31
|
-
|
32
|
-
|
33
|
-
|
28
|
+
word-break: break-word;
|
29
|
+
}
|
30
|
+
|
31
|
+
.nile-error-message__response {
|
32
|
+
color: var(--nile-colors-dark-500);
|
34
33
|
}
|
35
34
|
|
36
|
-
.nile-error-message__icon
|
37
|
-
.nile-error-message__arrow {
|
35
|
+
.nile-error-message__icon {
|
38
36
|
vertical-align: middle;
|
39
|
-
margin-right:
|
40
|
-
transition: transform 0.3s ease-in-out;
|
37
|
+
margin-right:2px;
|
41
38
|
}
|
42
39
|
|
43
|
-
.nile-error-
|
40
|
+
.nile-error-message__more-button {
|
41
|
+
color: var(--nile-colors-primary-600);
|
44
42
|
cursor: pointer;
|
45
|
-
|
43
|
+
word-break: break-word;
|
46
44
|
}
|
47
45
|
|
48
|
-
.nile-error-
|
49
|
-
|
50
|
-
|
51
|
-
|
46
|
+
.nile-error-message__response-expanded {
|
47
|
+
height: auto;
|
48
|
+
border: 1px solid var(--nile-colors-red-500);
|
49
|
+
border-left: 6px solid var(--nile-colors-red-500);
|
50
|
+
border-radius: 4px;
|
51
|
+
margin-top: 12px;
|
52
|
+
padding: 12px;
|
53
|
+
background: var(--nile-colors-neutral-100);
|
52
54
|
}
|
53
55
|
|
54
|
-
.nile-error-
|
55
|
-
|
56
|
+
.nile-error-message__response-expanded {
|
57
|
+
max-height: 100px;
|
58
|
+
overflow-y: auto;
|
59
|
+
border: 1px solid var(--nile-colors-red-500);
|
60
|
+
border-left: 6px solid var(--nile-colors-red-500);
|
61
|
+
border-radius: 4px;
|
62
|
+
margin-top: 12px;
|
63
|
+
padding: 12px;
|
64
|
+
background: var(--nile-colors-neutral-100);
|
65
|
+
transition: max-height 0.3s ease-in-out;
|
66
|
+
flex-shrink: 0;
|
56
67
|
}
|
57
68
|
|
58
|
-
.nile-error-
|
59
|
-
|
69
|
+
.nile-error-message__response-expanded.collapsed {
|
70
|
+
max-height: 0;
|
60
71
|
overflow: hidden;
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
}
|
65
|
-
|
66
|
-
.nile-error-message__expandable.expanded .nile-error-message__summary {
|
67
|
-
white-space: normal;
|
68
|
-
max-height: 6em;
|
69
|
-
overflow-y: scroll;
|
70
|
-
}
|
71
|
-
|
72
|
-
.nile-error-message__expandable.expanded
|
73
|
-
.nile-error-message__summary::-webkit-scrollbar {
|
74
|
-
width: 8px;
|
75
|
-
}
|
76
|
-
|
77
|
-
.nile-error-message__expandable.expanded
|
78
|
-
.nile-error-message__summary::-webkit-scrollbar-thumb {
|
79
|
-
border-radius: 20px;
|
80
|
-
background: rgba(148, 159, 184, 0.25);
|
72
|
+
transition: max-height 0.3s ease-in-out;
|
73
|
+
visibility: hidden;
|
74
|
+
padding: 0 12px;
|
81
75
|
}
|
82
76
|
|
83
|
-
.nile-error-
|
84
|
-
|
77
|
+
.nile-error-message__response-expanded.expanded {
|
78
|
+
max-height: 100px;
|
79
|
+
transition: max-height 0.3s ease-in-out;
|
80
|
+
visibility: visible;
|
81
|
+
padding: 12px;
|
85
82
|
}
|
86
83
|
`;
|
87
84
|
|
@@ -8,13 +8,6 @@ import {
|
|
8
8
|
import { customElement } from 'lit/decorators.js';
|
9
9
|
import { styles } from './nile-error-message.css';
|
10
10
|
|
11
|
-
const convertToStringArray = (value: any): Array<string> => {
|
12
|
-
if (Array.isArray(value)) {
|
13
|
-
return value.map(item => String(item));
|
14
|
-
}
|
15
|
-
return [];
|
16
|
-
};
|
17
|
-
|
18
11
|
/**
|
19
12
|
* A custom error message component that displays error information to the user.
|
20
13
|
* @customElement nile-error-message
|
@@ -25,100 +18,69 @@ export class NileErrorMessage extends LitElement {
|
|
25
18
|
return [styles];
|
26
19
|
}
|
27
20
|
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
hasChanged: (newVal, oldVal) =>
|
32
|
-
JSON.stringify(newVal) !== JSON.stringify(oldVal), // Optional: to detect deep changes
|
33
|
-
converter: {
|
34
|
-
toAttribute: value => JSON.stringify(value),
|
35
|
-
fromAttribute: value => convertToStringArray(JSON.parse(value || '[]')),
|
36
|
-
},
|
37
|
-
})
|
38
|
-
errorMessages: Array<string> = [];
|
21
|
+
// Represents the error message to be displayed to the user.
|
22
|
+
@property({ type: String })
|
23
|
+
errorMessage: string = '';
|
39
24
|
|
40
|
-
|
41
|
-
|
25
|
+
// Represents additional details about the error, like stack trace or other info.
|
26
|
+
@property({ type: String })
|
27
|
+
errorResponse: string;
|
42
28
|
|
43
|
-
|
44
|
-
|
45
|
-
const originalHeight = element.clientHeight;
|
46
|
-
element.style.whiteSpace = 'normal';
|
47
|
-
element.style.height = 'auto';
|
48
|
-
const expandedHeight = Math.min(element.clientHeight, 5.5 * 12);
|
29
|
+
@property({ type: Boolean })
|
30
|
+
isExpanded: boolean = false;
|
49
31
|
|
50
|
-
|
32
|
+
// The maximum length before truncation.
|
33
|
+
private readonly MAX_LENGTH: number = 100;
|
51
34
|
|
52
|
-
|
53
|
-
|
54
|
-
|
35
|
+
/**
|
36
|
+
* Get a truncated version of the errorResponse if it's too long.
|
37
|
+
* @returns {string}
|
38
|
+
*/
|
39
|
+
getTruncatedResponse(): string {
|
40
|
+
if (this.errorResponse.length > this.MAX_LENGTH) {
|
41
|
+
return `${this.errorResponse.substring(0, this.MAX_LENGTH)}...`;
|
42
|
+
}
|
43
|
+
return this.errorResponse;
|
55
44
|
}
|
56
45
|
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
requestAnimationFrame(() => {
|
63
|
-
element.style.height = '14px';
|
64
|
-
element.style.whiteSpace = 'nowrap';
|
65
|
-
});
|
46
|
+
/**
|
47
|
+
* Toggle the expanded state of the error response.
|
48
|
+
*/
|
49
|
+
toggleExpanded() {
|
50
|
+
this.isExpanded = !this.isExpanded;
|
66
51
|
}
|
67
52
|
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
53
|
+
public render(): TemplateResult {
|
54
|
+
return html`
|
55
|
+
<div class="nile-error-message" part="base">
|
56
|
+
<nile-icon
|
57
|
+
name="info2"
|
58
|
+
size="14"
|
59
|
+
class="nile-error-message__icon"
|
60
|
+
part="icon"
|
61
|
+
color="#E5434D"
|
62
|
+
></nile-icon>
|
63
|
+
<span class="nile-error-message__error">${this.errorMessage}</span>
|
79
64
|
|
80
|
-
if (this.expandedIndex === index) {
|
81
|
-
this.expandedIndex = null;
|
82
|
-
this.collapseText(event.currentTarget);
|
83
|
-
} else {
|
84
|
-
this.expandedIndex = index;
|
85
|
-
this.expandText(index, event.currentTarget);
|
86
|
-
}
|
87
|
-
}
|
88
65
|
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
66
|
+
${this.errorResponse
|
67
|
+
? html` <span class="nile-error-message__response"
|
68
|
+
>${this.getTruncatedResponse()}</span
|
69
|
+
>
|
70
|
+
<span
|
71
|
+
class="nile-error-message__more-button"
|
72
|
+
@click=${this.toggleExpanded}
|
73
|
+
>${this.isExpanded ? 'View Less' : 'View More'}</span
|
74
|
+
>`
|
75
|
+
: ``}
|
76
|
+
|
77
|
+
<div
|
78
|
+
class="nile-error-message__response-expanded ${this.isExpanded
|
79
|
+
? 'expanded'
|
80
|
+
: 'collapsed'}"
|
81
|
+
>
|
82
|
+
${this.errorResponse}
|
102
83
|
</div>
|
103
|
-
${this.errorMessages.map(
|
104
|
-
(errorMessage, index) => html`
|
105
|
-
<div
|
106
|
-
class="nile-error-message__expandable ${index !== 0
|
107
|
-
? 'bordered'
|
108
|
-
: ''} ${this.expandedIndex === index ? 'expanded' : ''}"
|
109
|
-
@click="${(event: any) => this.toggleExpand(index, event)}"
|
110
|
-
>
|
111
|
-
<div class="nile-error-message__content">
|
112
|
-
<nile-icon
|
113
|
-
name="arrowright"
|
114
|
-
size="14"
|
115
|
-
class="nile-error-message__arrow"
|
116
|
-
></nile-icon>
|
117
|
-
<div class="nile-error-message__summary">${errorMessage}</div>
|
118
|
-
</div>
|
119
|
-
</div>
|
120
|
-
`
|
121
|
-
)}
|
122
84
|
</div>
|
123
85
|
`;
|
124
86
|
}
|
@@ -224,12 +224,12 @@ export class NileSelect extends NileElement implements NileFormControl {
|
|
224
224
|
|
225
225
|
/** Gets the validity state object */
|
226
226
|
get validity() {
|
227
|
-
return this.valueInput
|
227
|
+
return this.valueInput?.validity;
|
228
228
|
}
|
229
229
|
|
230
230
|
/** Gets the validation message */
|
231
231
|
get validationMessage() {
|
232
|
-
return this.valueInput
|
232
|
+
return this.valueInput?.validationMessage;
|
233
233
|
}
|
234
234
|
|
235
235
|
connectedCallback() {
|