Flowfile 0.3.9__py3-none-any.whl → 0.4.0__py3-none-any.whl
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.
Potentially problematic release.
This version of Flowfile might be problematic. Click here for more details.
- flowfile/__init__.py +6 -1
- flowfile/api.py +0 -1
- flowfile/web/static/assets/{CloudConnectionManager-c97c25f8.js → CloudConnectionManager-109ecc3c.js} +2 -2
- flowfile/web/static/assets/{CloudStorageReader-f1ff509e.js → CloudStorageReader-19cdd67a.js} +11 -78
- flowfile/web/static/assets/{CloudStorageWriter-034f8b78.js → CloudStorageWriter-48e0ae20.js} +12 -79
- flowfile/web/static/assets/{CloudStorageWriter-49c9a4b2.css → CloudStorageWriter-b0ee067f.css} +24 -24
- flowfile/web/static/assets/ColumnSelector-47996a16.css +10 -0
- flowfile/web/static/assets/ColumnSelector-ecaf7c44.js +83 -0
- flowfile/web/static/assets/ContextMenu-2b348c4c.js +41 -0
- flowfile/web/static/assets/{SettingsSection-9c836ecc.css → ContextMenu-4c74eef1.css} +0 -21
- flowfile/web/static/assets/ContextMenu-63cfa99b.css +26 -0
- flowfile/web/static/assets/ContextMenu-a779eed7.js +41 -0
- flowfile/web/static/assets/ContextMenu-c13f91d0.css +26 -0
- flowfile/web/static/assets/ContextMenu-eca26a03.js +41 -0
- flowfile/web/static/assets/{CrossJoin-41efa4cb.css → CrossJoin-1119d18e.css} +18 -18
- flowfile/web/static/assets/{CrossJoin-9e156ebe.js → CrossJoin-a88f8142.js} +14 -84
- flowfile/web/static/assets/CustomNode-74a37f74.css +32 -0
- flowfile/web/static/assets/CustomNode-cb863dff.js +211 -0
- flowfile/web/static/assets/{DatabaseConnectionSettings-d5c625b3.js → DatabaseConnectionSettings-819d3267.js} +3 -3
- flowfile/web/static/assets/{DatabaseManager-265adc5e.js → DatabaseManager-84ee2834.js} +2 -2
- flowfile/web/static/assets/{DatabaseReader-0b10551e.js → DatabaseReader-060dd412.js} +14 -114
- flowfile/web/static/assets/{DatabaseReader-f50c6558.css → DatabaseReader-ae61773c.css} +0 -27
- flowfile/web/static/assets/{DatabaseWriter-c17c6916.js → DatabaseWriter-7fc7750f.js} +13 -74
- flowfile/web/static/assets/{ExploreData-5bdae813.css → ExploreData-2d0cf4db.css} +8 -14
- flowfile/web/static/assets/ExploreData-82c95991.js +192 -0
- flowfile/web/static/assets/{ExternalSource-3a66556c.js → ExternalSource-e1a6ddc7.js} +8 -79
- flowfile/web/static/assets/{Filter-91ad87e7.js → Filter-8aca894a.js} +12 -85
- flowfile/web/static/assets/{Filter-a9d08ba1.css → Filter-f62091b3.css} +3 -3
- flowfile/web/static/assets/{Formula-29f19d21.css → Formula-bb96803d.css} +4 -4
- flowfile/web/static/assets/{Formula-3c395ab1.js → Formula-e33686d9.js} +18 -85
- flowfile/web/static/assets/{FuzzyMatch-6857de82.css → FuzzyMatch-1010f966.css} +42 -42
- flowfile/web/static/assets/{FuzzyMatch-2df0d230.js → FuzzyMatch-abda150d.js} +16 -87
- flowfile/web/static/assets/{GraphSolver-d285877f.js → GraphSolver-4ecad1d7.js} +13 -159
- flowfile/web/static/assets/GraphSolver-f0cb7bfb.css +22 -0
- flowfile/web/static/assets/{GroupBy-0bd1cc6b.js → GroupBy-656d07f3.js} +12 -75
- flowfile/web/static/assets/{Unique-b5615727.css → GroupBy-b9505323.css} +8 -8
- flowfile/web/static/assets/{Join-5a78a203.js → Join-b84ec849.js} +15 -85
- flowfile/web/static/assets/{Join-f45eff22.css → Join-fd79b451.css} +20 -20
- flowfile/web/static/assets/{ManualInput-a71b52c6.css → ManualInput-3246a08d.css} +20 -20
- flowfile/web/static/assets/{ManualInput-93aef9d6.js → ManualInput-346f4135.js} +11 -82
- flowfile/web/static/assets/MultiSelect-61b98268.js +5 -0
- flowfile/web/static/assets/MultiSelect.vue_vue_type_script_setup_true_lang-2a7c8312.js +63 -0
- flowfile/web/static/assets/NumericInput-e36602c2.js +5 -0
- flowfile/web/static/assets/NumericInput.vue_vue_type_script_setup_true_lang-211a1990.js +35 -0
- flowfile/web/static/assets/Output-ddc9079f.css +37 -0
- flowfile/web/static/assets/{Output-411ecaee.js → Output-eb041599.js} +13 -243
- flowfile/web/static/assets/Pivot-cf333e3d.css +22 -0
- flowfile/web/static/assets/{Pivot-89db4b04.js → Pivot-f5c774f4.js} +14 -138
- flowfile/web/static/assets/PivotValidation-26546cbc.js +61 -0
- flowfile/web/static/assets/PivotValidation-891ddfb0.css +13 -0
- flowfile/web/static/assets/PivotValidation-c46cd420.css +13 -0
- flowfile/web/static/assets/PivotValidation-e150a24b.js +61 -0
- flowfile/web/static/assets/{PolarsCode-a9f974f8.js → PolarsCode-da3a7abf.js} +13 -80
- flowfile/web/static/assets/Read-0c768769.js +243 -0
- flowfile/web/static/assets/Read-6b17491f.css +62 -0
- flowfile/web/static/assets/RecordCount-84736276.js +53 -0
- flowfile/web/static/assets/{RecordId-55ae7d36.js → RecordId-60055e6d.js} +8 -80
- flowfile/web/static/assets/SQLQueryComponent-36cef432.css +27 -0
- flowfile/web/static/assets/SQLQueryComponent-8a486004.js +38 -0
- flowfile/web/static/assets/{Sample-b4a18476.js → Sample-2d662611.js} +8 -77
- flowfile/web/static/assets/{SecretManager-b066d13a.js → SecretManager-ef586cab.js} +2 -2
- flowfile/web/static/assets/{Select-727688dc.js → Select-2e4a6965.js} +11 -85
- flowfile/web/static/assets/SettingsSection-2e4d03c4.css +21 -0
- flowfile/web/static/assets/{SettingsSection-695ac487.js → SettingsSection-310b61c0.js} +2 -40
- flowfile/web/static/assets/SettingsSection-5634f439.js +45 -0
- flowfile/web/static/assets/SettingsSection-5c696bee.css +20 -0
- flowfile/web/static/assets/SettingsSection-71e6b7e3.css +21 -0
- flowfile/web/static/assets/SettingsSection-7c68b19f.js +53 -0
- flowfile/web/static/assets/SingleSelect-7298811a.js +5 -0
- flowfile/web/static/assets/SingleSelect.vue_vue_type_script_setup_true_lang-43807bad.js +62 -0
- flowfile/web/static/assets/SliderInput-53105476.js +40 -0
- flowfile/web/static/assets/SliderInput-b8fb6a8c.css +4 -0
- flowfile/web/static/assets/{GroupBy-ab1ea74b.css → Sort-3643d625.css} +8 -8
- flowfile/web/static/assets/{Sort-be3339a8.js → Sort-4fdebe74.js} +12 -97
- flowfile/web/static/assets/TextInput-28366b7e.js +5 -0
- flowfile/web/static/assets/TextInput.vue_vue_type_script_setup_true_lang-9cad14ba.js +32 -0
- flowfile/web/static/assets/{TextToRows-c92d1ec2.css → TextToRows-5d2c1190.css} +9 -9
- flowfile/web/static/assets/{TextToRows-7b8998da.js → TextToRows-73ffa692.js} +14 -83
- flowfile/web/static/assets/ToggleSwitch-598add30.js +5 -0
- flowfile/web/static/assets/ToggleSwitch.vue_vue_type_script_setup_true_lang-f620cd32.js +31 -0
- flowfile/web/static/assets/{UnavailableFields-8b0cb48e.js → UnavailableFields-66239e83.js} +2 -2
- flowfile/web/static/assets/Union-26b10614.js +77 -0
- flowfile/web/static/assets/{Union-8d9ac7f9.css → Union-af6c3d9b.css} +6 -6
- flowfile/web/static/assets/{Unique-af5a80b4.js → Unique-33b9edbb.js} +22 -91
- flowfile/web/static/assets/{Sort-7ccfa0fe.css → Unique-f9fb0809.css} +8 -8
- flowfile/web/static/assets/Unpivot-1e422df3.css +30 -0
- flowfile/web/static/assets/{Unpivot-5195d411.js → Unpivot-ef69d0e2.js} +12 -166
- flowfile/web/static/assets/UnpivotValidation-0d240eeb.css +13 -0
- flowfile/web/static/assets/UnpivotValidation-8658388e.js +51 -0
- flowfile/web/static/assets/{ExploreData-18a4fe52.js → VueGraphicWalker-4d7861f4.js} +4 -264
- flowfile/web/static/assets/VueGraphicWalker-ed5ab88b.css +6 -0
- flowfile/web/static/assets/{api-023d1733.js → api-2d1394bd.js} +1 -1
- flowfile/web/static/assets/{api-cb00cce6.js → api-c908fffe.js} +1 -1
- flowfile/web/static/assets/{designer-6c322d8e.js → designer-1667687d.js} +2201 -705
- flowfile/web/static/assets/{designer-2197d782.css → designer-665e9408.css} +836 -201
- flowfile/web/static/assets/{documentation-4d1fafe1.js → documentation-5eed779e.js} +1 -1
- flowfile/web/static/assets/{dropDown-0b46dd77.js → dropDown-41ebe3c2.js} +1 -1
- flowfile/web/static/assets/{fullEditor-ec4e4f95.js → fullEditor-0670d32d.js} +2 -2
- flowfile/web/static/assets/{genericNodeSettings-def5879b.js → genericNodeSettings-38410ebf.js} +3 -3
- flowfile/web/static/assets/{index-681a3ed0.css → index-50508d4d.css} +8 -0
- flowfile/web/static/assets/{index-683fc198.js → index-5ec791df.js} +210 -31
- flowfile/web/static/assets/outputCsv-059583b6.js +86 -0
- flowfile/web/static/assets/{Output-48f81019.css → outputCsv-9cc59e0b.css} +0 -143
- flowfile/web/static/assets/outputExcel-76b1e02c.js +56 -0
- flowfile/web/static/assets/outputExcel-b41305c0.css +102 -0
- flowfile/web/static/assets/outputParquet-440fd4c7.js +31 -0
- flowfile/web/static/assets/outputParquet-cf8cf3f2.css +4 -0
- flowfile/web/static/assets/readCsv-9813903a.js +178 -0
- flowfile/web/static/assets/readCsv-bca3ed53.css +52 -0
- flowfile/web/static/assets/readExcel-7f40d237.js +203 -0
- flowfile/web/static/assets/readExcel-e1b381ea.css +64 -0
- flowfile/web/static/assets/readParquet-22d56002.js +26 -0
- flowfile/web/static/assets/readParquet-cee068e2.css +19 -0
- flowfile/web/static/assets/{secretApi-baceb6f9.js → secretApi-b3cb072e.js} +1 -1
- flowfile/web/static/assets/{selectDynamic-de91449a.js → selectDynamic-7ad95bca.js} +7 -7
- flowfile/web/static/assets/{selectDynamic-b062bc9b.css → selectDynamic-aa913ff4.css} +16 -16
- flowfile/web/static/assets/user-defined-icon-0ae16c90.png +0 -0
- flowfile/web/static/assets/{vue-codemirror.esm-dc5e3348.js → vue-codemirror.esm-b1dfaa46.js} +59 -33
- flowfile/web/static/assets/{vue-content-loader.es-ba94b82f.js → vue-content-loader.es-22bac17c.js} +1 -1
- flowfile/web/static/index.html +2 -2
- {flowfile-0.3.9.dist-info → flowfile-0.4.0.dist-info}/METADATA +1 -1
- {flowfile-0.3.9.dist-info → flowfile-0.4.0.dist-info}/RECORD +160 -102
- flowfile_core/configs/flow_logger.py +5 -13
- flowfile_core/configs/node_store/__init__.py +30 -0
- flowfile_core/configs/node_store/nodes.py +383 -99
- flowfile_core/configs/node_store/user_defined_node_registry.py +193 -0
- flowfile_core/configs/settings.py +2 -1
- flowfile_core/database/connection.py +5 -21
- flowfile_core/fileExplorer/funcs.py +239 -121
- flowfile_core/flowfile/flow_data_engine/flow_file_column/interface.py +4 -0
- flowfile_core/flowfile/flow_data_engine/flow_file_column/main.py +19 -34
- flowfile_core/flowfile/flow_data_engine/flow_file_column/type_registry.py +36 -0
- flowfile_core/flowfile/flow_data_engine/subprocess_operations/subprocess_operations.py +28 -8
- flowfile_core/flowfile/flow_graph.py +117 -34
- flowfile_core/flowfile/flow_node/flow_node.py +45 -13
- flowfile_core/flowfile/handler.py +22 -3
- flowfile_core/flowfile/manage/open_flowfile.py +9 -1
- flowfile_core/flowfile/node_designer/__init__.py +47 -0
- flowfile_core/flowfile/node_designer/_type_registry.py +197 -0
- flowfile_core/flowfile/node_designer/custom_node.py +371 -0
- flowfile_core/flowfile/node_designer/data_types.py +146 -0
- flowfile_core/flowfile/node_designer/ui_components.py +277 -0
- flowfile_core/flowfile/schema_callbacks.py +8 -4
- flowfile_core/flowfile/setting_generator/settings.py +0 -1
- flowfile_core/main.py +5 -1
- flowfile_core/routes/routes.py +73 -28
- flowfile_core/routes/user_defined_components.py +55 -0
- flowfile_core/schemas/input_schema.py +7 -1
- flowfile_core/schemas/output_model.py +5 -2
- flowfile_core/schemas/schemas.py +8 -3
- flowfile_core/schemas/transform_schema.py +1 -0
- flowfile_core/utils/validate_setup.py +3 -1
- flowfile_worker/__init__.py +6 -35
- flowfile_worker/main.py +5 -2
- flowfile_worker/routes.py +47 -5
- shared/__init__.py +15 -0
- shared/storage_config.py +258 -0
- flowfile/web/static/assets/GraphSolver-17fd26db.css +0 -68
- flowfile/web/static/assets/Pivot-f415e85f.css +0 -35
- flowfile/web/static/assets/Read-80dc1675.css +0 -197
- flowfile/web/static/assets/Read-c3b1929c.js +0 -701
- flowfile/web/static/assets/RecordCount-4e95f98e.js +0 -122
- flowfile/web/static/assets/Union-89fd73dc.js +0 -146
- flowfile/web/static/assets/Unpivot-246e9bbd.css +0 -77
- flowfile/web/static/assets/nodeTitle-a16db7c3.js +0 -227
- flowfile/web/static/assets/nodeTitle-f4b12bcb.css +0 -134
- {flowfile-0.3.9.dist-info → flowfile-0.4.0.dist-info}/LICENSE +0 -0
- {flowfile-0.3.9.dist-info → flowfile-0.4.0.dist-info}/WHEEL +0 -0
- {flowfile-0.3.9.dist-info → flowfile-0.4.0.dist-info}/entry_points.txt +0 -0
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { d as defineComponent,
|
|
2
|
-
import { C as CodeLoader } from "./vue-content-loader.es-
|
|
3
|
-
import { u as useNodeStore } from "./vue-codemirror.esm-
|
|
4
|
-
import { f as fetchDatabaseConnectionsInterfaces } from "./api-
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
import {
|
|
8
|
-
import "./secretApi-
|
|
9
|
-
import "./designer-
|
|
1
|
+
import { d as defineComponent, r as ref, n as onMounted, b as resolveComponent, c as openBlock, e as createElementBlock, f as createVNode, w as withCtx, p as createBaseVNode, F as Fragment, q as renderList, h as createBlock, g as createTextVNode, t as toDisplayString, u as unref, ap as ElRadio, a8 as withDirectives, ak as vModelSelect, a9 as vModelText, i as createCommentVNode, a as axios, z as ElMessage, _ as _export_sfc } from "./index-5ec791df.js";
|
|
2
|
+
import { C as CodeLoader } from "./vue-content-loader.es-22bac17c.js";
|
|
3
|
+
import { u as useNodeStore } from "./vue-codemirror.esm-b1dfaa46.js";
|
|
4
|
+
import { f as fetchDatabaseConnectionsInterfaces } from "./api-2d1394bd.js";
|
|
5
|
+
import DatabaseConnectionSettings from "./DatabaseConnectionSettings-819d3267.js";
|
|
6
|
+
import SqlQueryComponent from "./SQLQueryComponent-8a486004.js";
|
|
7
|
+
import { G as GenericNodeSettings } from "./genericNodeSettings-38410ebf.js";
|
|
8
|
+
import "./secretApi-b3cb072e.js";
|
|
9
|
+
import "./designer-1667687d.js";
|
|
10
10
|
const createNodeDatabaseReader = (flowId, nodeId) => {
|
|
11
11
|
const databaseSettings = {
|
|
12
12
|
query_mode: "table",
|
|
@@ -35,41 +35,7 @@ const createNodeDatabaseReader = (flowId, nodeId) => {
|
|
|
35
35
|
};
|
|
36
36
|
return nodePolarsCode;
|
|
37
37
|
};
|
|
38
|
-
const _hoisted_1
|
|
39
|
-
const _hoisted_2$1 = { class: "form-group" };
|
|
40
|
-
const _hoisted_3$1 = ["value"];
|
|
41
|
-
const _sfc_main$2 = /* @__PURE__ */ defineComponent({
|
|
42
|
-
__name: "SQLQueryComponent",
|
|
43
|
-
props: {
|
|
44
|
-
modelValue: {}
|
|
45
|
-
},
|
|
46
|
-
emits: ["update:modelValue"],
|
|
47
|
-
setup(__props, { emit: __emit }) {
|
|
48
|
-
const emit = __emit;
|
|
49
|
-
const onInput = (event) => {
|
|
50
|
-
const target = event.target;
|
|
51
|
-
emit("update:modelValue", target.value);
|
|
52
|
-
};
|
|
53
|
-
return (_ctx, _cache) => {
|
|
54
|
-
return openBlock(), createElementBlock("div", _hoisted_1$2, [
|
|
55
|
-
_cache[0] || (_cache[0] = createBaseVNode("h4", { class: "section-subtitle" }, "SQL Query", -1)),
|
|
56
|
-
createBaseVNode("div", _hoisted_2$1, [
|
|
57
|
-
createBaseVNode("textarea", {
|
|
58
|
-
id: "query",
|
|
59
|
-
value: _ctx.modelValue,
|
|
60
|
-
class: "form-control textarea",
|
|
61
|
-
placeholder: "Enter SQL query",
|
|
62
|
-
rows: "4",
|
|
63
|
-
onInput
|
|
64
|
-
}, null, 40, _hoisted_3$1)
|
|
65
|
-
])
|
|
66
|
-
]);
|
|
67
|
-
};
|
|
68
|
-
}
|
|
69
|
-
});
|
|
70
|
-
const SQLQueryComponent_vue_vue_type_style_index_0_scoped_29602f2f_lang = "";
|
|
71
|
-
const SqlQueryComponent = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["__scopeId", "data-v-29602f2f"]]);
|
|
72
|
-
const _hoisted_1$1 = {
|
|
38
|
+
const _hoisted_1 = {
|
|
73
39
|
key: 0,
|
|
74
40
|
class: "db-container"
|
|
75
41
|
};
|
|
@@ -101,7 +67,7 @@ const _hoisted_19 = {
|
|
|
101
67
|
class: "success-box"
|
|
102
68
|
};
|
|
103
69
|
const _hoisted_20 = { class: "success-message" };
|
|
104
|
-
const _sfc_main
|
|
70
|
+
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
105
71
|
__name: "DatabaseReader",
|
|
106
72
|
props: {
|
|
107
73
|
nodeId: {}
|
|
@@ -215,7 +181,7 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
|
215
181
|
});
|
|
216
182
|
return (_ctx, _cache) => {
|
|
217
183
|
const _component_el_radio_group = resolveComponent("el-radio-group");
|
|
218
|
-
return dataLoaded.value && nodeDatabaseReader.value ? (openBlock(), createElementBlock("div", _hoisted_1
|
|
184
|
+
return dataLoaded.value && nodeDatabaseReader.value ? (openBlock(), createElementBlock("div", _hoisted_1, [
|
|
219
185
|
createVNode(GenericNodeSettings, {
|
|
220
186
|
modelValue: nodeDatabaseReader.value,
|
|
221
187
|
"onUpdate:modelValue": _cache[7] || (_cache[7] = ($event) => nodeDatabaseReader.value = $event)
|
|
@@ -354,73 +320,7 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
|
354
320
|
}
|
|
355
321
|
});
|
|
356
322
|
const DatabaseReader_vue_vue_type_style_index_0_scoped_ae4d7dc5_lang = "";
|
|
357
|
-
const DatabaseReader = /* @__PURE__ */ _export_sfc(_sfc_main
|
|
358
|
-
const _hoisted_1 = { ref: "el" };
|
|
359
|
-
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
360
|
-
__name: "DatabaseReader",
|
|
361
|
-
props: {
|
|
362
|
-
nodeId: {
|
|
363
|
-
type: Number,
|
|
364
|
-
required: true
|
|
365
|
-
}
|
|
366
|
-
},
|
|
367
|
-
setup(__props) {
|
|
368
|
-
const nodeStore = useNodeStore();
|
|
369
|
-
const childComp = ref(null);
|
|
370
|
-
const props = __props;
|
|
371
|
-
const drawer = ref(false);
|
|
372
|
-
const closeOnDrawer = () => {
|
|
373
|
-
var _a;
|
|
374
|
-
drawer.value = false;
|
|
375
|
-
(_a = childComp.value) == null ? void 0 : _a.pushNodeData();
|
|
376
|
-
};
|
|
377
|
-
const openDrawer = async () => {
|
|
378
|
-
if (nodeStore.node_id === props.nodeId) {
|
|
379
|
-
return;
|
|
380
|
-
}
|
|
381
|
-
nodeStore.closeDrawer();
|
|
382
|
-
drawer.value = true;
|
|
383
|
-
const drawerOpen = nodeStore.isDrawerOpen;
|
|
384
|
-
nodeStore.isDrawerOpen = true;
|
|
385
|
-
await nextTick();
|
|
386
|
-
if (nodeStore.node_id === props.nodeId && drawerOpen) {
|
|
387
|
-
return;
|
|
388
|
-
}
|
|
389
|
-
if (childComp.value) {
|
|
390
|
-
childComp.value.loadNodeData(props.nodeId);
|
|
391
|
-
nodeStore.openDrawer(closeOnDrawer);
|
|
392
|
-
}
|
|
393
|
-
};
|
|
394
|
-
onMounted(async () => {
|
|
395
|
-
await nextTick();
|
|
396
|
-
});
|
|
397
|
-
return (_ctx, _cache) => {
|
|
398
|
-
return openBlock(), createElementBlock("div", _hoisted_1, [
|
|
399
|
-
createVNode(NodeButton, {
|
|
400
|
-
ref: "nodeButton",
|
|
401
|
-
"node-id": __props.nodeId,
|
|
402
|
-
"image-src": "database_reader.svg",
|
|
403
|
-
title: `${__props.nodeId}: Database reader`,
|
|
404
|
-
onClick: openDrawer
|
|
405
|
-
}, null, 8, ["node-id", "title"]),
|
|
406
|
-
drawer.value ? (openBlock(), createBlock(Teleport, {
|
|
407
|
-
key: 0,
|
|
408
|
-
to: "#nodesettings"
|
|
409
|
-
}, [
|
|
410
|
-
createVNode(NodeTitle, {
|
|
411
|
-
title: "Read data from database",
|
|
412
|
-
intro: "Read data from database"
|
|
413
|
-
}),
|
|
414
|
-
createVNode(DatabaseReader, {
|
|
415
|
-
ref_key: "childComp",
|
|
416
|
-
ref: childComp,
|
|
417
|
-
"node-id": __props.nodeId
|
|
418
|
-
}, null, 8, ["node-id"])
|
|
419
|
-
])) : createCommentVNode("", true)
|
|
420
|
-
], 512);
|
|
421
|
-
};
|
|
422
|
-
}
|
|
423
|
-
});
|
|
323
|
+
const DatabaseReader = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-ae4d7dc5"]]);
|
|
424
324
|
export {
|
|
425
|
-
|
|
325
|
+
DatabaseReader as default
|
|
426
326
|
};
|
|
@@ -1,31 +1,4 @@
|
|
|
1
1
|
|
|
2
|
-
.query-section[data-v-29602f2f] {
|
|
3
|
-
margin-top: 1rem;
|
|
4
|
-
padding-top: 1rem;
|
|
5
|
-
border-top: 1px solid #edf2f7;
|
|
6
|
-
}
|
|
7
|
-
.section-subtitle[data-v-29602f2f] {
|
|
8
|
-
margin: 0 0 0.75rem 0;
|
|
9
|
-
font-size: 0.95rem;
|
|
10
|
-
font-weight: 600;
|
|
11
|
-
color: #4a5568;
|
|
12
|
-
}
|
|
13
|
-
.form-group[data-v-29602f2f] {
|
|
14
|
-
margin-bottom: 1rem;
|
|
15
|
-
}
|
|
16
|
-
.form-control[data-v-29602f2f] {
|
|
17
|
-
width: 100%;
|
|
18
|
-
padding: 0.5rem;
|
|
19
|
-
border: 1px solid #e2e8f0;
|
|
20
|
-
border-radius: 4px;
|
|
21
|
-
font-size: 0.875rem;
|
|
22
|
-
}
|
|
23
|
-
.textarea[data-v-29602f2f] {
|
|
24
|
-
resize: vertical;
|
|
25
|
-
min-height: 100px;
|
|
26
|
-
font-family: monospace;
|
|
27
|
-
}
|
|
28
|
-
|
|
29
2
|
.db-container[data-v-ae4d7dc5] {
|
|
30
3
|
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
|
|
31
4
|
max-width: 100%;
|
|
@@ -1,12 +1,11 @@
|
|
|
1
|
-
import { d as defineComponent, r as ref, n as onMounted, b as resolveComponent, c as openBlock, e as createElementBlock, f as createVNode, w as withCtx, p as createBaseVNode, F as Fragment, q as renderList, h as createBlock,
|
|
2
|
-
import { C as CodeLoader } from "./vue-content-loader.es-
|
|
3
|
-
import { u as useNodeStore } from "./vue-codemirror.esm-
|
|
4
|
-
import { f as fetchDatabaseConnectionsInterfaces } from "./api-
|
|
5
|
-
import
|
|
6
|
-
import { G as GenericNodeSettings } from "./genericNodeSettings-
|
|
7
|
-
import
|
|
8
|
-
import "./
|
|
9
|
-
import "./designer-6c322d8e.js";
|
|
1
|
+
import { d as defineComponent, r as ref, n as onMounted, b as resolveComponent, c as openBlock, e as createElementBlock, f as createVNode, w as withCtx, p as createBaseVNode, F as Fragment, q as renderList, h as createBlock, g as createTextVNode, t as toDisplayString, u as unref, ap as ElRadio, a8 as withDirectives, ak as vModelSelect, a9 as vModelText, z as ElMessage, _ as _export_sfc } from "./index-5ec791df.js";
|
|
2
|
+
import { C as CodeLoader } from "./vue-content-loader.es-22bac17c.js";
|
|
3
|
+
import { u as useNodeStore } from "./vue-codemirror.esm-b1dfaa46.js";
|
|
4
|
+
import { f as fetchDatabaseConnectionsInterfaces } from "./api-2d1394bd.js";
|
|
5
|
+
import DatabaseConnectionSettings from "./DatabaseConnectionSettings-819d3267.js";
|
|
6
|
+
import { G as GenericNodeSettings } from "./genericNodeSettings-38410ebf.js";
|
|
7
|
+
import "./secretApi-b3cb072e.js";
|
|
8
|
+
import "./designer-1667687d.js";
|
|
10
9
|
const createNodeDatabaseWriter = (flowId, nodeId) => {
|
|
11
10
|
const databaseWriteSettings = {
|
|
12
11
|
if_exists: "replace",
|
|
@@ -33,7 +32,7 @@ const createNodeDatabaseWriter = (flowId, nodeId) => {
|
|
|
33
32
|
};
|
|
34
33
|
return nodePolarsCode;
|
|
35
34
|
};
|
|
36
|
-
const _hoisted_1
|
|
35
|
+
const _hoisted_1 = {
|
|
37
36
|
key: 0,
|
|
38
37
|
class: "db-container"
|
|
39
38
|
};
|
|
@@ -51,7 +50,7 @@ const _hoisted_12 = { class: "form-group half" };
|
|
|
51
50
|
const _hoisted_13 = { class: "listbox-wrapper" };
|
|
52
51
|
const _hoisted_14 = { class: "form-group" };
|
|
53
52
|
const _hoisted_15 = ["value"];
|
|
54
|
-
const _sfc_main
|
|
53
|
+
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
55
54
|
__name: "DatabaseWriter",
|
|
56
55
|
props: {
|
|
57
56
|
nodeId: {}
|
|
@@ -115,7 +114,7 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
|
115
114
|
});
|
|
116
115
|
return (_ctx, _cache) => {
|
|
117
116
|
const _component_el_radio_group = resolveComponent("el-radio-group");
|
|
118
|
-
return dataLoaded.value && nodeData.value ? (openBlock(), createElementBlock("div", _hoisted_1
|
|
117
|
+
return dataLoaded.value && nodeData.value ? (openBlock(), createElementBlock("div", _hoisted_1, [
|
|
119
118
|
createVNode(GenericNodeSettings, {
|
|
120
119
|
modelValue: nodeData.value,
|
|
121
120
|
"onUpdate:modelValue": _cache[6] || (_cache[6] = ($event) => nodeData.value = $event)
|
|
@@ -246,67 +245,7 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
|
246
245
|
}
|
|
247
246
|
});
|
|
248
247
|
const DatabaseWriter_vue_vue_type_style_index_0_scoped_90b52fee_lang = "";
|
|
249
|
-
const DatabaseWriter = /* @__PURE__ */ _export_sfc(_sfc_main
|
|
250
|
-
const _hoisted_1 = { ref: "el" };
|
|
251
|
-
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
252
|
-
__name: "DatabaseWriter",
|
|
253
|
-
props: {
|
|
254
|
-
nodeId: {
|
|
255
|
-
type: Number,
|
|
256
|
-
required: true
|
|
257
|
-
}
|
|
258
|
-
},
|
|
259
|
-
setup(__props) {
|
|
260
|
-
const nodeStore = useNodeStore();
|
|
261
|
-
const childComp = ref(null);
|
|
262
|
-
const props = __props;
|
|
263
|
-
const drawer = ref(false);
|
|
264
|
-
const closeOnDrawer = () => {
|
|
265
|
-
var _a;
|
|
266
|
-
drawer.value = false;
|
|
267
|
-
(_a = childComp.value) == null ? void 0 : _a.pushNodeData();
|
|
268
|
-
};
|
|
269
|
-
const openDrawer = async () => {
|
|
270
|
-
nodeStore.closeDrawer();
|
|
271
|
-
drawer.value = true;
|
|
272
|
-
nodeStore.isDrawerOpen;
|
|
273
|
-
nodeStore.isDrawerOpen = true;
|
|
274
|
-
await nextTick();
|
|
275
|
-
if (childComp.value) {
|
|
276
|
-
childComp.value.loadNodeData(props.nodeId);
|
|
277
|
-
nodeStore.openDrawer(closeOnDrawer);
|
|
278
|
-
}
|
|
279
|
-
};
|
|
280
|
-
onMounted(async () => {
|
|
281
|
-
await nextTick();
|
|
282
|
-
});
|
|
283
|
-
return (_ctx, _cache) => {
|
|
284
|
-
return openBlock(), createElementBlock("div", _hoisted_1, [
|
|
285
|
-
createVNode(NodeButton, {
|
|
286
|
-
ref: "nodeButton",
|
|
287
|
-
"node-id": __props.nodeId,
|
|
288
|
-
"image-src": "database_writer.svg",
|
|
289
|
-
title: `${__props.nodeId}: Database writer`,
|
|
290
|
-
onClick: openDrawer
|
|
291
|
-
}, null, 8, ["node-id", "title"]),
|
|
292
|
-
drawer.value ? (openBlock(), createBlock(Teleport, {
|
|
293
|
-
key: 0,
|
|
294
|
-
to: "#nodesettings"
|
|
295
|
-
}, [
|
|
296
|
-
createVNode(NodeTitle, {
|
|
297
|
-
title: "Write data to database",
|
|
298
|
-
intro: "Write data to database"
|
|
299
|
-
}),
|
|
300
|
-
createVNode(DatabaseWriter, {
|
|
301
|
-
ref_key: "childComp",
|
|
302
|
-
ref: childComp,
|
|
303
|
-
"node-id": __props.nodeId
|
|
304
|
-
}, null, 8, ["node-id"])
|
|
305
|
-
])) : createCommentVNode("", true)
|
|
306
|
-
], 512);
|
|
307
|
-
};
|
|
308
|
-
}
|
|
309
|
-
});
|
|
248
|
+
const DatabaseWriter = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-90b52fee"]]);
|
|
310
249
|
export {
|
|
311
|
-
|
|
250
|
+
DatabaseWriter as default
|
|
312
251
|
};
|
|
@@ -1,25 +1,19 @@
|
|
|
1
1
|
|
|
2
|
-
|
|
3
|
-
width: 100%;
|
|
4
|
-
min-height: 500px;
|
|
5
|
-
height: 100%;
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
.explore-data-container[data-v-669bd025] {
|
|
2
|
+
.explore-data-container[data-v-1a3f5721] {
|
|
9
3
|
height: 100%;
|
|
10
4
|
display: flex;
|
|
11
5
|
flex-direction: column;
|
|
12
6
|
}
|
|
13
|
-
.graphic-walker-wrapper[data-v-
|
|
7
|
+
.graphic-walker-wrapper[data-v-1a3f5721] {
|
|
14
8
|
flex-grow: 1; /* Allow wrapper to fill space */
|
|
15
9
|
min-height: 300px; /* Ensure minimum size */
|
|
16
10
|
overflow: hidden; /* Prevent content spillover if needed */
|
|
17
11
|
}
|
|
18
12
|
/* Ensure the child fills the wrapper if necessary */
|
|
19
|
-
[data-v-
|
|
13
|
+
[data-v-1a3f5721] .graphic-walker-wrapper > div {
|
|
20
14
|
height: 100%;
|
|
21
15
|
}
|
|
22
|
-
.error-display[data-v-
|
|
16
|
+
.error-display[data-v-1a3f5721] {
|
|
23
17
|
padding: 1rem;
|
|
24
18
|
color: #a94442; /* Dark red */
|
|
25
19
|
border: 1px solid #ebccd1; /* Light red border */
|
|
@@ -27,19 +21,19 @@ div[data-v-5af75af4] {
|
|
|
27
21
|
margin: 1rem;
|
|
28
22
|
border-radius: 4px;
|
|
29
23
|
}
|
|
30
|
-
.empty-data-message[data-v-
|
|
31
|
-
.fallback-message[data-v-
|
|
24
|
+
.empty-data-message[data-v-1a3f5721],
|
|
25
|
+
.fallback-message[data-v-1a3f5721] {
|
|
32
26
|
padding: 1rem;
|
|
33
27
|
text-align: center;
|
|
34
28
|
color: #777; /* Grey */
|
|
35
29
|
}
|
|
36
30
|
/* Add styles for the button if needed */
|
|
37
|
-
button[data-v-
|
|
31
|
+
button[data-v-1a3f5721] {
|
|
38
32
|
margin: 0.5rem 1rem;
|
|
39
33
|
padding: 0.5rem 1rem;
|
|
40
34
|
cursor: pointer;
|
|
41
35
|
}
|
|
42
|
-
button[data-v-
|
|
36
|
+
button[data-v-1a3f5721]:disabled {
|
|
43
37
|
cursor: not-allowed;
|
|
44
38
|
opacity: 0.6;
|
|
45
39
|
}
|
|
@@ -0,0 +1,192 @@
|
|
|
1
|
+
import { C as CodeLoader } from "./vue-content-loader.es-22bac17c.js";
|
|
2
|
+
import VueGraphicWalker from "./VueGraphicWalker-4d7861f4.js";
|
|
3
|
+
import { a as axios, d as defineComponent, r as ref, l as computed, c as openBlock, e as createElementBlock, h as createBlock, u as unref, p as createBaseVNode, t as toDisplayString, _ as _export_sfc } from "./index-5ec791df.js";
|
|
4
|
+
import { u as useNodeStore } from "./vue-codemirror.esm-b1dfaa46.js";
|
|
5
|
+
import { u as useItemStore } from "./designer-1667687d.js";
|
|
6
|
+
const fetchGraphicWalkerData = async (flowId, nodeId) => {
|
|
7
|
+
var _a, _b;
|
|
8
|
+
console.log(`[GraphicWalker] Fetching data for flow ${flowId}, node ${nodeId}`);
|
|
9
|
+
try {
|
|
10
|
+
const response = await axios.get("/analysis_data/graphic_walker_input", {
|
|
11
|
+
params: { flow_id: flowId, node_id: nodeId },
|
|
12
|
+
headers: { Accept: "application/json" },
|
|
13
|
+
timeout: 3e4
|
|
14
|
+
// Add timeout
|
|
15
|
+
});
|
|
16
|
+
if (!response.data || !response.data.graphic_walker_input) {
|
|
17
|
+
throw new Error("Invalid response data structure");
|
|
18
|
+
}
|
|
19
|
+
console.log(
|
|
20
|
+
`[GraphicWalker] Data fetched successfully with ${((_b = (_a = response.data.graphic_walker_input.dataModel) == null ? void 0 : _a.data) == null ? void 0 : _b.length) || 0} rows`
|
|
21
|
+
);
|
|
22
|
+
return response.data;
|
|
23
|
+
} catch (error) {
|
|
24
|
+
if (error.response) {
|
|
25
|
+
console.error(`[GraphicWalker] Server error ${error.response.status}:`, error.response.data);
|
|
26
|
+
} else if (error.request) {
|
|
27
|
+
console.error("[GraphicWalker] No response received:", error.request);
|
|
28
|
+
} else {
|
|
29
|
+
console.error("[GraphicWalker] Request error:", error.message);
|
|
30
|
+
}
|
|
31
|
+
throw error;
|
|
32
|
+
}
|
|
33
|
+
};
|
|
34
|
+
const _hoisted_1 = { class: "explore-data-container" };
|
|
35
|
+
const _hoisted_2 = {
|
|
36
|
+
key: 1,
|
|
37
|
+
class: "error-display"
|
|
38
|
+
};
|
|
39
|
+
const _hoisted_3 = {
|
|
40
|
+
key: 2,
|
|
41
|
+
class: "graphic-walker-wrapper"
|
|
42
|
+
};
|
|
43
|
+
const _hoisted_4 = {
|
|
44
|
+
key: 1,
|
|
45
|
+
class: "empty-data-message"
|
|
46
|
+
};
|
|
47
|
+
const _hoisted_5 = {
|
|
48
|
+
key: 3,
|
|
49
|
+
class: "fallback-message"
|
|
50
|
+
};
|
|
51
|
+
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
52
|
+
__name: "ExploreData",
|
|
53
|
+
setup(__props, { expose: __expose }) {
|
|
54
|
+
const isLoading = ref(false);
|
|
55
|
+
const nodeData = ref(null);
|
|
56
|
+
const chartList = ref([]);
|
|
57
|
+
const data = ref([]);
|
|
58
|
+
const fields = ref([]);
|
|
59
|
+
const errorMessage = ref(null);
|
|
60
|
+
const nodeStore = useNodeStore();
|
|
61
|
+
const globalNodeId = ref(-1);
|
|
62
|
+
const windowStore = useItemStore();
|
|
63
|
+
const vueGraphicWalkerRef = ref(null);
|
|
64
|
+
const canDisplayVisualization = computed(() => !isLoading.value && !errorMessage.value);
|
|
65
|
+
const loadNodeData = async (nodeId) => {
|
|
66
|
+
var _a, _b;
|
|
67
|
+
isLoading.value = true;
|
|
68
|
+
errorMessage.value = null;
|
|
69
|
+
globalNodeId.value = nodeId;
|
|
70
|
+
nodeData.value = null;
|
|
71
|
+
data.value = [];
|
|
72
|
+
fields.value = [];
|
|
73
|
+
chartList.value = [];
|
|
74
|
+
windowStore.setFullScreen("nodeSettings", true);
|
|
75
|
+
try {
|
|
76
|
+
const fetchedNodeData = await fetchGraphicWalkerData(nodeStore.flow_id, nodeId);
|
|
77
|
+
if (!(fetchedNodeData == null ? void 0 : fetchedNodeData.graphic_walker_input))
|
|
78
|
+
throw new Error("Received invalid data structure from backend.");
|
|
79
|
+
nodeData.value = fetchedNodeData;
|
|
80
|
+
const inputData = fetchedNodeData.graphic_walker_input;
|
|
81
|
+
fields.value = ((_a = inputData.dataModel) == null ? void 0 : _a.fields) || [];
|
|
82
|
+
data.value = ((_b = inputData.dataModel) == null ? void 0 : _b.data) || [];
|
|
83
|
+
chartList.value = inputData.specList || [];
|
|
84
|
+
} catch (error) {
|
|
85
|
+
console.error("Error loading GraphicWalker data:", error);
|
|
86
|
+
if (error.response && error.response.status === 422) {
|
|
87
|
+
errorMessage.value = "The analysis flow has not been run yet.";
|
|
88
|
+
} else if (error instanceof Error) {
|
|
89
|
+
errorMessage.value = `Failed to load data: ${error.message}`;
|
|
90
|
+
} else {
|
|
91
|
+
errorMessage.value = "An unknown error occurred while loading data.";
|
|
92
|
+
}
|
|
93
|
+
} finally {
|
|
94
|
+
isLoading.value = false;
|
|
95
|
+
}
|
|
96
|
+
};
|
|
97
|
+
const getCurrentSpec = async () => {
|
|
98
|
+
if (!vueGraphicWalkerRef.value) {
|
|
99
|
+
console.error("Cannot get spec: GraphicWalker component reference is missing.");
|
|
100
|
+
errorMessage.value = "Cannot get spec: Component reference missing.";
|
|
101
|
+
return null;
|
|
102
|
+
}
|
|
103
|
+
try {
|
|
104
|
+
const exportedCharts = await vueGraphicWalkerRef.value.exportCode();
|
|
105
|
+
if (exportedCharts === null) {
|
|
106
|
+
console.error("Failed to export chart specification (method returned null or failed).");
|
|
107
|
+
errorMessage.value = "Failed to retrieve current chart configuration.";
|
|
108
|
+
return null;
|
|
109
|
+
}
|
|
110
|
+
if (exportedCharts.length === 0) {
|
|
111
|
+
console.log("No charts were exported from Graphic Walker.");
|
|
112
|
+
return [];
|
|
113
|
+
}
|
|
114
|
+
return exportedCharts;
|
|
115
|
+
} catch (error) {
|
|
116
|
+
console.error("Error calling getCurrentSpec or processing result:", error);
|
|
117
|
+
errorMessage.value = `Failed to process configuration: ${error.message || "Unknown error"}`;
|
|
118
|
+
return null;
|
|
119
|
+
}
|
|
120
|
+
};
|
|
121
|
+
const saveSpecToNodeStore = async (specsToSave) => {
|
|
122
|
+
if (!nodeData.value) {
|
|
123
|
+
console.error("Cannot save: Original node data context is missing.");
|
|
124
|
+
errorMessage.value = "Cannot save: Missing original node data.";
|
|
125
|
+
return false;
|
|
126
|
+
}
|
|
127
|
+
try {
|
|
128
|
+
const saveData = {
|
|
129
|
+
...nodeData.value,
|
|
130
|
+
graphic_walker_input: {
|
|
131
|
+
...nodeData.value.graphic_walker_input,
|
|
132
|
+
specList: specsToSave,
|
|
133
|
+
dataModel: { data: [], fields: [] }
|
|
134
|
+
}
|
|
135
|
+
};
|
|
136
|
+
await nodeStore.updateSettingsDirectly(saveData);
|
|
137
|
+
console.log("Node settings updated successfully.");
|
|
138
|
+
return true;
|
|
139
|
+
} catch (error) {
|
|
140
|
+
console.error("Error saving spec to node store:", error);
|
|
141
|
+
errorMessage.value = `Failed to save configuration: ${error.message || "Unknown error"}`;
|
|
142
|
+
return false;
|
|
143
|
+
}
|
|
144
|
+
};
|
|
145
|
+
const pushNodeData = async () => {
|
|
146
|
+
errorMessage.value = null;
|
|
147
|
+
windowStore.setFullScreen("nodeSettings", false);
|
|
148
|
+
const currentSpec = await getCurrentSpec();
|
|
149
|
+
if (currentSpec === null) {
|
|
150
|
+
console.log("Spec retrieval failed, skipping save.");
|
|
151
|
+
return;
|
|
152
|
+
}
|
|
153
|
+
if (currentSpec.length === 0) {
|
|
154
|
+
console.log("No chart configurations exported, skipping save.");
|
|
155
|
+
return;
|
|
156
|
+
}
|
|
157
|
+
const saveSuccess = await saveSpecToNodeStore(currentSpec);
|
|
158
|
+
if (saveSuccess) {
|
|
159
|
+
console.log("Save process completed successfully.");
|
|
160
|
+
} else {
|
|
161
|
+
console.log("Save process failed.");
|
|
162
|
+
}
|
|
163
|
+
};
|
|
164
|
+
__expose({
|
|
165
|
+
loadNodeData,
|
|
166
|
+
pushNodeData
|
|
167
|
+
// Expose the main save action
|
|
168
|
+
});
|
|
169
|
+
return (_ctx, _cache) => {
|
|
170
|
+
return openBlock(), createElementBlock("div", _hoisted_1, [
|
|
171
|
+
isLoading.value ? (openBlock(), createBlock(unref(CodeLoader), { key: 0 })) : errorMessage.value ? (openBlock(), createElementBlock("div", _hoisted_2, [
|
|
172
|
+
createBaseVNode("p", null, "⚠️ Error: " + toDisplayString(errorMessage.value), 1)
|
|
173
|
+
])) : canDisplayVisualization.value ? (openBlock(), createElementBlock("div", _hoisted_3, [
|
|
174
|
+
data.value.length > 0 && fields.value.length > 0 ? (openBlock(), createBlock(VueGraphicWalker, {
|
|
175
|
+
key: 0,
|
|
176
|
+
ref_key: "vueGraphicWalkerRef",
|
|
177
|
+
ref: vueGraphicWalkerRef,
|
|
178
|
+
appearance: "light",
|
|
179
|
+
data: data.value,
|
|
180
|
+
fields: fields.value,
|
|
181
|
+
"spec-list": chartList.value
|
|
182
|
+
}, null, 8, ["data", "fields", "spec-list"])) : (openBlock(), createElementBlock("div", _hoisted_4, " Data loaded, but the dataset appears to be empty or lacks defined fields. "))
|
|
183
|
+
])) : (openBlock(), createElementBlock("div", _hoisted_5, "Please load data for the node."))
|
|
184
|
+
]);
|
|
185
|
+
};
|
|
186
|
+
}
|
|
187
|
+
});
|
|
188
|
+
const ExploreData_vue_vue_type_style_index_0_scoped_1a3f5721_lang = "";
|
|
189
|
+
const ExploreData = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-1a3f5721"]]);
|
|
190
|
+
export {
|
|
191
|
+
ExploreData as default
|
|
192
|
+
};
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
import { C as CodeLoader } from "./vue-content-loader.es-
|
|
2
|
-
import { u as useNodeStore } from "./vue-codemirror.esm-
|
|
3
|
-
import { G as GenericNodeSettings } from "./genericNodeSettings-
|
|
4
|
-
import { d as defineComponent, r as ref, a3 as watchEffect, b as resolveComponent, c as openBlock, e as createElementBlock, f as createVNode, w as withCtx, p as createBaseVNode, F as Fragment, q as renderList, i as createCommentVNode, h as createBlock, u as unref, _ as _export_sfc
|
|
5
|
-
import
|
|
6
|
-
import "./designer-6c322d8e.js";
|
|
1
|
+
import { C as CodeLoader } from "./vue-content-loader.es-22bac17c.js";
|
|
2
|
+
import { u as useNodeStore } from "./vue-codemirror.esm-b1dfaa46.js";
|
|
3
|
+
import { G as GenericNodeSettings } from "./genericNodeSettings-38410ebf.js";
|
|
4
|
+
import { d as defineComponent, r as ref, a3 as watchEffect, b as resolveComponent, c as openBlock, e as createElementBlock, f as createVNode, w as withCtx, p as createBaseVNode, F as Fragment, q as renderList, i as createCommentVNode, h as createBlock, u as unref, _ as _export_sfc } from "./index-5ec791df.js";
|
|
5
|
+
import "./designer-1667687d.js";
|
|
7
6
|
function get_template_source_type(type, options) {
|
|
8
7
|
switch (type) {
|
|
9
8
|
case "SAMPLE_USERS":
|
|
@@ -31,7 +30,7 @@ const _hoisted_3 = {
|
|
|
31
30
|
key: 0,
|
|
32
31
|
class: "file-upload-wrapper"
|
|
33
32
|
};
|
|
34
|
-
const _sfc_main
|
|
33
|
+
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
35
34
|
__name: "ExternalSource",
|
|
36
35
|
setup(__props, { expose: __expose }) {
|
|
37
36
|
const nodeStore = useNodeStore();
|
|
@@ -136,77 +135,7 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
|
136
135
|
}
|
|
137
136
|
});
|
|
138
137
|
const ExternalSource_vue_vue_type_style_index_0_scoped_62f1d8e0_lang = "";
|
|
139
|
-
const
|
|
140
|
-
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
141
|
-
__name: "ExternalSource",
|
|
142
|
-
props: {
|
|
143
|
-
nodeId: {
|
|
144
|
-
type: Number,
|
|
145
|
-
required: true
|
|
146
|
-
}
|
|
147
|
-
},
|
|
148
|
-
setup(__props) {
|
|
149
|
-
const nodeStore = useNodeStore();
|
|
150
|
-
const childComp = ref(null);
|
|
151
|
-
const props = __props;
|
|
152
|
-
const el = ref(null);
|
|
153
|
-
const drawer = ref(false);
|
|
154
|
-
const closeOnDrawer = () => {
|
|
155
|
-
var _a;
|
|
156
|
-
(_a = childComp.value) == null ? void 0 : _a.pushNodeData();
|
|
157
|
-
drawer.value = false;
|
|
158
|
-
nodeStore.isDrawerOpen = false;
|
|
159
|
-
};
|
|
160
|
-
const openDrawer = async () => {
|
|
161
|
-
if (nodeStore.node_id === props.nodeId) {
|
|
162
|
-
return;
|
|
163
|
-
}
|
|
164
|
-
nodeStore.closeDrawer();
|
|
165
|
-
drawer.value = true;
|
|
166
|
-
const drawerOpen = nodeStore.isDrawerOpen;
|
|
167
|
-
nodeStore.isDrawerOpen = true;
|
|
168
|
-
await nextTick();
|
|
169
|
-
if (nodeStore.node_id === props.nodeId && drawerOpen) {
|
|
170
|
-
return;
|
|
171
|
-
}
|
|
172
|
-
if (childComp.value) {
|
|
173
|
-
childComp.value.loadNodeData(props.nodeId);
|
|
174
|
-
nodeStore.openDrawer(closeOnDrawer);
|
|
175
|
-
}
|
|
176
|
-
};
|
|
177
|
-
onMounted(async () => {
|
|
178
|
-
await nextTick();
|
|
179
|
-
});
|
|
180
|
-
return (_ctx, _cache) => {
|
|
181
|
-
return openBlock(), createElementBlock("div", {
|
|
182
|
-
ref_key: "el",
|
|
183
|
-
ref: el
|
|
184
|
-
}, [
|
|
185
|
-
createVNode(NodeButton, {
|
|
186
|
-
ref: "nodeButton",
|
|
187
|
-
"node-id": __props.nodeId,
|
|
188
|
-
"image-src": "external_source.png",
|
|
189
|
-
title: `${__props.nodeId}: External source`,
|
|
190
|
-
onClick: openDrawer
|
|
191
|
-
}, null, 8, ["node-id", "title"]),
|
|
192
|
-
drawer.value ? (openBlock(), createBlock(Teleport, {
|
|
193
|
-
key: 0,
|
|
194
|
-
to: "#nodesettings"
|
|
195
|
-
}, [
|
|
196
|
-
createVNode(NodeTitle, {
|
|
197
|
-
title: "External source",
|
|
198
|
-
intro: "Import data from an external source"
|
|
199
|
-
}),
|
|
200
|
-
createVNode(externalSource, {
|
|
201
|
-
ref_key: "childComp",
|
|
202
|
-
ref: childComp,
|
|
203
|
-
"node-id": __props.nodeId
|
|
204
|
-
}, null, 8, ["node-id"])
|
|
205
|
-
])) : createCommentVNode("", true)
|
|
206
|
-
], 512);
|
|
207
|
-
};
|
|
208
|
-
}
|
|
209
|
-
});
|
|
138
|
+
const ExternalSource = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-62f1d8e0"]]);
|
|
210
139
|
export {
|
|
211
|
-
|
|
140
|
+
ExternalSource as default
|
|
212
141
|
};
|