@aquera/nile-elements 0.0.6-11 → 0.0.6-12
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/nile-button-toggle/nile-button-toggle.css.js +4 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-button-toggle/nile-button-toggle.css.js.map +1 -1
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-button-toggle/nile-button-toggle.d.ts +4 -2
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-button-toggle/nile-button-toggle.js +12 -2
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-button-toggle/nile-button-toggle.js.map +1 -1
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-button-toggle-group/nile-button-toggle-group.d.ts +6 -2
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-button-toggle-group/nile-button-toggle-group.js +30 -7
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-button-toggle-group/nile-button-toggle-group.js.map +1 -1
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/tsconfig.tsbuildinfo +1 -1
- package/demo/index.html +1 -1
- package/dist/index.iife.js +6 -4
- package/dist/nile-button-toggle/index.cjs.js +1 -1
- package/dist/nile-button-toggle/index.esm.js +1 -1
- package/dist/nile-button-toggle/nile-button-toggle.cjs.js +1 -1
- package/dist/nile-button-toggle/nile-button-toggle.cjs.js.map +1 -1
- package/dist/nile-button-toggle/nile-button-toggle.css.cjs.js +1 -1
- package/dist/nile-button-toggle/nile-button-toggle.css.cjs.js.map +1 -1
- package/dist/nile-button-toggle/nile-button-toggle.css.esm.js +4 -0
- package/dist/nile-button-toggle/nile-button-toggle.esm.js +3 -3
- package/dist/nile-button-toggle-group/index.cjs.js +1 -1
- package/dist/nile-button-toggle-group/index.esm.js +1 -1
- package/dist/nile-button-toggle-group/nile-button-toggle-group.cjs.js +1 -1
- package/dist/nile-button-toggle-group/nile-button-toggle-group.cjs.js.map +1 -1
- package/dist/nile-button-toggle-group/nile-button-toggle-group.esm.js +1 -3
- package/dist/src/nile-button-toggle/nile-button-toggle.css.js +4 -0
- package/dist/src/nile-button-toggle/nile-button-toggle.css.js.map +1 -1
- package/dist/src/nile-button-toggle/nile-button-toggle.d.ts +4 -2
- package/dist/src/nile-button-toggle/nile-button-toggle.js +12 -2
- package/dist/src/nile-button-toggle/nile-button-toggle.js.map +1 -1
- package/dist/src/nile-button-toggle-group/nile-button-toggle-group.d.ts +6 -2
- package/dist/src/nile-button-toggle-group/nile-button-toggle-group.js +30 -7
- package/dist/src/nile-button-toggle-group/nile-button-toggle-group.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/src/nile-button-toggle/nile-button-toggle.css.ts +4 -0
- package/src/nile-button-toggle/nile-button-toggle.ts +9 -2
- package/src/nile-button-toggle-group/nile-button-toggle-group.ts +51 -26
package/package.json
CHANGED
@@ -8,6 +8,7 @@
|
|
8
8
|
import {LitElement, html, property, CSSResultArray, TemplateResult} from 'lit-element';
|
9
9
|
import { customElement } from 'lit/decorators.js';
|
10
10
|
import {styles} from './nile-button-toggle.css';
|
11
|
+
import NileElement from '../internal/nile-element';
|
11
12
|
|
12
13
|
/**
|
13
14
|
* Nile icon component.
|
@@ -16,7 +17,7 @@ import {styles} from './nile-button-toggle.css';
|
|
16
17
|
*
|
17
18
|
*/
|
18
19
|
@customElement('nile-button-toggle')
|
19
|
-
export class NileButtonToggle extends
|
20
|
+
export class NileButtonToggle extends NileElement {
|
20
21
|
|
21
22
|
/**
|
22
23
|
* The styles for ButtonToggle
|
@@ -38,6 +39,9 @@ export class NileButtonToggle extends LitElement {
|
|
38
39
|
@property({ type: Boolean, reflect: true })
|
39
40
|
end = false;
|
40
41
|
|
42
|
+
@property({ type: Boolean, reflect: true })
|
43
|
+
disabled = false;
|
44
|
+
|
41
45
|
@property({ type: String })
|
42
46
|
value = '';
|
43
47
|
|
@@ -52,10 +56,10 @@ export class NileButtonToggle extends LitElement {
|
|
52
56
|
}
|
53
57
|
|
54
58
|
toggle() {
|
59
|
+
if (this.disabled) return;
|
55
60
|
this.active = true;
|
56
61
|
const eventData = { active: this.active, value: this.value };
|
57
62
|
this.dispatchEvent(new CustomEvent('nile-toggle-changed', { detail: eventData, bubbles: true }));
|
58
|
-
|
59
63
|
}
|
60
64
|
|
61
65
|
/**
|
@@ -76,6 +80,9 @@ export class NileButtonToggle extends LitElement {
|
|
76
80
|
if (this.end) {
|
77
81
|
classes.push('nile-button-toggle__end');
|
78
82
|
}
|
83
|
+
if (this.disabled) {
|
84
|
+
classes.push('nile-button-toggle__disabled');
|
85
|
+
}
|
79
86
|
|
80
87
|
const classString = classes.join(' ');
|
81
88
|
|
@@ -9,6 +9,7 @@ import {LitElement, html, property, CSSResultArray, TemplateResult} from 'lit-el
|
|
9
9
|
import { customElement, query, queryAll } from 'lit/decorators.js';
|
10
10
|
import {styles} from './nile-button-toggle-group.css';
|
11
11
|
import NileButtonToggle from '../nile-button-toggle/nile-button-toggle';
|
12
|
+
import NileElement from '../internal/nile-element';
|
12
13
|
/**
|
13
14
|
* Nile icon component.
|
14
15
|
*
|
@@ -16,15 +17,14 @@ import NileButtonToggle from '../nile-button-toggle/nile-button-toggle';
|
|
16
17
|
*
|
17
18
|
*/
|
18
19
|
@customElement('nile-button-toggle-group')
|
19
|
-
export class NileButtonToggleGroup extends
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
}
|
20
|
+
export class NileButtonToggleGroup extends NileElement {
|
21
|
+
/**
|
22
|
+
* The styles for ButtonToggleGroup
|
23
|
+
* @remarks If you are extending this class you can extend the base styles with super. Eg `return [super(), myCustomStyles]`
|
24
|
+
*/
|
25
|
+
public static get styles(): CSSResultArray {
|
26
|
+
return [styles];
|
27
|
+
}
|
28
28
|
|
29
29
|
@queryAll('nile-button-toggle')
|
30
30
|
private toggles!: NodeListOf<NileButtonToggle>;
|
@@ -32,20 +32,46 @@ export class NileButtonToggleGroup extends LitElement {
|
|
32
32
|
@query('slot:not([name])')
|
33
33
|
private defaultSlot!: HTMLSlotElement;
|
34
34
|
|
35
|
+
@property({ type: Boolean, reflect: true })
|
36
|
+
public disabled: boolean = false;
|
35
37
|
|
36
38
|
connectedCallback() {
|
37
39
|
super.connectedCallback();
|
38
40
|
}
|
39
41
|
|
40
42
|
firstUpdated() {
|
41
|
-
this.defaultSlot.addEventListener('slotchange', () =>
|
43
|
+
this.defaultSlot.addEventListener('slotchange', () =>
|
44
|
+
this.updateTogglePositions()
|
45
|
+
);
|
42
46
|
this.addEventListener('nile-toggle-changed', this.handleToggle);
|
43
47
|
this.updateTogglePositions();
|
44
48
|
}
|
45
49
|
|
50
|
+
updated(changedProperties: Map<string | number | symbol, unknown>) {
|
51
|
+
super.updated(changedProperties);
|
52
|
+
if (changedProperties.has('disabled')) {
|
53
|
+
this.updateDisabledState();
|
54
|
+
}
|
55
|
+
}
|
56
|
+
|
57
|
+
private updateDisabledState() {
|
58
|
+
const assignedNodes = this.defaultSlot.assignedNodes({ flatten: true });
|
59
|
+
const toggles = assignedNodes.filter(
|
60
|
+
node => node instanceof NileButtonToggle
|
61
|
+
) as NileButtonToggle[];
|
62
|
+
|
63
|
+
toggles.forEach(toggle => {
|
64
|
+
if (!toggle.disabled) {
|
65
|
+
toggle.disabled = this.disabled;
|
66
|
+
}
|
67
|
+
});
|
68
|
+
}
|
69
|
+
|
46
70
|
updateTogglePositions() {
|
47
|
-
const assignedNodes = this.defaultSlot.assignedNodes({flatten: true});
|
48
|
-
const toggles = assignedNodes.filter(
|
71
|
+
const assignedNodes = this.defaultSlot.assignedNodes({ flatten: true });
|
72
|
+
const toggles = assignedNodes.filter(
|
73
|
+
node => node instanceof NileButtonToggle
|
74
|
+
) as NileButtonToggle[];
|
49
75
|
|
50
76
|
toggles.forEach((toggle, index) => {
|
51
77
|
toggle.initial = index === 0;
|
@@ -55,6 +81,7 @@ export class NileButtonToggleGroup extends LitElement {
|
|
55
81
|
}
|
56
82
|
|
57
83
|
handleToggle(event: CustomEvent) {
|
84
|
+
if (this.disabled) return;
|
58
85
|
const toggles = this.querySelectorAll('nile-button-toggle');
|
59
86
|
|
60
87
|
if (toggles && event.detail.active) {
|
@@ -64,21 +91,19 @@ export class NileButtonToggleGroup extends LitElement {
|
|
64
91
|
}
|
65
92
|
});
|
66
93
|
|
67
|
-
this.
|
94
|
+
this.emit('nile-change', { value: event.detail.value });
|
68
95
|
}
|
69
|
-
}
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
/* #endregion */
|
96
|
+
}
|
97
|
+
|
98
|
+
/**
|
99
|
+
* Render method
|
100
|
+
* @slot This is a slot test
|
101
|
+
*/
|
102
|
+
public render(): TemplateResult {
|
103
|
+
return html` <slot> </slot> `;
|
104
|
+
}
|
105
|
+
|
106
|
+
/* #endregion */
|
82
107
|
}
|
83
108
|
|
84
109
|
export default NileButtonToggleGroup;
|