@compas-oscd/open-scd 0.34.22 → 0.34.24
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 +1 -0
- package/dist/WizardDivider.d.ts.map +1 -0
- package/dist/Wizarding.d.ts +20 -0
- package/dist/Wizarding.d.ts.map +1 -0
- package/dist/Wizarding.js +4 -1
- package/dist/Wizarding.js.map +1 -1
- package/dist/action-icon.d.ts +1 -0
- package/dist/action-icon.d.ts.map +1 -0
- package/dist/action-pane.d.ts +1 -0
- package/dist/action-pane.d.ts.map +1 -0
- package/dist/addons/Editor.d.ts +1 -0
- package/dist/addons/Editor.d.ts.map +1 -0
- package/dist/addons/History.d.ts +12 -1
- package/dist/addons/History.d.ts.map +1 -0
- package/dist/addons/History.js +10 -0
- package/dist/addons/History.js.map +1 -1
- package/dist/addons/Layout.d.ts +1 -0
- package/dist/addons/Layout.d.ts.map +1 -0
- package/dist/addons/Settings.d.ts +1 -0
- package/dist/addons/Settings.d.ts.map +1 -0
- package/dist/addons/Waiter.d.ts +1 -0
- package/dist/addons/Waiter.d.ts.map +1 -0
- package/dist/addons/Wizards.d.ts +1 -0
- package/dist/addons/Wizards.d.ts.map +1 -0
- package/dist/addons/editor/edit-action-to-v1-converter.d.ts +1 -0
- package/dist/addons/editor/edit-action-to-v1-converter.d.ts.map +1 -0
- package/dist/addons/editor/edit-v1-to-v2-converter.d.ts +1 -0
- package/dist/addons/editor/edit-v1-to-v2-converter.d.ts.map +1 -0
- package/dist/addons/history/get-log-text.d.ts +1 -0
- package/dist/addons/history/get-log-text.d.ts.map +1 -0
- package/dist/addons/menu-tabs/menu-tabs.d.ts +1 -0
- package/dist/addons/menu-tabs/menu-tabs.d.ts.map +1 -0
- package/dist/addons/plugin-manager/custom-plugin-dialog.d.ts +1 -0
- package/dist/addons/plugin-manager/custom-plugin-dialog.d.ts.map +1 -0
- package/dist/addons/plugin-manager/plugin-manager.d.ts +1 -0
- package/dist/addons/plugin-manager/plugin-manager.d.ts.map +1 -0
- package/dist/filtered-list.d.ts +1 -0
- package/dist/filtered-list.d.ts.map +1 -0
- package/dist/finder-list.d.ts +1 -0
- package/dist/finder-list.d.ts.map +1 -0
- package/dist/foundation/compare.d.ts +1 -0
- package/dist/foundation/compare.d.ts.map +1 -0
- package/dist/foundation/dai.d.ts +1 -0
- package/dist/foundation/dai.d.ts.map +1 -0
- package/dist/foundation/generators.d.ts +1 -0
- package/dist/foundation/generators.d.ts.map +1 -0
- package/dist/foundation/ied.d.ts +1 -0
- package/dist/foundation/ied.d.ts.map +1 -0
- package/dist/foundation/nsd.d.ts +1 -0
- package/dist/foundation/nsd.d.ts.map +1 -0
- package/dist/foundation/nsdoc.d.ts +1 -0
- package/dist/foundation/nsdoc.d.ts.map +1 -0
- package/dist/foundation/scl.d.ts +1 -0
- package/dist/foundation/scl.d.ts.map +1 -0
- package/dist/foundation.d.ts +1 -0
- package/dist/foundation.d.ts.map +1 -0
- package/dist/icons/compare.d.ts +1 -0
- package/dist/icons/compare.d.ts.map +1 -0
- package/dist/icons/icons.d.ts +1 -0
- package/dist/icons/icons.d.ts.map +1 -0
- package/dist/icons/ied-icons.d.ts +1 -0
- package/dist/icons/ied-icons.d.ts.map +1 -0
- package/dist/icons/lnode.d.ts +1 -0
- package/dist/icons/lnode.d.ts.map +1 -0
- package/dist/index.d.ts +22 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +24 -0
- package/dist/index.js.map +1 -0
- package/dist/open-scd.d.ts +1 -0
- package/dist/open-scd.d.ts.map +1 -0
- package/dist/oscd-filter-button.d.ts +1 -0
- package/dist/oscd-filter-button.d.ts.map +1 -0
- package/dist/plain-compare-list.d.ts +1 -0
- package/dist/plain-compare-list.d.ts.map +1 -0
- package/dist/plugin-tag.d.ts +1 -0
- package/dist/plugin-tag.d.ts.map +1 -0
- package/dist/plugin.d.ts +1 -0
- package/dist/plugin.d.ts.map +1 -0
- package/dist/plugin.events.d.ts +1 -0
- package/dist/plugin.events.d.ts.map +1 -0
- package/dist/plugins.d.ts +1 -0
- package/dist/plugins.d.ts.map +1 -0
- package/dist/schemas.d.ts +1 -0
- package/dist/schemas.d.ts.map +1 -0
- package/dist/themes.d.ts +1 -0
- package/dist/themes.d.ts.map +1 -0
- package/dist/translations/de.d.ts +1 -0
- package/dist/translations/de.d.ts.map +1 -0
- package/dist/translations/en.d.ts +1 -0
- package/dist/translations/en.d.ts.map +1 -0
- package/dist/translations/loader.d.ts +1 -0
- package/dist/translations/loader.d.ts.map +1 -0
- package/dist/wizard-checkbox.d.ts +1 -0
- package/dist/wizard-checkbox.d.ts.map +1 -0
- package/dist/wizard-dialog.d.ts +1 -0
- package/dist/wizard-dialog.d.ts.map +1 -0
- package/dist/wizard-select.d.ts +1 -0
- package/dist/wizard-select.d.ts.map +1 -0
- package/dist/wizard-textfield.d.ts +2 -1
- package/dist/wizard-textfield.d.ts.map +1 -0
- package/dist/wizards.d.ts +1 -0
- package/dist/wizards.d.ts.map +1 -0
- package/package.json +317 -47
- package/dist/core/api/api.js +0 -7
- package/dist/core/api/api.js.map +0 -1
- package/dist/core/api/editor/subject.js +0 -22
- package/dist/core/api/editor/subject.js.map +0 -1
- package/dist/core/api/editor/xml-editor.js +0 -82
- package/dist/core/api/editor/xml-editor.js.map +0 -1
- package/dist/core/api/plugin-state-api.js +0 -27
- package/dist/core/api/plugin-state-api.js.map +0 -1
- package/dist/core/foundation/cyrb64.js +0 -26
- package/dist/core/foundation/cyrb64.js.map +0 -1
- package/dist/core/foundation/deprecated/edit-event.js +0 -44
- package/dist/core/foundation/deprecated/edit-event.js.map +0 -1
- package/dist/core/foundation/deprecated/editor.js +0 -94
- package/dist/core/foundation/deprecated/editor.js.map +0 -1
- package/dist/core/foundation/deprecated/history.js +0 -17
- package/dist/core/foundation/deprecated/history.js.map +0 -1
- package/dist/core/foundation/deprecated/open-event.js +0 -9
- package/dist/core/foundation/deprecated/open-event.js.map +0 -1
- package/dist/core/foundation/deprecated/settings.js +0 -19
- package/dist/core/foundation/deprecated/settings.js.map +0 -1
- package/dist/core/foundation/deprecated/validation.js +0 -8
- package/dist/core/foundation/deprecated/validation.js.map +0 -1
- package/dist/core/foundation/deprecated/waiter.js +0 -12
- package/dist/core/foundation/deprecated/waiter.js.map +0 -1
- package/dist/core/foundation/edit-completed-event.js +0 -11
- package/dist/core/foundation/edit-completed-event.js.map +0 -1
- package/dist/core/foundation/edit-event.js +0 -8
- package/dist/core/foundation/edit-event.js.map +0 -1
- package/dist/core/foundation/edit.js +0 -31
- package/dist/core/foundation/edit.js.map +0 -1
- package/dist/core/foundation/handle-edit.js +0 -151
- package/dist/core/foundation/handle-edit.js.map +0 -1
- package/dist/core/foundation/open-event.js +0 -8
- package/dist/core/foundation/open-event.js.map +0 -1
- package/dist/core/foundation/plugin.js +0 -2
- package/dist/core/foundation/plugin.js.map +0 -1
- package/dist/core/foundation.js +0 -14
- package/dist/core/foundation.js.map +0 -1
- package/dist/core/locales.js +0 -21
- package/dist/core/locales.js.map +0 -1
- package/dist/openscd/src/WizardDivider.js +0 -37
- package/dist/openscd/src/WizardDivider.js.map +0 -1
- package/dist/openscd/src/Wizarding.js +0 -38
- package/dist/openscd/src/Wizarding.js.map +0 -1
- package/dist/openscd/src/action-icon.js +0 -220
- package/dist/openscd/src/action-icon.js.map +0 -1
- package/dist/openscd/src/action-pane.js +0 -176
- package/dist/openscd/src/action-pane.js.map +0 -1
- package/dist/openscd/src/addons/Editor.js +0 -106
- package/dist/openscd/src/addons/Editor.js.map +0 -1
- package/dist/openscd/src/addons/History.js +0 -581
- package/dist/openscd/src/addons/History.js.map +0 -1
- package/dist/openscd/src/addons/Layout.js +0 -619
- package/dist/openscd/src/addons/Layout.js.map +0 -1
- package/dist/openscd/src/addons/Settings.js +0 -465
- package/dist/openscd/src/addons/Settings.js.map +0 -1
- package/dist/openscd/src/addons/Waiter.js +0 -45
- package/dist/openscd/src/addons/Waiter.js.map +0 -1
- package/dist/openscd/src/addons/Wizards.js +0 -48
- package/dist/openscd/src/addons/Wizards.js.map +0 -1
- package/dist/openscd/src/addons/editor/edit-action-to-v1-converter.js +0 -96
- package/dist/openscd/src/addons/editor/edit-action-to-v1-converter.js.map +0 -1
- package/dist/openscd/src/addons/editor/edit-v1-to-v2-converter.js +0 -37
- package/dist/openscd/src/addons/editor/edit-v1-to-v2-converter.js.map +0 -1
- package/dist/openscd/src/addons/history/get-log-text.js +0 -26
- package/dist/openscd/src/addons/history/get-log-text.js.map +0 -1
- package/dist/openscd/src/addons/menu-tabs/menu-tabs.js +0 -74
- package/dist/openscd/src/addons/menu-tabs/menu-tabs.js.map +0 -1
- package/dist/openscd/src/addons/plugin-manager/custom-plugin-dialog.js +0 -177
- package/dist/openscd/src/addons/plugin-manager/custom-plugin-dialog.js.map +0 -1
- package/dist/openscd/src/addons/plugin-manager/plugin-manager.js +0 -165
- package/dist/openscd/src/addons/plugin-manager/plugin-manager.js.map +0 -1
- package/dist/openscd/src/filtered-list.js +0 -168
- package/dist/openscd/src/filtered-list.js.map +0 -1
- package/dist/openscd/src/finder-list.js +0 -207
- package/dist/openscd/src/finder-list.js.map +0 -1
- package/dist/openscd/src/foundation/compare.js +0 -273
- package/dist/openscd/src/foundation/compare.js.map +0 -1
- package/dist/openscd/src/foundation/dai.js +0 -127
- package/dist/openscd/src/foundation/dai.js.map +0 -1
- package/dist/openscd/src/foundation/generators.js +0 -67
- package/dist/openscd/src/foundation/generators.js.map +0 -1
- package/dist/openscd/src/foundation/ied.js +0 -84
- package/dist/openscd/src/foundation/ied.js.map +0 -1
- package/dist/openscd/src/foundation/nsd.js +0 -13
- package/dist/openscd/src/foundation/nsd.js.map +0 -1
- package/dist/openscd/src/foundation/nsdoc.js +0 -180
- package/dist/openscd/src/foundation/nsdoc.js.map +0 -1
- package/dist/openscd/src/foundation/scl.js +0 -64
- package/dist/openscd/src/foundation/scl.js.map +0 -1
- package/dist/openscd/src/foundation.js +0 -1922
- package/dist/openscd/src/foundation.js.map +0 -1
- package/dist/openscd/src/icons/compare.js +0 -11
- package/dist/openscd/src/icons/compare.js.map +0 -1
- package/dist/openscd/src/icons/icons.js +0 -611
- package/dist/openscd/src/icons/icons.js.map +0 -1
- package/dist/openscd/src/icons/ied-icons.js +0 -11
- package/dist/openscd/src/icons/ied-icons.js.map +0 -1
- package/dist/openscd/src/icons/lnode.js +0 -50
- package/dist/openscd/src/icons/lnode.js.map +0 -1
- package/dist/openscd/src/open-scd.js +0 -483
- package/dist/openscd/src/open-scd.js.map +0 -1
- package/dist/openscd/src/oscd-filter-button.js +0 -89
- package/dist/openscd/src/oscd-filter-button.js.map +0 -1
- package/dist/openscd/src/plain-compare-list.js +0 -132
- package/dist/openscd/src/plain-compare-list.js.map +0 -1
- package/dist/openscd/src/plugin-tag.js +0 -23
- package/dist/openscd/src/plugin-tag.js.map +0 -1
- package/dist/openscd/src/plugin.events.js +0 -12
- package/dist/openscd/src/plugin.events.js.map +0 -1
- package/dist/openscd/src/plugin.js +0 -2
- package/dist/openscd/src/plugin.js.map +0 -1
- package/dist/openscd/src/plugins.js +0 -256
- package/dist/openscd/src/plugins.js.map +0 -1
- package/dist/openscd/src/schemas.js +0 -9325
- package/dist/openscd/src/schemas.js.map +0 -1
- package/dist/openscd/src/themes.js +0 -122
- package/dist/openscd/src/themes.js.map +0 -1
- package/dist/openscd/src/translations/de.js +0 -954
- package/dist/openscd/src/translations/de.js.map +0 -1
- package/dist/openscd/src/translations/en.js +0 -950
- package/dist/openscd/src/translations/en.js.map +0 -1
- package/dist/openscd/src/translations/loader.js +0 -10
- package/dist/openscd/src/translations/loader.js.map +0 -1
- package/dist/openscd/src/wizard-checkbox.js +0 -152
- package/dist/openscd/src/wizard-checkbox.js.map +0 -1
- package/dist/openscd/src/wizard-dialog.js +0 -374
- package/dist/openscd/src/wizard-dialog.js.map +0 -1
- package/dist/openscd/src/wizard-select.js +0 -115
- package/dist/openscd/src/wizard-select.js.map +0 -1
- package/dist/openscd/src/wizard-textfield.js +0 -191
- package/dist/openscd/src/wizard-textfield.js.map +0 -1
- package/dist/openscd/src/wizards.js +0 -196
- package/dist/openscd/src/wizards.js.map +0 -1
- package/dist/xml/src/foundation.js +0 -67
- package/dist/xml/src/foundation.js.map +0 -1
- package/dist/xml/src/index.js +0 -2
- package/dist/xml/src/index.js.map +0 -1
|
@@ -1,94 +0,0 @@
|
|
|
1
|
-
export function isCreate(action) {
|
|
2
|
-
return (action.old === undefined &&
|
|
3
|
-
action.new?.parent !== undefined &&
|
|
4
|
-
action.new?.element !== undefined);
|
|
5
|
-
}
|
|
6
|
-
export function isDelete(action) {
|
|
7
|
-
return (action.old?.parent !== undefined &&
|
|
8
|
-
action.old?.element !== undefined &&
|
|
9
|
-
action.new === undefined);
|
|
10
|
-
}
|
|
11
|
-
export function isMove(action) {
|
|
12
|
-
return (action.old?.parent !== undefined &&
|
|
13
|
-
action.old?.element !== undefined &&
|
|
14
|
-
action.new?.parent !== undefined &&
|
|
15
|
-
action.new?.element == undefined);
|
|
16
|
-
}
|
|
17
|
-
export function isReplace(action) {
|
|
18
|
-
return (action.old?.parent === undefined &&
|
|
19
|
-
action.old?.element !== undefined &&
|
|
20
|
-
action.new?.parent === undefined &&
|
|
21
|
-
action.new?.element !== undefined);
|
|
22
|
-
}
|
|
23
|
-
export function isUpdate(action) {
|
|
24
|
-
return (action.old === undefined &&
|
|
25
|
-
action.new === undefined &&
|
|
26
|
-
action.element !== undefined &&
|
|
27
|
-
action.newAttributes !== undefined &&
|
|
28
|
-
action.oldAttributes !== undefined);
|
|
29
|
-
}
|
|
30
|
-
export function isSimple(action) {
|
|
31
|
-
return !(action.actions instanceof Array);
|
|
32
|
-
}
|
|
33
|
-
//** return `Update` action for `element` adding `oldAttributes` */
|
|
34
|
-
export function createUpdateAction(element, newAttributes) {
|
|
35
|
-
const oldAttributes = {};
|
|
36
|
-
Array.from(element.attributes).forEach(attr => {
|
|
37
|
-
oldAttributes[attr.name] = attr.value;
|
|
38
|
-
});
|
|
39
|
-
return { element, oldAttributes, newAttributes };
|
|
40
|
-
}
|
|
41
|
-
/** Throws an error bearing `message`, never returning. */
|
|
42
|
-
export function unreachable(message) {
|
|
43
|
-
throw new Error(message);
|
|
44
|
-
}
|
|
45
|
-
/** @returns an [[`EditorAction`]] with opposite effect of `action`. */
|
|
46
|
-
export function invert(action) {
|
|
47
|
-
if (!isSimple(action)) {
|
|
48
|
-
const inverse = {
|
|
49
|
-
title: action.title,
|
|
50
|
-
derived: action.derived,
|
|
51
|
-
actions: [],
|
|
52
|
-
};
|
|
53
|
-
action.actions.forEach(element => inverse.actions.unshift(invert(element)));
|
|
54
|
-
return inverse;
|
|
55
|
-
}
|
|
56
|
-
const metaData = {
|
|
57
|
-
derived: action.derived,
|
|
58
|
-
checkValidity: action.checkValidity,
|
|
59
|
-
};
|
|
60
|
-
if (isCreate(action))
|
|
61
|
-
return { old: action.new, ...metaData };
|
|
62
|
-
else if (isDelete(action))
|
|
63
|
-
return { new: action.old, ...metaData };
|
|
64
|
-
else if (isMove(action))
|
|
65
|
-
return {
|
|
66
|
-
old: {
|
|
67
|
-
parent: action.new.parent,
|
|
68
|
-
element: action.old.element,
|
|
69
|
-
reference: action.new.reference,
|
|
70
|
-
},
|
|
71
|
-
new: { parent: action.old.parent, reference: action.old.reference },
|
|
72
|
-
...metaData,
|
|
73
|
-
};
|
|
74
|
-
else if (isReplace(action))
|
|
75
|
-
return { new: action.old, old: action.new, ...metaData };
|
|
76
|
-
else if (isUpdate(action))
|
|
77
|
-
return {
|
|
78
|
-
element: action.element,
|
|
79
|
-
oldAttributes: action.newAttributes,
|
|
80
|
-
newAttributes: action.oldAttributes,
|
|
81
|
-
...metaData,
|
|
82
|
-
};
|
|
83
|
-
else
|
|
84
|
-
return unreachable('Unknown EditorAction type in invert.');
|
|
85
|
-
}
|
|
86
|
-
export function newActionEvent(action, initiator = 'user', eventInitDict) {
|
|
87
|
-
return new CustomEvent('editor-action', {
|
|
88
|
-
bubbles: true,
|
|
89
|
-
composed: true,
|
|
90
|
-
...eventInitDict,
|
|
91
|
-
detail: { action, initiator, ...eventInitDict?.detail },
|
|
92
|
-
});
|
|
93
|
-
}
|
|
94
|
-
//# sourceMappingURL=editor.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"editor.js","sourceRoot":"","sources":["../../../../../core/foundation/deprecated/editor.ts"],"names":[],"mappings":"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","sourcesContent":["import { Initiator } from './edit-event.js';\n\n/** Inserts `new.element` to `new.parent` before `new.reference`. */\nexport interface Create {\n new: { parent: Node; element: Node; reference?: Node | null };\n derived?: boolean;\n checkValidity?: () => boolean;\n}\n/** Removes `old.element` from `old.parent` before `old.reference`. */\nexport interface Delete {\n old: { parent: Node; element: Node; reference?: Node | null };\n derived?: boolean;\n checkValidity?: () => boolean;\n}\n/** Reparents of `old.element` to `new.parent` before `new.reference`. */\nexport interface Move {\n old: { parent: Element; element: Element; reference?: Node | null };\n new: { parent: Element; reference?: Node | null };\n derived?: boolean;\n checkValidity?: () => boolean;\n}\n/** Replaces `old.element` with `new.element`, keeping element children. */\nexport interface Replace {\n old: { element: Element };\n new: { element: Element };\n derived?: boolean;\n checkValidity?: () => boolean;\n}\n/** Swaps `element`s `oldAttributes` with `newAttributes` */\nexport interface Update {\n element: Element;\n oldAttributes: Record<string, string | null>;\n newAttributes: Record<string, string | null>;\n derived?: boolean;\n checkValidity?: () => boolean;\n}\n\nexport type SimpleAction = Update | Create | Replace | Delete | Move;\nexport type ComplexAction = {\n actions: SimpleAction[];\n title: string;\n derived?: boolean;\n};\n/** Represents an intended or committed change to some `Element`. */\nexport type EditorAction = SimpleAction | ComplexAction;\n\nexport function isCreate(action: EditorAction): action is Create {\n return (\n (action as Replace).old === undefined &&\n (action as Create).new?.parent !== undefined &&\n (action as Create).new?.element !== undefined\n );\n}\nexport function isDelete(action: EditorAction): action is Delete {\n return (\n (action as Delete).old?.parent !== undefined &&\n (action as Delete).old?.element !== undefined &&\n (action as Replace).new === undefined\n );\n}\nexport function isMove(action: EditorAction): action is Move {\n return (\n (action as Move).old?.parent !== undefined &&\n (action as Move).old?.element !== undefined &&\n (action as Move).new?.parent !== undefined &&\n (action as Replace).new?.element == undefined\n );\n}\nexport function isReplace(action: EditorAction): action is Replace {\n return (\n (action as Move).old?.parent === undefined &&\n (action as Replace).old?.element !== undefined &&\n (action as Move).new?.parent === undefined &&\n (action as Replace).new?.element !== undefined\n );\n}\nexport function isUpdate(action: EditorAction): action is Update {\n return (\n (action as Replace).old === undefined &&\n (action as Replace).new === undefined &&\n (action as Update).element !== undefined &&\n (action as Update).newAttributes !== undefined &&\n (action as Update).oldAttributes !== undefined\n );\n}\nexport function isSimple(action: EditorAction): action is SimpleAction {\n return !((<ComplexAction>action).actions instanceof Array);\n}\n\n//** return `Update` action for `element` adding `oldAttributes` */\nexport function createUpdateAction(\n element: Element,\n newAttributes: Record<string, string | null>\n): Update {\n const oldAttributes: Record<string, string | null> = {};\n Array.from(element.attributes).forEach(attr => {\n oldAttributes[attr.name] = attr.value;\n });\n\n return { element, oldAttributes, newAttributes };\n}\n\n/** Throws an error bearing `message`, never returning. */\nexport function unreachable(message: string): never {\n throw new Error(message);\n}\n\n/** @returns an [[`EditorAction`]] with opposite effect of `action`. */\nexport function invert(action: EditorAction): EditorAction {\n if (!isSimple(action)) {\n const inverse: ComplexAction = {\n title: action.title,\n derived: action.derived,\n actions: [],\n };\n action.actions.forEach(element =>\n inverse.actions.unshift(<SimpleAction>invert(element))\n );\n return inverse;\n }\n\n const metaData = {\n derived: action.derived,\n checkValidity: action.checkValidity,\n };\n if (isCreate(action)) return { old: action.new, ...metaData };\n else if (isDelete(action)) return { new: action.old, ...metaData };\n else if (isMove(action))\n return {\n old: {\n parent: action.new.parent,\n element: action.old.element,\n reference: action.new.reference,\n },\n new: { parent: action.old.parent, reference: action.old.reference },\n ...metaData,\n };\n else if (isReplace(action))\n return { new: action.old, old: action.new, ...metaData };\n else if (isUpdate(action))\n return {\n element: action.element,\n oldAttributes: action.newAttributes,\n newAttributes: action.oldAttributes,\n ...metaData,\n };\n else return unreachable('Unknown EditorAction type in invert.');\n}\n\n/** Represents some intended modification of a `Document` being edited. */\nexport interface EditorActionDetail<T extends EditorAction> {\n action: T;\n initiator?: Initiator;\n}\nexport type EditorActionEvent<T extends EditorAction> = CustomEvent<\n EditorActionDetail<T>\n>;\n\nexport function newActionEvent<T extends EditorAction>(\n action: T,\n initiator: Initiator = 'user',\n eventInitDict?: CustomEventInit<Partial<EditorActionDetail<T>>>\n): EditorActionEvent<T> {\n return new CustomEvent<EditorActionDetail<T>>('editor-action', {\n bubbles: true,\n composed: true,\n ...eventInitDict,\n detail: { action, initiator, ...eventInitDict?.detail },\n });\n}\n\ndeclare global {\n interface ElementEventMap {\n ['editor-action']: EditorActionEvent<EditorAction>;\n }\n}\n"]}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
export function newLogEvent(detail, eventInitDict) {
|
|
2
|
-
return new CustomEvent('log', {
|
|
3
|
-
bubbles: true,
|
|
4
|
-
composed: true,
|
|
5
|
-
...eventInitDict,
|
|
6
|
-
detail: { ...detail, ...eventInitDict?.detail },
|
|
7
|
-
});
|
|
8
|
-
}
|
|
9
|
-
export function newIssueEvent(detail, eventInitDict) {
|
|
10
|
-
return new CustomEvent('issue', {
|
|
11
|
-
bubbles: true,
|
|
12
|
-
composed: true,
|
|
13
|
-
...eventInitDict,
|
|
14
|
-
detail: { ...detail, ...eventInitDict?.detail },
|
|
15
|
-
});
|
|
16
|
-
}
|
|
17
|
-
//# sourceMappingURL=history.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"history.js","sourceRoot":"","sources":["../../../../../core/foundation/deprecated/history.ts"],"names":[],"mappings":"AAgDA,MAAM,UAAU,WAAW,CACzB,MAAiB,EACjB,aAA0C;IAE1C,OAAO,IAAI,WAAW,CAAY,KAAK,EAAE;QACvC,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE,IAAI;QACd,GAAG,aAAa;QAChB,MAAM,EAAE,EAAE,GAAG,MAAM,EAAE,GAAG,aAAa,EAAE,MAAM,EAAE;KAChD,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,aAAa,CAC3B,MAAmB,EACnB,aAA4C;IAE5C,OAAO,IAAI,WAAW,CAAc,OAAO,EAAE;QAC3C,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE,IAAI;QACd,GAAG,aAAa;QAChB,MAAM,EAAE,EAAE,GAAG,MAAM,EAAE,GAAG,aAAa,EAAE,MAAM,EAAE;KAChD,CAAC,CAAC;AACL,CAAC","sourcesContent":["import { EditV2 } from '../edit.js';\n\ntype InfoEntryKind = 'info' | 'warning' | 'error';\n\nexport type LogEntryType = 'info' | 'warning' | 'error' | 'action' | 'reset';\n\n/** The basic information contained in each [[`LogEntry`]]. */\nexport interface LogDetailBase {\n title: string;\n message?: string;\n}\n/** The [[`LogEntry`]] for a committed [[`EditorAction`]]. */\nexport interface CommitDetail extends LogDetailBase {\n kind: 'action';\n redo: EditV2;\n undo: EditV2;\n squash?: boolean;\n}\n/** A [[`LogEntry`]] for notifying the user. */\nexport interface InfoDetail extends LogDetailBase {\n kind: InfoEntryKind;\n cause?: LogEntry;\n}\n\nexport interface ResetDetail {\n kind: 'reset';\n}\n\nexport type LogDetail = InfoDetail | CommitDetail | ResetDetail;\nexport type LogEvent = CustomEvent<LogDetail>;\n\nexport interface IssueDetail extends LogDetailBase {\n validatorId: string;\n element?: Element;\n}\nexport type IssueEvent = CustomEvent<IssueDetail>;\n\n/** [[`LogEntry`]]s are timestamped upon being committed to the `history`. */\ninterface Timestamped {\n time: Date | null;\n}\n\nexport type CommitEntry = Timestamped & CommitDetail;\nexport type InfoEntry = Timestamped & InfoDetail;\n\nexport type LogEntry = InfoEntry | CommitEntry;\n\n\nexport function newLogEvent(\n detail: LogDetail,\n eventInitDict?: CustomEventInit<LogDetail>\n): LogEvent {\n return new CustomEvent<LogDetail>('log', {\n bubbles: true,\n composed: true,\n ...eventInitDict,\n detail: { ...detail, ...eventInitDict?.detail },\n });\n}\n\nexport function newIssueEvent(\n detail: IssueDetail,\n eventInitDict?: CustomEventInit<IssueDetail>\n): IssueEvent {\n return new CustomEvent<IssueDetail>('issue', {\n bubbles: true,\n composed: true,\n ...eventInitDict,\n detail: { ...detail, ...eventInitDict?.detail },\n });\n}\n\ndeclare global {\n interface ElementEventMap {\n ['log']: LogEvent;\n ['issue']: IssueEvent;\n }\n }\n "]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"open-event.js","sourceRoot":"","sources":["../../../../../core/foundation/deprecated/open-event.ts"],"names":[],"mappings":"AAOA,MAAM,UAAU,eAAe,CAC7B,GAAgB,EAChB,OAAe,EACf,aAAuD;IAEvD,OAAO,IAAI,WAAW,CAAgB,UAAU,EAAE;QAChD,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE,IAAI;QACd,GAAG,aAAa;QAChB,MAAM,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,aAAa,EAAE,MAAM,EAAE;KACnD,CAAC,CAAC;AACL,CAAC","sourcesContent":["/** Represents a document to be opened. */\nexport interface OpenDocDetail {\n doc: XMLDocument;\n docName: string;\n docId?: string;\n}\nexport type OpenDocEvent = CustomEvent<OpenDocDetail>;\nexport function newOpenDocEvent(\n doc: XMLDocument,\n docName: string,\n eventInitDict?: CustomEventInit<Partial<OpenDocDetail>>\n): OpenDocEvent {\n return new CustomEvent<OpenDocDetail>('open-doc', {\n bubbles: true,\n composed: true,\n ...eventInitDict,\n detail: { doc, docName, ...eventInitDict?.detail },\n });\n}\n\ndeclare global {\n interface ElementEventMap {\n ['open-doc']: OpenDocEvent;\n }\n }"]}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
export function newLoadNsdocEvent(nsdoc, filename) {
|
|
2
|
-
return new CustomEvent('load-nsdoc', {
|
|
3
|
-
bubbles: true,
|
|
4
|
-
composed: true,
|
|
5
|
-
detail: { nsdoc, filename },
|
|
6
|
-
});
|
|
7
|
-
}
|
|
8
|
-
export function newSettingsUIEvent(show, eventInitDict) {
|
|
9
|
-
return new CustomEvent('oscd-settings', {
|
|
10
|
-
bubbles: true,
|
|
11
|
-
composed: true,
|
|
12
|
-
...eventInitDict,
|
|
13
|
-
detail: {
|
|
14
|
-
show,
|
|
15
|
-
...eventInitDict?.detail,
|
|
16
|
-
},
|
|
17
|
-
});
|
|
18
|
-
}
|
|
19
|
-
//# sourceMappingURL=settings.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"settings.js","sourceRoot":"","sources":["../../../../../core/foundation/deprecated/settings.ts"],"names":[],"mappings":"AAgCA,MAAM,UAAU,iBAAiB,CAC/B,KAAa,EACb,QAAgB;IAEhB,OAAO,IAAI,WAAW,CAAkB,YAAY,EAAE;QACpD,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE,IAAI;QACd,MAAM,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE;KAC5B,CAAC,CAAC;AACL,CAAC;AAQD,MAAM,UAAU,kBAAkB,CAChC,IAAa,EACb,aAA0D;IAE1D,OAAO,IAAI,WAAW,CAAmB,eAAe,EAAE;QACxD,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE,IAAI;QACd,GAAG,aAAa;QAChB,MAAM,EAAE;YACN,IAAI;YACJ,GAAG,aAAa,EAAE,MAAM;SACzB;KACF,CAAC,CAAC;AACL,CAAC","sourcesContent":["export type Language = 'en' | 'de';\n\nexport type Settings = {\n language: Language;\n theme: 'light' | 'dark';\n mode: 'safe' | 'pro';\n showieds: 'on' | 'off';\n 'IEC 61850-7-2': string | undefined;\n 'IEC 61850-7-3': string | undefined;\n 'IEC 61850-7-4': string | undefined;\n 'IEC 61850-8-1': string | undefined;\n};\n\nexport type NsdVersion = {\n version: string | undefined;\n revision: string | undefined;\n release: string | undefined;\n};\n\nexport type NsdVersions = {\n 'IEC 61850-7-2': NsdVersion;\n 'IEC 61850-7-3': NsdVersion;\n 'IEC 61850-7-4': NsdVersion;\n 'IEC 61850-8-1': NsdVersion;\n};\n\n/** Represents a document to be opened. */\nexport interface LoadNsdocDetail {\n nsdoc: string;\n filename: string;\n}\nexport type LoadNsdocEvent = CustomEvent<LoadNsdocDetail>;\nexport function newLoadNsdocEvent(\n nsdoc: string,\n filename: string\n): LoadNsdocEvent {\n return new CustomEvent<LoadNsdocDetail>('load-nsdoc', {\n bubbles: true,\n composed: true,\n detail: { nsdoc, filename },\n });\n}\n\nexport interface SettingsUIDetail {\n show: boolean;\n}\n\nexport type SettingsUIEvent = CustomEvent<SettingsUIDetail>;\n\nexport function newSettingsUIEvent(\n show: boolean,\n eventInitDict?: CustomEventInit<Partial<SettingsUIDetail>>\n): SettingsUIEvent {\n return new CustomEvent<SettingsUIDetail>('oscd-settings', {\n bubbles: true,\n composed: true,\n ...eventInitDict,\n detail: {\n show,\n ...eventInitDict?.detail,\n },\n });\n}\n\n\ndeclare global {\n interface ElementEventMap {\n ['oscd-settings']: SettingsUIEvent;\n }\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"validation.js","sourceRoot":"","sources":["../../../../../core/foundation/deprecated/validation.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,gBAAgB,CAC9B,aAAqC;IAErC,OAAO,IAAI,WAAW,CAAO,UAAU,EAAE;QACvC,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE,IAAI;QACd,GAAG,aAAa;KACjB,CAAC,CAAC;AACL,CAAC","sourcesContent":["/** Represents a request for validation. */\nexport type ValidateEvent = CustomEvent<void>;\nexport function newValidateEvent(\n eventInitDict?: CustomEventInit<void>\n): ValidateEvent {\n return new CustomEvent<void>('validate', {\n bubbles: true,\n composed: true,\n ...eventInitDict,\n });\n}\n\n\ndeclare global {\n interface ElementEventMap {\n ['validate']: ValidateEvent;\n }\n }\n "]}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @deprecated
|
|
3
|
-
*/
|
|
4
|
-
export function newPendingStateEvent(promise, eventInitDict) {
|
|
5
|
-
return new CustomEvent('pending-state', {
|
|
6
|
-
bubbles: true,
|
|
7
|
-
composed: true,
|
|
8
|
-
...eventInitDict,
|
|
9
|
-
detail: { promise, ...eventInitDict?.detail },
|
|
10
|
-
});
|
|
11
|
-
}
|
|
12
|
-
//# sourceMappingURL=waiter.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"waiter.js","sourceRoot":"","sources":["../../../../../core/foundation/deprecated/waiter.ts"],"names":[],"mappings":"AAMA;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAClC,OAAsB,EACtB,aAA4D;IAE5D,OAAO,IAAI,WAAW,CAAqB,eAAe,EAAE;QAC1D,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE,IAAI;QACd,GAAG,aAAa;QAChB,MAAM,EAAE,EAAE,OAAO,EAAE,GAAG,aAAa,EAAE,MAAM,EAAE;KAC9C,CAAC,CAAC;AACL,CAAC","sourcesContent":["/** Represents some work pending completion, upon which `promise` resolves. */\nexport interface PendingStateDetail {\n promise: Promise<void>;\n}\nexport type PendingStateEvent = CustomEvent<PendingStateDetail>;\n\n/**\n * @deprecated\n */\nexport function newPendingStateEvent(\n promise: Promise<void>,\n eventInitDict?: CustomEventInit<Partial<PendingStateDetail>>\n): PendingStateEvent {\n return new CustomEvent<PendingStateDetail>('pending-state', {\n bubbles: true,\n composed: true,\n ...eventInitDict,\n detail: { promise, ...eventInitDict?.detail },\n });\n}\n\ndeclare global {\n interface ElementEventMap {\n ['pending-state']: PendingStateEvent;\n }\n}\n"]}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
export function newEditCompletedEvent(edit, initiator = 'user') {
|
|
2
|
-
return new CustomEvent('oscd-edit-completed', {
|
|
3
|
-
bubbles: true,
|
|
4
|
-
composed: true,
|
|
5
|
-
detail: {
|
|
6
|
-
edit: edit,
|
|
7
|
-
initiator: initiator,
|
|
8
|
-
},
|
|
9
|
-
});
|
|
10
|
-
}
|
|
11
|
-
//# sourceMappingURL=edit-completed-event.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"edit-completed-event.js","sourceRoot":"","sources":["../../../../core/foundation/edit-completed-event.ts"],"names":[],"mappings":"AAYA,MAAM,UAAU,qBAAqB,CACnC,IAAyB,EACzB,YAAuB,MAAM;IAE7B,OAAO,IAAI,WAAW,CAAsB,qBAAqB,EAAE;QACjE,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE,IAAI;QACd,MAAM,EAAE;YACN,IAAI,EAAE,IAAI;YACV,SAAS,EAAE,SAAS;SACrB;KACF,CAAC,CAAC;AACL,CAAC","sourcesContent":["import { Edit, Initiator } from './deprecated/edit-event.js';\n\nimport { EditorAction } from './deprecated/editor.js';\n\nexport type EditCompletedDetail = {\n edit: Edit | EditorAction;\n initiator: Initiator;\n};\n\n/** Represents the intent to open `doc` with filename `docName`. */\nexport type EditCompletedEvent = CustomEvent<EditCompletedDetail>;\n\nexport function newEditCompletedEvent(\n edit: Edit | EditorAction,\n initiator: Initiator = 'user'\n): EditCompletedEvent {\n return new CustomEvent<EditCompletedDetail>('oscd-edit-completed', {\n bubbles: true,\n composed: true,\n detail: {\n edit: edit,\n initiator: initiator,\n },\n });\n}\n\ndeclare global {\n interface ElementEventMap {\n ['oscd-edit-completed']: EditCompletedEvent;\n }\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"edit-event.js","sourceRoot":"","sources":["../../../../core/foundation/edit-event.ts"],"names":[],"mappings":"AAmBA,MAAM,UAAU,cAAc,CAC5B,IAAO,EACP,OAA4B;IAE5B,OAAO,IAAI,WAAW,CAAkB,cAAc,EAAE;QACtD,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,IAAI;QACb,MAAM,EAAE,EAAE,GAAG,OAAO,EAAE,IAAI,EAAE;KAC7B,CAAC,CAAC;AACL,CAAC","sourcesContent":["import { EditV2 } from './edit.js';\n\nexport type EditDetailV2<E extends EditV2 = EditV2> = EditEventOptionsV2 & {\n edit: E;\n};\n\nexport type EditEventV2<E extends EditV2 = EditV2> = CustomEvent<\n EditDetailV2<E>\n>;\n\ntype BaseEditEventOptionsV2 = {\n title?: string;\n squash?: boolean;\n}\n\nexport type EditEventOptionsV2 = BaseEditEventOptionsV2 & {\n createHistoryEntry?: boolean;\n};\n\nexport function newEditEventV2<E extends EditV2>(\n edit: E,\n options?: EditEventOptionsV2\n): EditEventV2<E> {\n return new CustomEvent<EditDetailV2<E>>('oscd-edit-v2', {\n composed: true,\n bubbles: true,\n detail: { ...options, edit },\n });\n}\n\ndeclare global {\n interface ElementEventMap {\n ['oscd-edit-v2']: EditEventV2;\n }\n}\n"]}
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
export function isComplexV2(edit) {
|
|
2
|
-
return edit instanceof Array;
|
|
3
|
-
}
|
|
4
|
-
export function isSetTextContentV2(edit) {
|
|
5
|
-
return (edit.element !== undefined &&
|
|
6
|
-
edit.textContent !== undefined);
|
|
7
|
-
}
|
|
8
|
-
export function isRemoveV2(edit) {
|
|
9
|
-
return (edit.parent === undefined && edit.node !== undefined);
|
|
10
|
-
}
|
|
11
|
-
export function isSetAttributesV2(edit) {
|
|
12
|
-
return (edit.element !== undefined &&
|
|
13
|
-
edit.attributes !== undefined &&
|
|
14
|
-
edit.attributesNS !== undefined);
|
|
15
|
-
}
|
|
16
|
-
export function isInsertV2(edit) {
|
|
17
|
-
return (edit.parent !== undefined &&
|
|
18
|
-
edit.node !== undefined &&
|
|
19
|
-
edit.reference !== undefined);
|
|
20
|
-
}
|
|
21
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
22
|
-
export function isEditV2(edit) {
|
|
23
|
-
if (isComplexV2(edit)) {
|
|
24
|
-
return !edit.some((e) => !isEditV2(e));
|
|
25
|
-
}
|
|
26
|
-
return (isSetAttributesV2(edit) ||
|
|
27
|
-
isSetTextContentV2(edit) ||
|
|
28
|
-
isInsertV2(edit) ||
|
|
29
|
-
isRemoveV2(edit));
|
|
30
|
-
}
|
|
31
|
-
//# sourceMappingURL=edit.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"edit.js","sourceRoot":"","sources":["../../../../core/foundation/edit.ts"],"names":[],"mappings":"AAiCA,MAAM,UAAU,WAAW,CAAC,IAAY;IACtC,OAAO,IAAI,YAAY,KAAK,CAAC;AAC/B,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC7C,OAAO,CACJ,IAAyB,CAAC,OAAO,KAAK,SAAS;QAC/C,IAAyB,CAAC,WAAW,KAAK,SAAS,CACrD,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,IAAY;IACrC,OAAO,CACJ,IAAiB,CAAC,MAAM,KAAK,SAAS,IAAK,IAAiB,CAAC,IAAI,KAAK,SAAS,CACjF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,IAAY;IAC5C,OAAO,CACJ,IAAwB,CAAC,OAAO,KAAK,SAAS;QAC9C,IAAwB,CAAC,UAAU,KAAK,SAAS;QACjD,IAAwB,CAAC,YAAY,KAAK,SAAS,CACrD,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,IAAY;IACrC,OAAO,CACJ,IAAiB,CAAC,MAAM,KAAK,SAAS;QACtC,IAAiB,CAAC,IAAI,KAAK,SAAS;QACpC,IAAiB,CAAC,SAAS,KAAK,SAAS,CAC3C,CAAC;AACJ,CAAC;AAED,8DAA8D;AAC9D,MAAM,UAAU,QAAQ,CAAC,IAAS;IAChC,IAAI,WAAW,CAAC,IAAI,CAAC,EAAE;QACrB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;KACxC;IAED,OAAO,CACL,iBAAiB,CAAC,IAAI,CAAC;QACvB,kBAAkB,CAAC,IAAI,CAAC;QACxB,UAAU,CAAC,IAAI,CAAC;QAChB,UAAU,CAAC,IAAI,CAAC,CACjB,CAAC;AACJ,CAAC","sourcesContent":["/** Intent to `parent.insertBefore(node, reference)` */\nexport type InsertV2 = {\n parent: Node;\n node: Node;\n reference: Node | null;\n};\n\n/** Intent to remove a `node` from its `ownerDocument` */\nexport type RemoveV2 = {\n node: Node;\n};\n\n/** Intent to set the `textContent` of `element` */\nexport type SetTextContentV2 = {\n element: Element;\n textContent: string;\n};\n\n/** Intent to set or remove (if `null`) `attributes`(-`NS`) on `element` */\nexport type SetAttributesV2 = {\n element: Element;\n attributes: Partial<Record<string, string | null>>;\n attributesNS: Partial<Record<string, Partial<Record<string, string | null>>>>;\n};\n\n/** Intent to change some XMLDocuments */\nexport type EditV2 =\n | InsertV2\n | SetAttributesV2\n | SetTextContentV2\n | RemoveV2\n | EditV2[];\n\nexport function isComplexV2(edit: EditV2): edit is EditV2[] {\n return edit instanceof Array;\n}\n\nexport function isSetTextContentV2(edit: EditV2): edit is SetTextContentV2 {\n return (\n (edit as SetTextContentV2).element !== undefined &&\n (edit as SetTextContentV2).textContent !== undefined\n );\n}\n\nexport function isRemoveV2(edit: EditV2): edit is RemoveV2 {\n return (\n (edit as InsertV2).parent === undefined && (edit as RemoveV2).node !== undefined\n );\n}\n\nexport function isSetAttributesV2(edit: EditV2): edit is SetAttributesV2 {\n return (\n (edit as SetAttributesV2).element !== undefined &&\n (edit as SetAttributesV2).attributes !== undefined &&\n (edit as SetAttributesV2).attributesNS !== undefined\n );\n}\n\nexport function isInsertV2(edit: EditV2): edit is InsertV2 {\n return (\n (edit as InsertV2).parent !== undefined &&\n (edit as InsertV2).node !== undefined &&\n (edit as InsertV2).reference !== undefined\n );\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport function isEditV2(edit: any): edit is EditV2 {\n if (isComplexV2(edit)) {\n return !edit.some((e) => !isEditV2(e));\n }\n \n return (\n isSetAttributesV2(edit) ||\n isSetTextContentV2(edit) ||\n isInsertV2(edit) ||\n isRemoveV2(edit)\n );\n}\n"]}
|
|
@@ -1,151 +0,0 @@
|
|
|
1
|
-
import { isComplexV2, isInsertV2, isRemoveV2, isSetAttributesV2, isSetTextContentV2, } from './edit.js';
|
|
2
|
-
function handleSetTextContent({ element, textContent, }) {
|
|
3
|
-
const { childNodes } = element;
|
|
4
|
-
const restoreChildNodes = Array.from(childNodes).map((node) => ({
|
|
5
|
-
parent: element,
|
|
6
|
-
node,
|
|
7
|
-
reference: null,
|
|
8
|
-
}));
|
|
9
|
-
element.textContent = textContent;
|
|
10
|
-
const undoTextContent = { element, textContent: '' };
|
|
11
|
-
return [undoTextContent, ...restoreChildNodes];
|
|
12
|
-
}
|
|
13
|
-
function uniqueNSPrefix(element, ns) {
|
|
14
|
-
let i = 1;
|
|
15
|
-
const attributes = Array.from(element.attributes);
|
|
16
|
-
const hasSamePrefix = (attribute) => attribute.prefix === `ens${i}` && attribute.namespaceURI !== ns;
|
|
17
|
-
const nsOrNull = new Set([null, ns]);
|
|
18
|
-
const differentNamespace = (prefix) => !nsOrNull.has(element.lookupNamespaceURI(prefix));
|
|
19
|
-
while (differentNamespace(`ens${i}`) || attributes.find(hasSamePrefix))
|
|
20
|
-
i += 1;
|
|
21
|
-
return `ens${i}`;
|
|
22
|
-
}
|
|
23
|
-
const xmlAttributeName = /^(?!xml|Xml|xMl|xmL|XMl|xML|XmL|XML)[A-Za-z_][A-Za-z0-9-_.]*(:[A-Za-z_][A-Za-z0-9-_.]*)?$/;
|
|
24
|
-
function validName(name) {
|
|
25
|
-
return xmlAttributeName.test(name);
|
|
26
|
-
}
|
|
27
|
-
function handleSetAttributes({ element, attributes, attributesNS, }) {
|
|
28
|
-
const oldAttributes = { ...attributes };
|
|
29
|
-
const oldAttributesNS = { ...attributesNS };
|
|
30
|
-
// save element's non-prefixed attributes for undo
|
|
31
|
-
Object.keys(attributes)
|
|
32
|
-
.reverse()
|
|
33
|
-
.forEach((name) => {
|
|
34
|
-
oldAttributes[name] = element.getAttribute(name);
|
|
35
|
-
});
|
|
36
|
-
// change element's non-prefixed attributes
|
|
37
|
-
for (const entry of Object.entries(attributes)) {
|
|
38
|
-
try {
|
|
39
|
-
const [name, value] = entry;
|
|
40
|
-
if (value === null)
|
|
41
|
-
element.removeAttribute(name);
|
|
42
|
-
else
|
|
43
|
-
element.setAttribute(name, value);
|
|
44
|
-
}
|
|
45
|
-
catch (_e) {
|
|
46
|
-
// undo nothing if update didn't work on this attribute
|
|
47
|
-
delete oldAttributes[entry[0]];
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
// save element's namespaced attributes for undo
|
|
51
|
-
Object.entries(attributesNS).forEach(([ns, attrs]) => {
|
|
52
|
-
Object.keys(attrs)
|
|
53
|
-
.filter(validName)
|
|
54
|
-
.reverse()
|
|
55
|
-
.forEach((name) => {
|
|
56
|
-
oldAttributesNS[ns] = {
|
|
57
|
-
...oldAttributesNS[ns],
|
|
58
|
-
[name]: element.getAttributeNS(ns, name.split(':').pop()),
|
|
59
|
-
};
|
|
60
|
-
});
|
|
61
|
-
Object.keys(attrs)
|
|
62
|
-
.filter((name) => !validName(name))
|
|
63
|
-
.forEach((name) => {
|
|
64
|
-
delete oldAttributesNS[ns][name];
|
|
65
|
-
});
|
|
66
|
-
});
|
|
67
|
-
// change element's namespaced attributes
|
|
68
|
-
for (const nsEntry of Object.entries(attributesNS)) {
|
|
69
|
-
const [ns, attrs] = nsEntry;
|
|
70
|
-
for (const entry of Object.entries(attrs).filter(([name]) => validName(name))) {
|
|
71
|
-
try {
|
|
72
|
-
const [name, value] = entry;
|
|
73
|
-
if (value === null) {
|
|
74
|
-
element.removeAttributeNS(ns, name.split(':').pop());
|
|
75
|
-
}
|
|
76
|
-
else {
|
|
77
|
-
let qualifiedName = name;
|
|
78
|
-
if (!qualifiedName.includes(':')) {
|
|
79
|
-
let prefix = element.lookupPrefix(ns);
|
|
80
|
-
if (!prefix)
|
|
81
|
-
prefix = uniqueNSPrefix(element, ns);
|
|
82
|
-
qualifiedName = `${prefix}:${name}`;
|
|
83
|
-
}
|
|
84
|
-
element.setAttributeNS(ns, qualifiedName, value);
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
catch (_e) {
|
|
88
|
-
delete oldAttributesNS[ns][entry[0]];
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
return {
|
|
93
|
-
element,
|
|
94
|
-
attributes: oldAttributes,
|
|
95
|
-
attributesNS: oldAttributesNS,
|
|
96
|
-
};
|
|
97
|
-
}
|
|
98
|
-
function handleRemove({ node }) {
|
|
99
|
-
const { parentNode: parent, nextSibling: reference } = node;
|
|
100
|
-
node.parentNode?.removeChild(node);
|
|
101
|
-
if (parent)
|
|
102
|
-
return {
|
|
103
|
-
node,
|
|
104
|
-
parent,
|
|
105
|
-
reference,
|
|
106
|
-
};
|
|
107
|
-
return [];
|
|
108
|
-
}
|
|
109
|
-
function handleInsert({ parent, node, reference, }) {
|
|
110
|
-
try {
|
|
111
|
-
const { parentNode, nextSibling } = node;
|
|
112
|
-
/**
|
|
113
|
-
* This is a workaround for converted edit api v1 events,
|
|
114
|
-
* because if multiple edits are converted, they are converted before the changes from the previous edits are applied to the document
|
|
115
|
-
* so if you first remove an element and then add a clone with changed attributes, the reference will be the element to remove since it hasnt been removed yet
|
|
116
|
-
*/
|
|
117
|
-
if (!parent.contains(reference)) {
|
|
118
|
-
reference = null;
|
|
119
|
-
}
|
|
120
|
-
parent.insertBefore(node, reference);
|
|
121
|
-
if (parentNode) {
|
|
122
|
-
// undo: move child node back to original place
|
|
123
|
-
return {
|
|
124
|
-
node,
|
|
125
|
-
parent: parentNode,
|
|
126
|
-
reference: nextSibling,
|
|
127
|
-
};
|
|
128
|
-
}
|
|
129
|
-
// undo: remove orphaned node
|
|
130
|
-
return { node };
|
|
131
|
-
}
|
|
132
|
-
catch (_e) {
|
|
133
|
-
// undo nothing if insert doesn't work on these nodes
|
|
134
|
-
return [];
|
|
135
|
-
}
|
|
136
|
-
}
|
|
137
|
-
/** Applies an Edit, returning the corresponding 'undo' Edit. */
|
|
138
|
-
export function handleEditV2(edit) {
|
|
139
|
-
if (isInsertV2(edit))
|
|
140
|
-
return handleInsert(edit);
|
|
141
|
-
if (isRemoveV2(edit))
|
|
142
|
-
return handleRemove(edit);
|
|
143
|
-
if (isSetAttributesV2(edit))
|
|
144
|
-
return handleSetAttributes(edit);
|
|
145
|
-
if (isSetTextContentV2(edit))
|
|
146
|
-
return handleSetTextContent(edit);
|
|
147
|
-
if (isComplexV2(edit))
|
|
148
|
-
return edit.map((edit) => handleEditV2(edit)).reverse();
|
|
149
|
-
return [];
|
|
150
|
-
}
|
|
151
|
-
//# sourceMappingURL=handle-edit.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"handle-edit.js","sourceRoot":"","sources":["../../../../core/foundation/handle-edit.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n EditV2,\n InsertV2,\n isComplexV2,\n isInsertV2,\n isRemoveV2,\n isSetAttributesV2,\n isSetTextContentV2,\n RemoveV2,\n SetAttributesV2,\n SetTextContentV2,\n} from './edit.js';\n\nfunction handleSetTextContent({\n element,\n textContent,\n}: SetTextContentV2): (SetTextContentV2 | InsertV2)[] {\n const { childNodes } = element;\n \n const restoreChildNodes: InsertV2[] = Array.from(childNodes).map((node) => ({\n parent: element,\n node,\n reference: null,\n }));\n \n element.textContent = textContent;\n \n const undoTextContent: SetTextContentV2 = { element, textContent: '' };\n \n return [undoTextContent, ...restoreChildNodes];\n}\n\nfunction uniqueNSPrefix(element: Element, ns: string): string {\n let i = 1;\n const attributes = Array.from(element.attributes);\n const hasSamePrefix = (attribute: Attr) =>\n attribute.prefix === `ens${i}` && attribute.namespaceURI !== ns;\n const nsOrNull = new Set([null, ns]);\n const differentNamespace = (prefix: string) =>\n !nsOrNull.has(element.lookupNamespaceURI(prefix));\n while (differentNamespace(`ens${i}`) || attributes.find(hasSamePrefix))\n i += 1;\n return `ens${i}`;\n}\n\nconst xmlAttributeName = /^(?!xml|Xml|xMl|xmL|XMl|xML|XmL|XML)[A-Za-z_][A-Za-z0-9-_.]*(:[A-Za-z_][A-Za-z0-9-_.]*)?$/;\n\nfunction validName(name: string): boolean {\n return xmlAttributeName.test(name);\n}\n\nfunction handleSetAttributes({\n element,\n attributes,\n attributesNS,\n}: SetAttributesV2): SetAttributesV2 {\n const oldAttributes = { ...attributes };\n const oldAttributesNS = { ...attributesNS };\n \n // save element's non-prefixed attributes for undo\n Object.keys(attributes)\n .reverse()\n .forEach((name) => {\n oldAttributes[name] = element.getAttribute(name);\n });\n \n // change element's non-prefixed attributes\n for (const entry of Object.entries(attributes)) {\n try {\n const [name, value] = entry as [string, string | null];\n if (value === null) element.removeAttribute(name);\n else element.setAttribute(name, value);\n } catch (_e) {\n // undo nothing if update didn't work on this attribute\n delete oldAttributes[entry[0]];\n }\n }\n \n // save element's namespaced attributes for undo\n Object.entries(attributesNS).forEach(([ns, attrs]) => {\n Object.keys(attrs!)\n .filter(validName)\n .reverse()\n .forEach((name) => {\n oldAttributesNS[ns] = {\n ...oldAttributesNS[ns],\n [name]: element.getAttributeNS(ns, name.split(':').pop()!),\n };\n });\n Object.keys(attrs!)\n .filter((name) => !validName(name))\n .forEach((name) => {\n delete oldAttributesNS[ns]![name];\n });\n });\n \n // change element's namespaced attributes\n for (const nsEntry of Object.entries(attributesNS)) {\n const [ns, attrs] = nsEntry as [\n string,\n Partial<Record<string, string | null>>,\n ];\n for (const entry of Object.entries(attrs).filter(([name]) =>\n validName(name),\n )) {\n try {\n const [name, value] = entry as [string, string | null];\n if (value === null) {\n element.removeAttributeNS(ns, name.split(':').pop()!);\n } else {\n let qualifiedName = name;\n if (!qualifiedName.includes(':')) {\n let prefix = element.lookupPrefix(ns);\n if (!prefix) prefix = uniqueNSPrefix(element, ns);\n qualifiedName = `${prefix}:${name}`;\n }\n element.setAttributeNS(ns, qualifiedName, value);\n }\n } catch (_e) {\n delete oldAttributesNS[ns]![entry[0]];\n }\n }\n}\n\nreturn {\n element,\n attributes: oldAttributes,\n attributesNS: oldAttributesNS,\n};\n}\n\nfunction handleRemove({ node }: RemoveV2): InsertV2 | [] {\n const { parentNode: parent, nextSibling: reference } = node;\n node.parentNode?.removeChild(node);\n if (parent)\n return {\n node,\n parent,\n reference,\n };\n return [];\n}\n\nfunction handleInsert({\n parent,\n node,\n reference,\n}: InsertV2): InsertV2 | RemoveV2 | [] {\n try {\n const { parentNode, nextSibling } = node;\n\n /**\n * This is a workaround for converted edit api v1 events,\n * because if multiple edits are converted, they are converted before the changes from the previous edits are applied to the document\n * so if you first remove an element and then add a clone with changed attributes, the reference will be the element to remove since it hasnt been removed yet\n */\n if (!parent.contains(reference)) {\n reference = null;\n }\n\n parent.insertBefore(node, reference);\n\n if (parentNode) {\n // undo: move child node back to original place\n return {\n node,\n parent: parentNode,\n reference: nextSibling,\n };\n }\n\n // undo: remove orphaned node\n return { node };\n } catch (_e) {\n // undo nothing if insert doesn't work on these nodes\n return [];\n }\n}\n\n/** Applies an Edit, returning the corresponding 'undo' Edit. */\nexport function handleEditV2(edit: EditV2): EditV2 {\n if (isInsertV2(edit)) return handleInsert(edit);\n if (isRemoveV2(edit)) return handleRemove(edit);\n if (isSetAttributesV2(edit)) return handleSetAttributes(edit);\n if (isSetTextContentV2(edit)) return handleSetTextContent(edit);\n if (isComplexV2(edit)) return edit.map((edit) => handleEditV2(edit)).reverse();\n \n return [];\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"open-event.js","sourceRoot":"","sources":["../../../../core/foundation/open-event.ts"],"names":[],"mappings":"AAQA,MAAM,UAAU,YAAY,CAAC,GAAgB,EAAE,OAAe;IAC5D,OAAO,IAAI,WAAW,CAAa,WAAW,EAAE;QAC9C,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE,IAAI;QACd,MAAM,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE;KACzB,CAAC,CAAC;AACL,CAAC","sourcesContent":["export type OpenDetail = {\n doc: XMLDocument;\n docName: string;\n};\n\n/** Represents the intent to open `doc` with filename `docName`. */\nexport type OpenEvent = CustomEvent<OpenDetail>;\n\nexport function newOpenEvent(doc: XMLDocument, docName: string): OpenEvent {\n return new CustomEvent<OpenDetail>('oscd-open', {\n bubbles: true,\n composed: true,\n detail: { doc, docName },\n });\n}\n\ndeclare global {\n interface ElementEventMap {\n ['oscd-open']: OpenEvent;\n }\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../../../core/foundation/plugin.ts"],"names":[],"mappings":"AAyBA,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,CAAU,CAAC","sourcesContent":["import { targetLocales } from '../locales.js';\n\nexport type Plugin = {\n // name defines the name of the plugin\n name: string;\n // src defines the path to the plugins source file\n src: string;\n // kind defines the type of the plugin\n kind: PluginKind;\n // activeByDefault configures if the plugin should be active by default\n // this is will be user when users resets the plugins\n activeByDefault: boolean;\n // icon stores the icon name of the Material Icon\n icon?: string;\n // active shows if the plugin currently is active\n active?: boolean;\n // requireDoc shows if the plugin requires a document to be loaded\n requireDoc?: boolean;\n // position defines the position of menu plugins\n position?: MenuPosition\n translations?: Record<(typeof targetLocales)[number], string>;\n};\n\nexport type PluginSet = { menu: Plugin[]; editor: Plugin[] };\nexport type PluginKind = 'editor' | 'menu' | 'validator';\nexport const menuPosition = ['top', 'middle', 'bottom'] as const;\nexport type MenuPosition = (typeof menuPosition)[number];\n\n"]}
|
package/dist/core/foundation.js
DELETED
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
export { newOpenEvent } from './foundation/open-event.js';
|
|
2
|
-
export { newEditEvent, isComplex, isInsert, isNamespaced, isUpdate, isRemove, } from './foundation/deprecated/edit-event.js';
|
|
3
|
-
export { isEditV2, isRemoveV2, isInsertV2, isComplexV2, isSetAttributesV2, isSetTextContentV2 } from './foundation/edit.js';
|
|
4
|
-
export { newEditEventV2 } from './foundation/edit-event.js';
|
|
5
|
-
export { handleEditV2 } from './foundation/handle-edit.js';
|
|
6
|
-
export { cyrb64 } from './foundation/cyrb64.js';
|
|
7
|
-
export { newEditCompletedEvent } from './foundation/edit-completed-event.js';
|
|
8
|
-
/** @returns the cartesian product of `arrays` */
|
|
9
|
-
export function crossProduct(...arrays) {
|
|
10
|
-
return arrays.reduce((a, b) => a.flatMap(d => b.map(e => [d, e].flat())), [[]]);
|
|
11
|
-
}
|
|
12
|
-
export { OscdApi } from './api/api.js';
|
|
13
|
-
export { XMLEditor } from './api/editor/xml-editor.js';
|
|
14
|
-
//# sourceMappingURL=foundation.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"foundation.js","sourceRoot":"","sources":["../../../core/foundation.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAG1D,OAAO,EACL,YAAY,EACZ,SAAS,EACT,QAAQ,EACR,YAAY,EACZ,QAAQ,EACR,QAAQ,GACT,MAAM,uCAAuC,CAAC;AAkB/C,OAAO,EACL,QAAQ,EACR,UAAU,EACV,UAAU,EACV,WAAW,EACX,iBAAiB,EACjB,kBAAkB,EACnB,MAAM,sBAAsB,CAAC;AAM9B,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAE5D,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAE3D,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAIhD,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAO7E,iDAAiD;AACjD,MAAM,UAAU,YAAY,CAAI,GAAG,MAAa;IAC9C,OAAO,MAAM,CAAC,MAAM,CAClB,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,EAC1D,CAAC,EAAE,CAAC,CACL,CAAC;AACJ,CAAC;AAED,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC","sourcesContent":["import { LitElement } from 'lit';\n\n/** Constructor type for defining `LitElement` mixins. */\nexport type LitElementConstructor = new (...args: any[]) => LitElement;\n\nexport { newOpenEvent } from './foundation/open-event.js';\nexport type { OpenEvent, OpenDetail } from './foundation/open-event.js';\n\nexport {\n newEditEvent,\n isComplex,\n isInsert,\n isNamespaced,\n isUpdate,\n isRemove,\n} from './foundation/deprecated/edit-event.js';\nexport type {\n EditEvent,\n Edit,\n Insert,\n AttributeValue,\n NamespacedAttributeValue,\n Update,\n Remove,\n} from './foundation/deprecated/edit-event.js';\n\nexport type {\n EditV2,\n InsertV2,\n RemoveV2,\n SetTextContentV2,\n SetAttributesV2,\n} from './foundation/edit.js';\nexport {\n isEditV2,\n isRemoveV2,\n isInsertV2,\n isComplexV2,\n isSetAttributesV2,\n isSetTextContentV2\n} from './foundation/edit.js';\nexport type {\n EditEventV2,\n EditEventOptionsV2,\n EditDetailV2\n} from './foundation/edit-event.js';\nexport { newEditEventV2 } from './foundation/edit-event.js';\n\nexport { handleEditV2 } from './foundation/handle-edit.js';\n\nexport { cyrb64 } from './foundation/cyrb64.js';\n\nexport type { Plugin, PluginSet } from './foundation/plugin.js';\n\nexport { newEditCompletedEvent } from './foundation/edit-completed-event.js';\n\nexport type {\n EditCompletedEvent,\n EditCompletedDetail,\n} from './foundation/edit-completed-event.js';\n\n/** @returns the cartesian product of `arrays` */\nexport function crossProduct<T>(...arrays: T[][]): T[][] {\n return arrays.reduce<T[][]>(\n (a, b) => <T[][]>a.flatMap(d => b.map(e => [d, e].flat())),\n [[]]\n );\n}\n\nexport { OscdApi } from './api/api.js';\n\nexport { XMLEditor } from './api/editor/xml-editor.js';\n"]}
|
package/dist/core/locales.js
DELETED
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
// Do not modify this file by hand!
|
|
2
|
-
// Re-generate this file by running lit-localize.
|
|
3
|
-
/**
|
|
4
|
-
* The locale code that templates in this source code are written in.
|
|
5
|
-
*/
|
|
6
|
-
export const sourceLocale = `en`;
|
|
7
|
-
/**
|
|
8
|
-
* The other locale codes that this application is localized into. Sorted
|
|
9
|
-
* lexicographically.
|
|
10
|
-
*/
|
|
11
|
-
export const targetLocales = [
|
|
12
|
-
`de`,
|
|
13
|
-
];
|
|
14
|
-
/**
|
|
15
|
-
* All valid project locale codes. Sorted lexicographically.
|
|
16
|
-
*/
|
|
17
|
-
export const allLocales = [
|
|
18
|
-
`de`,
|
|
19
|
-
`en`,
|
|
20
|
-
];
|
|
21
|
-
//# sourceMappingURL=locales.js.map
|
package/dist/core/locales.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"locales.js","sourceRoot":"","sources":["../../../core/locales.ts"],"names":[],"mappings":"AAAA,mCAAmC;AACnC,iDAAiD;AAEjD;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,IAAI,CAAC;AAEjC;;;GAGG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,IAAI;CACI,CAAC;AAEX;;GAEG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,IAAI;IACJ,IAAI;CACI,CAAC","sourcesContent":["// Do not modify this file by hand!\n// Re-generate this file by running lit-localize.\n\n/**\n * The locale code that templates in this source code are written in.\n */\nexport const sourceLocale = `en`;\n\n/**\n * The other locale codes that this application is localized into. Sorted\n * lexicographically.\n */\nexport const targetLocales = [\n `de`,\n] as const;\n\n/**\n * All valid project locale codes. Sorted lexicographically.\n */\nexport const allLocales = [\n `de`,\n `en`,\n] as const;\n"]}
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import { __decorate } from "tslib";
|
|
2
|
-
import { css, customElement, html, LitElement, property, } from 'lit-element';
|
|
3
|
-
let WizardDividerElement = class WizardDividerElement extends LitElement {
|
|
4
|
-
render() {
|
|
5
|
-
return html ` ${this.renderHeader()} ${this.renderSeparator()}`;
|
|
6
|
-
}
|
|
7
|
-
renderHeader() {
|
|
8
|
-
if (!this.header) {
|
|
9
|
-
return html ``;
|
|
10
|
-
}
|
|
11
|
-
return html `<h4 class="header">${this.header}</h4>`;
|
|
12
|
-
}
|
|
13
|
-
renderSeparator() {
|
|
14
|
-
return html `<div role="separator"></div>`;
|
|
15
|
-
}
|
|
16
|
-
};
|
|
17
|
-
WizardDividerElement.styles = css `
|
|
18
|
-
div {
|
|
19
|
-
height: 0px;
|
|
20
|
-
margin: 10px 0px 10px 0px;
|
|
21
|
-
border-top: none;
|
|
22
|
-
border-right: none;
|
|
23
|
-
border-left: none;
|
|
24
|
-
border-image: initial;
|
|
25
|
-
border-bottom: 1px solid rgba(0, 0, 0, 0.12);
|
|
26
|
-
}
|
|
27
|
-
`;
|
|
28
|
-
__decorate([
|
|
29
|
-
property({
|
|
30
|
-
type: String,
|
|
31
|
-
})
|
|
32
|
-
], WizardDividerElement.prototype, "header", void 0);
|
|
33
|
-
WizardDividerElement = __decorate([
|
|
34
|
-
customElement('wizard-divider')
|
|
35
|
-
], WizardDividerElement);
|
|
36
|
-
export { WizardDividerElement };
|
|
37
|
-
//# sourceMappingURL=WizardDivider.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"WizardDivider.js","sourceRoot":"","sources":["../../../src/WizardDivider.ts"],"names":[],"mappings":";AAAA,OAAO,EACL,GAAG,EACH,aAAa,EACb,IAAI,EACJ,UAAU,EACV,QAAQ,GAET,MAAM,aAAa,CAAC;AAGd,IAAM,oBAAoB,GAA1B,MAAM,oBAAqB,SAAQ,UAAU;IAMlD,MAAM;QACJ,OAAO,IAAI,CAAA,IAAI,IAAI,CAAC,YAAY,EAAE,IAAI,IAAI,CAAC,eAAe,EAAE,EAAE,CAAC;IACjE,CAAC;IAEO,YAAY;QAClB,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YAChB,OAAO,IAAI,CAAA,EAAE,CAAC;SACf;QAED,OAAO,IAAI,CAAA,sBAAsB,IAAI,CAAC,MAAM,OAAO,CAAC;IACtD,CAAC;IAEO,eAAe;QACrB,OAAO,IAAI,CAAA,8BAA8B,CAAC;IAC5C,CAAC;;AAEM,2BAAM,GAAG,GAAG,CAAA;;;;;;;;;;GAUlB,CAAC;AA5BF;IAHC,QAAQ,CAAC;QACR,IAAI,EAAE,MAAM;KACb,CAAC;oDACc;AAJL,oBAAoB;IADhC,aAAa,CAAC,gBAAgB,CAAC;GACnB,oBAAoB,CAiChC;SAjCY,oBAAoB","sourcesContent":["import {\n css,\n customElement,\n html,\n LitElement,\n property,\n TemplateResult,\n} from 'lit-element';\n\n@customElement('wizard-divider')\nexport class WizardDividerElement extends LitElement {\n @property({\n type: String,\n })\n header?: string;\n\n render(): TemplateResult {\n return html` ${this.renderHeader()} ${this.renderSeparator()}`;\n }\n\n private renderHeader(): TemplateResult {\n if (!this.header) {\n return html``;\n }\n\n return html`<h4 class=\"header\">${this.header}</h4>`;\n }\n\n private renderSeparator(): TemplateResult {\n return html`<div role=\"separator\"></div>`;\n }\n\n static styles = css`\n div {\n height: 0px;\n margin: 10px 0px 10px 0px;\n border-top: none;\n border-right: none;\n border-left: none;\n border-image: initial;\n border-bottom: 1px solid rgba(0, 0, 0, 0.12);\n }\n `;\n}\n"]}
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import { __decorate } from "tslib";
|
|
2
|
-
import { html, state, query } from 'lit-element';
|
|
3
|
-
import { ifImplemented, } from './foundation.js';
|
|
4
|
-
import './wizard-dialog.js';
|
|
5
|
-
export function Wizarding(Base) {
|
|
6
|
-
class WizardingElement extends Base {
|
|
7
|
-
onWizard(we) {
|
|
8
|
-
const wizard = we.detail.wizard;
|
|
9
|
-
if (wizard === null)
|
|
10
|
-
this.workflow.shift();
|
|
11
|
-
else if (we.detail.subwizard)
|
|
12
|
-
this.workflow.unshift(wizard);
|
|
13
|
-
else
|
|
14
|
-
this.workflow.push(wizard);
|
|
15
|
-
this.requestUpdate('workflow');
|
|
16
|
-
this.updateComplete.then(() => this.wizardUI.updateComplete.then(() => this.wizardUI.dialog?.updateComplete.then(() => this.wizardUI.dialog?.focus())));
|
|
17
|
-
}
|
|
18
|
-
constructor(...args) {
|
|
19
|
-
super(...args);
|
|
20
|
-
/** FIFO queue of [[`Wizard`]]s to display. */
|
|
21
|
-
this.workflow = [];
|
|
22
|
-
this.addEventListener('wizard', this.onWizard);
|
|
23
|
-
this.addEventListener('editor-action', () => this.wizardUI.requestUpdate());
|
|
24
|
-
}
|
|
25
|
-
render() {
|
|
26
|
-
return html `${ifImplemented(super.render())}
|
|
27
|
-
<wizard-dialog .wizard=${this.workflow[0]?.() ?? []}></wizard-dialog>`;
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
__decorate([
|
|
31
|
-
state()
|
|
32
|
-
], WizardingElement.prototype, "workflow", void 0);
|
|
33
|
-
__decorate([
|
|
34
|
-
query('wizard-dialog')
|
|
35
|
-
], WizardingElement.prototype, "wizardUI", void 0);
|
|
36
|
-
return WizardingElement;
|
|
37
|
-
}
|
|
38
|
-
//# sourceMappingURL=Wizarding.js.map
|