@aquera/nile-elements 0.0.6-6 → 0.0.6-7
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 +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/index.js +1 -0
- 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-content-editor/index.d.ts +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-content-editor/index.js +2 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-content-editor/index.js.map +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-content-editor/nile-content-editor.css.d.ts +12 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-content-editor/nile-content-editor.css.js +77 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-content-editor/nile-content-editor.css.js.map +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-content-editor/nile-content-editor.d.ts +50 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-content-editor/nile-content-editor.js +180 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-content-editor/nile-content-editor.js.map +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/array.d.ts +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/array.js +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/array.js.map +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/arrayofobject.d.ts +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/arrayofobject.js +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/arrayofobject.js.map +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/index.d.ts +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/index.js +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/index.js.map +1 -1
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/numberinput.d.ts +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/numberinput.js +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/numberinput.js.map +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/object.d.ts +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/object.js +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/object.js.map +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/stringletters.d.ts +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/stringletters.js +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/stringletters.js.map +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-switcher/nile-switcher.css.js +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-switcher/nile-switcher.css.js.map +1 -1
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-switcher/nile-switcher.d.ts +13 -7
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-switcher/nile-switcher.js +109 -29
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-switcher/nile-switcher.js.map +1 -1
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-textarea/nile-textarea.js +3 -1
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-textarea/nile-textarea.js.map +1 -1
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/tsconfig.tsbuildinfo +1 -1
- package/demo/filenames.txt +1 -1
- package/demo/index.html +1 -1
- package/dist/index.cjs.js +1 -1
- package/dist/index.esm.js +1 -1
- package/dist/index.iife.js +168 -60
- package/dist/nile-badge/index.cjs.js +1 -1
- package/dist/nile-badge/index.esm.js +1 -1
- package/dist/nile-badge/nile-badge.cjs.js +1 -1
- package/dist/nile-badge/nile-badge.cjs.js.map +1 -1
- package/dist/nile-badge/nile-badge.esm.js +1 -1
- package/dist/nile-button/index.cjs.js +1 -1
- package/dist/nile-button/index.esm.js +1 -1
- package/dist/nile-button/nile-button.cjs.js +1 -1
- package/dist/nile-button/nile-button.cjs.js.map +1 -1
- package/dist/nile-button/nile-button.esm.js +1 -1
- package/dist/nile-content-editor/index.cjs.js +2 -0
- package/dist/nile-content-editor/index.cjs.js.map +1 -0
- package/dist/nile-content-editor/index.esm.js +1 -0
- package/dist/nile-content-editor/nile-content-editor.cjs.js +2 -0
- package/dist/nile-content-editor/nile-content-editor.cjs.js.map +1 -0
- package/dist/nile-content-editor/nile-content-editor.css.cjs.js +2 -0
- package/dist/nile-content-editor/nile-content-editor.css.cjs.js.map +1 -0
- package/dist/nile-content-editor/nile-content-editor.css.esm.js +65 -0
- package/dist/nile-content-editor/nile-content-editor.esm.js +33 -0
- package/dist/nile-icon/icons/svg/array.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/array.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/array.esm.js +1 -0
- package/dist/nile-icon/icons/svg/arrayofobject.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/arrayofobject.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/arrayofobject.esm.js +1 -0
- package/dist/nile-icon/icons/svg/index.cjs.js +1 -1
- package/dist/nile-icon/icons/svg/index.esm.js +1 -1
- package/dist/nile-icon/icons/svg/numberinput.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/numberinput.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/numberinput.esm.js +1 -0
- package/dist/nile-icon/icons/svg/object.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/object.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/object.esm.js +1 -0
- package/dist/nile-icon/icons/svg/stringletters.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/stringletters.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/stringletters.esm.js +1 -0
- package/dist/nile-icon/index.cjs.js +1 -1
- package/dist/nile-icon/index.cjs.js.map +1 -1
- package/dist/nile-icon/index.esm.js +2 -2
- package/dist/nile-icon-button/index.cjs.js +1 -1
- package/dist/nile-icon-button/index.esm.js +1 -1
- package/dist/nile-icon-button/nile-icon-button.cjs.js +1 -1
- package/dist/nile-icon-button/nile-icon-button.cjs.js.map +1 -1
- package/dist/nile-icon-button/nile-icon-button.esm.js +1 -1
- package/dist/nile-input/index.cjs.js +1 -1
- package/dist/nile-input/index.esm.js +1 -1
- package/dist/nile-input/nile-input.cjs.js +1 -1
- package/dist/nile-input/nile-input.cjs.js.map +1 -1
- package/dist/nile-input/nile-input.esm.js +1 -1
- package/dist/nile-menu-item/index.cjs.js +1 -1
- package/dist/nile-menu-item/index.esm.js +1 -1
- package/dist/nile-menu-item/nile-menu-item.cjs.js +1 -1
- package/dist/nile-menu-item/nile-menu-item.cjs.js.map +1 -1
- package/dist/nile-menu-item/nile-menu-item.esm.js +1 -1
- package/dist/nile-option/index.cjs.js +1 -1
- package/dist/nile-option/index.esm.js +1 -1
- package/dist/nile-option/nile-option.cjs.js +1 -1
- package/dist/nile-option/nile-option.cjs.js.map +1 -1
- package/dist/nile-option/nile-option.esm.js +1 -1
- package/dist/nile-select/index.cjs.js +1 -1
- package/dist/nile-select/index.esm.js +1 -1
- 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/nile-switcher/nile-switcher.cjs.js +1 -1
- package/dist/nile-switcher/nile-switcher.cjs.js.map +1 -1
- package/dist/nile-switcher/nile-switcher.css.cjs.js +1 -1
- package/dist/nile-switcher/nile-switcher.css.cjs.js.map +1 -1
- package/dist/nile-switcher/nile-switcher.css.esm.js +5 -0
- package/dist/nile-switcher/nile-switcher.esm.js +26 -19
- package/dist/nile-tag/index.cjs.js +1 -1
- package/dist/nile-tag/index.esm.js +1 -1
- package/dist/nile-tag/nile-tag.cjs.js +1 -1
- package/dist/nile-tag/nile-tag.cjs.js.map +1 -1
- package/dist/nile-tag/nile-tag.esm.js +1 -1
- package/dist/nile-textarea/nile-textarea.cjs.js +1 -1
- package/dist/nile-textarea/nile-textarea.cjs.js.map +1 -1
- package/dist/nile-textarea/nile-textarea.esm.js +1 -1
- package/dist/src/index.d.ts +1 -0
- package/dist/src/index.js +1 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/nile-content-editor/index.d.ts +1 -0
- package/dist/src/nile-content-editor/index.js +2 -0
- package/dist/src/nile-content-editor/index.js.map +1 -0
- package/dist/src/nile-content-editor/nile-content-editor.css.d.ts +12 -0
- package/dist/src/nile-content-editor/nile-content-editor.css.js +77 -0
- package/dist/src/nile-content-editor/nile-content-editor.css.js.map +1 -0
- package/dist/src/nile-content-editor/nile-content-editor.d.ts +50 -0
- package/dist/src/nile-content-editor/nile-content-editor.js +180 -0
- package/dist/src/nile-content-editor/nile-content-editor.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/array.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/array.js +5 -0
- package/dist/src/nile-icon/icons/svg/array.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/arrayofobject.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/arrayofobject.js +5 -0
- package/dist/src/nile-icon/icons/svg/arrayofobject.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/index.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/index.js +5 -0
- package/dist/src/nile-icon/icons/svg/index.js.map +1 -1
- package/dist/src/nile-icon/icons/svg/numberinput.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/numberinput.js +5 -0
- package/dist/src/nile-icon/icons/svg/numberinput.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/object.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/object.js +5 -0
- package/dist/src/nile-icon/icons/svg/object.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/stringletters.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/stringletters.js +5 -0
- package/dist/src/nile-icon/icons/svg/stringletters.js.map +1 -0
- package/dist/src/nile-switcher/nile-switcher.css.js +5 -0
- package/dist/src/nile-switcher/nile-switcher.css.js.map +1 -1
- package/dist/src/nile-switcher/nile-switcher.d.ts +13 -7
- package/dist/src/nile-switcher/nile-switcher.js +109 -29
- package/dist/src/nile-switcher/nile-switcher.js.map +1 -1
- package/dist/src/nile-textarea/nile-textarea.js +3 -1
- package/dist/src/nile-textarea/nile-textarea.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/src/index.ts +1 -0
- package/src/nile-content-editor/index.ts +1 -0
- package/src/nile-content-editor/nile-content-editor.css.ts +79 -0
- package/src/nile-content-editor/nile-content-editor.ts +186 -0
- package/src/nile-icon/icons/svg/array.ts +5 -0
- package/src/nile-icon/icons/svg/arrayofobject.ts +5 -0
- package/src/nile-icon/icons/svg/index.ts +5 -0
- package/src/nile-icon/icons/svg/numberinput.ts +5 -0
- package/src/nile-icon/icons/svg/object.ts +5 -0
- package/src/nile-icon/icons/svg/stringletters.ts +5 -0
- package/src/nile-switcher/nile-switcher.css.ts +5 -0
- package/src/nile-switcher/nile-switcher.ts +115 -32
- package/src/nile-textarea/nile-textarea.ts +3 -1
package/package.json
CHANGED
package/src/index.ts
CHANGED
@@ -0,0 +1 @@
|
|
1
|
+
export { NileContentEditor } from './nile-content-editor';
|
@@ -0,0 +1,79 @@
|
|
1
|
+
/**
|
2
|
+
* Copyright Aquera Inc 2023
|
3
|
+
*
|
4
|
+
* This source code is licensed under the BSD-3-Clause license found in the
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
6
|
+
*/
|
7
|
+
|
8
|
+
import { css } from 'lit-element';
|
9
|
+
|
10
|
+
/**
|
11
|
+
* AttributeExpression CSS
|
12
|
+
*/
|
13
|
+
export const styles = css`
|
14
|
+
:host {
|
15
|
+
width: 100%;
|
16
|
+
box-sizing: border-box;
|
17
|
+
}
|
18
|
+
|
19
|
+
.content-editable-wrapper {
|
20
|
+
position: relative;
|
21
|
+
width: 100%;
|
22
|
+
box-sizing: border-box;
|
23
|
+
}
|
24
|
+
.content-editable-input {
|
25
|
+
box-sizing: border-box;
|
26
|
+
width: 100%;
|
27
|
+
padding: 9px;
|
28
|
+
border: 1px solid #c7ced4;
|
29
|
+
border-radius: 4px;
|
30
|
+
overflow-x: auto;
|
31
|
+
overflow-anchor: none;
|
32
|
+
scrollbar-width: none;
|
33
|
+
-ms-overflow-style: none;
|
34
|
+
cursor: text;
|
35
|
+
white-space: nowrap;
|
36
|
+
background-color: #ffffff;
|
37
|
+
height: 38px;
|
38
|
+
}
|
39
|
+
.content-editable-input:focus {
|
40
|
+
outline: none;
|
41
|
+
}
|
42
|
+
|
43
|
+
.content-editable-input::-webkit-scrollbar {
|
44
|
+
display: none;
|
45
|
+
}
|
46
|
+
|
47
|
+
.chips {
|
48
|
+
background: #e5e9eb;
|
49
|
+
color: #000;
|
50
|
+
border-radius: 4px;
|
51
|
+
padding: 6px;
|
52
|
+
margin-left: 3px;
|
53
|
+
display: inline;
|
54
|
+
letter-spacing: 0.2px;
|
55
|
+
}
|
56
|
+
|
57
|
+
.nile-options-container {
|
58
|
+
box-sizing: border-box;
|
59
|
+
background-color: #ffffff;
|
60
|
+
border: 1px solid #c7ced4;
|
61
|
+
overflow: auto;
|
62
|
+
}
|
63
|
+
|
64
|
+
nile-popup::part(popup) {
|
65
|
+
top: 91px;
|
66
|
+
}
|
67
|
+
|
68
|
+
label {
|
69
|
+
display: inline-block;
|
70
|
+
margin-bottom: 6px;
|
71
|
+
font-family: 'colfax-medium';
|
72
|
+
}
|
73
|
+
|
74
|
+
.asterik {
|
75
|
+
color: #e5434d;
|
76
|
+
}
|
77
|
+
`;
|
78
|
+
|
79
|
+
export default [styles];
|
@@ -0,0 +1,186 @@
|
|
1
|
+
/**
|
2
|
+
* Copyright Aquera Inc 2023
|
3
|
+
*
|
4
|
+
* This source code is licensed under the BSD-3-Clause license found in the
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
6
|
+
*/
|
7
|
+
|
8
|
+
import { html, property, TemplateResult } from 'lit-element';
|
9
|
+
import { customElement, query, state } from 'lit/decorators.js';
|
10
|
+
import { styles } from './nile-content-editor.css';
|
11
|
+
import { CSSResultGroup } from 'lit';
|
12
|
+
import { classMap } from 'lit/directives/class-map.js';
|
13
|
+
import NileElement from '../internal/nile-element';
|
14
|
+
|
15
|
+
/**
|
16
|
+
* Nile icon component.
|
17
|
+
*
|
18
|
+
* @tag nile-attribute-expression
|
19
|
+
*
|
20
|
+
*/
|
21
|
+
@customElement('nile-content-editor')
|
22
|
+
export class NileContentEditor extends NileElement {
|
23
|
+
/**
|
24
|
+
* @summary Allows you to handle both input and dropdown selection
|
25
|
+
|
26
|
+
* @dependency nile-option
|
27
|
+
|
28
|
+
* @event nile-change - Emitted when the control's value changes.
|
29
|
+
*/
|
30
|
+
|
31
|
+
@property() value: string = '';
|
32
|
+
|
33
|
+
@property() dropdownOptions: Array<any>;
|
34
|
+
|
35
|
+
@property() showLabel: boolean = true;
|
36
|
+
|
37
|
+
@property() labelText = '';
|
38
|
+
|
39
|
+
@property() required: boolean = true;
|
40
|
+
|
41
|
+
@query('.content-editable-input') input: HTMLInputElement;
|
42
|
+
|
43
|
+
@state() private openDropdown: boolean = false;
|
44
|
+
|
45
|
+
@property({ attribute: 'help-text' }) helpText = '';
|
46
|
+
|
47
|
+
@property({ attribute: 'error-message' }) errorMessage = '';
|
48
|
+
|
49
|
+
static styles: CSSResultGroup = styles;
|
50
|
+
|
51
|
+
connectedCallback() {
|
52
|
+
super.connectedCallback();
|
53
|
+
this.emit('nile-init');
|
54
|
+
this.afterFirstRender().then(res => {
|
55
|
+
if (res && this.value !== '')
|
56
|
+
this.input.innerHTML = this.generateHTMLTagsWithValues(this.value);
|
57
|
+
});
|
58
|
+
}
|
59
|
+
|
60
|
+
disconnectedCallback(): void {
|
61
|
+
super.disconnectedCallback();
|
62
|
+
this.emit('nile-destroy');
|
63
|
+
}
|
64
|
+
|
65
|
+
async afterFirstRender(): Promise<boolean> {
|
66
|
+
return await this.updateComplete;
|
67
|
+
}
|
68
|
+
|
69
|
+
private handleChange(event: any) {
|
70
|
+
const value = this.input.innerText;
|
71
|
+
this.emitInputChange();
|
72
|
+
if (value.includes('$')) {
|
73
|
+
this.openDropdown = true;
|
74
|
+
}
|
75
|
+
}
|
76
|
+
|
77
|
+
generateValuesFromHTMLTags(string: any): string {
|
78
|
+
var pattern =
|
79
|
+
/<span class="chips(?: chip-error)?" contenteditable="false">(.*?)<\/span>/g;
|
80
|
+
var result = string.replace(pattern, (match: any, option: any) => {
|
81
|
+
return '{{' + option + '}}';
|
82
|
+
});
|
83
|
+
return result;
|
84
|
+
}
|
85
|
+
|
86
|
+
generateHTMLTagsWithValues(string: any): string {
|
87
|
+
var pattern = /{{(.*?)}}/g;
|
88
|
+
var result = string.replace(pattern, (match: any, option: any) => {
|
89
|
+
if (this.dropdownOptions.includes(option)) {
|
90
|
+
return (
|
91
|
+
'<span class="chips" contenteditable="false">' + option + '</span>'
|
92
|
+
);
|
93
|
+
}
|
94
|
+
});
|
95
|
+
return result;
|
96
|
+
}
|
97
|
+
|
98
|
+
emitInputChange(): void {
|
99
|
+
this.emit(
|
100
|
+
'nile-change',
|
101
|
+
this.generateValuesFromHTMLTags(this.input.innerHTML)
|
102
|
+
);
|
103
|
+
}
|
104
|
+
|
105
|
+
handleOptions(option: any): void {
|
106
|
+
this.openDropdown = !this.openDropdown;
|
107
|
+
|
108
|
+
// not appending Native element as it replaces all existing child nodes with new node
|
109
|
+
const autoOptionsTag =
|
110
|
+
'<span class="chips" contenteditable="false">' + option + '</span>';
|
111
|
+
this.input.innerHTML = this.input.innerHTML + autoOptionsTag;
|
112
|
+
|
113
|
+
// removing '$' from innerText after option is being selected
|
114
|
+
if (this.input.lastChild?.previousSibling)
|
115
|
+
this.input.lastChild.previousSibling.nodeValue =
|
116
|
+
this.input.lastChild.previousSibling.nodeValue!.replace('$', '');
|
117
|
+
this.emitInputChange();
|
118
|
+
}
|
119
|
+
|
120
|
+
public renderAutoOptions(): TemplateResult {
|
121
|
+
return html`<div class="nile-options-container">
|
122
|
+
${this.dropdownOptions &&
|
123
|
+
this.dropdownOptions.map((option: any) => {
|
124
|
+
return html` <nile-option
|
125
|
+
.value="${option}"
|
126
|
+
@click="${(event: Event) => {
|
127
|
+
this.handleOptions(option);
|
128
|
+
}}"
|
129
|
+
>${option}
|
130
|
+
</nile-option>`;
|
131
|
+
})}
|
132
|
+
</div>`;
|
133
|
+
}
|
134
|
+
|
135
|
+
public render(): TemplateResult {
|
136
|
+
const hasHelpText = this.helpText ? true : false;
|
137
|
+
const hasErrorMessage = this.errorMessage ? true : false;
|
138
|
+
return html`
|
139
|
+
<nile-popup
|
140
|
+
.active="${this.openDropdown}"
|
141
|
+
sync="width"
|
142
|
+
placement="bottom"
|
143
|
+
class=${classMap({
|
144
|
+
dropdown: true,
|
145
|
+
'dropdown--open': true,
|
146
|
+
})}
|
147
|
+
>
|
148
|
+
<div class="content-editable-wrapper" slot="anchor">
|
149
|
+
${this.showLabel && this.labelText
|
150
|
+
? html`<label class="ods-label">${this.labelText} </label> ${this
|
151
|
+
.required
|
152
|
+
? html`<span class="asterik">*</span>`
|
153
|
+
: ''}`
|
154
|
+
: ''}
|
155
|
+
<div
|
156
|
+
class="content-editable-input"
|
157
|
+
contenteditable="true"
|
158
|
+
@input=${this.handleChange}
|
159
|
+
></div>
|
160
|
+
${hasHelpText
|
161
|
+
? html`
|
162
|
+
<nile-form-help-text>${this.helpText}</nile-form-help-text>
|
163
|
+
`
|
164
|
+
: ``}
|
165
|
+
${hasErrorMessage
|
166
|
+
? html`
|
167
|
+
<nile-form-error-message
|
168
|
+
>${this.errorMessage}</nile-form-error-message
|
169
|
+
>
|
170
|
+
`
|
171
|
+
: ``}
|
172
|
+
</div>
|
173
|
+
|
174
|
+
${this.renderAutoOptions()}
|
175
|
+
</nile-popup>
|
176
|
+
`;
|
177
|
+
}
|
178
|
+
}
|
179
|
+
|
180
|
+
export default NileContentEditor;
|
181
|
+
|
182
|
+
declare global {
|
183
|
+
interface HTMLElementTagNameMap {
|
184
|
+
'nile-content-editor': NileContentEditor;
|
185
|
+
}
|
186
|
+
}
|
@@ -0,0 +1,5 @@
|
|
1
|
+
/**
|
2
|
+
* Do not edit directly
|
3
|
+
*/
|
4
|
+
|
5
|
+
export default "PHN2ZyB3aWR0aD0iMTAiIGhlaWdodD0iMTIiIHZpZXdCb3g9IjAgMCAxMCAxMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBpZD0iWyBdIj48cGF0aCBkPSJNMC4zNDk2MDkgMTEuNDM5MVYwLjUzMDAyOUgyLjg3MjM0VjEuMzY1MjZIMS4zMDQxNVYxMC42MDM5SDIuODcyMzRWMTEuNDM5MUgwLjM0OTYwOVoiIGZpbGw9IiMxQzFCMUYiLz48cGF0aCBkPSJNOS41ODkzMSAwLjUzMDAyOVYxMS40MzkxSDcuMDY2NThWMTAuNjAzOUg4LjYzNDc3VjEuMzY1MjZINy4wNjY1OFYwLjUzMDAyOUg5LjU4OTMxWiIgZmlsbD0iIzFDMUIxRiIvPjwvZz48L3N2Zz4=";
|
@@ -0,0 +1,5 @@
|
|
1
|
+
/**
|
2
|
+
* Do not edit directly
|
3
|
+
*/
|
4
|
+
|
5
|
+
export default "PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAxNCAxNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMTEuOTk5OSAyVjEySDkuNjY2MDJWMTEuMzIzMUgxMS4yNTE1VjIuNjc2ODZIOS42NjYwMlYySDExLjk5OTlaIiBmaWxsPSJibGFjayIvPjxwYXRoIGQ9Ik0xMC42NTczIDYuNjYxNTdIMTAuOTMzMVY3LjMzODQzSDEwLjY1NzNDMTAuMDI3MSA3LjMzODQzIDkuNjkyMjYgNy43NDIzNiA5LjY5MjI2IDguNDQxMDVWMTAuMzYyNEM5LjY5MjI2IDExLjM2NjggOS4xODAxOSAxMiA4LjE0NjIgMTJINy40NzY1NlYxMS4zMjMxSDguMDI4MDNDOC43MDc1MSAxMS4zMjMxIDguOTQzODUgMTAuOTYyOSA4Ljk0Mzg1IDEwLjMyOTdWOC4zNzU1NUM4Ljk0Mzg1IDcuNjExMzUgOS4yNDkxMiA3LjEyMDA5IDkuODk5MDYgN0M5LjI0OTEyIDYuODc5OTEgOC45NDM4NSA2LjM4ODY1IDguOTQzODUgNS42MjQ0NVYzLjY3MDMxQzguOTQzODUgMy4wMzcxMiA4LjcwNzUxIDIuNjc2ODYgOC4wMjgwMyAyLjY3Njg2SDcuNDc2NTZWMkg4LjE0NjJDOS4xODAxOSAyIDkuNjkyMjYgMi42MzMxOSA5LjY5MjI2IDMuNjM3NTVWNS41NTg5NUM5LjY5MjI2IDYuMjU3NjQgMTAuMDI3MSA2LjY2MTU3IDEwLjY1NzMgNi42NjE1N1oiIGZpbGw9ImJsYWNrIi8+PHBhdGggZD0iTTMuMDk1NyA2LjY2MTU3SDMuMzcxNDRDNC4wMDE2OCA2LjY2MTU3IDQuMzM2NSA2LjI1NzY0IDQuMzM2NSA1LjU1ODk1VjMuNjM3NTVDNC4zMzY1IDIuNjMzMTkgNC44NDg1NyAyIDUuODgyNTYgMkg2LjU1MjJWMi42NzY4Nkg2LjAwMDczQzUuMzIxMjUgMi42NzY4NiA1LjA4NDkxIDMuMDM3MTIgNS4wODQ5MSAzLjY3MDMxVjUuNjI0NDVDNS4wODQ5MSA2LjM4ODY1IDQuNzc5NjQgNi44Nzk5MSA0LjEyOTcgN0M0Ljc3OTY0IDcuMTIwMDkgNS4wODQ5MSA3LjYxMTM1IDUuMDg0OTEgOC4zNzU1NVYxMC4zMjk3QzUuMDg0OTEgMTAuOTYyOSA1LjMyMTI1IDExLjMyMzEgNi4wMDA3MyAxMS4zMjMxSDYuNTUyMlYxMkg1Ljg4MjU2QzQuODQ4NTcgMTIgNC4zMzY1IDExLjM2NjggNC4zMzY1IDEwLjM2MjRWOC40NDEwNUM0LjMzNjUgNy43NDIzNiA0LjAwMTY4IDcuMzM4NDMgMy4zNzE0NCA3LjMzODQzSDMuMDk1N1Y2LjY2MTU3WiIgZmlsbD0iYmxhY2siLz48cGF0aCBkPSJNMiAxMlYySDQuMzMzODdWMi42NzY4NkgyLjc0ODQxVjExLjMyMzFINC4zMzM4N1YxMkgyWiIgZmlsbD0iYmxhY2siLz48L3N2Zz4=";
|
@@ -14,6 +14,8 @@ export { default as applications } from './applications';
|
|
14
14
|
export { default as approve } from './approve';
|
15
15
|
export { default as aquera } from './aquera';
|
16
16
|
export { default as aquerasupport } from './aquerasupport';
|
17
|
+
export { default as array } from './array';
|
18
|
+
export { default as arrayofobject } from './arrayofobject';
|
17
19
|
export { default as arrow } from './arrow';
|
18
20
|
export { default as arrowdown } from './arrowdown';
|
19
21
|
export { default as arrowdropdown } from './arrowdropdown';
|
@@ -232,6 +234,8 @@ export { default as notificationadded } from './notificationadded';
|
|
232
234
|
export { default as notscheduled } from './notscheduled';
|
233
235
|
export { default as null } from './null';
|
234
236
|
export { default as number } from './number';
|
237
|
+
export { default as numberinput } from './numberinput';
|
238
|
+
export { default as object } from './object';
|
235
239
|
export { default as operators } from './operators';
|
236
240
|
export { default as options } from './options';
|
237
241
|
export { default as orchestrationsolid } from './orchestration-solid';
|
@@ -322,6 +326,7 @@ export { default as stop } from './stop';
|
|
322
326
|
export { default as storybook } from './storybook';
|
323
327
|
export { default as string } from './string';
|
324
328
|
export { default as stringinput } from './stringinput';
|
329
|
+
export { default as stringletters } from './stringletters';
|
325
330
|
export { default as support } from './support';
|
326
331
|
export { default as swap } from './swap';
|
327
332
|
export { default as sync } from './sync';
|
@@ -0,0 +1,5 @@
|
|
1
|
+
/**
|
2
|
+
* Do not edit directly
|
3
|
+
*/
|
4
|
+
|
5
|
+
export default "PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAxNCAxNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTkuMTg3NSAxLjMxMjVIMTAuNVYwLjQzNzVIN1YxLjMxMjVIOC4zMTI1VjEyLjY4NzVIN1YxMy41NjI1SDEwLjVWMTIuNjg3NUg5LjE4NzVWMS4zMTI1Wk0xLjMxMjUgMy4wNjI1SDdWMy45Mzc1SDIuMTg3NVYxMC4wNjI1SDdWMTAuOTM3NUgxLjMxMjVWMy4wNjI1Wk0xMS44MTI1IDMuOTM3NUgxMC41VjMuMDYyNUgxMi42ODc1VjEwLjkzNzVIMTAuNVYxMC4wNjI1SDExLjgxMjVWMy45Mzc1Wk01LjE0ODYxIDguMTQwNDlINC4zNzVWOC43NUg2LjU5NTAzVjguMTQwNDlINS44MjE0MlY1LjI1SDUuMTUzM0w0LjQyODkyIDUuNDIzNDhWNi4wNDcwNUw1LjE0ODYxIDUuODY4ODlWOC4xNDA0OVoiIGZpbGw9ImJsYWNrIi8+PC9zdmc+";
|
@@ -0,0 +1,5 @@
|
|
1
|
+
/**
|
2
|
+
* Do not edit directly
|
3
|
+
*/
|
4
|
+
|
5
|
+
export default "PHN2ZyB3aWR0aD0iMjEiIGhlaWdodD0iMjEiIHZpZXdCb3g9IjAgMCAyMSAyMSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMCAxMC4yNzQ5VjkuMjgyNjVDMC44OTA5MjEgOS4yODI2NSAxLjUxMjQzIDkuMDk1OTMgMS44NjQ1MyA4LjcyMjVDMi4yMjE5NyA4LjM0OTA1IDIuNDAwNjkgNy43MjQ4OCAyLjQwMDY5IDYuODQ5OTZWNC4yODkyM0MyLjQwMDY5IDMuNTUzMDIgMi40NzAwNCAyLjkxNTUgMi42MDg3NSAyLjM3NjY4QzIuNzUyNzkgMS44Mzc4NiAyLjk4NDg1IDEuMzkyNCAzLjMwNDk0IDEuMDQwM0MzLjYyNTA0IDAuNjg4MTk4IDQuMDUxODMgMC40MjY3OSA0LjU4NTMxIDAuMjU2MDc0QzUuMTE4OCAwLjA4NTM1ODEgNS43Nzc2NSAwIDYuNTYxODggMFYxLjU2ODQ1QzUuOTQzMDMgMS41Njg0NSA1LjQ1NDg5IDEuNjY0NDggNS4wOTc0NiAxLjg1NjUzQzQuNzQ1MzYgMi4wNDg1OSA0LjQ5NDYyIDIuMzQ3MzQgNC4zNDUyNCAyLjc1Mjc5QzQuMjAxMiAzLjE1MjkgNC4xMjkxOCAzLjY2NTA1IDQuMTI5MTggNC4yODkyM1Y3LjQ5MDE0QzQuMTI5MTggNy45MDYyNiA0LjA3MzE2IDguMjg1MDQgMy45NjExMyA4LjYyNjQ3QzMuODU0NDQgOC45Njc5IDMuNjU0MzggOS4yNjEzMSAzLjM2MDk2IDkuNTA2NzJDMy4wNjc1NCA5Ljc1MjEyIDIuNjQ4NzYgOS45NDE1MSAyLjEwNDYgMTAuMDc0OUMxLjU2NTc4IDEwLjIwODMgMC44NjQyNDcgMTAuMjc0OSAwIDEwLjI3NDlaTTYuNTYxODggMjAuNDg1OUM1Ljc3NzY1IDIwLjQ4NTkgNS4xMTg4IDIwLjQwMDUgNC41ODUzMSAyMC4yMjk4QzQuMDUxODMgMjAuMDU5MSAzLjYyNTA0IDE5Ljc5NzcgMy4zMDQ5NCAxOS40NDU2QzIuOTg0ODUgMTkuMDkzNSAyLjc1Mjc5IDE4LjY0OCAyLjYwODc1IDE4LjEwOTJDMi40NzAwNCAxNy41NzA0IDIuNDAwNjkgMTYuOTMyOCAyLjQwMDY5IDE2LjE5NjZWMTMuNjM1OUMyLjQwMDY5IDEyLjc2MSAyLjIyMTk3IDEyLjEzNjggMS44NjQ1MyAxMS43NjM0QzEuNTEyNDMgMTEuMzg5OSAwLjg5MDkyMSAxMS4yMDMyIDAgMTEuMjAzMlYxMC4yMTA5QzAuODY0MjQ3IDEwLjIxMDkgMS41NjU3OCAxMC4yNzc2IDIuMTA0NiAxMC40MTFDMi42NDg3NiAxMC41NDQzIDMuMDY3NTQgMTAuNzMzNyAzLjM2MDk2IDEwLjk3OTFDMy42NTQzOCAxMS4yMjQ1IDMuODU0NDQgMTEuNTE4IDMuOTYxMTMgMTEuODU5NEM0LjA3MzE2IDEyLjIwMDggNC4xMjkxOCAxMi41Nzk2IDQuMTI5MTggMTIuOTk1N1YxNi4xOTY2QzQuMTI5MTggMTYuODIwOCA0LjIwMTIgMTcuMzMzIDQuMzQ1MjQgMTcuNzMzMUM0LjQ5NDYyIDE4LjEzMzIgNC43NDUzNiAxOC40MjkzIDUuMDk3NDYgMTguNjIxM0M1LjQ1NDg5IDE4LjgxODcgNS45NDMwMyAxOC45MTc0IDYuNTYxODggMTguOTE3NFYyMC40ODU5Wk0wIDExLjIwMzJWOS4yODI2NUgxLjg4ODU0VjExLjIwMzJIMFoiIGZpbGw9ImJsYWNrIi8+PHBhdGggZD0iTTIxIDEwLjIxMDlWMTEuMjAzMkMyMC4xMDkxIDExLjIwMzIgMTkuNDg0OSAxMS4zODk5IDE5LjEyNzUgMTEuNzYzNEMxOC43NzU0IDEyLjEzNjggMTguNTk5MyAxMi43NjEgMTguNTk5MyAxMy42MzU5VjE2LjE5NjZDMTguNTk5MyAxNi45MzI4IDE4LjUyNzMgMTcuNTcwNCAxOC4zODMzIDE4LjEwOTJDMTguMjQ0NSAxOC42NDggMTguMDE1MSAxOS4wOTM1IDE3LjY5NTEgMTkuNDQ1NkMxNy4zNzUgMTkuNzk3NyAxNi45NDgyIDIwLjA1OTEgMTYuNDE0NyAyMC4yMjk4QzE1Ljg4MTIgMjAuNDAwNSAxNS4yMjI0IDIwLjQ4NTkgMTQuNDM4MSAyMC40ODU5VjE4LjkxNzRDMTUuMDU3IDE4LjkxNzQgMTUuNTQyNCAxOC44MTg3IDE1Ljg5NDUgMTguNjIxM0MxNi4yNTIgMTguNDI5MyAxNi41MDI3IDE4LjEzMzIgMTYuNjQ2OCAxNy43MzMxQzE2Ljc5NjEgMTcuMzMzIDE2Ljg3MDggMTYuODIwOCAxNi44NzA4IDE2LjE5NjZWMTIuOTk1N0MxNi44NzA4IDEyLjU3OTYgMTYuOTI0MiAxMi4yMDA4IDE3LjAzMDkgMTEuODU5NEMxNy4xNDI5IDExLjUxOCAxNy4zNDU2IDExLjIyNDUgMTcuNjM5IDEwLjk3OTFDMTcuOTMyNSAxMC43MzM3IDE4LjM0ODYgMTAuNTQ0MyAxOC44ODc0IDEwLjQxMUMxOS40MzE2IDEwLjI3NzYgMjAuMTM1OCAxMC4yMTA5IDIxIDEwLjIxMDlaTTE0LjQzODEgMEMxNS4yMjI0IDAgMTUuODgxMiAwLjA4NTM1ODEgMTYuNDE0NyAwLjI1NjA3NEMxNi45NDgyIDAuNDI2NzkgMTcuMzc1IDAuNjg4MTk4IDE3LjY5NTEgMS4wNDAzQzE4LjAxNTEgMS4zOTI0IDE4LjI0NDUgMS44Mzc4NiAxOC4zODMzIDIuMzc2NjhDMTguNTI3MyAyLjkxNTUgMTguNTk5MyAzLjU1MzAyIDE4LjU5OTMgNC4yODkyM1Y2Ljg0OTk2QzE4LjU5OTMgNy43MjQ4OCAxOC43NzU0IDguMzQ5MDUgMTkuMTI3NSA4LjcyMjVDMTkuNDg0OSA5LjA5NTkzIDIwLjEwOTEgOS4yODI2NSAyMSA5LjI4MjY1VjEwLjI3NDlDMjAuMTM1OCAxMC4yNzQ5IDE5LjQzMTYgMTAuMjA4MyAxOC44ODc0IDEwLjA3NDlDMTguMzQ4NiA5Ljk0MTUxIDE3LjkzMjUgOS43NTIxMiAxNy42MzkgOS41MDY3MkMxNy4zNDU2IDkuMjYxMzEgMTcuMTQyOSA4Ljk2NzkgMTcuMDMwOSA4LjYyNjQ3QzE2LjkyNDIgOC4yODUwNCAxNi44NzA4IDcuOTA2MjYgMTYuODcwOCA3LjQ5MDE0VjQuMjg5MjNDMTYuODcwOCAzLjY2NTA1IDE2Ljc5NjEgMy4xNTI5IDE2LjY0NjggMi43NTI3OUMxNi41MDI3IDIuMzQ3MzQgMTYuMjUyIDIuMDQ4NTkgMTUuODk0NSAxLjg1NjUzQzE1LjU0MjQgMS42NjQ0OCAxNS4wNTcgMS41Njg0NSAxNC40MzgxIDEuNTY4NDVWMFpNMjEgOS4yODI2NVYxMS4yMDMySDE5LjExMTVWOS4yODI2NUgyMVoiIGZpbGw9ImJsYWNrIi8+PC9zdmc+";
|
@@ -0,0 +1,5 @@
|
|
1
|
+
/**
|
2
|
+
* Do not edit directly
|
3
|
+
*/
|
4
|
+
|
5
|
+
export default "PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNNS4zNjg1NyA1SDQuMTUxNDNMMiAxMUgzLjE5MTQzTDMuNTk0MjkgOS43NEg1LjkyNTcxTDYuMzI4NTcgMTFINy41Mkw1LjM2ODU3IDVaTTQuNzYgNi4wOEw1LjYxNzE0IDguNzg4NTdIMy44OTQyOUw0Ljc2IDYuMDhaIiBmaWxsPSJibGFjayIvPjxwYXRoIGQ9Ik05LjkyMzY4IDExSDEyLjY1OEMxMy44NTggMTEgMTQuNjg5NCAxMC4zMTQzIDE0LjY4OTQgOS4zMTE0M0MxNC42ODk0IDguNDk3MTQgMTQuMTkyMyA4LjAyNTcxIDEzLjU3NTEgNy44OTcxNEMxMy45OTUxIDcuNjU3MTQgMTQuMzI5NCA3LjIwMjg2IDE0LjMyOTQgNi41MTcxNEMxNC4zMjk0IDUuNjE3MTQgMTMuNjY5NCA1IDEyLjYxNTEgNUg5LjkyMzY4VjExWk0xMS4wODk0IDEwLjA1NzFWOC40MkgxMi41ODk0QzEzLjE1NTEgOC40MiAxMy40ODk0IDguNzM3MTQgMTMuNDg5NCA5LjIzNDI5QzEzLjQ4OTQgOS43NCAxMy4xNzIzIDEwLjA1NzEgMTIuNTk4IDEwLjA1NzFIMTEuMDg5NFpNMTEuMDg5NCA3LjQ4NTcxVjUuOTQyODZIMTIuMzQwOEMxMi44MzggNS45NDI4NiAxMy4xMjk0IDYuMjM0MjkgMTMuMTI5NCA2LjY4ODU3QzEzLjEyOTQgNy4xNTE0MyAxMi44NTUxIDcuNDg1NzEgMTIuMzQ5NCA3LjQ4NTcxSDExLjA4OTRaIiBmaWxsPSJibGFjayIvPjwvc3ZnPg==";
|
@@ -35,14 +35,20 @@ export interface switchconfig {
|
|
35
35
|
}
|
36
36
|
|
37
37
|
export interface switchInputType {
|
38
|
-
inputType: 'dropdown' | 'text' | 'checkbox' | 'text-area';
|
38
|
+
inputType: 'dropdown' | 'text' | 'checkbox' | 'text-area' | 'radio';
|
39
39
|
value?: String | boolean;
|
40
40
|
label?: String;
|
41
41
|
placeholder?: string;
|
42
|
+
disabled?: boolean;
|
42
43
|
options?: Array<any>;
|
43
44
|
multiple?: boolean;
|
44
45
|
}
|
45
46
|
|
47
|
+
export enum INPUT_TYPE {
|
48
|
+
DEFAULT = 'defaultInput',
|
49
|
+
SWITCH = 'switchInput',
|
50
|
+
}
|
51
|
+
|
46
52
|
@customElement('nile-switcher')
|
47
53
|
export class NileSwitcher extends NileElement {
|
48
54
|
/**
|
@@ -50,7 +56,18 @@ export class NileSwitcher extends NileElement {
|
|
50
56
|
* @remarks If you are extending this class you can extend the base styles with super. Eg `return [super(), myCustomStyles]`
|
51
57
|
*/
|
52
58
|
static styles: CSSResultGroup = styles;
|
53
|
-
@property() nileSwitchConfig: switchconfig
|
59
|
+
@property({ type: Object }) nileSwitchConfig: switchconfig = {
|
60
|
+
toggleSwitch: false,
|
61
|
+
defaultInput: {
|
62
|
+
inputType: 'radio',
|
63
|
+
value: 'True',
|
64
|
+
options: ['True', 'False'],
|
65
|
+
},
|
66
|
+
switchInput: {
|
67
|
+
inputType: 'text-area',
|
68
|
+
value: 'test',
|
69
|
+
},
|
70
|
+
};
|
54
71
|
|
55
72
|
connectedCallback() {
|
56
73
|
super.connectedCallback();
|
@@ -62,54 +79,93 @@ export class NileSwitcher extends NileElement {
|
|
62
79
|
this.emit('nile-destroy');
|
63
80
|
}
|
64
81
|
|
65
|
-
renderNileText(
|
66
|
-
const { value, label, placeholder } =
|
82
|
+
renderNileText(Input: switchInputType, inputType: string) {
|
83
|
+
const { value, label, placeholder, disabled } = Input;
|
67
84
|
return html`<nile-input
|
68
85
|
.value=${value}
|
69
86
|
.label=${label}
|
87
|
+
.disabled=${disabled}
|
70
88
|
.placeholder=${placeholder}
|
71
|
-
@nile-input=${
|
89
|
+
@nile-input=${(e: CustomEvent) => {
|
90
|
+
this.handleChange(e, inputType);
|
91
|
+
}}
|
72
92
|
></nile-input>`;
|
73
93
|
}
|
74
94
|
|
75
|
-
|
76
|
-
const {
|
95
|
+
renderDropdown(Input: switchInputType, inputType: string) {
|
96
|
+
const { options, multiple, placeholder } = Input;
|
97
|
+
return html`<nile-select
|
98
|
+
.placeholder=${placeholder}
|
99
|
+
.multiple="${multiple}"
|
100
|
+
@nile-change=${(e: CustomEvent) => {
|
101
|
+
this.handleChange(e, inputType);
|
102
|
+
}}
|
103
|
+
${
|
104
|
+
options &&
|
105
|
+
options.map((option: any) => {
|
106
|
+
return html`<nile-option .value="${option}">${option} </nile-option>`;
|
107
|
+
})
|
108
|
+
}
|
109
|
+
</nile-select>`;
|
110
|
+
}
|
111
|
+
|
112
|
+
renderNileTextArea(Input: switchInputType, inputType: string) {
|
113
|
+
const { value, disabled } = Input;
|
77
114
|
return html`<nile-textarea
|
78
115
|
.value=${value}
|
79
|
-
|
116
|
+
.disabled=${disabled}
|
117
|
+
@nile-input=${(e: CustomEvent) => {
|
118
|
+
this.handleChange(e, inputType);
|
119
|
+
}}
|
80
120
|
></nile-textarea>`;
|
81
121
|
}
|
82
122
|
|
83
|
-
renderNileCheckBox(
|
84
|
-
const { value, label } =
|
123
|
+
renderNileCheckBox(Input: switchInputType, inputType: string) {
|
124
|
+
const { value, label, disabled } = Input;
|
85
125
|
|
86
126
|
return html`<nile-checkbox
|
87
127
|
.checked=${value}
|
88
128
|
.label=${label}
|
89
|
-
|
129
|
+
.disabled=${disabled}
|
130
|
+
@valueChange=${(e: CustomEvent) => {
|
131
|
+
this.handleChangeCheckbox(e, inputType);
|
132
|
+
}}
|
90
133
|
></nile-checkbox>`;
|
91
134
|
}
|
92
135
|
|
93
|
-
|
94
|
-
|
95
|
-
}
|
136
|
+
renderNileRadio(Input: switchInputType, inputType: string) {
|
137
|
+
const { options, value } = Input;
|
96
138
|
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
const { options, multiple, placeholder } = defaultInput;
|
103
|
-
return html`<nile-select
|
104
|
-
.placeholder=${placeholder}
|
105
|
-
.multiple="${multiple}"
|
106
|
-
@nile-change="${this.handleChange}"
|
139
|
+
return html`<nile-radio-group
|
140
|
+
.value=${value}
|
141
|
+
@change=${(e: CustomEvent) => {
|
142
|
+
this.handleChange(e, inputType);
|
143
|
+
}}
|
107
144
|
>
|
108
145
|
${options &&
|
109
146
|
options.map((option: any) => {
|
110
|
-
return html`<nile-
|
147
|
+
return html`<nile-radio .value="${option}">${option} </nile-radio>`;
|
111
148
|
})}
|
112
|
-
</nile-
|
149
|
+
</nile-radio-group>`;
|
150
|
+
}
|
151
|
+
|
152
|
+
handleChange(event: CustomEvent, inputType: string) {
|
153
|
+
if (inputType === INPUT_TYPE.DEFAULT) {
|
154
|
+
this.nileSwitchConfig.defaultInput.value = event.detail.value;
|
155
|
+
} else {
|
156
|
+
this.nileSwitchConfig.switchInput.value = event.detail.value;
|
157
|
+
}
|
158
|
+
console.log(this.nileSwitchConfig);
|
159
|
+
this.emit('nile-change', { config: this.nileSwitchConfig });
|
160
|
+
}
|
161
|
+
|
162
|
+
handleChangeCheckbox(event: CustomEvent, inputType: string) {
|
163
|
+
if (inputType === INPUT_TYPE.DEFAULT) {
|
164
|
+
this.nileSwitchConfig.defaultInput.value = event.detail.checked;
|
165
|
+
} else {
|
166
|
+
this.nileSwitchConfig.switchInput.value = event.detail.checked;
|
167
|
+
}
|
168
|
+
this.emit('nile-change', { config: this.nileSwitchConfig });
|
113
169
|
}
|
114
170
|
|
115
171
|
renderIcon() {
|
@@ -148,20 +204,47 @@ export class NileSwitcher extends NileElement {
|
|
148
204
|
? choose(
|
149
205
|
defaultInputType,
|
150
206
|
[
|
151
|
-
[
|
152
|
-
|
207
|
+
[
|
208
|
+
'text',
|
209
|
+
() => this.renderNileText(defaultInput, INPUT_TYPE.DEFAULT),
|
210
|
+
],
|
211
|
+
[
|
212
|
+
'checkbox',
|
213
|
+
() => this.renderNileCheckBox(defaultInput, INPUT_TYPE.DEFAULT),
|
214
|
+
],
|
215
|
+
[
|
216
|
+
'text-area',
|
217
|
+
() => this.renderNileTextArea(defaultInput, INPUT_TYPE.DEFAULT),
|
218
|
+
],
|
219
|
+
[
|
220
|
+
'radio',
|
221
|
+
() => this.renderNileRadio(defaultInput, INPUT_TYPE.DEFAULT),
|
222
|
+
],
|
153
223
|
[
|
154
224
|
'dropdown',
|
155
|
-
() =>
|
225
|
+
() =>
|
226
|
+
this.renderDropdown(
|
227
|
+
this.nileSwitchConfig.defaultInput,
|
228
|
+
INPUT_TYPE.DEFAULT
|
229
|
+
),
|
156
230
|
],
|
157
231
|
],
|
158
|
-
() => this.renderNileText(defaultInput)
|
232
|
+
() => this.renderNileText(defaultInput, INPUT_TYPE.DEFAULT)
|
159
233
|
)
|
160
234
|
: choose(
|
161
235
|
switchInputType,
|
162
|
-
[
|
236
|
+
[
|
237
|
+
[
|
238
|
+
'text-area',
|
239
|
+
() => this.renderNileTextArea(switchInput, INPUT_TYPE.SWITCH),
|
240
|
+
],
|
241
|
+
[
|
242
|
+
'text',
|
243
|
+
() => this.renderNileText(switchInput, INPUT_TYPE.SWITCH),
|
244
|
+
],
|
245
|
+
],
|
163
246
|
|
164
|
-
() => this.renderNileTextArea(switchInput)
|
247
|
+
() => this.renderNileTextArea(switchInput, INPUT_TYPE.SWITCH)
|
165
248
|
)}
|
166
249
|
${this.renderIcon()}
|
167
250
|
`;
|
@@ -176,7 +176,9 @@ export class NileTextarea extends NileElement {
|
|
176
176
|
|
177
177
|
disconnectedCallback() {
|
178
178
|
super.disconnectedCallback();
|
179
|
-
|
179
|
+
if(this.input) {
|
180
|
+
this.resizeObserver.unobserve(this.input);
|
181
|
+
}
|
180
182
|
this.emit('nile-destroy');
|
181
183
|
}
|
182
184
|
|