Flowfile 0.3.9__py3-none-any.whl → 0.3.10__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 +1 -1
- flowfile/api.py +0 -1
- flowfile/web/static/assets/{CloudConnectionManager-c97c25f8.js → CloudConnectionManager-d7c2c028.js} +2 -2
- flowfile/web/static/assets/{CloudStorageReader-f1ff509e.js → CloudStorageReader-d467329f.js} +11 -78
- flowfile/web/static/assets/{CloudStorageWriter-034f8b78.js → CloudStorageWriter-071b8b00.js} +12 -79
- flowfile/web/static/assets/{CloudStorageWriter-49c9a4b2.css → CloudStorageWriter-b0ee067f.css} +24 -24
- flowfile/web/static/assets/ContextMenu-2dea5e27.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-785554c4.js +41 -0
- flowfile/web/static/assets/ContextMenu-a51e19ea.js +41 -0
- flowfile/web/static/assets/ContextMenu-c13f91d0.css +26 -0
- flowfile/web/static/assets/{CrossJoin-41efa4cb.css → CrossJoin-1119d18e.css} +18 -18
- flowfile/web/static/assets/{CrossJoin-9e156ebe.js → CrossJoin-cf68ec7a.js} +14 -84
- flowfile/web/static/assets/{DatabaseConnectionSettings-d5c625b3.js → DatabaseConnectionSettings-435c5dd8.js} +3 -3
- flowfile/web/static/assets/{DatabaseManager-265adc5e.js → DatabaseManager-349e33a8.js} +2 -2
- flowfile/web/static/assets/{DatabaseReader-0b10551e.js → DatabaseReader-8075bd28.js} +14 -114
- flowfile/web/static/assets/{DatabaseReader-f50c6558.css → DatabaseReader-ae61773c.css} +0 -27
- flowfile/web/static/assets/{DatabaseWriter-c17c6916.js → DatabaseWriter-3e2dda89.js} +13 -74
- flowfile/web/static/assets/{ExploreData-5bdae813.css → ExploreData-2d0cf4db.css} +8 -14
- flowfile/web/static/assets/ExploreData-76ec698c.js +192 -0
- flowfile/web/static/assets/{ExternalSource-3a66556c.js → ExternalSource-609a265c.js} +8 -79
- flowfile/web/static/assets/{Filter-91ad87e7.js → Filter-97cff793.js} +12 -85
- flowfile/web/static/assets/{Filter-a9d08ba1.css → Filter-f62091b3.css} +3 -3
- flowfile/web/static/assets/{Formula-3c395ab1.js → Formula-09de0ec9.js} +18 -85
- flowfile/web/static/assets/{Formula-29f19d21.css → Formula-bb96803d.css} +4 -4
- flowfile/web/static/assets/{FuzzyMatch-6857de82.css → FuzzyMatch-1010f966.css} +42 -42
- flowfile/web/static/assets/{FuzzyMatch-2df0d230.js → FuzzyMatch-bdf70248.js} +16 -87
- flowfile/web/static/assets/{GraphSolver-d285877f.js → GraphSolver-0b5a0e05.js} +13 -159
- flowfile/web/static/assets/GraphSolver-f0cb7bfb.css +22 -0
- flowfile/web/static/assets/{Unique-b5615727.css → GroupBy-b9505323.css} +8 -8
- flowfile/web/static/assets/{GroupBy-0bd1cc6b.js → GroupBy-eaddadde.js} +12 -75
- flowfile/web/static/assets/{Join-5a78a203.js → Join-3313371b.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-e8bfc0be.js} +11 -82
- flowfile/web/static/assets/{Output-411ecaee.js → Output-7303bb09.js} +13 -243
- flowfile/web/static/assets/Output-ddc9079f.css +37 -0
- flowfile/web/static/assets/{Pivot-89db4b04.js → Pivot-3b1c54ef.js} +14 -138
- flowfile/web/static/assets/Pivot-cf333e3d.css +22 -0
- flowfile/web/static/assets/PivotValidation-3bb36c8f.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-eaa819c0.js +61 -0
- flowfile/web/static/assets/{PolarsCode-a9f974f8.js → PolarsCode-aa12e25d.js} +13 -80
- flowfile/web/static/assets/Read-6b17491f.css +62 -0
- flowfile/web/static/assets/Read-a2bfc618.js +243 -0
- flowfile/web/static/assets/RecordCount-aa0dc082.js +53 -0
- flowfile/web/static/assets/{RecordId-55ae7d36.js → RecordId-48ee1a3b.js} +8 -80
- flowfile/web/static/assets/SQLQueryComponent-36cef432.css +27 -0
- flowfile/web/static/assets/SQLQueryComponent-e149dbf2.js +38 -0
- flowfile/web/static/assets/{Sample-b4a18476.js → Sample-f06cb97a.js} +8 -77
- flowfile/web/static/assets/{SecretManager-b066d13a.js → SecretManager-37f34886.js} +2 -2
- flowfile/web/static/assets/{Select-727688dc.js → Select-b60e6c47.js} +11 -85
- flowfile/web/static/assets/SettingsSection-2e4d03c4.css +21 -0
- flowfile/web/static/assets/SettingsSection-5c696bee.css +20 -0
- flowfile/web/static/assets/SettingsSection-70e5a7b1.js +53 -0
- flowfile/web/static/assets/SettingsSection-71e6b7e3.css +21 -0
- flowfile/web/static/assets/{SettingsSection-695ac487.js → SettingsSection-75b6cf4f.js} +2 -40
- flowfile/web/static/assets/SettingsSection-e57a672e.js +45 -0
- flowfile/web/static/assets/{GroupBy-ab1ea74b.css → Sort-3643d625.css} +8 -8
- flowfile/web/static/assets/{Sort-be3339a8.js → Sort-51b1ee4d.js} +12 -97
- flowfile/web/static/assets/{TextToRows-7b8998da.js → TextToRows-26835f8f.js} +14 -83
- flowfile/web/static/assets/{TextToRows-c92d1ec2.css → TextToRows-5d2c1190.css} +9 -9
- flowfile/web/static/assets/{UnavailableFields-8b0cb48e.js → UnavailableFields-88a4cd0c.js} +2 -2
- flowfile/web/static/assets/Union-4d0088eb.js +77 -0
- flowfile/web/static/assets/{Union-8d9ac7f9.css → Union-af6c3d9b.css} +6 -6
- flowfile/web/static/assets/{Unique-af5a80b4.js → Unique-7d554a62.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-4668595c.js} +12 -166
- flowfile/web/static/assets/UnpivotValidation-0d240eeb.css +13 -0
- flowfile/web/static/assets/UnpivotValidation-d4f0e0e8.js +51 -0
- flowfile/web/static/assets/{ExploreData-18a4fe52.js → VueGraphicWalker-5324d566.js} +4 -264
- flowfile/web/static/assets/VueGraphicWalker-ed5ab88b.css +6 -0
- flowfile/web/static/assets/{api-cb00cce6.js → api-271ed117.js} +1 -1
- flowfile/web/static/assets/{api-023d1733.js → api-31e4fea6.js} +1 -1
- flowfile/web/static/assets/{designer-2197d782.css → designer-091bdc3f.css} +819 -184
- flowfile/web/static/assets/{designer-6c322d8e.js → designer-bf3d9487.js} +2191 -703
- flowfile/web/static/assets/{documentation-4d1fafe1.js → documentation-4d0a1cea.js} +1 -1
- flowfile/web/static/assets/{dropDown-0b46dd77.js → dropDown-025888df.js} +1 -1
- flowfile/web/static/assets/{fullEditor-ec4e4f95.js → fullEditor-1df991ec.js} +2 -2
- flowfile/web/static/assets/{genericNodeSettings-def5879b.js → genericNodeSettings-d3b2b2ac.js} +3 -3
- flowfile/web/static/assets/{index-683fc198.js → index-d0518598.js} +210 -31
- flowfile/web/static/assets/{Output-48f81019.css → outputCsv-9cc59e0b.css} +0 -143
- flowfile/web/static/assets/outputCsv-d8457527.js +86 -0
- flowfile/web/static/assets/outputExcel-b41305c0.css +102 -0
- flowfile/web/static/assets/outputExcel-be89153e.js +56 -0
- flowfile/web/static/assets/outputParquet-cf8cf3f2.css +4 -0
- flowfile/web/static/assets/outputParquet-fabb445a.js +31 -0
- flowfile/web/static/assets/readCsv-bca3ed53.css +52 -0
- flowfile/web/static/assets/readCsv-e8359522.js +178 -0
- flowfile/web/static/assets/readExcel-dabaf51b.js +203 -0
- flowfile/web/static/assets/readExcel-e1b381ea.css +64 -0
- flowfile/web/static/assets/readParquet-cee068e2.css +19 -0
- flowfile/web/static/assets/readParquet-e0771ef2.js +26 -0
- flowfile/web/static/assets/{secretApi-baceb6f9.js → secretApi-ce823eee.js} +1 -1
- flowfile/web/static/assets/{selectDynamic-de91449a.js → selectDynamic-5476546e.js} +7 -7
- flowfile/web/static/assets/{selectDynamic-b062bc9b.css → selectDynamic-aa913ff4.css} +16 -16
- flowfile/web/static/assets/{vue-codemirror.esm-dc5e3348.js → vue-codemirror.esm-9ed00d50.js} +29 -33
- flowfile/web/static/assets/{vue-content-loader.es-ba94b82f.js → vue-content-loader.es-7bca2d9b.js} +1 -1
- flowfile/web/static/index.html +1 -1
- {flowfile-0.3.9.dist-info → flowfile-0.3.10.dist-info}/METADATA +1 -1
- {flowfile-0.3.9.dist-info → flowfile-0.3.10.dist-info}/RECORD +129 -97
- flowfile_core/configs/flow_logger.py +5 -13
- flowfile_core/configs/node_store/nodes.py +303 -44
- 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/subprocess_operations/subprocess_operations.py +28 -8
- flowfile_core/flowfile/flow_graph.py +97 -33
- flowfile_core/flowfile/flow_node/flow_node.py +41 -9
- flowfile_core/flowfile/handler.py +22 -3
- flowfile_core/flowfile/schema_callbacks.py +8 -4
- flowfile_core/flowfile/setting_generator/settings.py +0 -1
- flowfile_core/main.py +4 -1
- flowfile_core/routes/routes.py +59 -10
- flowfile_core/schemas/input_schema.py +0 -1
- flowfile_core/schemas/output_model.py +5 -2
- flowfile_core/schemas/schemas.py +2 -0
- flowfile_core/schemas/transform_schema.py +1 -0
- 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 +243 -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.3.10.dist-info}/LICENSE +0 -0
- {flowfile-0.3.9.dist-info → flowfile-0.3.10.dist-info}/WHEEL +0 -0
- {flowfile-0.3.9.dist-info → flowfile-0.3.10.dist-info}/entry_points.txt +0 -0
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { d as defineComponent, l as computed, c as openBlock, h as createBlock, w as withCtx, f as createVNode, p as createBaseVNode, u as unref, ar as ElIcon, e as createElementBlock, i as createCommentVNode, as as ElPopover, _ as _export_sfc } from "./index-d0518598.js";
|
|
2
|
+
const _hoisted_1 = { class: "validation-wrapper" };
|
|
3
|
+
const _hoisted_2 = {
|
|
4
|
+
key: 0,
|
|
5
|
+
class: "error-message"
|
|
6
|
+
};
|
|
7
|
+
const _hoisted_3 = {
|
|
8
|
+
key: 1,
|
|
9
|
+
class: "error-message"
|
|
10
|
+
};
|
|
11
|
+
const _hoisted_4 = {
|
|
12
|
+
key: 2,
|
|
13
|
+
class: "error-message"
|
|
14
|
+
};
|
|
15
|
+
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
16
|
+
__name: "PivotValidation",
|
|
17
|
+
props: {
|
|
18
|
+
pivotInput: {}
|
|
19
|
+
},
|
|
20
|
+
setup(__props) {
|
|
21
|
+
const props = __props;
|
|
22
|
+
const showValidationMessages = computed(() => {
|
|
23
|
+
return !props.pivotInput.pivot_column || !props.pivotInput.value_col || props.pivotInput.aggregations.length === 0;
|
|
24
|
+
});
|
|
25
|
+
return (_ctx, _cache) => {
|
|
26
|
+
return showValidationMessages.value ? (openBlock(), createBlock(unref(ElPopover), {
|
|
27
|
+
key: 0,
|
|
28
|
+
placement: "top",
|
|
29
|
+
width: "200",
|
|
30
|
+
trigger: "hover",
|
|
31
|
+
content: "Some required fields are missing"
|
|
32
|
+
}, {
|
|
33
|
+
reference: withCtx(() => [
|
|
34
|
+
createVNode(unref(ElIcon), {
|
|
35
|
+
color: "#FF6B6B",
|
|
36
|
+
class: "warning-icon"
|
|
37
|
+
}, {
|
|
38
|
+
default: withCtx(() => _cache[0] || (_cache[0] = [
|
|
39
|
+
createBaseVNode("i", { class: "el-icon-warning" }, null, -1)
|
|
40
|
+
])),
|
|
41
|
+
_: 1,
|
|
42
|
+
__: [0]
|
|
43
|
+
})
|
|
44
|
+
]),
|
|
45
|
+
default: withCtx(() => [
|
|
46
|
+
createBaseVNode("div", _hoisted_1, [
|
|
47
|
+
!_ctx.pivotInput.pivot_column ? (openBlock(), createElementBlock("p", _hoisted_2, "Pivot Column cannot be empty.")) : createCommentVNode("", true),
|
|
48
|
+
!_ctx.pivotInput.value_col ? (openBlock(), createElementBlock("p", _hoisted_3, "Value Column cannot be empty.")) : createCommentVNode("", true),
|
|
49
|
+
_ctx.pivotInput.aggregations.length === 0 ? (openBlock(), createElementBlock("p", _hoisted_4, " At least one aggregation must be selected. ")) : createCommentVNode("", true)
|
|
50
|
+
])
|
|
51
|
+
]),
|
|
52
|
+
_: 1
|
|
53
|
+
})) : createCommentVNode("", true);
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
});
|
|
57
|
+
const PivotValidation_vue_vue_type_style_index_0_scoped_1561039d_lang = "";
|
|
58
|
+
const PivotValidation = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-1561039d"]]);
|
|
59
|
+
export {
|
|
60
|
+
PivotValidation as default
|
|
61
|
+
};
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
import { C as CodeLoader } from "./vue-content-loader.es-
|
|
2
|
-
import { v as keymap, w as acceptCompletion, x as indentMore, q as EditorState, r as autocompletion, o as T, u as useNodeStore } from "./vue-codemirror.esm-
|
|
3
|
-
import { p as python, o as oneDark } from "./designer-
|
|
4
|
-
import { d as defineComponent, r as ref, X as shallowRef, m as watch, c as openBlock, e as createElementBlock, f as createVNode, u as unref, t as toDisplayString, i as createCommentVNode, w as withCtx, h as createBlock
|
|
5
|
-
import { G as GenericNodeSettings } from "./genericNodeSettings-
|
|
6
|
-
import { N as NodeButton, a as NodeTitle } from "./nodeTitle-a16db7c3.js";
|
|
1
|
+
import { C as CodeLoader } from "./vue-content-loader.es-7bca2d9b.js";
|
|
2
|
+
import { v as keymap, w as acceptCompletion, x as indentMore, q as EditorState, r as autocompletion, o as T, u as useNodeStore } from "./vue-codemirror.esm-9ed00d50.js";
|
|
3
|
+
import { p as python, o as oneDark } from "./designer-bf3d9487.js";
|
|
4
|
+
import { d as defineComponent, r as ref, X as shallowRef, m as watch, c as openBlock, e as createElementBlock, f as createVNode, u as unref, t as toDisplayString, i as createCommentVNode, w as withCtx, h as createBlock } from "./index-d0518598.js";
|
|
5
|
+
import { G as GenericNodeSettings } from "./genericNodeSettings-d3b2b2ac.js";
|
|
7
6
|
const polarsCompletionVals = [
|
|
8
7
|
// Polars basics
|
|
9
8
|
{ label: "pl", type: "variable", info: "Polars main module" },
|
|
@@ -39,12 +38,12 @@ const polarsCompletionVals = [
|
|
|
39
38
|
{ label: "float", type: "type" },
|
|
40
39
|
{ label: "bool", type: "type" }
|
|
41
40
|
];
|
|
42
|
-
const _hoisted_1$
|
|
41
|
+
const _hoisted_1$1 = { class: "polars-editor-root" };
|
|
43
42
|
const _hoisted_2 = {
|
|
44
43
|
key: 0,
|
|
45
44
|
class: "validation-error"
|
|
46
45
|
};
|
|
47
|
-
const _sfc_main$
|
|
46
|
+
const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
48
47
|
__name: "pythonEditor",
|
|
49
48
|
props: {
|
|
50
49
|
editorString: { type: String, required: true }
|
|
@@ -121,7 +120,7 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
|
|
|
121
120
|
});
|
|
122
121
|
__expose({ insertTextAtCursor });
|
|
123
122
|
return (_ctx, _cache) => {
|
|
124
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
123
|
+
return openBlock(), createElementBlock("div", _hoisted_1$1, [
|
|
125
124
|
createVNode(unref(T), {
|
|
126
125
|
modelValue: code.value,
|
|
127
126
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => code.value = $event),
|
|
@@ -171,12 +170,12 @@ input_df`
|
|
|
171
170
|
};
|
|
172
171
|
return nodePolarsCode;
|
|
173
172
|
};
|
|
174
|
-
const _hoisted_1
|
|
173
|
+
const _hoisted_1 = {
|
|
175
174
|
key: 0,
|
|
176
175
|
class: "listbox-wrapper"
|
|
177
176
|
};
|
|
178
|
-
const _sfc_main
|
|
179
|
-
__name: "
|
|
177
|
+
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
178
|
+
__name: "PolarsCode",
|
|
180
179
|
setup(__props, { expose: __expose }) {
|
|
181
180
|
const showEditor = ref(false);
|
|
182
181
|
const nodeStore = useNodeStore();
|
|
@@ -218,10 +217,10 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
|
218
217
|
};
|
|
219
218
|
__expose({ loadNodeData, pushNodeData });
|
|
220
219
|
return (_ctx, _cache) => {
|
|
221
|
-
return dataLoaded.value && nodePolarsCode.value ? (openBlock(), createElementBlock("div", _hoisted_1
|
|
220
|
+
return dataLoaded.value && nodePolarsCode.value ? (openBlock(), createElementBlock("div", _hoisted_1, [
|
|
222
221
|
createVNode(GenericNodeSettings, { "model-value": nodePolarsCode.value }, {
|
|
223
222
|
default: withCtx(() => [
|
|
224
|
-
showEditor.value && nodePolarsCode.value ? (openBlock(), createBlock(_sfc_main$
|
|
223
|
+
showEditor.value && nodePolarsCode.value ? (openBlock(), createBlock(_sfc_main$1, {
|
|
225
224
|
key: 0,
|
|
226
225
|
ref_key: "editorChild",
|
|
227
226
|
ref: editorChild,
|
|
@@ -235,72 +234,6 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
|
235
234
|
};
|
|
236
235
|
}
|
|
237
236
|
});
|
|
238
|
-
const _hoisted_1 = { ref: "el" };
|
|
239
|
-
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
240
|
-
__name: "PolarsCode",
|
|
241
|
-
props: {
|
|
242
|
-
nodeId: {
|
|
243
|
-
type: Number,
|
|
244
|
-
required: true
|
|
245
|
-
}
|
|
246
|
-
},
|
|
247
|
-
setup(__props) {
|
|
248
|
-
const nodeStore = useNodeStore();
|
|
249
|
-
const childComp = ref(null);
|
|
250
|
-
const props = __props;
|
|
251
|
-
const drawer = ref(false);
|
|
252
|
-
const closeOnDrawer = () => {
|
|
253
|
-
var _a;
|
|
254
|
-
drawer.value = false;
|
|
255
|
-
(_a = childComp.value) == null ? void 0 : _a.pushNodeData();
|
|
256
|
-
};
|
|
257
|
-
const openDrawer = async () => {
|
|
258
|
-
if (nodeStore.node_id === props.nodeId) {
|
|
259
|
-
return;
|
|
260
|
-
}
|
|
261
|
-
nodeStore.closeDrawer();
|
|
262
|
-
drawer.value = true;
|
|
263
|
-
const drawerOpen = nodeStore.isDrawerOpen;
|
|
264
|
-
nodeStore.isDrawerOpen = true;
|
|
265
|
-
await nextTick();
|
|
266
|
-
if (nodeStore.node_id === props.nodeId && drawerOpen) {
|
|
267
|
-
return;
|
|
268
|
-
}
|
|
269
|
-
if (childComp.value) {
|
|
270
|
-
childComp.value.loadNodeData(props.nodeId);
|
|
271
|
-
nodeStore.openDrawer(closeOnDrawer);
|
|
272
|
-
}
|
|
273
|
-
};
|
|
274
|
-
onMounted(async () => {
|
|
275
|
-
await nextTick();
|
|
276
|
-
});
|
|
277
|
-
return (_ctx, _cache) => {
|
|
278
|
-
return openBlock(), createElementBlock("div", _hoisted_1, [
|
|
279
|
-
createVNode(NodeButton, {
|
|
280
|
-
ref: "nodeButton",
|
|
281
|
-
"node-id": __props.nodeId,
|
|
282
|
-
"image-src": "polars_code.png",
|
|
283
|
-
title: `${__props.nodeId}: Polars code`,
|
|
284
|
-
onClick: openDrawer
|
|
285
|
-
}, null, 8, ["node-id", "title"]),
|
|
286
|
-
drawer.value ? (openBlock(), createBlock(Teleport, {
|
|
287
|
-
key: 0,
|
|
288
|
-
to: "#nodesettings"
|
|
289
|
-
}, [
|
|
290
|
-
createVNode(NodeTitle, {
|
|
291
|
-
title: "Polars code",
|
|
292
|
-
intro: "Use custom Polars code to transform data."
|
|
293
|
-
}),
|
|
294
|
-
createVNode(_sfc_main$1, {
|
|
295
|
-
ref_key: "childComp",
|
|
296
|
-
ref: childComp,
|
|
297
|
-
"node-id": __props.nodeId
|
|
298
|
-
}, null, 8, ["node-id"])
|
|
299
|
-
])) : createCommentVNode("", true)
|
|
300
|
-
], 512);
|
|
301
|
-
};
|
|
302
|
-
}
|
|
303
|
-
});
|
|
304
237
|
export {
|
|
305
238
|
_sfc_main as default
|
|
306
239
|
};
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
|
|
2
|
+
.context-menu[data-v-41ef044d] {
|
|
3
|
+
position: fixed;
|
|
4
|
+
z-index: 1000;
|
|
5
|
+
border: 1px solid #ccc;
|
|
6
|
+
background-color: white;
|
|
7
|
+
padding: 8px;
|
|
8
|
+
box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
|
|
9
|
+
border-radius: 4px;
|
|
10
|
+
}
|
|
11
|
+
.context-menu button[data-v-41ef044d] {
|
|
12
|
+
display: block;
|
|
13
|
+
background: none;
|
|
14
|
+
border: none;
|
|
15
|
+
padding: 4px 8px;
|
|
16
|
+
text-align: left;
|
|
17
|
+
width: 100%;
|
|
18
|
+
cursor: pointer;
|
|
19
|
+
}
|
|
20
|
+
.context-menu button[data-v-41ef044d]:hover {
|
|
21
|
+
background-color: #f0f0f0;
|
|
22
|
+
}
|
|
23
|
+
.file-upload-wrapper[data-v-41ef044d] {
|
|
24
|
+
position: relative;
|
|
25
|
+
width: 100%;
|
|
26
|
+
}
|
|
27
|
+
.file-upload-label[data-v-41ef044d] {
|
|
28
|
+
display: flex;
|
|
29
|
+
align-items: center;
|
|
30
|
+
background-color: #f5f5f5;
|
|
31
|
+
border: 1px solid #ddd;
|
|
32
|
+
border-radius: 4px;
|
|
33
|
+
padding: 10px 15px;
|
|
34
|
+
color: #333;
|
|
35
|
+
font-size: 16px;
|
|
36
|
+
font-weight: 500;
|
|
37
|
+
cursor: pointer;
|
|
38
|
+
transition: background-color 0.3s ease;
|
|
39
|
+
}
|
|
40
|
+
.file-upload-label[data-v-41ef044d]:hover {
|
|
41
|
+
background-color: #e4e4e4;
|
|
42
|
+
}
|
|
43
|
+
.file-icon[data-v-41ef044d] {
|
|
44
|
+
margin-right: 10px;
|
|
45
|
+
font-size: 20px;
|
|
46
|
+
}
|
|
47
|
+
.file-label-text[data-v-41ef044d] {
|
|
48
|
+
flex-grow: 1;
|
|
49
|
+
margin-left: 10px;
|
|
50
|
+
}
|
|
51
|
+
input[type="text"][data-v-41ef044d] {
|
|
52
|
+
width: 100%;
|
|
53
|
+
padding: 8px;
|
|
54
|
+
border: 1px solid #ddd;
|
|
55
|
+
border-radius: 4px;
|
|
56
|
+
box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1);
|
|
57
|
+
transition: border-color 0.2s ease;
|
|
58
|
+
}
|
|
59
|
+
input[type="text"][data-v-41ef044d]:focus {
|
|
60
|
+
border-color: #3498db;
|
|
61
|
+
outline: none;
|
|
62
|
+
}
|
|
@@ -0,0 +1,243 @@
|
|
|
1
|
+
import { C as CodeLoader } from "./vue-content-loader.es-7bca2d9b.js";
|
|
2
|
+
import ExcelTableConfig from "./readExcel-dabaf51b.js";
|
|
3
|
+
import CsvTableConfig from "./readCsv-e8359522.js";
|
|
4
|
+
import ParquetTableConfig from "./readParquet-e0771ef2.js";
|
|
5
|
+
import { u as useNodeStore } from "./vue-codemirror.esm-9ed00d50.js";
|
|
6
|
+
import { F as FileBrowser } from "./designer-bf3d9487.js";
|
|
7
|
+
import { d as defineComponent, r as ref, l as computed, b as resolveComponent, c as openBlock, e as createElementBlock, p as createBaseVNode, t as toDisplayString, h as createBlock, i as createCommentVNode, f as createVNode, w as withCtx, u as unref, _ as _export_sfc } from "./index-d0518598.js";
|
|
8
|
+
import "./dropDown-025888df.js";
|
|
9
|
+
const _hoisted_1 = {
|
|
10
|
+
key: 0,
|
|
11
|
+
class: "listbox-wrapper"
|
|
12
|
+
};
|
|
13
|
+
const _hoisted_2 = { class: "listbox-wrapper" };
|
|
14
|
+
const _hoisted_3 = { class: "file-upload-container" };
|
|
15
|
+
const _hoisted_4 = {
|
|
16
|
+
for: "file-upload",
|
|
17
|
+
class: "file-upload-label"
|
|
18
|
+
};
|
|
19
|
+
const _hoisted_5 = { class: "file-label-text" };
|
|
20
|
+
const _hoisted_6 = { key: 0 };
|
|
21
|
+
const _hoisted_7 = { class: "listbox-wrapper" };
|
|
22
|
+
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
23
|
+
__name: "Read",
|
|
24
|
+
setup(__props, { expose: __expose }) {
|
|
25
|
+
const nodeStore = useNodeStore();
|
|
26
|
+
const selectedFile = ref(null);
|
|
27
|
+
const isExcelFile = ref(false);
|
|
28
|
+
const isCsvFile = ref(false);
|
|
29
|
+
const isParquetFile = ref(false);
|
|
30
|
+
const nodeRead = ref(null);
|
|
31
|
+
const dataLoaded = ref(false);
|
|
32
|
+
const selectedPath = ref("");
|
|
33
|
+
const modalVisibleForOpen = ref(false);
|
|
34
|
+
const getDisplayFileName = computed(() => {
|
|
35
|
+
var _a, _b, _c;
|
|
36
|
+
if ((_a = selectedFile.value) == null ? void 0 : _a.name) {
|
|
37
|
+
return selectedFile.value.name;
|
|
38
|
+
}
|
|
39
|
+
if ((_c = (_b = nodeRead.value) == null ? void 0 : _b.received_file) == null ? void 0 : _c.name) {
|
|
40
|
+
return nodeRead.value.received_file.name;
|
|
41
|
+
}
|
|
42
|
+
return "Choose a file...";
|
|
43
|
+
});
|
|
44
|
+
const receivedExcelTable = ref({
|
|
45
|
+
name: "",
|
|
46
|
+
path: "",
|
|
47
|
+
file_type: "excel",
|
|
48
|
+
sheet_name: "",
|
|
49
|
+
start_row: 0,
|
|
50
|
+
start_column: 0,
|
|
51
|
+
end_row: 0,
|
|
52
|
+
end_column: 0,
|
|
53
|
+
has_headers: true,
|
|
54
|
+
type_inference: false
|
|
55
|
+
});
|
|
56
|
+
const receivedCsvTable = ref({
|
|
57
|
+
name: "",
|
|
58
|
+
path: "",
|
|
59
|
+
file_type: "csv",
|
|
60
|
+
reference: "",
|
|
61
|
+
starting_from_line: 0,
|
|
62
|
+
delimiter: ",",
|
|
63
|
+
has_headers: true,
|
|
64
|
+
encoding: "utf-8",
|
|
65
|
+
row_delimiter: "",
|
|
66
|
+
quote_char: "",
|
|
67
|
+
infer_schema_length: 1e3,
|
|
68
|
+
truncate_ragged_lines: false,
|
|
69
|
+
ignore_errors: false
|
|
70
|
+
});
|
|
71
|
+
const receivedParquetTable = ref({
|
|
72
|
+
name: "",
|
|
73
|
+
path: "",
|
|
74
|
+
file_type: "parquet"
|
|
75
|
+
});
|
|
76
|
+
const handleFileChange = (fileInfo) => {
|
|
77
|
+
var _a;
|
|
78
|
+
try {
|
|
79
|
+
if (!fileInfo) {
|
|
80
|
+
console.warn("No file info provided");
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
83
|
+
const fileType = (_a = fileInfo.name.split(".").pop()) == null ? void 0 : _a.toLowerCase();
|
|
84
|
+
if (!fileType) {
|
|
85
|
+
console.warn("No file type detected");
|
|
86
|
+
return;
|
|
87
|
+
}
|
|
88
|
+
isExcelFile.value = false;
|
|
89
|
+
isCsvFile.value = false;
|
|
90
|
+
isParquetFile.value = false;
|
|
91
|
+
switch (fileType) {
|
|
92
|
+
case "xlsx":
|
|
93
|
+
isExcelFile.value = true;
|
|
94
|
+
receivedExcelTable.value.path = fileInfo.path;
|
|
95
|
+
receivedExcelTable.value.name = fileInfo.name;
|
|
96
|
+
break;
|
|
97
|
+
case "csv":
|
|
98
|
+
case "txt":
|
|
99
|
+
isCsvFile.value = true;
|
|
100
|
+
receivedCsvTable.value.path = fileInfo.path;
|
|
101
|
+
receivedCsvTable.value.name = fileInfo.name;
|
|
102
|
+
break;
|
|
103
|
+
case "parquet":
|
|
104
|
+
isParquetFile.value = true;
|
|
105
|
+
receivedParquetTable.value.path = fileInfo.path;
|
|
106
|
+
receivedParquetTable.value.name = fileInfo.name;
|
|
107
|
+
break;
|
|
108
|
+
default:
|
|
109
|
+
console.warn("Unsupported file type:", fileType);
|
|
110
|
+
return;
|
|
111
|
+
}
|
|
112
|
+
selectedFile.value = fileInfo;
|
|
113
|
+
selectedPath.value = fileInfo.path;
|
|
114
|
+
modalVisibleForOpen.value = false;
|
|
115
|
+
} catch (error) {
|
|
116
|
+
console.error("Error handling file change:", error);
|
|
117
|
+
}
|
|
118
|
+
};
|
|
119
|
+
const loadNodeData = async (nodeId) => {
|
|
120
|
+
var _a;
|
|
121
|
+
try {
|
|
122
|
+
const nodeResult = await nodeStore.getNodeData(nodeId, false);
|
|
123
|
+
if (!nodeResult) {
|
|
124
|
+
console.warn("No node result received");
|
|
125
|
+
dataLoaded.value = true;
|
|
126
|
+
return;
|
|
127
|
+
}
|
|
128
|
+
nodeRead.value = nodeResult.setting_input;
|
|
129
|
+
if (((_a = nodeResult.setting_input) == null ? void 0 : _a.is_setup) && nodeResult.setting_input.received_file) {
|
|
130
|
+
const { file_type } = nodeResult.setting_input.received_file;
|
|
131
|
+
isExcelFile.value = false;
|
|
132
|
+
isCsvFile.value = false;
|
|
133
|
+
isParquetFile.value = false;
|
|
134
|
+
switch (file_type) {
|
|
135
|
+
case "excel":
|
|
136
|
+
isExcelFile.value = true;
|
|
137
|
+
receivedExcelTable.value = nodeResult.setting_input.received_file;
|
|
138
|
+
break;
|
|
139
|
+
case "csv":
|
|
140
|
+
isCsvFile.value = true;
|
|
141
|
+
receivedCsvTable.value = nodeResult.setting_input.received_file;
|
|
142
|
+
break;
|
|
143
|
+
case "parquet":
|
|
144
|
+
isParquetFile.value = true;
|
|
145
|
+
receivedParquetTable.value = nodeResult.setting_input.received_file;
|
|
146
|
+
break;
|
|
147
|
+
}
|
|
148
|
+
selectedPath.value = nodeResult.setting_input.received_file.path;
|
|
149
|
+
}
|
|
150
|
+
dataLoaded.value = true;
|
|
151
|
+
} catch (error) {
|
|
152
|
+
console.error("Error loading node data:", error);
|
|
153
|
+
dataLoaded.value = true;
|
|
154
|
+
}
|
|
155
|
+
};
|
|
156
|
+
const pushNodeData = async () => {
|
|
157
|
+
try {
|
|
158
|
+
dataLoaded.value = false;
|
|
159
|
+
if (!nodeRead.value) {
|
|
160
|
+
console.warn("No node read value available");
|
|
161
|
+
dataLoaded.value = true;
|
|
162
|
+
return;
|
|
163
|
+
}
|
|
164
|
+
nodeRead.value.is_setup = true;
|
|
165
|
+
if (isExcelFile.value) {
|
|
166
|
+
nodeRead.value.received_file = receivedExcelTable.value;
|
|
167
|
+
} else if (isCsvFile.value) {
|
|
168
|
+
nodeRead.value.received_file = receivedCsvTable.value;
|
|
169
|
+
} else if (isParquetFile.value) {
|
|
170
|
+
nodeRead.value.cache_results = false;
|
|
171
|
+
nodeRead.value.received_file = receivedParquetTable.value;
|
|
172
|
+
}
|
|
173
|
+
await nodeStore.updateSettings(nodeRead);
|
|
174
|
+
} catch (error) {
|
|
175
|
+
console.error("Error pushing node data:", error);
|
|
176
|
+
} finally {
|
|
177
|
+
dataLoaded.value = true;
|
|
178
|
+
}
|
|
179
|
+
};
|
|
180
|
+
__expose({
|
|
181
|
+
loadNodeData,
|
|
182
|
+
pushNodeData
|
|
183
|
+
});
|
|
184
|
+
return (_ctx, _cache) => {
|
|
185
|
+
const _component_el_dialog = resolveComponent("el-dialog");
|
|
186
|
+
return dataLoaded.value ? (openBlock(), createElementBlock("div", _hoisted_1, [
|
|
187
|
+
createBaseVNode("div", _hoisted_2, [
|
|
188
|
+
createBaseVNode("div", _hoisted_3, [
|
|
189
|
+
createBaseVNode("div", {
|
|
190
|
+
class: "file-upload-wrapper",
|
|
191
|
+
onClick: _cache[0] || (_cache[0] = ($event) => modalVisibleForOpen.value = true)
|
|
192
|
+
}, [
|
|
193
|
+
createBaseVNode("label", _hoisted_4, [
|
|
194
|
+
_cache[5] || (_cache[5] = createBaseVNode("i", { class: "fas fa-table file-icon" }, null, -1)),
|
|
195
|
+
createBaseVNode("span", _hoisted_5, toDisplayString(getDisplayFileName.value), 1)
|
|
196
|
+
])
|
|
197
|
+
])
|
|
198
|
+
])
|
|
199
|
+
]),
|
|
200
|
+
isCsvFile.value || isExcelFile.value || isParquetFile.value ? (openBlock(), createElementBlock("div", _hoisted_6, [
|
|
201
|
+
createBaseVNode("div", _hoisted_7, [
|
|
202
|
+
_cache[6] || (_cache[6] = createBaseVNode("div", { class: "listbox-subtitle" }, "File Specs", -1)),
|
|
203
|
+
isExcelFile.value ? (openBlock(), createBlock(ExcelTableConfig, {
|
|
204
|
+
key: 0,
|
|
205
|
+
modelValue: receivedExcelTable.value,
|
|
206
|
+
"onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => receivedExcelTable.value = $event)
|
|
207
|
+
}, null, 8, ["modelValue"])) : createCommentVNode("", true),
|
|
208
|
+
isCsvFile.value ? (openBlock(), createBlock(CsvTableConfig, {
|
|
209
|
+
key: 1,
|
|
210
|
+
modelValue: receivedCsvTable.value,
|
|
211
|
+
"onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => receivedCsvTable.value = $event)
|
|
212
|
+
}, null, 8, ["modelValue"])) : createCommentVNode("", true),
|
|
213
|
+
isParquetFile.value ? (openBlock(), createBlock(ParquetTableConfig, {
|
|
214
|
+
key: 2,
|
|
215
|
+
modelValue: receivedParquetTable.value,
|
|
216
|
+
"onUpdate:modelValue": _cache[3] || (_cache[3] = ($event) => receivedParquetTable.value = $event)
|
|
217
|
+
}, null, 8, ["modelValue"])) : createCommentVNode("", true)
|
|
218
|
+
])
|
|
219
|
+
])) : createCommentVNode("", true),
|
|
220
|
+
createVNode(_component_el_dialog, {
|
|
221
|
+
modelValue: modalVisibleForOpen.value,
|
|
222
|
+
"onUpdate:modelValue": _cache[4] || (_cache[4] = ($event) => modalVisibleForOpen.value = $event),
|
|
223
|
+
title: "Select a file to Read",
|
|
224
|
+
width: "70%"
|
|
225
|
+
}, {
|
|
226
|
+
default: withCtx(() => [
|
|
227
|
+
createVNode(FileBrowser, {
|
|
228
|
+
"allowed-file-types": ["csv", "txt", "parquet", "xlsx"],
|
|
229
|
+
mode: "open",
|
|
230
|
+
onFileSelected: handleFileChange
|
|
231
|
+
})
|
|
232
|
+
]),
|
|
233
|
+
_: 1
|
|
234
|
+
}, 8, ["modelValue"])
|
|
235
|
+
])) : (openBlock(), createBlock(unref(CodeLoader), { key: 1 }));
|
|
236
|
+
};
|
|
237
|
+
}
|
|
238
|
+
});
|
|
239
|
+
const Read_vue_vue_type_style_index_0_scoped_41ef044d_lang = "";
|
|
240
|
+
const Read = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-41ef044d"]]);
|
|
241
|
+
export {
|
|
242
|
+
Read as default
|
|
243
|
+
};
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { u as useNodeStore } from "./vue-codemirror.esm-9ed00d50.js";
|
|
2
|
+
import { G as GenericNodeSettings } from "./genericNodeSettings-d3b2b2ac.js";
|
|
3
|
+
import { d as defineComponent, r as ref, n as onMounted, R as nextTick, c as openBlock, e as createElementBlock, f as createVNode, w as withCtx, p as createBaseVNode, i as createCommentVNode } from "./index-d0518598.js";
|
|
4
|
+
import "./designer-bf3d9487.js";
|
|
5
|
+
const _hoisted_1 = {
|
|
6
|
+
key: 0,
|
|
7
|
+
class: "listbox-wrapper"
|
|
8
|
+
};
|
|
9
|
+
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
10
|
+
__name: "RecordCount",
|
|
11
|
+
setup(__props, { expose: __expose }) {
|
|
12
|
+
const nodeStore = useNodeStore();
|
|
13
|
+
const dataLoaded = ref(false);
|
|
14
|
+
const nodeData = ref(null);
|
|
15
|
+
const nodeRecordCount = ref(null);
|
|
16
|
+
const loadNodeData = async (nodeId) => {
|
|
17
|
+
var _a;
|
|
18
|
+
nodeData.value = await nodeStore.getNodeData(nodeId, false);
|
|
19
|
+
nodeRecordCount.value = (_a = nodeData.value) == null ? void 0 : _a.setting_input;
|
|
20
|
+
dataLoaded.value = true;
|
|
21
|
+
};
|
|
22
|
+
const pushNodeData = async () => {
|
|
23
|
+
if (nodeRecordCount.value) {
|
|
24
|
+
nodeStore.updateSettings(nodeRecordCount);
|
|
25
|
+
}
|
|
26
|
+
};
|
|
27
|
+
__expose({
|
|
28
|
+
loadNodeData,
|
|
29
|
+
pushNodeData
|
|
30
|
+
});
|
|
31
|
+
onMounted(async () => {
|
|
32
|
+
await nextTick();
|
|
33
|
+
});
|
|
34
|
+
return (_ctx, _cache) => {
|
|
35
|
+
return dataLoaded.value && nodeRecordCount.value ? (openBlock(), createElementBlock("div", _hoisted_1, [
|
|
36
|
+
createVNode(GenericNodeSettings, {
|
|
37
|
+
modelValue: nodeRecordCount.value,
|
|
38
|
+
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => nodeRecordCount.value = $event)
|
|
39
|
+
}, {
|
|
40
|
+
default: withCtx(() => _cache[1] || (_cache[1] = [
|
|
41
|
+
createBaseVNode("p", null, " This node helps you quickly retrieve the total number of records from the selected table. It's a simple yet powerful tool to keep track of the data volume as you work through your tasks. ", -1),
|
|
42
|
+
createBaseVNode("p", null, "This node does not need a setup", -1)
|
|
43
|
+
])),
|
|
44
|
+
_: 1,
|
|
45
|
+
__: [1]
|
|
46
|
+
}, 8, ["modelValue"])
|
|
47
|
+
])) : createCommentVNode("", true);
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
});
|
|
51
|
+
export {
|
|
52
|
+
_sfc_main as default
|
|
53
|
+
};
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { d as defineComponent, r as ref, n as onMounted, R as nextTick, o as onUnmounted, b as resolveComponent, c as openBlock, e as createElementBlock, f as createVNode, w as withCtx, p as createBaseVNode, g as createTextVNode,
|
|
2
|
-
import { u as useNodeStore } from "./vue-codemirror.esm-
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
import {
|
|
6
|
-
import "./designer-
|
|
1
|
+
import { d as defineComponent, r as ref, n as onMounted, R as nextTick, o as onUnmounted, b as resolveComponent, c as openBlock, e as createElementBlock, f as createVNode, w as withCtx, p as createBaseVNode, g as createTextVNode, a8 as withDirectives, a9 as vModelText, F as Fragment, q as renderList, s as normalizeClass, v as withModifiers, t as toDisplayString, h as createBlock, i as createCommentVNode } from "./index-d0518598.js";
|
|
2
|
+
import { u as useNodeStore } from "./vue-codemirror.esm-9ed00d50.js";
|
|
3
|
+
import ContextMenu from "./ContextMenu-a51e19ea.js";
|
|
4
|
+
import SettingsSection from "./SettingsSection-75b6cf4f.js";
|
|
5
|
+
import { G as GenericNodeSettings } from "./genericNodeSettings-d3b2b2ac.js";
|
|
6
|
+
import "./designer-bf3d9487.js";
|
|
7
7
|
const _hoisted_1 = {
|
|
8
8
|
key: 0,
|
|
9
9
|
class: "listbox-wrapper"
|
|
@@ -14,8 +14,8 @@ const _hoisted_4 = { key: 0 };
|
|
|
14
14
|
const _hoisted_5 = { class: "listbox" };
|
|
15
15
|
const _hoisted_6 = { class: "column-options" };
|
|
16
16
|
const _hoisted_7 = ["onClick", "onContextmenu", "onDragstart", "onDrop"];
|
|
17
|
-
const _sfc_main
|
|
18
|
-
__name: "
|
|
17
|
+
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
18
|
+
__name: "RecordId",
|
|
19
19
|
setup(__props, { expose: __expose }) {
|
|
20
20
|
const nodeStore = useNodeStore();
|
|
21
21
|
const showContextMenu = ref(false);
|
|
@@ -122,8 +122,6 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
|
122
122
|
};
|
|
123
123
|
const pushNodeData = async () => {
|
|
124
124
|
nodeStore.updateSettings(nodeRecordId);
|
|
125
|
-
dataLoaded.value = false;
|
|
126
|
-
nodeStore.isDrawerOpen = false;
|
|
127
125
|
};
|
|
128
126
|
__expose({
|
|
129
127
|
loadNodeData,
|
|
@@ -266,76 +264,6 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
|
266
264
|
};
|
|
267
265
|
}
|
|
268
266
|
});
|
|
269
|
-
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
270
|
-
__name: "RecordId",
|
|
271
|
-
props: {
|
|
272
|
-
nodeId: {
|
|
273
|
-
type: Number,
|
|
274
|
-
required: true
|
|
275
|
-
}
|
|
276
|
-
},
|
|
277
|
-
setup(__props) {
|
|
278
|
-
const nodeStore = useNodeStore();
|
|
279
|
-
const childComp = ref(null);
|
|
280
|
-
const props = __props;
|
|
281
|
-
const el = ref(null);
|
|
282
|
-
const drawer = ref(false);
|
|
283
|
-
const closeOnDrawer = () => {
|
|
284
|
-
var _a;
|
|
285
|
-
(_a = childComp.value) == null ? void 0 : _a.pushNodeData();
|
|
286
|
-
drawer.value = false;
|
|
287
|
-
nodeStore.isDrawerOpen = false;
|
|
288
|
-
};
|
|
289
|
-
const openDrawer = async () => {
|
|
290
|
-
if (nodeStore.node_id === props.nodeId) {
|
|
291
|
-
return;
|
|
292
|
-
}
|
|
293
|
-
nodeStore.closeDrawer();
|
|
294
|
-
drawer.value = true;
|
|
295
|
-
const drawerOpen = nodeStore.isDrawerOpen;
|
|
296
|
-
nodeStore.isDrawerOpen = true;
|
|
297
|
-
await nextTick();
|
|
298
|
-
if (nodeStore.node_id === props.nodeId && drawerOpen) {
|
|
299
|
-
return;
|
|
300
|
-
}
|
|
301
|
-
if (childComp.value) {
|
|
302
|
-
childComp.value.loadNodeData(props.nodeId);
|
|
303
|
-
nodeStore.openDrawer(closeOnDrawer);
|
|
304
|
-
}
|
|
305
|
-
};
|
|
306
|
-
onMounted(async () => {
|
|
307
|
-
await nextTick();
|
|
308
|
-
});
|
|
309
|
-
return (_ctx, _cache) => {
|
|
310
|
-
return openBlock(), createElementBlock("div", {
|
|
311
|
-
ref_key: "el",
|
|
312
|
-
ref: el
|
|
313
|
-
}, [
|
|
314
|
-
createVNode(NodeButton, {
|
|
315
|
-
ref: "nodeButton",
|
|
316
|
-
"node-id": __props.nodeId,
|
|
317
|
-
"image-src": "record_id.png",
|
|
318
|
-
title: `${__props.nodeId}: Add record Id`,
|
|
319
|
-
onClick: openDrawer
|
|
320
|
-
}, null, 8, ["node-id", "title"]),
|
|
321
|
-
drawer.value ? (openBlock(), createBlock(Teleport, {
|
|
322
|
-
key: 0,
|
|
323
|
-
to: "#nodesettings"
|
|
324
|
-
}, [
|
|
325
|
-
createVNode(NodeTitle, {
|
|
326
|
-
title: "Add record Id",
|
|
327
|
-
intro: "<p>\n <strong>Record ID:</strong> This is a unique number or identifier for each entry in our database, like a personal ID number that ensures every record is distinct.<br><br>\n <strong>Offset:</strong> Think of this as the starting point or position where a record is found. It's like telling you on which page to find a word in a book.<br><br>\n <strong>Column Name:</strong> This is the name of the category or type of information stored in each column, similar to how a label on a box tells you what's inside.</p>"
|
|
328
|
-
}),
|
|
329
|
-
createVNode(_sfc_main$1, {
|
|
330
|
-
ref_key: "childComp",
|
|
331
|
-
ref: childComp,
|
|
332
|
-
"node-id": __props.nodeId
|
|
333
|
-
}, null, 8, ["node-id"])
|
|
334
|
-
])) : createCommentVNode("", true)
|
|
335
|
-
], 512);
|
|
336
|
-
};
|
|
337
|
-
}
|
|
338
|
-
});
|
|
339
267
|
export {
|
|
340
268
|
_sfc_main as default
|
|
341
269
|
};
|