@compas-oscd/open-scd 0.34.17 → 0.34.19
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/WizardDivider.d.ts +8 -8
- package/dist/WizardDivider.js +26 -26
- package/dist/Wizarding.js +36 -36
- package/dist/Wizarding.js.map +1 -1
- package/dist/action-icon.d.ts +25 -25
- package/dist/action-icon.js +51 -51
- package/dist/action-pane.d.ts +25 -25
- package/dist/action-pane.js +86 -86
- package/dist/addons/Editor.d.ts +25 -25
- package/dist/addons/Editor.js +105 -105
- package/dist/addons/Editor.js.map +1 -1
- package/dist/addons/History.d.ts +86 -93
- package/dist/addons/History.js +301 -302
- package/dist/addons/History.js.map +1 -1
- package/dist/addons/Layout.d.ts +96 -96
- package/dist/addons/Layout.js +448 -448
- package/dist/addons/Layout.js.map +1 -1
- package/dist/addons/Settings.d.ts +68 -68
- package/dist/addons/Settings.js +272 -272
- package/dist/addons/Settings.js.map +1 -1
- package/dist/addons/Waiter.d.ts +14 -14
- package/dist/addons/Waiter.js +40 -40
- package/dist/addons/Waiter.js.map +1 -1
- package/dist/addons/Wizards.d.ts +15 -15
- package/dist/addons/Wizards.js +46 -46
- package/dist/addons/editor/edit-action-to-v1-converter.d.ts +3 -3
- package/dist/addons/editor/edit-action-to-v1-converter.js +95 -95
- package/dist/addons/editor/edit-action-to-v1-converter.js.map +1 -1
- package/dist/addons/editor/edit-v1-to-v2-converter.d.ts +2 -2
- package/dist/addons/editor/edit-v1-to-v2-converter.js +36 -36
- package/dist/addons/editor/edit-v1-to-v2-converter.js.map +1 -1
- package/dist/addons/history/get-log-text.d.ts +5 -5
- package/dist/addons/history/get-log-text.js +25 -25
- package/dist/addons/history/get-log-text.js.map +1 -1
- package/dist/addons/menu-tabs/menu-tabs.d.ts +22 -22
- package/dist/addons/menu-tabs/menu-tabs.js +59 -59
- package/dist/addons/plugin-manager/custom-plugin-dialog.d.ts +28 -28
- package/dist/addons/plugin-manager/custom-plugin-dialog.js +71 -71
- package/dist/addons/plugin-manager/plugin-manager.d.ts +20 -20
- package/dist/addons/plugin-manager/plugin-manager.js +77 -77
- package/dist/core/api/api.js +7 -0
- package/dist/core/api/api.js.map +1 -0
- package/dist/core/api/editor/subject.js +22 -0
- package/dist/core/api/editor/subject.js.map +1 -0
- package/dist/core/api/editor/xml-editor.js +82 -0
- package/dist/core/api/editor/xml-editor.js.map +1 -0
- package/dist/core/api/plugin-state-api.js +27 -0
- package/dist/core/api/plugin-state-api.js.map +1 -0
- package/dist/core/foundation/cyrb64.js +26 -0
- package/dist/core/foundation/cyrb64.js.map +1 -0
- package/dist/core/foundation/deprecated/edit-event.js +44 -0
- package/dist/core/foundation/deprecated/edit-event.js.map +1 -0
- package/dist/core/foundation/deprecated/editor.js +94 -0
- package/dist/core/foundation/deprecated/editor.js.map +1 -0
- package/dist/core/foundation/deprecated/history.js +17 -0
- package/dist/core/foundation/deprecated/history.js.map +1 -0
- package/dist/core/foundation/deprecated/open-event.js +9 -0
- package/dist/core/foundation/deprecated/open-event.js.map +1 -0
- package/dist/core/foundation/deprecated/settings.js +19 -0
- package/dist/core/foundation/deprecated/settings.js.map +1 -0
- package/dist/core/foundation/deprecated/validation.js +8 -0
- package/dist/core/foundation/deprecated/validation.js.map +1 -0
- package/dist/core/foundation/deprecated/waiter.js +12 -0
- package/dist/core/foundation/deprecated/waiter.js.map +1 -0
- package/dist/core/foundation/edit-completed-event.js +11 -0
- package/dist/core/foundation/edit-completed-event.js.map +1 -0
- package/dist/core/foundation/edit-event.js +8 -0
- package/dist/core/foundation/edit-event.js.map +1 -0
- package/dist/core/foundation/edit.js +31 -0
- package/dist/core/foundation/edit.js.map +1 -0
- package/dist/core/foundation/handle-edit.js +151 -0
- package/dist/core/foundation/handle-edit.js.map +1 -0
- package/dist/core/foundation/open-event.js +8 -0
- package/dist/core/foundation/open-event.js.map +1 -0
- package/dist/core/foundation/plugin.js +2 -0
- package/dist/core/foundation/plugin.js.map +1 -0
- package/dist/core/foundation.js +14 -0
- package/dist/core/foundation.js.map +1 -0
- package/dist/core/locales.js +21 -0
- package/dist/core/locales.js.map +1 -0
- package/dist/filtered-list.d.ts +27 -27
- package/dist/filtered-list.js +118 -118
- package/dist/finder-list.d.ts +37 -37
- package/dist/finder-list.js +153 -153
- package/dist/foundation/compare.d.ts +79 -79
- package/dist/foundation/compare.js +216 -216
- package/dist/foundation/dai.d.ts +30 -30
- package/dist/foundation/dai.js +126 -126
- package/dist/foundation/generators.d.ts +13 -13
- package/dist/foundation/generators.js +66 -66
- package/dist/foundation/ied.d.ts +22 -22
- package/dist/foundation/ied.js +83 -83
- package/dist/foundation/ied.js.map +1 -1
- package/dist/foundation/nsd.d.ts +4 -4
- package/dist/foundation/nsd.js +12 -12
- package/dist/foundation/nsdoc.d.ts +14 -14
- package/dist/foundation/nsdoc.js +178 -178
- package/dist/foundation/scl.d.ts +1 -1
- package/dist/foundation/scl.js +63 -63
- package/dist/foundation.d.ts +230 -230
- package/dist/foundation.js +1921 -1921
- package/dist/foundation.js.map +1 -1
- package/dist/icons/compare.d.ts +3 -3
- package/dist/icons/compare.js +4 -4
- package/dist/icons/icons.d.ts +41 -41
- package/dist/icons/icons.js +92 -92
- package/dist/icons/ied-icons.d.ts +3 -3
- package/dist/icons/ied-icons.js +4 -4
- package/dist/icons/lnode.d.ts +16 -16
- package/dist/icons/lnode.js +17 -17
- package/dist/open-scd.d.ts +131 -131
- package/dist/open-scd.js +438 -438
- package/dist/open-scd.js.map +1 -1
- package/dist/openscd/src/WizardDivider.js +37 -0
- package/dist/openscd/src/WizardDivider.js.map +1 -0
- package/dist/openscd/src/Wizarding.js +38 -0
- package/dist/openscd/src/Wizarding.js.map +1 -0
- package/dist/openscd/src/action-icon.js +220 -0
- package/dist/openscd/src/action-icon.js.map +1 -0
- package/dist/openscd/src/action-pane.js +176 -0
- package/dist/openscd/src/action-pane.js.map +1 -0
- package/dist/openscd/src/addons/Editor.js +106 -0
- package/dist/openscd/src/addons/Editor.js.map +1 -0
- package/dist/openscd/src/addons/History.js +490 -0
- package/dist/openscd/src/addons/History.js.map +1 -0
- package/dist/openscd/src/addons/Layout.js +619 -0
- package/dist/openscd/src/addons/Layout.js.map +1 -0
- package/dist/openscd/src/addons/Settings.js +465 -0
- package/dist/openscd/src/addons/Settings.js.map +1 -0
- package/dist/openscd/src/addons/Waiter.js +45 -0
- package/dist/openscd/src/addons/Waiter.js.map +1 -0
- package/dist/openscd/src/addons/Wizards.js +48 -0
- package/dist/openscd/src/addons/Wizards.js.map +1 -0
- package/dist/openscd/src/addons/editor/edit-action-to-v1-converter.js +96 -0
- package/dist/openscd/src/addons/editor/edit-action-to-v1-converter.js.map +1 -0
- package/dist/openscd/src/addons/editor/edit-v1-to-v2-converter.js +37 -0
- package/dist/openscd/src/addons/editor/edit-v1-to-v2-converter.js.map +1 -0
- package/dist/openscd/src/addons/history/get-log-text.js +26 -0
- package/dist/openscd/src/addons/history/get-log-text.js.map +1 -0
- package/dist/openscd/src/addons/menu-tabs/menu-tabs.js +74 -0
- package/dist/openscd/src/addons/menu-tabs/menu-tabs.js.map +1 -0
- package/dist/openscd/src/addons/plugin-manager/custom-plugin-dialog.js +177 -0
- package/dist/openscd/src/addons/plugin-manager/custom-plugin-dialog.js.map +1 -0
- package/dist/openscd/src/addons/plugin-manager/plugin-manager.js +165 -0
- package/dist/openscd/src/addons/plugin-manager/plugin-manager.js.map +1 -0
- package/dist/openscd/src/filtered-list.js +168 -0
- package/dist/openscd/src/filtered-list.js.map +1 -0
- package/dist/openscd/src/finder-list.js +207 -0
- package/dist/openscd/src/finder-list.js.map +1 -0
- package/dist/openscd/src/foundation/compare.js +273 -0
- package/dist/openscd/src/foundation/compare.js.map +1 -0
- package/dist/openscd/src/foundation/dai.js +127 -0
- package/dist/openscd/src/foundation/dai.js.map +1 -0
- package/dist/openscd/src/foundation/generators.js +67 -0
- package/dist/openscd/src/foundation/generators.js.map +1 -0
- package/dist/openscd/src/foundation/ied.js +84 -0
- package/dist/openscd/src/foundation/ied.js.map +1 -0
- package/dist/openscd/src/foundation/nsd.js +13 -0
- package/dist/openscd/src/foundation/nsd.js.map +1 -0
- package/dist/openscd/src/foundation/nsdoc.js +180 -0
- package/dist/openscd/src/foundation/nsdoc.js.map +1 -0
- package/dist/openscd/src/foundation/scl.js +64 -0
- package/dist/openscd/src/foundation/scl.js.map +1 -0
- package/dist/openscd/src/foundation.js +1922 -0
- package/dist/openscd/src/foundation.js.map +1 -0
- package/dist/openscd/src/icons/compare.js +11 -0
- package/dist/openscd/src/icons/compare.js.map +1 -0
- package/dist/openscd/src/icons/icons.js +611 -0
- package/dist/openscd/src/icons/icons.js.map +1 -0
- package/dist/openscd/src/icons/ied-icons.js +11 -0
- package/dist/openscd/src/icons/ied-icons.js.map +1 -0
- package/dist/openscd/src/icons/lnode.js +50 -0
- package/dist/openscd/src/icons/lnode.js.map +1 -0
- package/dist/openscd/src/open-scd.js +483 -0
- package/dist/openscd/src/open-scd.js.map +1 -0
- package/dist/openscd/src/oscd-filter-button.js +89 -0
- package/dist/openscd/src/oscd-filter-button.js.map +1 -0
- package/dist/openscd/src/plain-compare-list.js +132 -0
- package/dist/openscd/src/plain-compare-list.js.map +1 -0
- package/dist/openscd/src/plugin-tag.js +23 -0
- package/dist/openscd/src/plugin-tag.js.map +1 -0
- package/dist/openscd/src/plugin.events.js +12 -0
- package/dist/openscd/src/plugin.events.js.map +1 -0
- package/dist/openscd/src/plugin.js +2 -0
- package/dist/openscd/src/plugin.js.map +1 -0
- package/dist/openscd/src/plugins.js +256 -0
- package/dist/openscd/src/plugins.js.map +1 -0
- package/dist/openscd/src/schemas.js +9325 -0
- package/dist/openscd/src/schemas.js.map +1 -0
- package/dist/openscd/src/themes.js +122 -0
- package/dist/openscd/src/themes.js.map +1 -0
- package/dist/openscd/src/translations/de.js +954 -0
- package/dist/openscd/src/translations/de.js.map +1 -0
- package/dist/openscd/src/translations/en.js +950 -0
- package/dist/openscd/src/translations/en.js.map +1 -0
- package/dist/openscd/src/translations/loader.js +10 -0
- package/dist/openscd/src/translations/loader.js.map +1 -0
- package/dist/openscd/src/wizard-checkbox.js +152 -0
- package/dist/openscd/src/wizard-checkbox.js.map +1 -0
- package/dist/openscd/src/wizard-dialog.js +374 -0
- package/dist/openscd/src/wizard-dialog.js.map +1 -0
- package/dist/openscd/src/wizard-select.js +115 -0
- package/dist/openscd/src/wizard-select.js.map +1 -0
- package/dist/openscd/src/wizard-textfield.js +191 -0
- package/dist/openscd/src/wizard-textfield.js.map +1 -0
- package/dist/openscd/src/wizards.js +196 -0
- package/dist/openscd/src/wizards.js.map +1 -0
- package/dist/oscd-filter-button.d.ts +27 -27
- package/dist/oscd-filter-button.js +59 -59
- package/dist/plain-compare-list.d.ts +36 -36
- package/dist/plain-compare-list.js +70 -70
- package/dist/plugin-tag.d.ts +6 -6
- package/dist/plugin-tag.js +22 -22
- package/dist/plugin.d.ts +23 -23
- package/dist/plugin.events.d.ts +15 -15
- package/dist/plugin.events.js +11 -11
- package/dist/plugin.js +1 -1
- package/dist/plugin.js.map +1 -1
- package/dist/plugins.d.ts +3 -3
- package/dist/plugins.js +255 -255
- package/dist/schemas.d.ts +58 -58
- package/dist/schemas.js +59 -59
- package/dist/themes.d.ts +3 -3
- package/dist/themes.js +13 -13
- package/dist/themes.js.map +1 -1
- package/dist/translations/de.d.ts +2 -2
- package/dist/translations/de.js +952 -952
- package/dist/translations/en.d.ts +963 -963
- package/dist/translations/en.js +948 -948
- package/dist/translations/loader.d.ts +12 -12
- package/dist/translations/loader.js +9 -9
- package/dist/translations/loader.js.map +1 -1
- package/dist/wizard-checkbox.d.ts +37 -37
- package/dist/wizard-checkbox.js +130 -130
- package/dist/wizard-dialog.d.ts +45 -45
- package/dist/wizard-dialog.js +235 -235
- package/dist/wizard-dialog.js.map +1 -1
- package/dist/wizard-select.d.ts +31 -31
- package/dist/wizard-select.js +102 -102
- package/dist/wizard-textfield.d.ts +50 -50
- package/dist/wizard-textfield.js +162 -162
- package/dist/wizards.d.ts +23 -23
- package/dist/wizards.js +148 -148
- package/dist/wizards.js.map +1 -1
- package/dist/xml/src/foundation.js +67 -0
- package/dist/xml/src/foundation.js.map +1 -0
- package/dist/xml/src/index.js +2 -0
- package/dist/xml/src/index.js.map +1 -0
- package/package.json +38 -127
- package/dist/Wizarding.d.ts +0 -10
package/dist/addons/Editor.js
CHANGED
|
@@ -1,106 +1,106 @@
|
|
|
1
|
-
import { __decorate } from "tslib";
|
|
2
|
-
import { newEditEvent, newEditEventV2 } from '@
|
|
3
|
-
import { property, LitElement, customElement, html, } from 'lit-element';
|
|
4
|
-
import { get } from 'lit-translate';
|
|
5
|
-
import { newLogEvent } from '@
|
|
6
|
-
import { newValidateEvent } from '@
|
|
7
|
-
import { isComplex, isInsert, isRemove, isUpdate, } from '@
|
|
8
|
-
import { convertEditActiontoV1 } from './editor/edit-action-to-v1-converter.js';
|
|
9
|
-
import { convertEditV1toV2 } from './editor/edit-v1-to-v2-converter.js';
|
|
10
|
-
let OscdEditor = class OscdEditor extends LitElement {
|
|
11
|
-
constructor() {
|
|
12
|
-
super(...arguments);
|
|
13
|
-
/** The `XMLDocument` to be edited */
|
|
14
|
-
this.doc = null;
|
|
15
|
-
/** The name of the current [[`doc`]] */
|
|
16
|
-
this.docName = '';
|
|
17
|
-
/** The UUID of the current [[`doc`]] */
|
|
18
|
-
this.docId = '';
|
|
19
|
-
}
|
|
20
|
-
onAction(event) {
|
|
21
|
-
const edit = convertEditActiontoV1(event.detail.action);
|
|
22
|
-
const editV2 = convertEditV1toV2(edit);
|
|
23
|
-
this.host.dispatchEvent(newEditEventV2(editV2));
|
|
24
|
-
}
|
|
25
|
-
handleEditEvent(event) {
|
|
26
|
-
/**
|
|
27
|
-
* This is a compatibility fix for plugins based on open energy tools edit events
|
|
28
|
-
* because their edit event look slightly different
|
|
29
|
-
* see https://github.com/OpenEnergyTools/open-scd-core/blob/main/foundation/edit-event-v1.ts for details
|
|
30
|
-
*/
|
|
31
|
-
if (isOpenEnergyEditEvent(event)) {
|
|
32
|
-
event = convertOpenEnergyEditEventToEditEvent(event);
|
|
33
|
-
}
|
|
34
|
-
const edit = event.detail.edit;
|
|
35
|
-
const editV2 = convertEditV1toV2(edit);
|
|
36
|
-
this.host.dispatchEvent(newEditEventV2(editV2));
|
|
37
|
-
}
|
|
38
|
-
/**
|
|
39
|
-
*
|
|
40
|
-
* @deprecated [Move to handleOpenDoc instead]
|
|
41
|
-
*/
|
|
42
|
-
async onOpenDoc(event) {
|
|
43
|
-
this.doc = event.detail.doc;
|
|
44
|
-
this.docName = event.detail.docName;
|
|
45
|
-
this.docId = event.detail.docId ?? '';
|
|
46
|
-
await this.updateComplete;
|
|
47
|
-
this.dispatchEvent(newValidateEvent());
|
|
48
|
-
this.dispatchEvent(newLogEvent({
|
|
49
|
-
kind: 'info',
|
|
50
|
-
title: get('openSCD.loaded', { name: this.docName }),
|
|
51
|
-
}));
|
|
52
|
-
}
|
|
53
|
-
handleOpenDoc({ detail: { docName, doc } }) {
|
|
54
|
-
this.doc = doc;
|
|
55
|
-
this.docName = docName;
|
|
56
|
-
}
|
|
57
|
-
connectedCallback() {
|
|
58
|
-
super.connectedCallback();
|
|
59
|
-
// Deprecated editor action API, use 'oscd-edit' instead.
|
|
60
|
-
this.host.addEventListener('editor-action', this.onAction.bind(this));
|
|
61
|
-
// Deprecated edit event API, use 'oscd-edit-v2' instead.
|
|
62
|
-
this.host.addEventListener('oscd-edit', event => this.handleEditEvent(event));
|
|
63
|
-
this.host.addEventListener('oscd-edit-v2', event => this.handleEditEventV2(event));
|
|
64
|
-
this.host.addEventListener('open-doc', this.onOpenDoc);
|
|
65
|
-
this.host.addEventListener('oscd-open', this.handleOpenDoc);
|
|
66
|
-
}
|
|
67
|
-
render() {
|
|
68
|
-
return html `<slot></slot>`;
|
|
69
|
-
}
|
|
70
|
-
async handleEditEventV2(event) {
|
|
71
|
-
const { edit, title, squash } = event.detail;
|
|
72
|
-
this.editor.commit(edit, { title, squash });
|
|
73
|
-
await this.updateComplete;
|
|
74
|
-
this.dispatchEvent(newValidateEvent());
|
|
75
|
-
}
|
|
76
|
-
};
|
|
77
|
-
__decorate([
|
|
78
|
-
property({ attribute: false })
|
|
79
|
-
], OscdEditor.prototype, "doc", void 0);
|
|
80
|
-
__decorate([
|
|
81
|
-
property({ type: String })
|
|
82
|
-
], OscdEditor.prototype, "docName", void 0);
|
|
83
|
-
__decorate([
|
|
84
|
-
property({ type: String })
|
|
85
|
-
], OscdEditor.prototype, "docId", void 0);
|
|
86
|
-
__decorate([
|
|
87
|
-
property({ type: Object })
|
|
88
|
-
], OscdEditor.prototype, "editor", void 0);
|
|
89
|
-
__decorate([
|
|
90
|
-
property({
|
|
91
|
-
type: Object,
|
|
92
|
-
})
|
|
93
|
-
], OscdEditor.prototype, "host", void 0);
|
|
94
|
-
OscdEditor = __decorate([
|
|
95
|
-
customElement('oscd-editor')
|
|
96
|
-
], OscdEditor);
|
|
97
|
-
export { OscdEditor };
|
|
98
|
-
function isOpenEnergyEditEvent(event) {
|
|
99
|
-
const eventDetail = event.detail;
|
|
100
|
-
return isComplex(eventDetail) || isInsert(eventDetail) || isUpdate(eventDetail) || isRemove(eventDetail);
|
|
101
|
-
}
|
|
102
|
-
function convertOpenEnergyEditEventToEditEvent(event) {
|
|
103
|
-
const eventDetail = event.detail;
|
|
104
|
-
return newEditEvent(eventDetail);
|
|
105
|
-
}
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { newEditEvent, newEditEventV2 } from '@openscd/core';
|
|
3
|
+
import { property, LitElement, customElement, html, } from 'lit-element';
|
|
4
|
+
import { get } from 'lit-translate';
|
|
5
|
+
import { newLogEvent } from '@openscd/core/foundation/deprecated/history.js';
|
|
6
|
+
import { newValidateEvent } from '@openscd/core/foundation/deprecated/validation.js';
|
|
7
|
+
import { isComplex, isInsert, isRemove, isUpdate, } from '@openscd/core';
|
|
8
|
+
import { convertEditActiontoV1 } from './editor/edit-action-to-v1-converter.js';
|
|
9
|
+
import { convertEditV1toV2 } from './editor/edit-v1-to-v2-converter.js';
|
|
10
|
+
let OscdEditor = class OscdEditor extends LitElement {
|
|
11
|
+
constructor() {
|
|
12
|
+
super(...arguments);
|
|
13
|
+
/** The `XMLDocument` to be edited */
|
|
14
|
+
this.doc = null;
|
|
15
|
+
/** The name of the current [[`doc`]] */
|
|
16
|
+
this.docName = '';
|
|
17
|
+
/** The UUID of the current [[`doc`]] */
|
|
18
|
+
this.docId = '';
|
|
19
|
+
}
|
|
20
|
+
onAction(event) {
|
|
21
|
+
const edit = convertEditActiontoV1(event.detail.action);
|
|
22
|
+
const editV2 = convertEditV1toV2(edit);
|
|
23
|
+
this.host.dispatchEvent(newEditEventV2(editV2));
|
|
24
|
+
}
|
|
25
|
+
handleEditEvent(event) {
|
|
26
|
+
/**
|
|
27
|
+
* This is a compatibility fix for plugins based on open energy tools edit events
|
|
28
|
+
* because their edit event look slightly different
|
|
29
|
+
* see https://github.com/OpenEnergyTools/open-scd-core/blob/main/foundation/edit-event-v1.ts for details
|
|
30
|
+
*/
|
|
31
|
+
if (isOpenEnergyEditEvent(event)) {
|
|
32
|
+
event = convertOpenEnergyEditEventToEditEvent(event);
|
|
33
|
+
}
|
|
34
|
+
const edit = event.detail.edit;
|
|
35
|
+
const editV2 = convertEditV1toV2(edit);
|
|
36
|
+
this.host.dispatchEvent(newEditEventV2(editV2));
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
*
|
|
40
|
+
* @deprecated [Move to handleOpenDoc instead]
|
|
41
|
+
*/
|
|
42
|
+
async onOpenDoc(event) {
|
|
43
|
+
this.doc = event.detail.doc;
|
|
44
|
+
this.docName = event.detail.docName;
|
|
45
|
+
this.docId = event.detail.docId ?? '';
|
|
46
|
+
await this.updateComplete;
|
|
47
|
+
this.dispatchEvent(newValidateEvent());
|
|
48
|
+
this.dispatchEvent(newLogEvent({
|
|
49
|
+
kind: 'info',
|
|
50
|
+
title: get('openSCD.loaded', { name: this.docName }),
|
|
51
|
+
}));
|
|
52
|
+
}
|
|
53
|
+
handleOpenDoc({ detail: { docName, doc } }) {
|
|
54
|
+
this.doc = doc;
|
|
55
|
+
this.docName = docName;
|
|
56
|
+
}
|
|
57
|
+
connectedCallback() {
|
|
58
|
+
super.connectedCallback();
|
|
59
|
+
// Deprecated editor action API, use 'oscd-edit' instead.
|
|
60
|
+
this.host.addEventListener('editor-action', this.onAction.bind(this));
|
|
61
|
+
// Deprecated edit event API, use 'oscd-edit-v2' instead.
|
|
62
|
+
this.host.addEventListener('oscd-edit', event => this.handleEditEvent(event));
|
|
63
|
+
this.host.addEventListener('oscd-edit-v2', event => this.handleEditEventV2(event));
|
|
64
|
+
this.host.addEventListener('open-doc', this.onOpenDoc);
|
|
65
|
+
this.host.addEventListener('oscd-open', this.handleOpenDoc);
|
|
66
|
+
}
|
|
67
|
+
render() {
|
|
68
|
+
return html `<slot></slot>`;
|
|
69
|
+
}
|
|
70
|
+
async handleEditEventV2(event) {
|
|
71
|
+
const { edit, title, squash } = event.detail;
|
|
72
|
+
this.editor.commit(edit, { title, squash });
|
|
73
|
+
await this.updateComplete;
|
|
74
|
+
this.dispatchEvent(newValidateEvent());
|
|
75
|
+
}
|
|
76
|
+
};
|
|
77
|
+
__decorate([
|
|
78
|
+
property({ attribute: false })
|
|
79
|
+
], OscdEditor.prototype, "doc", void 0);
|
|
80
|
+
__decorate([
|
|
81
|
+
property({ type: String })
|
|
82
|
+
], OscdEditor.prototype, "docName", void 0);
|
|
83
|
+
__decorate([
|
|
84
|
+
property({ type: String })
|
|
85
|
+
], OscdEditor.prototype, "docId", void 0);
|
|
86
|
+
__decorate([
|
|
87
|
+
property({ type: Object })
|
|
88
|
+
], OscdEditor.prototype, "editor", void 0);
|
|
89
|
+
__decorate([
|
|
90
|
+
property({
|
|
91
|
+
type: Object,
|
|
92
|
+
})
|
|
93
|
+
], OscdEditor.prototype, "host", void 0);
|
|
94
|
+
OscdEditor = __decorate([
|
|
95
|
+
customElement('oscd-editor')
|
|
96
|
+
], OscdEditor);
|
|
97
|
+
export { OscdEditor };
|
|
98
|
+
function isOpenEnergyEditEvent(event) {
|
|
99
|
+
const eventDetail = event.detail;
|
|
100
|
+
return isComplex(eventDetail) || isInsert(eventDetail) || isUpdate(eventDetail) || isRemove(eventDetail);
|
|
101
|
+
}
|
|
102
|
+
function convertOpenEnergyEditEventToEditEvent(event) {
|
|
103
|
+
const eventDetail = event.detail;
|
|
104
|
+
return newEditEvent(eventDetail);
|
|
105
|
+
}
|
|
106
106
|
//# sourceMappingURL=Editor.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Editor.js","sourceRoot":"","sources":["../../src/addons/Editor.ts"],"names":[],"mappings":";AAAA,OAAO,EAGL,YAAY,EACZ,cAAc,EAEf,MAAM,
|
|
1
|
+
{"version":3,"file":"Editor.js","sourceRoot":"","sources":["../../src/addons/Editor.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n EditEventV2,\n OpenEvent,\n newEditEvent,\n newEditEventV2,\n XMLEditor\n} from '@openscd/core';\nimport {\n property,\n LitElement,\n customElement,\n TemplateResult,\n html,\n} from 'lit-element';\nimport { get } from 'lit-translate';\n\nimport {\n EditorAction,\n EditorActionEvent,\n} from '@openscd/core/foundation/deprecated/editor.js';\n\nimport { newLogEvent } from '@openscd/core/foundation/deprecated/history.js';\nimport { newValidateEvent } from '@openscd/core/foundation/deprecated/validation.js';\nimport { OpenDocEvent } from '@openscd/core/foundation/deprecated/open-event.js';\n\nimport {\n Edit,\n EditEvent,\n isComplex,\n isInsert,\n isRemove,\n isUpdate,\n} from '@openscd/core';\n\nimport { convertEditActiontoV1 } from './editor/edit-action-to-v1-converter.js';\nimport { convertEditV1toV2 } from './editor/edit-v1-to-v2-converter.js';\n\n@customElement('oscd-editor')\nexport class OscdEditor extends LitElement {\n /** The `XMLDocument` to be edited */\n @property({ attribute: false })\n doc: XMLDocument | null = null;\n /** The name of the current [[`doc`]] */\n @property({ type: String }) docName = '';\n /** The UUID of the current [[`doc`]] */\n @property({ type: String }) docId = '';\n /** XML Editor to apply changes to the scd */\n @property({ type: Object }) editor!: XMLEditor;\n\n @property({\n type: Object,\n })\n host!: HTMLElement;\n\n private onAction(event: EditorActionEvent<EditorAction>) {\n const edit = convertEditActiontoV1(event.detail.action);\n const editV2 = convertEditV1toV2(edit);\n\n this.host.dispatchEvent(newEditEventV2(editV2));\n }\n\n handleEditEvent(event: EditEvent) {\n /**\n * This is a compatibility fix for plugins based on open energy tools edit events\n * because their edit event look slightly different\n * see https://github.com/OpenEnergyTools/open-scd-core/blob/main/foundation/edit-event-v1.ts for details\n */\n if (isOpenEnergyEditEvent(event)) {\n event = convertOpenEnergyEditEventToEditEvent(event);\n }\n\n const edit = event.detail.edit;\n const editV2 = convertEditV1toV2(edit);\n\n this.host.dispatchEvent(newEditEventV2(editV2));\n }\n\n /**\n *\n * @deprecated [Move to handleOpenDoc instead]\n */\n private async onOpenDoc(event: OpenDocEvent) {\n this.doc = event.detail.doc;\n this.docName = event.detail.docName;\n this.docId = event.detail.docId ?? '';\n\n await this.updateComplete;\n\n this.dispatchEvent(newValidateEvent());\n\n this.dispatchEvent(\n newLogEvent({\n kind: 'info',\n title: get('openSCD.loaded', { name: this.docName }),\n })\n );\n }\n\n handleOpenDoc({ detail: { docName, doc } }: OpenEvent) {\n this.doc = doc;\n this.docName = docName;\n }\n\n connectedCallback(): void {\n super.connectedCallback();\n\n // Deprecated editor action API, use 'oscd-edit' instead.\n this.host.addEventListener('editor-action', this.onAction.bind(this));\n // Deprecated edit event API, use 'oscd-edit-v2' instead.\n this.host.addEventListener('oscd-edit', event => this.handleEditEvent(event));\n\n this.host.addEventListener('oscd-edit-v2', event => this.handleEditEventV2(event));\n this.host.addEventListener('open-doc', this.onOpenDoc);\n this.host.addEventListener('oscd-open', this.handleOpenDoc);\n }\n\n render(): TemplateResult {\n return html`<slot></slot>`;\n }\n\n async handleEditEventV2(event: EditEventV2) {\n const { edit, title, squash } = event.detail;\n\n this.editor.commit(edit, { title, squash });\n\n await this.updateComplete;\n this.dispatchEvent(newValidateEvent());\n }\n}\n\nfunction isOpenEnergyEditEvent(event: CustomEvent<unknown>): boolean {\n const eventDetail = event.detail as Edit;\n return isComplex(eventDetail) || isInsert(eventDetail) || isUpdate(eventDetail) || isRemove(eventDetail);\n}\n\nfunction convertOpenEnergyEditEventToEditEvent(event: CustomEvent<unknown>): EditEvent {\n const eventDetail = event.detail as Edit;\n return newEditEvent(eventDetail);\n}\n"]}
|
package/dist/addons/History.d.ts
CHANGED
|
@@ -1,93 +1,86 @@
|
|
|
1
|
-
import { TemplateResult, LitElement } from 'lit-element';
|
|
2
|
-
import '@material/mwc-button';
|
|
3
|
-
import '@material/mwc-dialog';
|
|
4
|
-
import '@material/mwc-icon';
|
|
5
|
-
import '@material/mwc-icon-button';
|
|
6
|
-
import '@material/mwc-icon-button-toggle';
|
|
7
|
-
import '@material/mwc-list';
|
|
8
|
-
import '@material/mwc-list/mwc-list-item';
|
|
9
|
-
import '@material/mwc-snackbar';
|
|
10
|
-
import { Dialog } from '@material/mwc-dialog';
|
|
11
|
-
import { Snackbar } from '@material/mwc-snackbar';
|
|
12
|
-
import '../filtered-list.js';
|
|
13
|
-
import { InfoEntry, IssueDetail, LogEntry } from '@
|
|
14
|
-
import { XMLEditor } from '@
|
|
15
|
-
interface HistoryItem {
|
|
16
|
-
title: string;
|
|
17
|
-
message?: string;
|
|
18
|
-
time: number;
|
|
19
|
-
isActive: boolean;
|
|
20
|
-
}
|
|
21
|
-
export declare
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
export
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
private
|
|
61
|
-
private
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
private
|
|
70
|
-
private
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
private
|
|
77
|
-
private
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
}
|
|
87
|
-
declare global {
|
|
88
|
-
interface ElementEventMap {
|
|
89
|
-
'history-dialog-ui': CustomEvent<HistoryUIDetail>;
|
|
90
|
-
'empty-issues': CustomEvent<EmptyIssuesDetail>;
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
export {};
|
|
1
|
+
import { TemplateResult, LitElement } from 'lit-element';
|
|
2
|
+
import '@material/mwc-button';
|
|
3
|
+
import '@material/mwc-dialog';
|
|
4
|
+
import '@material/mwc-icon';
|
|
5
|
+
import '@material/mwc-icon-button';
|
|
6
|
+
import '@material/mwc-icon-button-toggle';
|
|
7
|
+
import '@material/mwc-list';
|
|
8
|
+
import '@material/mwc-list/mwc-list-item';
|
|
9
|
+
import '@material/mwc-snackbar';
|
|
10
|
+
import { Dialog } from '@material/mwc-dialog';
|
|
11
|
+
import { Snackbar } from '@material/mwc-snackbar';
|
|
12
|
+
import '../filtered-list.js';
|
|
13
|
+
import { InfoEntry, IssueDetail, LogEntry } from '@openscd/core/foundation/deprecated/history.js';
|
|
14
|
+
import { XMLEditor } from '@openscd/core';
|
|
15
|
+
interface HistoryItem {
|
|
16
|
+
title: string;
|
|
17
|
+
message?: string;
|
|
18
|
+
time: number;
|
|
19
|
+
isActive: boolean;
|
|
20
|
+
}
|
|
21
|
+
export declare enum HistoryUIKind {
|
|
22
|
+
log = "log",
|
|
23
|
+
history = "history",
|
|
24
|
+
diagnostic = "diagnostic"
|
|
25
|
+
}
|
|
26
|
+
export interface HistoryUIDetail {
|
|
27
|
+
show: boolean;
|
|
28
|
+
kind: HistoryUIKind;
|
|
29
|
+
}
|
|
30
|
+
export type HistoryUIEvent = CustomEvent<HistoryUIDetail>;
|
|
31
|
+
export declare function newHistoryUIEvent(show: boolean, kind: HistoryUIKind, eventInitDict?: CustomEventInit<Partial<HistoryUIDetail>>): HistoryUIEvent;
|
|
32
|
+
export interface EmptyIssuesDetail {
|
|
33
|
+
pluginSrc: string;
|
|
34
|
+
}
|
|
35
|
+
export type EmptyIssuesEvent = CustomEvent<EmptyIssuesDetail>;
|
|
36
|
+
export declare function newEmptyIssuesEvent(pluginSrc: string, eventInitDict?: CustomEventInit<Partial<EmptyIssuesDetail>>): EmptyIssuesEvent;
|
|
37
|
+
export declare class OscdHistory extends LitElement {
|
|
38
|
+
/** All [[`LogEntry`]]s received so far through [[`LogEvent`]]s. */
|
|
39
|
+
log: InfoEntry[];
|
|
40
|
+
/** XML Editor to apply changes to the scd */
|
|
41
|
+
editor: XMLEditor;
|
|
42
|
+
diagnoses: Map<string, IssueDetail[]>;
|
|
43
|
+
host: HTMLElement;
|
|
44
|
+
latestIssue: IssueDetail;
|
|
45
|
+
history: HistoryItem[];
|
|
46
|
+
logUI: Dialog;
|
|
47
|
+
historyUI: Dialog;
|
|
48
|
+
diagnosticUI: Dialog;
|
|
49
|
+
errorUI: Snackbar;
|
|
50
|
+
warningUI: Snackbar;
|
|
51
|
+
infoUI: Snackbar;
|
|
52
|
+
issueUI: Snackbar;
|
|
53
|
+
private unsubscribers;
|
|
54
|
+
private onIssue;
|
|
55
|
+
undo(): void;
|
|
56
|
+
redo(): void;
|
|
57
|
+
private onReset;
|
|
58
|
+
private onInfo;
|
|
59
|
+
private onLog;
|
|
60
|
+
private historyUIHandler;
|
|
61
|
+
private emptyIssuesHandler;
|
|
62
|
+
private handleKeyPress;
|
|
63
|
+
private updateHistory;
|
|
64
|
+
constructor();
|
|
65
|
+
connectedCallback(): void;
|
|
66
|
+
disconnectedCallback(): void;
|
|
67
|
+
renderLogEntry(entry: InfoEntry, index: number, log: LogEntry[]): TemplateResult;
|
|
68
|
+
renderHistoryEntry(entry: HistoryItem): TemplateResult;
|
|
69
|
+
private formatTime;
|
|
70
|
+
private renderLog;
|
|
71
|
+
private renderHistory;
|
|
72
|
+
private renderIssueEntry;
|
|
73
|
+
renderValidatorsIssues(issues: IssueDetail[]): TemplateResult[];
|
|
74
|
+
private renderIssues;
|
|
75
|
+
private renderFilterButtons;
|
|
76
|
+
private renderLogDialog;
|
|
77
|
+
private renderHistoryUI;
|
|
78
|
+
render(): TemplateResult;
|
|
79
|
+
}
|
|
80
|
+
declare global {
|
|
81
|
+
interface ElementEventMap {
|
|
82
|
+
'history-dialog-ui': CustomEvent<HistoryUIDetail>;
|
|
83
|
+
'empty-issues': CustomEvent<EmptyIssuesDetail>;
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
export {};
|