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,5 +1,5 @@
1
- import { f as fetchDatabaseConnectionsInterfaces, c as createDatabaseConnectionApi, d as deleteDatabaseConnectionApi } from "./api-df48ec50.js";
2
- import { d as defineComponent, r as ref, H as watch, G as computed, o as openBlock, c as createElementBlock, a as createBaseVNode, i as withDirectives, v as vModelText, at as vModelSelect, j as vModelDynamic, n as normalizeClass, au as vModelCheckbox, t as toDisplayString, w as withModifiers, J as onMounted, f as createTextVNode, K as Fragment, L as renderList, z as createVNode, A as withCtx, B as unref, N as ElMessage, av as ElDialog, aw as ElButton, g as _export_sfc } from "./index-ca6799de.js";
1
+ import { f as fetchDatabaseConnectionsInterfaces, c as createDatabaseConnectionApi, d as deleteDatabaseConnectionApi } from "./api-C0LvF-0C.js";
2
+ import { d as defineComponent, r as ref, H as watch, c as createElementBlock, w as withModifiers, a as createBaseVNode, h as withDirectives, v as vModelText, ax as vModelSelect, i as vModelDynamic, n as normalizeClass, ay as vModelCheckbox, t as toDisplayString, G as computed, o as openBlock, J as onMounted, f as createTextVNode, K as Fragment, L as renderList, z as createVNode, B as withCtx, A as unref, az as ElDialog, N as ElMessage, aA as ElButton, g as _export_sfc } from "./index-bcuE0Z0p.js";
3
3
  const _hoisted_1$1 = { class: "form-grid" };
4
4
  const _hoisted_2$1 = { class: "form-field" };
5
5
  const _hoisted_3$1 = { class: "form-field" };
@@ -93,9 +93,9 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
93
93
  "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => connection.value.databaseType = $event),
94
94
  class: "form-input",
95
95
  required: ""
96
- }, _cache[11] || (_cache[11] = [
96
+ }, [..._cache[11] || (_cache[11] = [
97
97
  createBaseVNode("option", { value: "postgresql" }, "PostgreSQL", -1)
98
- ]), 512), [
98
+ ])], 512), [
99
99
  [vModelSelect, connection.value.databaseType]
100
100
  ])
101
101
  ]),
@@ -215,7 +215,7 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
215
215
  createBaseVNode("button", {
216
216
  type: "submit",
217
217
  class: "btn btn-primary",
218
- disabled: !isValid.value || _ctx.isSubmitting
218
+ disabled: !isValid.value || __props.isSubmitting
219
219
  }, toDisplayString(submitButtonText.value), 9, _hoisted_14$1)
220
220
  ])
221
221
  ], 32);
@@ -311,8 +311,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
311
311
  }
312
312
  };
313
313
  const handleDeleteConnection = async () => {
314
- if (!connectionToDelete.value)
315
- return;
314
+ if (!connectionToDelete.value) return;
316
315
  isDeleting.value = true;
317
316
  try {
318
317
  await deleteDatabaseConnectionApi(connectionToDelete.value);
@@ -327,13 +326,11 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
327
326
  }
328
327
  };
329
328
  const handleCloseDialog = (done) => {
330
- if (isSubmitting.value)
331
- return;
329
+ if (isSubmitting.value) return;
332
330
  done();
333
331
  };
334
332
  const handleCloseDeleteDialog = (done) => {
335
- if (isDeleting.value)
336
- return;
333
+ if (isDeleting.value) return;
337
334
  done();
338
335
  };
339
336
  onMounted(() => {
@@ -351,10 +348,10 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
351
348
  createBaseVNode("button", {
352
349
  class: "btn btn-primary",
353
350
  onClick: showAddModal
354
- }, _cache[4] || (_cache[4] = [
351
+ }, [..._cache[4] || (_cache[4] = [
355
352
  createBaseVNode("i", { class: "fa-solid fa-plus" }, null, -1),
356
- createTextVNode(" Add Connection ")
357
- ]))
353
+ createTextVNode(" Add Connection ", -1)
354
+ ])])
358
355
  ]),
359
356
  createBaseVNode("div", _hoisted_5, [
360
357
  _cache[11] || (_cache[11] = createBaseVNode("div", { class: "info-box mb-3" }, [
@@ -366,14 +363,14 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
366
363
  createBaseVNode("p", null, " Database connections store the credentials and configuration needed to securely access your databases. Once set up, you can reuse these connections throughout your workflows without re-entering credentials. ")
367
364
  ])
368
365
  ], -1)),
369
- isLoading.value ? (openBlock(), createElementBlock("div", _hoisted_6, _cache[5] || (_cache[5] = [
366
+ isLoading.value ? (openBlock(), createElementBlock("div", _hoisted_6, [..._cache[5] || (_cache[5] = [
370
367
  createBaseVNode("div", { class: "loading-spinner" }, null, -1),
371
368
  createBaseVNode("p", null, "Loading connections...", -1)
372
- ]))) : connectionInterfaces.value.length === 0 ? (openBlock(), createElementBlock("div", _hoisted_7, _cache[6] || (_cache[6] = [
369
+ ])])) : connectionInterfaces.value.length === 0 ? (openBlock(), createElementBlock("div", _hoisted_7, [..._cache[6] || (_cache[6] = [
373
370
  createBaseVNode("i", { class: "fa-solid fa-database" }, null, -1),
374
371
  createBaseVNode("p", null, "You haven't added any database connections yet", -1),
375
372
  createBaseVNode("p", { class: "hint-text" }, ' Click the "Add Connection" button to create your first database connection. ', -1)
376
- ]))) : (openBlock(), createElementBlock("div", _hoisted_8, [
373
+ ])])) : (openBlock(), createElementBlock("div", _hoisted_8, [
377
374
  (openBlock(true), createElementBlock(Fragment, null, renderList(connectionInterfaces.value, (connection) => {
378
375
  return openBlock(), createElementBlock("div", {
379
376
  key: connection.connectionName,
@@ -396,18 +393,18 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
396
393
  type: "button",
397
394
  class: "btn btn-secondary",
398
395
  onClick: ($event) => showEditModal(connection)
399
- }, _cache[9] || (_cache[9] = [
396
+ }, [..._cache[9] || (_cache[9] = [
400
397
  createBaseVNode("i", { class: "fa-solid fa-edit" }, null, -1),
401
398
  createBaseVNode("span", null, "Modify", -1)
402
- ]), 8, _hoisted_14),
399
+ ])], 8, _hoisted_14),
403
400
  createBaseVNode("button", {
404
401
  type: "button",
405
402
  class: "btn btn-danger",
406
403
  onClick: ($event) => showDeleteModal(connection.connectionName)
407
- }, _cache[10] || (_cache[10] = [
404
+ }, [..._cache[10] || (_cache[10] = [
408
405
  createBaseVNode("i", { class: "fa-solid fa-trash-alt" }, null, -1),
409
406
  createBaseVNode("span", null, "Delete", -1)
410
- ]), 8, _hoisted_15)
407
+ ])], 8, _hoisted_15)
411
408
  ])
412
409
  ]);
413
410
  }), 128))
@@ -432,8 +429,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
432
429
  onCancel: _cache[0] || (_cache[0] = ($event) => dialogVisible.value = false)
433
430
  }, null, 8, ["initial-connection", "is-submitting"])
434
431
  ]),
435
- _: 1,
436
- __: [12]
432
+ _: 1
437
433
  }, 8, ["modelValue", "title"]),
438
434
  createVNode(unref(ElDialog), {
439
435
  modelValue: deleteDialogVisible.value,
@@ -447,41 +443,37 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
447
443
  createVNode(unref(ElButton), {
448
444
  onClick: _cache[2] || (_cache[2] = ($event) => deleteDialogVisible.value = false)
449
445
  }, {
450
- default: withCtx(() => _cache[15] || (_cache[15] = [
451
- createTextVNode("Cancel")
452
- ])),
453
- _: 1,
454
- __: [15]
446
+ default: withCtx(() => [..._cache[15] || (_cache[15] = [
447
+ createTextVNode("Cancel", -1)
448
+ ])]),
449
+ _: 1
455
450
  }),
456
451
  createVNode(unref(ElButton), {
457
452
  type: "danger",
458
453
  loading: isDeleting.value,
459
454
  onClick: handleDeleteConnection
460
455
  }, {
461
- default: withCtx(() => _cache[16] || (_cache[16] = [
462
- createTextVNode(" Delete ")
463
- ])),
464
- _: 1,
465
- __: [16]
456
+ default: withCtx(() => [..._cache[16] || (_cache[16] = [
457
+ createTextVNode(" Delete ", -1)
458
+ ])]),
459
+ _: 1
466
460
  }, 8, ["loading"])
467
461
  ])
468
462
  ]),
469
463
  default: withCtx(() => [
470
464
  createBaseVNode("p", null, [
471
- _cache[13] || (_cache[13] = createTextVNode(" Are you sure you want to delete the connection ")),
465
+ _cache[13] || (_cache[13] = createTextVNode(" Are you sure you want to delete the connection ", -1)),
472
466
  createBaseVNode("strong", null, toDisplayString(connectionToDelete.value), 1),
473
- _cache[14] || (_cache[14] = createTextVNode("? "))
467
+ _cache[14] || (_cache[14] = createTextVNode("? ", -1))
474
468
  ]),
475
469
  _cache[17] || (_cache[17] = createBaseVNode("p", { class: "warning-text" }, " This action cannot be undone and may affect any processes using this connection. ", -1))
476
470
  ]),
477
- _: 1,
478
- __: [17]
471
+ _: 1
479
472
  }, 8, ["modelValue"])
480
473
  ]);
481
474
  };
482
475
  }
483
476
  });
484
- const DatabaseView_vue_vue_type_style_index_0_scoped_40d7248e_lang = "";
485
477
  const DatabaseView = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-40d7248e"]]);
486
478
  export {
487
479
  DatabaseView as default
@@ -1,13 +1,10 @@
1
- import { d as defineComponent, l as useNodeStore, r as ref, J as onMounted, y as resolveComponent, o as openBlock, c as createElementBlock, z as createVNode, A as withCtx, a as createBaseVNode, K as Fragment, L as renderList, C as createBlock, f as createTextVNode, t as toDisplayString, B as unref, az as ElRadio, i as withDirectives, at as vModelSelect, v as vModelText, N as ElMessage, g as _export_sfc } from "./index-ca6799de.js";
2
- import { C as CodeLoader } from "./vue-content-loader.es-808fe33a.js";
3
- import { f as fetchDatabaseConnectionsInterfaces } from "./api-df48ec50.js";
4
- import DatabaseConnectionSettings from "./DatabaseConnectionSettings-38155669.js";
5
- import { G as GenericNodeSettings } from "./genericNodeSettings-0155288b.js";
6
- import "./secrets.api-34431884.js";
7
- import "./DesignerView-a4466dab.js";
8
- import "./PopOver-ddcfe4f6.js";
9
- import "./index-057d770d.js";
10
- import "./vue-codemirror.esm-8f46fb36.js";
1
+ import { d as defineComponent, l as useNodeStore, J as onMounted, c as createElementBlock, z as createVNode, B as withCtx, a as createBaseVNode, K as Fragment, L as renderList, C as createBlock, f as createTextVNode, t as toDisplayString, A as unref, aE as ElRadio, h as withDirectives, ax as vModelSelect, v as vModelText, r as ref, N as ElMessage, D as resolveComponent, o as openBlock, g as _export_sfc } from "./index-bcuE0Z0p.js";
2
+ import { C as CodeLoader } from "./vue-content-loader.es-CMoRXo7N.js";
3
+ import { u as useNodeSettings } from "./useNodeSettings-dMS9zmh_.js";
4
+ import { f as fetchDatabaseConnectionsInterfaces } from "./api-C0LvF-0C.js";
5
+ import DatabaseConnectionSettings from "./DatabaseConnectionSettings-Dw3bSJKB.js";
6
+ import { G as GenericNodeSettings } from "./genericNodeSettings-BBtW_Cpz.js";
7
+ import "./secrets.api-C9o2KE5V.js";
11
8
  const createNodeDatabaseWriter = (flowId, nodeId) => {
12
9
  const databaseWriteSettings = {
13
10
  if_exists: "replace",
@@ -66,6 +63,20 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
66
63
  const nodeData = ref(null);
67
64
  const dataLoaded = ref(false);
68
65
  const connectionsAreLoading = ref(false);
66
+ const { saveSettings, pushNodeData, handleGenericSettingsUpdate } = useNodeSettings({
67
+ nodeRef: nodeData,
68
+ onBeforeSave: () => {
69
+ if (!nodeData.value) {
70
+ return false;
71
+ }
72
+ if (nodeData.value.database_write_settings.connection_mode === "reference") {
73
+ nodeData.value.database_write_settings.database_connection = void 0;
74
+ } else {
75
+ nodeData.value.database_write_settings.database_connection_name = void 0;
76
+ }
77
+ return true;
78
+ }
79
+ });
69
80
  const loadNodeData = async (nodeId) => {
70
81
  var _a;
71
82
  try {
@@ -73,8 +84,8 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
73
84
  if (fetchedNodeData) {
74
85
  const hasValidSetup = Boolean((_a = fetchedNodeData.setting_input) == null ? void 0 : _a.is_setup);
75
86
  nodeData.value = hasValidSetup ? fetchedNodeData.setting_input : createNodeDatabaseWriter(nodeStore.flow_id, nodeId);
87
+ dataLoaded.value = true;
76
88
  }
77
- dataLoaded.value = true;
78
89
  } catch (error) {
79
90
  console.error("Error loading node data:", error);
80
91
  dataLoaded.value = false;
@@ -83,23 +94,6 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
83
94
  };
84
95
  const resetFields = () => {
85
96
  };
86
- const pushNodeData = async () => {
87
- if (!nodeData.value) {
88
- return;
89
- }
90
- if (nodeData.value.database_write_settings.connection_mode === "reference") {
91
- nodeData.value.database_write_settings.database_connection = void 0;
92
- } else {
93
- nodeData.value.database_write_settings.database_connection_name = void 0;
94
- }
95
- nodeData.value.is_setup = true;
96
- try {
97
- await nodeStore.updateSettings(nodeData);
98
- } catch (error) {
99
- console.error("Error saving node data:", error);
100
- ElMessage.error("Failed to save node settings");
101
- }
102
- };
103
97
  const fetchConnections = async () => {
104
98
  connectionsAreLoading.value = true;
105
99
  try {
@@ -117,14 +111,19 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
117
111
  });
118
112
  __expose({
119
113
  loadNodeData,
120
- pushNodeData
114
+ pushNodeData,
115
+ saveSettings
121
116
  });
122
117
  return (_ctx, _cache) => {
123
118
  const _component_el_radio_group = resolveComponent("el-radio-group");
124
119
  return dataLoaded.value && nodeData.value ? (openBlock(), createElementBlock("div", _hoisted_1, [
125
120
  createVNode(GenericNodeSettings, {
126
121
  modelValue: nodeData.value,
127
- "onUpdate:modelValue": _cache[6] || (_cache[6] = ($event) => nodeData.value = $event)
122
+ "onUpdate:modelValue": [
123
+ _cache[6] || (_cache[6] = ($event) => nodeData.value = $event),
124
+ unref(handleGenericSettingsUpdate)
125
+ ],
126
+ onRequestSave: unref(saveSettings)
128
127
  }, {
129
128
  default: withCtx(() => [
130
129
  createBaseVNode("div", _hoisted_2, [
@@ -158,10 +157,10 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
158
157
  onChange: resetFields
159
158
  }, null, 8, ["modelValue"])
160
159
  ])) : (openBlock(), createElementBlock("div", _hoisted_5, [
161
- connectionsAreLoading.value ? (openBlock(), createElementBlock("div", _hoisted_6, _cache[8] || (_cache[8] = [
160
+ connectionsAreLoading.value ? (openBlock(), createElementBlock("div", _hoisted_6, [..._cache[8] || (_cache[8] = [
162
161
  createBaseVNode("div", { class: "loading-spinner" }, null, -1),
163
162
  createBaseVNode("p", null, "Loading connections...", -1)
164
- ]))) : (openBlock(), createElementBlock("div", _hoisted_7, [
163
+ ])])) : (openBlock(), createElementBlock("div", _hoisted_7, [
165
164
  withDirectives(createBaseVNode("select", {
166
165
  id: "connection-select",
167
166
  "onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => nodeData.value.database_write_settings.database_connection_name = $event),
@@ -246,13 +245,12 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
246
245
  ])
247
246
  ]),
248
247
  _: 1
249
- }, 8, ["modelValue"])
248
+ }, 8, ["modelValue", "onUpdate:modelValue", "onRequestSave"])
250
249
  ])) : (openBlock(), createBlock(unref(CodeLoader), { key: 1 }));
251
250
  };
252
251
  }
253
252
  });
254
- const DatabaseWriter_vue_vue_type_style_index_0_scoped_5577376b_lang = "";
255
- const DatabaseWriter = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-5577376b"]]);
253
+ const DatabaseWriter = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-e2693028"]]);
256
254
  export {
257
255
  DatabaseWriter as default
258
256
  };
@@ -1,28 +1,28 @@
1
1
 
2
- .db-container[data-v-5577376b] {
2
+ .db-container[data-v-e2693028] {
3
3
  font-family: var(--font-family-base);
4
4
  max-width: 100%;
5
5
  color: var(--color-text-primary);
6
6
  }
7
- .section-subtitle[data-v-5577376b] {
7
+ .section-subtitle[data-v-e2693028] {
8
8
  margin: 0 0 0.75rem 0;
9
9
  font-size: 0.95rem;
10
10
  font-weight: 600;
11
11
  color: var(--color-text-secondary);
12
12
  }
13
- .form-row[data-v-5577376b] {
13
+ .form-row[data-v-e2693028] {
14
14
  display: flex;
15
15
  gap: 0.75rem;
16
16
  margin-bottom: 0.75rem;
17
17
  width: 100%;
18
18
  box-sizing: border-box;
19
19
  }
20
- .half[data-v-5577376b] {
20
+ .half[data-v-e2693028] {
21
21
  flex: 1;
22
22
  min-width: 0; /* Allow fields to shrink below their content size */
23
23
  max-width: calc(50% - 0.375rem); /* Account for the gap between items */
24
24
  }
25
- .form-control[data-v-5577376b] {
25
+ .form-control[data-v-e2693028] {
26
26
  width: 100%;
27
27
  padding: 0.5rem;
28
28
  border: 1px solid var(--color-border-primary);
@@ -32,18 +32,18 @@
32
32
  background-color: var(--color-background-primary);
33
33
  color: var(--color-text-primary);
34
34
  }
35
- .form-group[data-v-5577376b] {
35
+ .form-group[data-v-e2693028] {
36
36
  margin-bottom: 0.75rem;
37
37
  width: 100%;
38
38
  }
39
- label[data-v-5577376b] {
39
+ label[data-v-e2693028] {
40
40
  display: block;
41
41
  margin-bottom: 0.25rem;
42
42
  font-size: 0.875rem;
43
43
  font-weight: 500;
44
44
  color: var(--color-text-secondary);
45
45
  }
46
- select.form-control[data-v-5577376b] {
46
+ select.form-control[data-v-e2693028] {
47
47
  appearance: none;
48
48
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%234a5568' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
49
49
  background-repeat: no-repeat;
@@ -51,22 +51,22 @@ select.form-control[data-v-5577376b] {
51
51
  background-size: 1em;
52
52
  padding-right: 2rem;
53
53
  }
54
- .loading-spinner[data-v-5577376b] {
54
+ .loading-spinner[data-v-e2693028] {
55
55
  display: inline-block;
56
56
  width: 20px;
57
57
  height: 20px;
58
58
  border: 2px solid var(--color-info-light);
59
59
  border-radius: 50%;
60
60
  border-top-color: var(--color-info);
61
- animation: spin-5577376b 1s ease-in-out infinite;
61
+ animation: spin-e2693028 1s ease-in-out infinite;
62
62
  margin-right: 8px;
63
63
  }
64
- @keyframes spin-5577376b {
64
+ @keyframes spin-e2693028 {
65
65
  to {
66
66
  transform: rotate(360deg);
67
67
  }
68
68
  }
69
- .option-description[data-v-5577376b] {
69
+ .option-description[data-v-e2693028] {
70
70
  font-size: 0.875rem;
71
71
  color: var(--color-text-tertiary);
72
72
  margin: 0.5rem 0;
@@ -75,23 +75,23 @@ to {
75
75
  border-radius: 4px;
76
76
  border-left: 3px solid var(--color-info);
77
77
  }
78
- .el-radio-group[data-v-5577376b] {
78
+ .el-radio-group[data-v-e2693028] {
79
79
  display: flex !important;
80
80
  flex-direction: row !important;
81
81
  gap: 1rem;
82
82
  }
83
- .el-radio[data-v-5577376b] {
83
+ .el-radio[data-v-e2693028] {
84
84
  margin-right: 0 !important; /* Override any existing margins */
85
85
  }
86
86
  @media (max-width: 640px) {
87
- .form-row[data-v-5577376b] {
87
+ .form-row[data-v-e2693028] {
88
88
  flex-direction: column;
89
89
  gap: 0.5rem;
90
90
  }
91
- .half[data-v-5577376b] {
91
+ .half[data-v-e2693028] {
92
92
  max-width: 100%;
93
93
  }
94
- .el-radio-group[data-v-5577376b] {
94
+ .el-radio-group[data-v-e2693028] {
95
95
  flex-direction: column !important;
96
96
  gap: 0.5rem;
97
97
  }