@sciflow/editor-start 0.0.1-beta → 0.0.2
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/README.md +83 -2
- package/THIRD_PARTY_LICENSES +9 -0
- package/bin/extract-translations.mjs +54 -0
- package/dist/bundle/sciflow-editor.css +1 -1
- package/dist/bundle/sciflow-editor.js +10590 -15324
- package/dist/index.d.ts +7 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -3
- package/dist/lib/citation-source-adapter.d.ts +22 -2
- package/dist/lib/citation-source-adapter.d.ts.map +1 -1
- package/dist/lib/citation-source-adapter.js +104 -48
- package/dist/lib/drag-preview.d.ts +13 -0
- package/dist/lib/drag-preview.d.ts.map +1 -0
- package/dist/lib/drag-preview.js +43 -0
- package/dist/lib/editor-element.d.ts +30 -4
- package/dist/lib/editor-element.d.ts.map +1 -1
- package/dist/lib/editor-element.js +131 -30
- package/dist/lib/format-bar.d.ts +26 -2
- package/dist/lib/format-bar.d.ts.map +1 -1
- package/dist/lib/format-bar.js +369 -56
- package/dist/lib/ghost-cursor.d.ts +10 -0
- package/dist/lib/ghost-cursor.d.ts.map +1 -0
- package/dist/lib/ghost-cursor.js +59 -0
- package/dist/lib/icons-generated.d.ts +14 -0
- package/dist/lib/icons-generated.d.ts.map +1 -0
- package/dist/lib/icons-generated.js +60 -0
- package/dist/lib/outline.d.ts +18 -10
- package/dist/lib/outline.d.ts.map +1 -1
- package/dist/lib/outline.js +184 -28
- package/dist/lib/reference-list.d.ts +10 -2
- package/dist/lib/reference-list.d.ts.map +1 -1
- package/dist/lib/reference-list.js +47 -9
- package/dist/lib/selection-editor.d.ts +83 -5
- package/dist/lib/selection-editor.d.ts.map +1 -1
- package/dist/lib/selection-editor.js +1225 -147
- package/dist/lib/selection-transform-registry.d.ts +16 -0
- package/dist/lib/selection-transform-registry.d.ts.map +1 -0
- package/dist/lib/selection-transform-registry.js +24 -0
- package/dist/lib/selection-ui-renderer.d.ts +22 -0
- package/dist/lib/selection-ui-renderer.d.ts.map +1 -0
- package/dist/lib/selection-ui-renderer.js +244 -0
- package/dist/lib/selection-widget-host.d.ts +67 -0
- package/dist/lib/selection-widget-host.d.ts.map +1 -0
- package/dist/lib/selection-widget-host.js +151 -0
- package/dist/lib/selection-widget-registry.d.ts +16 -0
- package/dist/lib/selection-widget-registry.d.ts.map +1 -0
- package/dist/lib/selection-widget-registry.js +30 -0
- package/dist/lib/test-fixtures/soak-documents.d.ts +13 -0
- package/dist/lib/test-fixtures/soak-documents.d.ts.map +1 -0
- package/dist/lib/test-fixtures/soak-documents.js +69 -0
- package/dist/tsconfig.lib.tsbuildinfo +1 -1
- package/package.json +22 -13
- package/dist/demo/demo.js +0 -56
- package/dist/demo/index.html +0 -169
- package/dist/lib/citation-drop.d.ts +0 -25
- package/dist/lib/citation-drop.d.ts.map +0 -1
- package/dist/lib/citation-drop.js +0 -53
|
@@ -11,6 +11,8 @@ import { __decorate } from "tslib";
|
|
|
11
11
|
import { css, html, LitElement, nothing, unsafeCSS } from 'lit';
|
|
12
12
|
import { customElement, property } from 'lit/decorators.js';
|
|
13
13
|
import { classMap } from 'lit/directives/class-map.js';
|
|
14
|
+
import { t, LOCALE_CHANGE_EVENT } from '@sciflow/editor-core';
|
|
15
|
+
import { setTransparentDragImage } from './drag-preview.js';
|
|
14
16
|
import referenceListCss from './reference-list.css?inline';
|
|
15
17
|
import { applyThemeStylesToRoot, subscribeToSciFlowTheme } from './theme.js';
|
|
16
18
|
let SciFlowReferenceListElement = class SciFlowReferenceListElement extends LitElement {
|
|
@@ -20,8 +22,14 @@ let SciFlowReferenceListElement = class SciFlowReferenceListElement extends LitE
|
|
|
20
22
|
this.references = null;
|
|
21
23
|
/** Reference IDs to highlight. */
|
|
22
24
|
this.highlightedIds = [];
|
|
25
|
+
/**
|
|
26
|
+
* Whether the editor has an active cursor. Controls the enabled state of
|
|
27
|
+
* the "Cite" button. Set to true when the editor has focus/selection and
|
|
28
|
+
* false when it does not.
|
|
29
|
+
*/
|
|
30
|
+
this.cursorActive = false;
|
|
23
31
|
/** Text displayed when no references are available. */
|
|
24
|
-
this.emptyText = '
|
|
32
|
+
this.emptyText = '';
|
|
25
33
|
this.themeStyleElements = [];
|
|
26
34
|
}
|
|
27
35
|
static { this.styles = css `${unsafeCSS(referenceListCss)}`; }
|
|
@@ -30,8 +38,14 @@ let SciFlowReferenceListElement = class SciFlowReferenceListElement extends LitE
|
|
|
30
38
|
this.themeUnsub = subscribeToSciFlowTheme((cssTexts) => {
|
|
31
39
|
this.themeStyleElements = applyThemeStylesToRoot(this.renderRoot, this.themeStyleElements, cssTexts);
|
|
32
40
|
});
|
|
41
|
+
this.localeListener = () => this.requestUpdate();
|
|
42
|
+
document.addEventListener(LOCALE_CHANGE_EVENT, this.localeListener);
|
|
33
43
|
}
|
|
34
44
|
disconnectedCallback() {
|
|
45
|
+
if (this.localeListener) {
|
|
46
|
+
document.removeEventListener(LOCALE_CHANGE_EVENT, this.localeListener);
|
|
47
|
+
this.localeListener = undefined;
|
|
48
|
+
}
|
|
35
49
|
this.themeUnsub?.();
|
|
36
50
|
this.themeUnsub = undefined;
|
|
37
51
|
super.disconnectedCallback();
|
|
@@ -52,7 +66,7 @@ let SciFlowReferenceListElement = class SciFlowReferenceListElement extends LitE
|
|
|
52
66
|
if (references.length === 0) {
|
|
53
67
|
return html `
|
|
54
68
|
<ol class="reference-list">
|
|
55
|
-
<li class="reference-item reference-empty">${this.emptyText}</li>
|
|
69
|
+
<li class="reference-item reference-empty">${this.emptyText || t('referenceList.noReferences')}</li>
|
|
56
70
|
</ol>
|
|
57
71
|
`;
|
|
58
72
|
}
|
|
@@ -74,8 +88,21 @@ let SciFlowReferenceListElement = class SciFlowReferenceListElement extends LitE
|
|
|
74
88
|
<span class="reference-text">${displayText || nothing}</span>
|
|
75
89
|
<span class="reference-meta">
|
|
76
90
|
${id
|
|
77
|
-
? html `<code class="reference-id" aria-label=${
|
|
91
|
+
? html `<code class="reference-id" aria-label=${`${t('referenceList.cslIdAriaLabel')} ${id}`}>${id}</code>`
|
|
78
92
|
: nothing}
|
|
93
|
+
<button
|
|
94
|
+
type="button"
|
|
95
|
+
class="reference-cite-btn"
|
|
96
|
+
title=${t('referenceList.insertCitation')}
|
|
97
|
+
aria-label=${t('referenceList.insertCitation')}
|
|
98
|
+
?disabled=${!this.cursorActive}
|
|
99
|
+
@mousedown=${(event) => event.preventDefault()}
|
|
100
|
+
@click=${(event) => {
|
|
101
|
+
event.stopPropagation();
|
|
102
|
+
if (this.cursorActive)
|
|
103
|
+
this.handleInsertCitation(reference);
|
|
104
|
+
}}
|
|
105
|
+
>${t('referenceList.insertCitation')}</button>
|
|
79
106
|
<span class="reference-drag" aria-hidden="true">drag</span>
|
|
80
107
|
</span>
|
|
81
108
|
</li>
|
|
@@ -86,13 +113,13 @@ let SciFlowReferenceListElement = class SciFlowReferenceListElement extends LitE
|
|
|
86
113
|
}
|
|
87
114
|
formatReference(reference) {
|
|
88
115
|
const id = typeof reference.id === 'string' ? reference.id : null;
|
|
89
|
-
const
|
|
90
|
-
? reference.
|
|
91
|
-
: typeof reference.
|
|
92
|
-
? reference.
|
|
116
|
+
const rawReference = typeof reference.rawReference === 'string'
|
|
117
|
+
? reference.rawReference
|
|
118
|
+
: typeof reference.raw_reference === 'string'
|
|
119
|
+
? reference.raw_reference
|
|
93
120
|
: null;
|
|
94
|
-
if (
|
|
95
|
-
return { id, displayText:
|
|
121
|
+
if (rawReference && rawReference.trim()) {
|
|
122
|
+
return { id, displayText: rawReference.trim() };
|
|
96
123
|
}
|
|
97
124
|
const authors = Array.isArray(reference.author) && reference.author.length > 0
|
|
98
125
|
? reference.author
|
|
@@ -120,11 +147,19 @@ let SciFlowReferenceListElement = class SciFlowReferenceListElement extends LitE
|
|
|
120
147
|
const name = `${family}${given}`.trim();
|
|
121
148
|
return name || null;
|
|
122
149
|
}
|
|
150
|
+
handleInsertCitation(reference) {
|
|
151
|
+
this.dispatchEvent(new CustomEvent('sciflow-insert-citation', {
|
|
152
|
+
bubbles: true,
|
|
153
|
+
composed: true,
|
|
154
|
+
detail: { reference },
|
|
155
|
+
}));
|
|
156
|
+
}
|
|
123
157
|
handleDragStart(event, reference, displayText) {
|
|
124
158
|
const transfer = event.dataTransfer;
|
|
125
159
|
if (!transfer) {
|
|
126
160
|
return;
|
|
127
161
|
}
|
|
162
|
+
setTransparentDragImage(event, { opacity: 0.35, offsetY: -44, scale: 0.8 });
|
|
128
163
|
transfer.setData('application/x-sciflow-reference', 'sidebar');
|
|
129
164
|
transfer.effectAllowed = 'copy';
|
|
130
165
|
const payload = {
|
|
@@ -151,6 +186,9 @@ __decorate([
|
|
|
151
186
|
__decorate([
|
|
152
187
|
property({ attribute: false })
|
|
153
188
|
], SciFlowReferenceListElement.prototype, "highlightedIds", void 0);
|
|
189
|
+
__decorate([
|
|
190
|
+
property({ type: Boolean, attribute: false })
|
|
191
|
+
], SciFlowReferenceListElement.prototype, "cursorActive", void 0);
|
|
154
192
|
__decorate([
|
|
155
193
|
property({ type: String, attribute: 'empty-text' })
|
|
156
194
|
], SciFlowReferenceListElement.prototype, "emptyText", void 0);
|
|
@@ -15,6 +15,7 @@
|
|
|
15
15
|
import { LitElement } from 'lit';
|
|
16
16
|
import type { SciFlowEditorElement } from './editor-element.js';
|
|
17
17
|
import { type CitationSourceEditorAdapter } from './citation-source-adapter.js';
|
|
18
|
+
import './selection-widget-host.js';
|
|
18
19
|
/**
|
|
19
20
|
* Custom element that displays and edits the selected element's attributes.
|
|
20
21
|
*
|
|
@@ -32,12 +33,35 @@ export declare class SciFlowSelectionEditorElement extends LitElement {
|
|
|
32
33
|
/** Custom adapter for editing citation source. When unset, uses the global adapter. */
|
|
33
34
|
citationSourceAdapter: CitationSourceEditorAdapter | null;
|
|
34
35
|
private elementInfo;
|
|
36
|
+
/** Draft values for math sidebar (tex, style, label). Synced from node attrs when math is selected. */
|
|
37
|
+
private mathDraft;
|
|
38
|
+
/** Last preview result for math (error/warnings). SVG is rendered into mathPreviewContainer. */
|
|
39
|
+
private mathPreviewResult;
|
|
40
|
+
/** Draft values for citation sidebar (content + source). Applied only on Update. */
|
|
41
|
+
private citationDraft;
|
|
42
|
+
/** Draft values for cross-reference sidebar (display text + target href). */
|
|
43
|
+
private crossReferenceDraft;
|
|
44
|
+
/** Draft values for hyperlink (anchor mark) sidebar. */
|
|
45
|
+
private hyperlinkDraft;
|
|
46
|
+
private draftAttrs;
|
|
47
|
+
private draftDirty;
|
|
48
|
+
private pinSelection;
|
|
49
|
+
private showAllAttrs;
|
|
35
50
|
private resolvedEditor;
|
|
36
51
|
private selectionListener?;
|
|
37
52
|
private readyListener?;
|
|
38
53
|
private themeUnsub?;
|
|
39
54
|
private themeStyleElements;
|
|
40
55
|
private citationSourceContainer;
|
|
56
|
+
private mathPreviewContainer;
|
|
57
|
+
private mathPreviewDebounce;
|
|
58
|
+
private citationContentEditorContainer;
|
|
59
|
+
private citationContentView;
|
|
60
|
+
private citationContentEditorPosition;
|
|
61
|
+
private selectionDebounce;
|
|
62
|
+
private localeListener?;
|
|
63
|
+
private outlineTargetOptionsCacheDoc;
|
|
64
|
+
private outlineTargetOptionsCache;
|
|
41
65
|
static styles: import("lit").CSSResult;
|
|
42
66
|
connectedCallback(): void;
|
|
43
67
|
disconnectedCallback(): void;
|
|
@@ -50,37 +74,91 @@ export declare class SciFlowSelectionEditorElement extends LitElement {
|
|
|
50
74
|
private resolveEditor;
|
|
51
75
|
/** Clean up listeners attached to the last editor instance. */
|
|
52
76
|
private detachEditorListeners;
|
|
77
|
+
private scheduleSelectionUpdate;
|
|
53
78
|
/**
|
|
54
79
|
* Extract element information from the current selection.
|
|
55
80
|
*/
|
|
56
81
|
private updateElementInfo;
|
|
82
|
+
/** Get the selected citation node's text content from the main document (for draft init). */
|
|
83
|
+
private getCitationNodeTextContent;
|
|
84
|
+
/** Get the selected citation node's content as a Fragment (same schema as citation allows). */
|
|
85
|
+
private getCitationNodeContentFragment;
|
|
86
|
+
/** Get the citation node at the current selection, or null. */
|
|
87
|
+
private getCitationNode;
|
|
88
|
+
/** Get the selected cross-reference link node's text content from the main document. */
|
|
89
|
+
private getLinkNodeTextContent;
|
|
90
|
+
/** Get the selected cross-reference link node at current selection, or null. */
|
|
91
|
+
private getLinkNode;
|
|
92
|
+
/** Build outline target options for link href dropdown (headings and figures with id). */
|
|
93
|
+
private getOutlineTargetOptions;
|
|
94
|
+
private destroyCitationContentView;
|
|
95
|
+
private mountCitationContentEditor;
|
|
57
96
|
/** Convenience getter mirroring `editor.getCommands()`. */
|
|
58
97
|
private getCommandRunner;
|
|
59
98
|
/**
|
|
60
99
|
* Render a single attribute field, decoding known encoded values for readability.
|
|
61
100
|
*/
|
|
101
|
+
private getNodeTypeLabel;
|
|
62
102
|
private renderAttributeField;
|
|
103
|
+
/**
|
|
104
|
+
* Convert a raw attribute name like 'text-align' to a human-readable label.
|
|
105
|
+
*/
|
|
106
|
+
private getAttributeLabel;
|
|
63
107
|
/**
|
|
64
108
|
* Decode known encoded attributes for more readable display/editing.
|
|
65
109
|
*/
|
|
66
110
|
private decodeSpecialAttribute;
|
|
67
111
|
/**
|
|
68
112
|
* Mount the citation source adapter UI when a citation node is selected.
|
|
113
|
+
* Uses draft context (onSourceChange) so changes apply only on Update.
|
|
69
114
|
*/
|
|
70
115
|
private mountCitationSourceAdapter;
|
|
71
116
|
/**
|
|
72
117
|
* Unmount the citation source adapter and clean up.
|
|
73
118
|
*/
|
|
74
119
|
private unmountCitationSourceAdapter;
|
|
120
|
+
private handleDraftAttrChange;
|
|
121
|
+
/**
|
|
122
|
+
* Render the figure sidebar: type, id, alt text.
|
|
123
|
+
*/
|
|
124
|
+
private renderFigureSidebar;
|
|
125
|
+
/**
|
|
126
|
+
* Render the math equation sidebar: TeX source, style, label, preview, status, Apply/Cancel.
|
|
127
|
+
*/
|
|
128
|
+
private renderMathSidebar;
|
|
129
|
+
private scheduleMathPreview;
|
|
130
|
+
private runMathPreview;
|
|
131
|
+
private applyMathDraft;
|
|
132
|
+
private cancelMathDraft;
|
|
133
|
+
private handleMathKeydown;
|
|
134
|
+
/**
|
|
135
|
+
* Render the citation sidebar: content editor, source fields, Update button.
|
|
136
|
+
*/
|
|
137
|
+
private renderCitationSidebar;
|
|
138
|
+
private applyCitationDraft;
|
|
139
|
+
private handleCitationKeydown;
|
|
75
140
|
/**
|
|
76
|
-
*
|
|
141
|
+
* Render the cross-reference sidebar: display text + target, Update button.
|
|
77
142
|
*/
|
|
78
|
-
private
|
|
143
|
+
private renderCrossReferenceSidebar;
|
|
144
|
+
private applyCrossReferenceDraft;
|
|
145
|
+
private handleCrossReferenceKeydown;
|
|
79
146
|
/**
|
|
80
|
-
*
|
|
81
|
-
* Preserves the 'data' attribute if it exists, even though it's not displayed.
|
|
147
|
+
* Render the hyperlink (anchor mark) sidebar: URL input, Apply and Remove buttons.
|
|
82
148
|
*/
|
|
83
|
-
private
|
|
149
|
+
private renderHyperlinkSidebar;
|
|
150
|
+
private applyHyperlinkDraft;
|
|
151
|
+
private removeHyperlink;
|
|
152
|
+
private handleHyperlinkKeydown;
|
|
153
|
+
private resetDraftAttrs;
|
|
154
|
+
private getEffectiveAttrs;
|
|
155
|
+
private setDraftAttr;
|
|
156
|
+
private applyDraftAttrs;
|
|
157
|
+
private revertDraftAttrs;
|
|
158
|
+
private renderDraftActions;
|
|
159
|
+
private renderSelectionControls;
|
|
160
|
+
private togglePinSelection;
|
|
161
|
+
private handleGenericKeydown;
|
|
84
162
|
/**
|
|
85
163
|
* Encode a source string/JSON into the URI-encoded source field format.
|
|
86
164
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"selection-editor.d.ts","sourceRoot":"","sources":["../../src/lib/selection-editor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAa,UAAU,EAAa,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"selection-editor.d.ts","sourceRoot":"","sources":["../../src/lib/selection-editor.ts"],"names":[],"mappings":"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"}
|