graphwise-reactodia 0.0.1-TR12 → 0.0.1-TR14
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/cjs/graphwise-reactodia.cjs.entry.js +77 -51
- package/dist/cjs/graphwise-reactodia.cjs.js +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/components/graphwise-reactodia/graphwise-reactodia.css +47 -1
- package/dist/collection/components/graphwise-reactodia/graphwise-reactodia.js +17 -12
- package/dist/collection/components/graphwise-reactodia/reactodia-app.js +36 -17
- package/dist/collection/components/graphwise-reactodia/services/diagram/diagram.service.js +4 -1
- package/dist/collection/components/graphwise-reactodia/styles/type-style.resolver.js +25 -26
- package/dist/collection/pages/graphwise-reactodia/main.js +10 -0
- package/dist/collection/pages/graphwise-reactodia/owl-rdfs-settings.js +195 -0
- package/dist/esm/graphwise-reactodia.entry.js +77 -51
- package/dist/esm/graphwise-reactodia.js +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/graphwise-reactodia/graphwise-reactodia.esm.js +1 -1
- package/dist/graphwise-reactodia/p-0cb06f14.entry.js +1 -0
- package/dist/types/components/graphwise-reactodia/graphwise-reactodia.d.ts +7 -10
- package/dist/types/components/graphwise-reactodia/models/reactodia-app-props.d.ts +8 -4
- package/dist/types/components/graphwise-reactodia/reactodia-app.d.ts +3 -2
- package/dist/types/components.d.ts +6 -6
- package/package.json +2 -2
- package/dist/graphwise-reactodia/p-52bd1b0e.entry.js +0 -1
|
@@ -0,0 +1,195 @@
|
|
|
1
|
+
// A copy of Reactodia's `OwlRdfsSettings` preset (`src/data/sparql/sparqlDataProviderSettings.ts` in the
|
|
2
|
+
// reactodia-workspace fork), which the demo page passes to the wrapper as its `providerSettings`. The wrapper
|
|
3
|
+
// requires the host to pass the settings, and this plain script can't import them from `@reactodia/workspace`.
|
|
4
|
+
// Keep it in sync with the fork: `RDF_SETTINGS` mirrors `RdfSettings`, `OWL_RDFS_SETTINGS_OVERRIDE` mirrors
|
|
5
|
+
// `OwlRdfsSettingsOverride`.
|
|
6
|
+
|
|
7
|
+
const RDF_SETTINGS = {
|
|
8
|
+
linkConfigurations: [],
|
|
9
|
+
openWorldLinks: false,
|
|
10
|
+
|
|
11
|
+
propertyConfigurations: [],
|
|
12
|
+
openWorldProperties: false,
|
|
13
|
+
|
|
14
|
+
linksInfoQuery: `SELECT ?source ?type ?target
|
|
15
|
+
WHERE {
|
|
16
|
+
\${linkConfigurations}
|
|
17
|
+
VALUES (?source) {\${sourceIris}}
|
|
18
|
+
VALUES (?target) {\${targetIris}}
|
|
19
|
+
}`,
|
|
20
|
+
|
|
21
|
+
defaultPrefix: '',
|
|
22
|
+
|
|
23
|
+
schemaLabelProperty: 'rdfs:label',
|
|
24
|
+
dataLabelProperty: 'rdfs:label',
|
|
25
|
+
|
|
26
|
+
fullTextSearch: {
|
|
27
|
+
prefix: '',
|
|
28
|
+
queryPattern: '',
|
|
29
|
+
},
|
|
30
|
+
|
|
31
|
+
classTreeQuery: '',
|
|
32
|
+
|
|
33
|
+
classInfoQuery:
|
|
34
|
+
`SELECT ?class ?label ?instcount WHERE {
|
|
35
|
+
VALUES(?class) {\${ids}}
|
|
36
|
+
OPTIONAL {
|
|
37
|
+
?class \${schemaLabelProperty} ?label
|
|
38
|
+
\${labelLanguageFilter}
|
|
39
|
+
}
|
|
40
|
+
BIND("" as ?instcount)
|
|
41
|
+
}`,
|
|
42
|
+
|
|
43
|
+
linkTypesQuery:
|
|
44
|
+
`SELECT DISTINCT ?link ?instcount ?label WHERE {
|
|
45
|
+
\${linkTypesPattern}
|
|
46
|
+
OPTIONAL {
|
|
47
|
+
?link \${schemaLabelProperty} ?label
|
|
48
|
+
\${labelLanguageFilter}
|
|
49
|
+
}
|
|
50
|
+
}`,
|
|
51
|
+
|
|
52
|
+
linkTypesPattern: '',
|
|
53
|
+
|
|
54
|
+
linkTypesInfoQuery:
|
|
55
|
+
`SELECT ?link ?label WHERE {
|
|
56
|
+
VALUES(?link) {\${ids}}
|
|
57
|
+
OPTIONAL {
|
|
58
|
+
?link \${schemaLabelProperty} ?label
|
|
59
|
+
\${labelLanguageFilter}
|
|
60
|
+
}
|
|
61
|
+
}`,
|
|
62
|
+
|
|
63
|
+
propertyInfoQuery:
|
|
64
|
+
`SELECT ?property ?label WHERE {
|
|
65
|
+
VALUES(?property) {\${ids}}
|
|
66
|
+
OPTIONAL {
|
|
67
|
+
?property \${schemaLabelProperty} ?label
|
|
68
|
+
\${labelLanguageFilter}
|
|
69
|
+
}
|
|
70
|
+
}`,
|
|
71
|
+
|
|
72
|
+
elementInfoQuery: '',
|
|
73
|
+
imageQueryPattern: '',
|
|
74
|
+
|
|
75
|
+
linkTypesOfQuery: '',
|
|
76
|
+
linkTypesStatisticsQuery: '',
|
|
77
|
+
|
|
78
|
+
lookupQuery:
|
|
79
|
+
`SELECT \${outerProjection} WHERE {
|
|
80
|
+
\${filterInnerPrelude}
|
|
81
|
+
{
|
|
82
|
+
SELECT DISTINCT \${innerProjection} WHERE {
|
|
83
|
+
\${filterByType}
|
|
84
|
+
\${filterByRefElementLink}
|
|
85
|
+
\${filterByText}
|
|
86
|
+
\${filterAdditionalRestriction}
|
|
87
|
+
} \${orderBy} \${limit}
|
|
88
|
+
}
|
|
89
|
+
\${queryTypes}
|
|
90
|
+
\${queryElementInfo}
|
|
91
|
+
} \${orderBy}`,
|
|
92
|
+
|
|
93
|
+
filterRefElementLinkPattern: '',
|
|
94
|
+
filterTypePattern: '',
|
|
95
|
+
filterAdditionalRestriction: '',
|
|
96
|
+
filterElementInfoPattern: '',
|
|
97
|
+
};
|
|
98
|
+
|
|
99
|
+
const OWL_RDFS_SETTINGS_OVERRIDE = {
|
|
100
|
+
defaultPrefix:
|
|
101
|
+
`PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
|
|
102
|
+
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
|
|
103
|
+
PREFIX owl: <http://www.w3.org/2002/07/owl#>
|
|
104
|
+
`,
|
|
105
|
+
schemaLabelProperty: 'rdfs:label',
|
|
106
|
+
dataLabelProperty: 'rdfs:label',
|
|
107
|
+
fullTextSearch: {
|
|
108
|
+
prefix: '',
|
|
109
|
+
queryPattern:
|
|
110
|
+
`?inst \${dataLabelProperty} ?search1
|
|
111
|
+
FILTER regex(COALESCE(str(?search1)), "\${text}", "i")
|
|
112
|
+
BIND(0 as ?score)
|
|
113
|
+
`,
|
|
114
|
+
extractLabel: true,
|
|
115
|
+
},
|
|
116
|
+
classTreeQuery: `
|
|
117
|
+
SELECT ?class ?label ?parent
|
|
118
|
+
WHERE {
|
|
119
|
+
{
|
|
120
|
+
?class a rdfs:Class
|
|
121
|
+
} UNION {
|
|
122
|
+
?class a owl:Class
|
|
123
|
+
}
|
|
124
|
+
FILTER ISIRI(?class)
|
|
125
|
+
OPTIONAL {
|
|
126
|
+
?class rdfs:label ?label
|
|
127
|
+
\${labelLanguageFilter}
|
|
128
|
+
}
|
|
129
|
+
OPTIONAL {?class rdfs:subClassOf ?parent. FILTER ISIRI(?parent)}
|
|
130
|
+
}
|
|
131
|
+
`,
|
|
132
|
+
|
|
133
|
+
// todo: think more, maybe add a limit here?
|
|
134
|
+
linkTypesPattern: `
|
|
135
|
+
{ ?link a rdf:Property }
|
|
136
|
+
UNION
|
|
137
|
+
{ ?link a owl:ObjectProperty }
|
|
138
|
+
BIND('' as ?instcount)
|
|
139
|
+
`,
|
|
140
|
+
elementInfoQuery: `
|
|
141
|
+
CONSTRUCT {
|
|
142
|
+
?inst <urn:reactodia:sparql:type> ?class .
|
|
143
|
+
?inst <urn:reactodia:sparql:label> ?label .
|
|
144
|
+
?inst ?propType ?propValue.
|
|
145
|
+
} WHERE {
|
|
146
|
+
VALUES (?inst) {\${ids}}
|
|
147
|
+
OPTIONAL { ?inst a ?class }
|
|
148
|
+
OPTIONAL {
|
|
149
|
+
?inst \${dataLabelProperty} ?label
|
|
150
|
+
\${labelLanguageFilter}
|
|
151
|
+
}
|
|
152
|
+
OPTIONAL {
|
|
153
|
+
\${propertyConfigurations}
|
|
154
|
+
FILTER (isLiteral(?propValue))
|
|
155
|
+
\${valueLanguageFilter}
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
`,
|
|
159
|
+
imageQueryPattern: '{ ?inst ?linkType ?image } UNION { [] ?linkType ?inst. BIND(?inst as ?image) }',
|
|
160
|
+
linkTypesOfQuery: `
|
|
161
|
+
SELECT DISTINCT ?link ?direction
|
|
162
|
+
WHERE {
|
|
163
|
+
\${linkConfigurations}
|
|
164
|
+
}
|
|
165
|
+
`,
|
|
166
|
+
linkTypesStatisticsQuery: `
|
|
167
|
+
SELECT ?link ?outCount ?inCount
|
|
168
|
+
WHERE {
|
|
169
|
+
{
|
|
170
|
+
SELECT (\${linkId} as ?link) (count(?outObject) as ?outCount) WHERE {
|
|
171
|
+
\${linkConfigurationOut}
|
|
172
|
+
\${navigateElementFilterOut}
|
|
173
|
+
} LIMIT 101
|
|
174
|
+
} {
|
|
175
|
+
SELECT (\${linkId} as ?link) (count(?inObject) as ?inCount) WHERE {
|
|
176
|
+
\${linkConfigurationIn}
|
|
177
|
+
\${navigateElementFilterIn}
|
|
178
|
+
} LIMIT 101
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
`,
|
|
182
|
+
filterRefElementLinkPattern: '',
|
|
183
|
+
filterTypePattern: '?inst a ?instType. ?instType rdfs:subClassOf* ?class',
|
|
184
|
+
filterElementInfoPattern: `
|
|
185
|
+
OPTIONAL {?inst rdf:type ?foundClass}
|
|
186
|
+
BIND (coalesce(?foundClass, owl:Thing) as ?class)
|
|
187
|
+
OPTIONAL {
|
|
188
|
+
?inst \${dataLabelProperty} ?label
|
|
189
|
+
\${labelLanguageFilter}
|
|
190
|
+
}
|
|
191
|
+
`,
|
|
192
|
+
filterAdditionalRestriction: '',
|
|
193
|
+
};
|
|
194
|
+
|
|
195
|
+
const OWL_RDFS_SETTINGS = {...RDF_SETTINGS, ...OWL_RDFS_SETTINGS_OVERRIDE};
|
|
@@ -31374,8 +31374,10 @@ let DiagramService = DiagramService_1 = class DiagramService {
|
|
|
31374
31374
|
clearTimeout(notifyTimer);
|
|
31375
31375
|
}
|
|
31376
31376
|
notifyTimer = setTimeout(() => {
|
|
31377
|
+
if (notifyTimer) {
|
|
31378
|
+
onChangeCallback(model.exportLayout());
|
|
31379
|
+
}
|
|
31377
31380
|
notifyTimer = undefined;
|
|
31378
|
-
onChangeCallback(model.exportLayout());
|
|
31379
31381
|
}, DiagramService_1.NOTIFY_DEBOUNCE_MS);
|
|
31380
31382
|
};
|
|
31381
31383
|
model.history.events.on(DiagramService_1.HISTORY_CHANGED_EVENT, onHistoryChange);
|
|
@@ -31383,6 +31385,7 @@ let DiagramService = DiagramService_1 = class DiagramService {
|
|
|
31383
31385
|
model.history.events.off(DiagramService_1.HISTORY_CHANGED_EVENT, onHistoryChange);
|
|
31384
31386
|
if (notifyTimer) {
|
|
31385
31387
|
clearTimeout(notifyTimer);
|
|
31388
|
+
notifyTimer = undefined;
|
|
31386
31389
|
}
|
|
31387
31390
|
};
|
|
31388
31391
|
}
|
|
@@ -31524,34 +31527,33 @@ class SubscriptionList {
|
|
|
31524
31527
|
}
|
|
31525
31528
|
}
|
|
31526
31529
|
|
|
31527
|
-
const NODE_COLOR_VARIABLES = [
|
|
31528
|
-
'--gw-foreground-visual-diagram-categorical-01',
|
|
31529
|
-
'--gw-foreground-visual-diagram-categorical-02',
|
|
31530
|
-
'--gw-foreground-visual-diagram-categorical-03',
|
|
31531
|
-
'--gw-foreground-visual-diagram-categorical-04',
|
|
31532
|
-
'--gw-foreground-visual-diagram-categorical-05',
|
|
31533
|
-
'--gw-foreground-visual-diagram-categorical-06',
|
|
31534
|
-
'--gw-foreground-visual-diagram-categorical-07',
|
|
31535
|
-
'--gw-foreground-visual-diagram-categorical-08',
|
|
31536
|
-
'--gw-foreground-visual-diagram-categorical-09',
|
|
31537
|
-
'--gw-foreground-visual-diagram-categorical-10',
|
|
31538
|
-
'--gw-foreground-visual-diagram-categorical-11',
|
|
31539
|
-
'--gw-foreground-visual-diagram-categorical-12',
|
|
31540
|
-
'--gw-foreground-visual-diagram-categorical-13',
|
|
31541
|
-
'--gw-foreground-visual-diagram-categorical-14',
|
|
31542
|
-
'--gw-foreground-visual-diagram-categorical-15',
|
|
31543
|
-
'--gw-foreground-visual-diagram-categorical-16',
|
|
31544
|
-
'--gw-foreground-visual-diagram-categorical-17',
|
|
31545
|
-
'--gw-foreground-visual-diagram-categorical-18',
|
|
31546
|
-
'--gw-foreground-visual-diagram-categorical-19',
|
|
31547
|
-
'--gw-foreground-visual-diagram-categorical-20'
|
|
31548
|
-
];
|
|
31549
31530
|
/**
|
|
31550
31531
|
* Color slot assigned to each type, in the order the types are first seen.
|
|
31551
31532
|
*/
|
|
31552
31533
|
const typeToIndex = new Map();
|
|
31553
|
-
|
|
31554
|
-
|
|
31534
|
+
/**
|
|
31535
|
+
* Returns the internal property of the given palette slot, numbered from 1 and padded to two digits as in `_theme.scss`.
|
|
31536
|
+
*/
|
|
31537
|
+
function getTypeColorProperty(slot) {
|
|
31538
|
+
return `--_graphwise-reactodia-type-color-${String(slot).padStart(2, '0')}`;
|
|
31539
|
+
}
|
|
31540
|
+
/**
|
|
31541
|
+
* Reads the type palette of the Theme API: the internal properties `_theme.scss` resolves from the ones
|
|
31542
|
+
* the host declares, in slot order up to the first empty one.
|
|
31543
|
+
*/
|
|
31544
|
+
function getPalette() {
|
|
31545
|
+
const host = document.querySelector('graphwise-reactodia');
|
|
31546
|
+
if (!host) {
|
|
31547
|
+
return [];
|
|
31548
|
+
}
|
|
31549
|
+
const style = getComputedStyle(host);
|
|
31550
|
+
const palette = [];
|
|
31551
|
+
let color = style.getPropertyValue(getTypeColorProperty(1)).trim();
|
|
31552
|
+
while (color) {
|
|
31553
|
+
palette.push(color);
|
|
31554
|
+
color = style.getPropertyValue(getTypeColorProperty(palette.length + 1)).trim();
|
|
31555
|
+
}
|
|
31556
|
+
return palette;
|
|
31555
31557
|
}
|
|
31556
31558
|
/**
|
|
31557
31559
|
* Colors an element by its type: each type takes the next color from the palette, which wraps
|
|
@@ -31571,8 +31573,8 @@ const resolveTypeStyle = (types) => {
|
|
|
31571
31573
|
index = typeToIndex.size;
|
|
31572
31574
|
typeToIndex.set(type, index);
|
|
31573
31575
|
}
|
|
31574
|
-
const
|
|
31575
|
-
return
|
|
31576
|
+
const colors = getPalette();
|
|
31577
|
+
return colors.length ? { color: colors[index % colors.length] } : undefined;
|
|
31576
31578
|
};
|
|
31577
31579
|
const resetColors = () => {
|
|
31578
31580
|
typeToIndex.clear();
|
|
@@ -31695,10 +31697,13 @@ let workspaceContext = null;
|
|
|
31695
31697
|
* the React root.
|
|
31696
31698
|
*/
|
|
31697
31699
|
const subscriptions = new SubscriptionList();
|
|
31700
|
+
let diagramStorageSubscription;
|
|
31701
|
+
const diagramService = service(DiagramService);
|
|
31702
|
+
const diagramStorageService = service(DiagramStorageService);
|
|
31703
|
+
const eventService = service(EventService);
|
|
31698
31704
|
/**
|
|
31699
31705
|
* Builds a Reactodia {@link SparqlDataProvider} for the given endpoint using the supplied
|
|
31700
|
-
* query preset. The host owns the query configuration and passes it in via props
|
|
31701
|
-
* is provided we fall back to Reactodia's generic {@link OwlRdfsSettings} OWL/RDFS preset.
|
|
31706
|
+
* query preset. The host owns the query configuration and always passes it in via props.
|
|
31702
31707
|
*/
|
|
31703
31708
|
function createDataProvider(props) {
|
|
31704
31709
|
const { currentRepository, config, providerSettings } = props;
|
|
@@ -31755,20 +31760,30 @@ async function seedGraphToCanvas(context, dataProvider, links, signal) {
|
|
|
31755
31760
|
* root in {@link unmountReactodia}.
|
|
31756
31761
|
*/
|
|
31757
31762
|
function onDiagramChange(model) {
|
|
31758
|
-
|
|
31759
|
-
|
|
31760
|
-
|
|
31763
|
+
subscribeToDiagramChange(model);
|
|
31764
|
+
}
|
|
31765
|
+
/**
|
|
31766
|
+
* Starts persisting the model's edits to local storage, keeping the subscription in {@link diagramStorageSubscription}.
|
|
31767
|
+
*/
|
|
31768
|
+
function subscribeToDiagramChange(model) {
|
|
31769
|
+
diagramStorageSubscription === null || diagramStorageSubscription === void 0 ? void 0 : diagramStorageSubscription();
|
|
31770
|
+
diagramStorageSubscription = diagramService.subscribeToDiagramChange(model, (diagram) => diagramStorageService.save(diagram));
|
|
31771
|
+
subscriptions.add(diagramStorageSubscription);
|
|
31761
31772
|
}
|
|
31762
31773
|
/**
|
|
31763
31774
|
* Subscribes to the host's "clear persisted diagram" command so the saved layout is dropped on
|
|
31764
31775
|
* request (e.g. before a fresh seed should take precedence over previously saved edits). The
|
|
31765
31776
|
* subscription is tracked in {@link subscriptions} so it is released together with the React
|
|
31766
31777
|
* root in {@link unmountReactodia}.
|
|
31778
|
+
*
|
|
31779
|
+
* @param model The diagram model whose edits are persisted
|
|
31767
31780
|
*/
|
|
31768
|
-
function onClearDiagramStorage() {
|
|
31769
|
-
|
|
31770
|
-
|
|
31771
|
-
|
|
31781
|
+
function onClearDiagramStorage(model) {
|
|
31782
|
+
subscriptions.add(eventService.subscribeToClearDiagramStorage(() => {
|
|
31783
|
+
// re-subscribe, to avoid any pending debounced saves, which may write over the cleared diagram
|
|
31784
|
+
subscribeToDiagramChange(model);
|
|
31785
|
+
diagramStorageService.clear();
|
|
31786
|
+
}));
|
|
31772
31787
|
}
|
|
31773
31788
|
/**
|
|
31774
31789
|
* The Reactodia workspace React component.
|
|
@@ -31787,14 +31802,14 @@ function ReactodiaApp(props) {
|
|
|
31787
31802
|
workspaceContext = context;
|
|
31788
31803
|
const { model } = context;
|
|
31789
31804
|
onDiagramChange(model);
|
|
31790
|
-
onClearDiagramStorage();
|
|
31805
|
+
onClearDiagramStorage(model);
|
|
31791
31806
|
const dataProvider = createDataProvider(props);
|
|
31792
31807
|
const isReload = props.isReload;
|
|
31793
|
-
const savedDiagram =
|
|
31794
|
-
const diagramService = service(DiagramService);
|
|
31808
|
+
const savedDiagram = diagramStorageService.load();
|
|
31795
31809
|
if (isReload) {
|
|
31796
|
-
//
|
|
31797
|
-
//
|
|
31810
|
+
// Reload the diagram that is currently on the canvas. This may happen when the host changes the provider
|
|
31811
|
+
// settings, or when the user switches the language at runtime, since there is no existing mechanism to
|
|
31812
|
+
// re-translate the UI at runtime (not for the UI labels at least)
|
|
31798
31813
|
await diagramService.importDiagram(model, dataProvider, currentDiagram, signal);
|
|
31799
31814
|
}
|
|
31800
31815
|
else if ((_a = config.seedIris) === null || _a === void 0 ? void 0 : _a.length) {
|
|
@@ -31825,7 +31840,12 @@ function ReactodiaApp(props) {
|
|
|
31825
31840
|
defaultLanguage: language,
|
|
31826
31841
|
translations: translationsForLanguage(language),
|
|
31827
31842
|
typeStyleResolver: resolveTypeStyle
|
|
31828
|
-
}, reactExports.createElement(DefaultWorkspace, {
|
|
31843
|
+
}, reactExports.createElement(DefaultWorkspace, {
|
|
31844
|
+
colorScheme: props.theme,
|
|
31845
|
+
menu: reactExports.createElement(GraphwiseMenu),
|
|
31846
|
+
// place Undo/redo/layout actions in top right corner.
|
|
31847
|
+
actionsToolbar: { dock: 'ne' }
|
|
31848
|
+
}));
|
|
31829
31849
|
}
|
|
31830
31850
|
/**
|
|
31831
31851
|
* Mounts the Reactodia application into the given container and returns the React root.
|
|
@@ -31836,8 +31856,9 @@ function mountReactodia(container, props) {
|
|
|
31836
31856
|
return root;
|
|
31837
31857
|
}
|
|
31838
31858
|
/**
|
|
31839
|
-
* Re-points the diagram at a new SPARQL endpoint
|
|
31840
|
-
*
|
|
31859
|
+
* Re-points the diagram at a new SPARQL endpoint by recreating it with a fresh data provider.
|
|
31860
|
+
* The canvas is reset to empty, matching the initial mount, since the data of another repository
|
|
31861
|
+
* has nothing to do with the current graph.
|
|
31841
31862
|
*/
|
|
31842
31863
|
async function updateReactodia(props) {
|
|
31843
31864
|
if (!workspaceContext) {
|
|
@@ -31862,7 +31883,7 @@ function unmountReactodia(root) {
|
|
|
31862
31883
|
root.unmount();
|
|
31863
31884
|
}
|
|
31864
31885
|
|
|
31865
|
-
const graphwiseReactodiaCss = "graphwise-reactodia{display:block;width:100%;height:
|
|
31886
|
+
const graphwiseReactodiaCss = "graphwise-reactodia{--_graphwise-reactodia-type-color-01:var(--graphwise-reactodia-type-color-01);--_graphwise-reactodia-type-color-02:var(--graphwise-reactodia-type-color-02);--_graphwise-reactodia-type-color-03:var(--graphwise-reactodia-type-color-03);--_graphwise-reactodia-type-color-04:var(--graphwise-reactodia-type-color-04);--_graphwise-reactodia-type-color-05:var(--graphwise-reactodia-type-color-05);--_graphwise-reactodia-type-color-06:var(--graphwise-reactodia-type-color-06);--_graphwise-reactodia-type-color-07:var(--graphwise-reactodia-type-color-07);--_graphwise-reactodia-type-color-08:var(--graphwise-reactodia-type-color-08);--_graphwise-reactodia-type-color-09:var(--graphwise-reactodia-type-color-09);--_graphwise-reactodia-type-color-10:var(--graphwise-reactodia-type-color-10);--_graphwise-reactodia-type-color-11:var(--graphwise-reactodia-type-color-11);--_graphwise-reactodia-type-color-12:var(--graphwise-reactodia-type-color-12);--_graphwise-reactodia-type-color-13:var(--graphwise-reactodia-type-color-13);--_graphwise-reactodia-type-color-14:var(--graphwise-reactodia-type-color-14);--_graphwise-reactodia-type-color-15:var(--graphwise-reactodia-type-color-15);--_graphwise-reactodia-type-color-16:var(--graphwise-reactodia-type-color-16);--_graphwise-reactodia-type-color-17:var(--graphwise-reactodia-type-color-17);--_graphwise-reactodia-type-color-18:var(--graphwise-reactodia-type-color-18);--_graphwise-reactodia-type-color-19:var(--graphwise-reactodia-type-color-19);--_graphwise-reactodia-type-color-20:var(--graphwise-reactodia-type-color-20)}graphwise-reactodia{display:block;width:100%;height:100%}graphwise-reactodia .reactodia-container{position:relative;width:100%;height:100%}graphwise-reactodia .reactodia-selection-action__link{display:none}";
|
|
31866
31887
|
|
|
31867
31888
|
const GraphwiseReactodia = class {
|
|
31868
31889
|
constructor(hostRef) {
|
|
@@ -31872,12 +31893,13 @@ const GraphwiseReactodia = class {
|
|
|
31872
31893
|
*/
|
|
31873
31894
|
this.language = LanguageKey.EN;
|
|
31874
31895
|
}
|
|
31875
|
-
|
|
31896
|
+
onCurrentRepositoryChange() {
|
|
31876
31897
|
this.renderGraph();
|
|
31877
31898
|
}
|
|
31878
|
-
|
|
31899
|
+
onLanguageOrSettingsChange() {
|
|
31879
31900
|
// The translations are evaluated by the workspace at construction, so the only way
|
|
31880
31901
|
// to re-translate the UI is to re-create the graph.
|
|
31902
|
+
// Setting changes should keep the current diagram despite possible
|
|
31881
31903
|
this.renderGraph(true);
|
|
31882
31904
|
}
|
|
31883
31905
|
onThemeChange() {
|
|
@@ -31896,7 +31918,7 @@ const GraphwiseReactodia = class {
|
|
|
31896
31918
|
}
|
|
31897
31919
|
}
|
|
31898
31920
|
render() {
|
|
31899
|
-
return (h(Host, { key: '
|
|
31921
|
+
return (h(Host, { key: 'b2e584a0f1de975692197473d516219a7aa0f42f' }));
|
|
31900
31922
|
}
|
|
31901
31923
|
renderGraph(isReloading) {
|
|
31902
31924
|
var _a;
|
|
@@ -31906,6 +31928,9 @@ const GraphwiseReactodia = class {
|
|
|
31906
31928
|
if (!((_a = this.config) === null || _a === void 0 ? void 0 : _a.queryFunction)) {
|
|
31907
31929
|
throw new Error('config.queryFunction is required');
|
|
31908
31930
|
}
|
|
31931
|
+
if (!this.providerSettings) {
|
|
31932
|
+
throw new Error('providerSettings is required');
|
|
31933
|
+
}
|
|
31909
31934
|
if (!this.hostElement) {
|
|
31910
31935
|
return;
|
|
31911
31936
|
}
|
|
@@ -31915,6 +31940,7 @@ const GraphwiseReactodia = class {
|
|
|
31915
31940
|
config: this.config,
|
|
31916
31941
|
language: this.language,
|
|
31917
31942
|
providerSettings: this.providerSettings,
|
|
31943
|
+
theme: this.theme,
|
|
31918
31944
|
};
|
|
31919
31945
|
if (this.reactRoot && !isReloading) {
|
|
31920
31946
|
void updateReactodia(props);
|
|
@@ -31925,9 +31951,9 @@ const GraphwiseReactodia = class {
|
|
|
31925
31951
|
}
|
|
31926
31952
|
get hostElement() { return getElement(this); }
|
|
31927
31953
|
static get watchers() { return {
|
|
31928
|
-
"currentRepository": ["
|
|
31929
|
-
"
|
|
31930
|
-
"
|
|
31954
|
+
"currentRepository": ["onCurrentRepositoryChange"],
|
|
31955
|
+
"language": ["onLanguageOrSettingsChange"],
|
|
31956
|
+
"providerSettings": ["onLanguageOrSettingsChange"],
|
|
31931
31957
|
"theme": ["onThemeChange"]
|
|
31932
31958
|
}; }
|
|
31933
31959
|
};
|
|
@@ -17,5 +17,5 @@ var patchBrowser = () => {
|
|
|
17
17
|
|
|
18
18
|
patchBrowser().then(async (options) => {
|
|
19
19
|
await globalScripts();
|
|
20
|
-
return bootstrapLazy([["graphwise-reactodia",[[0,"graphwise-reactodia",{"currentRepository":[1,"current-repository"],"config":[16],"language":[1],"providerSettings":[16,"provider-settings"],"theme":[1]},null,{"currentRepository":["
|
|
20
|
+
return bootstrapLazy([["graphwise-reactodia",[[0,"graphwise-reactodia",{"currentRepository":[1,"current-repository"],"config":[16],"language":[1],"providerSettings":[16,"provider-settings"],"theme":[1]},null,{"currentRepository":["onCurrentRepositoryChange"],"language":["onLanguageOrSettingsChange"],"providerSettings":["onLanguageOrSettingsChange"],"theme":["onThemeChange"]}]]]], options);
|
|
21
21
|
});
|
package/dist/esm/loader.js
CHANGED
|
@@ -5,7 +5,7 @@ import { g as globalScripts } from './app-globals-CalY52z6.js';
|
|
|
5
5
|
const defineCustomElements = async (win, options) => {
|
|
6
6
|
if (typeof window === 'undefined') return undefined;
|
|
7
7
|
await globalScripts();
|
|
8
|
-
return bootstrapLazy([["graphwise-reactodia",[[0,"graphwise-reactodia",{"currentRepository":[1,"current-repository"],"config":[16],"language":[1],"providerSettings":[16,"provider-settings"],"theme":[1]},null,{"currentRepository":["
|
|
8
|
+
return bootstrapLazy([["graphwise-reactodia",[[0,"graphwise-reactodia",{"currentRepository":[1,"current-repository"],"config":[16],"language":[1],"providerSettings":[16,"provider-settings"],"theme":[1]},null,{"currentRepository":["onCurrentRepositoryChange"],"language":["onLanguageOrSettingsChange"],"providerSettings":["onLanguageOrSettingsChange"],"theme":["onThemeChange"]}]]]], options);
|
|
9
9
|
};
|
|
10
10
|
|
|
11
11
|
export { defineCustomElements };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p as e,b as r}from"./p-Cypw7ydc.js";export{s as setNonce}from"./p-Cypw7ydc.js";import{g as t}from"./p-CalY52z6.js";(()=>{const r=import.meta.url,t={};return""!==r&&(t.resourcesUrl=new URL(".",r).href),e(t)})().then((async e=>(await t(),r([["p-
|
|
1
|
+
import{p as e,b as r}from"./p-Cypw7ydc.js";export{s as setNonce}from"./p-Cypw7ydc.js";import{g as t}from"./p-CalY52z6.js";(()=>{const r=import.meta.url,t={};return""!==r&&(t.resourcesUrl=new URL(".",r).href),e(t)})().then((async e=>(await t(),r([["p-0cb06f14",[[0,"graphwise-reactodia",{currentRepository:[1,"current-repository"],config:[16],language:[1],providerSettings:[16,"provider-settings"],theme:[1]},null,{currentRepository:["onCurrentRepositoryChange"],language:["onLanguageOrSettingsChange"],providerSettings:["onLanguageOrSettingsChange"],theme:["onThemeChange"]}]]]],e))));
|