Flowfile 0.3.9__py3-none-any.whl → 0.5.1__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.
- flowfile/__init__.py +8 -1
- flowfile/api.py +1 -3
- flowfile/web/static/assets/{CloudConnectionManager-c97c25f8.js → CloudConnectionManager-0dfba9f2.js} +2 -2
- flowfile/web/static/assets/{CloudStorageReader-f1ff509e.js → CloudStorageReader-d5b1b6c9.js} +11 -78
- flowfile/web/static/assets/{CloudStorageWriter-034f8b78.js → CloudStorageWriter-00d87aad.js} +12 -79
- flowfile/web/static/assets/{CloudStorageWriter-49c9a4b2.css → CloudStorageWriter-b0ee067f.css} +24 -24
- flowfile/web/static/assets/ColumnSelector-4685e75d.js +83 -0
- flowfile/web/static/assets/ColumnSelector-47996a16.css +10 -0
- flowfile/web/static/assets/ContextMenu-23e909da.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-70ae0c79.js +41 -0
- flowfile/web/static/assets/ContextMenu-c13f91d0.css +26 -0
- flowfile/web/static/assets/ContextMenu-f149cf7c.js +41 -0
- flowfile/web/static/assets/{CrossJoin-41efa4cb.css → CrossJoin-1119d18e.css} +18 -18
- flowfile/web/static/assets/{CrossJoin-9e156ebe.js → CrossJoin-702a3edd.js} +14 -84
- flowfile/web/static/assets/CustomNode-74a37f74.css +32 -0
- flowfile/web/static/assets/CustomNode-b1519993.js +211 -0
- flowfile/web/static/assets/{DatabaseConnectionSettings-d5c625b3.js → DatabaseConnectionSettings-6f3e4ea5.js} +3 -3
- flowfile/web/static/assets/{DatabaseManager-265adc5e.js → DatabaseManager-cf5ef661.js} +2 -2
- flowfile/web/static/assets/{DatabaseReader-f50c6558.css → DatabaseReader-ae61773c.css} +0 -27
- flowfile/web/static/assets/{DatabaseReader-0b10551e.js → DatabaseReader-d38c7295.js} +14 -114
- flowfile/web/static/assets/{DatabaseWriter-c17c6916.js → DatabaseWriter-b04ef46a.js} +13 -74
- flowfile/web/static/assets/{ExploreData-5bdae813.css → ExploreData-2d0cf4db.css} +8 -14
- flowfile/web/static/assets/ExploreData-5fa10ed8.js +192 -0
- flowfile/web/static/assets/{ExternalSource-3a66556c.js → ExternalSource-d39af878.js} +8 -79
- flowfile/web/static/assets/{Filter-91ad87e7.js → Filter-9b6d08db.js} +12 -85
- flowfile/web/static/assets/{Filter-a9d08ba1.css → Filter-f62091b3.css} +3 -3
- flowfile/web/static/assets/{Formula-3c395ab1.js → Formula-6b04fb1d.js} +20 -87
- 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-999521f4.js} +16 -87
- flowfile/web/static/assets/{GraphSolver-d285877f.js → GraphSolver-17dd2198.js} +13 -159
- flowfile/web/static/assets/GraphSolver-f0cb7bfb.css +22 -0
- flowfile/web/static/assets/{GroupBy-0bd1cc6b.js → GroupBy-6b039e18.js} +12 -75
- flowfile/web/static/assets/{Unique-b5615727.css → GroupBy-b9505323.css} +8 -8
- flowfile/web/static/assets/{Join-5a78a203.js → Join-24d0f113.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-34639209.js} +11 -82
- flowfile/web/static/assets/MultiSelect-0e8724a3.js +5 -0
- flowfile/web/static/assets/MultiSelect.vue_vue_type_script_setup_true_lang-b0e538c2.js +63 -0
- flowfile/web/static/assets/NumericInput-3d63a470.js +5 -0
- flowfile/web/static/assets/NumericInput.vue_vue_type_script_setup_true_lang-e0edeccc.js +35 -0
- flowfile/web/static/assets/Output-283fe388.css +37 -0
- flowfile/web/static/assets/{Output-411ecaee.js → Output-edea9802.js} +62 -273
- flowfile/web/static/assets/{Pivot-89db4b04.js → Pivot-61d19301.js} +14 -138
- flowfile/web/static/assets/Pivot-cf333e3d.css +22 -0
- flowfile/web/static/assets/PivotValidation-891ddfb0.css +13 -0
- flowfile/web/static/assets/PivotValidation-c46cd420.css +13 -0
- flowfile/web/static/assets/PivotValidation-de9f43fe.js +61 -0
- flowfile/web/static/assets/PivotValidation-f97fec5b.js +61 -0
- flowfile/web/static/assets/{PolarsCode-a9f974f8.js → PolarsCode-bc3c9984.js} +13 -80
- flowfile/web/static/assets/Read-64a3f259.js +218 -0
- flowfile/web/static/assets/Read-e808b239.css +62 -0
- flowfile/web/static/assets/RecordCount-3d5039be.js +53 -0
- flowfile/web/static/assets/{RecordId-55ae7d36.js → RecordId-597510e0.js} +8 -80
- flowfile/web/static/assets/SQLQueryComponent-36cef432.css +27 -0
- flowfile/web/static/assets/SQLQueryComponent-df51adbe.js +38 -0
- flowfile/web/static/assets/{Sample-b4a18476.js → Sample-4be0a507.js} +8 -77
- flowfile/web/static/assets/{SecretManager-b066d13a.js → SecretManager-4839be57.js} +2 -2
- flowfile/web/static/assets/{Select-727688dc.js → Select-9b72f201.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-71e6b7e3.css +21 -0
- flowfile/web/static/assets/SettingsSection-7ded385d.js +45 -0
- flowfile/web/static/assets/{SettingsSection-695ac487.js → SettingsSection-e1e9c953.js} +2 -40
- flowfile/web/static/assets/SettingsSection-f0f75a42.js +53 -0
- flowfile/web/static/assets/SingleSelect-6c777aac.js +5 -0
- flowfile/web/static/assets/SingleSelect.vue_vue_type_script_setup_true_lang-33e3ff9b.js +62 -0
- flowfile/web/static/assets/SliderInput-7cb93e62.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-6cbde21a.js} +12 -97
- flowfile/web/static/assets/TextInput-d9a40c11.js +5 -0
- flowfile/web/static/assets/TextInput.vue_vue_type_script_setup_true_lang-5896c375.js +32 -0
- flowfile/web/static/assets/{TextToRows-c92d1ec2.css → TextToRows-5d2c1190.css} +9 -9
- flowfile/web/static/assets/{TextToRows-7b8998da.js → TextToRows-c4fcbf4d.js} +14 -83
- flowfile/web/static/assets/ToggleSwitch-4ef91d19.js +5 -0
- flowfile/web/static/assets/ToggleSwitch.vue_vue_type_script_setup_true_lang-38478c20.js +31 -0
- flowfile/web/static/assets/{UnavailableFields-8b0cb48e.js → UnavailableFields-a03f512c.js} +2 -2
- flowfile/web/static/assets/{Union-8d9ac7f9.css → Union-af6c3d9b.css} +6 -6
- flowfile/web/static/assets/Union-bfe9b996.js +77 -0
- flowfile/web/static/assets/{Unique-af5a80b4.js → Unique-5d023a27.js} +23 -104
- 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-91cc5354.js} +12 -166
- flowfile/web/static/assets/UnpivotValidation-0d240eeb.css +13 -0
- flowfile/web/static/assets/UnpivotValidation-7ee2de44.js +51 -0
- flowfile/web/static/assets/{ExploreData-18a4fe52.js → VueGraphicWalker-e51b9924.js} +4 -264
- flowfile/web/static/assets/VueGraphicWalker-ed5ab88b.css +6 -0
- flowfile/web/static/assets/{api-cb00cce6.js → api-c1bad5ca.js} +1 -1
- flowfile/web/static/assets/{api-023d1733.js → api-cf1221f0.js} +1 -1
- flowfile/web/static/assets/{designer-2197d782.css → designer-8da3ba3a.css} +859 -201
- flowfile/web/static/assets/{designer-6c322d8e.js → designer-9633482a.js} +2297 -733
- flowfile/web/static/assets/{documentation-4d1fafe1.js → documentation-ca400224.js} +1 -1
- flowfile/web/static/assets/{dropDown-0b46dd77.js → dropDown-614b998d.js} +1 -1
- flowfile/web/static/assets/{fullEditor-ec4e4f95.js → fullEditor-f7971590.js} +2 -2
- flowfile/web/static/assets/{genericNodeSettings-def5879b.js → genericNodeSettings-4fe5f36b.js} +3 -3
- flowfile/web/static/assets/{index-681a3ed0.css → index-50508d4d.css} +8 -0
- flowfile/web/static/assets/{index-683fc198.js → index-5429bbf8.js} +208 -31
- flowfile/web/static/assets/nodeInput-5d0d6b79.js +41 -0
- flowfile/web/static/assets/outputCsv-076b85ab.js +86 -0
- flowfile/web/static/assets/{Output-48f81019.css → outputCsv-9cc59e0b.css} +0 -143
- flowfile/web/static/assets/outputExcel-0fd17dbe.js +56 -0
- flowfile/web/static/assets/outputExcel-b41305c0.css +102 -0
- flowfile/web/static/assets/outputParquet-b61e0847.js +31 -0
- flowfile/web/static/assets/outputParquet-cf8cf3f2.css +4 -0
- flowfile/web/static/assets/readCsv-a8bb8b61.js +179 -0
- flowfile/web/static/assets/readCsv-c767cb37.css +52 -0
- flowfile/web/static/assets/readExcel-67b4aee0.js +201 -0
- flowfile/web/static/assets/readExcel-806d2826.css +64 -0
- flowfile/web/static/assets/readParquet-48c81530.css +19 -0
- flowfile/web/static/assets/readParquet-92ce1dbc.js +23 -0
- flowfile/web/static/assets/{secretApi-baceb6f9.js → secretApi-68435402.js} +1 -1
- flowfile/web/static/assets/{selectDynamic-de91449a.js → selectDynamic-92e25ee3.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-41b0e0d7.js} +65 -36
- flowfile/web/static/assets/{vue-content-loader.es-ba94b82f.js → vue-content-loader.es-2c8e608f.js} +1 -1
- flowfile/web/static/index.html +2 -2
- {flowfile-0.3.9.dist-info → flowfile-0.5.1.dist-info}/METADATA +5 -3
- {flowfile-0.3.9.dist-info → flowfile-0.5.1.dist-info}/RECORD +191 -121
- {flowfile-0.3.9.dist-info → flowfile-0.5.1.dist-info}/WHEEL +1 -1
- {flowfile-0.3.9.dist-info → flowfile-0.5.1.dist-info}/entry_points.txt +1 -0
- flowfile_core/__init__.py +3 -0
- 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/analytics/analytics_processor.py +1 -0
- flowfile_core/flowfile/code_generator/code_generator.py +62 -64
- flowfile_core/flowfile/flow_data_engine/create/funcs.py +73 -56
- flowfile_core/flowfile/flow_data_engine/flow_data_engine.py +77 -86
- 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/fuzzy_matching/prepare_for_fuzzy_match.py +23 -23
- flowfile_core/flowfile/flow_data_engine/join/utils.py +1 -1
- flowfile_core/flowfile/flow_data_engine/join/verify_integrity.py +9 -4
- flowfile_core/flowfile/flow_data_engine/subprocess_operations/subprocess_operations.py +212 -86
- flowfile_core/flowfile/flow_data_engine/utils.py +2 -0
- flowfile_core/flowfile/flow_graph.py +240 -54
- flowfile_core/flowfile/flow_node/flow_node.py +48 -13
- flowfile_core/flowfile/flow_node/models.py +2 -1
- flowfile_core/flowfile/handler.py +24 -5
- flowfile_core/flowfile/manage/compatibility_enhancements.py +404 -41
- flowfile_core/flowfile/manage/io_flowfile.py +394 -0
- 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/ui_components.py +277 -0
- flowfile_core/flowfile/schema_callbacks.py +17 -10
- flowfile_core/flowfile/setting_generator/settings.py +15 -10
- flowfile_core/main.py +5 -1
- flowfile_core/routes/routes.py +73 -30
- flowfile_core/routes/user_defined_components.py +55 -0
- flowfile_core/schemas/cloud_storage_schemas.py +0 -2
- flowfile_core/schemas/input_schema.py +228 -65
- flowfile_core/schemas/output_model.py +5 -2
- flowfile_core/schemas/schemas.py +153 -35
- flowfile_core/schemas/transform_schema.py +1083 -412
- flowfile_core/schemas/yaml_types.py +103 -0
- flowfile_core/types.py +156 -0
- flowfile_core/utils/validate_setup.py +3 -1
- flowfile_frame/__init__.py +3 -1
- flowfile_frame/flow_frame.py +31 -24
- flowfile_frame/flow_frame_methods.py +12 -9
- flowfile_worker/__init__.py +9 -35
- flowfile_worker/create/__init__.py +3 -21
- flowfile_worker/create/funcs.py +68 -56
- flowfile_worker/create/models.py +130 -62
- flowfile_worker/main.py +5 -2
- flowfile_worker/routes.py +52 -13
- shared/__init__.py +15 -0
- shared/storage_config.py +258 -0
- tools/migrate/README.md +56 -0
- tools/migrate/__init__.py +12 -0
- tools/migrate/__main__.py +131 -0
- tools/migrate/legacy_schemas.py +621 -0
- tools/migrate/migrate.py +598 -0
- tools/migrate/tests/__init__.py +0 -0
- tools/migrate/tests/conftest.py +23 -0
- tools/migrate/tests/test_migrate.py +627 -0
- tools/migrate/tests/test_migration_e2e.py +1010 -0
- tools/migrate/tests/test_node_migrations.py +813 -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_core/flowfile/manage/open_flowfile.py +0 -135
- {flowfile-0.3.9.dist-info → flowfile-0.5.1.dist-info/licenses}/LICENSE +0 -0
- /flowfile_core/flowfile/manage/manage_flowfile.py → /tools/__init__.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { d as defineComponent, r as ref, a3 as watchEffect, l as computed, n as onMounted, o as onUnmounted, b as resolveComponent, c as openBlock, e as createElementBlock, f as createVNode, p as createBaseVNode, i as createCommentVNode, t as toDisplayString, T as normalizeStyle, g as createTextVNode, F as Fragment, q as renderList, s as normalizeClass, v as withModifiers, w as withCtx, u as unref, h as createBlock, _ as _export_sfc } from "./index-
|
|
2
|
-
import { u as useNodeStore } from "./vue-codemirror.esm-
|
|
3
|
-
import { u as unavailableField } from "./UnavailableFields-
|
|
1
|
+
import { d as defineComponent, r as ref, a3 as watchEffect, l as computed, n as onMounted, o as onUnmounted, b as resolveComponent, c as openBlock, e as createElementBlock, f as createVNode, p as createBaseVNode, i as createCommentVNode, t as toDisplayString, T as normalizeStyle, g as createTextVNode, F as Fragment, q as renderList, s as normalizeClass, v as withModifiers, w as withCtx, u as unref, h as createBlock, _ as _export_sfc } from "./index-5429bbf8.js";
|
|
2
|
+
import { u as useNodeStore } from "./vue-codemirror.esm-41b0e0d7.js";
|
|
3
|
+
import { u as unavailableField } from "./UnavailableFields-a03f512c.js";
|
|
4
4
|
const _hoisted_1 = { key: 0 };
|
|
5
5
|
const _hoisted_2 = {
|
|
6
6
|
key: 1,
|
|
@@ -175,7 +175,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
175
175
|
const _component_el_option = resolveComponent("el-option");
|
|
176
176
|
const _component_el_select = resolveComponent("el-select");
|
|
177
177
|
const _component_el_checkbox = resolveComponent("el-checkbox");
|
|
178
|
-
return openBlock(), createElementBlock(
|
|
178
|
+
return openBlock(), createElementBlock("div", null, [
|
|
179
179
|
dataLoaded.value ? (openBlock(), createElementBlock("div", _hoisted_1, [
|
|
180
180
|
hasMissingFields.value ? (openBlock(), createElementBlock("div", {
|
|
181
181
|
key: 0,
|
|
@@ -291,12 +291,12 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
291
291
|
createBaseVNode("button", { onClick: selectAllSelected }, "Select"),
|
|
292
292
|
createBaseVNode("button", { onClick: deselectAllSelected }, "Deselect")
|
|
293
293
|
], 4)) : createCommentVNode("", true)
|
|
294
|
-
]
|
|
294
|
+
]);
|
|
295
295
|
};
|
|
296
296
|
}
|
|
297
297
|
});
|
|
298
|
-
const
|
|
299
|
-
const selectDynamic = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-
|
|
298
|
+
const selectDynamic_vue_vue_type_style_index_0_scoped_c49d6287_lang = "";
|
|
299
|
+
const selectDynamic = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-c49d6287"]]);
|
|
300
300
|
export {
|
|
301
301
|
selectDynamic as s
|
|
302
302
|
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
|
|
2
2
|
/* Context menu styling */
|
|
3
|
-
.context-menu[data-v-
|
|
3
|
+
.context-menu[data-v-c49d6287] {
|
|
4
4
|
position: fixed;
|
|
5
5
|
z-index: 1000;
|
|
6
6
|
border: 1px solid #ccc;
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
border-radius: 4px;
|
|
11
11
|
user-select: none;
|
|
12
12
|
}
|
|
13
|
-
.context-menu button[data-v-
|
|
13
|
+
.context-menu button[data-v-c49d6287] {
|
|
14
14
|
display: block;
|
|
15
15
|
background: none;
|
|
16
16
|
border: none;
|
|
@@ -19,12 +19,12 @@
|
|
|
19
19
|
width: 100%;
|
|
20
20
|
cursor: pointer;
|
|
21
21
|
}
|
|
22
|
-
.context-menu button[data-v-
|
|
22
|
+
.context-menu button[data-v-c49d6287]:hover {
|
|
23
23
|
background-color: #f0f0f0;
|
|
24
24
|
}
|
|
25
25
|
|
|
26
26
|
/* Table wrapper for scrolling */
|
|
27
|
-
.table-wrapper[data-v-
|
|
27
|
+
.table-wrapper[data-v-c49d6287] {
|
|
28
28
|
max-height: 700px;
|
|
29
29
|
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
|
|
30
30
|
border-radius: 8px;
|
|
@@ -33,30 +33,30 @@
|
|
|
33
33
|
}
|
|
34
34
|
|
|
35
35
|
/* Adjusted font size for input fields */
|
|
36
|
-
[data-v-
|
|
36
|
+
[data-v-c49d6287] .smaller-el-input .el-input__inner {
|
|
37
37
|
padding: 2px 10px;
|
|
38
38
|
font-size: 12px;
|
|
39
39
|
height: 24px;
|
|
40
40
|
line-height: 20px;
|
|
41
41
|
}
|
|
42
|
-
.smaller-el-input[data-v-
|
|
42
|
+
.smaller-el-input[data-v-c49d6287] {
|
|
43
43
|
line-height: 20px;
|
|
44
44
|
}
|
|
45
45
|
|
|
46
46
|
/* Highlight selected rows */
|
|
47
|
-
.highlight-row[data-v-
|
|
47
|
+
.highlight-row[data-v-c49d6287] {
|
|
48
48
|
background-color: #e7e6e6 !important;
|
|
49
49
|
}
|
|
50
50
|
|
|
51
51
|
/* Greyed out styling for unavailable fields */
|
|
52
|
-
.greyed-out[data-v-
|
|
52
|
+
.greyed-out[data-v-c49d6287] {
|
|
53
53
|
background-color: #dcdcdc !important;
|
|
54
54
|
color: #888 !important;
|
|
55
55
|
z-index: 1;
|
|
56
56
|
}
|
|
57
57
|
|
|
58
58
|
/* Unavailable field styling */
|
|
59
|
-
.unavailable-field[data-v-
|
|
59
|
+
.unavailable-field[data-v-c49d6287] {
|
|
60
60
|
display: flex;
|
|
61
61
|
align-items: center;
|
|
62
62
|
position: relative;
|
|
@@ -64,7 +64,7 @@
|
|
|
64
64
|
}
|
|
65
65
|
|
|
66
66
|
/* Remove missing fields button styling */
|
|
67
|
-
.remove-missing-fields[data-v-
|
|
67
|
+
.remove-missing-fields[data-v-c49d6287] {
|
|
68
68
|
display: flex;
|
|
69
69
|
align-items: center;
|
|
70
70
|
background-color: #d9534f;
|
|
@@ -76,31 +76,31 @@
|
|
|
76
76
|
font-weight: bold;
|
|
77
77
|
font-size: 0.9em;
|
|
78
78
|
}
|
|
79
|
-
.remove-missing-fields[data-v-
|
|
79
|
+
.remove-missing-fields[data-v-c49d6287]:hover {
|
|
80
80
|
background-color: #c9302c;
|
|
81
81
|
}
|
|
82
|
-
.remove-missing-fields > unavailable-field[data-v-
|
|
82
|
+
.remove-missing-fields > unavailable-field[data-v-c49d6287] {
|
|
83
83
|
margin-right: 4px;
|
|
84
84
|
}
|
|
85
85
|
|
|
86
86
|
/* Adjustments for el-checkbox component */
|
|
87
|
-
[data-v-
|
|
87
|
+
[data-v-c49d6287] .el-checkbox {
|
|
88
88
|
font-size: 12px;
|
|
89
89
|
height: 20px;
|
|
90
90
|
line-height: 20px;
|
|
91
91
|
display: flex;
|
|
92
92
|
align-items: center;
|
|
93
93
|
}
|
|
94
|
-
[data-v-
|
|
94
|
+
[data-v-c49d6287] .el-checkbox .el-checkbox__input {
|
|
95
95
|
height: 16px;
|
|
96
96
|
width: 16px;
|
|
97
97
|
margin: 0;
|
|
98
98
|
}
|
|
99
|
-
[data-v-
|
|
99
|
+
[data-v-c49d6287] .el-checkbox .el-checkbox__inner {
|
|
100
100
|
height: 16px;
|
|
101
101
|
width: 16px;
|
|
102
102
|
}
|
|
103
|
-
[data-v-
|
|
103
|
+
[data-v-c49d6287] .el-checkbox .el-checkbox__label {
|
|
104
104
|
font-size: 12px;
|
|
105
105
|
line-height: 20px;
|
|
106
106
|
margin-left: 4px;
|
|
Binary file
|
flowfile/web/static/assets/{vue-codemirror.esm-dc5e3348.js → vue-codemirror.esm-41b0e0d7.js}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { r as ref, j as defineStore, a as axios, d as defineComponent,
|
|
1
|
+
import { r as ref, j as defineStore, X as shallowRef, a as axios, d as defineComponent, ai as useCssVars, n as onMounted, c as openBlock, e as createElementBlock, p as createBaseVNode, L as renderSlot, h as createBlock, t as toDisplayString, i as createCommentVNode, T as normalizeStyle, s as normalizeClass, aa as Teleport, R as nextTick, _ as _export_sfc, B as inject, l as computed, m as watch, U as onBeforeUnmount, Y as h$1, aj as toRaw } from "./index-5429bbf8.js";
|
|
2
2
|
const FLOW_ID_STORAGE_KEY = "last_flow_id";
|
|
3
3
|
ref(null);
|
|
4
4
|
const getDownstreamNodeIds = async (flow_id, node_id) => {
|
|
@@ -42,13 +42,20 @@ const useNodeStore = defineStore("node", {
|
|
|
42
42
|
resultVersion: 0,
|
|
43
43
|
vueFlowInstance: null,
|
|
44
44
|
allExpressions: null,
|
|
45
|
+
hideLogViewerForThisRun: false,
|
|
45
46
|
isShowingLogViewer: false,
|
|
46
47
|
isStreamingLogs: false,
|
|
47
48
|
displayLogViewer: true,
|
|
48
|
-
showCodeGenerator: false
|
|
49
|
+
showCodeGenerator: false,
|
|
50
|
+
activeDrawerComponent: shallowRef(null),
|
|
51
|
+
drawerProps: ref({})
|
|
49
52
|
};
|
|
50
53
|
},
|
|
51
54
|
actions: {
|
|
55
|
+
async executeDrawCloseFunction() {
|
|
56
|
+
console.log("Executing draw close function");
|
|
57
|
+
this.drawCloseFunction();
|
|
58
|
+
},
|
|
52
59
|
toggleCodeGenerator() {
|
|
53
60
|
this.showCodeGenerator = !this.showCodeGenerator;
|
|
54
61
|
},
|
|
@@ -108,7 +115,7 @@ const useNodeStore = defineStore("node", {
|
|
|
108
115
|
this.currentRunResult = runResult;
|
|
109
116
|
this.runResults[runResult.flow_id] = runResult;
|
|
110
117
|
this.showFlowResult = showResult;
|
|
111
|
-
this.isShowingLogViewer = this.displayLogViewer && showResult;
|
|
118
|
+
this.isShowingLogViewer = this.displayLogViewer && showResult && !this.hideLogViewerForThisRun;
|
|
112
119
|
this.initializeResultCache(runResult.flow_id);
|
|
113
120
|
runResult.node_step_result.forEach((nodeResult) => {
|
|
114
121
|
this.runNodeResults[runResult.flow_id][nodeResult.node_id] = nodeResult;
|
|
@@ -138,8 +145,6 @@ const useNodeStore = defineStore("node", {
|
|
|
138
145
|
const func = this.nodeValidateFuncs.get(nodeId);
|
|
139
146
|
if (func) {
|
|
140
147
|
func();
|
|
141
|
-
} else {
|
|
142
|
-
console.warn("No validation function found for node", nodeId);
|
|
143
148
|
}
|
|
144
149
|
},
|
|
145
150
|
setFlowId(flowId) {
|
|
@@ -162,6 +167,9 @@ const useNodeStore = defineStore("node", {
|
|
|
162
167
|
cacheNodeDescriptionDict(flowId, nodeId, description) {
|
|
163
168
|
this.initializeDescriptionCache(flowId);
|
|
164
169
|
this.nodeDescriptions[flowId][nodeId] = description;
|
|
170
|
+
if (this.nodeData && this.nodeData.node_id === nodeId && this.nodeData.setting_input) {
|
|
171
|
+
this.nodeData.setting_input.description = description;
|
|
172
|
+
}
|
|
165
173
|
},
|
|
166
174
|
clearNodeDescriptionCache(flowId, nodeId) {
|
|
167
175
|
if (this.nodeDescriptions[flowId] && this.nodeDescriptions[flowId][nodeId]) {
|
|
@@ -200,6 +208,11 @@ const useNodeStore = defineStore("node", {
|
|
|
200
208
|
return "";
|
|
201
209
|
}
|
|
202
210
|
},
|
|
211
|
+
getters: {
|
|
212
|
+
isDrawerOpen() {
|
|
213
|
+
return !!this.activeDrawerComponent;
|
|
214
|
+
}
|
|
215
|
+
},
|
|
203
216
|
async setNodeDescription(nodeId, description) {
|
|
204
217
|
try {
|
|
205
218
|
this.cacheNodeDescriptionDict(this.flow_id, nodeId, description);
|
|
@@ -212,10 +225,10 @@ const useNodeStore = defineStore("node", {
|
|
|
212
225
|
"Content-Type": "application/json"
|
|
213
226
|
}
|
|
214
227
|
});
|
|
215
|
-
if (response.data
|
|
216
|
-
console.log(
|
|
228
|
+
if (response.data === true) {
|
|
229
|
+
console.log("Description updated successfully");
|
|
217
230
|
} else {
|
|
218
|
-
console.warn("Unexpected
|
|
231
|
+
console.warn("Unexpected response:", response.data);
|
|
219
232
|
}
|
|
220
233
|
} catch (error) {
|
|
221
234
|
if (error.response) {
|
|
@@ -238,7 +251,6 @@ const useNodeStore = defineStore("node", {
|
|
|
238
251
|
this.size_data_preview = newHeight;
|
|
239
252
|
},
|
|
240
253
|
toggleDrawer() {
|
|
241
|
-
console.log("toggleDrawer in column-store.ts");
|
|
242
254
|
if (this.isDrawerOpen && this.drawCloseFunction) {
|
|
243
255
|
this.pushNodeData();
|
|
244
256
|
}
|
|
@@ -250,22 +262,16 @@ const useNodeStore = defineStore("node", {
|
|
|
250
262
|
this.drawCloseFunction = null;
|
|
251
263
|
}
|
|
252
264
|
},
|
|
253
|
-
openDrawer(
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
console.log("pushing data");
|
|
257
|
-
this.pushNodeData();
|
|
258
|
-
}
|
|
259
|
-
if (close_function) {
|
|
260
|
-
this.drawCloseFunction = close_function;
|
|
261
|
-
}
|
|
265
|
+
openDrawer(component, nodeTitleInfo, props = {}) {
|
|
266
|
+
this.activeDrawerComponent = component;
|
|
267
|
+
this.drawerProps = { ...nodeTitleInfo, ...props };
|
|
262
268
|
this.isDrawerOpen = true;
|
|
263
269
|
},
|
|
264
270
|
closeDrawer() {
|
|
265
|
-
this.
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
271
|
+
this.activeDrawerComponent = null;
|
|
272
|
+
this.node_id = -1;
|
|
273
|
+
if (this.drawCloseFunction)
|
|
274
|
+
;
|
|
269
275
|
this.node_id = -1;
|
|
270
276
|
},
|
|
271
277
|
openAnalysisDrawer(close_function) {
|
|
@@ -325,9 +331,9 @@ const useNodeStore = defineStore("node", {
|
|
|
325
331
|
}
|
|
326
332
|
}
|
|
327
333
|
try {
|
|
328
|
-
|
|
334
|
+
console.log("Getting node data");
|
|
329
335
|
const response = await axios.get("/node", {
|
|
330
|
-
params: { flow_id: this.flow_id, node_id
|
|
336
|
+
params: { flow_id: this.flow_id, node_id },
|
|
331
337
|
headers: { accept: "application/json" }
|
|
332
338
|
});
|
|
333
339
|
this.nodeData = response.data;
|
|
@@ -350,8 +356,6 @@ const useNodeStore = defineStore("node", {
|
|
|
350
356
|
return;
|
|
351
357
|
}
|
|
352
358
|
console.log("Automatically pushing the node data ");
|
|
353
|
-
this.pushNodeData();
|
|
354
|
-
this.previous_node_id = this.node_id;
|
|
355
359
|
if (this.flow_id !== flow_id) {
|
|
356
360
|
this.setFlowId(flow_id);
|
|
357
361
|
}
|
|
@@ -393,14 +397,12 @@ const useNodeStore = defineStore("node", {
|
|
|
393
397
|
async updateSettingsDirectly(inputData) {
|
|
394
398
|
var _a2, _b;
|
|
395
399
|
try {
|
|
396
|
-
const node = (_a2 = this.vueFlowInstance) == null ? void 0 : _a2.findNode(String(
|
|
400
|
+
const node = (_a2 = this.vueFlowInstance) == null ? void 0 : _a2.findNode(String(inputData.node_id));
|
|
397
401
|
inputData.pos_x = node.position.x;
|
|
398
402
|
inputData.pos_y = node.position.y;
|
|
399
|
-
console.log("updating settings");
|
|
400
|
-
console.log("node", node);
|
|
401
403
|
const response = await axios.post("/update_settings/", inputData, {
|
|
402
404
|
params: {
|
|
403
|
-
node_type: node.data.
|
|
405
|
+
node_type: node.data.nodeTemplate.item
|
|
404
406
|
}
|
|
405
407
|
});
|
|
406
408
|
const downstreamNodeIds = await loadDownstreamNodeIds(this.flow_id, inputData.node_id);
|
|
@@ -408,23 +410,50 @@ const useNodeStore = defineStore("node", {
|
|
|
408
410
|
this.validateNode(nodeId);
|
|
409
411
|
});
|
|
410
412
|
return response.data;
|
|
413
|
+
} catch (error) {
|
|
414
|
+
console.error("Error updating settings directly:", (_b = error.response) == null ? void 0 : _b.data);
|
|
415
|
+
throw error;
|
|
416
|
+
}
|
|
417
|
+
},
|
|
418
|
+
async updateUserDefinedSettings(inputData) {
|
|
419
|
+
var _a2, _b;
|
|
420
|
+
try {
|
|
421
|
+
const node = (_a2 = this.vueFlowInstance) == null ? void 0 : _a2.findNode(String(inputData.value.node_id));
|
|
422
|
+
const nodeType = node.data.nodeTemplate.item;
|
|
423
|
+
inputData.value.pos_x = node.position.x;
|
|
424
|
+
inputData.value.pos_y = node.position.y;
|
|
425
|
+
const response = await axios.post(
|
|
426
|
+
"/user_defined_components/update_user_defined_node/",
|
|
427
|
+
inputData.value,
|
|
428
|
+
{
|
|
429
|
+
params: {
|
|
430
|
+
node_type: nodeType
|
|
431
|
+
}
|
|
432
|
+
}
|
|
433
|
+
);
|
|
434
|
+
const downstreamNodeIds = await loadDownstreamNodeIds(
|
|
435
|
+
this.flow_id,
|
|
436
|
+
inputData.value.node_id
|
|
437
|
+
);
|
|
438
|
+
downstreamNodeIds.map((nodeId) => {
|
|
439
|
+
this.validateNode(nodeId);
|
|
440
|
+
});
|
|
441
|
+
return response.data;
|
|
411
442
|
} catch (error) {
|
|
412
443
|
console.error("Error updating settings:", (_b = error.response) == null ? void 0 : _b.data);
|
|
413
444
|
throw error;
|
|
414
445
|
}
|
|
415
446
|
},
|
|
416
|
-
async updateSettings(inputData) {
|
|
447
|
+
async updateSettings(inputData, inputNodeType) {
|
|
417
448
|
var _a2, _b;
|
|
418
449
|
try {
|
|
419
|
-
const node = (_a2 = this.vueFlowInstance) == null ? void 0 : _a2.findNode(String(
|
|
450
|
+
const node = (_a2 = this.vueFlowInstance) == null ? void 0 : _a2.findNode(String(inputData.value.node_id));
|
|
451
|
+
const nodeType = inputNodeType ?? node.data.nodeTemplate.item;
|
|
420
452
|
inputData.value.pos_x = node.position.x;
|
|
421
453
|
inputData.value.pos_y = node.position.y;
|
|
422
|
-
console.log("updating settings");
|
|
423
|
-
console.log("node", node);
|
|
424
|
-
console.log("node name", node.data.component.__name);
|
|
425
454
|
const response = await axios.post("/update_settings/", inputData.value, {
|
|
426
455
|
params: {
|
|
427
|
-
node_type:
|
|
456
|
+
node_type: nodeType
|
|
428
457
|
}
|
|
429
458
|
});
|
|
430
459
|
const downstreamNodeIds = await loadDownstreamNodeIds(
|
flowfile/web/static/index.html
CHANGED
|
@@ -12,8 +12,8 @@
|
|
|
12
12
|
|
|
13
13
|
<!-- Material Icons -->
|
|
14
14
|
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
|
|
15
|
-
<script type="module" crossorigin src="/assets/index-
|
|
16
|
-
<link rel="stylesheet" href="/assets/index-
|
|
15
|
+
<script type="module" crossorigin src="/assets/index-5429bbf8.js"></script>
|
|
16
|
+
<link rel="stylesheet" href="/assets/index-50508d4d.css">
|
|
17
17
|
</head>
|
|
18
18
|
<body>
|
|
19
19
|
<div id="app"></div>
|
|
@@ -1,14 +1,16 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
2
|
Name: Flowfile
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.5.1
|
|
4
4
|
Summary: Project combining flowfile core (backend) and flowfile_worker (compute offloader) and flowfile_frame (api)
|
|
5
|
+
License-File: LICENSE
|
|
5
6
|
Author: Edward van Eechoud
|
|
6
7
|
Author-email: evaneechoud@gmail.com
|
|
7
|
-
Requires-Python: >=3.10,<3.
|
|
8
|
+
Requires-Python: >=3.10,<3.14
|
|
8
9
|
Classifier: Programming Language :: Python :: 3
|
|
9
10
|
Classifier: Programming Language :: Python :: 3.10
|
|
10
11
|
Classifier: Programming Language :: Python :: 3.11
|
|
11
12
|
Classifier: Programming Language :: Python :: 3.12
|
|
13
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
12
14
|
Requires-Dist: XlsxWriter (>=3.2.0,<3.3.0)
|
|
13
15
|
Requires-Dist: aiofiles (>=24.1.0,<25.0.0)
|
|
14
16
|
Requires-Dist: bcrypt (>=4.3.0,<5.0.0)
|