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.

Files changed (138) hide show
  1. flowfile/__init__.py +1 -1
  2. flowfile/api.py +0 -1
  3. flowfile/web/static/assets/{CloudConnectionManager-c97c25f8.js → CloudConnectionManager-d7c2c028.js} +2 -2
  4. flowfile/web/static/assets/{CloudStorageReader-f1ff509e.js → CloudStorageReader-d467329f.js} +11 -78
  5. flowfile/web/static/assets/{CloudStorageWriter-034f8b78.js → CloudStorageWriter-071b8b00.js} +12 -79
  6. flowfile/web/static/assets/{CloudStorageWriter-49c9a4b2.css → CloudStorageWriter-b0ee067f.css} +24 -24
  7. flowfile/web/static/assets/ContextMenu-2dea5e27.js +41 -0
  8. flowfile/web/static/assets/{SettingsSection-9c836ecc.css → ContextMenu-4c74eef1.css} +0 -21
  9. flowfile/web/static/assets/ContextMenu-63cfa99b.css +26 -0
  10. flowfile/web/static/assets/ContextMenu-785554c4.js +41 -0
  11. flowfile/web/static/assets/ContextMenu-a51e19ea.js +41 -0
  12. flowfile/web/static/assets/ContextMenu-c13f91d0.css +26 -0
  13. flowfile/web/static/assets/{CrossJoin-41efa4cb.css → CrossJoin-1119d18e.css} +18 -18
  14. flowfile/web/static/assets/{CrossJoin-9e156ebe.js → CrossJoin-cf68ec7a.js} +14 -84
  15. flowfile/web/static/assets/{DatabaseConnectionSettings-d5c625b3.js → DatabaseConnectionSettings-435c5dd8.js} +3 -3
  16. flowfile/web/static/assets/{DatabaseManager-265adc5e.js → DatabaseManager-349e33a8.js} +2 -2
  17. flowfile/web/static/assets/{DatabaseReader-0b10551e.js → DatabaseReader-8075bd28.js} +14 -114
  18. flowfile/web/static/assets/{DatabaseReader-f50c6558.css → DatabaseReader-ae61773c.css} +0 -27
  19. flowfile/web/static/assets/{DatabaseWriter-c17c6916.js → DatabaseWriter-3e2dda89.js} +13 -74
  20. flowfile/web/static/assets/{ExploreData-5bdae813.css → ExploreData-2d0cf4db.css} +8 -14
  21. flowfile/web/static/assets/ExploreData-76ec698c.js +192 -0
  22. flowfile/web/static/assets/{ExternalSource-3a66556c.js → ExternalSource-609a265c.js} +8 -79
  23. flowfile/web/static/assets/{Filter-91ad87e7.js → Filter-97cff793.js} +12 -85
  24. flowfile/web/static/assets/{Filter-a9d08ba1.css → Filter-f62091b3.css} +3 -3
  25. flowfile/web/static/assets/{Formula-3c395ab1.js → Formula-09de0ec9.js} +18 -85
  26. flowfile/web/static/assets/{Formula-29f19d21.css → Formula-bb96803d.css} +4 -4
  27. flowfile/web/static/assets/{FuzzyMatch-6857de82.css → FuzzyMatch-1010f966.css} +42 -42
  28. flowfile/web/static/assets/{FuzzyMatch-2df0d230.js → FuzzyMatch-bdf70248.js} +16 -87
  29. flowfile/web/static/assets/{GraphSolver-d285877f.js → GraphSolver-0b5a0e05.js} +13 -159
  30. flowfile/web/static/assets/GraphSolver-f0cb7bfb.css +22 -0
  31. flowfile/web/static/assets/{Unique-b5615727.css → GroupBy-b9505323.css} +8 -8
  32. flowfile/web/static/assets/{GroupBy-0bd1cc6b.js → GroupBy-eaddadde.js} +12 -75
  33. flowfile/web/static/assets/{Join-5a78a203.js → Join-3313371b.js} +15 -85
  34. flowfile/web/static/assets/{Join-f45eff22.css → Join-fd79b451.css} +20 -20
  35. flowfile/web/static/assets/{ManualInput-a71b52c6.css → ManualInput-3246a08d.css} +20 -20
  36. flowfile/web/static/assets/{ManualInput-93aef9d6.js → ManualInput-e8bfc0be.js} +11 -82
  37. flowfile/web/static/assets/{Output-411ecaee.js → Output-7303bb09.js} +13 -243
  38. flowfile/web/static/assets/Output-ddc9079f.css +37 -0
  39. flowfile/web/static/assets/{Pivot-89db4b04.js → Pivot-3b1c54ef.js} +14 -138
  40. flowfile/web/static/assets/Pivot-cf333e3d.css +22 -0
  41. flowfile/web/static/assets/PivotValidation-3bb36c8f.js +61 -0
  42. flowfile/web/static/assets/PivotValidation-891ddfb0.css +13 -0
  43. flowfile/web/static/assets/PivotValidation-c46cd420.css +13 -0
  44. flowfile/web/static/assets/PivotValidation-eaa819c0.js +61 -0
  45. flowfile/web/static/assets/{PolarsCode-a9f974f8.js → PolarsCode-aa12e25d.js} +13 -80
  46. flowfile/web/static/assets/Read-6b17491f.css +62 -0
  47. flowfile/web/static/assets/Read-a2bfc618.js +243 -0
  48. flowfile/web/static/assets/RecordCount-aa0dc082.js +53 -0
  49. flowfile/web/static/assets/{RecordId-55ae7d36.js → RecordId-48ee1a3b.js} +8 -80
  50. flowfile/web/static/assets/SQLQueryComponent-36cef432.css +27 -0
  51. flowfile/web/static/assets/SQLQueryComponent-e149dbf2.js +38 -0
  52. flowfile/web/static/assets/{Sample-b4a18476.js → Sample-f06cb97a.js} +8 -77
  53. flowfile/web/static/assets/{SecretManager-b066d13a.js → SecretManager-37f34886.js} +2 -2
  54. flowfile/web/static/assets/{Select-727688dc.js → Select-b60e6c47.js} +11 -85
  55. flowfile/web/static/assets/SettingsSection-2e4d03c4.css +21 -0
  56. flowfile/web/static/assets/SettingsSection-5c696bee.css +20 -0
  57. flowfile/web/static/assets/SettingsSection-70e5a7b1.js +53 -0
  58. flowfile/web/static/assets/SettingsSection-71e6b7e3.css +21 -0
  59. flowfile/web/static/assets/{SettingsSection-695ac487.js → SettingsSection-75b6cf4f.js} +2 -40
  60. flowfile/web/static/assets/SettingsSection-e57a672e.js +45 -0
  61. flowfile/web/static/assets/{GroupBy-ab1ea74b.css → Sort-3643d625.css} +8 -8
  62. flowfile/web/static/assets/{Sort-be3339a8.js → Sort-51b1ee4d.js} +12 -97
  63. flowfile/web/static/assets/{TextToRows-7b8998da.js → TextToRows-26835f8f.js} +14 -83
  64. flowfile/web/static/assets/{TextToRows-c92d1ec2.css → TextToRows-5d2c1190.css} +9 -9
  65. flowfile/web/static/assets/{UnavailableFields-8b0cb48e.js → UnavailableFields-88a4cd0c.js} +2 -2
  66. flowfile/web/static/assets/Union-4d0088eb.js +77 -0
  67. flowfile/web/static/assets/{Union-8d9ac7f9.css → Union-af6c3d9b.css} +6 -6
  68. flowfile/web/static/assets/{Unique-af5a80b4.js → Unique-7d554a62.js} +22 -91
  69. flowfile/web/static/assets/{Sort-7ccfa0fe.css → Unique-f9fb0809.css} +8 -8
  70. flowfile/web/static/assets/Unpivot-1e422df3.css +30 -0
  71. flowfile/web/static/assets/{Unpivot-5195d411.js → Unpivot-4668595c.js} +12 -166
  72. flowfile/web/static/assets/UnpivotValidation-0d240eeb.css +13 -0
  73. flowfile/web/static/assets/UnpivotValidation-d4f0e0e8.js +51 -0
  74. flowfile/web/static/assets/{ExploreData-18a4fe52.js → VueGraphicWalker-5324d566.js} +4 -264
  75. flowfile/web/static/assets/VueGraphicWalker-ed5ab88b.css +6 -0
  76. flowfile/web/static/assets/{api-cb00cce6.js → api-271ed117.js} +1 -1
  77. flowfile/web/static/assets/{api-023d1733.js → api-31e4fea6.js} +1 -1
  78. flowfile/web/static/assets/{designer-2197d782.css → designer-091bdc3f.css} +819 -184
  79. flowfile/web/static/assets/{designer-6c322d8e.js → designer-bf3d9487.js} +2191 -703
  80. flowfile/web/static/assets/{documentation-4d1fafe1.js → documentation-4d0a1cea.js} +1 -1
  81. flowfile/web/static/assets/{dropDown-0b46dd77.js → dropDown-025888df.js} +1 -1
  82. flowfile/web/static/assets/{fullEditor-ec4e4f95.js → fullEditor-1df991ec.js} +2 -2
  83. flowfile/web/static/assets/{genericNodeSettings-def5879b.js → genericNodeSettings-d3b2b2ac.js} +3 -3
  84. flowfile/web/static/assets/{index-683fc198.js → index-d0518598.js} +210 -31
  85. flowfile/web/static/assets/{Output-48f81019.css → outputCsv-9cc59e0b.css} +0 -143
  86. flowfile/web/static/assets/outputCsv-d8457527.js +86 -0
  87. flowfile/web/static/assets/outputExcel-b41305c0.css +102 -0
  88. flowfile/web/static/assets/outputExcel-be89153e.js +56 -0
  89. flowfile/web/static/assets/outputParquet-cf8cf3f2.css +4 -0
  90. flowfile/web/static/assets/outputParquet-fabb445a.js +31 -0
  91. flowfile/web/static/assets/readCsv-bca3ed53.css +52 -0
  92. flowfile/web/static/assets/readCsv-e8359522.js +178 -0
  93. flowfile/web/static/assets/readExcel-dabaf51b.js +203 -0
  94. flowfile/web/static/assets/readExcel-e1b381ea.css +64 -0
  95. flowfile/web/static/assets/readParquet-cee068e2.css +19 -0
  96. flowfile/web/static/assets/readParquet-e0771ef2.js +26 -0
  97. flowfile/web/static/assets/{secretApi-baceb6f9.js → secretApi-ce823eee.js} +1 -1
  98. flowfile/web/static/assets/{selectDynamic-de91449a.js → selectDynamic-5476546e.js} +7 -7
  99. flowfile/web/static/assets/{selectDynamic-b062bc9b.css → selectDynamic-aa913ff4.css} +16 -16
  100. flowfile/web/static/assets/{vue-codemirror.esm-dc5e3348.js → vue-codemirror.esm-9ed00d50.js} +29 -33
  101. flowfile/web/static/assets/{vue-content-loader.es-ba94b82f.js → vue-content-loader.es-7bca2d9b.js} +1 -1
  102. flowfile/web/static/index.html +1 -1
  103. {flowfile-0.3.9.dist-info → flowfile-0.3.10.dist-info}/METADATA +1 -1
  104. {flowfile-0.3.9.dist-info → flowfile-0.3.10.dist-info}/RECORD +129 -97
  105. flowfile_core/configs/flow_logger.py +5 -13
  106. flowfile_core/configs/node_store/nodes.py +303 -44
  107. flowfile_core/configs/settings.py +2 -1
  108. flowfile_core/database/connection.py +5 -21
  109. flowfile_core/fileExplorer/funcs.py +239 -121
  110. flowfile_core/flowfile/flow_data_engine/subprocess_operations/subprocess_operations.py +28 -8
  111. flowfile_core/flowfile/flow_graph.py +97 -33
  112. flowfile_core/flowfile/flow_node/flow_node.py +41 -9
  113. flowfile_core/flowfile/handler.py +22 -3
  114. flowfile_core/flowfile/schema_callbacks.py +8 -4
  115. flowfile_core/flowfile/setting_generator/settings.py +0 -1
  116. flowfile_core/main.py +4 -1
  117. flowfile_core/routes/routes.py +59 -10
  118. flowfile_core/schemas/input_schema.py +0 -1
  119. flowfile_core/schemas/output_model.py +5 -2
  120. flowfile_core/schemas/schemas.py +2 -0
  121. flowfile_core/schemas/transform_schema.py +1 -0
  122. flowfile_worker/__init__.py +6 -35
  123. flowfile_worker/main.py +5 -2
  124. flowfile_worker/routes.py +47 -5
  125. shared/__init__.py +15 -0
  126. shared/storage_config.py +243 -0
  127. flowfile/web/static/assets/GraphSolver-17fd26db.css +0 -68
  128. flowfile/web/static/assets/Pivot-f415e85f.css +0 -35
  129. flowfile/web/static/assets/Read-80dc1675.css +0 -197
  130. flowfile/web/static/assets/Read-c3b1929c.js +0 -701
  131. flowfile/web/static/assets/RecordCount-4e95f98e.js +0 -122
  132. flowfile/web/static/assets/Union-89fd73dc.js +0 -146
  133. flowfile/web/static/assets/Unpivot-246e9bbd.css +0 -77
  134. flowfile/web/static/assets/nodeTitle-a16db7c3.js +0 -227
  135. flowfile/web/static/assets/nodeTitle-f4b12bcb.css +0 -134
  136. {flowfile-0.3.9.dist-info → flowfile-0.3.10.dist-info}/LICENSE +0 -0
  137. {flowfile-0.3.9.dist-info → flowfile-0.3.10.dist-info}/WHEEL +0 -0
  138. {flowfile-0.3.9.dist-info → flowfile-0.3.10.dist-info}/entry_points.txt +0 -0
@@ -1,10 +1,10 @@
1
1
 
2
- .selectors-row[data-v-de068ad8] {
2
+ .selectors-row[data-v-e594e542] {
3
3
  display: flex;
4
4
  justify-content: space-between;
5
5
  margin-bottom: 10px; /* Spacing between rows */
6
6
  }
7
- .context-menu[data-v-de068ad8] {
7
+ .context-menu[data-v-e594e542] {
8
8
  position: fixed;
9
9
  z-index: 1000;
10
10
  border: 1px solid #ccc;
@@ -14,7 +14,7 @@
14
14
  border-radius: 4px;
15
15
  user-select: none;
16
16
  }
17
- .context-menu button[data-v-de068ad8] {
17
+ .context-menu button[data-v-e594e542] {
18
18
  display: block;
19
19
  background: none;
20
20
  border: none;
@@ -24,17 +24,17 @@
24
24
  cursor: pointer;
25
25
  z-index: 100;
26
26
  }
27
- .context-menu button[data-v-de068ad8]:hover {
27
+ .context-menu button[data-v-e594e542]:hover {
28
28
  background-color: #f0f0f0;
29
29
  }
30
- .table-wrapper[data-v-de068ad8] {
30
+ .table-wrapper[data-v-e594e542] {
31
31
  max-height: 250px; /* Adjust this value as needed */
32
32
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1); /* subtle shadow for depth */
33
33
  border-radius: 8px; /* rounded corners */
34
34
  overflow: auto; /* ensures the rounded corners are applied to the child elements */
35
35
  margin: 5px; /* adds a small margin around the table */
36
36
  }
37
- .context-menu[data-v-de068ad8] {
37
+ .context-menu[data-v-e594e542] {
38
38
  position: fixed;
39
39
  z-index: 1000;
40
40
  border: 1px solid #ccc;
@@ -42,39 +42,39 @@
42
42
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
43
43
  border-radius: 4px;
44
44
  }
45
- .context-menu ul[data-v-de068ad8] {
45
+ .context-menu ul[data-v-e594e542] {
46
46
  list-style: none;
47
47
  padding: 0;
48
48
  margin: 0;
49
49
  }
50
- .context-menu li[data-v-de068ad8] {
50
+ .context-menu li[data-v-e594e542] {
51
51
  padding: 8px 16px;
52
52
  cursor: pointer;
53
53
  }
54
- .context-menu li[data-v-de068ad8]:hover {
54
+ .context-menu li[data-v-e594e542]:hover {
55
55
  background-color: #f0f0f0;
56
56
  }
57
- .selectors-container[data-v-de068ad8] {
57
+ .selectors-container[data-v-e594e542] {
58
58
  display: flex;
59
59
  flex-direction: column;
60
60
  }
61
- .selectors-row[data-v-de068ad8] {
61
+ .selectors-row[data-v-e594e542] {
62
62
  display: flex;
63
63
  justify-content: space-between;
64
64
  align-items: center;
65
65
  }
66
- .add-button-container[data-v-de068ad8] {
66
+ .add-button-container[data-v-e594e542] {
67
67
  padding-left: 20px; /* Adjust as needed */
68
68
  display: flex;
69
69
  align-items: center;
70
70
  }
71
- .action-buttons[data-v-de068ad8] {
71
+ .action-buttons[data-v-e594e542] {
72
72
  display: flex;
73
73
  align-items: center;
74
74
  justify-content: flex-end; /* Adjust if needed */
75
75
  }
76
- .remove-join-button[data-v-de068ad8],
77
- .add-join-button[data-v-de068ad8] {
76
+ .remove-join-button[data-v-e594e542],
77
+ .add-join-button[data-v-e594e542] {
78
78
  cursor: pointer;
79
79
  margin-left: 10px; /* Space between buttons */
80
80
  padding: 0 6px; /* Adjust padding */
@@ -83,17 +83,17 @@
83
83
  min-width: 30px; /* Minimum width to ensure buttons don't shrink */
84
84
  text-align: center; /* Ensure the symbols are centered */
85
85
  }
86
- .selectors-header[data-v-de068ad8] {
86
+ .selectors-header[data-v-e594e542] {
87
87
  display: flex;
88
88
  justify-content: space-between;
89
89
  padding: 0 15px; /* Adjust padding for finer control */
90
90
  }
91
- .selectors-title[data-v-de068ad8] {
91
+ .selectors-title[data-v-e594e542] {
92
92
  flex: 1; /* Adjust this based on your needs */
93
93
  text-align: center; /* Center the titles */
94
94
  padding: 0 10px; /* Add padding to ensure alignment with the columns below */
95
95
  }
96
- .action-buttons[data-v-de068ad8] {
96
+ .action-buttons[data-v-e594e542] {
97
97
  flex-basis: 60px; /* Adjust according to the width of your buttons */
98
98
  display: flex;
99
99
  justify-content: center; /* Center the buttons within the action column */
@@ -1,15 +1,14 @@
1
- import { C as CodeLoader } from "./vue-content-loader.es-ba94b82f.js";
2
- import { u as useNodeStore } from "./vue-codemirror.esm-dc5e3348.js";
3
- import { s as selectDynamic } from "./selectDynamic-de91449a.js";
4
- import { G as GenericNodeSettings } from "./genericNodeSettings-def5879b.js";
5
- import { d as defineComponent, r as ref, c as openBlock, e as createElementBlock, f as createVNode, w as withCtx, p as createBaseVNode, h as createBlock, u as unref, _ as _export_sfc, n as onMounted, R as nextTick, a7 as Teleport, i as createCommentVNode } from "./index-683fc198.js";
6
- import { N as NodeButton, a as NodeTitle } from "./nodeTitle-a16db7c3.js";
7
- import "./UnavailableFields-8b0cb48e.js";
8
- import "./designer-6c322d8e.js";
9
- const _hoisted_1$1 = { key: 0 };
1
+ import { C as CodeLoader } from "./vue-content-loader.es-7bca2d9b.js";
2
+ import { u as useNodeStore } from "./vue-codemirror.esm-9ed00d50.js";
3
+ import { s as selectDynamic } from "./selectDynamic-5476546e.js";
4
+ import { G as GenericNodeSettings } from "./genericNodeSettings-d3b2b2ac.js";
5
+ import { d as defineComponent, r as ref, c as openBlock, e as createElementBlock, f as createVNode, w as withCtx, p as createBaseVNode, h as createBlock, u as unref, _ as _export_sfc } from "./index-d0518598.js";
6
+ import "./UnavailableFields-88a4cd0c.js";
7
+ import "./designer-bf3d9487.js";
8
+ const _hoisted_1 = { key: 0 };
10
9
  const _hoisted_2 = { class: "listbox-wrapper" };
11
- const _sfc_main$1 = /* @__PURE__ */ defineComponent({
12
- __name: "crossJoin",
10
+ const _sfc_main = /* @__PURE__ */ defineComponent({
11
+ __name: "CrossJoin",
13
12
  setup(__props, { expose: __expose }) {
14
13
  const result = ref(null);
15
14
  const nodeStore = useNodeStore();
@@ -31,19 +30,17 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
31
30
  console.log("Data loaded");
32
31
  dataLoaded.value = true;
33
32
  }
34
- nodeStore.isDrawerOpen = true;
35
33
  };
36
34
  const pushNodeData = async () => {
37
35
  console.log("Pushing node data");
38
36
  nodeStore.updateSettings(nodeCrossJoin);
39
- nodeStore.isDrawerOpen = false;
40
37
  };
41
38
  __expose({
42
39
  loadNodeData,
43
40
  pushNodeData
44
41
  });
45
42
  return (_ctx, _cache) => {
46
- return dataLoaded.value && nodeCrossJoin.value ? (openBlock(), createElementBlock("div", _hoisted_1$1, [
43
+ return dataLoaded.value && nodeCrossJoin.value ? (openBlock(), createElementBlock("div", _hoisted_1, [
47
44
  createVNode(GenericNodeSettings, {
48
45
  modelValue: nodeCrossJoin.value,
49
46
  "onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => nodeCrossJoin.value = $event)
@@ -79,75 +76,8 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
79
76
  };
80
77
  }
81
78
  });
82
- const crossJoin_vue_vue_type_style_index_0_scoped_de068ad8_lang = "";
83
- const joinInput = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["__scopeId", "data-v-de068ad8"]]);
84
- const _hoisted_1 = { ref: "el" };
85
- const _sfc_main = /* @__PURE__ */ defineComponent({
86
- __name: "CrossJoin",
87
- props: {
88
- nodeId: {
89
- type: Number,
90
- required: true
91
- }
92
- },
93
- setup(__props) {
94
- const nodeStore = useNodeStore();
95
- const childComp = ref(null);
96
- const drawer = ref(false);
97
- const props = __props;
98
- const closeOnDrawer = () => {
99
- var _a;
100
- (_a = childComp.value) == null ? void 0 : _a.pushNodeData();
101
- drawer.value = false;
102
- nodeStore.isDrawerOpen = false;
103
- };
104
- const openDrawer = async () => {
105
- if (nodeStore.node_id === props.nodeId) {
106
- return;
107
- }
108
- nodeStore.closeDrawer();
109
- drawer.value = true;
110
- const drawerOpen = nodeStore.isDrawerOpen;
111
- nodeStore.isDrawerOpen = true;
112
- await nextTick();
113
- if (nodeStore.node_id === props.nodeId && drawerOpen) {
114
- return;
115
- }
116
- if (childComp.value) {
117
- childComp.value.loadNodeData(props.nodeId);
118
- nodeStore.openDrawer(closeOnDrawer);
119
- }
120
- };
121
- onMounted(async () => {
122
- await nextTick();
123
- });
124
- return (_ctx, _cache) => {
125
- return openBlock(), createElementBlock("div", _hoisted_1, [
126
- createVNode(NodeButton, {
127
- ref: "nodeButton",
128
- "node-id": __props.nodeId,
129
- "image-src": "cross_join.png",
130
- title: `${__props.nodeId}: Join`,
131
- onClick: openDrawer
132
- }, null, 8, ["node-id", "title"]),
133
- drawer.value ? (openBlock(), createBlock(Teleport, {
134
- key: 0,
135
- to: "#nodesettings"
136
- }, [
137
- createVNode(NodeTitle, {
138
- title: "Join",
139
- intro: "Combine datasets based on one or more columns."
140
- }),
141
- createVNode(joinInput, {
142
- ref_key: "childComp",
143
- ref: childComp,
144
- "node-id": __props.nodeId
145
- }, null, 8, ["node-id"])
146
- ])) : createCommentVNode("", true)
147
- ], 512);
148
- };
149
- }
150
- });
79
+ const CrossJoin_vue_vue_type_style_index_0_scoped_e594e542_lang = "";
80
+ const CrossJoin = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-e594e542"]]);
151
81
  export {
152
- _sfc_main as default
82
+ CrossJoin as default
153
83
  };
@@ -1,5 +1,5 @@
1
- import { f as fetchSecretsApi } from "./secretApi-baceb6f9.js";
2
- import { d as defineComponent, r as ref, n as onMounted, c as openBlock, e as createElementBlock, p as createBaseVNode, t as toDisplayString, F as Fragment, q as renderList, i as createCommentVNode, _ as _export_sfc } from "./index-683fc198.js";
1
+ import { f as fetchSecretsApi } from "./secretApi-ce823eee.js";
2
+ import { d as defineComponent, r as ref, n as onMounted, c as openBlock, e as createElementBlock, p as createBaseVNode, t as toDisplayString, F as Fragment, q as renderList, i as createCommentVNode, _ as _export_sfc } from "./index-d0518598.js";
3
3
  const _hoisted_1 = { class: "connection-settings-container" };
4
4
  const _hoisted_2 = { class: "toggle-button" };
5
5
  const _hoisted_3 = {
@@ -147,5 +147,5 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
147
147
  const DatabaseConnectionSettings_vue_vue_type_style_index_0_scoped_2fd11b08_lang = "";
148
148
  const DatabaseConnectionSettings = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-2fd11b08"]]);
149
149
  export {
150
- DatabaseConnectionSettings as D
150
+ DatabaseConnectionSettings as default
151
151
  };
@@ -1,5 +1,5 @@
1
- import { f as fetchDatabaseConnectionsInterfaces, c as createDatabaseConnectionApi, d as deleteDatabaseConnectionApi } from "./api-023d1733.js";
2
- import { d as defineComponent, r as ref, m as watch, l as computed, c as openBlock, e as createElementBlock, p as createBaseVNode, a5 as withDirectives, a6 as vModelText, ag as vModelSelect, ah as vModelDynamic, s as normalizeClass, ai as vModelCheckbox, t as toDisplayString, v as withModifiers, n as onMounted, g as createTextVNode, F as Fragment, q as renderList, f as createVNode, w as withCtx, u as unref, z as ElMessage, aj as ElDialog, ak as ElButton, _ as _export_sfc } from "./index-683fc198.js";
1
+ import { f as fetchDatabaseConnectionsInterfaces, c as createDatabaseConnectionApi, d as deleteDatabaseConnectionApi } from "./api-31e4fea6.js";
2
+ import { d as defineComponent, r as ref, m as watch, l as computed, c as openBlock, e as createElementBlock, p as createBaseVNode, a8 as withDirectives, a9 as vModelText, ak as vModelSelect, al as vModelDynamic, s as normalizeClass, am as vModelCheckbox, t as toDisplayString, v as withModifiers, n as onMounted, g as createTextVNode, F as Fragment, q as renderList, f as createVNode, w as withCtx, u as unref, z as ElMessage, an as ElDialog, ao as ElButton, _ as _export_sfc } from "./index-d0518598.js";
3
3
  const _hoisted_1$1 = { class: "form-grid" };
4
4
  const _hoisted_2$1 = { class: "form-field" };
5
5
  const _hoisted_3$1 = { class: "form-field" };
@@ -1,12 +1,12 @@
1
- import { d as defineComponent, c as openBlock, e as createElementBlock, p as createBaseVNode, _ as _export_sfc, r as ref, n as onMounted, b as resolveComponent, f as createVNode, w as withCtx, F as Fragment, q as renderList, h as createBlock, u as unref, al as ElRadio, g as createTextVNode, t as toDisplayString, a5 as withDirectives, ag as vModelSelect, a6 as vModelText, i as createCommentVNode, a as axios, z as ElMessage, R as nextTick, a7 as Teleport } from "./index-683fc198.js";
2
- import { C as CodeLoader } from "./vue-content-loader.es-ba94b82f.js";
3
- import { u as useNodeStore } from "./vue-codemirror.esm-dc5e3348.js";
4
- import { f as fetchDatabaseConnectionsInterfaces } from "./api-023d1733.js";
5
- import { D as DatabaseConnectionSettings } from "./DatabaseConnectionSettings-d5c625b3.js";
6
- import { G as GenericNodeSettings } from "./genericNodeSettings-def5879b.js";
7
- import { N as NodeButton, a as NodeTitle } from "./nodeTitle-a16db7c3.js";
8
- import "./secretApi-baceb6f9.js";
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, i as createCommentVNode, a as axios, z as ElMessage, _ as _export_sfc } from "./index-d0518598.js";
2
+ import { C as CodeLoader } from "./vue-content-loader.es-7bca2d9b.js";
3
+ import { u as useNodeStore } from "./vue-codemirror.esm-9ed00d50.js";
4
+ import { f as fetchDatabaseConnectionsInterfaces } from "./api-31e4fea6.js";
5
+ import DatabaseConnectionSettings from "./DatabaseConnectionSettings-435c5dd8.js";
6
+ import SqlQueryComponent from "./SQLQueryComponent-e149dbf2.js";
7
+ import { G as GenericNodeSettings } from "./genericNodeSettings-d3b2b2ac.js";
8
+ import "./secretApi-ce823eee.js";
9
+ import "./designer-bf3d9487.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$2 = { class: "query-section" };
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$1 = /* @__PURE__ */ defineComponent({
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$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$1, [["__scopeId", "data-v-ae4d7dc5"]]);
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
- _sfc_main as default
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, u as unref, al as ElRadio, g as createTextVNode, t as toDisplayString, a5 as withDirectives, ag as vModelSelect, a6 as vModelText, z as ElMessage, _ as _export_sfc, R as nextTick, a7 as Teleport, i as createCommentVNode } from "./index-683fc198.js";
2
- import { C as CodeLoader } from "./vue-content-loader.es-ba94b82f.js";
3
- import { u as useNodeStore } from "./vue-codemirror.esm-dc5e3348.js";
4
- import { f as fetchDatabaseConnectionsInterfaces } from "./api-023d1733.js";
5
- import { D as DatabaseConnectionSettings } from "./DatabaseConnectionSettings-d5c625b3.js";
6
- import { G as GenericNodeSettings } from "./genericNodeSettings-def5879b.js";
7
- import { N as NodeButton, a as NodeTitle } from "./nodeTitle-a16db7c3.js";
8
- import "./secretApi-baceb6f9.js";
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-d0518598.js";
2
+ import { C as CodeLoader } from "./vue-content-loader.es-7bca2d9b.js";
3
+ import { u as useNodeStore } from "./vue-codemirror.esm-9ed00d50.js";
4
+ import { f as fetchDatabaseConnectionsInterfaces } from "./api-31e4fea6.js";
5
+ import DatabaseConnectionSettings from "./DatabaseConnectionSettings-435c5dd8.js";
6
+ import { G as GenericNodeSettings } from "./genericNodeSettings-d3b2b2ac.js";
7
+ import "./secretApi-ce823eee.js";
8
+ import "./designer-bf3d9487.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$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$1 = /* @__PURE__ */ defineComponent({
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$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$1, [["__scopeId", "data-v-90b52fee"]]);
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
- _sfc_main as default
250
+ DatabaseWriter as default
312
251
  };
@@ -1,25 +1,19 @@
1
1
 
2
- div[data-v-5af75af4] {
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-669bd025] {
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-669bd025] .graphic-walker-wrapper > div {
13
+ [data-v-1a3f5721] .graphic-walker-wrapper > div {
20
14
  height: 100%;
21
15
  }
22
- .error-display[data-v-669bd025] {
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-669bd025],
31
- .fallback-message[data-v-669bd025] {
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-669bd025] {
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-669bd025]:disabled {
36
+ button[data-v-1a3f5721]:disabled {
43
37
  cursor: not-allowed;
44
38
  opacity: 0.6;
45
39
  }