Flowfile 0.5.6__py3-none-any.whl → 0.6.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.
Files changed (256) hide show
  1. flowfile/api.py +8 -6
  2. flowfile/web/static/assets/{AdminView-c2c7942b.js → AdminView-C4K1DdHI.js} +28 -33
  3. flowfile/web/static/assets/{CloudConnectionView-7a3042c6.js → CloudConnectionView-BZbPvPUL.js} +39 -50
  4. flowfile/web/static/assets/{CloudStorageReader-24c54524.css → CloudStorageReader-BDByiqPI.css} +25 -25
  5. flowfile/web/static/assets/{CloudStorageReader-709c4037.js → CloudStorageReader-DLVukNJ7.js} +30 -35
  6. flowfile/web/static/assets/{CloudStorageWriter-604c51a8.js → CloudStorageWriter-Bfi-C1QW.js} +32 -37
  7. flowfile/web/static/assets/{CloudStorageWriter-60547855.css → CloudStorageWriter-y8jL8yjG.css} +24 -24
  8. flowfile/web/static/assets/{ColumnActionInput-d63d6746.js → ColumnActionInput-BpiCApw9.js} +7 -12
  9. flowfile/web/static/assets/{ColumnSelector-0c8cd1cd.js → ColumnSelector-CEAwedI7.js} +1 -2
  10. flowfile/web/static/assets/ContextMenu-CdojQu0w.js +9 -0
  11. flowfile/web/static/assets/ContextMenu-D12mhsy1.js +9 -0
  12. flowfile/web/static/assets/ContextMenu-EWUR98va.js +9 -0
  13. flowfile/web/static/assets/{ContextMenu.vue_vue_type_script_setup_true_lang-774c517c.js → ContextMenu.vue_vue_type_script_setup_true_lang-I4rXXd6G.js} +4 -5
  14. flowfile/web/static/assets/{CrossJoin-38e5b99a.js → CrossJoin-BOFfxkJO.js} +19 -18
  15. flowfile/web/static/assets/{CrossJoin-71b4cc10.css → CrossJoin-Cmbyt9im.css} +18 -18
  16. flowfile/web/static/assets/{CustomNode-76e8f3f5.js → CustomNode-Bhpezobq.js} +12 -17
  17. flowfile/web/static/assets/{DatabaseConnectionSettings-38155669.js → DatabaseConnectionSettings-Dw3bSJKB.js} +10 -11
  18. flowfile/web/static/assets/{DatabaseReader-5bf8c75b.css → DatabaseReader-D6pUNUCs.css} +21 -21
  19. flowfile/web/static/assets/{DatabaseReader-2e549c8f.js → DatabaseReader-m87ghlw0.js} +36 -34
  20. flowfile/web/static/assets/{DatabaseView-dc877c29.js → DatabaseView-CisSAtpe.js} +30 -38
  21. flowfile/web/static/assets/{DatabaseWriter-ffb91864.js → DatabaseWriter-Bbj9JLdL.js} +33 -35
  22. flowfile/web/static/assets/{DatabaseWriter-bdcf2c8b.css → DatabaseWriter-RBqdFLj8.css} +17 -17
  23. flowfile/web/static/assets/{DesignerView-a4466dab.js → DesignerView-DemDevTQ.js} +1752 -2054
  24. flowfile/web/static/assets/{DesignerView-71d4e9a1.css → DesignerView-Dm6OzlIc.css} +209 -168
  25. flowfile/web/static/assets/{DocumentationView-979afc84.js → DocumentationView-BrC1ZR3H.js} +3 -4
  26. flowfile/web/static/assets/{ExploreData-e4b92aaf.js → ExploreData-BMKcDuRb.js} +8 -10
  27. flowfile/web/static/assets/{ExternalSource-d08e7227.js → ExternalSource-BXrNNS-f.js} +40 -42
  28. flowfile/web/static/assets/{ExternalSource-7ac7373f.css → ExternalSource-NB6WVl5R.css} +14 -14
  29. flowfile/web/static/assets/{Filter-7add806d.js → Filter-C2MjsN6P.js} +36 -33
  30. flowfile/web/static/assets/{Filter-7494ea97.css → Filter-DCMGGuGC.css} +9 -9
  31. flowfile/web/static/assets/{Formula-53d58c43.css → Formula-BYafbDj8.css} +4 -4
  32. flowfile/web/static/assets/{Formula-36ab24d2.js → Formula-ufuy4mVD.js} +27 -26
  33. flowfile/web/static/assets/{FuzzyMatch-ad6361d6.css → FuzzyMatch-BGJAwgd0.css} +42 -42
  34. flowfile/web/static/assets/{FuzzyMatch-cc01bb04.js → FuzzyMatch-BOHODq3h.js} +36 -38
  35. flowfile/web/static/assets/{GraphSolver-4fb98f3b.js → GraphSolver-B6ZzpNGO.js} +23 -21
  36. flowfile/web/static/assets/{GraphSolver-4b4d7db9.css → GraphSolver-DFN83sj3.css} +4 -4
  37. flowfile/web/static/assets/{GroupBy-b3c8f429.js → GroupBy-B9BRNcfe.js} +30 -29
  38. flowfile/web/static/assets/{Sort-4abb7fae.css → GroupBy-x4ooP5np.css} +1 -1
  39. flowfile/web/static/assets/Join-Bx_g5bZz.css +118 -0
  40. flowfile/web/static/assets/{Join-096b7b26.js → Join-DsBEy1IH.js} +48 -43
  41. flowfile/web/static/assets/{LoginView-c33a246a.js → LoginView-Ct0rhdcO.js} +1 -2
  42. flowfile/web/static/assets/{ManualInput-39111f19.css → ManualInput-DlZmtMdt.css} +48 -48
  43. flowfile/web/static/assets/{ManualInput-7307e9b1.js → ManualInput-bC4BUgnG.js} +40 -41
  44. flowfile/web/static/assets/{MultiSelect-14822c48.js → MultiSelect-DIQ8PuTC.js} +2 -2
  45. flowfile/web/static/assets/{MultiSelect.vue_vue_type_script_setup_true_lang-90c4d340.js → MultiSelect.vue_vue_type_script_setup_true_lang-BefHfqTI.js} +1 -1
  46. flowfile/web/static/assets/{NodeDesigner-5036c392.js → NodeDesigner-D39yzr2k.js} +178 -208
  47. flowfile/web/static/assets/{NodeDesigner-94cd4dd3.css → NodeDesigner-R0l6sYyY.css} +76 -76
  48. flowfile/web/static/assets/{NumericInput-15cf3b72.js → NumericInput-DMSX3oOr.js} +2 -2
  49. flowfile/web/static/assets/{NumericInput.vue_vue_type_script_setup_true_lang-91e679d7.js → NumericInput.vue_vue_type_script_setup_true_lang-d0YlVHAl.js} +1 -1
  50. flowfile/web/static/assets/{Output-1f8ed42c.js → Output-D0VoXGcW.js} +26 -34
  51. flowfile/web/static/assets/{Output-692dd25d.css → Output-DsmglIDy.css} +5 -5
  52. flowfile/web/static/assets/{Pivot-0e153f4e.js → Pivot-BnMB4sEe.js} +26 -26
  53. flowfile/web/static/assets/{Pivot-0eda81b4.css → Pivot-qKTyWxop.css} +4 -4
  54. flowfile/web/static/assets/{PivotValidation-81ec2a33.js → PivotValidation-B2lWvugt.js} +7 -9
  55. flowfile/web/static/assets/{PivotValidation-5a4f7c79.js → PivotValidation-BPlhRjpL.js} +7 -9
  56. flowfile/web/static/assets/{PolarsCode-a39f15ac.js → PolarsCode-5h0tHnWR.js} +22 -20
  57. flowfile/web/static/assets/{PopOver-ddcfe4f6.js → PopOver-BHpt5rsj.js} +5 -9
  58. flowfile/web/static/assets/{PopOver-d96599db.css → PopOver-CyYM4-rV.css} +1 -1
  59. flowfile/web/static/assets/{Read-90f366bc.css → Read-DJxkrTb_.css} +10 -10
  60. flowfile/web/static/assets/Read-TsLEFh3B.js +227 -0
  61. flowfile/web/static/assets/{RecordCount-e9048ccd.js → RecordCount-DkVixq9v.js} +18 -17
  62. flowfile/web/static/assets/{RecordId-ad02521d.js → RecordId-C2UEGlCf.js} +42 -39
  63. flowfile/web/static/assets/{SQLQueryComponent-2eeecf0b.js → SQLQueryComponent-Dr5KMoD3.js} +2 -3
  64. flowfile/web/static/assets/{Sample-9a68c23d.js → Sample-Cb3eQNmd.js} +30 -30
  65. flowfile/web/static/assets/{SecretSelector-2429f35a.js → SecretSelector-De2L2bSx.js} +3 -4
  66. flowfile/web/static/assets/{SecretsView-c6afc915.js → SecretsView-CheC9BPV.js} +13 -16
  67. flowfile/web/static/assets/{Select-fcd002b6.js → Select-CI8TloRs.js} +41 -36
  68. flowfile/web/static/assets/{SettingsSection-5ce15962.js → SettingsSection-B39ulIiI.js} +1 -2
  69. flowfile/web/static/assets/{SettingsSection-c6b1362c.js → SettingsSection-BiCc7S9h.js} +1 -2
  70. flowfile/web/static/assets/{SettingsSection-cebb91d5.js → SettingsSection-CITK_R7o.js} +2 -3
  71. flowfile/web/static/assets/{SettingsSection-26fe48d4.css → SettingsSection-D2GgY-Aq.css} +4 -4
  72. flowfile/web/static/assets/{SetupView-2d12e01f.js → SetupView-C1aXRDvp.js} +1 -2
  73. flowfile/web/static/assets/{SingleSelect-b67de4eb.js → SingleSelect-Kr_hz90m.js} +2 -2
  74. flowfile/web/static/assets/{SingleSelect.vue_vue_type_script_setup_true_lang-eedb70eb.js → SingleSelect.vue_vue_type_script_setup_true_lang-Rxht5Z5N.js} +1 -1
  75. flowfile/web/static/assets/{SliderInput-fd8134ac.js → SliderInput-CLqpCxCb.js} +1 -2
  76. flowfile/web/static/assets/{GroupBy-5792782d.css → Sort-BIt2kc_p.css} +1 -1
  77. flowfile/web/static/assets/{Sort-c005a573.js → Sort-Dnw_J6Qi.js} +25 -25
  78. flowfile/web/static/assets/{TextInput-1bb31dab.js → TextInput-wdlunIZC.js} +2 -2
  79. flowfile/web/static/assets/{TextInput.vue_vue_type_script_setup_true_lang-a51fe730.js → TextInput.vue_vue_type_script_setup_true_lang-Bcj3ywzv.js} +1 -1
  80. flowfile/web/static/assets/{TextToRows-4f363753.js → TextToRows-BhtyGWPq.js} +42 -49
  81. flowfile/web/static/assets/{TextToRows-12afb4f4.css → TextToRows-DivDOLDx.css} +9 -9
  82. flowfile/web/static/assets/{ToggleSwitch-ca0f2e5e.js → ToggleSwitch-B-6WzfFf.js} +2 -2
  83. flowfile/web/static/assets/{ToggleSwitch.vue_vue_type_script_setup_true_lang-49aa41d8.js → ToggleSwitch.vue_vue_type_script_setup_true_lang-Cj8LqT-b.js} +1 -1
  84. flowfile/web/static/assets/{UnavailableFields-f6147968.js → UnavailableFields-Yf6XSqFB.js} +2 -3
  85. flowfile/web/static/assets/{Union-c65f17b7.js → Union-CwpjeKYC.js} +20 -23
  86. flowfile/web/static/assets/{Unpivot-b6ad6427.css → Union-DQJcpp3-.css} +6 -6
  87. flowfile/web/static/assets/{Unique-a1d96fb2.js → Unique-25v3urqH.js} +75 -74
  88. flowfile/web/static/assets/{Union-d6a8d7d5.css → Unpivot-Deqh1gtI.css} +6 -6
  89. flowfile/web/static/assets/{Unpivot-c2657ff3.js → Unpivot-sYcTTXrq.js} +34 -27
  90. flowfile/web/static/assets/{UnpivotValidation-28e29a3b.js → UnpivotValidation-C5DDEKY2.js} +5 -7
  91. flowfile/web/static/assets/VueGraphicWalker-B8l1_Z92.js +131 -0
  92. flowfile/web/static/assets/VueGraphicWalker-Da_1-3me.css +21 -0
  93. flowfile/web/static/assets/{api-df48ec50.js → api-C0LvF-0C.js} +1 -1
  94. flowfile/web/static/assets/{api-ee542cf7.js → api-DaC83EO_.js} +1 -1
  95. flowfile/web/static/assets/client-C8Ygr6Gb.js +42 -0
  96. flowfile/web/static/assets/{dropDown-7576a76a.js → dropDown-D5YXaPRR.js} +7 -12
  97. flowfile/web/static/assets/{fullEditor-7583bef5.js → fullEditor-BVYnWm05.js} +300 -18
  98. flowfile/web/static/assets/genericNodeSettings-2wAu-QKn.css +75 -0
  99. flowfile/web/static/assets/genericNodeSettings-BBtW_Cpz.js +590 -0
  100. flowfile/web/static/assets/{VueGraphicWalker-2fc3ddd4.js → graphic-walker.es-VrK6vdGE.js} +92305 -89751
  101. flowfile/web/static/assets/index-BCJxPfM5.js +6693 -0
  102. flowfile/web/static/assets/{index-057d770d.js → index-CHPMUR0d.js} +150 -170
  103. flowfile/web/static/assets/index-DPkoZWq8.js +32 -0
  104. flowfile/web/static/assets/index-DnW_KC_I.js +277 -0
  105. flowfile/web/static/assets/index-UFXyfirV.css +10797 -0
  106. flowfile/web/static/assets/index-bcuE0Z0p.js +87456 -0
  107. flowfile/web/static/assets/{node.types-2c15bb7e.js → node.types-Dl4gtSW9.js} +2 -2
  108. flowfile/web/static/assets/{outputCsv-c492b15e.js → outputCsv-BELuBiJZ.js} +1 -2
  109. flowfile/web/static/assets/outputCsv-CdGkv-fN.css +2581 -0
  110. flowfile/web/static/assets/{outputExcel-13bfa10f.js → outputExcel-D0TTNM79.js} +1 -2
  111. flowfile/web/static/assets/{outputParquet-9be1523a.js → outputParquet-Cz9EbRHj.js} +1 -2
  112. flowfile/web/static/assets/{readCsv-5a49a8c9.js → readCsv-7bd3kUMI.js} +1 -2
  113. flowfile/web/static/assets/{readExcel-27c30ad8.js → readExcel-Cq8CCwIv.js} +3 -4
  114. flowfile/web/static/assets/{readParquet-c5244ad5.css → readParquet-CRDmBrsp.css} +4 -4
  115. flowfile/web/static/assets/{readParquet-446bde68.js → readParquet-DjR4mRaj.js} +4 -5
  116. flowfile/web/static/assets/{secrets.api-34431884.js → secrets.api-C9o2KE5V.js} +1 -1
  117. flowfile/web/static/assets/{selectDynamic-5754a2b1.js → selectDynamic-Bl5FVsME.js} +5 -7
  118. flowfile/web/static/assets/useNodeSettings-dMS9zmh_.js +69 -0
  119. flowfile/web/static/assets/{vue-codemirror.esm-8f46fb36.js → vue-codemirror.esm-CwaYwln0.js} +3469 -3064
  120. flowfile/web/static/assets/{vue-content-loader.es-808fe33a.js → vue-content-loader.es-CMoRXo7N.js} +3 -3
  121. flowfile/web/static/index.html +2 -3
  122. {flowfile-0.5.6.dist-info → flowfile-0.6.1.dist-info}/METADATA +2 -1
  123. flowfile-0.6.1.dist-info/RECORD +417 -0
  124. {flowfile-0.5.6.dist-info → flowfile-0.6.1.dist-info}/WHEEL +1 -1
  125. flowfile_core/auth/password.py +1 -0
  126. flowfile_core/database/init_db.py +7 -5
  127. flowfile_core/fileExplorer/funcs.py +2 -2
  128. flowfile_core/flowfile/code_generator/code_generator.py +13 -11
  129. flowfile_core/flowfile/filter_expressions.py +327 -0
  130. flowfile_core/flowfile/flow_data_engine/flow_data_engine.py +61 -59
  131. flowfile_core/flowfile/flow_data_engine/flow_file_column/type_registry.py +3 -29
  132. flowfile_core/flowfile/flow_data_engine/flow_file_column/utils.py +45 -14
  133. flowfile_core/flowfile/flow_data_engine/subprocess_operations/models.py +20 -3
  134. flowfile_core/flowfile/flow_data_engine/subprocess_operations/streaming.py +206 -0
  135. flowfile_core/flowfile/flow_data_engine/subprocess_operations/subprocess_operations.py +146 -24
  136. flowfile_core/flowfile/flow_graph.py +504 -190
  137. flowfile_core/flowfile/flow_node/__init__.py +32 -0
  138. flowfile_core/flowfile/flow_node/executor.py +404 -0
  139. flowfile_core/flowfile/flow_node/flow_node.py +207 -106
  140. flowfile_core/flowfile/flow_node/models.py +40 -0
  141. flowfile_core/flowfile/flow_node/output_field_config_applier.py +217 -0
  142. flowfile_core/flowfile/flow_node/schema_utils.py +78 -0
  143. flowfile_core/flowfile/flow_node/state.py +155 -0
  144. flowfile_core/flowfile/history_manager.py +401 -0
  145. flowfile_core/flowfile/manage/compatibility_enhancements.py +9 -0
  146. flowfile_core/flowfile/manage/io_flowfile.py +3 -1
  147. flowfile_core/flowfile/sources/external_sources/sql_source/models.py +20 -4
  148. flowfile_core/flowfile/util/execution_orderer.py +89 -36
  149. flowfile_core/routes/auth.py +8 -9
  150. flowfile_core/routes/routes.py +320 -101
  151. flowfile_core/routes/user_defined_components.py +18 -16
  152. flowfile_core/schemas/history_schema.py +220 -0
  153. flowfile_core/schemas/input_schema.py +130 -6
  154. flowfile_core/schemas/schemas.py +9 -0
  155. flowfile_core/schemas/transform_schema.py +27 -5
  156. flowfile_core/schemas/yaml_types.py +23 -5
  157. flowfile_frame/adding_expr.py +18 -126
  158. flowfile_frame/callable_utils.py +261 -0
  159. flowfile_frame/database/connection_manager.py +0 -1
  160. flowfile_frame/expr.py +8 -4
  161. flowfile_frame/flow_frame.py +41 -41
  162. flowfile_frame/lazy.py +3 -12
  163. flowfile_frame/lazy_methods.py +5 -64
  164. flowfile_frame/utils.py +13 -32
  165. flowfile_worker/funcs.py +6 -4
  166. flowfile_worker/main.py +2 -0
  167. flowfile_worker/models.py +31 -11
  168. flowfile_worker/routes.py +60 -35
  169. flowfile_worker/spawner.py +7 -1
  170. flowfile_worker/streaming.py +335 -0
  171. flowfile/web/static/assets/ContextMenu-366bf1b4.js +0 -9
  172. flowfile/web/static/assets/ContextMenu-85cf5b44.js +0 -9
  173. flowfile/web/static/assets/ContextMenu-9d28ae6d.js +0 -9
  174. flowfile/web/static/assets/Join-28b5e18f.css +0 -109
  175. flowfile/web/static/assets/Read-39b63932.js +0 -222
  176. flowfile/web/static/assets/VueGraphicWalker-430f0b86.css +0 -6
  177. flowfile/web/static/assets/database_reader-ce1e55f3.svg +0 -24
  178. flowfile/web/static/assets/database_writer-b4ad0753.svg +0 -23
  179. flowfile/web/static/assets/element-icons-9c88a535.woff +0 -0
  180. flowfile/web/static/assets/element-icons-de5eb258.ttf +0 -0
  181. flowfile/web/static/assets/genericNodeSettings-0155288b.js +0 -136
  182. flowfile/web/static/assets/genericNodeSettings-3b2507ea.css +0 -46
  183. flowfile/web/static/assets/index-aeec439d.js +0 -38
  184. flowfile/web/static/assets/index-ca6799de.js +0 -62760
  185. flowfile/web/static/assets/index-d60c9dd4.css +0 -10777
  186. flowfile/web/static/assets/nodeInput-d478b9ac.js +0 -2
  187. flowfile/web/static/assets/outputCsv-cc84e09f.css +0 -2499
  188. flowfile-0.5.6.dist-info/RECORD +0 -407
  189. /flowfile/web/static/assets/{AdminView-f53bad23.css → AdminView-B2Dthl3u.css} +0 -0
  190. /flowfile/web/static/assets/{CloudConnectionView-cf85f943.css → CloudConnectionView-BdFYGWV7.css} +0 -0
  191. /flowfile/web/static/assets/{ColumnActionInput-c44b7aee.css → ColumnActionInput-dCasSIC9.css} +0 -0
  192. /flowfile/web/static/assets/{ColumnSelector-371637fb.css → ColumnSelector-j6sEOjo1.css} +0 -0
  193. /flowfile/web/static/assets/{CustomNode-edb9b939.css → CustomNode-VPlajG0j.css} +0 -0
  194. /flowfile/web/static/assets/{DatabaseConnectionSettings-c20a1e16.css → DatabaseConnectionSettings-B78hXYgu.css} +0 -0
  195. /flowfile/web/static/assets/{DatabaseView-6655afd6.css → DatabaseView-B-_adk1s.css} +0 -0
  196. /flowfile/web/static/assets/{DocumentationView-9ea6e871.css → DocumentationView-CL7iipFL.css} +0 -0
  197. /flowfile/web/static/assets/{ExploreData-10c5acc8.css → ExploreData-DHjv0Plr.css} +0 -0
  198. /flowfile/web/static/assets/{LoginView-d325d632.css → LoginView-DN1BXY3e.css} +0 -0
  199. /flowfile/web/static/assets/{PivotValidation-0e905b1a.css → PivotValidation-DK-FARWe.css} +0 -0
  200. /flowfile/web/static/assets/{PivotValidation-41b57ad6.css → PivotValidation-FUa9F47u.css} +0 -0
  201. /flowfile/web/static/assets/{PolarsCode-2b1f1f23.css → PolarsCode-G-gRSrSc.css} +0 -0
  202. /flowfile/web/static/assets/{SQLQueryComponent-edb90b98.css → SQLQueryComponent-oAbWw0r-.css} +0 -0
  203. /flowfile/web/static/assets/{SecretSelector-6329f743.css → SecretSelector-CJSadIZx.css} +0 -0
  204. /flowfile/web/static/assets/{SecretsView-aa291340.css → SecretsView-DbzIRAba.css} +0 -0
  205. /flowfile/web/static/assets/{SettingsSection-8f980839.css → SettingsSection-BGcJnH6q.css} +0 -0
  206. /flowfile/web/static/assets/{SettingsSection-07fbbc39.css → SettingsSection-DDWn_EGW.css} +0 -0
  207. /flowfile/web/static/assets/{SetupView-ec26f76a.css → SetupView-CI1nd-5Z.css} +0 -0
  208. /flowfile/web/static/assets/{SliderInput-f2e4f23c.css → SliderInput-BRk-q_Dk.css} +0 -0
  209. /flowfile/web/static/assets/{UnavailableFields-394a1f78.css → UnavailableFields-DRKDImKe.css} +0 -0
  210. /flowfile/web/static/assets/{Unique-2b705521.css → Unique-Absb0aON.css} +0 -0
  211. /flowfile/web/static/assets/{UnpivotValidation-d5ca3b7b.css → UnpivotValidation-DSBkFgS-.css} +0 -0
  212. /flowfile/web/static/assets/{airbyte-292aa232.png → airbyte-W0xvIXwZ.png} +0 -0
  213. /flowfile/web/static/assets/{cloud_storage_reader-aa1415d6.png → cloud_storage_reader-3GpSCk90.png} +0 -0
  214. /flowfile/web/static/assets/{cross_join-d30c0290.png → cross_join-B0qpgYoV.png} +0 -0
  215. /flowfile/web/static/assets/{dropDown-1d6acbd9.css → dropDown-CE0VF5_P.css} +0 -0
  216. /flowfile/web/static/assets/{explore_data-8a0a2861.png → explore_data-tX6olPPL.png} +0 -0
  217. /flowfile/web/static/assets/{fa-brands-400-808443ae.ttf → fa-brands-400-D1LuMI3I.ttf} +0 -0
  218. /flowfile/web/static/assets/{fa-brands-400-d7236a19.woff2 → fa-brands-400-D_cYUPeE.woff2} +0 -0
  219. /flowfile/web/static/assets/{fa-regular-400-e3456d12.woff2 → fa-regular-400-BjRzuEpd.woff2} +0 -0
  220. /flowfile/web/static/assets/{fa-regular-400-54cf6086.ttf → fa-regular-400-DZaxPHgR.ttf} +0 -0
  221. /flowfile/web/static/assets/{fa-solid-900-aa759986.woff2 → fa-solid-900-CTAAxXor.woff2} +0 -0
  222. /flowfile/web/static/assets/{fa-solid-900-d2f05935.ttf → fa-solid-900-D0aA9rwL.ttf} +0 -0
  223. /flowfile/web/static/assets/{fa-v4compatibility-0ce9033c.woff2 → fa-v4compatibility-C9RhG_FT.woff2} +0 -0
  224. /flowfile/web/static/assets/{fa-v4compatibility-30f6abf6.ttf → fa-v4compatibility-CCth-dXg.ttf} +0 -0
  225. /flowfile/web/static/assets/{filter-d7708bda.png → filter-WRdZyUOw.png} +0 -0
  226. /flowfile/web/static/assets/{formula-eeeb1611.png → formula-CgM7uHVI.png} +0 -0
  227. /flowfile/web/static/assets/{fullEditor-fe9f7e18.css → fullEditor-CmDI7T9F.css} +0 -0
  228. /flowfile/web/static/assets/{fuzzy_match-40c161b2.png → fuzzy_match-Yon3k5Tc.png} +0 -0
  229. /flowfile/web/static/assets/{graph_solver-8b7888b8.png → graph_solver-BlMrBttD.png} +0 -0
  230. /flowfile/web/static/assets/{group_by-80561fc3.png → group_by-Gici0CSS.png} +0 -0
  231. /flowfile/web/static/assets/{input_data-ab2eb678.png → input_data-BRdGecLc.png} +0 -0
  232. /flowfile/web/static/assets/{join-349043ae.png → join-BITWRu73.png} +0 -0
  233. /flowfile/web/static/assets/{manual_input-ae98f31d.png → manual_input-CFvo_EUS.png} +0 -0
  234. /flowfile/web/static/assets/{old_join-5d0eb604.png → old_join-B9bkpPqv.png} +0 -0
  235. /flowfile/web/static/assets/{output-06ec0371.png → output-Dp7-ZpC4.png} +0 -0
  236. /flowfile/web/static/assets/{outputExcel-f5d272b2.css → outputExcel-CKgRe2iT.css} +0 -0
  237. /flowfile/web/static/assets/{outputParquet-54597c3c.css → outputParquet-d7j407cK.css} +0 -0
  238. /flowfile/web/static/assets/{pivot-9660df51.png → pivot-DSxKhNlD.png} +0 -0
  239. /flowfile/web/static/assets/{polars_code-05ce5dc6.png → polars_code-DxiztZ1c.png} +0 -0
  240. /flowfile/web/static/assets/{readCsv-3bfac4c3.css → readCsv-BG-1Jilp.css} +0 -0
  241. /flowfile/web/static/assets/{readExcel-3db6b763.css → readExcel-DBQXKPtC.css} +0 -0
  242. /flowfile/web/static/assets/{record_count-dab44eb5.png → record_count-DCeaLtpS.png} +0 -0
  243. /flowfile/web/static/assets/{record_id-0b15856b.png → record_id-FeUjyIFh.png} +0 -0
  244. /flowfile/web/static/assets/{sample-693a88b5.png → sample-DeqfRiB-.png} +0 -0
  245. /flowfile/web/static/assets/{select-b0d0437a.png → select-D4JjbdjS.png} +0 -0
  246. /flowfile/web/static/assets/{selectDynamic-f2fb394f.css → selectDynamic-CjeTPUUo.css} +0 -0
  247. /flowfile/web/static/assets/{sort-2aa579f0.png → sort-DGwUG9WS.png} +0 -0
  248. /flowfile/web/static/assets/{summarize-2a099231.png → summarize-DFaNHpfp.png} +0 -0
  249. /flowfile/web/static/assets/{text_to_rows-859b29ea.png → text_to_rows-BdiAewrN.png} +0 -0
  250. /flowfile/web/static/assets/{union-2d8609f4.png → union-DCK-LSMq.png} +0 -0
  251. /flowfile/web/static/assets/{unique-1958b98a.png → unique-CdP3zZIq.png} +0 -0
  252. /flowfile/web/static/assets/{unpivot-d3cb4b5b.png → unpivot-CHttrEt8.png} +0 -0
  253. /flowfile/web/static/assets/{user-defined-icon-0ae16c90.png → user-defined-icon-BcIp2Vzo.png} +0 -0
  254. /flowfile/web/static/assets/{view-7a0f0be1.png → view-DUSRwjvq.png} +0 -0
  255. {flowfile-0.5.6.dist-info → flowfile-0.6.1.dist-info}/entry_points.txt +0 -0
  256. {flowfile-0.5.6.dist-info → flowfile-0.6.1.dist-info}/licenses/LICENSE +0 -0
@@ -1,10 +1,9 @@
1
- import { C as CodeLoader } from "./vue-content-loader.es-808fe33a.js";
2
- import { d as defineComponent, r as ref, a8 as shallowRef, H as watch, o as openBlock, c as createElementBlock, z as createVNode, B as unref, t as toDisplayString, e as createCommentVNode, l as useNodeStore, A as withCtx, C as createBlock } from "./index-ca6799de.js";
3
- import { k as keymap, a as acceptCompletion, i as indentMore, b as indentLess, c as EditorState, d as autocompletion, P as Prec, T } from "./vue-codemirror.esm-8f46fb36.js";
4
- import { p as python, o as oneDark } from "./index-057d770d.js";
5
- import { G as GenericNodeSettings } from "./genericNodeSettings-0155288b.js";
6
- import "./DesignerView-a4466dab.js";
7
- import "./PopOver-ddcfe4f6.js";
1
+ import { C as CodeLoader } from "./vue-content-loader.es-CMoRXo7N.js";
2
+ import { d as defineComponent, r as ref, H as watch, c as createElementBlock, z as createVNode, A as unref, t as toDisplayString, e as createCommentVNode, a4 as shallowRef, o as openBlock, l as useNodeStore, B as withCtx, C as createBlock } from "./index-bcuE0Z0p.js";
3
+ import { u as useNodeSettings } from "./useNodeSettings-dMS9zmh_.js";
4
+ import { k as keymap, a as acceptCompletion, i as indentMore, b as indentLess, c as EditorState, d as autocompletion, P as Prec, T } from "./vue-codemirror.esm-CwaYwln0.js";
5
+ import { o as oneDark, p as python } from "./index-CHPMUR0d.js";
6
+ import { G as GenericNodeSettings } from "./genericNodeSettings-BBtW_Cpz.js";
8
7
  const polarsCompletionVals = [
9
8
  // Polars basics
10
9
  { label: "pl", type: "variable", info: "Polars main module" },
@@ -148,7 +147,6 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
148
147
  };
149
148
  }
150
149
  });
151
- const pythonEditor_vue_vue_type_style_index_0_lang = "";
152
150
  const createPolarsCodeNode = (flowId, nodeId) => {
153
151
  const polarsCodeInput = {
154
152
  polars_code: `# Example of usage (you can remove this)
@@ -192,6 +190,15 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
192
190
  const editorChild = ref(null);
193
191
  const nodePolarsCode = ref(null);
194
192
  const nodeData = ref(null);
193
+ const { saveSettings, pushNodeData, handleGenericSettingsUpdate } = useNodeSettings({
194
+ nodeRef: nodePolarsCode,
195
+ onBeforeSave: () => {
196
+ if (!nodePolarsCode.value || !nodePolarsCode.value.polars_code_input.polars_code) {
197
+ return false;
198
+ }
199
+ return true;
200
+ }
201
+ });
195
202
  const handleEditorUpdate = (newCode) => {
196
203
  if (nodePolarsCode.value && nodePolarsCode.value.polars_code_input) {
197
204
  nodePolarsCode.value.polars_code_input.polars_code = newCode;
@@ -215,19 +222,14 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
215
222
  dataLoaded.value = false;
216
223
  }
217
224
  };
218
- const pushNodeData = async () => {
219
- if (!nodePolarsCode.value || !nodePolarsCode.value.polars_code_input.polars_code) {
220
- return;
221
- }
222
- nodePolarsCode.value.is_setup = true;
223
- nodeStore.updateSettings(nodePolarsCode);
224
- showEditor.value = false;
225
- dataLoaded.value = false;
226
- };
227
- __expose({ loadNodeData, pushNodeData });
225
+ __expose({ loadNodeData, pushNodeData, saveSettings });
228
226
  return (_ctx, _cache) => {
229
227
  return dataLoaded.value && nodePolarsCode.value ? (openBlock(), createElementBlock("div", _hoisted_1, [
230
- createVNode(GenericNodeSettings, { "model-value": nodePolarsCode.value }, {
228
+ createVNode(GenericNodeSettings, {
229
+ "model-value": nodePolarsCode.value,
230
+ "onUpdate:modelValue": unref(handleGenericSettingsUpdate),
231
+ onRequestSave: unref(saveSettings)
232
+ }, {
231
233
  default: withCtx(() => [
232
234
  showEditor.value && nodePolarsCode.value ? (openBlock(), createBlock(_sfc_main$1, {
233
235
  key: 0,
@@ -238,7 +240,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
238
240
  }, null, 8, ["editor-string"])) : createCommentVNode("", true)
239
241
  ]),
240
242
  _: 1
241
- }, 8, ["model-value"])
243
+ }, 8, ["model-value", "onUpdate:modelValue", "onRequestSave"])
242
244
  ])) : (openBlock(), createBlock(unref(CodeLoader), { key: 1 }));
243
245
  };
244
246
  }
@@ -1,4 +1,4 @@
1
- import { d as defineComponent, as as useCssVars, r as ref, J as onMounted, o as openBlock, c as createElementBlock, a as createBaseVNode, X as renderSlot, C as createBlock, t as toDisplayString, e as createCommentVNode, a4 as normalizeStyle, n as normalizeClass, al as Teleport, a2 as nextTick, g as _export_sfc } from "./index-ca6799de.js";
1
+ import { d as defineComponent, r as ref, J as onMounted, c as createElementBlock, a as createBaseVNode, T as renderSlot, C as createBlock, n as normalizeClass, a0 as normalizeStyle, t as toDisplayString, e as createCommentVNode, ao as Teleport, a1 as nextTick, aw as useCssVars, o as openBlock, g as _export_sfc } from "./index-bcuE0Z0p.js";
2
2
  const _hoisted_1 = { class: "popover-container" };
3
3
  const _hoisted_2 = { key: 0 };
4
4
  const _hoisted_3 = ["innerHTML"];
@@ -28,7 +28,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
28
28
  },
29
29
  setup(__props) {
30
30
  useCssVars((_ctx) => ({
31
- "355ab648": props.minWidth + "px"
31
+ "v355ab648": props.minWidth + "px"
32
32
  }));
33
33
  const visible = ref(false);
34
34
  const referenceEl = ref(null);
@@ -49,8 +49,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
49
49
  visible.value = false;
50
50
  };
51
51
  const updatePosition = () => {
52
- if (!referenceEl.value || !popoverEl.value)
53
- return;
52
+ if (!referenceEl.value || !popoverEl.value) return;
54
53
  const referenceRect = referenceEl.value.getBoundingClientRect();
55
54
  const popoverRect = popoverEl.value.getBoundingClientRect();
56
55
  const offset = 20;
@@ -76,13 +75,11 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
76
75
  }
77
76
  const viewportWidth = window.innerWidth;
78
77
  const viewportHeight = window.innerHeight;
79
- if (left < 10)
80
- left = 10;
78
+ if (left < 10) left = 10;
81
79
  if (left + popoverRect.width > viewportWidth - 10) {
82
80
  left = viewportWidth - popoverRect.width - 10;
83
81
  }
84
- if (top < 10)
85
- top = 10;
82
+ if (top < 10) top = 10;
86
83
  if (top + popoverRect.height > viewportHeight - 10) {
87
84
  top = viewportHeight - popoverRect.height - 10;
88
85
  }
@@ -131,7 +128,6 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
131
128
  };
132
129
  }
133
130
  });
134
- const PopOver_vue_vue_type_style_index_0_scoped_8b5d0b86_lang = "";
135
131
  const PopOver = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-8b5d0b86"]]);
136
132
  export {
137
133
  PopOver as P
@@ -10,7 +10,7 @@
10
10
  border: 0.5px solid var(--color-border-primary);
11
11
  border-radius: 4px;
12
12
  box-shadow: var(--shadow-lg);
13
- min-width: var(--355ab648);
13
+ min-width: var(--v355ab648);
14
14
  color: var(--color-text-primary);
15
15
  }
16
16
  .popover--left[data-v-8b5d0b86] {
@@ -1,5 +1,5 @@
1
1
 
2
- .context-menu[data-v-6b4a9868] {
2
+ .context-menu[data-v-f31065e1] {
3
3
  position: fixed;
4
4
  z-index: 1000;
5
5
  border: 1px solid #ccc;
@@ -8,7 +8,7 @@
8
8
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
9
9
  border-radius: 4px;
10
10
  }
11
- .context-menu button[data-v-6b4a9868] {
11
+ .context-menu button[data-v-f31065e1] {
12
12
  display: block;
13
13
  background: none;
14
14
  border: none;
@@ -17,14 +17,14 @@
17
17
  width: 100%;
18
18
  cursor: pointer;
19
19
  }
20
- .context-menu button[data-v-6b4a9868]:hover {
20
+ .context-menu button[data-v-f31065e1]:hover {
21
21
  background-color: var(--color-background-secondary);
22
22
  }
23
- .file-upload-wrapper[data-v-6b4a9868] {
23
+ .file-upload-wrapper[data-v-f31065e1] {
24
24
  position: relative;
25
25
  width: 100%;
26
26
  }
27
- .file-upload-label[data-v-6b4a9868] {
27
+ .file-upload-label[data-v-f31065e1] {
28
28
  display: flex;
29
29
  align-items: center;
30
30
  background-color: var(--color-background-secondary);
@@ -37,18 +37,18 @@
37
37
  cursor: pointer;
38
38
  transition: background-color 0.3s ease;
39
39
  }
40
- .file-upload-label[data-v-6b4a9868]:hover {
40
+ .file-upload-label[data-v-f31065e1]:hover {
41
41
  background-color: var(--color-background-primary);
42
42
  }
43
- .file-icon[data-v-6b4a9868] {
43
+ .file-icon[data-v-f31065e1] {
44
44
  margin-right: 10px;
45
45
  font-size: 20px;
46
46
  }
47
- .file-label-text[data-v-6b4a9868] {
47
+ .file-label-text[data-v-f31065e1] {
48
48
  flex-grow: 1;
49
49
  margin-left: 10px;
50
50
  }
51
- input[type="text"][data-v-6b4a9868] {
51
+ input[type="text"][data-v-f31065e1] {
52
52
  width: 100%;
53
53
  padding: 8px;
54
54
  border: 1px solid #ddd;
@@ -56,7 +56,7 @@ input[type="text"][data-v-6b4a9868] {
56
56
  box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1);
57
57
  transition: border-color 0.2s ease;
58
58
  }
59
- input[type="text"][data-v-6b4a9868]:focus {
59
+ input[type="text"][data-v-f31065e1]:focus {
60
60
  border-color: #3498db;
61
61
  outline: none;
62
62
  }
@@ -0,0 +1,227 @@
1
+ import { C as CodeLoader } from "./vue-content-loader.es-CMoRXo7N.js";
2
+ import ExcelTableConfig from "./readExcel-Cq8CCwIv.js";
3
+ import CsvTableConfig from "./readCsv-7bd3kUMI.js";
4
+ import ParquetTableConfig from "./readParquet-DjR4mRaj.js";
5
+ import { d as isInputExcelTable, e as isInputCsvTable, f as isInputParquetTable } from "./node.types-Dl4gtSW9.js";
6
+ import { d as defineComponent, l as useNodeStore, c as createElementBlock, z as createVNode, B as withCtx, a as createBaseVNode, t as toDisplayString, A as unref, C as createBlock, e as createCommentVNode, r as ref, G as computed, D as resolveComponent, o as openBlock, g as _export_sfc } from "./index-bcuE0Z0p.js";
7
+ import { u as useNodeSettings } from "./useNodeSettings-dMS9zmh_.js";
8
+ import { F as FileBrowser } from "./DesignerView-DemDevTQ.js";
9
+ import { G as GenericNodeSettings } from "./genericNodeSettings-BBtW_Cpz.js";
10
+ import "./dropDown-D5YXaPRR.js";
11
+ import "./PopOver-BHpt5rsj.js";
12
+ import "./index-CHPMUR0d.js";
13
+ import "./vue-codemirror.esm-CwaYwln0.js";
14
+ const _hoisted_1 = {
15
+ key: 0,
16
+ class: "listbox-wrapper"
17
+ };
18
+ const _hoisted_2 = { class: "listbox-wrapper" };
19
+ const _hoisted_3 = { class: "file-upload-container" };
20
+ const _hoisted_4 = {
21
+ for: "file-upload",
22
+ class: "file-upload-label"
23
+ };
24
+ const _hoisted_5 = { class: "file-label-text" };
25
+ const _hoisted_6 = { key: 0 };
26
+ const _hoisted_7 = { class: "listbox-wrapper" };
27
+ const _sfc_main = /* @__PURE__ */ defineComponent({
28
+ __name: "Read",
29
+ setup(__props, { expose: __expose }) {
30
+ const nodeStore = useNodeStore();
31
+ const selectedFile = ref(null);
32
+ const nodeRead = ref(null);
33
+ const receivedTable = ref(null);
34
+ const dataLoaded = ref(false);
35
+ const modalVisibleForOpen = ref(false);
36
+ const { saveSettings, pushNodeData, handleGenericSettingsUpdate } = useNodeSettings({
37
+ nodeRef: nodeRead,
38
+ onBeforeSave: () => {
39
+ if (!nodeRead.value || !receivedTable.value) {
40
+ console.warn("No node read value available");
41
+ return false;
42
+ }
43
+ nodeRead.value.received_file = receivedTable.value;
44
+ return true;
45
+ }
46
+ });
47
+ const getDisplayFileName = computed(() => {
48
+ var _a, _b;
49
+ if ((_a = selectedFile.value) == null ? void 0 : _a.name) {
50
+ return selectedFile.value.name;
51
+ }
52
+ if ((_b = receivedTable.value) == null ? void 0 : _b.name) {
53
+ return receivedTable.value.name;
54
+ }
55
+ return "Choose a file...";
56
+ });
57
+ function createDefaultCsvSettings() {
58
+ return {
59
+ file_type: "csv",
60
+ reference: "",
61
+ starting_from_line: 0,
62
+ delimiter: ",",
63
+ has_headers: true,
64
+ encoding: "utf-8",
65
+ row_delimiter: "\n",
66
+ quote_char: '"',
67
+ infer_schema_length: 1e3,
68
+ truncate_ragged_lines: false,
69
+ ignore_errors: false
70
+ };
71
+ }
72
+ function createDefaultExcelSettings() {
73
+ return {
74
+ file_type: "excel",
75
+ sheet_name: "",
76
+ start_row: 0,
77
+ start_column: 0,
78
+ end_row: 0,
79
+ end_column: 0,
80
+ has_headers: true,
81
+ type_inference: false
82
+ };
83
+ }
84
+ function createDefaultParquetSettings() {
85
+ return {
86
+ file_type: "parquet"
87
+ };
88
+ }
89
+ const handleFileChange = (fileInfo) => {
90
+ var _a;
91
+ try {
92
+ if (!fileInfo) {
93
+ console.warn("No file info provided");
94
+ return;
95
+ }
96
+ const ext = (_a = fileInfo.name.split(".").pop()) == null ? void 0 : _a.toLowerCase();
97
+ if (!ext) {
98
+ console.warn("No file type detected");
99
+ return;
100
+ }
101
+ let fileType;
102
+ let tableSettings;
103
+ switch (ext) {
104
+ case "xlsx":
105
+ fileType = "excel";
106
+ tableSettings = createDefaultExcelSettings();
107
+ break;
108
+ case "csv":
109
+ case "txt":
110
+ fileType = "csv";
111
+ tableSettings = createDefaultCsvSettings();
112
+ break;
113
+ case "parquet":
114
+ fileType = "parquet";
115
+ tableSettings = createDefaultParquetSettings();
116
+ break;
117
+ default:
118
+ console.warn("Unsupported file type:", ext);
119
+ return;
120
+ }
121
+ receivedTable.value = {
122
+ name: fileInfo.name,
123
+ path: fileInfo.path,
124
+ file_type: fileType,
125
+ table_settings: tableSettings
126
+ };
127
+ selectedFile.value = fileInfo;
128
+ modalVisibleForOpen.value = false;
129
+ } catch (error) {
130
+ console.error("Error handling file change:", error);
131
+ }
132
+ };
133
+ const loadNodeData = async (nodeId) => {
134
+ var _a;
135
+ try {
136
+ const nodeResult = await nodeStore.getNodeData(nodeId, false);
137
+ if (!nodeResult) {
138
+ console.warn("No node result received");
139
+ dataLoaded.value = true;
140
+ return;
141
+ }
142
+ nodeRead.value = nodeResult.setting_input;
143
+ if (((_a = nodeResult.setting_input) == null ? void 0 : _a.is_setup) && nodeResult.setting_input.received_file) {
144
+ receivedTable.value = nodeResult.setting_input.received_file;
145
+ }
146
+ dataLoaded.value = true;
147
+ } catch (error) {
148
+ console.error("Error loading node data:", error);
149
+ dataLoaded.value = true;
150
+ }
151
+ };
152
+ __expose({
153
+ loadNodeData,
154
+ pushNodeData,
155
+ saveSettings
156
+ });
157
+ return (_ctx, _cache) => {
158
+ const _component_el_dialog = resolveComponent("el-dialog");
159
+ return dataLoaded.value && nodeRead.value ? (openBlock(), createElementBlock("div", _hoisted_1, [
160
+ createVNode(GenericNodeSettings, {
161
+ "model-value": nodeRead.value,
162
+ "onUpdate:modelValue": unref(handleGenericSettingsUpdate),
163
+ onRequestSave: unref(saveSettings)
164
+ }, {
165
+ default: withCtx(() => [
166
+ createBaseVNode("div", _hoisted_2, [
167
+ createBaseVNode("div", _hoisted_3, [
168
+ createBaseVNode("div", {
169
+ class: "file-upload-wrapper",
170
+ onClick: _cache[0] || (_cache[0] = ($event) => modalVisibleForOpen.value = true)
171
+ }, [
172
+ createBaseVNode("label", _hoisted_4, [
173
+ _cache[5] || (_cache[5] = createBaseVNode("i", { class: "fas fa-table file-icon" }, null, -1)),
174
+ createBaseVNode("span", _hoisted_5, toDisplayString(getDisplayFileName.value), 1)
175
+ ])
176
+ ])
177
+ ])
178
+ ]),
179
+ receivedTable.value ? (openBlock(), createElementBlock("div", _hoisted_6, [
180
+ createBaseVNode("div", _hoisted_7, [
181
+ _cache[6] || (_cache[6] = createBaseVNode("div", { class: "listbox-subtitle" }, "File Specs", -1)),
182
+ unref(isInputExcelTable)(receivedTable.value.table_settings) ? (openBlock(), createBlock(ExcelTableConfig, {
183
+ key: 0,
184
+ modelValue: receivedTable.value.table_settings,
185
+ "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => receivedTable.value.table_settings = $event),
186
+ path: receivedTable.value.path
187
+ }, null, 8, ["modelValue", "path"])) : createCommentVNode("", true),
188
+ unref(isInputCsvTable)(receivedTable.value.table_settings) ? (openBlock(), createBlock(CsvTableConfig, {
189
+ key: 1,
190
+ modelValue: receivedTable.value.table_settings,
191
+ "onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => receivedTable.value.table_settings = $event)
192
+ }, null, 8, ["modelValue"])) : createCommentVNode("", true),
193
+ unref(isInputParquetTable)(receivedTable.value.table_settings) ? (openBlock(), createBlock(ParquetTableConfig, {
194
+ key: 2,
195
+ modelValue: receivedTable.value.table_settings,
196
+ "onUpdate:modelValue": _cache[3] || (_cache[3] = ($event) => receivedTable.value.table_settings = $event)
197
+ }, null, 8, ["modelValue"])) : createCommentVNode("", true)
198
+ ])
199
+ ])) : createCommentVNode("", true),
200
+ createVNode(_component_el_dialog, {
201
+ modelValue: modalVisibleForOpen.value,
202
+ "onUpdate:modelValue": _cache[4] || (_cache[4] = ($event) => modalVisibleForOpen.value = $event),
203
+ title: "Select a file to Read",
204
+ width: "70%"
205
+ }, {
206
+ default: withCtx(() => [
207
+ createVNode(FileBrowser, {
208
+ "allowed-file-types": ["csv", "txt", "parquet", "xlsx"],
209
+ mode: "open",
210
+ context: "dataFiles",
211
+ "is-visible": modalVisibleForOpen.value,
212
+ onFileSelected: handleFileChange
213
+ }, null, 8, ["is-visible"])
214
+ ]),
215
+ _: 1
216
+ }, 8, ["modelValue"])
217
+ ]),
218
+ _: 1
219
+ }, 8, ["model-value", "onUpdate:modelValue", "onRequestSave"])
220
+ ])) : (openBlock(), createBlock(unref(CodeLoader), { key: 1 }));
221
+ };
222
+ }
223
+ });
224
+ const Read = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-f31065e1"]]);
225
+ export {
226
+ Read as default
227
+ };
@@ -1,9 +1,6 @@
1
- import { d as defineComponent, l as useNodeStore, r as ref, J as onMounted, a2 as nextTick, o as openBlock, c as createElementBlock, z as createVNode, A as withCtx, a as createBaseVNode, e as createCommentVNode } from "./index-ca6799de.js";
2
- import { G as GenericNodeSettings } from "./genericNodeSettings-0155288b.js";
3
- import "./DesignerView-a4466dab.js";
4
- import "./PopOver-ddcfe4f6.js";
5
- import "./index-057d770d.js";
6
- import "./vue-codemirror.esm-8f46fb36.js";
1
+ import { d as defineComponent, l as useNodeStore, J as onMounted, a1 as nextTick, c as createElementBlock, z as createVNode, B as withCtx, a as createBaseVNode, A as unref, e as createCommentVNode, r as ref, o as openBlock } from "./index-bcuE0Z0p.js";
2
+ import { u as useNodeSettings } from "./useNodeSettings-dMS9zmh_.js";
3
+ import { G as GenericNodeSettings } from "./genericNodeSettings-BBtW_Cpz.js";
7
4
  const _hoisted_1 = {
8
5
  key: 0,
9
6
  class: "listbox-wrapper"
@@ -15,20 +12,21 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
15
12
  const dataLoaded = ref(false);
16
13
  const nodeData = ref(null);
17
14
  const nodeRecordCount = ref(null);
15
+ const { saveSettings, pushNodeData, handleGenericSettingsUpdate } = useNodeSettings({
16
+ nodeRef: nodeRecordCount
17
+ });
18
18
  const loadNodeData = async (nodeId) => {
19
19
  var _a;
20
20
  nodeData.value = await nodeStore.getNodeData(nodeId, false);
21
21
  nodeRecordCount.value = (_a = nodeData.value) == null ? void 0 : _a.setting_input;
22
- dataLoaded.value = true;
23
- };
24
- const pushNodeData = async () => {
25
22
  if (nodeRecordCount.value) {
26
- nodeStore.updateSettings(nodeRecordCount);
23
+ dataLoaded.value = true;
27
24
  }
28
25
  };
29
26
  __expose({
30
27
  loadNodeData,
31
- pushNodeData
28
+ pushNodeData,
29
+ saveSettings
32
30
  });
33
31
  onMounted(async () => {
34
32
  await nextTick();
@@ -37,15 +35,18 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
37
35
  return dataLoaded.value && nodeRecordCount.value ? (openBlock(), createElementBlock("div", _hoisted_1, [
38
36
  createVNode(GenericNodeSettings, {
39
37
  modelValue: nodeRecordCount.value,
40
- "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => nodeRecordCount.value = $event)
38
+ "onUpdate:modelValue": [
39
+ _cache[0] || (_cache[0] = ($event) => nodeRecordCount.value = $event),
40
+ unref(handleGenericSettingsUpdate)
41
+ ],
42
+ onRequestSave: unref(saveSettings)
41
43
  }, {
42
- default: withCtx(() => _cache[1] || (_cache[1] = [
44
+ default: withCtx(() => [..._cache[1] || (_cache[1] = [
43
45
  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),
44
46
  createBaseVNode("p", null, "This node does not need a setup", -1)
45
- ])),
46
- _: 1,
47
- __: [1]
48
- }, 8, ["modelValue"])
47
+ ])]),
48
+ _: 1
49
+ }, 8, ["modelValue", "onUpdate:modelValue", "onRequestSave"])
49
50
  ])) : createCommentVNode("", true);
50
51
  };
51
52
  }
@@ -1,11 +1,12 @@
1
- import { d as defineComponent, l as useNodeStore, r as ref, J as onMounted, a2 as nextTick, q as onUnmounted, y as resolveComponent, o as openBlock, c as createElementBlock, z as createVNode, A as withCtx, a as createBaseVNode, f as createTextVNode, i as withDirectives, v as vModelText, K as Fragment, L as renderList, n as normalizeClass, w as withModifiers, t as toDisplayString, C as createBlock, e as createCommentVNode } from "./index-ca6799de.js";
2
- import "./DesignerView-a4466dab.js";
3
- import { _ as _sfc_main$1 } from "./ContextMenu.vue_vue_type_script_setup_true_lang-774c517c.js";
4
- import SettingsSection from "./SettingsSection-5ce15962.js";
5
- import { G as GenericNodeSettings } from "./genericNodeSettings-0155288b.js";
6
- import "./PopOver-ddcfe4f6.js";
7
- import "./index-057d770d.js";
8
- import "./vue-codemirror.esm-8f46fb36.js";
1
+ import { d as defineComponent, l as useNodeStore, J as onMounted, a1 as nextTick, x as onUnmounted, c as createElementBlock, z as createVNode, B as withCtx, a as createBaseVNode, f as createTextVNode, h as withDirectives, v as vModelText, K as Fragment, L as renderList, w as withModifiers, n as normalizeClass, t as toDisplayString, C as createBlock, e as createCommentVNode, A as unref, r as ref, D as resolveComponent, o as openBlock } from "./index-bcuE0Z0p.js";
2
+ import { u as useNodeSettings } from "./useNodeSettings-dMS9zmh_.js";
3
+ import "./DesignerView-DemDevTQ.js";
4
+ import { _ as _sfc_main$1 } from "./ContextMenu.vue_vue_type_script_setup_true_lang-I4rXXd6G.js";
5
+ import SettingsSection from "./SettingsSection-B39ulIiI.js";
6
+ import { G as GenericNodeSettings } from "./genericNodeSettings-BBtW_Cpz.js";
7
+ import "./PopOver-BHpt5rsj.js";
8
+ import "./index-CHPMUR0d.js";
9
+ import "./vue-codemirror.esm-CwaYwln0.js";
9
10
  const _hoisted_1 = {
10
11
  key: 0,
11
12
  class: "listbox-wrapper"
@@ -20,11 +21,14 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
20
21
  __name: "RecordId",
21
22
  setup(__props, { expose: __expose }) {
22
23
  const nodeStore = useNodeStore();
24
+ const nodeRecordId = ref(null);
25
+ const { saveSettings, pushNodeData, handleGenericSettingsUpdate } = useNodeSettings({
26
+ nodeRef: nodeRecordId
27
+ });
23
28
  const showContextMenu = ref(false);
24
29
  const contextMenuPosition = ref({ x: 0, y: 0 });
25
30
  const dataLoaded = ref(false);
26
31
  const contextMenuRef = ref(null);
27
- const nodeRecordId = ref(null);
28
32
  const nodeData = ref(null);
29
33
  const contextMenuOptions = ref([]);
30
34
  const draggedColumnName = ref(null);
@@ -35,7 +39,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
35
39
  const onDropInSection = (section) => {
36
40
  var _a, _b;
37
41
  if (draggedColumnName.value) {
38
- if (section === "add" && !((_a = nodeRecordId.value) == null ? void 0 : _a.record_id_input.group_by_columns.includes(draggedColumnName.value))) {
42
+ if (!((_a = nodeRecordId.value) == null ? void 0 : _a.record_id_input.group_by_columns.includes(draggedColumnName.value))) {
39
43
  (_b = nodeRecordId.value) == null ? void 0 : _b.record_id_input.group_by_columns.push(draggedColumnName.value);
40
44
  }
41
45
  draggedColumnName.value = null;
@@ -48,20 +52,19 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
48
52
  selectedColumns.value = [columnName];
49
53
  };
50
54
  const loadNodeData = async (nodeId) => {
51
- var _a, _b, _c;
55
+ var _a;
52
56
  nodeData.value = await nodeStore.getNodeData(nodeId, false);
53
57
  nodeRecordId.value = (_a = nodeData.value) == null ? void 0 : _a.setting_input;
54
- if (!((_b = nodeData.value) == null ? void 0 : _b.setting_input.is_setup) && nodeRecordId.value) {
55
- nodeRecordId.value.record_id_input = {
56
- offset: 1,
57
- output_column_name: "record_id",
58
- group_by: false,
59
- group_by_columns: []
60
- };
61
- }
62
- dataLoaded.value = true;
63
- if ((_c = nodeRecordId.value) == null ? void 0 : _c.is_setup) {
64
- nodeRecordId.value.is_setup = true;
58
+ if (nodeRecordId.value) {
59
+ if (!nodeRecordId.value.is_setup) {
60
+ nodeRecordId.value.record_id_input = {
61
+ offset: 1,
62
+ output_column_name: "record_id",
63
+ group_by: false,
64
+ group_by_columns: []
65
+ };
66
+ }
67
+ dataLoaded.value = true;
65
68
  }
66
69
  };
67
70
  const onDragStart = (columnName, event) => {
@@ -117,17 +120,15 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
117
120
  };
118
121
  const removeColumn = (type, column) => {
119
122
  if (nodeRecordId.value) {
120
- if (type === "add") {
123
+ {
121
124
  nodeRecordId.value.record_id_input.group_by_columns = nodeRecordId.value.record_id_input.group_by_columns.filter((col) => col !== column);
122
125
  }
123
126
  }
124
127
  };
125
- const pushNodeData = async () => {
126
- nodeStore.updateSettings(nodeRecordId);
127
- };
128
128
  __expose({
129
129
  loadNodeData,
130
- pushNodeData
130
+ pushNodeData,
131
+ saveSettings
131
132
  });
132
133
  onMounted(async () => {
133
134
  await nextTick();
@@ -143,7 +144,11 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
143
144
  return dataLoaded.value && nodeRecordId.value ? (openBlock(), createElementBlock("div", _hoisted_1, [
144
145
  createVNode(GenericNodeSettings, {
145
146
  modelValue: nodeRecordId.value,
146
- "onUpdate:modelValue": _cache[7] || (_cache[7] = ($event) => nodeRecordId.value = $event)
147
+ "onUpdate:modelValue": [
148
+ _cache[7] || (_cache[7] = ($event) => nodeRecordId.value = $event),
149
+ unref(handleGenericSettingsUpdate)
150
+ ],
151
+ onRequestSave: unref(saveSettings)
147
152
  }, {
148
153
  default: withCtx(() => {
149
154
  var _a, _b;
@@ -156,11 +161,10 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
156
161
  span: 10,
157
162
  class: "grid-content"
158
163
  }, {
159
- default: withCtx(() => _cache[8] || (_cache[8] = [
160
- createTextVNode("Offset")
161
- ])),
162
- _: 1,
163
- __: [8]
164
+ default: withCtx(() => [..._cache[8] || (_cache[8] = [
165
+ createTextVNode("Offset", -1)
166
+ ])]),
167
+ _: 1
164
168
  }),
165
169
  createVNode(_component_el_col, {
166
170
  span: 8,
@@ -187,11 +191,10 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
187
191
  span: 10,
188
192
  class: "grid-content"
189
193
  }, {
190
- default: withCtx(() => _cache[9] || (_cache[9] = [
191
- createTextVNode("Output name")
192
- ])),
193
- _: 1,
194
- __: [9]
194
+ default: withCtx(() => [..._cache[9] || (_cache[9] = [
195
+ createTextVNode("Output name", -1)
196
+ ])]),
197
+ _: 1
195
198
  }),
196
199
  createVNode(_component_el_col, {
197
200
  span: 8,
@@ -261,7 +264,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
261
264
  ];
262
265
  }),
263
266
  _: 1
264
- }, 8, ["modelValue"])
267
+ }, 8, ["modelValue", "onUpdate:modelValue", "onRequestSave"])
265
268
  ])) : createCommentVNode("", true);
266
269
  };
267
270
  }
@@ -1,4 +1,4 @@
1
- import { d as defineComponent, o as openBlock, c as createElementBlock, a as createBaseVNode, g as _export_sfc } from "./index-ca6799de.js";
1
+ import { d as defineComponent, c as createElementBlock, a as createBaseVNode, o as openBlock, g as _export_sfc } from "./index-bcuE0Z0p.js";
2
2
  const _hoisted_1 = { class: "query-section" };
3
3
  const _hoisted_2 = { class: "form-group" };
4
4
  const _hoisted_3 = ["value"];
@@ -20,7 +20,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
20
20
  createBaseVNode("div", _hoisted_2, [
21
21
  createBaseVNode("textarea", {
22
22
  id: "query",
23
- value: _ctx.modelValue,
23
+ value: __props.modelValue,
24
24
  class: "form-control textarea",
25
25
  placeholder: "Enter SQL query",
26
26
  rows: "4",
@@ -31,7 +31,6 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
31
31
  };
32
32
  }
33
33
  });
34
- const SQLQueryComponent_vue_vue_type_style_index_0_scoped_10f7cdfb_lang = "";
35
34
  const SqlQueryComponent = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-10f7cdfb"]]);
36
35
  export {
37
36
  SqlQueryComponent as default