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,12 +1,10 @@
1
- import { d as defineComponent, r as ref, l as useNodeStore, G as computed, J as onMounted, a2 as nextTick, y as resolveComponent, o as openBlock, c as createElementBlock, z as createVNode, A as withCtx, a as createBaseVNode, f as createTextVNode, e as createCommentVNode, i as withDirectives, v as vModelText, C as createBlock, B as unref, g as _export_sfc } from "./index-ca6799de.js";
2
- import { C as ColumnSelector } from "./dropDown-7576a76a.js";
3
- import { u as unavailableField } from "./UnavailableFields-f6147968.js";
4
- import { G as GenericNodeSettings } from "./genericNodeSettings-0155288b.js";
5
- import { C as CodeLoader } from "./vue-content-loader.es-808fe33a.js";
6
- import "./PopOver-ddcfe4f6.js";
7
- import "./DesignerView-a4466dab.js";
8
- import "./index-057d770d.js";
9
- 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, f as createTextVNode, e as createCommentVNode, h as withDirectives, v as vModelText, A as unref, C as createBlock, r as ref, G as computed, D as resolveComponent, o as openBlock, g as _export_sfc } from "./index-bcuE0Z0p.js";
2
+ import { u as useNodeSettings } from "./useNodeSettings-dMS9zmh_.js";
3
+ import { C as ColumnSelector } from "./dropDown-D5YXaPRR.js";
4
+ import { u as unavailableField } from "./UnavailableFields-Yf6XSqFB.js";
5
+ import { G as GenericNodeSettings } from "./genericNodeSettings-BBtW_Cpz.js";
6
+ import { C as CodeLoader } from "./vue-content-loader.es-CMoRXo7N.js";
7
+ import "./PopOver-BHpt5rsj.js";
10
8
  const _hoisted_1 = {
11
9
  key: 0,
12
10
  class: "listbox-wrapper"
@@ -42,6 +40,9 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
42
40
  const nodeStore = useNodeStore();
43
41
  const isLoaded = ref(false);
44
42
  const nodeTextToRows = ref(null);
43
+ const { saveSettings, pushNodeData, handleGenericSettingsUpdate } = useNodeSettings({
44
+ nodeRef: nodeTextToRows
45
+ });
45
46
  const hasInvalidFields = computed(() => {
46
47
  return false;
47
48
  });
@@ -55,13 +56,13 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
55
56
  };
56
57
  };
57
58
  const loadNodeData = async (nodeId) => {
58
- var _a, _b, _c;
59
- result.value = await nodeStore.getNodeData(nodeId, true);
59
+ var _a, _b;
60
+ result.value = await nodeStore.getNodeData(nodeId, false);
60
61
  nodeTextToRows.value = (_a = result.value) == null ? void 0 : _a.setting_input;
61
- if (!((_b = nodeTextToRows.value) == null ? void 0 : _b.is_setup) && ((_c = result.value) == null ? void 0 : _c.main_input)) {
62
- nodeTextToRows.value.text_to_rows_input = getEmptySetup();
63
- } else {
64
- isLoaded.value = true;
62
+ if (nodeTextToRows.value) {
63
+ if (!nodeTextToRows.value.is_setup && ((_b = result.value) == null ? void 0 : _b.main_input)) {
64
+ nodeTextToRows.value.text_to_rows_input = getEmptySetup();
65
+ }
65
66
  }
66
67
  isLoaded.value = true;
67
68
  };
@@ -74,16 +75,10 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
74
75
  nodeTextToRows.value.text_to_rows_input.split_by_column = newValue;
75
76
  }
76
77
  };
77
- const pushNodeData = async () => {
78
- isLoaded.value = false;
79
- if (nodeTextToRows.value) {
80
- nodeTextToRows.value.is_setup = true;
81
- }
82
- nodeStore.updateSettings(nodeTextToRows);
83
- };
84
78
  __expose({
85
79
  loadNodeData,
86
80
  pushNodeData,
81
+ saveSettings,
87
82
  hasInvalidFields
88
83
  });
89
84
  onMounted(async () => {
@@ -97,7 +92,11 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
97
92
  return isLoaded.value && nodeTextToRows.value ? (openBlock(), createElementBlock("div", _hoisted_1, [
98
93
  createVNode(GenericNodeSettings, {
99
94
  modelValue: nodeTextToRows.value,
100
- "onUpdate:modelValue": _cache[7] || (_cache[7] = ($event) => nodeTextToRows.value = $event)
95
+ "onUpdate:modelValue": [
96
+ _cache[7] || (_cache[7] = ($event) => nodeTextToRows.value = $event),
97
+ unref(handleGenericSettingsUpdate)
98
+ ],
99
+ onRequestSave: unref(saveSettings)
101
100
  }, {
102
101
  default: withCtx(() => {
103
102
  var _a, _b, _c;
@@ -112,7 +111,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
112
111
  "tooltip-text": "Setup is not valid",
113
112
  class: "error-icon"
114
113
  }),
115
- _cache[8] || (_cache[8] = createTextVNode(" Check the column you want to split "))
114
+ _cache[8] || (_cache[8] = createTextVNode(" Check the column you want to split ", -1))
116
115
  ])) : createCommentVNode("", true),
117
116
  createBaseVNode("div", _hoisted_5, [
118
117
  createVNode(_component_el_row, null, {
@@ -141,18 +140,16 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
141
140
  }, {
142
141
  default: withCtx(() => [
143
142
  createVNode(_component_el_radio, { label: true }, {
144
- default: withCtx(() => _cache[10] || (_cache[10] = [
145
- createTextVNode("Split by a fixed value")
146
- ])),
147
- _: 1,
148
- __: [10]
143
+ default: withCtx(() => [..._cache[10] || (_cache[10] = [
144
+ createTextVNode("Split by a fixed value", -1)
145
+ ])]),
146
+ _: 1
149
147
  }),
150
148
  createVNode(_component_el_radio, { label: false }, {
151
- default: withCtx(() => _cache[11] || (_cache[11] = [
152
- createTextVNode("Split by a column")
153
- ])),
154
- _: 1,
155
- __: [11]
149
+ default: withCtx(() => [..._cache[11] || (_cache[11] = [
150
+ createTextVNode("Split by a column", -1)
151
+ ])]),
152
+ _: 1
156
153
  })
157
154
  ]),
158
155
  _: 1
@@ -160,11 +157,10 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
160
157
  ]),
161
158
  nodeTextToRows.value.text_to_rows_input.split_by_fixed_value ? (openBlock(), createElementBlock("div", _hoisted_8, [
162
159
  createVNode(_component_el_col, { span: 10 }, {
163
- default: withCtx(() => _cache[12] || (_cache[12] = [
160
+ default: withCtx(() => [..._cache[12] || (_cache[12] = [
164
161
  createBaseVNode("label", null, "Split by value", -1)
165
- ])),
166
- _: 1,
167
- __: [12]
162
+ ])]),
163
+ _: 1
168
164
  }),
169
165
  createVNode(_component_el_col, { span: 8 }, {
170
166
  default: withCtx(() => [
@@ -181,11 +177,10 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
181
177
  ])) : createCommentVNode("", true),
182
178
  !nodeTextToRows.value.text_to_rows_input.split_by_fixed_value ? (openBlock(), createElementBlock("div", _hoisted_9, [
183
179
  createVNode(_component_el_col, { span: 10 }, {
184
- default: withCtx(() => _cache[13] || (_cache[13] = [
180
+ default: withCtx(() => [..._cache[13] || (_cache[13] = [
185
181
  createBaseVNode("label", null, "Column that contains the value to split", -1)
186
- ])),
187
- _: 1,
188
- __: [13]
182
+ ])]),
183
+ _: 1
189
184
  }),
190
185
  createVNode(_component_el_col, { span: 8 }, {
191
186
  default: withCtx(() => {
@@ -205,11 +200,10 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
205
200
  ])) : createCommentVNode("", true),
206
201
  createBaseVNode("div", _hoisted_10, [
207
202
  createVNode(_component_el_col, { span: 10 }, {
208
- default: withCtx(() => _cache[14] || (_cache[14] = [
203
+ default: withCtx(() => [..._cache[14] || (_cache[14] = [
209
204
  createBaseVNode("label", null, "Output column name", -1)
210
- ])),
211
- _: 1,
212
- __: [14]
205
+ ])]),
206
+ _: 1
213
207
  }),
214
208
  createVNode(_component_el_col, { span: 8 }, {
215
209
  default: withCtx(() => {
@@ -232,13 +226,12 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
232
226
  ];
233
227
  }),
234
228
  _: 1
235
- }, 8, ["modelValue"])
229
+ }, 8, ["modelValue", "onUpdate:modelValue", "onRequestSave"])
236
230
  ])) : (openBlock(), createBlock(unref(CodeLoader), { key: 1 }));
237
231
  };
238
232
  }
239
233
  });
240
- const TextToRows_vue_vue_type_style_index_0_scoped_d7b456ff_lang = "";
241
- const TextToRows = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-d7b456ff"]]);
234
+ const TextToRows = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-bda46eae"]]);
242
235
  export {
243
236
  TextToRows as default
244
237
  };
@@ -1,48 +1,48 @@
1
1
 
2
- .selectors[data-v-d7b456ff] {
2
+ .selectors[data-v-bda46eae] {
3
3
  display: flex;
4
4
  flex-direction: column;
5
5
  gap: 8px;
6
6
  }
7
- .input-wrapper[data-v-d7b456ff] {
7
+ .input-wrapper[data-v-bda46eae] {
8
8
  display: flex;
9
9
  flex-direction: column;
10
10
  gap: 4px;
11
11
  }
12
- label[data-v-d7b456ff] {
12
+ label[data-v-bda46eae] {
13
13
  font-weight: 500;
14
14
  color: var(--color-text-primary);
15
15
  font-size: 14px;
16
16
  }
17
- input[data-v-d7b456ff] {
17
+ input[data-v-bda46eae] {
18
18
  padding: 3px;
19
19
  border: 1px solid #ccc;
20
20
  border-radius: 4px;
21
21
  font-size: 14px;
22
22
  width: 100%;
23
23
  }
24
- .row[data-v-d7b456ff] {
24
+ .row[data-v-bda46eae] {
25
25
  display: flex;
26
26
  align-items: center;
27
27
  justify-content: space-between;
28
28
  gap: 16px;
29
29
  }
30
- .error-msg[data-v-d7b456ff] {
30
+ .error-msg[data-v-bda46eae] {
31
31
  font-size: 13px;
32
32
  color: #ff4d4f;
33
33
  display: flex;
34
34
  align-items: center;
35
35
  gap: 6px;
36
36
  }
37
- .error-icon[data-v-d7b456ff] {
37
+ .error-icon[data-v-bda46eae] {
38
38
  margin-right: 6px;
39
39
  }
40
- .table[data-v-d7b456ff] {
40
+ .table[data-v-bda46eae] {
41
41
  padding: 12px;
42
42
  border-radius: 6px;
43
43
 
44
44
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.05);
45
45
  }
46
- el-checkbox[data-v-d7b456ff] {
46
+ el-checkbox[data-v-bda46eae] {
47
47
  margin-top: 10px;
48
48
  }
@@ -1,5 +1,5 @@
1
- import { _ as _sfc_main } from "./ToggleSwitch.vue_vue_type_script_setup_true_lang-49aa41d8.js";
2
- import "./index-ca6799de.js";
1
+ import { _ as _sfc_main } from "./ToggleSwitch.vue_vue_type_script_setup_true_lang-Cj8LqT-b.js";
2
+ import "./index-bcuE0Z0p.js";
3
3
  export {
4
4
  _sfc_main as default
5
5
  };
@@ -1,4 +1,4 @@
1
- import { d as defineComponent, y as resolveComponent, o as openBlock, c as createElementBlock, a as createBaseVNode, t as toDisplayString, z as createVNode } from "./index-ca6799de.js";
1
+ import { d as defineComponent, c as createElementBlock, a as createBaseVNode, t as toDisplayString, z as createVNode, D as resolveComponent, o as openBlock } from "./index-bcuE0Z0p.js";
2
2
  const _hoisted_1 = { class: "component-container" };
3
3
  const _hoisted_2 = { class: "listbox-subtitle" };
4
4
  const _sfc_main = /* @__PURE__ */ defineComponent({
@@ -1,5 +1,5 @@
1
- import { P as PopOver } from "./PopOver-ddcfe4f6.js";
2
- import { d as defineComponent, o as openBlock, C as createBlock, A as withCtx, a as createBaseVNode, t as toDisplayString, g as _export_sfc } from "./index-ca6799de.js";
1
+ import { P as PopOver } from "./PopOver-BHpt5rsj.js";
2
+ import { d as defineComponent, C as createBlock, B as withCtx, a as createBaseVNode, t as toDisplayString, o as openBlock, g as _export_sfc } from "./index-bcuE0Z0p.js";
3
3
  const _hoisted_1 = { class: "icon-wrapper" };
4
4
  const _hoisted_2 = { class: "unavailable-icon" };
5
5
  const _sfc_main = /* @__PURE__ */ defineComponent({
@@ -29,7 +29,6 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
29
29
  };
30
30
  }
31
31
  });
32
- const UnavailableFields_vue_vue_type_style_index_0_scoped_ef412494_lang = "";
33
32
  const unavailableField = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-ef412494"]]);
34
33
  export {
35
34
  unavailableField as u
@@ -1,9 +1,6 @@
1
- import { d as defineComponent, l as useNodeStore, r as ref, J as onMounted, a2 as nextTick, q as onUnmounted, o as openBlock, c as createElementBlock, z as createVNode, A as withCtx, f as createTextVNode, e as createCommentVNode, g as _export_sfc } 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, x as onUnmounted, c as createElementBlock, z as createVNode, B as withCtx, f as createTextVNode, A as unref, e as createCommentVNode, r as ref, o as openBlock, g as _export_sfc } 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"
@@ -17,6 +14,9 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
17
14
  const nodeData = ref(null);
18
15
  const unionInput = ref({ mode: "relaxed" });
19
16
  const nodeUnion = ref(null);
17
+ const { saveSettings, pushNodeData, handleGenericSettingsUpdate } = useNodeSettings({
18
+ nodeRef: nodeUnion
19
+ });
20
20
  const loadNodeData = async (nodeId) => {
21
21
  var _a;
22
22
  console.log("loadNodeData from union ");
@@ -36,18 +36,13 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
36
36
  };
37
37
  const handleClickOutside = (event) => {
38
38
  const targetEvent = event.target;
39
- if (targetEvent.id === "pivot-context-menu")
40
- return;
39
+ if (targetEvent.id === "pivot-context-menu") return;
41
40
  showContextMenu.value = false;
42
41
  };
43
- const pushNodeData = async () => {
44
- if (unionInput.value) {
45
- nodeStore.updateSettings(nodeUnion);
46
- }
47
- };
48
42
  __expose({
49
43
  loadNodeData,
50
- pushNodeData
44
+ pushNodeData,
45
+ saveSettings
51
46
  });
52
47
  onMounted(async () => {
53
48
  await nextTick();
@@ -60,20 +55,22 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
60
55
  return dataLoaded.value && nodeUnion.value ? (openBlock(), createElementBlock("div", _hoisted_1, [
61
56
  createVNode(GenericNodeSettings, {
62
57
  modelValue: nodeUnion.value,
63
- "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => nodeUnion.value = $event)
58
+ "onUpdate:modelValue": [
59
+ _cache[0] || (_cache[0] = ($event) => nodeUnion.value = $event),
60
+ unref(handleGenericSettingsUpdate)
61
+ ],
62
+ onRequestSave: unref(saveSettings)
64
63
  }, {
65
- default: withCtx(() => _cache[1] || (_cache[1] = [
66
- createTextVNode(" 'Union multiple tables into one table, this node does not have settings' ")
67
- ])),
68
- _: 1,
69
- __: [1]
70
- }, 8, ["modelValue"])
64
+ default: withCtx(() => [..._cache[1] || (_cache[1] = [
65
+ createTextVNode(" 'Union multiple tables into one table, this node does not have settings' ", -1)
66
+ ])]),
67
+ _: 1
68
+ }, 8, ["modelValue", "onUpdate:modelValue", "onRequestSave"])
71
69
  ])) : createCommentVNode("", true);
72
70
  };
73
71
  }
74
72
  });
75
- const Union_vue_vue_type_style_index_0_scoped_424387d2_lang = "";
76
- const Union = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-424387d2"]]);
73
+ const Union = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-2380ae5e"]]);
77
74
  export {
78
75
  Union as default
79
76
  };
@@ -1,5 +1,5 @@
1
1
 
2
- .context-menu[data-v-844381ed] {
2
+ .context-menu[data-v-2380ae5e] {
3
3
  position: fixed;
4
4
  z-index: 1000;
5
5
  border: 1px solid #ccc;
@@ -8,23 +8,23 @@
8
8
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
9
9
  border-radius: 4px;
10
10
  }
11
- .context-menu ul[data-v-844381ed] {
11
+ .context-menu ul[data-v-2380ae5e] {
12
12
  list-style: none;
13
13
  padding: 0;
14
14
  margin: 0;
15
15
  }
16
- .context-menu li[data-v-844381ed] {
16
+ .context-menu li[data-v-2380ae5e] {
17
17
  padding: 8px 16px;
18
18
  cursor: pointer;
19
19
  }
20
- .context-menu li[data-v-844381ed]:hover {
20
+ .context-menu li[data-v-2380ae5e]:hover {
21
21
  background-color: #f0f0f0;
22
22
  }
23
- .switch-container[data-v-844381ed] {
23
+ .switch-container[data-v-2380ae5e] {
24
24
  display: flex;
25
25
  align-items: center;
26
26
  margin: 12px;
27
27
  }
28
- .switch-container span[data-v-844381ed] {
28
+ .switch-container span[data-v-2380ae5e] {
29
29
  margin-right: 10px;
30
30
  }
@@ -1,14 +1,11 @@
1
- import "./nodeInput-d478b9ac.js";
2
- import { C as CodeLoader } from "./vue-content-loader.es-808fe33a.js";
3
- import { d as defineComponent, l as useNodeStore, r as ref, G as computed, J as onMounted, a2 as nextTick, q as onUnmounted, o as openBlock, c as createElementBlock, z as createVNode, A as withCtx, C as createBlock, B as unref, g as _export_sfc } from "./index-ca6799de.js";
4
- import { s as selectDynamic } from "./selectDynamic-5754a2b1.js";
5
- import { G as GenericNodeSettings } from "./genericNodeSettings-0155288b.js";
6
- import { h as createSelectInputFromName } from "./node.types-2c15bb7e.js";
7
- import "./UnavailableFields-f6147968.js";
8
- import "./PopOver-ddcfe4f6.js";
9
- import "./DesignerView-a4466dab.js";
10
- import "./index-057d770d.js";
11
- import "./vue-codemirror.esm-8f46fb36.js";
1
+ import { h as createSelectInputFromName } from "./node.types-Dl4gtSW9.js";
2
+ import { C as CodeLoader } from "./vue-content-loader.es-CMoRXo7N.js";
3
+ 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 unref, C as createBlock, r as ref, o as openBlock, G as computed, g as _export_sfc } from "./index-bcuE0Z0p.js";
4
+ import { u as useNodeSettings } from "./useNodeSettings-dMS9zmh_.js";
5
+ import { s as selectDynamic } from "./selectDynamic-Bl5FVsME.js";
6
+ import { G as GenericNodeSettings } from "./genericNodeSettings-BBtW_Cpz.js";
7
+ import "./UnavailableFields-Yf6XSqFB.js";
8
+ import "./PopOver-BHpt5rsj.js";
12
9
  const _hoisted_1 = {
13
10
  key: 0,
14
11
  class: "listbox-wrapper"
@@ -29,51 +26,6 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
29
26
  columns: [],
30
27
  strategy: "any"
31
28
  });
32
- const loadSelection = (nodeData2, columnsToKeep) => {
33
- var _a;
34
- if ((_a = nodeData2.main_input) == null ? void 0 : _a.columns) {
35
- selection.value = nodeData2.main_input.columns.map((column) => {
36
- const keep = columnsToKeep.includes(column);
37
- return createSelectInputFromName(column, keep);
38
- });
39
- }
40
- };
41
- const loadData = async (nodeId) => {
42
- var _a;
43
- nodeData.value = await nodeStore.getNodeData(nodeId, false);
44
- nodeUnique.value = (_a = nodeData.value) == null ? void 0 : _a.setting_input;
45
- dataLoaded.value = true;
46
- if (nodeData.value) {
47
- if (nodeUnique.value) {
48
- if (nodeUnique.value.unique_input) {
49
- uniqueInput.value = nodeUnique.value.unique_input;
50
- } else {
51
- nodeUnique.value.unique_input = uniqueInput.value;
52
- }
53
- loadSelection(nodeData.value, uniqueInput.value.columns);
54
- }
55
- }
56
- };
57
- const calculateSelects = (updatedInputs) => {
58
- console.log(updatedInputs);
59
- selection.value = updatedInputs;
60
- uniqueInput.value.columns = updatedInputs.filter((input) => input.keep).map((input) => input.old_name);
61
- };
62
- const setUniqueColumns = () => {
63
- uniqueInput.value.columns = selection.value.filter((input) => input.keep).map((input) => input.old_name);
64
- };
65
- const loadNodeData = async (nodeId) => {
66
- loadData(nodeId);
67
- dataLoaded.value = true;
68
- };
69
- const handleClickOutside = (event) => {
70
- var _a;
71
- if (!((_a = contextMenuRef.value) == null ? void 0 : _a.contains(event.target))) {
72
- showContextMenu.value = false;
73
- contextMenuColumn.value = null;
74
- showContextMenuRemove.value = false;
75
- }
76
- };
77
29
  const getMissingColumns = (availableColumns, usedColumns) => {
78
30
  const availableSet = new Set(availableColumns);
79
31
  return Array.from(new Set(usedColumns.filter((usedColumn) => !availableSet.has(usedColumn))));
@@ -92,6 +44,22 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
92
44
  }
93
45
  return [];
94
46
  };
47
+ const loadData = async (nodeId) => {
48
+ var _a;
49
+ nodeData.value = await nodeStore.getNodeData(nodeId, false);
50
+ nodeUnique.value = (_a = nodeData.value) == null ? void 0 : _a.setting_input;
51
+ dataLoaded.value = true;
52
+ if (nodeData.value) {
53
+ if (nodeUnique.value) {
54
+ if (nodeUnique.value.unique_input) {
55
+ uniqueInput.value = nodeUnique.value.unique_input;
56
+ } else {
57
+ nodeUnique.value.unique_input = uniqueInput.value;
58
+ }
59
+ loadSelection(nodeData.value, uniqueInput.value.columns);
60
+ }
61
+ }
62
+ };
95
63
  const validateNode = async () => {
96
64
  var _a, _b;
97
65
  if ((_a = nodeUnique.value) == null ? void 0 : _a.unique_input) {
@@ -134,25 +102,55 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
134
102
  });
135
103
  }
136
104
  };
137
- const pushNodeData = async () => {
138
- var _a, _b, _c, _d;
139
- dataLoaded.value = false;
140
- setUniqueColumns();
141
- console.log("doing this");
142
- console.log((_a = nodeUnique.value) == null ? void 0 : _a.is_setup);
143
- console.log(nodeUnique.value);
144
- if ((_b = nodeUnique.value) == null ? void 0 : _b.is_setup) {
145
- nodeUnique.value.is_setup = true;
105
+ const setUniqueColumns = () => {
106
+ uniqueInput.value.columns = selection.value.filter((input) => input.keep).map((input) => input.old_name);
107
+ };
108
+ const { saveSettings, pushNodeData, handleGenericSettingsUpdate } = useNodeSettings({
109
+ nodeRef: nodeUnique,
110
+ onBeforeSave: () => {
111
+ setUniqueColumns();
112
+ return true;
113
+ },
114
+ onAfterSave: async () => {
115
+ await instantValidate();
116
+ },
117
+ getValidationFunc: () => {
118
+ var _a;
119
+ if ((_a = nodeUnique.value) == null ? void 0 : _a.unique_input) {
120
+ return validateNode;
121
+ }
122
+ return void 0;
123
+ }
124
+ });
125
+ const loadSelection = (nodeData2, columnsToKeep) => {
126
+ var _a;
127
+ if ((_a = nodeData2.main_input) == null ? void 0 : _a.columns) {
128
+ selection.value = nodeData2.main_input.columns.map((column) => {
129
+ const keep = columnsToKeep.includes(column);
130
+ return createSelectInputFromName(column, keep);
131
+ });
146
132
  }
147
- nodeStore.updateSettings(nodeUnique);
148
- await instantValidate();
149
- if ((_c = nodeUnique.value) == null ? void 0 : _c.unique_input) {
150
- nodeStore.setNodeValidateFunc((_d = nodeUnique.value) == null ? void 0 : _d.node_id, validateNode);
133
+ };
134
+ const calculateSelects = (updatedInputs) => {
135
+ selection.value = updatedInputs;
136
+ uniqueInput.value.columns = updatedInputs.filter((input) => input.keep).map((input) => input.old_name);
137
+ };
138
+ const loadNodeData = async (nodeId) => {
139
+ loadData(nodeId);
140
+ dataLoaded.value = true;
141
+ };
142
+ const handleClickOutside = (event) => {
143
+ var _a;
144
+ if (!((_a = contextMenuRef.value) == null ? void 0 : _a.contains(event.target))) {
145
+ showContextMenu.value = false;
146
+ contextMenuColumn.value = null;
147
+ showContextMenuRemove.value = false;
151
148
  }
152
149
  };
153
150
  __expose({
154
151
  loadNodeData,
155
- pushNodeData
152
+ pushNodeData,
153
+ saveSettings
156
154
  });
157
155
  onMounted(async () => {
158
156
  await nextTick();
@@ -165,7 +163,11 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
165
163
  return dataLoaded.value && nodeUnique.value ? (openBlock(), createElementBlock("div", _hoisted_1, [
166
164
  createVNode(GenericNodeSettings, {
167
165
  modelValue: nodeUnique.value,
168
- "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => nodeUnique.value = $event)
166
+ "onUpdate:modelValue": [
167
+ _cache[0] || (_cache[0] = ($event) => nodeUnique.value = $event),
168
+ unref(handleGenericSettingsUpdate)
169
+ ],
170
+ onRequestSave: unref(saveSettings)
169
171
  }, {
170
172
  default: withCtx(() => [
171
173
  createVNode(selectDynamic, {
@@ -183,13 +185,12 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
183
185
  }, null, 8, ["select-inputs"])
184
186
  ]),
185
187
  _: 1
186
- }, 8, ["modelValue"])
188
+ }, 8, ["modelValue", "onUpdate:modelValue", "onRequestSave"])
187
189
  ])) : (openBlock(), createBlock(unref(CodeLoader), { key: 1 }));
188
190
  };
189
191
  }
190
192
  });
191
- const Unique_vue_vue_type_style_index_0_scoped_7bd32dd9_lang = "";
192
- const Unique = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-7bd32dd9"]]);
193
+ const Unique = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-962dc284"]]);
193
194
  export {
194
195
  Unique as default
195
196
  };
@@ -1,5 +1,5 @@
1
1
 
2
- .context-menu[data-v-424387d2] {
2
+ .context-menu[data-v-531e69c7] {
3
3
  position: fixed;
4
4
  z-index: 1000;
5
5
  border: 1px solid #ccc;
@@ -8,23 +8,23 @@
8
8
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
9
9
  border-radius: 4px;
10
10
  }
11
- .context-menu ul[data-v-424387d2] {
11
+ .context-menu ul[data-v-531e69c7] {
12
12
  list-style: none;
13
13
  padding: 0;
14
14
  margin: 0;
15
15
  }
16
- .context-menu li[data-v-424387d2] {
16
+ .context-menu li[data-v-531e69c7] {
17
17
  padding: 8px 16px;
18
18
  cursor: pointer;
19
19
  }
20
- .context-menu li[data-v-424387d2]:hover {
20
+ .context-menu li[data-v-531e69c7]:hover {
21
21
  background-color: #f0f0f0;
22
22
  }
23
- .switch-container[data-v-424387d2] {
23
+ .switch-container[data-v-531e69c7] {
24
24
  display: flex;
25
25
  align-items: center;
26
26
  margin: 12px;
27
27
  }
28
- .switch-container span[data-v-424387d2] {
28
+ .switch-container span[data-v-531e69c7] {
29
29
  margin-right: 10px;
30
30
  }