@design.estate/dees-catalog 3.49.0 → 3.49.1
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/dist_bundle/bundle.js +8784 -3856
- package/dist_ts_web/00_commitinfo_data.js +1 -1
- package/dist_ts_web/elements/00group-appui/dees-appui/dees-appui.demo.js +1 -1
- package/dist_ts_web/elements/00group-appui/dees-appui/dees-appui.js +2 -2
- package/dist_ts_web/elements/00group-appui/dees-appui/view.registry.js +1 -1
- package/dist_ts_web/elements/00group-appui/dees-appui-appbar/component.js +1 -1
- package/dist_ts_web/elements/00group-appui/dees-appui-appbar/demo.js +1 -1
- package/dist_ts_web/elements/00group-appui/dees-appui-maincontent/dees-appui-maincontent.js +1 -1
- package/dist_ts_web/elements/00group-appui/dees-appui-mainmenu/dees-appui-mainmenu.js +1 -1
- package/dist_ts_web/elements/00group-appui/dees-appui-tabs/dees-appui-tabs.js +2 -2
- package/dist_ts_web/elements/00group-appui/dees-mobilenavigation/dees-mobilenavigation.demo.d.ts +1 -1
- package/dist_ts_web/elements/00group-appui/dees-mobilenavigation/dees-mobilenavigation.demo.js +2 -2
- package/dist_ts_web/elements/00group-appui/dees-mobilenavigation/dees-mobilenavigation.js +1 -1
- package/dist_ts_web/elements/00group-button/dees-button/dees-button.demo.js +1 -1
- package/dist_ts_web/elements/00group-button/dees-button/dees-button.js +1 -1
- package/dist_ts_web/elements/00group-chart/dees-chart-area/component.d.ts +1 -1
- package/dist_ts_web/elements/00group-chart/dees-chart-area/component.js +1 -1
- package/dist_ts_web/elements/00group-chart/dees-chart-area/demo.js +1 -1
- package/dist_ts_web/elements/00group-chart/dees-chart-log/dees-chart-log.demo.js +1 -1
- package/dist_ts_web/elements/00group-dataview/dees-dataview-codebox/dees-dataview-codebox.d.ts +1 -1
- package/dist_ts_web/elements/00group-dataview/dees-dataview-codebox/dees-dataview-codebox.js +1 -1
- package/dist_ts_web/elements/00group-dataview/dees-dataview-statusobject/dees-dataview-statusobject.js +1 -1
- package/dist_ts_web/elements/00group-dataview/dees-statsgrid/dees-statsgrid.js +1 -1
- package/dist_ts_web/elements/00group-dataview/dees-table/dees-table.js +1 -1
- package/dist_ts_web/elements/00group-feedback/dees-progressbar/dees-progressbar.js +1 -1
- package/dist_ts_web/elements/00group-form/dees-form/dees-form.demo.js +7 -7
- package/dist_ts_web/elements/00group-form/dees-form/dees-form.js +9 -6
- package/dist_ts_web/elements/00group-form/dees-form-submit/dees-form-submit.js +1 -1
- package/dist_ts_web/elements/00group-input/dees-input-base/dees-input-base.js +1 -1
- package/dist_ts_web/elements/00group-input/dees-input-checkbox/dees-input-checkbox.js +1 -1
- package/dist_ts_web/elements/00group-input/dees-input-code/dees-input-code.js +1 -1
- package/dist_ts_web/elements/00group-input/dees-input-datepicker/demo.js +15 -15
- package/dist_ts_web/elements/00group-input/dees-input-dropdown/dees-input-dropdown.d.ts +4 -4
- package/dist_ts_web/elements/00group-input/dees-input-dropdown/dees-input-dropdown.demo.js +17 -17
- package/dist_ts_web/elements/00group-input/dees-input-dropdown/dees-input-dropdown.js +1 -1
- package/dist_ts_web/elements/00group-input/dees-input-fileupload/component.d.ts +1 -1
- package/dist_ts_web/elements/00group-input/dees-input-fileupload/component.js +1 -1
- package/dist_ts_web/elements/00group-input/dees-input-iban/dees-input-iban.js +4 -2
- package/dist_ts_web/elements/00group-input/dees-input-multitoggle/dees-input-multitoggle.js +1 -1
- package/dist_ts_web/elements/00group-input/dees-input-phone/dees-input-phone.js +1 -1
- package/dist_ts_web/elements/00group-input/dees-input-radiogroup/dees-input-radiogroup.d.ts +1 -1
- package/dist_ts_web/elements/00group-input/dees-input-radiogroup/dees-input-radiogroup.js +1 -1
- package/dist_ts_web/elements/00group-input/dees-input-richtext/component.js +1 -1
- package/dist_ts_web/elements/00group-input/dees-input-text/dees-input-text.demo.js +7 -6
- package/dist_ts_web/elements/00group-input/dees-input-text/dees-input-text.js +1 -1
- package/dist_ts_web/elements/00group-input/dees-input-toggle/dees-input-toggle.demo.js +7 -5
- package/dist_ts_web/elements/00group-input/dees-input-typelist/dees-input-typelist.js +1 -1
- package/dist_ts_web/elements/00group-input/dees-input-wysiwyg/blocks/text/heading.block.js +6 -5
- package/dist_ts_web/elements/00group-input/dees-input-wysiwyg/blocks/text/list.block.js +6 -5
- package/dist_ts_web/elements/00group-input/dees-input-wysiwyg/blocks/text/paragraph.block.js +6 -5
- package/dist_ts_web/elements/00group-input/dees-input-wysiwyg/blocks/text/quote.block.js +6 -5
- package/dist_ts_web/elements/00group-input/dees-input-wysiwyg/dees-formatting-menu.js +16 -13
- package/dist_ts_web/elements/00group-input/dees-input-wysiwyg/dees-input-wysiwyg.js +3 -3
- package/dist_ts_web/elements/00group-input/dees-input-wysiwyg/dees-slash-menu.js +19 -15
- package/dist_ts_web/elements/00group-input/dees-input-wysiwyg/dees-wysiwyg-block.js +1 -1
- package/dist_ts_web/elements/00group-input/dees-input-wysiwyg/wysiwyg.dragdrophandler.d.ts +3 -3
- package/dist_ts_web/elements/00group-input/dees-input-wysiwyg/wysiwyg.dragdrophandler.js +1 -1
- package/dist_ts_web/elements/00group-input/dees-input-wysiwyg/wysiwyg.keyboardhandler.js +1 -1
- package/dist_ts_web/elements/00group-input/dees-input-wysiwyg/wysiwyg.modalmanager.js +1 -1
- package/dist_ts_web/elements/00group-input/profilepicture/dees-input-profilepicture.demo.js +7 -7
- package/dist_ts_web/elements/00group-input/profilepicture/dees-input-profilepicture.js +3 -3
- package/dist_ts_web/elements/00group-layout/dees-chips/dees-chips.d.ts +1 -1
- package/dist_ts_web/elements/00group-layout/dees-chips/dees-chips.js +1 -1
- package/dist_ts_web/elements/00group-layout/dees-dashboardgrid/dees-dashboardgrid.demo.js +11 -8
- package/dist_ts_web/elements/00group-layout/dees-label/dees-label.js +1 -1
- package/dist_ts_web/elements/00group-layout/dees-stepper/dees-stepper.js +1 -1
- package/dist_ts_web/elements/00group-media/dees-pdf-shared/utils.js +3 -3
- package/dist_ts_web/elements/00group-media/dees-tile-pdf/demo.js +1 -1
- package/dist_ts_web/elements/00group-overlay/dees-contextmenu/dees-contextmenu.js +1 -1
- package/dist_ts_web/elements/00group-overlay/dees-modal/dees-modal.demo.js +2 -2
- package/dist_ts_web/elements/00group-overlay/dees-modal/dees-modal.js +1 -1
- package/dist_ts_web/elements/00group-overlay/dees-speechbubble/dees-speechbubble.js +1 -1
- package/dist_ts_web/elements/00group-runtime/environments/WebContainerEnvironment.js +1 -1
- package/dist_ts_web/elements/00group-simple/dees-shopping-productcard/dees-shopping-productcard.demo.js +1 -1
- package/dist_ts_web/elements/00group-simple/dees-simple-appdash/dees-simple-appdash.d.ts +3 -3
- package/dist_ts_web/elements/00group-simple/dees-simple-appdash/dees-simple-appdash.js +2 -2
- package/dist_ts_web/elements/00group-simple/dees-simple-login/dees-simple-login.js +3 -3
- package/dist_ts_web/elements/00group-utility/dees-icon/dees-icon.demo.js +1 -1
- package/dist_ts_web/elements/00group-utility/dees-icon/dees-icon.js +1 -1
- package/dist_ts_web/elements/00group-utility/dees-searchbar/dees-searchbar.d.ts +1 -1
- package/dist_ts_web/elements/00group-utility/dees-updater/dees-updater.js +1 -1
- package/dist_ts_web/elements/00group-workspace/dees-workspace-filetree/dees-workspace-filetree.js +1 -1
- package/dist_ts_web/elements/00group-workspace/dees-workspace-markdown/dees-workspace-markdown.d.ts +1 -1
- package/dist_ts_web/elements/00group-workspace/dees-workspace-markdown/dees-workspace-markdown.js +1 -1
- package/dist_ts_web/elements/00group-workspace/dees-workspace-markdownoutlet/dees-workspace-markdownoutlet.js +1 -1
- package/dist_ts_web/elements/00group-workspace/dees-workspace-monaco/dees-workspace-monaco.js +1 -1
- package/dist_ts_web/pages/zindex-showcase.js +1 -1
- package/dist_ts_web/services/DeesServiceLibLoader.js +1 -1
- package/dist_ts_web/services/versions.d.ts +1 -1
- package/dist_ts_web/services/versions.js +1 -1
- package/license +3 -6
- package/package.json +11 -11
- package/readme.md +6 -4
- package/ts_web/00_commitinfo_data.ts +1 -1
- package/ts_web/elements/00group-appui/dees-appui/dees-appui.demo.ts +2 -2
- package/ts_web/elements/00group-appui/dees-appui/dees-appui.ts +1 -1
- package/ts_web/elements/00group-appui/dees-appui/view.registry.ts +1 -1
- package/ts_web/elements/00group-appui/dees-appui-appbar/component.ts +1 -1
- package/ts_web/elements/00group-appui/dees-appui-appbar/demo.ts +5 -5
- package/ts_web/elements/00group-appui/dees-appui-maincontent/dees-appui-maincontent.ts +1 -1
- package/ts_web/elements/00group-appui/dees-appui-mainmenu/dees-appui-mainmenu.ts +1 -1
- package/ts_web/elements/00group-appui/dees-appui-tabs/dees-appui-tabs.ts +8 -8
- package/ts_web/elements/00group-appui/dees-mobilenavigation/dees-mobilenavigation.demo.ts +1 -1
- package/ts_web/elements/00group-appui/dees-mobilenavigation/dees-mobilenavigation.ts +6 -6
- package/ts_web/elements/00group-button/dees-button/dees-button.demo.ts +5 -5
- package/ts_web/elements/00group-button/dees-button/dees-button.ts +3 -3
- package/ts_web/elements/00group-chart/dees-chart-area/component.ts +13 -13
- package/ts_web/elements/00group-chart/dees-chart-area/demo.ts +5 -5
- package/ts_web/elements/00group-chart/dees-chart-log/dees-chart-log.demo.ts +2 -2
- package/ts_web/elements/00group-dataview/dees-dataview-codebox/dees-dataview-codebox.ts +4 -4
- package/ts_web/elements/00group-dataview/dees-dataview-statusobject/dees-dataview-statusobject.ts +2 -2
- package/ts_web/elements/00group-dataview/dees-statsgrid/dees-statsgrid.ts +1 -1
- package/ts_web/elements/00group-dataview/dees-table/dees-table.ts +12 -12
- package/ts_web/elements/00group-feedback/dees-progressbar/dees-progressbar.ts +1 -1
- package/ts_web/elements/00group-form/dees-form/dees-form.demo.ts +8 -8
- package/ts_web/elements/00group-form/dees-form/dees-form.ts +7 -5
- package/ts_web/elements/00group-form/dees-form-submit/dees-form-submit.ts +2 -2
- package/ts_web/elements/00group-input/dees-input-base/dees-input-base.ts +3 -3
- package/ts_web/elements/00group-input/dees-input-checkbox/dees-input-checkbox.ts +1 -1
- package/ts_web/elements/00group-input/dees-input-code/dees-input-code.ts +3 -3
- package/ts_web/elements/00group-input/dees-input-datepicker/demo.ts +19 -19
- package/ts_web/elements/00group-input/dees-input-dropdown/dees-input-dropdown.demo.ts +18 -18
- package/ts_web/elements/00group-input/dees-input-dropdown/dees-input-dropdown.ts +5 -5
- package/ts_web/elements/00group-input/dees-input-fileupload/component.ts +3 -3
- package/ts_web/elements/00group-input/dees-input-iban/dees-input-iban.ts +5 -3
- package/ts_web/elements/00group-input/dees-input-multitoggle/dees-input-multitoggle.ts +4 -4
- package/ts_web/elements/00group-input/dees-input-phone/dees-input-phone.ts +1 -1
- package/ts_web/elements/00group-input/dees-input-radiogroup/dees-input-radiogroup.ts +5 -5
- package/ts_web/elements/00group-input/dees-input-richtext/component.ts +5 -5
- package/ts_web/elements/00group-input/dees-input-text/dees-input-text.demo.ts +6 -5
- package/ts_web/elements/00group-input/dees-input-text/dees-input-text.ts +6 -6
- package/ts_web/elements/00group-input/dees-input-toggle/dees-input-toggle.demo.ts +12 -10
- package/ts_web/elements/00group-input/dees-input-typelist/dees-input-typelist.ts +1 -1
- package/ts_web/elements/00group-input/dees-input-wysiwyg/blocks/text/heading.block.ts +5 -4
- package/ts_web/elements/00group-input/dees-input-wysiwyg/blocks/text/list.block.ts +5 -4
- package/ts_web/elements/00group-input/dees-input-wysiwyg/blocks/text/paragraph.block.ts +5 -4
- package/ts_web/elements/00group-input/dees-input-wysiwyg/blocks/text/quote.block.ts +5 -4
- package/ts_web/elements/00group-input/dees-input-wysiwyg/dees-formatting-menu.ts +19 -16
- package/ts_web/elements/00group-input/dees-input-wysiwyg/dees-input-wysiwyg.ts +6 -6
- package/ts_web/elements/00group-input/dees-input-wysiwyg/dees-slash-menu.ts +24 -20
- package/ts_web/elements/00group-input/dees-input-wysiwyg/dees-wysiwyg-block.ts +2 -2
- package/ts_web/elements/00group-input/dees-input-wysiwyg/wysiwyg.dragdrophandler.ts +4 -4
- package/ts_web/elements/00group-input/dees-input-wysiwyg/wysiwyg.keyboardhandler.ts +8 -8
- package/ts_web/elements/00group-input/dees-input-wysiwyg/wysiwyg.modalmanager.ts +2 -2
- package/ts_web/elements/00group-input/profilepicture/dees-input-profilepicture.demo.ts +8 -8
- package/ts_web/elements/00group-input/profilepicture/dees-input-profilepicture.ts +2 -2
- package/ts_web/elements/00group-layout/dees-chips/dees-chips.ts +1 -1
- package/ts_web/elements/00group-layout/dees-dashboardgrid/dees-dashboardgrid.demo.ts +16 -12
- package/ts_web/elements/00group-layout/dees-label/dees-label.ts +1 -1
- package/ts_web/elements/00group-layout/dees-stepper/dees-stepper.ts +7 -7
- package/ts_web/elements/00group-media/dees-pdf-shared/utils.ts +2 -2
- package/ts_web/elements/00group-media/dees-tile-pdf/demo.ts +1 -1
- package/ts_web/elements/00group-overlay/dees-contextmenu/dees-contextmenu.ts +3 -3
- package/ts_web/elements/00group-overlay/dees-modal/dees-modal.demo.ts +24 -24
- package/ts_web/elements/00group-overlay/dees-modal/dees-modal.ts +10 -10
- package/ts_web/elements/00group-overlay/dees-speechbubble/dees-speechbubble.ts +6 -6
- package/ts_web/elements/00group-runtime/environments/WebContainerEnvironment.ts +1 -1
- package/ts_web/elements/00group-simple/dees-shopping-productcard/dees-shopping-productcard.demo.ts +10 -10
- package/ts_web/elements/00group-simple/dees-simple-appdash/dees-simple-appdash.ts +6 -6
- package/ts_web/elements/00group-simple/dees-simple-login/dees-simple-login.ts +6 -6
- package/ts_web/elements/00group-utility/dees-icon/dees-icon.demo.ts +3 -3
- package/ts_web/elements/00group-utility/dees-icon/dees-icon.ts +6 -6
- package/ts_web/elements/00group-utility/dees-updater/dees-updater.ts +3 -3
- package/ts_web/elements/00group-workspace/dees-workspace-filetree/dees-workspace-filetree.ts +4 -4
- package/ts_web/elements/00group-workspace/dees-workspace-markdown/dees-workspace-markdown.ts +9 -9
- package/ts_web/elements/00group-workspace/dees-workspace-markdownoutlet/dees-workspace-markdownoutlet.ts +3 -3
- package/ts_web/elements/00group-workspace/dees-workspace-monaco/dees-workspace-monaco.ts +2 -2
- package/ts_web/pages/zindex-showcase.ts +11 -11
- package/ts_web/services/DeesServiceLibLoader.ts +2 -2
- package/ts_web/services/versions.ts +1 -1
- /package/{npmextra.json → .smartconfig.json} +0 -0
|
@@ -47,9 +47,9 @@ export const demoFunc = () => html`
|
|
|
47
47
|
const datePicker = elementArg.querySelector('dees-input-datepicker');
|
|
48
48
|
|
|
49
49
|
if (datePicker) {
|
|
50
|
-
datePicker.addEventListener('change', (event: CustomEvent) => {
|
|
50
|
+
datePicker.addEventListener('change', ((event: CustomEvent) => {
|
|
51
51
|
console.log('Basic date selected:', (event.target as DeesInputDatepicker).value);
|
|
52
|
-
});
|
|
52
|
+
}) as EventListener);
|
|
53
53
|
}
|
|
54
54
|
}}>
|
|
55
55
|
<dees-panel .title=${'Basic Date Picker'} .subtitle=${'Simple date selection without time'}>
|
|
@@ -66,17 +66,17 @@ export const demoFunc = () => html`
|
|
|
66
66
|
const appointmentPicker = elementArg.querySelector('dees-input-datepicker[label="Appointment"]');
|
|
67
67
|
|
|
68
68
|
if (dateTimePicker) {
|
|
69
|
-
dateTimePicker.addEventListener('change', (event: CustomEvent) => {
|
|
69
|
+
dateTimePicker.addEventListener('change', ((event: CustomEvent) => {
|
|
70
70
|
const value = (event.target as DeesInputDatepicker).value;
|
|
71
71
|
console.log('24h format datetime:', value);
|
|
72
|
-
});
|
|
72
|
+
}) as EventListener);
|
|
73
73
|
}
|
|
74
74
|
|
|
75
75
|
if (appointmentPicker) {
|
|
76
|
-
appointmentPicker.addEventListener('change', (event: CustomEvent) => {
|
|
76
|
+
appointmentPicker.addEventListener('change', ((event: CustomEvent) => {
|
|
77
77
|
const value = (event.target as DeesInputDatepicker).value;
|
|
78
78
|
console.log('12h format datetime:', value);
|
|
79
|
-
});
|
|
79
|
+
}) as EventListener);
|
|
80
80
|
}
|
|
81
81
|
}}>
|
|
82
82
|
<dees-panel .title=${'Date and Time Selection'} .subtitle=${'Date pickers with time selection in different formats'}>
|
|
@@ -102,14 +102,14 @@ export const demoFunc = () => html`
|
|
|
102
102
|
const timezonePickers = elementArg.querySelectorAll('dees-input-datepicker');
|
|
103
103
|
|
|
104
104
|
timezonePickers.forEach((picker) => {
|
|
105
|
-
picker.addEventListener('change', (event: CustomEvent) => {
|
|
105
|
+
picker.addEventListener('change', ((event: CustomEvent) => {
|
|
106
106
|
const target = event.target as DeesInputDatepicker;
|
|
107
107
|
console.log(`${target.label} value:`, target.value);
|
|
108
108
|
const input = target.shadowRoot?.querySelector('.date-input') as HTMLInputElement;
|
|
109
109
|
if (input) {
|
|
110
110
|
console.log(`${target.label} formatted:`, input.value);
|
|
111
111
|
}
|
|
112
|
-
});
|
|
112
|
+
}) as EventListener);
|
|
113
113
|
});
|
|
114
114
|
}}>
|
|
115
115
|
<dees-panel .title=${'Timezone Support'} .subtitle=${'Date and time selection with timezone awareness'}>
|
|
@@ -140,7 +140,7 @@ export const demoFunc = () => html`
|
|
|
140
140
|
|
|
141
141
|
if (futureDatePicker) {
|
|
142
142
|
// Show the min/max constraints in action
|
|
143
|
-
futureDatePicker.addEventListener('change', (event: CustomEvent) => {
|
|
143
|
+
futureDatePicker.addEventListener('change', ((event: CustomEvent) => {
|
|
144
144
|
const value = (event.target as DeesInputDatepicker).value;
|
|
145
145
|
if (value) {
|
|
146
146
|
const selectedDate = new Date(value);
|
|
@@ -148,7 +148,7 @@ export const demoFunc = () => html`
|
|
|
148
148
|
const daysDiff = Math.floor((selectedDate.getTime() - today.getTime()) / (1000 * 60 * 60 * 24));
|
|
149
149
|
console.log(`Selected date is ${daysDiff} days from today`);
|
|
150
150
|
}
|
|
151
|
-
});
|
|
151
|
+
}) as EventListener);
|
|
152
152
|
}
|
|
153
153
|
}}>
|
|
154
154
|
<dees-panel .title=${'Date Range Constraints'} .subtitle=${'Limit selectable dates with min and max values'}>
|
|
@@ -171,14 +171,14 @@ export const demoFunc = () => html`
|
|
|
171
171
|
|
|
172
172
|
const datePickers = elementArg.querySelectorAll('dees-input-datepicker');
|
|
173
173
|
datePickers.forEach((picker) => {
|
|
174
|
-
picker.addEventListener('change', (event: CustomEvent) => {
|
|
174
|
+
picker.addEventListener('change', ((event: CustomEvent) => {
|
|
175
175
|
const target = event.target as DeesInputDatepicker;
|
|
176
176
|
// Log the formatted value that's displayed in the input
|
|
177
177
|
const input = target.shadowRoot?.querySelector('.date-input') as HTMLInputElement;
|
|
178
178
|
if (input) {
|
|
179
179
|
console.log(`${target.label} format:`, input.value);
|
|
180
180
|
}
|
|
181
|
-
});
|
|
181
|
+
}) as EventListener);
|
|
182
182
|
});
|
|
183
183
|
}}>
|
|
184
184
|
<dees-panel .title=${'Date Formats'} .subtitle=${'Different date display formats for various regions'}>
|
|
@@ -268,7 +268,7 @@ export const demoFunc = () => html`
|
|
|
268
268
|
<dees-demowrapper .runAfterRender=${async (elementArg: HTMLElement) => {
|
|
269
269
|
// Generate weekend dates for the current month
|
|
270
270
|
const generateWeekends = () => {
|
|
271
|
-
const weekends = [];
|
|
271
|
+
const weekends: string[] = [];
|
|
272
272
|
const now = new Date();
|
|
273
273
|
const year = now.getFullYear();
|
|
274
274
|
const month = now.getMonth();
|
|
@@ -286,7 +286,7 @@ export const demoFunc = () => html`
|
|
|
286
286
|
|
|
287
287
|
const picker = elementArg.querySelector('dees-input-datepicker');
|
|
288
288
|
if (picker) {
|
|
289
|
-
picker.disabledDates = generateWeekends();
|
|
289
|
+
(picker as DeesInputDatepicker).disabledDates = generateWeekends();
|
|
290
290
|
console.log('Disabled weekend dates for current month');
|
|
291
291
|
}
|
|
292
292
|
}}>
|
|
@@ -344,7 +344,7 @@ export const demoFunc = () => html`
|
|
|
344
344
|
|
|
345
345
|
const picker = elementArg.querySelector('dees-input-datepicker');
|
|
346
346
|
if (picker) {
|
|
347
|
-
picker.events = sampleEvents;
|
|
347
|
+
(picker as DeesInputDatepicker).events = sampleEvents;
|
|
348
348
|
console.log('Calendar events loaded:', sampleEvents);
|
|
349
349
|
}
|
|
350
350
|
}}>
|
|
@@ -371,7 +371,7 @@ export const demoFunc = () => html`
|
|
|
371
371
|
const output = elementArg.querySelector('#event-output');
|
|
372
372
|
|
|
373
373
|
if (picker && output) {
|
|
374
|
-
picker.addEventListener('change', (event: CustomEvent) => {
|
|
374
|
+
picker.addEventListener('change', ((event: CustomEvent) => {
|
|
375
375
|
const target = event.target as DeesInputDatepicker;
|
|
376
376
|
const value = target.value;
|
|
377
377
|
if (value) {
|
|
@@ -379,16 +379,16 @@ export const demoFunc = () => html`
|
|
|
379
379
|
// Get the formatted value from the input element
|
|
380
380
|
const input = target.shadowRoot?.querySelector('.date-input') as HTMLInputElement;
|
|
381
381
|
const formattedValue = input?.value || 'N/A';
|
|
382
|
-
output.innerHTML = `
|
|
382
|
+
(output as HTMLElement).innerHTML = `
|
|
383
383
|
<strong>Event triggered!</strong><br>
|
|
384
384
|
ISO Value: ${value}<br>
|
|
385
385
|
Formatted: ${formattedValue}<br>
|
|
386
386
|
Date object: ${date.toLocaleString()}
|
|
387
387
|
`;
|
|
388
388
|
} else {
|
|
389
|
-
output.innerHTML = '<em>Date cleared</em>';
|
|
389
|
+
(output as HTMLElement).innerHTML = '<em>Date cleared</em>';
|
|
390
390
|
}
|
|
391
|
-
});
|
|
391
|
+
}) as EventListener);
|
|
392
392
|
|
|
393
393
|
picker.addEventListener('blur', () => {
|
|
394
394
|
console.log('Datepicker lost focus');
|
|
@@ -56,16 +56,16 @@ export const demoFunc = () => html`
|
|
|
56
56
|
|
|
57
57
|
// Log when country changes
|
|
58
58
|
if (countryDropdown) {
|
|
59
|
-
countryDropdown.addEventListener('selectedOption', (event: CustomEvent) => {
|
|
59
|
+
countryDropdown.addEventListener('selectedOption', ((event: CustomEvent) => {
|
|
60
60
|
console.log('Country selected:', event.detail);
|
|
61
|
-
});
|
|
61
|
+
}) as EventListener);
|
|
62
62
|
}
|
|
63
63
|
|
|
64
64
|
// Log when role changes
|
|
65
65
|
if (roleDropdown) {
|
|
66
|
-
roleDropdown.addEventListener('selectedOption', (event: CustomEvent) => {
|
|
66
|
+
roleDropdown.addEventListener('selectedOption', ((event: CustomEvent) => {
|
|
67
67
|
console.log('Role selected:', event.detail);
|
|
68
|
-
});
|
|
68
|
+
}) as EventListener);
|
|
69
69
|
}
|
|
70
70
|
}}>
|
|
71
71
|
<dees-panel .title=${'1. Basic Dropdowns'} .subtitle=${'Standard dropdown with search functionality and various options'}>
|
|
@@ -103,9 +103,9 @@ export const demoFunc = () => html`
|
|
|
103
103
|
const priorityDropdown = elementArg.querySelector('dees-input-dropdown');
|
|
104
104
|
|
|
105
105
|
if (priorityDropdown) {
|
|
106
|
-
priorityDropdown.addEventListener('selectedOption', (event: CustomEvent) => {
|
|
106
|
+
priorityDropdown.addEventListener('selectedOption', ((event: CustomEvent) => {
|
|
107
107
|
console.log(`Priority changed to: ${event.detail.option}`);
|
|
108
|
-
});
|
|
108
|
+
}) as EventListener);
|
|
109
109
|
}
|
|
110
110
|
}}>
|
|
111
111
|
<dees-panel .title=${'2. Without Search'} .subtitle=${'Dropdown with search functionality disabled for simpler selection'}>
|
|
@@ -128,10 +128,10 @@ export const demoFunc = () => html`
|
|
|
128
128
|
|
|
129
129
|
// Log all changes from horizontal dropdowns
|
|
130
130
|
dropdowns.forEach((dropdown) => {
|
|
131
|
-
dropdown.addEventListener('selectedOption', (event: CustomEvent) => {
|
|
131
|
+
dropdown.addEventListener('selectedOption', ((event: CustomEvent) => {
|
|
132
132
|
const label = dropdown.getAttribute('label');
|
|
133
133
|
console.log(`${label}: ${event.detail.option}`);
|
|
134
|
-
});
|
|
134
|
+
}) as EventListener);
|
|
135
135
|
});
|
|
136
136
|
}}>
|
|
137
137
|
<dees-panel .title=${'3. Horizontal Layout'} .subtitle=${'Multiple dropdowns in a horizontal layout for compact forms'}>
|
|
@@ -216,9 +216,9 @@ export const demoFunc = () => html`
|
|
|
216
216
|
const dropdown = elementArg.querySelector('dees-input-dropdown');
|
|
217
217
|
|
|
218
218
|
if (dropdown) {
|
|
219
|
-
dropdown.addEventListener('selectedOption', (event: CustomEvent) => {
|
|
219
|
+
dropdown.addEventListener('selectedOption', ((event: CustomEvent) => {
|
|
220
220
|
console.log('Bottom dropdown selected:', event.detail);
|
|
221
|
-
});
|
|
221
|
+
}) as EventListener);
|
|
222
222
|
|
|
223
223
|
// Note: The dropdown automatically detects available space
|
|
224
224
|
// and opens upward when near the bottom of the viewport
|
|
@@ -248,16 +248,16 @@ export const demoFunc = () => html`
|
|
|
248
248
|
output.innerHTML = '<em>Select a product to see details...</em>';
|
|
249
249
|
|
|
250
250
|
// Handle dropdown changes
|
|
251
|
-
dropdown.addEventListener('change', (event: CustomEvent) => {
|
|
251
|
+
dropdown.addEventListener('change', ((event: CustomEvent) => {
|
|
252
252
|
if (event.detail.value) {
|
|
253
|
-
output.innerHTML = `
|
|
253
|
+
(output as HTMLElement).innerHTML = `
|
|
254
254
|
<strong>Selected:</strong> ${event.detail.value.option}<br>
|
|
255
255
|
<strong>Key:</strong> ${event.detail.value.key}<br>
|
|
256
256
|
<strong>Price:</strong> $${event.detail.value.payload?.price || 'N/A'}<br>
|
|
257
257
|
<strong>Features:</strong> ${event.detail.value.payload?.features?.join(', ') || 'N/A'}
|
|
258
258
|
`;
|
|
259
259
|
}
|
|
260
|
-
});
|
|
260
|
+
}) as EventListener);
|
|
261
261
|
}
|
|
262
262
|
}}>
|
|
263
263
|
<dees-panel .title=${'6. Event Handling & Payload'} .subtitle=${'Dropdown with payload data and change event handling'}>
|
|
@@ -281,20 +281,20 @@ export const demoFunc = () => html`
|
|
|
281
281
|
const frameworkDropdown = elementArg.querySelector('dees-input-dropdown[key="framework"]');
|
|
282
282
|
|
|
283
283
|
if (form) {
|
|
284
|
-
form.addEventListener('formData', (event: CustomEvent) => {
|
|
284
|
+
form.addEventListener('formData', ((event: CustomEvent) => {
|
|
285
285
|
console.log('Form submitted with data:', event.detail.data);
|
|
286
|
-
});
|
|
286
|
+
}) as EventListener);
|
|
287
287
|
}
|
|
288
288
|
|
|
289
289
|
if (projectTypeDropdown && frameworkDropdown) {
|
|
290
290
|
// Filter frameworks based on project type
|
|
291
|
-
projectTypeDropdown.addEventListener('selectedOption', (event: CustomEvent) => {
|
|
291
|
+
projectTypeDropdown.addEventListener('selectedOption', ((event: CustomEvent) => {
|
|
292
292
|
const selectedType = event.detail.key;
|
|
293
293
|
console.log(`Project type changed to: ${selectedType}`);
|
|
294
|
-
|
|
294
|
+
|
|
295
295
|
// In a real app, you could filter the framework options based on project type
|
|
296
296
|
// For demo purposes, we just log the change
|
|
297
|
-
});
|
|
297
|
+
}) as EventListener);
|
|
298
298
|
}
|
|
299
299
|
}}>
|
|
300
300
|
<dees-panel .title=${'7. Form Integration'} .subtitle=${'Dropdown working within a form with validation'}>
|
|
@@ -30,14 +30,14 @@ export class DeesInputDropdown extends DeesInputBase<DeesInputDropdown> {
|
|
|
30
30
|
accessor options: { option: string; key: string; payload?: any }[] = [];
|
|
31
31
|
|
|
32
32
|
@property()
|
|
33
|
-
accessor selectedOption: { option: string; key: string; payload?: any } = null;
|
|
33
|
+
accessor selectedOption: { option: string; key: string; payload?: any } | null = null;
|
|
34
34
|
|
|
35
35
|
// Add value property for form compatibility
|
|
36
36
|
public get value() {
|
|
37
37
|
return this.selectedOption;
|
|
38
38
|
}
|
|
39
39
|
|
|
40
|
-
public set value(val: { option: string; key: string; payload?: any }) {
|
|
40
|
+
public set value(val: { option: string; key: string; payload?: any } | null) {
|
|
41
41
|
this.selectedOption = val;
|
|
42
42
|
}
|
|
43
43
|
|
|
@@ -372,7 +372,7 @@ export class DeesInputDropdown extends DeesInputBase<DeesInputDropdown> {
|
|
|
372
372
|
|
|
373
373
|
if (this.isOpened) {
|
|
374
374
|
// Check available space and set position
|
|
375
|
-
const selectedBox = this.shadowRoot
|
|
375
|
+
const selectedBox = this.shadowRoot!.querySelector('.selectedBox') as HTMLElement;
|
|
376
376
|
const rect = selectedBox.getBoundingClientRect();
|
|
377
377
|
const spaceBelow = window.innerHeight - rect.bottom;
|
|
378
378
|
const spaceAbove = rect.top;
|
|
@@ -382,7 +382,7 @@ export class DeesInputDropdown extends DeesInputBase<DeesInputDropdown> {
|
|
|
382
382
|
|
|
383
383
|
// Focus search input if present
|
|
384
384
|
await this.updateComplete;
|
|
385
|
-
const searchInput = this.shadowRoot
|
|
385
|
+
const searchInput = this.shadowRoot!.querySelector('.search input') as HTMLInputElement;
|
|
386
386
|
if (searchInput) {
|
|
387
387
|
searchInput.focus();
|
|
388
388
|
}
|
|
@@ -455,7 +455,7 @@ export class DeesInputDropdown extends DeesInputBase<DeesInputDropdown> {
|
|
|
455
455
|
}
|
|
456
456
|
}
|
|
457
457
|
|
|
458
|
-
public getValue(): { option: string; key: string; payload?: any } {
|
|
458
|
+
public getValue(): { option: string; key: string; payload?: any } | null {
|
|
459
459
|
return this.selectedOption;
|
|
460
460
|
}
|
|
461
461
|
|
|
@@ -48,7 +48,7 @@ export class DeesInputFileupload extends DeesInputBase<DeesInputFileupload> {
|
|
|
48
48
|
accessor maxFiles: number = 0; // 0 means no limit
|
|
49
49
|
|
|
50
50
|
@property({ type: String, reflect: true })
|
|
51
|
-
accessor validationState: 'valid' | 'invalid' | 'warn' | 'pending' = null;
|
|
51
|
+
accessor validationState: 'valid' | 'invalid' | 'warn' | 'pending' | null = null;
|
|
52
52
|
|
|
53
53
|
accessor validationMessage: string = '';
|
|
54
54
|
|
|
@@ -266,7 +266,7 @@ export class DeesInputFileupload extends DeesInputBase<DeesInputFileupload> {
|
|
|
266
266
|
return;
|
|
267
267
|
}
|
|
268
268
|
['dragenter', 'dragover', 'dragleave', 'drop'].forEach((eventName) => {
|
|
269
|
-
this.dropArea!.addEventListener(eventName, this.handleDragEvent);
|
|
269
|
+
this.dropArea!.addEventListener(eventName, this.handleDragEvent as unknown as EventListener);
|
|
270
270
|
});
|
|
271
271
|
}
|
|
272
272
|
|
|
@@ -275,7 +275,7 @@ export class DeesInputFileupload extends DeesInputBase<DeesInputFileupload> {
|
|
|
275
275
|
return;
|
|
276
276
|
}
|
|
277
277
|
['dragenter', 'dragover', 'dragleave', 'drop'].forEach((eventName) => {
|
|
278
|
-
this.dropArea!.removeEventListener(eventName, this.handleDragEvent);
|
|
278
|
+
this.dropArea!.removeEventListener(eventName, this.handleDragEvent as unknown as EventListener);
|
|
279
279
|
});
|
|
280
280
|
}
|
|
281
281
|
|
|
@@ -60,7 +60,7 @@ export class DeesInputIban extends DeesInputBase<DeesInputIban> {
|
|
|
60
60
|
|
|
61
61
|
public firstUpdated(_changedProperties: Map<string | number | symbol, unknown>) {
|
|
62
62
|
super.firstUpdated(_changedProperties);
|
|
63
|
-
const deesInputText = this.shadowRoot
|
|
63
|
+
const deesInputText = this.shadowRoot!.querySelector('dees-input-text') as any;
|
|
64
64
|
if (deesInputText && deesInputText.changeSubject) {
|
|
65
65
|
deesInputText.changeSubject.subscribe(() => {
|
|
66
66
|
this.changeSubject.next(this);
|
|
@@ -81,8 +81,10 @@ export class DeesInputIban extends DeesInputBase<DeesInputIban> {
|
|
|
81
81
|
}
|
|
82
82
|
}
|
|
83
83
|
this.enteredIbanIsValid = ibantools.isValidIBAN(this.enteredString.replace(/ /g, ''));
|
|
84
|
-
const deesInputText = this.shadowRoot
|
|
85
|
-
deesInputText
|
|
84
|
+
const deesInputText = this.shadowRoot!.querySelector('dees-input-text') as any;
|
|
85
|
+
if (deesInputText) {
|
|
86
|
+
deesInputText.validationText = `IBAN is valid: ${this.enteredIbanIsValid}`;
|
|
87
|
+
}
|
|
86
88
|
}
|
|
87
89
|
|
|
88
90
|
public getValue(): string {
|
|
@@ -211,9 +211,9 @@ export class DeesInputMultitoggle extends DeesInputBase<DeesInputMultitoggle> {
|
|
|
211
211
|
private indicatorInitialized = false;
|
|
212
212
|
|
|
213
213
|
public async setIndicator() {
|
|
214
|
-
const indicator: HTMLDivElement = this.shadowRoot
|
|
214
|
+
const indicator: HTMLDivElement | null = this.shadowRoot!.querySelector('.indicator');
|
|
215
215
|
const selectedIndex = this.options.indexOf(this.selectedOption);
|
|
216
|
-
|
|
216
|
+
|
|
217
217
|
// If no valid selection, hide indicator
|
|
218
218
|
if (selectedIndex === -1 || !indicator) {
|
|
219
219
|
if (indicator) {
|
|
@@ -221,8 +221,8 @@ export class DeesInputMultitoggle extends DeesInputBase<DeesInputMultitoggle> {
|
|
|
221
221
|
}
|
|
222
222
|
return;
|
|
223
223
|
}
|
|
224
|
-
|
|
225
|
-
const option: HTMLDivElement = this.shadowRoot
|
|
224
|
+
|
|
225
|
+
const option: HTMLDivElement | null = this.shadowRoot!.querySelector(
|
|
226
226
|
`.option:nth-child(${selectedIndex + 2})`
|
|
227
227
|
);
|
|
228
228
|
|
|
@@ -67,7 +67,7 @@ export class DeesInputPhone extends DeesInputBase<DeesInputPhone> {
|
|
|
67
67
|
}
|
|
68
68
|
|
|
69
69
|
// Subscribe to the inner input's changes
|
|
70
|
-
const innerInput = this.shadowRoot
|
|
70
|
+
const innerInput = this.shadowRoot!.querySelector('dees-input-text') as any;
|
|
71
71
|
if (innerInput && innerInput.changeSubject) {
|
|
72
72
|
innerInput.changeSubject.subscribe(() => {
|
|
73
73
|
this.changeSubject.next(this);
|
|
@@ -35,7 +35,7 @@ export class DeesInputRadiogroup extends DeesInputBase<string | object> {
|
|
|
35
35
|
accessor direction: 'vertical' | 'horizontal' = 'vertical';
|
|
36
36
|
|
|
37
37
|
@property({ type: String, reflect: true })
|
|
38
|
-
accessor validationState: 'valid' | 'invalid' | 'warn' | 'pending' = null;
|
|
38
|
+
accessor validationState: 'valid' | 'invalid' | 'warn' | 'pending' | null = null;
|
|
39
39
|
|
|
40
40
|
// Form compatibility
|
|
41
41
|
public get value() {
|
|
@@ -346,15 +346,15 @@ export class DeesInputRadiogroup extends DeesInputBase<string | object> {
|
|
|
346
346
|
}
|
|
347
347
|
|
|
348
348
|
private focusNextOption() {
|
|
349
|
-
const radioCircles = Array.from(this.shadowRoot
|
|
350
|
-
const currentIndex = radioCircles.findIndex(el => el === this.shadowRoot
|
|
349
|
+
const radioCircles = Array.from(this.shadowRoot!.querySelectorAll('.radio-circle'));
|
|
350
|
+
const currentIndex = radioCircles.findIndex(el => el === this.shadowRoot!.activeElement);
|
|
351
351
|
const nextIndex = (currentIndex + 1) % radioCircles.length;
|
|
352
352
|
(radioCircles[nextIndex] as HTMLElement).focus();
|
|
353
353
|
}
|
|
354
354
|
|
|
355
355
|
private focusPreviousOption() {
|
|
356
|
-
const radioCircles = Array.from(this.shadowRoot
|
|
357
|
-
const currentIndex = radioCircles.findIndex(el => el === this.shadowRoot
|
|
356
|
+
const radioCircles = Array.from(this.shadowRoot!.querySelectorAll('.radio-circle'));
|
|
357
|
+
const currentIndex = radioCircles.findIndex(el => el === this.shadowRoot!.activeElement);
|
|
358
358
|
const prevIndex = currentIndex <= 0 ? radioCircles.length - 1 : currentIndex - 1;
|
|
359
359
|
(radioCircles[prevIndex] as HTMLElement).focus();
|
|
360
360
|
}
|
|
@@ -58,11 +58,11 @@ export class DeesInputRichtext extends DeesInputBase<string> {
|
|
|
58
58
|
@state()
|
|
59
59
|
accessor wordCount: number = 0;
|
|
60
60
|
|
|
61
|
-
private editorElement
|
|
62
|
-
private linkInputElement
|
|
61
|
+
private editorElement!: HTMLElement;
|
|
62
|
+
private linkInputElement!: HTMLInputElement;
|
|
63
63
|
private tiptapBundle: ITiptapBundle | null = null;
|
|
64
64
|
|
|
65
|
-
public editor
|
|
65
|
+
public editor!: Editor;
|
|
66
66
|
|
|
67
67
|
public static styles = richtextStyles;
|
|
68
68
|
|
|
@@ -235,8 +235,8 @@ export class DeesInputRichtext extends DeesInputBase<string> {
|
|
|
235
235
|
// Load Tiptap from CDN
|
|
236
236
|
this.tiptapBundle = await DeesServiceLibLoader.getInstance().loadTiptap();
|
|
237
237
|
|
|
238
|
-
this.editorElement = this.shadowRoot
|
|
239
|
-
this.linkInputElement = this.shadowRoot
|
|
238
|
+
this.editorElement = this.shadowRoot!.querySelector('.editor-content')!;
|
|
239
|
+
this.linkInputElement = this.shadowRoot!.querySelector('.link-input input')!;
|
|
240
240
|
this.initializeEditor();
|
|
241
241
|
}
|
|
242
242
|
|
|
@@ -73,9 +73,9 @@ export const demoFunc = () => html`
|
|
|
73
73
|
const inputs = elementArg.querySelectorAll('dees-input-text');
|
|
74
74
|
|
|
75
75
|
inputs.forEach((input: DeesInputText) => {
|
|
76
|
-
input.addEventListener('changeSubject', (event: CustomEvent) => {
|
|
76
|
+
input.addEventListener('changeSubject', ((event: CustomEvent) => {
|
|
77
77
|
console.log(`Input "${input.label}" changed to:`, input.getValue());
|
|
78
|
-
});
|
|
78
|
+
}) as EventListener);
|
|
79
79
|
|
|
80
80
|
input.addEventListener('blur', () => {
|
|
81
81
|
console.log(`Input "${input.label}" lost focus`);
|
|
@@ -271,7 +271,8 @@ export const demoFunc = () => html`
|
|
|
271
271
|
// Track password visibility toggles
|
|
272
272
|
const passwordInputs = elementArg.querySelectorAll('dees-input-text[isPasswordBool]');
|
|
273
273
|
|
|
274
|
-
passwordInputs.forEach((
|
|
274
|
+
passwordInputs.forEach((_input) => {
|
|
275
|
+
const input = _input as DeesInputText;
|
|
275
276
|
// Monitor for toggle button clicks within shadow DOM
|
|
276
277
|
const checkToggle = () => {
|
|
277
278
|
const inputEl = input.shadowRoot?.querySelector('input');
|
|
@@ -316,10 +317,10 @@ export const demoFunc = () => html`
|
|
|
316
317
|
|
|
317
318
|
if (dynamicInput && output) {
|
|
318
319
|
// Update output on every change
|
|
319
|
-
dynamicInput.addEventListener('changeSubject', (event: CustomEvent) => {
|
|
320
|
+
dynamicInput.addEventListener('changeSubject', ((event: CustomEvent) => {
|
|
320
321
|
const value = (event.detail as DeesInputText).getValue();
|
|
321
322
|
output.textContent = `Current value: "${value}"`;
|
|
322
|
-
});
|
|
323
|
+
}) as EventListener);
|
|
323
324
|
|
|
324
325
|
// Also track focus/blur events
|
|
325
326
|
dynamicInput.addEventListener('focus', () => {
|
|
@@ -47,7 +47,7 @@ export class DeesInputText extends DeesInputBase {
|
|
|
47
47
|
type: Boolean,
|
|
48
48
|
reflect: true,
|
|
49
49
|
})
|
|
50
|
-
accessor validationState
|
|
50
|
+
accessor validationState!: 'valid' | 'warn' | 'invalid';
|
|
51
51
|
|
|
52
52
|
@property({
|
|
53
53
|
reflect: true,
|
|
@@ -55,7 +55,7 @@ export class DeesInputText extends DeesInputBase {
|
|
|
55
55
|
accessor validationText: string = '';
|
|
56
56
|
|
|
57
57
|
@property({})
|
|
58
|
-
accessor validationFunction
|
|
58
|
+
accessor validationFunction!: (value: string) => boolean;
|
|
59
59
|
|
|
60
60
|
public static styles = [
|
|
61
61
|
themeDefaultStyles,
|
|
@@ -274,12 +274,12 @@ export class DeesInputText extends DeesInputBase {
|
|
|
274
274
|
}
|
|
275
275
|
|
|
276
276
|
public async focus() {
|
|
277
|
-
const textInput = this.shadowRoot
|
|
278
|
-
textInput
|
|
277
|
+
const textInput = this.shadowRoot!.querySelector('input');
|
|
278
|
+
textInput!.focus();
|
|
279
279
|
}
|
|
280
280
|
|
|
281
281
|
public async blur() {
|
|
282
|
-
const textInput = this.shadowRoot
|
|
283
|
-
textInput
|
|
282
|
+
const textInput = this.shadowRoot!.querySelector('input');
|
|
283
|
+
textInput!.blur();
|
|
284
284
|
}
|
|
285
285
|
}
|
|
@@ -12,17 +12,19 @@ export const demoFunc = () => html`
|
|
|
12
12
|
|
|
13
13
|
if (toggleAllOnBtn && toggleAllOffBtn) {
|
|
14
14
|
toggleAllOnBtn.addEventListener('click', () => {
|
|
15
|
-
featureToggles.forEach((toggle
|
|
16
|
-
|
|
17
|
-
|
|
15
|
+
featureToggles.forEach((toggle) => {
|
|
16
|
+
const t = toggle as unknown as DeesInputToggle;
|
|
17
|
+
if (!t.disabled && !t.required) {
|
|
18
|
+
t.value = true;
|
|
18
19
|
}
|
|
19
20
|
});
|
|
20
21
|
});
|
|
21
22
|
|
|
22
23
|
toggleAllOffBtn.addEventListener('click', () => {
|
|
23
|
-
featureToggles.forEach((toggle
|
|
24
|
-
|
|
25
|
-
|
|
24
|
+
featureToggles.forEach((toggle) => {
|
|
25
|
+
const t = toggle as unknown as DeesInputToggle;
|
|
26
|
+
if (!t.disabled && !t.required) {
|
|
27
|
+
t.value = false;
|
|
26
28
|
}
|
|
27
29
|
});
|
|
28
30
|
});
|
|
@@ -280,10 +282,10 @@ export const demoFunc = () => html`
|
|
|
280
282
|
<dees-input-toggle
|
|
281
283
|
.label=${'Airplane mode'}
|
|
282
284
|
.value=${false}
|
|
283
|
-
@newValue=${(event:
|
|
285
|
+
@newValue=${(event: Event) => {
|
|
284
286
|
const output = document.querySelector('#airplane-output');
|
|
285
287
|
if (output) {
|
|
286
|
-
output.textContent = `Airplane mode: ${event.detail ? 'ON' : 'OFF'}`;
|
|
288
|
+
output.textContent = `Airplane mode: ${(event as CustomEvent).detail ? 'ON' : 'OFF'}`;
|
|
287
289
|
}
|
|
288
290
|
}}
|
|
289
291
|
></dees-input-toggle>
|
|
@@ -291,10 +293,10 @@ export const demoFunc = () => html`
|
|
|
291
293
|
<dees-input-toggle
|
|
292
294
|
.label=${'Do not disturb'}
|
|
293
295
|
.value=${false}
|
|
294
|
-
@newValue=${(event:
|
|
296
|
+
@newValue=${(event: Event) => {
|
|
295
297
|
const output = document.querySelector('#dnd-output');
|
|
296
298
|
if (output) {
|
|
297
|
-
output.textContent = `Do not disturb: ${event.detail ? 'ENABLED' : 'DISABLED'}`;
|
|
299
|
+
output.textContent = `Do not disturb: ${(event as CustomEvent).detail ? 'ENABLED' : 'DISABLED'}`;
|
|
298
300
|
}
|
|
299
301
|
}}
|
|
300
302
|
></dees-input-toggle>
|
|
@@ -156,7 +156,7 @@ export class DeesInputTypelist extends DeesInputBase<DeesInputTypelist> {
|
|
|
156
156
|
<dees-label .label=${this.label} .description=${this.description}></dees-label>
|
|
157
157
|
<div class="mainbox">
|
|
158
158
|
<div class="tags" @click=${() => {
|
|
159
|
-
this.shadowRoot
|
|
159
|
+
this.shadowRoot!.querySelector('input')!.focus();
|
|
160
160
|
}}>
|
|
161
161
|
${this.value.length === 0
|
|
162
162
|
? html`<div class="notags">No tags yet</div>`
|
|
@@ -200,15 +200,16 @@ export class HeadingBlockHandler extends BaseBlockHandler {
|
|
|
200
200
|
const wysiwygBlock = (headingBlock.getRootNode() as ShadowRoot).host as any;
|
|
201
201
|
if (wysiwygBlock) {
|
|
202
202
|
const originalDisconnectedCallback = (wysiwygBlock as any).disconnectedCallback;
|
|
203
|
+
const self = this;
|
|
203
204
|
(wysiwygBlock as any).disconnectedCallback = async function() {
|
|
204
|
-
if (
|
|
205
|
-
document.removeEventListener('selectionchange',
|
|
206
|
-
|
|
205
|
+
if (self.selectionHandler) {
|
|
206
|
+
document.removeEventListener('selectionchange', self.selectionHandler);
|
|
207
|
+
self.selectionHandler = null;
|
|
207
208
|
}
|
|
208
209
|
if (originalDisconnectedCallback) {
|
|
209
210
|
await originalDisconnectedCallback.call(wysiwygBlock);
|
|
210
211
|
}
|
|
211
|
-
}
|
|
212
|
+
};
|
|
212
213
|
}
|
|
213
214
|
}
|
|
214
215
|
|
|
@@ -213,15 +213,16 @@ export class ListBlockHandler extends BaseBlockHandler {
|
|
|
213
213
|
const wysiwygBlock = (listBlock.getRootNode() as ShadowRoot).host as any;
|
|
214
214
|
if (wysiwygBlock) {
|
|
215
215
|
const originalDisconnectedCallback = (wysiwygBlock as any).disconnectedCallback;
|
|
216
|
+
const self = this;
|
|
216
217
|
(wysiwygBlock as any).disconnectedCallback = async function() {
|
|
217
|
-
if (
|
|
218
|
-
document.removeEventListener('selectionchange',
|
|
219
|
-
|
|
218
|
+
if (self.selectionHandler) {
|
|
219
|
+
document.removeEventListener('selectionchange', self.selectionHandler);
|
|
220
|
+
self.selectionHandler = null;
|
|
220
221
|
}
|
|
221
222
|
if (originalDisconnectedCallback) {
|
|
222
223
|
await originalDisconnectedCallback.call(wysiwygBlock);
|
|
223
224
|
}
|
|
224
|
-
}
|
|
225
|
+
};
|
|
225
226
|
}
|
|
226
227
|
}
|
|
227
228
|
|
|
@@ -193,15 +193,16 @@ export class ParagraphBlockHandler extends BaseBlockHandler {
|
|
|
193
193
|
const wysiwygBlock = element.closest('dees-wysiwyg-block');
|
|
194
194
|
if (wysiwygBlock) {
|
|
195
195
|
const originalDisconnectedCallback = (wysiwygBlock as any).disconnectedCallback;
|
|
196
|
+
const self = this;
|
|
196
197
|
(wysiwygBlock as any).disconnectedCallback = async function() {
|
|
197
|
-
if (
|
|
198
|
-
document.removeEventListener('selectionchange',
|
|
199
|
-
|
|
198
|
+
if (self.selectionHandler) {
|
|
199
|
+
document.removeEventListener('selectionchange', self.selectionHandler);
|
|
200
|
+
self.selectionHandler = null;
|
|
200
201
|
}
|
|
201
202
|
if (originalDisconnectedCallback) {
|
|
202
203
|
await originalDisconnectedCallback.call(wysiwygBlock);
|
|
203
204
|
}
|
|
204
|
-
}
|
|
205
|
+
};
|
|
205
206
|
}
|
|
206
207
|
}
|
|
207
208
|
|
|
@@ -192,15 +192,16 @@ export class QuoteBlockHandler extends BaseBlockHandler {
|
|
|
192
192
|
const wysiwygBlock = (quoteBlock.getRootNode() as ShadowRoot).host as any;
|
|
193
193
|
if (wysiwygBlock) {
|
|
194
194
|
const originalDisconnectedCallback = (wysiwygBlock as any).disconnectedCallback;
|
|
195
|
+
const self = this;
|
|
195
196
|
(wysiwygBlock as any).disconnectedCallback = async function() {
|
|
196
|
-
if (
|
|
197
|
-
document.removeEventListener('selectionchange',
|
|
198
|
-
|
|
197
|
+
if (self.selectionHandler) {
|
|
198
|
+
document.removeEventListener('selectionchange', self.selectionHandler);
|
|
199
|
+
self.selectionHandler = null;
|
|
199
200
|
}
|
|
200
201
|
if (originalDisconnectedCallback) {
|
|
201
202
|
await originalDisconnectedCallback.call(wysiwygBlock);
|
|
202
203
|
}
|
|
203
|
-
}
|
|
204
|
+
};
|
|
204
205
|
}
|
|
205
206
|
}
|
|
206
207
|
|