langflow-base-nightly 1.7.0.dev26__py3-none-any.whl → 1.7.0.dev34__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.
- langflow/__main__.py +0 -1
- langflow/api/utils/mcp/__init__.py +9 -1
- langflow/api/utils/mcp/config_utils.py +63 -10
- langflow/api/v1/endpoints.py +8 -0
- langflow/api/v1/mcp.py +135 -12
- langflow/api/v1/mcp_projects.py +369 -88
- langflow/api/v1/mcp_utils.py +39 -3
- langflow/api/v1/projects.py +17 -6
- langflow/api/v1/schemas.py +11 -0
- langflow/api/v2/files.py +10 -11
- langflow/frontend/assets/SlackIcon-DxeiF11S.js +1 -0
- langflow/frontend/assets/Wikipedia-CL057I0S.js +1 -0
- langflow/frontend/assets/Wolfram-Y47vX2rm.js +1 -0
- langflow/frontend/assets/a-arrow-down-DBh7LmeN.js +6 -0
- langflow/frontend/assets/a-arrow-up-B2eX2b8O.js +6 -0
- langflow/frontend/assets/a-large-small-D71NS_iy.js +6 -0
- langflow/frontend/assets/accessibility-DejBYKIW.js +6 -0
- langflow/frontend/assets/activity-CBhxWrMS.js +6 -0
- langflow/frontend/assets/air-vent-Bije1W2Q.js +6 -0
- langflow/frontend/assets/airplay-C5-lPX0O.js +6 -0
- langflow/frontend/assets/alarm-clock-CGfG-USV.js +6 -0
- langflow/frontend/assets/alarm-clock-check-BM4PTWEv.js +6 -0
- langflow/frontend/assets/alarm-clock-minus-B9rwzGwU.js +6 -0
- langflow/frontend/assets/alarm-clock-off-CLSxhrlq.js +6 -0
- langflow/frontend/assets/alarm-clock-plus-CLXdmxkI.js +6 -0
- langflow/frontend/assets/alarm-smoke-BlJtr7Z3.js +6 -0
- langflow/frontend/assets/album-DoYJ3V06.js +6 -0
- langflow/frontend/assets/align-center-C2HHGvzP.js +6 -0
- langflow/frontend/assets/align-center-horizontal-DeG4x0PQ.js +6 -0
- langflow/frontend/assets/align-center-vertical-Df0IJka2.js +6 -0
- langflow/frontend/assets/align-end-horizontal-BOdJ4Ttg.js +6 -0
- langflow/frontend/assets/align-end-vertical-ClyoN3h1.js +6 -0
- langflow/frontend/assets/align-horizontal-distribute-center-CFbJUuMS.js +6 -0
- langflow/frontend/assets/align-horizontal-distribute-end-BLYD4D6D.js +6 -0
- langflow/frontend/assets/align-horizontal-distribute-start-B6m_uTg9.js +6 -0
- langflow/frontend/assets/align-horizontal-justify-center-Ds5Je_LT.js +6 -0
- langflow/frontend/assets/align-horizontal-justify-end-BMJ38us6.js +6 -0
- langflow/frontend/assets/align-horizontal-justify-start-DpXqI56J.js +6 -0
- langflow/frontend/assets/align-horizontal-space-around-3E3L-HGf.js +6 -0
- langflow/frontend/assets/align-horizontal-space-between-C_Ffde9E.js +6 -0
- langflow/frontend/assets/align-justify-hsCZmlA4.js +6 -0
- langflow/frontend/assets/align-left-BbEmnOsJ.js +6 -0
- langflow/frontend/assets/align-right-nxpfT04G.js +6 -0
- langflow/frontend/assets/align-start-horizontal-S4fef6va.js +6 -0
- langflow/frontend/assets/align-start-vertical-rHMRcqan.js +6 -0
- langflow/frontend/assets/align-vertical-distribute-center-Ojt_8EW6.js +6 -0
- langflow/frontend/assets/align-vertical-distribute-end-DJovMEVR.js +6 -0
- langflow/frontend/assets/align-vertical-distribute-start-CCQz6usf.js +6 -0
- langflow/frontend/assets/align-vertical-justify-center-DgCfsVdt.js +6 -0
- langflow/frontend/assets/align-vertical-justify-end-402CJ8G5.js +6 -0
- langflow/frontend/assets/align-vertical-justify-start-7PSLlmlS.js +6 -0
- langflow/frontend/assets/align-vertical-space-around-BJTBy73m.js +6 -0
- langflow/frontend/assets/align-vertical-space-between-DN6Wohqm.js +6 -0
- langflow/frontend/assets/ambulance-Czh1qVns.js +6 -0
- langflow/frontend/assets/ampersand-X2fAuSDg.js +6 -0
- langflow/frontend/assets/ampersands-C54WvK0C.js +6 -0
- langflow/frontend/assets/amphora-DjPF4sK2.js +6 -0
- langflow/frontend/assets/anchor-sUIvYc3m.js +6 -0
- langflow/frontend/assets/angry-BNwCM4ZE.js +6 -0
- langflow/frontend/assets/annoyed-CtiQ5OxF.js +6 -0
- langflow/frontend/assets/antenna-D8fo-ZGm.js +6 -0
- langflow/frontend/assets/anvil-DY5rjtl8.js +6 -0
- langflow/frontend/assets/aperture-Bdlz8QP6.js +6 -0
- langflow/frontend/assets/app-window-0117De3i.js +6 -0
- langflow/frontend/assets/app-window-mac-bCYlgHaE.js +6 -0
- langflow/frontend/assets/apple-CzKnQMQh.js +6 -0
- langflow/frontend/assets/archive-B_2Wouil.js +6 -0
- langflow/frontend/assets/archive-restore-BkrRxkyA.js +6 -0
- langflow/frontend/assets/archive-x-C8lt_i2G.js +6 -0
- langflow/frontend/assets/armchair-Cyl6HafZ.js +6 -0
- langflow/frontend/assets/arrow-big-down-2M-KplbC.js +6 -0
- langflow/frontend/assets/arrow-big-down-dash-BI23IxbO.js +6 -0
- langflow/frontend/assets/arrow-big-left-SZRqVBg4.js +6 -0
- langflow/frontend/assets/arrow-big-left-dash-DbufjKSL.js +6 -0
- langflow/frontend/assets/arrow-big-right-6tuR-Vgz.js +6 -0
- langflow/frontend/assets/arrow-big-right-dash-DK3qRXWr.js +6 -0
- langflow/frontend/assets/arrow-big-up-CrGi99gh.js +6 -0
- langflow/frontend/assets/arrow-big-up-dash-hpXiTPqM.js +6 -0
- langflow/frontend/assets/arrow-down-0-1-B3hd-6CC.js +6 -0
- langflow/frontend/assets/arrow-down-1-0-BDKBZ144.js +6 -0
- langflow/frontend/assets/arrow-down-JFp-p3S5.js +6 -0
- langflow/frontend/assets/arrow-down-a-z-DQsyQ7g8.js +6 -0
- langflow/frontend/assets/arrow-down-from-line-D4KY_4CE.js +6 -0
- langflow/frontend/assets/arrow-down-left-DRzxz0QB.js +6 -0
- langflow/frontend/assets/arrow-down-narrow-wide-wQLpH6NB.js +6 -0
- langflow/frontend/assets/arrow-down-right-CPuxcr08.js +6 -0
- langflow/frontend/assets/arrow-down-to-dot-C69LacFY.js +6 -0
- langflow/frontend/assets/arrow-down-to-line-CSpWbosA.js +6 -0
- langflow/frontend/assets/arrow-down-up-BcxjZam7.js +6 -0
- langflow/frontend/assets/arrow-down-wide-narrow-D3BSb915.js +6 -0
- langflow/frontend/assets/arrow-down-z-a-D6XKU4U-.js +6 -0
- langflow/frontend/assets/arrow-left-dQ06o7IA.js +6 -0
- langflow/frontend/assets/arrow-left-from-line-CCFQM55O.js +6 -0
- langflow/frontend/assets/arrow-left-right-B7Ukf5wF.js +6 -0
- langflow/frontend/assets/arrow-left-to-line-CFilt37J.js +6 -0
- langflow/frontend/assets/arrow-right-WBWOrvaZ.js +6 -0
- langflow/frontend/assets/arrow-right-from-line-Bg898FB7.js +6 -0
- langflow/frontend/assets/arrow-right-left-Cff_QITA.js +6 -0
- langflow/frontend/assets/arrow-right-to-line-DcqaW91t.js +6 -0
- langflow/frontend/assets/arrow-up-0-1-Dc7LJPYu.js +6 -0
- langflow/frontend/assets/arrow-up-1-0-BiszJGRE.js +6 -0
- langflow/frontend/assets/arrow-up-DG_Otqiz.js +6 -0
- langflow/frontend/assets/arrow-up-a-z-DP6tRQRG.js +6 -0
- langflow/frontend/assets/arrow-up-down-DolNTKdS.js +6 -0
- langflow/frontend/assets/arrow-up-from-dot-Drl_9HMj.js +6 -0
- langflow/frontend/assets/arrow-up-from-line-BrAPikcJ.js +6 -0
- langflow/frontend/assets/arrow-up-left-BZRzxQzy.js +6 -0
- langflow/frontend/assets/arrow-up-narrow-wide-CkVf9bNB.js +6 -0
- langflow/frontend/assets/arrow-up-right-B-BSr1Ws.js +6 -0
- langflow/frontend/assets/arrow-up-to-line-D6smTEWb.js +6 -0
- langflow/frontend/assets/arrow-up-wide-narrow-D3Dtq4mr.js +6 -0
- langflow/frontend/assets/arrow-up-z-a-JFNLMZlz.js +6 -0
- langflow/frontend/assets/arrows-up-from-line-B3LglwuY.js +6 -0
- langflow/frontend/assets/asterisk-sevDYo6o.js +6 -0
- langflow/frontend/assets/at-sign-GgDMd0Qi.js +6 -0
- langflow/frontend/assets/atom-CEtdvvGt.js +6 -0
- langflow/frontend/assets/audio-lines-D_miCqSc.js +6 -0
- langflow/frontend/assets/audio-waveform-BjuqZ7Jn.js +6 -0
- langflow/frontend/assets/award-DUrNffCa.js +6 -0
- langflow/frontend/assets/axe-D7V3R7d5.js +6 -0
- langflow/frontend/assets/axis-3d-eTTKwZlH.js +6 -0
- langflow/frontend/assets/baby-DRM3Lrnw.js +6 -0
- langflow/frontend/assets/backpack-KJicz1GR.js +6 -0
- langflow/frontend/assets/badge-B04CV2If.js +6 -0
- langflow/frontend/assets/badge-alert-CWDtQON7.js +6 -0
- langflow/frontend/assets/badge-cent-CFJhhI4B.js +6 -0
- langflow/frontend/assets/badge-check-BHUu7qv9.js +6 -0
- langflow/frontend/assets/badge-dollar-sign-lBC5KbUG.js +6 -0
- langflow/frontend/assets/badge-euro-5tgZxT7W.js +6 -0
- langflow/frontend/assets/badge-help-B_EoyAYN.js +6 -0
- langflow/frontend/assets/badge-indian-rupee-DE1D2o4o.js +6 -0
- langflow/frontend/assets/badge-info-CWIT59a4.js +6 -0
- langflow/frontend/assets/badge-japanese-yen-Scx7KEaI.js +6 -0
- langflow/frontend/assets/badge-minus-BcDPaheO.js +6 -0
- langflow/frontend/assets/badge-percent-CGGUFyO7.js +6 -0
- langflow/frontend/assets/badge-plus-CqxweG81.js +6 -0
- langflow/frontend/assets/badge-pound-sterling-5dExV2Ao.js +6 -0
- langflow/frontend/assets/badge-russian-ruble-BvUOH5Hp.js +6 -0
- langflow/frontend/assets/badge-swiss-franc-CMFn1IiB.js +6 -0
- langflow/frontend/assets/badge-x-mcPiqmVQ.js +6 -0
- langflow/frontend/assets/baggage-claim-BsVAdNXY.js +6 -0
- langflow/frontend/assets/ban-Dt_l00UL.js +6 -0
- langflow/frontend/assets/banana-DHpAUj_8.js +6 -0
- langflow/frontend/assets/bandage-CelKh6dq.js +6 -0
- langflow/frontend/assets/banknote-D0jPJCpJ.js +6 -0
- langflow/frontend/assets/banknote-arrow-down-Cs48fyIr.js +6 -0
- langflow/frontend/assets/banknote-arrow-up-BzDx0B1W.js +6 -0
- langflow/frontend/assets/banknote-x-DjVFGOIV.js +6 -0
- langflow/frontend/assets/barcode-D6iou9vT.js +6 -0
- langflow/frontend/assets/baseline-CKaJz7Oi.js +6 -0
- langflow/frontend/assets/bath--y_1FlCk.js +6 -0
- langflow/frontend/assets/battery-CneZ6QoF.js +6 -0
- langflow/frontend/assets/battery-charging-DNJEqXsD.js +6 -0
- langflow/frontend/assets/battery-full-DQSLo0Jt.js +6 -0
- langflow/frontend/assets/battery-low-PmiZgiTy.js +6 -0
- langflow/frontend/assets/battery-medium-yyTqXWk5.js +6 -0
- langflow/frontend/assets/battery-plus-_0AGfo5z.js +6 -0
- langflow/frontend/assets/battery-warning-CUjuiWjD.js +6 -0
- langflow/frontend/assets/beaker-D61PIkBZ.js +6 -0
- langflow/frontend/assets/bean-BK7oI0zG.js +6 -0
- langflow/frontend/assets/bean-off-CvR7yfVA.js +6 -0
- langflow/frontend/assets/bed-BVVXzPew.js +6 -0
- langflow/frontend/assets/bed-double-BZFjLTrO.js +6 -0
- langflow/frontend/assets/bed-single-C2V5A3B3.js +6 -0
- langflow/frontend/assets/beef-BgZjy9fG.js +6 -0
- langflow/frontend/assets/beer-IVi5Xzv3.js +6 -0
- langflow/frontend/assets/beer-off-DSnsKDMt.js +6 -0
- langflow/frontend/assets/bell-dot-BrHcQMbP.js +6 -0
- langflow/frontend/assets/bell-electric-DJqDFOL3.js +6 -0
- langflow/frontend/assets/bell-lEreP7tR.js +6 -0
- langflow/frontend/assets/bell-minus-QYIBJi4f.js +6 -0
- langflow/frontend/assets/bell-off-BKed9yfd.js +6 -0
- langflow/frontend/assets/bell-plus-0dv9TTmG.js +6 -0
- langflow/frontend/assets/bell-ring-DNObKcuJ.js +6 -0
- langflow/frontend/assets/between-horizontal-end-Zv7kNZb0.js +6 -0
- langflow/frontend/assets/between-horizontal-start-DvlaWccq.js +6 -0
- langflow/frontend/assets/between-vertical-end-3CPT19eY.js +6 -0
- langflow/frontend/assets/between-vertical-start-BX3SDYB7.js +6 -0
- langflow/frontend/assets/biceps-flexed-BVJynZxJ.js +6 -0
- langflow/frontend/assets/bike-CUtRPWU_.js +6 -0
- langflow/frontend/assets/binary-BquvG9dk.js +6 -0
- langflow/frontend/assets/binoculars-BlocDK2N.js +6 -0
- langflow/frontend/assets/biohazard-DWytM12v.js +6 -0
- langflow/frontend/assets/bird-DNWq1I0H.js +6 -0
- langflow/frontend/assets/bitcoin-CVDwYKa6.js +6 -0
- langflow/frontend/assets/blend-BbKg0NUx.js +6 -0
- langflow/frontend/assets/blinds-Ckwq8Uva.js +6 -0
- langflow/frontend/assets/blocks-CYvsIeks.js +6 -0
- langflow/frontend/assets/bluetooth-BSoEcnra.js +6 -0
- langflow/frontend/assets/bluetooth-connected-CmjVk1AC.js +6 -0
- langflow/frontend/assets/bluetooth-off-CwtdjnVK.js +6 -0
- langflow/frontend/assets/bluetooth-searching-B4suRAtZ.js +6 -0
- langflow/frontend/assets/bold-3b-m9bcR.js +6 -0
- langflow/frontend/assets/bolt-DseVhxF9.js +6 -0
- langflow/frontend/assets/bomb-DCNXfxZT.js +6 -0
- langflow/frontend/assets/bone-CV1F6zJn.js +6 -0
- langflow/frontend/assets/book-Dbpa-Uja.js +6 -0
- langflow/frontend/assets/book-a-D3rJnD0B.js +6 -0
- langflow/frontend/assets/book-audio-iLfnN4kU.js +6 -0
- langflow/frontend/assets/book-check-COJQ2YZW.js +6 -0
- langflow/frontend/assets/book-copy-cMcoTR1n.js +6 -0
- langflow/frontend/assets/book-dashed-MbJNs-GH.js +6 -0
- langflow/frontend/assets/book-down-ByJv0nL3.js +6 -0
- langflow/frontend/assets/book-headphones-BxzTRFn2.js +6 -0
- langflow/frontend/assets/book-heart-BVqK7mch.js +6 -0
- langflow/frontend/assets/book-image-CiaDapH3.js +6 -0
- langflow/frontend/assets/book-key-p6_sj_yG.js +6 -0
- langflow/frontend/assets/book-lock-BjPqHEtm.js +6 -0
- langflow/frontend/assets/book-marked-CAQjzueS.js +6 -0
- langflow/frontend/assets/book-minus-DOH9QvBv.js +6 -0
- langflow/frontend/assets/book-open-CGNIbHU5.js +6 -0
- langflow/frontend/assets/book-open-check-DjqtVpmN.js +6 -0
- langflow/frontend/assets/book-open-text-DDVbYVrG.js +6 -0
- langflow/frontend/assets/book-plus-Da7NQxFB.js +6 -0
- langflow/frontend/assets/book-text--zDqhxv1.js +6 -0
- langflow/frontend/assets/book-type-BJdg9Dv3.js +6 -0
- langflow/frontend/assets/book-up-2-B-VfBNjB.js +6 -0
- langflow/frontend/assets/book-up-D8OW_6CJ.js +6 -0
- langflow/frontend/assets/book-user-DLPYmG82.js +6 -0
- langflow/frontend/assets/book-x-CCFp35D2.js +6 -0
- langflow/frontend/assets/bookmark-GayDp0Km.js +6 -0
- langflow/frontend/assets/bookmark-check-qfKxf_Z5.js +6 -0
- langflow/frontend/assets/bookmark-minus-DWxJ7Uhc.js +6 -0
- langflow/frontend/assets/bookmark-plus-Dn2wr_Vg.js +6 -0
- langflow/frontend/assets/bookmark-x-DNgOunxy.js +6 -0
- langflow/frontend/assets/boom-box-CI_jDZQZ.js +6 -0
- langflow/frontend/assets/bot-eSVt6O4U.js +6 -0
- langflow/frontend/assets/bot-message-square-CHa9u5rX.js +6 -0
- langflow/frontend/assets/bot-off-ClWedJIK.js +6 -0
- langflow/frontend/assets/bow-arrow-SyP9Xf_a.js +6 -0
- langflow/frontend/assets/box-Bcpi3mTE.js +6 -0
- langflow/frontend/assets/boxes-B-NM4ZKS.js +6 -0
- langflow/frontend/assets/braces-BZEXL4yO.js +6 -0
- langflow/frontend/assets/brackets-BeRhNvjJ.js +6 -0
- langflow/frontend/assets/brain-ToU322mx.js +6 -0
- langflow/frontend/assets/brain-circuit-BzQpON5C.js +6 -0
- langflow/frontend/assets/brain-cog-DWnVOQlI.js +6 -0
- langflow/frontend/assets/brick-wall-DBt5Pfjd.js +6 -0
- langflow/frontend/assets/brick-wall-fire-CEUCF0DO.js +6 -0
- langflow/frontend/assets/briefcase-ArmzhwWE.js +6 -0
- langflow/frontend/assets/briefcase-business-D8gzg7vI.js +6 -0
- langflow/frontend/assets/briefcase-conveyor-belt-DgFnRtz0.js +6 -0
- langflow/frontend/assets/briefcase-medical--LAkZWpv.js +6 -0
- langflow/frontend/assets/bring-to-front-BhDeBA39.js +6 -0
- langflow/frontend/assets/brush-wYLsr8Z5.js +6 -0
- langflow/frontend/assets/bubbles-BhhYsOC8.js +6 -0
- langflow/frontend/assets/bug-off-DGukWOJC.js +6 -0
- langflow/frontend/assets/bug-play-vpJzzMxP.js +6 -0
- langflow/frontend/assets/bug-sEPkFdM5.js +6 -0
- langflow/frontend/assets/building-2-CxtFQSVr.js +6 -0
- langflow/frontend/assets/building-tSbGypyK.js +6 -0
- langflow/frontend/assets/bus-CBGFh_Wa.js +6 -0
- langflow/frontend/assets/bus-front-Cc7wLuGB.js +6 -0
- langflow/frontend/assets/cable-GWMeNbG0.js +6 -0
- langflow/frontend/assets/cable-car-D8Fr-RTi.js +6 -0
- langflow/frontend/assets/cake-DXEAzGY6.js +6 -0
- langflow/frontend/assets/cake-slice-Dpd_J2iJ.js +6 -0
- langflow/frontend/assets/calculator-BqhLwtkt.js +6 -0
- langflow/frontend/assets/calendar-1-qyzx_ULy.js +6 -0
- langflow/frontend/assets/calendar-CJ9Sn6MB.js +6 -0
- langflow/frontend/assets/calendar-arrow-down-DavEH0OJ.js +6 -0
- langflow/frontend/assets/calendar-arrow-up-CBA0JH15.js +6 -0
- langflow/frontend/assets/calendar-check-2-Cn_UrmzU.js +6 -0
- langflow/frontend/assets/calendar-check-RmS0twh1.js +6 -0
- langflow/frontend/assets/calendar-clock-D6A-187P.js +6 -0
- langflow/frontend/assets/calendar-cog-DI_B_as-.js +6 -0
- langflow/frontend/assets/calendar-days-4u7HGS4T.js +6 -0
- langflow/frontend/assets/calendar-fold-DSdeBROE.js +6 -0
- langflow/frontend/assets/calendar-heart-CVkqtUJC.js +6 -0
- langflow/frontend/assets/calendar-minus-2-BHy6uySS.js +6 -0
- langflow/frontend/assets/calendar-minus-B6T7Ea3Y.js +6 -0
- langflow/frontend/assets/calendar-off-HCiaBW0i.js +6 -0
- langflow/frontend/assets/calendar-plus-2-DNhMnVIi.js +6 -0
- langflow/frontend/assets/calendar-plus-ConfP0hr.js +6 -0
- langflow/frontend/assets/calendar-range-CIBsJZoE.js +6 -0
- langflow/frontend/assets/calendar-search-C0HrZV_1.js +6 -0
- langflow/frontend/assets/calendar-sync-hdj75m4L.js +6 -0
- langflow/frontend/assets/calendar-x-2-D1UOpi0W.js +6 -0
- langflow/frontend/assets/calendar-x-CIpboE2N.js +6 -0
- langflow/frontend/assets/camera-BPS1DieH.js +6 -0
- langflow/frontend/assets/camera-off-DIBjn2H3.js +6 -0
- langflow/frontend/assets/candy-DEpluBs6.js +6 -0
- langflow/frontend/assets/candy-cane-CkjpFwxh.js +6 -0
- langflow/frontend/assets/candy-off-B6hum46I.js +6 -0
- langflow/frontend/assets/cannabis-CtVONHEV.js +6 -0
- langflow/frontend/assets/captions-DANKSwfC.js +6 -0
- langflow/frontend/assets/captions-off-DeoLvfo9.js +6 -0
- langflow/frontend/assets/car-9HLei4Hv.js +6 -0
- langflow/frontend/assets/car-front-J6Noie-j.js +6 -0
- langflow/frontend/assets/car-taxi-front-RA2hKhiR.js +6 -0
- langflow/frontend/assets/caravan-CkjBjdtg.js +6 -0
- langflow/frontend/assets/carrot-ulrd_6LN.js +6 -0
- langflow/frontend/assets/case-lower-Br0J7a4d.js +6 -0
- langflow/frontend/assets/case-sensitive-C8shX4E7.js +6 -0
- langflow/frontend/assets/case-upper-CafHl48-.js +6 -0
- langflow/frontend/assets/cassette-tape-BK8iVOWF.js +6 -0
- langflow/frontend/assets/cast-Bh325kjl.js +6 -0
- langflow/frontend/assets/castle-CmoR-s34.js +6 -0
- langflow/frontend/assets/cat-DPpAOdfV.js +6 -0
- langflow/frontend/assets/cctv-BL_zGX-s.js +6 -0
- langflow/frontend/assets/chart-area-C995Oxw6.js +6 -0
- langflow/frontend/assets/chart-bar-DQMfOU3_.js +6 -0
- langflow/frontend/assets/chart-bar-big-CFl6XgUV.js +6 -0
- langflow/frontend/assets/chart-bar-decreasing-NxIyFK_2.js +6 -0
- langflow/frontend/assets/chart-bar-increasing-RZUxx8mo.js +6 -0
- langflow/frontend/assets/chart-bar-stacked-iETEe4fL.js +6 -0
- langflow/frontend/assets/chart-candlestick-5l7ThDln.js +6 -0
- langflow/frontend/assets/chart-column--iDrRodw.js +6 -0
- langflow/frontend/assets/chart-column-big-CU_-RivP.js +6 -0
- langflow/frontend/assets/chart-column-decreasing-DPi_v84E.js +6 -0
- langflow/frontend/assets/chart-column-increasing-BP5gUkNW.js +6 -0
- langflow/frontend/assets/chart-column-stacked-DKitm9Ti.js +6 -0
- langflow/frontend/assets/chart-gantt-Cley4rkj.js +6 -0
- langflow/frontend/assets/chart-line-tZWw8u2J.js +6 -0
- langflow/frontend/assets/chart-network-C2UDaMfO.js +6 -0
- langflow/frontend/assets/chart-no-axes-column-C6TFmrQ5.js +6 -0
- langflow/frontend/assets/chart-no-axes-column-decreasing-VKhllkqJ.js +6 -0
- langflow/frontend/assets/chart-no-axes-column-increasing-B5v_BWEJ.js +6 -0
- langflow/frontend/assets/chart-no-axes-combined-j-mhlpWV.js +6 -0
- langflow/frontend/assets/chart-no-axes-gantt-CEB5mb_u.js +6 -0
- langflow/frontend/assets/chart-pie-n6Q0JPNW.js +6 -0
- langflow/frontend/assets/chart-scatter-DyPYUY56.js +6 -0
- langflow/frontend/assets/chart-spline-XKh58KNN.js +6 -0
- langflow/frontend/assets/check-check-BNN6_0Rj.js +6 -0
- langflow/frontend/assets/chef-hat-D4Co1ZWw.js +6 -0
- langflow/frontend/assets/cherry-Cjx7gkiP.js +6 -0
- langflow/frontend/assets/chevron-first-B3ylKLbi.js +6 -0
- langflow/frontend/assets/chevron-last-CiAN9zi-.js +6 -0
- langflow/frontend/assets/chevron-left-RheViS6J.js +6 -0
- langflow/frontend/assets/chevron-right-CXgGJffD.js +6 -0
- langflow/frontend/assets/chevrons-down-CdpR5KE1.js +6 -0
- langflow/frontend/assets/chevrons-down-up-CXJk1S3G.js +6 -0
- langflow/frontend/assets/chevrons-left-BUKDVdX5.js +6 -0
- langflow/frontend/assets/chevrons-left-right-DUDu6_fC.js +6 -0
- langflow/frontend/assets/chevrons-left-right-ellipsis-BRzu4LVI.js +6 -0
- langflow/frontend/assets/chevrons-right-CfwBOT7g.js +6 -0
- langflow/frontend/assets/chevrons-right-left-BKSopM-I.js +6 -0
- langflow/frontend/assets/chevrons-up-qt_DNVzo.js +6 -0
- langflow/frontend/assets/chrome-L2I8b0lG.js +6 -0
- langflow/frontend/assets/church-CYjkjBDT.js +6 -0
- langflow/frontend/assets/cigarette-Br5Jo_9m.js +6 -0
- langflow/frontend/assets/cigarette-off-B_T_RXW9.js +6 -0
- langflow/frontend/assets/circle-alert-DBHQcwdU.js +6 -0
- langflow/frontend/assets/circle-arrow-down-Clp-eZ_M.js +6 -0
- langflow/frontend/assets/circle-arrow-left-B4pKnhTM.js +6 -0
- langflow/frontend/assets/circle-arrow-out-down-left-DZPNH7R0.js +6 -0
- langflow/frontend/assets/circle-arrow-out-down-right-Bgpg74k1.js +6 -0
- langflow/frontend/assets/circle-arrow-out-up-left-BCr--TqD.js +6 -0
- langflow/frontend/assets/circle-arrow-out-up-right-D_e_XSe_.js +6 -0
- langflow/frontend/assets/circle-arrow-right-gDS4F2j0.js +6 -0
- langflow/frontend/assets/circle-arrow-up-D2dsOQ1V.js +6 -0
- langflow/frontend/assets/circle-check-D4R2ePtI.js +6 -0
- langflow/frontend/assets/circle-check-big-DPW3GukQ.js +6 -0
- langflow/frontend/assets/circle-chevron-down-BAjqeojN.js +6 -0
- langflow/frontend/assets/circle-chevron-left-BKKBAjLY.js +6 -0
- langflow/frontend/assets/circle-chevron-right-zx9M3hgY.js +6 -0
- langflow/frontend/assets/circle-chevron-up-DgW85RH9.js +6 -0
- langflow/frontend/assets/circle-dashed-BPi4XXtX.js +6 -0
- langflow/frontend/assets/circle-divide-CUTOrvoi.js +6 -0
- langflow/frontend/assets/circle-dollar-sign-Dx0Ok9AW.js +6 -0
- langflow/frontend/assets/circle-dot-BRifmIFm.js +6 -0
- langflow/frontend/assets/circle-dot-dashed-tFv9ialF.js +6 -0
- langflow/frontend/assets/circle-ellipsis-CXr9Q1_w.js +6 -0
- langflow/frontend/assets/circle-equal-CqXnZaYI.js +6 -0
- langflow/frontend/assets/circle-fading-arrow-up-DJ4q-J-u.js +6 -0
- langflow/frontend/assets/circle-fading-plus-CXb1gwJP.js +6 -0
- langflow/frontend/assets/circle-gauge-BykIpOw7.js +6 -0
- langflow/frontend/assets/circle-help-C5j5avQw.js +6 -0
- langflow/frontend/assets/circle-minus-Cvti7R36.js +6 -0
- langflow/frontend/assets/circle-off-D72mS0CU.js +6 -0
- langflow/frontend/assets/circle-parking-C5QTGouB.js +6 -0
- langflow/frontend/assets/circle-parking-off-DDnlUAva.js +6 -0
- langflow/frontend/assets/circle-pause-Cxy5TZFL.js +6 -0
- langflow/frontend/assets/circle-percent-Bl4mJ5-3.js +6 -0
- langflow/frontend/assets/circle-play-D_kHv4yw.js +6 -0
- langflow/frontend/assets/circle-plus-DfDc9bpc.js +6 -0
- langflow/frontend/assets/circle-power-CZXirOP-.js +6 -0
- langflow/frontend/assets/circle-slash-2-B5KbC7c4.js +6 -0
- langflow/frontend/assets/circle-slash-BkbbQ-s5.js +6 -0
- langflow/frontend/assets/circle-small-BIQk-8XN.js +6 -0
- langflow/frontend/assets/circle-stop-rs1ivDwh.js +6 -0
- langflow/frontend/assets/circle-user-BkDNFXEn.js +6 -0
- langflow/frontend/assets/circle-user-round-BmpCPcb2.js +6 -0
- langflow/frontend/assets/circuit-board-BSnA2Mxj.js +6 -0
- langflow/frontend/assets/citrus-BvBmHu1u.js +6 -0
- langflow/frontend/assets/clapperboard-CBuB68Fv.js +6 -0
- langflow/frontend/assets/clipboard-CN7kKJ-W.js +6 -0
- langflow/frontend/assets/clipboard-check-CKUFxVfD.js +6 -0
- langflow/frontend/assets/clipboard-copy-Doeuc8kJ.js +6 -0
- langflow/frontend/assets/clipboard-list-BhEJa9ly.js +6 -0
- langflow/frontend/assets/clipboard-minus-CLvEQm-W.js +6 -0
- langflow/frontend/assets/clipboard-paste-CyjU5x_c.js +6 -0
- langflow/frontend/assets/clipboard-pen-CoQd_4ri.js +6 -0
- langflow/frontend/assets/clipboard-pen-line-CwtDCC8c.js +6 -0
- langflow/frontend/assets/clipboard-plus-lvo3b6Oa.js +6 -0
- langflow/frontend/assets/clipboard-type-DlYvzPAQ.js +6 -0
- langflow/frontend/assets/clipboard-x-k0IkREXF.js +6 -0
- langflow/frontend/assets/clock-1-CinDfcOX.js +6 -0
- langflow/frontend/assets/clock-10-DVs3JYkZ.js +6 -0
- langflow/frontend/assets/clock-11-BbZVIuWr.js +6 -0
- langflow/frontend/assets/clock-12-D-e6SqkT.js +6 -0
- langflow/frontend/assets/clock-2-CeL_3C3H.js +6 -0
- langflow/frontend/assets/clock-3-CqTpHzLg.js +6 -0
- langflow/frontend/assets/clock-4-VADvb-9S.js +6 -0
- langflow/frontend/assets/clock-5-Dg17OyXW.js +6 -0
- langflow/frontend/assets/clock-6-DWERqLSb.js +6 -0
- langflow/frontend/assets/clock-7-xUF63Kv8.js +6 -0
- langflow/frontend/assets/clock-8-C7FsZSds.js +6 -0
- langflow/frontend/assets/clock-9-BwgUJ5D6.js +6 -0
- langflow/frontend/assets/clock-Ds7cVIMY.js +6 -0
- langflow/frontend/assets/clock-alert-DpjLLgJ4.js +6 -0
- langflow/frontend/assets/clock-arrow-down-JgLY4dKZ.js +6 -0
- langflow/frontend/assets/clock-arrow-up-Bdk3oQko.js +6 -0
- langflow/frontend/assets/clock-fading-CAW_lm7C.js +6 -0
- langflow/frontend/assets/cloud-COLHF0R0.js +6 -0
- langflow/frontend/assets/cloud-alert-BCxJcePw.js +6 -0
- langflow/frontend/assets/cloud-cog-BOmJ2kHd.js +6 -0
- langflow/frontend/assets/cloud-download-fJpElRQy.js +6 -0
- langflow/frontend/assets/cloud-drizzle-BU3N-FNI.js +6 -0
- langflow/frontend/assets/cloud-fog-IrRpfTSL.js +6 -0
- langflow/frontend/assets/cloud-hail-D0-eeFxy.js +6 -0
- langflow/frontend/assets/cloud-lightning-DEbEITa7.js +6 -0
- langflow/frontend/assets/cloud-moon-Det1nP8s.js +6 -0
- langflow/frontend/assets/cloud-moon-rain-BRp6Gktk.js +6 -0
- langflow/frontend/assets/cloud-off-Dwxm5Chr.js +6 -0
- langflow/frontend/assets/cloud-rain-DTmNA2S-.js +6 -0
- langflow/frontend/assets/cloud-rain-wind-C9nt0mNU.js +6 -0
- langflow/frontend/assets/cloud-snow-C2fJZAfK.js +6 -0
- langflow/frontend/assets/cloud-sun-DMcS2wwe.js +6 -0
- langflow/frontend/assets/cloud-sun-rain-CuxdqZXf.js +6 -0
- langflow/frontend/assets/cloud-upload-C8zRGatr.js +6 -0
- langflow/frontend/assets/cloudy-zj9N0UAm.js +6 -0
- langflow/frontend/assets/clover-vNTa8bPv.js +6 -0
- langflow/frontend/assets/club-B1DebGu_.js +6 -0
- langflow/frontend/assets/code-xml-B77K_T-U.js +6 -0
- langflow/frontend/assets/codepen-pYuswNsI.js +6 -0
- langflow/frontend/assets/codesandbox-he0WP9c8.js +6 -0
- langflow/frontend/assets/coffee-_8X9Hmmc.js +6 -0
- langflow/frontend/assets/cog-GmKO9BDX.js +6 -0
- langflow/frontend/assets/coins-CmGo4o5A.js +6 -0
- langflow/frontend/assets/columns-2-CpwX7P3Q.js +6 -0
- langflow/frontend/assets/columns-3-7w0vKLGq.js +6 -0
- langflow/frontend/assets/columns-3-cog-C7esZg6z.js +6 -0
- langflow/frontend/assets/columns-4-TcGhh_CN.js +6 -0
- langflow/frontend/assets/combine-DLeIcxn6.js +6 -0
- langflow/frontend/assets/command-IqVufxp8.js +6 -0
- langflow/frontend/assets/compass-tqd8C9Qw.js +6 -0
- langflow/frontend/assets/component-BZt8Y-N8.js +6 -0
- langflow/frontend/assets/computer-CU_wH9Xc.js +6 -0
- langflow/frontend/assets/concierge-bell-CnptsCh4.js +6 -0
- langflow/frontend/assets/cone-C5FM4OlP.js +6 -0
- langflow/frontend/assets/construction-BH3g1alp.js +6 -0
- langflow/frontend/assets/contact-B1nhHtZ2.js +6 -0
- langflow/frontend/assets/contact-round-DXu8A8Zt.js +6 -0
- langflow/frontend/assets/container-CWz-b31Z.js +6 -0
- langflow/frontend/assets/contrast-BghDfdG9.js +6 -0
- langflow/frontend/assets/cookie-BJ3x64mD.js +6 -0
- langflow/frontend/assets/cooking-pot-CnsQVH0H.js +6 -0
- langflow/frontend/assets/copy-Bnv-E_ya.js +6 -0
- langflow/frontend/assets/copy-check-D_OuVBTf.js +6 -0
- langflow/frontend/assets/copy-minus-DiKtnzCV.js +6 -0
- langflow/frontend/assets/copy-plus-B7ma9OPS.js +6 -0
- langflow/frontend/assets/copy-slash-Bh59Ixl3.js +6 -0
- langflow/frontend/assets/copy-x-D0TowW2w.js +6 -0
- langflow/frontend/assets/copyleft-DwKthBuT.js +6 -0
- langflow/frontend/assets/copyright-Dn8XexoW.js +6 -0
- langflow/frontend/assets/corner-down-left-CzISeIKO.js +6 -0
- langflow/frontend/assets/corner-down-right-CVg0G7Zq.js +6 -0
- langflow/frontend/assets/corner-left-down-DCwWVggN.js +6 -0
- langflow/frontend/assets/corner-left-up-bGS3BgJA.js +6 -0
- langflow/frontend/assets/corner-right-down-Dqb4vBfA.js +6 -0
- langflow/frontend/assets/corner-right-up-DQcxPBkH.js +6 -0
- langflow/frontend/assets/corner-up-left-B5pLhzlm.js +6 -0
- langflow/frontend/assets/corner-up-right-CLN-Zb3p.js +6 -0
- langflow/frontend/assets/cpu-DMdDhhag.js +6 -0
- langflow/frontend/assets/creative-commons-DxSIDsi8.js +6 -0
- langflow/frontend/assets/credit-card-C0RboWFF.js +6 -0
- langflow/frontend/assets/croissant-CYWgwKDX.js +6 -0
- langflow/frontend/assets/crop-B_CSDNJK.js +6 -0
- langflow/frontend/assets/cross-z5YJ1HcN.js +6 -0
- langflow/frontend/assets/crosshair-FfzvO5yr.js +6 -0
- langflow/frontend/assets/crown-J5rlh_K5.js +6 -0
- langflow/frontend/assets/cuboid-DRv1dr3_.js +6 -0
- langflow/frontend/assets/cup-soda-m1DBv4nF.js +6 -0
- langflow/frontend/assets/currency-UeO0ErYb.js +6 -0
- langflow/frontend/assets/cylinder-olSWvA15.js +6 -0
- langflow/frontend/assets/dam-D5nWNN0m.js +6 -0
- langflow/frontend/assets/database-DJaC9ErT.js +6 -0
- langflow/frontend/assets/database-backup-BP7Ma08L.js +6 -0
- langflow/frontend/assets/database-zap-DtMyqsqb.js +6 -0
- langflow/frontend/assets/decimals-arrow-left-RclWcXTj.js +6 -0
- langflow/frontend/assets/decimals-arrow-right-DFhPveyN.js +6 -0
- langflow/frontend/assets/delete-BOomWok4.js +6 -0
- langflow/frontend/assets/dessert-CQbU57JM.js +6 -0
- langflow/frontend/assets/diameter-Cbta8bFs.js +6 -0
- langflow/frontend/assets/diamond-fWtfwEYx.js +6 -0
- langflow/frontend/assets/diamond-minus-b8-Fh7yx.js +6 -0
- langflow/frontend/assets/diamond-percent-IxOyPwfT.js +6 -0
- langflow/frontend/assets/diamond-plus-8WEyzjaT.js +6 -0
- langflow/frontend/assets/dice-1-Cf8dp9Q1.js +6 -0
- langflow/frontend/assets/dice-2-BbEjysmM.js +6 -0
- langflow/frontend/assets/dice-3-6NjBaVtN.js +6 -0
- langflow/frontend/assets/dice-4-CKq5LPne.js +6 -0
- langflow/frontend/assets/dice-5-DW74Prob.js +6 -0
- langflow/frontend/assets/dice-6-lumlllS_.js +6 -0
- langflow/frontend/assets/dices-B4C1Ad5d.js +6 -0
- langflow/frontend/assets/diff-BenjDhyP.js +6 -0
- langflow/frontend/assets/disc-2-B0peU-h3.js +6 -0
- langflow/frontend/assets/disc-3-DH7ApUrP.js +6 -0
- langflow/frontend/assets/disc-DjbzbUmM.js +6 -0
- langflow/frontend/assets/disc-album-Dh6wVX48.js +6 -0
- langflow/frontend/assets/divide-Di88Eupj.js +6 -0
- langflow/frontend/assets/dna-DwpRkjtd.js +6 -0
- langflow/frontend/assets/dna-off-CM-Y2kHH.js +6 -0
- langflow/frontend/assets/dock-DA7I6Imn.js +6 -0
- langflow/frontend/assets/dog-BozbvxDT.js +6 -0
- langflow/frontend/assets/dollar-sign-CJD_z_LB.js +6 -0
- langflow/frontend/assets/donut-D-buVWQX.js +6 -0
- langflow/frontend/assets/door-closed-D2mUeVod.js +6 -0
- langflow/frontend/assets/door-open-CiTXcXeR.js +6 -0
- langflow/frontend/assets/dot-CL0wcBdx.js +6 -0
- langflow/frontend/assets/download-DJAxHLCY.js +6 -0
- langflow/frontend/assets/drafting-compass-Cc8e7dbj.js +6 -0
- langflow/frontend/assets/drama-CZ_jVDex.js +6 -0
- langflow/frontend/assets/dribbble-D_nmj25K.js +6 -0
- langflow/frontend/assets/drill-Dj174wvi.js +6 -0
- langflow/frontend/assets/droplet-j6b8rfzj.js +6 -0
- langflow/frontend/assets/droplet-off-LX6_ToL8.js +6 -0
- langflow/frontend/assets/droplets-C57Y8lOL.js +6 -0
- langflow/frontend/assets/drum-QNuN_J_Y.js +6 -0
- langflow/frontend/assets/drumstick-nK04791Q.js +6 -0
- langflow/frontend/assets/dumbbell-DvVT1xEb.js +6 -0
- langflow/frontend/assets/ear-CMBKcKhb.js +6 -0
- langflow/frontend/assets/ear-off-C4UjfmDG.js +6 -0
- langflow/frontend/assets/earth-DCjK9NkZ.js +6 -0
- langflow/frontend/assets/earth-lock-Cv1PQMus.js +6 -0
- langflow/frontend/assets/eclipse-DZuJPv8F.js +6 -0
- langflow/frontend/assets/egg-CsuoI-ED.js +6 -0
- langflow/frontend/assets/egg-fried--spBHwvj.js +6 -0
- langflow/frontend/assets/egg-off-D5djUixs.js +6 -0
- langflow/frontend/assets/ellipsis-D787OK1E.js +6 -0
- langflow/frontend/assets/ellipsis-vertical-bJtCGC-X.js +6 -0
- langflow/frontend/assets/equal-CjC85R-P.js +6 -0
- langflow/frontend/assets/equal-approximately-DRGnjO4E.js +6 -0
- langflow/frontend/assets/equal-not-DrZUOA_Y.js +6 -0
- langflow/frontend/assets/eraser-CHxgEsj6.js +6 -0
- langflow/frontend/assets/ethernet-port-CHU3CU9z.js +6 -0
- langflow/frontend/assets/euro-BnKyqv4x.js +6 -0
- langflow/frontend/assets/expand-RPUfPFXL.js +6 -0
- langflow/frontend/assets/eye-DQEZk31D.js +6 -0
- langflow/frontend/assets/eye-closed-DvSUrwe2.js +6 -0
- langflow/frontend/assets/eye-off-Bjxpl-YA.js +6 -0
- langflow/frontend/assets/facebook-C0qUaD1y.js +6 -0
- langflow/frontend/assets/factory-WIkBqxDe.js +6 -0
- langflow/frontend/assets/fan-C8Hg5MS1.js +6 -0
- langflow/frontend/assets/fast-forward-CwjCF7r4.js +6 -0
- langflow/frontend/assets/feather-BhHKpyAP.js +6 -0
- langflow/frontend/assets/fence-C8Eryww9.js +6 -0
- langflow/frontend/assets/ferris-wheel-C9J8fDvl.js +6 -0
- langflow/frontend/assets/figma-CPGEhgNV.js +6 -0
- langflow/frontend/assets/file-B1TMCQq7.js +6 -0
- langflow/frontend/assets/file-archive-Gkz2d9vl.js +6 -0
- langflow/frontend/assets/file-audio-2-CDpUBOu3.js +6 -0
- langflow/frontend/assets/file-audio-DDf2SM9o.js +6 -0
- langflow/frontend/assets/file-axis-3d-CUWQIi2f.js +6 -0
- langflow/frontend/assets/file-badge-2-DP9f4i34.js +6 -0
- langflow/frontend/assets/file-badge-hddZRjOV.js +6 -0
- langflow/frontend/assets/file-box-CYR3w5Ed.js +6 -0
- langflow/frontend/assets/file-chart-column-BQQXJFO9.js +6 -0
- langflow/frontend/assets/file-chart-column-increasing-CmluxvJp.js +6 -0
- langflow/frontend/assets/file-chart-line-CaAvlWuz.js +6 -0
- langflow/frontend/assets/file-chart-pie-Bjf2AMwU.js +6 -0
- langflow/frontend/assets/file-check-2-v-WSLQsU.js +6 -0
- langflow/frontend/assets/file-check-BhUK7hHz.js +6 -0
- langflow/frontend/assets/file-clock-BDJVblWy.js +6 -0
- langflow/frontend/assets/file-code-2-C3sqhDwo.js +6 -0
- langflow/frontend/assets/file-code-hBjOuLH3.js +6 -0
- langflow/frontend/assets/file-cog-C3N74DiE.js +6 -0
- langflow/frontend/assets/file-diff-DUDa5NaP.js +6 -0
- langflow/frontend/assets/file-digit-6CR13LCb.js +6 -0
- langflow/frontend/assets/file-down-DhuCA4zb.js +6 -0
- langflow/frontend/assets/file-heart-CAJkZyNd.js +6 -0
- langflow/frontend/assets/file-image-BmxdfHOS.js +6 -0
- langflow/frontend/assets/file-input-CXEhlr3W.js +6 -0
- langflow/frontend/assets/file-json-2-BA7lSgdU.js +6 -0
- langflow/frontend/assets/file-json-z0ZtPu_t.js +6 -0
- langflow/frontend/assets/file-key-2-CDnvlou1.js +6 -0
- langflow/frontend/assets/file-key-B5IVJp3F.js +6 -0
- langflow/frontend/assets/file-lock-2-xQdX_umY.js +6 -0
- langflow/frontend/assets/file-lock-CmnMJWi4.js +6 -0
- langflow/frontend/assets/file-minus-2-B2AFAt6o.js +6 -0
- langflow/frontend/assets/file-minus-a2OEyZVz.js +6 -0
- langflow/frontend/assets/file-music-sqlgRIZe.js +6 -0
- langflow/frontend/assets/file-output-CvOxWf72.js +6 -0
- langflow/frontend/assets/file-pen-Rj8XZuJg.js +6 -0
- langflow/frontend/assets/file-pen-line-DhwIe0uX.js +6 -0
- langflow/frontend/assets/file-plus-2-BSuWP0p0.js +6 -0
- langflow/frontend/assets/file-plus-DSswv4zF.js +6 -0
- langflow/frontend/assets/file-question-RmjggO-g.js +6 -0
- langflow/frontend/assets/file-scan-DRnbhlsX.js +6 -0
- langflow/frontend/assets/file-search-2-DHcGFRnU.js +6 -0
- langflow/frontend/assets/file-search-_iYU1mOT.js +6 -0
- langflow/frontend/assets/file-sliders-DBg9UN8w.js +6 -0
- langflow/frontend/assets/file-spreadsheet-CEcQq8ed.js +6 -0
- langflow/frontend/assets/file-stack-hZmSIdel.js +6 -0
- langflow/frontend/assets/file-symlink-DxmAsy0z.js +6 -0
- langflow/frontend/assets/file-terminal-BPPnpDjB.js +6 -0
- langflow/frontend/assets/file-text-BaQvl1vW.js +6 -0
- langflow/frontend/assets/file-type-2-e9nAaxvW.js +6 -0
- langflow/frontend/assets/file-type-BTDeDhNx.js +6 -0
- langflow/frontend/assets/file-up-IG_95vVB.js +6 -0
- langflow/frontend/assets/file-user-mogo1jxG.js +6 -0
- langflow/frontend/assets/file-video-2-CfuG2Lpu.js +6 -0
- langflow/frontend/assets/file-video-DdP7ZynD.js +6 -0
- langflow/frontend/assets/file-volume-2-CqutiwF-.js +6 -0
- langflow/frontend/assets/file-volume-Ch2DQVu_.js +6 -0
- langflow/frontend/assets/file-warning-DxMGAAgD.js +6 -0
- langflow/frontend/assets/file-x-2-CSzo8PWS.js +6 -0
- langflow/frontend/assets/file-x-D-5MzBdA.js +6 -0
- langflow/frontend/assets/files-D5oKDyo2.js +6 -0
- langflow/frontend/assets/film-KAOKMhnG.js +6 -0
- langflow/frontend/assets/fingerprint-CWMJjMfR.js +6 -0
- langflow/frontend/assets/fire-extinguisher-rH9nJWdL.js +6 -0
- langflow/frontend/assets/fish-SJPZntLZ.js +6 -0
- langflow/frontend/assets/fish-off-m6yiMH-J.js +6 -0
- langflow/frontend/assets/fish-symbol-DlN3KLxn.js +6 -0
- langflow/frontend/assets/flag-CgQiQ4L2.js +6 -0
- langflow/frontend/assets/flag-off-ssjQYhVD.js +6 -0
- langflow/frontend/assets/flag-triangle-left-BnDvhvS1.js +6 -0
- langflow/frontend/assets/flag-triangle-right-DrRjVCQO.js +6 -0
- langflow/frontend/assets/flame-kindling-D3bCCM0k.js +6 -0
- langflow/frontend/assets/flame-vxuWzg79.js +6 -0
- langflow/frontend/assets/flashlight-DXY4p7BC.js +6 -0
- langflow/frontend/assets/flashlight-off-CFIat-ui.js +6 -0
- langflow/frontend/assets/flask-conical-off-C2pMYXNO.js +6 -0
- langflow/frontend/assets/flask-conical-qeuVeaUV.js +6 -0
- langflow/frontend/assets/flask-round-mg0G5Zis.js +6 -0
- langflow/frontend/assets/flip-horizontal-2-DeuwfpO3.js +6 -0
- langflow/frontend/assets/flip-horizontal-BkHPjX7j.js +6 -0
- langflow/frontend/assets/flip-vertical-2-B6tcGvJJ.js +6 -0
- langflow/frontend/assets/flip-vertical-BrJ5sFRj.js +6 -0
- langflow/frontend/assets/flower-2-DjdcFdRK.js +6 -0
- langflow/frontend/assets/flower-DIgt5_lo.js +6 -0
- langflow/frontend/assets/focus-IziXQi2j.js +6 -0
- langflow/frontend/assets/fold-horizontal-rRM0hxGv.js +6 -0
- langflow/frontend/assets/fold-vertical-DoB3xfdL.js +6 -0
- langflow/frontend/assets/folder-DJf-kIpw.js +6 -0
- langflow/frontend/assets/folder-archive-TVE-mQql.js +6 -0
- langflow/frontend/assets/folder-check-B7NLv5e4.js +6 -0
- langflow/frontend/assets/folder-clock-CBQw2o8u.js +6 -0
- langflow/frontend/assets/folder-closed-BTQjwIh1.js +6 -0
- langflow/frontend/assets/folder-code-BH5w6EKl.js +6 -0
- langflow/frontend/assets/folder-cog-B-f0XsQy.js +6 -0
- langflow/frontend/assets/folder-dot-dYHd_iIm.js +6 -0
- langflow/frontend/assets/folder-down-Cm1iBv0j.js +6 -0
- langflow/frontend/assets/folder-git-2-3IwS_2lb.js +6 -0
- langflow/frontend/assets/folder-git-BEFrv2ty.js +6 -0
- langflow/frontend/assets/folder-heart-DS4W7K4g.js +6 -0
- langflow/frontend/assets/folder-input-Dizp4rBH.js +6 -0
- langflow/frontend/assets/folder-kanban-BSLv0fcQ.js +6 -0
- langflow/frontend/assets/folder-key-DLdbI_De.js +6 -0
- langflow/frontend/assets/folder-lock--savdJeR.js +6 -0
- langflow/frontend/assets/folder-minus-D6Shx1-z.js +6 -0
- langflow/frontend/assets/folder-open-B3hcE9q9.js +6 -0
- langflow/frontend/assets/folder-open-dot-CP2YtSAe.js +6 -0
- langflow/frontend/assets/folder-output-BAzpBIdP.js +6 -0
- langflow/frontend/assets/folder-pen-CAU0htoW.js +6 -0
- langflow/frontend/assets/folder-plus-B0SchJ5k.js +6 -0
- langflow/frontend/assets/folder-root-C2IZ_ZkF.js +6 -0
- langflow/frontend/assets/folder-search-2-DkC3u0u9.js +6 -0
- langflow/frontend/assets/folder-search-DkBM6coH.js +6 -0
- langflow/frontend/assets/folder-symlink-D3BbBXV-.js +6 -0
- langflow/frontend/assets/folder-sync-wrpHF5bu.js +6 -0
- langflow/frontend/assets/folder-tree-C0DUAJcc.js +6 -0
- langflow/frontend/assets/folder-up-gvf1DRx2.js +6 -0
- langflow/frontend/assets/folder-x-szEaKpBc.js +6 -0
- langflow/frontend/assets/folders-DY55X7MD.js +6 -0
- langflow/frontend/assets/footprints-BQWIcDMd.js +6 -0
- langflow/frontend/assets/forklift-COLXhpER.js +6 -0
- langflow/frontend/assets/forward-CrUgayej.js +6 -0
- langflow/frontend/assets/frame-CY5W0jC5.js +6 -0
- langflow/frontend/assets/framer-CEhtw71R.js +6 -0
- langflow/frontend/assets/frown-suOQpZpQ.js +6 -0
- langflow/frontend/assets/fuel-PDUpHGTU.js +6 -0
- langflow/frontend/assets/fullscreen-DzxwumhI.js +6 -0
- langflow/frontend/assets/funnel-4uXu1rUt.js +6 -0
- langflow/frontend/assets/funnel-plus-CVA4DInU.js +6 -0
- langflow/frontend/assets/funnel-x-Lqh6HQHA.js +6 -0
- langflow/frontend/assets/gallery-horizontal-C4PA9Azu.js +6 -0
- langflow/frontend/assets/gallery-horizontal-end-DgBr-iBr.js +6 -0
- langflow/frontend/assets/gallery-thumbnails-DdKFI83F.js +6 -0
- langflow/frontend/assets/gallery-vertical-BShvR0Mt.js +6 -0
- langflow/frontend/assets/gallery-vertical-end-lBPtCroK.js +6 -0
- langflow/frontend/assets/gamepad-2-BdhKTHRL.js +6 -0
- langflow/frontend/assets/gamepad-B_O767Pi.js +6 -0
- langflow/frontend/assets/gauge-S5gY8CL_.js +6 -0
- langflow/frontend/assets/gavel-BELVX2U7.js +6 -0
- langflow/frontend/assets/gem-NlWHzVP8.js +6 -0
- langflow/frontend/assets/ghost-BEpFJGdL.js +6 -0
- langflow/frontend/assets/gift-U9yHXros.js +6 -0
- langflow/frontend/assets/git-branch-BYbm4mzH.js +6 -0
- langflow/frontend/assets/git-branch-plus-DtQxQOd8.js +6 -0
- langflow/frontend/assets/git-commit-horizontal-DT9dkrfG.js +6 -0
- langflow/frontend/assets/git-commit-vertical-BC_NBNvg.js +6 -0
- langflow/frontend/assets/git-compare-CN_WgIps.js +6 -0
- langflow/frontend/assets/git-compare-arrows-D-F_Uxqj.js +6 -0
- langflow/frontend/assets/git-fork-Dt_eK6XL.js +6 -0
- langflow/frontend/assets/git-graph-BT67x77M.js +6 -0
- langflow/frontend/assets/git-merge-CNhvMLtl.js +6 -0
- langflow/frontend/assets/git-pull-request-CTikO1Lj.js +6 -0
- langflow/frontend/assets/git-pull-request-arrow-BZDXzFw-.js +6 -0
- langflow/frontend/assets/git-pull-request-closed-Duuw-tno.js +6 -0
- langflow/frontend/assets/git-pull-request-create-C2W7fedt.js +6 -0
- langflow/frontend/assets/git-pull-request-create-arrow-DwuXUPPE.js +6 -0
- langflow/frontend/assets/git-pull-request-draft-JUPTJBqc.js +6 -0
- langflow/frontend/assets/github-BSeb8I9e.js +6 -0
- langflow/frontend/assets/gitlab-ConXcJWJ.js +6 -0
- langflow/frontend/assets/glass-water-Bvf18iuh.js +6 -0
- langflow/frontend/assets/glasses-BeiKKX5r.js +6 -0
- langflow/frontend/assets/globe-B42EdvUr.js +6 -0
- langflow/frontend/assets/globe-lock-dkmTX-sh.js +6 -0
- langflow/frontend/assets/goal-BeXveO-3.js +6 -0
- langflow/frontend/assets/grab-BLs0jQon.js +6 -0
- langflow/frontend/assets/graduation-cap-CUn_DxQ_.js +6 -0
- langflow/frontend/assets/grape-C2KaH8gU.js +6 -0
- langflow/frontend/assets/grid-2x2-C3nVPaII.js +6 -0
- langflow/frontend/assets/grid-2x2-check-Cvr9knvg.js +6 -0
- langflow/frontend/assets/grid-2x2-plus-Ckdcc96Y.js +6 -0
- langflow/frontend/assets/grid-2x2-x-BMQSsaSE.js +6 -0
- langflow/frontend/assets/grid-3x3-BjYKt-_O.js +6 -0
- langflow/frontend/assets/grip-CZ085X_W.js +6 -0
- langflow/frontend/assets/grip-horizontal-Y3NmvBFT.js +6 -0
- langflow/frontend/assets/grip-vertical-B59p2u11.js +6 -0
- langflow/frontend/assets/group-DdPMzqVI.js +6 -0
- langflow/frontend/assets/guitar-DQ7x86FX.js +6 -0
- langflow/frontend/assets/ham-6f3kXdqf.js +6 -0
- langflow/frontend/assets/hammer-B2_p1_fC.js +6 -0
- langflow/frontend/assets/hand-BbCqitxB.js +6 -0
- langflow/frontend/assets/hand-coins-Dgz1etza.js +6 -0
- langflow/frontend/assets/hand-heart-BID2sKBu.js +6 -0
- langflow/frontend/assets/hand-helping-BOkMrsVe.js +6 -0
- langflow/frontend/assets/hand-metal-D-GVXTrf.js +6 -0
- langflow/frontend/assets/hand-platter-Dg1bz__b.js +6 -0
- langflow/frontend/assets/handshake-DlQL_wxY.js +6 -0
- langflow/frontend/assets/hard-drive-BPgtBe00.js +6 -0
- langflow/frontend/assets/hard-drive-download-CNHAeFg-.js +6 -0
- langflow/frontend/assets/hard-drive-upload-i3wjY1_o.js +6 -0
- langflow/frontend/assets/hard-hat-DNb0v-3h.js +6 -0
- langflow/frontend/assets/hash-DsD4g6oN.js +6 -0
- langflow/frontend/assets/haze-BP2TP8MM.js +6 -0
- langflow/frontend/assets/hdmi-port-DTmhhB2G.js +6 -0
- langflow/frontend/assets/heading-1-BVcDSi5E.js +6 -0
- langflow/frontend/assets/heading-2-CeiJZqhQ.js +6 -0
- langflow/frontend/assets/heading-3-m2OM67gz.js +6 -0
- langflow/frontend/assets/heading-4-DNknO4Bp.js +6 -0
- langflow/frontend/assets/heading-5-D3heTetS.js +6 -0
- langflow/frontend/assets/heading-6-CM-UO3Bs.js +6 -0
- langflow/frontend/assets/heading-JJt6R8xE.js +6 -0
- langflow/frontend/assets/headphone-off-CXowa7_x.js +6 -0
- langflow/frontend/assets/headphones-BUXqccDP.js +6 -0
- langflow/frontend/assets/headset-bMzSarpm.js +6 -0
- langflow/frontend/assets/heart-Bmt9fYs6.js +6 -0
- langflow/frontend/assets/heart-crack-CAYemD8u.js +6 -0
- langflow/frontend/assets/heart-handshake-Dhcf5-3Y.js +6 -0
- langflow/frontend/assets/heart-minus-DcqARxpE.js +6 -0
- langflow/frontend/assets/heart-off-Clcu0Mpd.js +6 -0
- langflow/frontend/assets/heart-plus-DB-Wl3oW.js +6 -0
- langflow/frontend/assets/heart-pulse-d06qZHKp.js +6 -0
- langflow/frontend/assets/heater-542sNqst.js +6 -0
- langflow/frontend/assets/hexagon-CUGRShr9.js +6 -0
- langflow/frontend/assets/highlighter-Jl4viTI6.js +6 -0
- langflow/frontend/assets/history-B5GVxYJY.js +6 -0
- langflow/frontend/assets/hop-BKkLEzjI.js +6 -0
- langflow/frontend/assets/hop-off-CDTiL-ei.js +6 -0
- langflow/frontend/assets/hospital-B9rcr2ws.js +6 -0
- langflow/frontend/assets/hotel-fzU9ScaP.js +6 -0
- langflow/frontend/assets/hourglass-Df3oo_TW.js +6 -0
- langflow/frontend/assets/house-CEARqOdS.js +6 -0
- langflow/frontend/assets/house-plug-DNgJV6-Y.js +6 -0
- langflow/frontend/assets/house-plus-CPUoPJjK.js +6 -0
- langflow/frontend/assets/house-wifi-BRPUuAmJ.js +6 -0
- langflow/frontend/assets/ice-cream-bowl-BlUbZ4XN.js +6 -0
- langflow/frontend/assets/ice-cream-cone-Du4-djqA.js +6 -0
- langflow/frontend/assets/id-card-Bpg0Cav-.js +6 -0
- langflow/frontend/assets/image-D9Ukq8qF.js +6 -0
- langflow/frontend/assets/image-down-BvUIk1t6.js +6 -0
- langflow/frontend/assets/image-minus-DV4mn4f8.js +6 -0
- langflow/frontend/assets/image-off-Xte6-uZu.js +6 -0
- langflow/frontend/assets/image-play-BOQx_NsS.js +6 -0
- langflow/frontend/assets/image-plus-R8NojlfI.js +6 -0
- langflow/frontend/assets/image-up-13p2JyRG.js +6 -0
- langflow/frontend/assets/image-upscale-BCUXrYGW.js +6 -0
- langflow/frontend/assets/images-kRLBeAue.js +6 -0
- langflow/frontend/assets/import-BGWDkYJx.js +6 -0
- langflow/frontend/assets/inbox-DYqtp0ox.js +6 -0
- langflow/frontend/assets/indent-decrease-Cj8lr_U7.js +6 -0
- langflow/frontend/assets/indent-increase-C5_175ZN.js +6 -0
- langflow/frontend/assets/index-13Zoxzau.js +1 -0
- langflow/frontend/assets/index-2YMfJOO9.js +1 -0
- langflow/frontend/assets/index-2eM8vO_1.js +1 -0
- langflow/frontend/assets/index-3QvNfsNU.js +1 -0
- langflow/frontend/assets/index-8u6aKtXg.js +1 -0
- langflow/frontend/assets/index-8yC068Iv.js +1 -0
- langflow/frontend/assets/index-B0awTqqA.js +1 -0
- langflow/frontend/assets/index-B0cKUHO8.js +1 -0
- langflow/frontend/assets/index-B3RFMxT4.js +1 -0
- langflow/frontend/assets/index-B6-sqx2X.js +1 -0
- langflow/frontend/assets/index-B7KOcBzN.js +1 -0
- langflow/frontend/assets/index-B8ibz5hD.js +1 -0
- langflow/frontend/assets/index-B9A6jOQb.js +1 -0
- langflow/frontend/assets/index-BAGp2bya.js +1 -0
- langflow/frontend/assets/index-BAl_AzRL.js +1 -0
- langflow/frontend/assets/index-BBgD30VE.js +1 -0
- langflow/frontend/assets/index-BDlfTCYJ.js +1 -0
- langflow/frontend/assets/index-BEl-OOS0.js +1 -0
- langflow/frontend/assets/index-BFuvzLil.js +1 -0
- langflow/frontend/assets/index-BGRq8GJv.js +1 -0
- langflow/frontend/assets/index-BHnC351X.js +1 -0
- langflow/frontend/assets/index-BIEgG0ul.js +1 -0
- langflow/frontend/assets/index-BLtkDnaL.css +1 -0
- langflow/frontend/assets/index-BNenYBjs.js +1 -0
- langflow/frontend/assets/index-BNq7uHms.js +1 -0
- langflow/frontend/assets/index-BOjy0CSm.js +1 -0
- langflow/frontend/assets/index-BRCmp6Oh.js +1 -0
- langflow/frontend/assets/index-BSqEs9t3.js +1 -0
- langflow/frontend/assets/index-BUaHG4bV.js +1 -0
- langflow/frontend/assets/index-BVUScOdp.js +1 -0
- langflow/frontend/assets/index-BWSLLhBG.js +1 -0
- langflow/frontend/assets/index-BWzys5Ay.js +205 -0
- langflow/frontend/assets/index-BYQbwYlG.js +1 -0
- langflow/frontend/assets/index-BZ9uH2EJ.js +1 -0
- langflow/frontend/assets/index-B_7P7sEd.js +1 -0
- langflow/frontend/assets/index-B_JHg8Sk.js +13 -0
- langflow/frontend/assets/index-B_JSt491.js +1 -0
- langflow/frontend/assets/index-Ba1dNWA_.js +1 -0
- langflow/frontend/assets/index-Bb1wQDOw.js +127 -0
- langflow/frontend/assets/index-BbPlJYBb.js +1 -0
- langflow/frontend/assets/index-BblsE5ia.js +1 -0
- langflow/frontend/assets/index-BfocII0q.js +1 -0
- langflow/frontend/assets/index-Bgj0vE6c.js +1 -0
- langflow/frontend/assets/index-Bi_jQlqa.js +1 -0
- langflow/frontend/assets/index-Bj4iOyxK.js +1 -0
- langflow/frontend/assets/index-BjG5uWvH.js +1 -0
- langflow/frontend/assets/index-BkXxgTei.js +1 -0
- langflow/frontend/assets/index-BolOOsCp.js +1 -0
- langflow/frontend/assets/index-Bp-ms0PK.js +1 -0
- langflow/frontend/assets/index-Bqv37pOh.js +1 -0
- langflow/frontend/assets/index-BslwGWYB.js +1 -0
- langflow/frontend/assets/index-BssfzxG_.js +1 -0
- langflow/frontend/assets/index-BtPFrYYI.js +1 -0
- langflow/frontend/assets/index-C-RQmcwa.js +1 -0
- langflow/frontend/assets/index-C-ftkZ_l.js +1 -0
- langflow/frontend/assets/index-C13FitId.js +1 -0
- langflow/frontend/assets/index-C1s7CWMo.js +108 -0
- langflow/frontend/assets/index-C23jtRJn.js +1 -0
- langflow/frontend/assets/index-C355Z4EH.js +1 -0
- langflow/frontend/assets/index-C3Oh3vba.js +1 -0
- langflow/frontend/assets/index-C3bbZCwL.js +1 -0
- langflow/frontend/assets/index-C7F922c1.js +1 -0
- langflow/frontend/assets/index-C7QSsrvO.js +1 -0
- langflow/frontend/assets/index-C95OWZZc.js +1 -0
- langflow/frontend/assets/index-C9gVXdCS.js +1 -0
- langflow/frontend/assets/index-CAEEzMHo.js +495 -0
- langflow/frontend/assets/index-CBAfSWes.js +1 -0
- langflow/frontend/assets/index-CCX51czF.js +1 -0
- langflow/frontend/assets/index-CDBtGipg.js +1 -0
- langflow/frontend/assets/index-CEqbV9aW.js +1 -0
- langflow/frontend/assets/index-CG45SIG8.js +1 -0
- langflow/frontend/assets/index-CJZsr-fn.js +1 -0
- langflow/frontend/assets/index-CLqP4ThV.js +1 -0
- langflow/frontend/assets/index-CML0f0w4.js +281 -0
- langflow/frontend/assets/index-CNm6A6BM.js +185 -0
- langflow/frontend/assets/index-CO_jLIgI.js +1 -0
- langflow/frontend/assets/index-CRtzdAeu.js +1 -0
- langflow/frontend/assets/index-CS3Ngw83.js +1 -0
- langflow/frontend/assets/index-CTdC4lzt.js +1 -0
- langflow/frontend/assets/index-CTvkPi7K.js +1 -0
- langflow/frontend/assets/index-CU71A7YK.js +1 -0
- langflow/frontend/assets/index-CUD8QZLu.js +1 -0
- langflow/frontend/assets/index-CUzVk5As.js +1 -0
- langflow/frontend/assets/index-CVIYh5_p.js +1 -0
- langflow/frontend/assets/index-CWaWp_Le.js +1 -0
- langflow/frontend/assets/index-CX1TURzi.js +20 -0
- langflow/frontend/assets/index-CXGNUmlu.js +1 -0
- langflow/frontend/assets/index-CYoBMsTw.js +1 -0
- langflow/frontend/assets/index-CYzZkuJS.js +1 -0
- langflow/frontend/assets/index-CZ9UunKI.js +1 -0
- langflow/frontend/assets/index-C_7L2FMd.js +399 -0
- langflow/frontend/assets/index-C_lmeAGO.js +1 -0
- langflow/frontend/assets/index-Ca_qLqOH.js +1 -0
- langflow/frontend/assets/index-Cauz08_3.js +1 -0
- langflow/frontend/assets/index-CbZNwtS6.js +1 -0
- langflow/frontend/assets/index-Cd8oScAT.js +1 -0
- langflow/frontend/assets/index-Ce0gZhoH.js +1 -0
- langflow/frontend/assets/index-CfGiJBXr.js +1 -0
- langflow/frontend/assets/index-CfmrQMPR.js +1 -0
- langflow/frontend/assets/index-CgB19o0o.js +1 -0
- langflow/frontend/assets/index-CgF60jG5.js +767 -0
- langflow/frontend/assets/index-Ch4Ib2yi.js +1 -0
- langflow/frontend/assets/index-Chja5J5w.js +1 -0
- langflow/frontend/assets/index-Ci89-uPP.js +1 -0
- langflow/frontend/assets/index-Cij7mB1m.js +1 -0
- langflow/frontend/assets/index-Cip3CnxH.js +1 -0
- langflow/frontend/assets/index-ClFTrXZ8.js +1 -0
- langflow/frontend/assets/index-CnnkmUAF.js +1 -0
- langflow/frontend/assets/index-CoOe4v4a.js +1 -0
- langflow/frontend/assets/index-Cp5zqFeU.js +1 -0
- langflow/frontend/assets/index-Cp7QGwHe.js +1 -0
- langflow/frontend/assets/index-CsKpt96d.js +21 -0
- langflow/frontend/assets/index-Ct42xKTH.js +1 -0
- langflow/frontend/assets/index-CtAdB3RY.js +1 -0
- langflow/frontend/assets/index-CtJkBI21.js +1 -0
- langflow/frontend/assets/index-CwJ4yyjb.js +1 -0
- langflow/frontend/assets/index-CwVenOEP.js +1 -0
- langflow/frontend/assets/index-CxN5wJRu.js +1 -0
- langflow/frontend/assets/index-CyEcCmD1.js +1 -0
- langflow/frontend/assets/index-CyMdXWsx.js +1 -0
- langflow/frontend/assets/index-CyaqTQFh.js +1 -0
- langflow/frontend/assets/index-CzDoTQpR.js +1 -0
- langflow/frontend/assets/index-CzsMJ6Tk.js +1 -0
- langflow/frontend/assets/index-D0BV6pYe.js +1 -0
- langflow/frontend/assets/index-D0WUX5nc.js +1 -0
- langflow/frontend/assets/index-D1mWbUSj.js +1 -0
- langflow/frontend/assets/index-D2E6EWX6.js +1 -0
- langflow/frontend/assets/index-D5VxUdyH.js +1 -0
- langflow/frontend/assets/index-D6wnim8h.js +1 -0
- langflow/frontend/assets/index-DAZlpEsn.js +1 -0
- langflow/frontend/assets/index-DER2phOk.js +1 -0
- langflow/frontend/assets/index-DHwszsy_.js +1 -0
- langflow/frontend/assets/index-DIlf-UcK.js +1 -0
- langflow/frontend/assets/index-DJpmWZ8W.js +1 -0
- langflow/frontend/assets/index-DNlwCArs.js +1 -0
- langflow/frontend/assets/index-DS0zJxcJ.js +1 -0
- langflow/frontend/assets/index-DS8M_eNa.js +1 -0
- langflow/frontend/assets/index-DS_YcLKm.js +1 -0
- langflow/frontend/assets/index-DUxZ9sGb.js +1 -0
- langflow/frontend/assets/index-DW8b83iR.js +1 -0
- langflow/frontend/assets/index-DWOHEjbo.js +1 -0
- langflow/frontend/assets/index-DXdfsLsS.js +1 -0
- langflow/frontend/assets/index-DYgxrIRb.js +1 -0
- langflow/frontend/assets/index-DYo11wRx.js +1 -0
- langflow/frontend/assets/index-DcdYpXR7.js +1 -0
- langflow/frontend/assets/index-DeDDojCx.js +1 -0
- langflow/frontend/assets/index-DlxH0T7N.js +1 -0
- langflow/frontend/assets/index-DopCCHg1.js +1 -0
- langflow/frontend/assets/index-DsCyojdY.js +1 -0
- langflow/frontend/assets/index-Du1dTies.js +1 -0
- langflow/frontend/assets/index-DvQFd0fy.js +1 -0
- langflow/frontend/assets/index-DyqDlc4f.js +1 -0
- langflow/frontend/assets/index-FA5vt2_f.js +1 -0
- langflow/frontend/assets/index-FcQSIPAt.js +1 -0
- langflow/frontend/assets/index-G1YA_n78.js +1 -0
- langflow/frontend/assets/index-HfWWGGaG.js +1 -0
- langflow/frontend/assets/index-LsncXH1g.js +1 -0
- langflow/frontend/assets/index-MJURXou6.js +1 -0
- langflow/frontend/assets/index-MqcmMzAn.js +1 -0
- langflow/frontend/assets/index-OQM9QNyk.js +1 -0
- langflow/frontend/assets/index-QDCZLeI9.js +1 -0
- langflow/frontend/assets/index-S1qYDQ8G.js +1 -0
- langflow/frontend/assets/index-S7Rj3EPW.js +1 -0
- langflow/frontend/assets/index-TgWuwOJE.js +1 -0
- langflow/frontend/assets/index-YEyD4xA9.js +1 -0
- langflow/frontend/assets/index-YxUE82M7.js +1 -0
- langflow/frontend/assets/index-ZzxioQaX.js +1 -0
- langflow/frontend/assets/index-g2fAdVrS.js +1 -0
- langflow/frontend/assets/index-g_3RyeJ6.js +1 -0
- langflow/frontend/assets/index-iDSR0kJw.js +1 -0
- langflow/frontend/assets/index-kUdJ68dS.js +7 -0
- langflow/frontend/assets/index-lfWR3tut.js +1 -0
- langflow/frontend/assets/index-m14nOorE.js +1 -0
- langflow/frontend/assets/index-mK71J8fG.js +1 -0
- langflow/frontend/assets/index-mbMtLzSx.js +7322 -0
- langflow/frontend/assets/index-n0JQvrKh.js +381 -0
- langflow/frontend/assets/index-o0QSKLWN.js +1 -0
- langflow/frontend/assets/index-oTA3vzYD.js +1 -0
- langflow/frontend/assets/index-ogSlMmAD.js +1 -0
- langflow/frontend/assets/index-q6t1dndo.js +1 -0
- langflow/frontend/assets/index-xi5FCBF4.js +2 -0
- langflow/frontend/assets/index-yGkmYyDe.js +1 -0
- langflow/frontend/assets/index-yMoZ4cpa.js +1 -0
- langflow/frontend/assets/index-zGPB8voY.js +1 -0
- langflow/frontend/assets/indian-rupee-zJgOcLlR.js +6 -0
- langflow/frontend/assets/infinity-CvHj69bZ.js +6 -0
- langflow/frontend/assets/info-B-7KceRp.js +6 -0
- langflow/frontend/assets/inspection-panel-B-qqDQOn.js +6 -0
- langflow/frontend/assets/instagram-BXNi4Q3J.js +6 -0
- langflow/frontend/assets/italic-BF8slRrC.js +6 -0
- langflow/frontend/assets/iteration-ccw-BZ5c9OlZ.js +6 -0
- langflow/frontend/assets/iteration-cw-BS4XZXeO.js +6 -0
- langflow/frontend/assets/japanese-yen-DkRlagmh.js +6 -0
- langflow/frontend/assets/joystick-Co46lfJr.js +6 -0
- langflow/frontend/assets/kanban-DsXGVhmQ.js +6 -0
- langflow/frontend/assets/key-BZJIF1Tn.js +6 -0
- langflow/frontend/assets/key-round-C0PdOpFy.js +6 -0
- langflow/frontend/assets/key-square-Dsqy49WD.js +6 -0
- langflow/frontend/assets/keyboard-CNdrfG4M.js +6 -0
- langflow/frontend/assets/keyboard-music-CLM7d_Oh.js +6 -0
- langflow/frontend/assets/keyboard-off-7mcbANH6.js +6 -0
- langflow/frontend/assets/lamp-CbtQDMmM.js +6 -0
- langflow/frontend/assets/lamp-ceiling-C9Ixf3cT.js +6 -0
- langflow/frontend/assets/lamp-desk-QJm7TEwE.js +6 -0
- langflow/frontend/assets/lamp-floor-A97jfL-w.js +6 -0
- langflow/frontend/assets/lamp-wall-down-9Bb-cEg7.js +6 -0
- langflow/frontend/assets/lamp-wall-up-mTabuHtc.js +6 -0
- langflow/frontend/assets/land-plot-Df890GI2.js +6 -0
- langflow/frontend/assets/landmark-Dn_hcjHd.js +6 -0
- langflow/frontend/assets/languages-DFZD0QaT.js +6 -0
- langflow/frontend/assets/laptop-BsQGVR1I.js +6 -0
- langflow/frontend/assets/laptop-minimal-Bfh4C2GF.js +6 -0
- langflow/frontend/assets/laptop-minimal-check-D88HdUd3.js +6 -0
- langflow/frontend/assets/lasso-CHCr-Q6-.js +6 -0
- langflow/frontend/assets/lasso-select-WhWIk2m8.js +6 -0
- langflow/frontend/assets/laugh-B6DjKjHK.js +6 -0
- langflow/frontend/assets/layers-2-tpnDdg6M.js +6 -0
- langflow/frontend/assets/layers-bvstOshc.js +6 -0
- langflow/frontend/assets/layout-dashboard-5gRuygC1.js +6 -0
- langflow/frontend/assets/layout-grid-NKDqqMJN.js +6 -0
- langflow/frontend/assets/layout-list-CxX_BCTH.js +6 -0
- langflow/frontend/assets/layout-panel-left-D-TpgqW9.js +6 -0
- langflow/frontend/assets/layout-panel-top-Ccb4Utts.js +6 -0
- langflow/frontend/assets/layout-template-DsVgfWw5.js +6 -0
- langflow/frontend/assets/lazyIconImports-jYcYgZUq.js +2 -0
- langflow/frontend/assets/leaf-D8kusSQj.js +6 -0
- langflow/frontend/assets/leafy-green-B4ktdJgT.js +6 -0
- langflow/frontend/assets/lectern-vEn0Wbe4.js +6 -0
- langflow/frontend/assets/letter-text-CQ9S23a3.js +6 -0
- langflow/frontend/assets/library-BQNCezsr.js +6 -0
- langflow/frontend/assets/library-big-Bj3MGz0g.js +6 -0
- langflow/frontend/assets/life-buoy-C6FYqe22.js +6 -0
- langflow/frontend/assets/ligature-CE7B61Pu.js +6 -0
- langflow/frontend/assets/lightbulb-CEw1rI_9.js +6 -0
- langflow/frontend/assets/lightbulb-off-D-riwFpV.js +6 -0
- langflow/frontend/assets/link-2-C5VJPZHp.js +6 -0
- langflow/frontend/assets/link-2-off-fJGa_97b.js +6 -0
- langflow/frontend/assets/link-DN4GBilj.js +6 -0
- langflow/frontend/assets/linkedin-M2Tn8aeM.js +6 -0
- langflow/frontend/assets/list-check-hokUTD0j.js +6 -0
- langflow/frontend/assets/list-checks-t2B2mzs1.js +6 -0
- langflow/frontend/assets/list-collapse-D4_BL4A8.js +6 -0
- langflow/frontend/assets/list-end-CGaajUXD.js +6 -0
- langflow/frontend/assets/list-f8QmLbF-.js +6 -0
- langflow/frontend/assets/list-filter-CayB_9LJ.js +6 -0
- langflow/frontend/assets/list-filter-plus-COuo04Bq.js +6 -0
- langflow/frontend/assets/list-minus-Cs4HCaHv.js +6 -0
- langflow/frontend/assets/list-music-CX9HFuvz.js +6 -0
- langflow/frontend/assets/list-ordered-DkSX7Rnm.js +6 -0
- langflow/frontend/assets/list-plus-CVerU0Mb.js +6 -0
- langflow/frontend/assets/list-restart-BxApb3y3.js +6 -0
- langflow/frontend/assets/list-start-DqNS40mb.js +6 -0
- langflow/frontend/assets/list-todo-CJK4_fyE.js +6 -0
- langflow/frontend/assets/list-tree-CX8sFdAG.js +6 -0
- langflow/frontend/assets/list-video-DfFCwmtY.js +6 -0
- langflow/frontend/assets/list-x-BptaFsAa.js +6 -0
- langflow/frontend/assets/loader-CRSFunYW.js +6 -0
- langflow/frontend/assets/loader-circle-0LkUtuiB.js +6 -0
- langflow/frontend/assets/loader-pinwheel-DLHH0rfD.js +6 -0
- langflow/frontend/assets/locate-DD5VbapP.js +6 -0
- langflow/frontend/assets/locate-fixed-B_SEz1p1.js +6 -0
- langflow/frontend/assets/locate-off-CWKW4dme.js +6 -0
- langflow/frontend/assets/location-edit-BpcKMwVP.js +6 -0
- langflow/frontend/assets/lock-D7vOuFMx.js +6 -0
- langflow/frontend/assets/lock-keyhole-CsTzGP7N.js +6 -0
- langflow/frontend/assets/lock-keyhole-open-eNTqtYO7.js +6 -0
- langflow/frontend/assets/lock-open-DaT1TwPu.js +6 -0
- langflow/frontend/assets/log-in-CaGW87bb.js +6 -0
- langflow/frontend/assets/log-out-Don196Ow.js +6 -0
- langflow/frontend/assets/logs-LFCx9RB_.js +6 -0
- langflow/frontend/assets/lollipop-COKRhh7t.js +6 -0
- langflow/frontend/assets/luggage-DyrDd6fd.js +6 -0
- langflow/frontend/assets/magnet-B0a-sDJx.js +6 -0
- langflow/frontend/assets/mail-XvAnaTY5.js +6 -0
- langflow/frontend/assets/mail-check-DcGd2a0s.js +6 -0
- langflow/frontend/assets/mail-minus-5bENyY3v.js +6 -0
- langflow/frontend/assets/mail-open-ug2t-Vv3.js +6 -0
- langflow/frontend/assets/mail-plus-CcB3ROKv.js +6 -0
- langflow/frontend/assets/mail-question-OKq-XTi1.js +6 -0
- langflow/frontend/assets/mail-search-IJou4MLI.js +6 -0
- langflow/frontend/assets/mail-warning-K9EnhQSg.js +6 -0
- langflow/frontend/assets/mail-x-FSWI9Fnh.js +6 -0
- langflow/frontend/assets/mailbox-BeLDP2Xk.js +6 -0
- langflow/frontend/assets/mails-znGn5KH4.js +6 -0
- langflow/frontend/assets/map-pin-CdTN4uMO.js +6 -0
- langflow/frontend/assets/map-pin-check-D--L7E5O.js +6 -0
- langflow/frontend/assets/map-pin-check-inside-xOyNBlKX.js +6 -0
- langflow/frontend/assets/map-pin-house-BsfQnX5U.js +6 -0
- langflow/frontend/assets/map-pin-minus-DbGNmAqz.js +6 -0
- langflow/frontend/assets/map-pin-minus-inside-C2bo7x40.js +6 -0
- langflow/frontend/assets/map-pin-off-Bg5tjKyo.js +6 -0
- langflow/frontend/assets/map-pin-plus-BMp-VnQU.js +6 -0
- langflow/frontend/assets/map-pin-plus-inside-VfL2v9_X.js +6 -0
- langflow/frontend/assets/map-pin-x-WzpN4WMZ.js +6 -0
- langflow/frontend/assets/map-pin-x-inside-lbeeobIE.js +6 -0
- langflow/frontend/assets/map-pinned-DegJgpJO.js +6 -0
- langflow/frontend/assets/map-plus-B81ZQJ-u.js +6 -0
- langflow/frontend/assets/map-t3zI6Ezo.js +6 -0
- langflow/frontend/assets/mars-Dp-PcrSW.js +6 -0
- langflow/frontend/assets/mars-stroke-DQxw9rVE.js +6 -0
- langflow/frontend/assets/martini-B4rQn1UE.js +6 -0
- langflow/frontend/assets/maximize-2-D1jufgFj.js +6 -0
- langflow/frontend/assets/maximize-CNXWWTwP.js +6 -0
- langflow/frontend/assets/medal-DfcqecF9.js +6 -0
- langflow/frontend/assets/megaphone-ClOQ6pv2.js +6 -0
- langflow/frontend/assets/megaphone-off-C288cqYu.js +6 -0
- langflow/frontend/assets/meh-BAJYzNJ3.js +6 -0
- langflow/frontend/assets/memory-stick-cY6X5E0y.js +6 -0
- langflow/frontend/assets/menu-CeKeZCCn.js +6 -0
- langflow/frontend/assets/merge--PPwvYbV.js +6 -0
- langflow/frontend/assets/message-circle-code-BmSmfrvp.js +6 -0
- langflow/frontend/assets/message-circle-dashed-CIJFvzOR.js +6 -0
- langflow/frontend/assets/message-circle-heart-M4l7Lq2g.js +6 -0
- langflow/frontend/assets/message-circle-iIdjiaM4.js +6 -0
- langflow/frontend/assets/message-circle-more-Dpg5LAF-.js +6 -0
- langflow/frontend/assets/message-circle-off-CHsgIDiw.js +6 -0
- langflow/frontend/assets/message-circle-plus-77D8kuTb.js +6 -0
- langflow/frontend/assets/message-circle-question-CXuvhmVI.js +6 -0
- langflow/frontend/assets/message-circle-reply-B6wk4uSS.js +6 -0
- langflow/frontend/assets/message-circle-warning-DAZlTuzX.js +6 -0
- langflow/frontend/assets/message-circle-x-DNWIiylq.js +6 -0
- langflow/frontend/assets/message-square-DZD7THfY.js +6 -0
- langflow/frontend/assets/message-square-code-B_lhrlz1.js +6 -0
- langflow/frontend/assets/message-square-dashed-C14pkxzA.js +6 -0
- langflow/frontend/assets/message-square-diff-BQ4Q4uOS.js +6 -0
- langflow/frontend/assets/message-square-dot-BBGGmSCH.js +6 -0
- langflow/frontend/assets/message-square-heart-C_GNBsKZ.js +6 -0
- langflow/frontend/assets/message-square-lock-DmFTamDZ.js +6 -0
- langflow/frontend/assets/message-square-more-CGM5cxQL.js +6 -0
- langflow/frontend/assets/message-square-off-Dw32KmRA.js +6 -0
- langflow/frontend/assets/message-square-plus-BSO9POxX.js +6 -0
- langflow/frontend/assets/message-square-quote-Drf4R-vX.js +6 -0
- langflow/frontend/assets/message-square-reply-Dm5bdHd-.js +6 -0
- langflow/frontend/assets/message-square-share-DgoItwHq.js +6 -0
- langflow/frontend/assets/message-square-text-CJnYTNkV.js +6 -0
- langflow/frontend/assets/message-square-warning-5DzAM4m5.js +6 -0
- langflow/frontend/assets/message-square-x-Ja82L-Lg.js +6 -0
- langflow/frontend/assets/messages-square-BulGT2lX.js +6 -0
- langflow/frontend/assets/mic-3vdGrfQZ.js +6 -0
- langflow/frontend/assets/mic-off-BEdTNPnB.js +6 -0
- langflow/frontend/assets/mic-vocal-CtfHfAwv.js +6 -0
- langflow/frontend/assets/microchip-CmlTNL96.js +6 -0
- langflow/frontend/assets/microscope-C5J4I9OP.js +6 -0
- langflow/frontend/assets/microwave-B3NU1aov.js +6 -0
- langflow/frontend/assets/milestone-DjAZ2oFU.js +6 -0
- langflow/frontend/assets/milk-ChDct91d.js +6 -0
- langflow/frontend/assets/milk-off-B22LvqkH.js +6 -0
- langflow/frontend/assets/minimize-2-ewvzYPNd.js +6 -0
- langflow/frontend/assets/minimize-C0Y0-58O.js +6 -0
- langflow/frontend/assets/monitor-DDOQRbHw.js +6 -0
- langflow/frontend/assets/monitor-check-CxUebj9S.js +6 -0
- langflow/frontend/assets/monitor-cog-YF13OORq.js +6 -0
- langflow/frontend/assets/monitor-dot-Cc82F286.js +6 -0
- langflow/frontend/assets/monitor-down-CtqEhtU5.js +6 -0
- langflow/frontend/assets/monitor-off-Bw7Ty3-I.js +6 -0
- langflow/frontend/assets/monitor-pause-Dg89MSxJ.js +6 -0
- langflow/frontend/assets/monitor-play-D506SCSi.js +6 -0
- langflow/frontend/assets/monitor-smartphone-DU54faq2.js +6 -0
- langflow/frontend/assets/monitor-speaker-EZfx0r9O.js +6 -0
- langflow/frontend/assets/monitor-stop-BRgMxgFF.js +6 -0
- langflow/frontend/assets/monitor-up-CDxhd4R5.js +6 -0
- langflow/frontend/assets/monitor-x-CdYRDl5w.js +6 -0
- langflow/frontend/assets/moon-hVZiHztG.js +6 -0
- langflow/frontend/assets/moon-star-CxGlaBYE.js +6 -0
- langflow/frontend/assets/mountain-DIHUnzV7.js +6 -0
- langflow/frontend/assets/mountain-snow-CV5KEfto.js +6 -0
- langflow/frontend/assets/mouse-D5IxaWj4.js +6 -0
- langflow/frontend/assets/mouse-off-BP-8VuEF.js +6 -0
- langflow/frontend/assets/mouse-pointer-2-DPNU0AlS.js +6 -0
- langflow/frontend/assets/mouse-pointer-DTV0Lt-u.js +6 -0
- langflow/frontend/assets/mouse-pointer-ban-8tzGIPhn.js +6 -0
- langflow/frontend/assets/mouse-pointer-click-Dfdzt1J4.js +6 -0
- langflow/frontend/assets/move-3d-DpyjEzLl.js +6 -0
- langflow/frontend/assets/move-CKOyzdP1.js +6 -0
- langflow/frontend/assets/move-diagonal-2-tiBVBFsk.js +6 -0
- langflow/frontend/assets/move-diagonal-dIJnF1uB.js +6 -0
- langflow/frontend/assets/move-down-bxp1hUKY.js +6 -0
- langflow/frontend/assets/move-down-left-9RfE88vO.js +6 -0
- langflow/frontend/assets/move-down-right-pNxyVuYx.js +6 -0
- langflow/frontend/assets/move-horizontal-BR3j8GvG.js +6 -0
- langflow/frontend/assets/move-left-B_JTbBvp.js +6 -0
- langflow/frontend/assets/move-right-Cnc0MMHM.js +6 -0
- langflow/frontend/assets/move-up-C5xXA1sr.js +6 -0
- langflow/frontend/assets/move-up-left-CCrMYqp2.js +6 -0
- langflow/frontend/assets/move-up-right-CV6MlpIA.js +6 -0
- langflow/frontend/assets/move-vertical-CVvn0VvO.js +6 -0
- langflow/frontend/assets/music-2-C8zticfA.js +6 -0
- langflow/frontend/assets/music-3-9GbaJYhH.js +6 -0
- langflow/frontend/assets/music-4-Ce_sMfg6.js +6 -0
- langflow/frontend/assets/music-BLkfznVn.js +6 -0
- langflow/frontend/assets/navigation-2-DCAE9iyE.js +6 -0
- langflow/frontend/assets/navigation-2-off-zyubRS6s.js +6 -0
- langflow/frontend/assets/navigation-Ccdse-fC.js +6 -0
- langflow/frontend/assets/navigation-off-BmhPvLwJ.js +6 -0
- langflow/frontend/assets/network-BzeEXHLI.js +6 -0
- langflow/frontend/assets/newspaper-DiBxbO8j.js +6 -0
- langflow/frontend/assets/nfc-BdvWoCYb.js +6 -0
- langflow/frontend/assets/non-binary-pY9-4hjY.js +6 -0
- langflow/frontend/assets/notebook-Dpqn-n-l.js +6 -0
- langflow/frontend/assets/notebook-pen-CWFzSs7K.js +6 -0
- langflow/frontend/assets/notebook-tabs-p4B0fwNZ.js +6 -0
- langflow/frontend/assets/notebook-text-DmWmNbDF.js +6 -0
- langflow/frontend/assets/notepad-text-B0sn1sgX.js +6 -0
- langflow/frontend/assets/notepad-text-dashed-DJ0HLb26.js +6 -0
- langflow/frontend/assets/nut-DlyZy_ec.js +6 -0
- langflow/frontend/assets/nut-off-CzKhPbb9.js +6 -0
- langflow/frontend/assets/octagon-DOllS3E2.js +6 -0
- langflow/frontend/assets/octagon-alert-md8Oao7u.js +6 -0
- langflow/frontend/assets/octagon-minus-Cc_gHYtC.js +6 -0
- langflow/frontend/assets/octagon-pause-C7MUZYuh.js +6 -0
- langflow/frontend/assets/octagon-x-BQYO8GMn.js +6 -0
- langflow/frontend/assets/omega-CU1MpvJU.js +6 -0
- langflow/frontend/assets/option-C5Rg07Sl.js +6 -0
- langflow/frontend/assets/orbit-B3ocM8-d.js +6 -0
- langflow/frontend/assets/origami-JzHXL6Dk.js +6 -0
- langflow/frontend/assets/package-2-DO44AWHc.js +6 -0
- langflow/frontend/assets/package-CwrFrAMu.js +6 -0
- langflow/frontend/assets/package-check-BRxPtA5p.js +6 -0
- langflow/frontend/assets/package-minus-YFaS6BaX.js +6 -0
- langflow/frontend/assets/package-open-FnJmHpJv.js +6 -0
- langflow/frontend/assets/package-plus-CAjmdTne.js +6 -0
- langflow/frontend/assets/package-search-CdBJetKl.js +6 -0
- langflow/frontend/assets/package-x-BLKjO2eq.js +6 -0
- langflow/frontend/assets/paint-bucket-DoOTrFVu.js +6 -0
- langflow/frontend/assets/paint-roller-Cb2MSctw.js +6 -0
- langflow/frontend/assets/paintbrush-dnz2OAMR.js +6 -0
- langflow/frontend/assets/paintbrush-vertical-C5UrMLvF.js +6 -0
- langflow/frontend/assets/palette-BxqFp5t2.js +6 -0
- langflow/frontend/assets/panel-bottom-close-ncnmJhg8.js +6 -0
- langflow/frontend/assets/panel-bottom-dashed-UdmaCgY7.js +6 -0
- langflow/frontend/assets/panel-bottom-eTZmuraY.js +6 -0
- langflow/frontend/assets/panel-bottom-open-Dbs_WqhR.js +6 -0
- langflow/frontend/assets/panel-left-close-DV4DR3ie.js +6 -0
- langflow/frontend/assets/panel-left-dashed-C1sCc2jK.js +6 -0
- langflow/frontend/assets/panel-left-open-BQnsccxM.js +6 -0
- langflow/frontend/assets/panel-right-BFuTI62x.js +6 -0
- langflow/frontend/assets/panel-right-close-bod1-jOq.js +6 -0
- langflow/frontend/assets/panel-right-dashed-MxJPl1lQ.js +6 -0
- langflow/frontend/assets/panel-right-open-CDgnWaIW.js +6 -0
- langflow/frontend/assets/panel-top-CenicwIv.js +6 -0
- langflow/frontend/assets/panel-top-close-Cq2nC7LP.js +6 -0
- langflow/frontend/assets/panel-top-dashed-CzMSCT2o.js +6 -0
- langflow/frontend/assets/panel-top-open-fg5kvR48.js +6 -0
- langflow/frontend/assets/panels-left-bottom-T5CveQA4.js +6 -0
- langflow/frontend/assets/panels-right-bottom-acfqz5Hm.js +6 -0
- langflow/frontend/assets/panels-top-left-BeWxDQBs.js +6 -0
- langflow/frontend/assets/paperclip-D2MRSHHN.js +6 -0
- langflow/frontend/assets/parentheses-CQmWAgPc.js +6 -0
- langflow/frontend/assets/parking-meter-ib6v0j9a.js +6 -0
- langflow/frontend/assets/party-popper-CBwSjWoy.js +6 -0
- langflow/frontend/assets/pause-4ik9vRpz.js +6 -0
- langflow/frontend/assets/paw-print-Bi51_Rdl.js +6 -0
- langflow/frontend/assets/pc-case-Dd2iFvhG.js +6 -0
- langflow/frontend/assets/pen-BsVMrYOM.js +6 -0
- langflow/frontend/assets/pen-line-CfSYJk5k.js +6 -0
- langflow/frontend/assets/pen-off-DmI4mxKO.js +6 -0
- langflow/frontend/assets/pen-tool-DpN5IQqK.js +6 -0
- langflow/frontend/assets/pencil-CnvSqq9E.js +6 -0
- langflow/frontend/assets/pencil-line-Cv2Q45K5.js +6 -0
- langflow/frontend/assets/pencil-off-C49fCIW7.js +6 -0
- langflow/frontend/assets/pencil-ruler-DAeg2bdi.js +6 -0
- langflow/frontend/assets/pentagon-D_2Fd2hP.js +6 -0
- langflow/frontend/assets/percent-CxnPPS9D.js +6 -0
- langflow/frontend/assets/person-standing-BmeKuCs0.js +6 -0
- langflow/frontend/assets/philippine-peso-BUadQ7aL.js +6 -0
- langflow/frontend/assets/phone-Dc0-XP1y.js +6 -0
- langflow/frontend/assets/phone-call-C1VXoEvz.js +6 -0
- langflow/frontend/assets/phone-forwarded-CItqQhbm.js +6 -0
- langflow/frontend/assets/phone-incoming-DvtXIK_d.js +6 -0
- langflow/frontend/assets/phone-missed-BSgT0ES_.js +6 -0
- langflow/frontend/assets/phone-off-BLfKEnqS.js +6 -0
- langflow/frontend/assets/phone-outgoing-CB9jO0wi.js +6 -0
- langflow/frontend/assets/pi-D8lV65pI.js +6 -0
- langflow/frontend/assets/piano-ym7-VfOd.js +6 -0
- langflow/frontend/assets/pickaxe-xGhSTRIS.js +6 -0
- langflow/frontend/assets/picture-in-picture-2-DYP4WRm-.js +6 -0
- langflow/frontend/assets/picture-in-picture-Dq9rZO4x.js +6 -0
- langflow/frontend/assets/piggy-bank-BCCB1R4A.js +6 -0
- langflow/frontend/assets/pilcrow-CU7Rv-8i.js +6 -0
- langflow/frontend/assets/pilcrow-left-BIfybUyH.js +6 -0
- langflow/frontend/assets/pilcrow-right-DvZgqqvx.js +6 -0
- langflow/frontend/assets/pill-CaKp9nyY.js +6 -0
- langflow/frontend/assets/pill-bottle-CBf4Z-OM.js +6 -0
- langflow/frontend/assets/pin-BeZjDACi.js +6 -0
- langflow/frontend/assets/pin-off-TSQkgKaQ.js +6 -0
- langflow/frontend/assets/pipette-CI5r7aID.js +6 -0
- langflow/frontend/assets/pizza-DIdkWDbC.js +6 -0
- langflow/frontend/assets/plane-DasyaaeG.js +6 -0
- langflow/frontend/assets/plane-landing-DY8EBUup.js +6 -0
- langflow/frontend/assets/plane-takeoff-DWRMHcUu.js +6 -0
- langflow/frontend/assets/play-BHvJZ-tK.js +6 -0
- langflow/frontend/assets/plug-2-DYFrpJRx.js +6 -0
- langflow/frontend/assets/plug-D74j5l8U.js +6 -0
- langflow/frontend/assets/plug-zap-PX9X-ieh.js +6 -0
- langflow/frontend/assets/pocket-BuhWmNdN.js +6 -0
- langflow/frontend/assets/pocket-knife-8QhaEEq2.js +6 -0
- langflow/frontend/assets/podcast-Ds4Zox1G.js +6 -0
- langflow/frontend/assets/pointer-BQ50bTCS.js +6 -0
- langflow/frontend/assets/pointer-off-C7_83iBT.js +6 -0
- langflow/frontend/assets/popcorn-wzvIrx8u.js +6 -0
- langflow/frontend/assets/popsicle-MwkE2Aee.js +6 -0
- langflow/frontend/assets/pound-sterling-Bn-sGQ1C.js +6 -0
- langflow/frontend/assets/power-BMEfl_mV.js +6 -0
- langflow/frontend/assets/power-off-Cy6CcHqh.js +6 -0
- langflow/frontend/assets/presentation-FcvaTax4.js +6 -0
- langflow/frontend/assets/printer-C_9Hzhe-.js +6 -0
- langflow/frontend/assets/printer-check-D9LFftoB.js +6 -0
- langflow/frontend/assets/projector-ByOYTWy6.js +6 -0
- langflow/frontend/assets/proportions-DZ1pcxxR.js +6 -0
- langflow/frontend/assets/puzzle-Cb7C_lxv.js +6 -0
- langflow/frontend/assets/pyramid-DGX6Ikl-.js +6 -0
- langflow/frontend/assets/qr-code-CYlOb1Hm.js +6 -0
- langflow/frontend/assets/quote-BpeCXW04.js +6 -0
- langflow/frontend/assets/rabbit-Dy4wj8w9.js +6 -0
- langflow/frontend/assets/radar-Cqq2P4fW.js +6 -0
- langflow/frontend/assets/radiation-TavajO3t.js +6 -0
- langflow/frontend/assets/radical-CNj7CXiI.js +6 -0
- langflow/frontend/assets/radio-B1SQYPzL.js +6 -0
- langflow/frontend/assets/radio-receiver-BpKzb-rN.js +6 -0
- langflow/frontend/assets/radio-tower-Civ7am11.js +6 -0
- langflow/frontend/assets/radius-DelXvZFb.js +6 -0
- langflow/frontend/assets/rail-symbol-B6EGzEUL.js +6 -0
- langflow/frontend/assets/rainbow-Mum3y2K8.js +6 -0
- langflow/frontend/assets/rat-BQkQBdtC.js +6 -0
- langflow/frontend/assets/ratio-B0hNnb8h.js +6 -0
- langflow/frontend/assets/receipt-NheD0Ao7.js +6 -0
- langflow/frontend/assets/receipt-cent-8DaAbSV_.js +6 -0
- langflow/frontend/assets/receipt-euro-c2YO7kB0.js +6 -0
- langflow/frontend/assets/receipt-indian-rupee-BsgzYTIw.js +6 -0
- langflow/frontend/assets/receipt-japanese-yen-BP4fBfYx.js +6 -0
- langflow/frontend/assets/receipt-pound-sterling-CUtyAkvm.js +6 -0
- langflow/frontend/assets/receipt-russian-ruble-Wlih9_yF.js +6 -0
- langflow/frontend/assets/receipt-swiss-franc-DWJOU2sF.js +6 -0
- langflow/frontend/assets/receipt-text-WlDOUmGq.js +6 -0
- langflow/frontend/assets/rectangle-ellipsis-DrWCArBe.js +6 -0
- langflow/frontend/assets/rectangle-goggles-Byxj78Cj.js +6 -0
- langflow/frontend/assets/rectangle-horizontal-B3mv0dAV.js +6 -0
- langflow/frontend/assets/rectangle-vertical-lqaaALf_.js +6 -0
- langflow/frontend/assets/recycle-aeVxe9ox.js +6 -0
- langflow/frontend/assets/redo-2-BkHbS3Ol.js +6 -0
- langflow/frontend/assets/redo-C_26RijB.js +6 -0
- langflow/frontend/assets/redo-dot-BeGXpkFE.js +6 -0
- langflow/frontend/assets/refresh-ccw-BF4urLmN.js +6 -0
- langflow/frontend/assets/refresh-ccw-dot-CqhgyLBB.js +6 -0
- langflow/frontend/assets/refresh-cw-92xD8szx.js +6 -0
- langflow/frontend/assets/refresh-cw-off-CcODXuaZ.js +6 -0
- langflow/frontend/assets/refrigerator-D1WV19AY.js +6 -0
- langflow/frontend/assets/regex-CEhziw9j.js +6 -0
- langflow/frontend/assets/remove-formatting-CrWZY5zo.js +6 -0
- langflow/frontend/assets/repeat-1-DoopLbsZ.js +6 -0
- langflow/frontend/assets/repeat-2-CmM6Xe4n.js +6 -0
- langflow/frontend/assets/repeat-CBnSNzwD.js +6 -0
- langflow/frontend/assets/replace-DIjMhOu3.js +6 -0
- langflow/frontend/assets/replace-all-DRH83F7a.js +6 -0
- langflow/frontend/assets/reply-B4mXB-Wv.js +6 -0
- langflow/frontend/assets/reply-all-ChQ85rpD.js +6 -0
- langflow/frontend/assets/rewind-DX7H_a9y.js +6 -0
- langflow/frontend/assets/ribbon-gu8wh58M.js +6 -0
- langflow/frontend/assets/rocket-DLR5-Yxm.js +6 -0
- langflow/frontend/assets/rocking-chair-BT25Twcp.js +6 -0
- langflow/frontend/assets/roller-coaster-CW4P8ueW.js +6 -0
- langflow/frontend/assets/rotate-3d-DllU6r2A.js +6 -0
- langflow/frontend/assets/rotate-ccw-DJKy3x_z.js +6 -0
- langflow/frontend/assets/rotate-ccw-key-C6dpwRcQ.js +6 -0
- langflow/frontend/assets/rotate-ccw-square-DGIgmdjQ.js +6 -0
- langflow/frontend/assets/rotate-cw-CuOYYnRd.js +6 -0
- langflow/frontend/assets/rotate-cw-square-DExBGsLt.js +6 -0
- langflow/frontend/assets/route-BuYQuGvp.js +6 -0
- langflow/frontend/assets/route-off-CQaPgX8f.js +6 -0
- langflow/frontend/assets/router-DSykRBBM.js +6 -0
- langflow/frontend/assets/rows-2-BvK7htUX.js +6 -0
- langflow/frontend/assets/rows-3-B4dmLbIf.js +6 -0
- langflow/frontend/assets/rows-4-izngHmxQ.js +6 -0
- langflow/frontend/assets/rss-BUuvJaxP.js +6 -0
- langflow/frontend/assets/ruler-CUrLlh8A.js +6 -0
- langflow/frontend/assets/ruler-dimension-line-Ib8nUefi.js +6 -0
- langflow/frontend/assets/russian-ruble-vEWDBqfj.js +6 -0
- langflow/frontend/assets/sailboat-BHW70xlU.js +6 -0
- langflow/frontend/assets/salad-CshAsVBT.js +6 -0
- langflow/frontend/assets/sandwich-DcbdAEEq.js +6 -0
- langflow/frontend/assets/satellite-CfVgkpZy.js +6 -0
- langflow/frontend/assets/satellite-dish-yH0GJkPf.js +6 -0
- langflow/frontend/assets/saudi-riyal-D5aH3cXo.js +6 -0
- langflow/frontend/assets/save-CtvXsL6M.js +6 -0
- langflow/frontend/assets/save-all-Dmog_kSn.js +6 -0
- langflow/frontend/assets/save-off-BEi0Jd7s.js +6 -0
- langflow/frontend/assets/scale-3d-DUxdspRp.js +6 -0
- langflow/frontend/assets/scale-D58nk3AP.js +6 -0
- langflow/frontend/assets/scaling-DaZsBNp5.js +6 -0
- langflow/frontend/assets/scan-CvM3oDXH.js +6 -0
- langflow/frontend/assets/scan-barcode-C_nBCUzn.js +6 -0
- langflow/frontend/assets/scan-eye-BKW4Xqqi.js +6 -0
- langflow/frontend/assets/scan-face-DeFh5a4D.js +6 -0
- langflow/frontend/assets/scan-heart-DY3uqm29.js +6 -0
- langflow/frontend/assets/scan-line-BCvKraXq.js +6 -0
- langflow/frontend/assets/scan-qr-code-YkxbT531.js +6 -0
- langflow/frontend/assets/scan-search-BNvPOaGn.js +6 -0
- langflow/frontend/assets/scan-text-rGK4NP72.js +6 -0
- langflow/frontend/assets/school-etj3P8BW.js +6 -0
- langflow/frontend/assets/scissors-CX4bEm4e.js +6 -0
- langflow/frontend/assets/scissors-line-dashed-CZ32xsQz.js +6 -0
- langflow/frontend/assets/screen-share-DUmcrUWR.js +6 -0
- langflow/frontend/assets/screen-share-off-DLTixjT7.js +6 -0
- langflow/frontend/assets/scroll-DFumuDXh.js +6 -0
- langflow/frontend/assets/scroll-text-1CUpG1NV.js +6 -0
- langflow/frontend/assets/search-check-c21LgDct.js +6 -0
- langflow/frontend/assets/search-code-CGzVNaMf.js +6 -0
- langflow/frontend/assets/search-slash-BLQ1zmHQ.js +6 -0
- langflow/frontend/assets/search-x-DjZCUKUJ.js +6 -0
- langflow/frontend/assets/section-xm9xMjek.js +6 -0
- langflow/frontend/assets/send-BHelvKY_.js +6 -0
- langflow/frontend/assets/send-horizontal-wy-Qzi2A.js +6 -0
- langflow/frontend/assets/send-to-back-DVRpXzLe.js +6 -0
- langflow/frontend/assets/separator-horizontal-DO8ekX7H.js +6 -0
- langflow/frontend/assets/separator-vertical-BCHM8Wyi.js +6 -0
- langflow/frontend/assets/server-cog--68U9lLF.js +6 -0
- langflow/frontend/assets/server-crash-BaQMAnKA.js +6 -0
- langflow/frontend/assets/server-dwFSj7D0.js +6 -0
- langflow/frontend/assets/server-off-BXtT97Nv.js +6 -0
- langflow/frontend/assets/settings-2-eEtVHl6k.js +6 -0
- langflow/frontend/assets/settings-jwYcmQvx.js +6 -0
- langflow/frontend/assets/shapes-D1HxbBPB.js +6 -0
- langflow/frontend/assets/share-2-CNVWHA5X.js +6 -0
- langflow/frontend/assets/share-_Ss_O_jS.js +6 -0
- langflow/frontend/assets/sheet-MEH0l2Ny.js +6 -0
- langflow/frontend/assets/shell-C8mdjaAA.js +6 -0
- langflow/frontend/assets/shield-Bufhr6Q2.js +6 -0
- langflow/frontend/assets/shield-alert-BQPlyrOK.js +6 -0
- langflow/frontend/assets/shield-ban-B88Z73tF.js +6 -0
- langflow/frontend/assets/shield-check-nhhnEDqb.js +6 -0
- langflow/frontend/assets/shield-ellipsis-BB6VWr4x.js +6 -0
- langflow/frontend/assets/shield-half-eLHWev2O.js +6 -0
- langflow/frontend/assets/shield-minus-CL_xkTJ7.js +6 -0
- langflow/frontend/assets/shield-off-DhzzXg--.js +6 -0
- langflow/frontend/assets/shield-plus-BF4xQJUC.js +6 -0
- langflow/frontend/assets/shield-question-zJhYxmUP.js +6 -0
- langflow/frontend/assets/shield-user-DDteWWIP.js +6 -0
- langflow/frontend/assets/shield-x-Bm3s2HiU.js +6 -0
- langflow/frontend/assets/ship-B_g_km-p.js +6 -0
- langflow/frontend/assets/ship-wheel-DnLTel39.js +6 -0
- langflow/frontend/assets/shirt-CiyOZV3M.js +6 -0
- langflow/frontend/assets/shopping-bag-CAr5PPfq.js +6 -0
- langflow/frontend/assets/shopping-basket-BZfeOXa8.js +6 -0
- langflow/frontend/assets/shopping-cart-Zq3eXsD2.js +6 -0
- langflow/frontend/assets/shovel-CasOPdTj.js +6 -0
- langflow/frontend/assets/shower-head-O9YDKQWC.js +6 -0
- langflow/frontend/assets/shredder-JZE1u-vD.js +6 -0
- langflow/frontend/assets/shrimp-L_AF8TRX.js +6 -0
- langflow/frontend/assets/shrink-Dt2ya0tf.js +6 -0
- langflow/frontend/assets/shrub-BSrl1hBI.js +6 -0
- langflow/frontend/assets/shuffle-DE9sRcfW.js +6 -0
- langflow/frontend/assets/sigma-ZZ_ZLube.js +6 -0
- langflow/frontend/assets/signal-BQ2QYa9H.js +6 -0
- langflow/frontend/assets/signal-high-C-jFYN1Z.js +6 -0
- langflow/frontend/assets/signal-low-BRaWc0NI.js +6 -0
- langflow/frontend/assets/signal-medium-DjJWv463.js +6 -0
- langflow/frontend/assets/signal-zero-D6y8ETIN.js +6 -0
- langflow/frontend/assets/signature-CuWsQQh-.js +6 -0
- langflow/frontend/assets/signpost-Cx4YXYKD.js +6 -0
- langflow/frontend/assets/signpost-big-CL_aHuNJ.js +6 -0
- langflow/frontend/assets/siren-CtCi-8ad.js +6 -0
- langflow/frontend/assets/skip-back--whDhpwj.js +6 -0
- langflow/frontend/assets/skip-forward-B9Hg6t4g.js +6 -0
- langflow/frontend/assets/skull-PQgjtsF0.js +6 -0
- langflow/frontend/assets/slack-BWRzy8-p.js +6 -0
- langflow/frontend/assets/slash-BEfBn9_V.js +6 -0
- langflow/frontend/assets/slice-CxQNkK0K.js +6 -0
- langflow/frontend/assets/sliders-horizontal-BEI8Gtum.js +6 -0
- langflow/frontend/assets/sliders-vertical-D2TlIu3E.js +6 -0
- langflow/frontend/assets/smartphone-DLpNZv2_.js +6 -0
- langflow/frontend/assets/smartphone-charging-jDUjQVuW.js +6 -0
- langflow/frontend/assets/smartphone-nfc-Cq83AszU.js +6 -0
- langflow/frontend/assets/smile-DKjVIgOp.js +6 -0
- langflow/frontend/assets/smile-plus-1IsKgG2X.js +6 -0
- langflow/frontend/assets/snail-DC8tQ4-g.js +6 -0
- langflow/frontend/assets/snowflake-CP8A7Nxu.js +6 -0
- langflow/frontend/assets/sofa-D2KnnvJl.js +6 -0
- langflow/frontend/assets/soup-BTKzUjpe.js +6 -0
- langflow/frontend/assets/space-VkR5jeU4.js +6 -0
- langflow/frontend/assets/spade-BW0kGNh3.js +6 -0
- langflow/frontend/assets/sparkle-K8qo8h3I.js +6 -0
- langflow/frontend/assets/sparkles-DTjfFniJ.js +6 -0
- langflow/frontend/assets/speaker-CRtL_E0x.js +6 -0
- langflow/frontend/assets/speech-BeB3sEp6.js +6 -0
- langflow/frontend/assets/spell-check-2-BDBt2H-d.js +6 -0
- langflow/frontend/assets/spell-check-DU3zIsvq.js +6 -0
- langflow/frontend/assets/spline-gs-J2kwo.js +6 -0
- langflow/frontend/assets/spline-pointer-CSzNxuiA.js +6 -0
- langflow/frontend/assets/split-BmR8fHnr.js +6 -0
- langflow/frontend/assets/spray-can-CrxDKZ--.js +6 -0
- langflow/frontend/assets/sprout-ca131VKi.js +6 -0
- langflow/frontend/assets/square-DzZwRfMN.js +6 -0
- langflow/frontend/assets/square-activity-Cfp0ukpr.js +6 -0
- langflow/frontend/assets/square-arrow-down-C1aZu0lU.js +6 -0
- langflow/frontend/assets/square-arrow-down-left-MPNOcAv_.js +6 -0
- langflow/frontend/assets/square-arrow-down-right-CBYggFOh.js +6 -0
- langflow/frontend/assets/square-arrow-left-CWFMHl8M.js +6 -0
- langflow/frontend/assets/square-arrow-out-down-left-Cmvg3FIf.js +6 -0
- langflow/frontend/assets/square-arrow-out-down-right-PgvOFxoY.js +6 -0
- langflow/frontend/assets/square-arrow-out-up-left-C6K5lRCv.js +6 -0
- langflow/frontend/assets/square-arrow-out-up-right-BXvVF3cD.js +6 -0
- langflow/frontend/assets/square-arrow-right-DrkASAmw.js +6 -0
- langflow/frontend/assets/square-arrow-up-Bjd9Tbol.js +6 -0
- langflow/frontend/assets/square-arrow-up-left-BL-LB113.js +6 -0
- langflow/frontend/assets/square-arrow-up-right-pZ0V5jyg.js +6 -0
- langflow/frontend/assets/square-asterisk-B_plChlc.js +6 -0
- langflow/frontend/assets/square-bottom-dashed-scissors-DXBaRY1E.js +6 -0
- langflow/frontend/assets/square-chart-gantt-32rgZyX9.js +6 -0
- langflow/frontend/assets/square-check-3_0Ldgr6.js +6 -0
- langflow/frontend/assets/square-check-big-D81Cxzf5.js +6 -0
- langflow/frontend/assets/square-chevron-down-Cj6V2eY9.js +6 -0
- langflow/frontend/assets/square-chevron-left-BsywNms_.js +6 -0
- langflow/frontend/assets/square-chevron-right-DvTaw9DJ.js +6 -0
- langflow/frontend/assets/square-chevron-up-DpIZqmdv.js +6 -0
- langflow/frontend/assets/square-code-BeB8Fj2Y.js +6 -0
- langflow/frontend/assets/square-dashed-DX3GQ9F3.js +6 -0
- langflow/frontend/assets/square-dashed-bottom-WTuQCeLI.js +6 -0
- langflow/frontend/assets/square-dashed-bottom-code-Bp2-lk5t.js +6 -0
- langflow/frontend/assets/square-dashed-kanban-C_uZCArJ.js +6 -0
- langflow/frontend/assets/square-dashed-mouse-pointer-BZRXTDhM.js +6 -0
- langflow/frontend/assets/square-divide-DSVGoj9G.js +6 -0
- langflow/frontend/assets/square-dot-CXa5DhFh.js +6 -0
- langflow/frontend/assets/square-equal-BqWlOTEn.js +6 -0
- langflow/frontend/assets/square-function-D284HdUu.js +6 -0
- langflow/frontend/assets/square-kanban-DUOvQnUH.js +6 -0
- langflow/frontend/assets/square-library-DDXw44wI.js +6 -0
- langflow/frontend/assets/square-m-BF_TQ9Cf.js +6 -0
- langflow/frontend/assets/square-menu-B-dB2eM6.js +6 -0
- langflow/frontend/assets/square-minus-HfnCHWdD.js +6 -0
- langflow/frontend/assets/square-mouse-pointer-Dt-RWrXN.js +6 -0
- langflow/frontend/assets/square-parking-BvrIdmig.js +6 -0
- langflow/frontend/assets/square-parking-off-8FVQFwCx.js +6 -0
- langflow/frontend/assets/square-pen-CLnMBjnx.js +6 -0
- langflow/frontend/assets/square-percent-CdTlqfp3.js +6 -0
- langflow/frontend/assets/square-pi-CsvibBVl.js +6 -0
- langflow/frontend/assets/square-pilcrow-pS5Ul-bK.js +6 -0
- langflow/frontend/assets/square-play-DI134_AO.js +6 -0
- langflow/frontend/assets/square-plus-D4UcrriC.js +6 -0
- langflow/frontend/assets/square-power-BcftUNEC.js +6 -0
- langflow/frontend/assets/square-radical-D1Qj2mLw.js +6 -0
- langflow/frontend/assets/square-round-corner-uTJh6kyi.js +6 -0
- langflow/frontend/assets/square-scissors-DZWmZQt3.js +6 -0
- langflow/frontend/assets/square-sigma-D30LygvT.js +6 -0
- langflow/frontend/assets/square-slash-GLHug1Bf.js +6 -0
- langflow/frontend/assets/square-split-horizontal-CVQOp8wE.js +6 -0
- langflow/frontend/assets/square-split-vertical-C0jBnjl6.js +6 -0
- langflow/frontend/assets/square-square-BqSqlkC1.js +6 -0
- langflow/frontend/assets/square-stack-9Y2YO8T1.js +6 -0
- langflow/frontend/assets/square-terminal-DiUYFcJv.js +6 -0
- langflow/frontend/assets/square-user-BAUZZsCx.js +6 -0
- langflow/frontend/assets/square-user-round-Bzx1c4LE.js +6 -0
- langflow/frontend/assets/square-x-C_y-SDM1.js +6 -0
- langflow/frontend/assets/squares-exclude-BO9MBffP.js +6 -0
- langflow/frontend/assets/squares-intersect-Br9MQtTg.js +6 -0
- langflow/frontend/assets/squares-subtract-psRhckWt.js +6 -0
- langflow/frontend/assets/squares-unite-DyOgW2Vx.js +6 -0
- langflow/frontend/assets/squircle-BW0qUEDC.js +6 -0
- langflow/frontend/assets/squirrel-B1PCZcX7.js +6 -0
- langflow/frontend/assets/stamp-DwQmPbPr.js +6 -0
- langflow/frontend/assets/star-fFP8t_7q.js +6 -0
- langflow/frontend/assets/star-half-BpzaPZ-q.js +6 -0
- langflow/frontend/assets/star-off-BvshgrKR.js +6 -0
- langflow/frontend/assets/step-back-BY-Bsa9s.js +6 -0
- langflow/frontend/assets/step-forward-CIIzpXm5.js +6 -0
- langflow/frontend/assets/stethoscope-DAEc3st8.js +6 -0
- langflow/frontend/assets/sticker-BMHaQMId.js +6 -0
- langflow/frontend/assets/sticky-note-DDileyAQ.js +6 -0
- langflow/frontend/assets/store-DfBKA6fi.js +6 -0
- langflow/frontend/assets/stretch-horizontal-jQFmuGYU.js +6 -0
- langflow/frontend/assets/stretch-vertical-Byei0NbT.js +6 -0
- langflow/frontend/assets/strikethrough-A4fL3iV4.js +6 -0
- langflow/frontend/assets/subscript-DK_SS4pt.js +6 -0
- langflow/frontend/assets/sun-4fd6LvWs.js +6 -0
- langflow/frontend/assets/sun-dim-HhMydcHP.js +6 -0
- langflow/frontend/assets/sun-medium-DjxBBoh2.js +6 -0
- langflow/frontend/assets/sun-moon-BWpyhr-3.js +6 -0
- langflow/frontend/assets/sun-snow-BeLTEmYc.js +6 -0
- langflow/frontend/assets/sunrise-CX8TqGnP.js +6 -0
- langflow/frontend/assets/sunset-BpC3NXGb.js +6 -0
- langflow/frontend/assets/superscript-D9RddX1l.js +6 -0
- langflow/frontend/assets/swatch-book-DJ8i0JWb.js +6 -0
- langflow/frontend/assets/swiss-franc-SW-LCYYq.js +6 -0
- langflow/frontend/assets/switch-camera-CjruoEXV.js +6 -0
- langflow/frontend/assets/sword-DmrZIU8a.js +6 -0
- langflow/frontend/assets/swords-DEcGiJG7.js +6 -0
- langflow/frontend/assets/syringe-CDVMo3E1.js +6 -0
- langflow/frontend/assets/table-2-vNkNX7y9.js +6 -0
- langflow/frontend/assets/table-BDb0iTH8.js +6 -0
- langflow/frontend/assets/table-cells-merge-tBicSBqx.js +6 -0
- langflow/frontend/assets/table-cells-split-k0pm8r-z.js +6 -0
- langflow/frontend/assets/table-columns-split-Dov8Wc3R.js +6 -0
- langflow/frontend/assets/table-of-contents-DeqJlN_X.js +6 -0
- langflow/frontend/assets/table-properties-Cp0ivTQn.js +6 -0
- langflow/frontend/assets/table-rows-split-D2EEPbX-.js +6 -0
- langflow/frontend/assets/tablet-CtXXR51w.js +6 -0
- langflow/frontend/assets/tablet-smartphone-CHjkzAcr.js +6 -0
- langflow/frontend/assets/tablets-BGkOgo0p.js +6 -0
- langflow/frontend/assets/tag-C88BOFe6.js +6 -0
- langflow/frontend/assets/tags-7TOEs5rh.js +6 -0
- langflow/frontend/assets/tally-1-CMskgLGB.js +6 -0
- langflow/frontend/assets/tally-2-DaIOVDfb.js +6 -0
- langflow/frontend/assets/tally-3-BbvkFqwf.js +6 -0
- langflow/frontend/assets/tally-4-Cq0tWGV0.js +6 -0
- langflow/frontend/assets/tally-5-u8pBx1l9.js +6 -0
- langflow/frontend/assets/tangent-C_v48U-g.js +6 -0
- langflow/frontend/assets/target-CB2HrkPb.js +6 -0
- langflow/frontend/assets/telescope-Dm2PswZ7.js +6 -0
- langflow/frontend/assets/tent-DCbJTRn2.js +6 -0
- langflow/frontend/assets/tent-tree-dBK1jEo4.js +6 -0
- langflow/frontend/assets/terminal-pOIul2oS.js +6 -0
- langflow/frontend/assets/test-tube-BVXifMPd.js +6 -0
- langflow/frontend/assets/test-tube-diagonal-Cc6H-LMb.js +6 -0
- langflow/frontend/assets/test-tubes-Bd1XLhNz.js +6 -0
- langflow/frontend/assets/text-CF6hsYkQ.js +6 -0
- langflow/frontend/assets/text-cursor-DgrUmcwn.js +6 -0
- langflow/frontend/assets/text-cursor-input-BRBxmm3_.js +6 -0
- langflow/frontend/assets/text-quote-Ck3bSo7l.js +6 -0
- langflow/frontend/assets/text-search-Q8TrkYhl.js +6 -0
- langflow/frontend/assets/text-select-Ccuj1wh7.js +6 -0
- langflow/frontend/assets/theater-DQ_LLEiM.js +6 -0
- langflow/frontend/assets/thermometer-7vrUwdxo.js +6 -0
- langflow/frontend/assets/thermometer-snowflake-C0meu6Q5.js +6 -0
- langflow/frontend/assets/thermometer-sun-D73Y0MEA.js +6 -0
- langflow/frontend/assets/thumbs-down-CtLO2jHG.js +6 -0
- langflow/frontend/assets/thumbs-up-C3Td1jRD.js +6 -0
- langflow/frontend/assets/ticket-B-_7V3ku.js +6 -0
- langflow/frontend/assets/ticket-check-CDTR_0Xo.js +6 -0
- langflow/frontend/assets/ticket-minus-DU-f7iPB.js +6 -0
- langflow/frontend/assets/ticket-percent-Bmf_L17_.js +6 -0
- langflow/frontend/assets/ticket-plus-zywecdfp.js +6 -0
- langflow/frontend/assets/ticket-slash-DYRDEJ3N.js +6 -0
- langflow/frontend/assets/ticket-x-CaQznpCb.js +6 -0
- langflow/frontend/assets/tickets-D-cpkNHE.js +6 -0
- langflow/frontend/assets/tickets-plane-DbKB6xam.js +6 -0
- langflow/frontend/assets/timer-C5amVrwm.js +6 -0
- langflow/frontend/assets/timer-off-BPyCq6IB.js +6 -0
- langflow/frontend/assets/timer-reset-D5TcpPAv.js +6 -0
- langflow/frontend/assets/toggle-left-D98XWh2D.js +6 -0
- langflow/frontend/assets/toggle-right-KRKjuPT_.js +6 -0
- langflow/frontend/assets/toilet-YWNlUSw0.js +6 -0
- langflow/frontend/assets/tornado-BhCM1F4n.js +6 -0
- langflow/frontend/assets/torus-BLq85o-3.js +6 -0
- langflow/frontend/assets/touchpad-CLplDfXD.js +6 -0
- langflow/frontend/assets/touchpad-off-TJIdK87T.js +6 -0
- langflow/frontend/assets/tower-control-Dlwjcxoj.js +6 -0
- langflow/frontend/assets/toy-brick-CXqEbnyo.js +6 -0
- langflow/frontend/assets/tractor-D6b52dj_.js +6 -0
- langflow/frontend/assets/traffic-cone-BEmASxIw.js +6 -0
- langflow/frontend/assets/train-front-Cc7j-mZK.js +6 -0
- langflow/frontend/assets/train-front-tunnel-19z4RXsT.js +6 -0
- langflow/frontend/assets/train-track-CAAfEbqV.js +6 -0
- langflow/frontend/assets/tram-front-BUg3imga.js +6 -0
- langflow/frontend/assets/transgender-BA_FSj-u.js +6 -0
- langflow/frontend/assets/trash-2OeKKrxP.js +6 -0
- langflow/frontend/assets/tree-deciduous-DAI28UoR.js +6 -0
- langflow/frontend/assets/tree-palm-ByDsq_iJ.js +6 -0
- langflow/frontend/assets/tree-pine-BoPibGar.js +6 -0
- langflow/frontend/assets/trees-DHxVjS2D.js +6 -0
- langflow/frontend/assets/trello-DC9xQlgy.js +6 -0
- langflow/frontend/assets/trending-down-fnwk1gYn.js +6 -0
- langflow/frontend/assets/trending-up-BiFprBoY.js +6 -0
- langflow/frontend/assets/trending-up-down-tL00exws.js +6 -0
- langflow/frontend/assets/triangle-alert-CUgkF9bT.js +6 -0
- langflow/frontend/assets/triangle-dashed-CCl-Ou-q.js +6 -0
- langflow/frontend/assets/triangle-right-HXK9dggf.js +6 -0
- langflow/frontend/assets/triangle-wWFGnoXq.js +6 -0
- langflow/frontend/assets/trophy-B4r9FOcN.js +6 -0
- langflow/frontend/assets/truck-BIqbPrdA.js +6 -0
- langflow/frontend/assets/truck-electric-BNLEjUHH.js +6 -0
- langflow/frontend/assets/turtle-CLYisEUb.js +6 -0
- langflow/frontend/assets/tv-DE1XLcDO.js +6 -0
- langflow/frontend/assets/tv-minimal-CkGt4oeG.js +6 -0
- langflow/frontend/assets/tv-minimal-play-C4QNBnnM.js +6 -0
- langflow/frontend/assets/twitch-4zpjzKnn.js +6 -0
- langflow/frontend/assets/twitter-DtjE68Po.js +6 -0
- langflow/frontend/assets/type-D3fPDZEV.js +6 -0
- langflow/frontend/assets/type-outline-Cb1ZJZxR.js +6 -0
- langflow/frontend/assets/umbrella-jyxnt8Uh.js +6 -0
- langflow/frontend/assets/umbrella-off-Dcj1kxHM.js +6 -0
- langflow/frontend/assets/underline-CTJUoQ5A.js +6 -0
- langflow/frontend/assets/undo-2-D6pABNuv.js +6 -0
- langflow/frontend/assets/undo-CW0Ru-vR.js +6 -0
- langflow/frontend/assets/undo-dot-D5TUrOm8.js +6 -0
- langflow/frontend/assets/unfold-horizontal-Cyi9PjqF.js +6 -0
- langflow/frontend/assets/unfold-vertical-Bw4jY5BU.js +6 -0
- langflow/frontend/assets/ungroup-Dg1Nxn55.js +6 -0
- langflow/frontend/assets/university-Cpja84hz.js +6 -0
- langflow/frontend/assets/unlink-2-CfeUGqaL.js +6 -0
- langflow/frontend/assets/unlink-CRsYGeiQ.js +6 -0
- langflow/frontend/assets/unplug-kArckE87.js +6 -0
- langflow/frontend/assets/upload-C0z1tMv3.js +6 -0
- langflow/frontend/assets/usb-pK0x_msM.js +6 -0
- langflow/frontend/assets/use-post-add-user-CTfvdDgm.js +1 -0
- langflow/frontend/assets/user-CYb6I--K.js +6 -0
- langflow/frontend/assets/user-check-DN8PVcKH.js +6 -0
- langflow/frontend/assets/user-cog-BfAoVBIQ.js +6 -0
- langflow/frontend/assets/user-lock-CN7zPQp1.js +6 -0
- langflow/frontend/assets/user-minus-CLA5rUgw.js +6 -0
- langflow/frontend/assets/user-pen-Cqeh6kZs.js +6 -0
- langflow/frontend/assets/user-plus-DEvzlwVk.js +6 -0
- langflow/frontend/assets/user-round-C5iZ0qgG.js +6 -0
- langflow/frontend/assets/user-round-check-BH6wPJr_.js +6 -0
- langflow/frontend/assets/user-round-cog-CmDgAgBT.js +6 -0
- langflow/frontend/assets/user-round-minus-Dzs93aa6.js +6 -0
- langflow/frontend/assets/user-round-pen-jFl6zE5l.js +6 -0
- langflow/frontend/assets/user-round-plus-B5kF24c0.js +6 -0
- langflow/frontend/assets/user-round-search-Ufud_H7Y.js +6 -0
- langflow/frontend/assets/user-round-x-DemWmMk-.js +6 -0
- langflow/frontend/assets/user-search-DyqY3Z4p.js +6 -0
- langflow/frontend/assets/user-x-xWe2LSq5.js +6 -0
- langflow/frontend/assets/users-CIF2XMyV.js +6 -0
- langflow/frontend/assets/users-round-CLF1tj52.js +6 -0
- langflow/frontend/assets/utensils-BNRwEKXS.js +6 -0
- langflow/frontend/assets/utensils-crossed-tx85c0By.js +6 -0
- langflow/frontend/assets/utility-pole-DaA7pMEn.js +6 -0
- langflow/frontend/assets/variable-Bk9JiMUE.js +6 -0
- langflow/frontend/assets/vault-CWh3Z9NS.js +6 -0
- langflow/frontend/assets/vegan-DA9rwDh2.js +6 -0
- langflow/frontend/assets/venetian-mask-D1mUQEf8.js +6 -0
- langflow/frontend/assets/venus-BhPEaBFw.js +6 -0
- langflow/frontend/assets/venus-and-mars-7wCgnbVZ.js +6 -0
- langflow/frontend/assets/vibrate-Bf4kWHhY.js +6 -0
- langflow/frontend/assets/vibrate-off-DVkA2Blb.js +6 -0
- langflow/frontend/assets/video-BWErFYI_.js +6 -0
- langflow/frontend/assets/video-off-CCKPb-AI.js +6 -0
- langflow/frontend/assets/videotape-BCw1JQVM.js +6 -0
- langflow/frontend/assets/view-DqsSMcxt.js +6 -0
- langflow/frontend/assets/voicemail-D2G5-58w.js +6 -0
- langflow/frontend/assets/volleyball-BahQ9nyT.js +6 -0
- langflow/frontend/assets/volume-1-Cy4QFQfu.js +6 -0
- langflow/frontend/assets/volume-2-T_S9aJt9.js +6 -0
- langflow/frontend/assets/volume-DhmwFLZM.js +6 -0
- langflow/frontend/assets/volume-off-CHG2yHRE.js +6 -0
- langflow/frontend/assets/volume-x-CMkcbeRe.js +6 -0
- langflow/frontend/assets/vote-CgdG8REW.js +6 -0
- langflow/frontend/assets/wallet-CgCQyNuC.js +6 -0
- langflow/frontend/assets/wallet-cards-fAcGhH4Y.js +6 -0
- langflow/frontend/assets/wallet-minimal-BNVD81ho.js +6 -0
- langflow/frontend/assets/wallpaper-znA5Uz2A.js +6 -0
- langflow/frontend/assets/wand-aEWmHs_4.js +6 -0
- langflow/frontend/assets/wand-sparkles-DDxUZvPE.js +6 -0
- langflow/frontend/assets/warehouse-yPUPZYQm.js +6 -0
- langflow/frontend/assets/washing-machine-DidsRoGX.js +6 -0
- langflow/frontend/assets/watch-CYZ_ICBe.js +6 -0
- langflow/frontend/assets/waves-BKd3_mCd.js +6 -0
- langflow/frontend/assets/waves-ladder-BvRkpGLO.js +6 -0
- langflow/frontend/assets/waypoints-K6NXLstp.js +6 -0
- langflow/frontend/assets/webcam-CLPXO_mE.js +6 -0
- langflow/frontend/assets/webhook-DUc3CJ6T.js +6 -0
- langflow/frontend/assets/webhook-off-DZgAywhC.js +6 -0
- langflow/frontend/assets/weight-GSWIcGSY.js +6 -0
- langflow/frontend/assets/wheat-Cz6eOCnV.js +6 -0
- langflow/frontend/assets/wheat-off-EjilPRfB.js +6 -0
- langflow/frontend/assets/whole-word-D2sASkSi.js +6 -0
- langflow/frontend/assets/wifi-PcQXXyHp.js +6 -0
- langflow/frontend/assets/wifi-high-CngcsB2O.js +6 -0
- langflow/frontend/assets/wifi-low-C5_B2LFd.js +6 -0
- langflow/frontend/assets/wifi-off-Doon60lY.js +6 -0
- langflow/frontend/assets/wifi-pen-CXUcIzeE.js +6 -0
- langflow/frontend/assets/wifi-zero-jr0jJZb9.js +6 -0
- langflow/frontend/assets/wind-77C2ub3B.js +6 -0
- langflow/frontend/assets/wind-arrow-down-CkKGxyqD.js +6 -0
- langflow/frontend/assets/wine-DSpVTz3i.js +6 -0
- langflow/frontend/assets/wine-off-DVaivXhq.js +6 -0
- langflow/frontend/assets/workflow-Dd00LJqw.js +6 -0
- langflow/frontend/assets/worm-B8umq2e7.js +6 -0
- langflow/frontend/assets/wrap-text-DXDAFdFQ.js +6 -0
- langflow/frontend/assets/wrench-DPKXsb9A.js +6 -0
- langflow/frontend/assets/youtube-DLP7NXOq.js +6 -0
- langflow/frontend/assets/zap-DM63C_Ti.js +6 -0
- langflow/frontend/assets/zap-off-BUNzQm5k.js +6 -0
- langflow/frontend/assets/zoom-in-pTV2KHhw.js +6 -0
- langflow/frontend/assets/zoom-out-BOhst0SA.js +6 -0
- langflow/frontend/index.html +2 -2
- langflow/initial_setup/starter_projects/Basic Prompt Chaining.json +3 -3
- langflow/initial_setup/starter_projects/Basic Prompting.json +3 -3
- langflow/initial_setup/starter_projects/Blog Writer.json +3 -3
- langflow/initial_setup/starter_projects/Custom Component Generator.json +3 -3
- langflow/initial_setup/starter_projects/Document Q&A.json +16 -7
- langflow/initial_setup/starter_projects/Financial Report Parser.json +5 -3
- langflow/initial_setup/starter_projects/Hybrid Search RAG.json +6 -4
- langflow/initial_setup/starter_projects/Image Sentiment Analysis.json +5 -3
- langflow/initial_setup/starter_projects/Instagram Copywriter.json +40 -11
- langflow/initial_setup/starter_projects/Invoice Summarizer.json +40 -11
- langflow/initial_setup/starter_projects/Knowledge Ingestion.json +1 -1
- langflow/initial_setup/starter_projects/Knowledge Retrieval.json +4 -4
- langflow/initial_setup/starter_projects/Market Research.json +40 -12
- langflow/initial_setup/starter_projects/Meeting Summary.json +9 -9
- langflow/initial_setup/starter_projects/Memory Chatbot.json +3 -3
- langflow/initial_setup/starter_projects/News Aggregator.json +47 -17
- langflow/initial_setup/starter_projects/Nvidia Remix.json +62 -16
- langflow/initial_setup/starter_projects/Pok/303/251dex Agent.json" +40 -11
- langflow/initial_setup/starter_projects/Portfolio Website Code Generator.json +18 -7
- langflow/initial_setup/starter_projects/Price Deal Finder.json +40 -11
- langflow/initial_setup/starter_projects/Research Agent.json +40 -11
- langflow/initial_setup/starter_projects/Research Translation Loop.json +3 -3
- langflow/initial_setup/starter_projects/SEO Keyword Generator.json +3 -3
- langflow/initial_setup/starter_projects/SaaS Pricing.json +40 -11
- langflow/initial_setup/starter_projects/Search agent.json +41 -12
- langflow/initial_setup/starter_projects/Sequential Tasks Agents.json +115 -31
- langflow/initial_setup/starter_projects/Simple Agent.json +40 -12
- langflow/initial_setup/starter_projects/Social Media Agent.json +42 -14
- langflow/initial_setup/starter_projects/Text Sentiment Analysis.json +19 -10
- langflow/initial_setup/starter_projects/Travel Planning Agents.json +114 -30
- langflow/initial_setup/starter_projects/Twitter Thread Generator.json +3 -3
- langflow/initial_setup/starter_projects/Vector Store RAG.json +18 -9
- langflow/initial_setup/starter_projects/Youtube Analysis.json +43 -15
- langflow/main.py +29 -13
- langflow/server.py +10 -0
- langflow/services/auth/utils.py +16 -5
- langflow/services/database/models/api_key/crud.py +45 -2
- langflow/services/deps.py +11 -6
- langflow/services/storage/local.py +35 -1
- langflow/services/storage/s3.py +30 -0
- langflow/services/storage/service.py +36 -0
- langflow/utils/mcp_cleanup.py +125 -0
- langflow_base_nightly-1.7.0.dev34.dist-info/METADATA +99 -0
- langflow_base_nightly-1.7.0.dev34.dist-info/RECORD +2278 -0
- langflow/frontend/assets/SlackIcon-CEF_Lfgx.js +0 -1
- langflow/frontend/assets/Wikipedia-l89g58MW.js +0 -1
- langflow/frontend/assets/Wolfram-B0u7kBCd.js +0 -1
- langflow/frontend/assets/a-arrow-down-C1MR1UMk.js +0 -6
- langflow/frontend/assets/a-arrow-up-CMZerhaE.js +0 -6
- langflow/frontend/assets/a-large-small-Bv7wOVZp.js +0 -6
- langflow/frontend/assets/accessibility-BrEGjJ3h.js +0 -6
- langflow/frontend/assets/activity-D-a4MWi-.js +0 -6
- langflow/frontend/assets/air-vent-myzlVebI.js +0 -6
- langflow/frontend/assets/airplay-DyNG71LB.js +0 -6
- langflow/frontend/assets/alarm-clock-DH1LaNKu.js +0 -6
- langflow/frontend/assets/alarm-clock-check-C7zLrHCl.js +0 -6
- langflow/frontend/assets/alarm-clock-minus-B9sLdpi9.js +0 -6
- langflow/frontend/assets/alarm-clock-off-COlkkF3b.js +0 -6
- langflow/frontend/assets/alarm-clock-plus-DxfQCpS0.js +0 -6
- langflow/frontend/assets/alarm-smoke-DOKB4jdQ.js +0 -6
- langflow/frontend/assets/album-CbhFkW2K.js +0 -6
- langflow/frontend/assets/align-center-D4bRdbdX.js +0 -6
- langflow/frontend/assets/align-center-horizontal-DRKr69Bu.js +0 -6
- langflow/frontend/assets/align-center-vertical-B7CTn1nz.js +0 -6
- langflow/frontend/assets/align-end-horizontal-CgCdy2MI.js +0 -6
- langflow/frontend/assets/align-end-vertical-DnzR3Jh8.js +0 -6
- langflow/frontend/assets/align-horizontal-distribute-center-DcI8WEBg.js +0 -6
- langflow/frontend/assets/align-horizontal-distribute-end-ocyg2Ism.js +0 -6
- langflow/frontend/assets/align-horizontal-distribute-start-0cj83d0Q.js +0 -6
- langflow/frontend/assets/align-horizontal-justify-center-ELZCJfLJ.js +0 -6
- langflow/frontend/assets/align-horizontal-justify-end-CAvLzWix.js +0 -6
- langflow/frontend/assets/align-horizontal-justify-start-THFMmtW8.js +0 -6
- langflow/frontend/assets/align-horizontal-space-around-DM87J1lM.js +0 -6
- langflow/frontend/assets/align-horizontal-space-between-CWBgfaSR.js +0 -6
- langflow/frontend/assets/align-justify-BZr4mv6M.js +0 -6
- langflow/frontend/assets/align-left-DDKaY-tD.js +0 -6
- langflow/frontend/assets/align-right-UFsrS9ty.js +0 -6
- langflow/frontend/assets/align-start-horizontal-CDMo5O5J.js +0 -6
- langflow/frontend/assets/align-start-vertical-mfpy9Ha8.js +0 -6
- langflow/frontend/assets/align-vertical-distribute-center-D35O90hK.js +0 -6
- langflow/frontend/assets/align-vertical-distribute-end-BOhCSYqd.js +0 -6
- langflow/frontend/assets/align-vertical-distribute-start-CRtaDGO3.js +0 -6
- langflow/frontend/assets/align-vertical-justify-center-BEDLBLzr.js +0 -6
- langflow/frontend/assets/align-vertical-justify-end-CpmZIv_b.js +0 -6
- langflow/frontend/assets/align-vertical-justify-start-BaQPjHDD.js +0 -6
- langflow/frontend/assets/align-vertical-space-around-DN8HaVwe.js +0 -6
- langflow/frontend/assets/align-vertical-space-between-CtfMVSNs.js +0 -6
- langflow/frontend/assets/ambulance-EysJPjDH.js +0 -6
- langflow/frontend/assets/ampersand-De5P08QL.js +0 -6
- langflow/frontend/assets/ampersands-BFEb_UYl.js +0 -6
- langflow/frontend/assets/amphora-CeQeqX39.js +0 -6
- langflow/frontend/assets/anchor-Bmj6G_T-.js +0 -6
- langflow/frontend/assets/angry-BJ4OZ8cf.js +0 -6
- langflow/frontend/assets/annoyed-CnuYiPsR.js +0 -6
- langflow/frontend/assets/antenna-BF54KX6Q.js +0 -6
- langflow/frontend/assets/anvil-BDp882_x.js +0 -6
- langflow/frontend/assets/aperture-C-RXeV-R.js +0 -6
- langflow/frontend/assets/app-window-CnWdW7Z8.js +0 -6
- langflow/frontend/assets/app-window-mac-BWkyg2Dt.js +0 -6
- langflow/frontend/assets/apple-Cy1_Ygqa.js +0 -6
- langflow/frontend/assets/archive-DQM1ljrp.js +0 -6
- langflow/frontend/assets/archive-restore-CR7ZCkrs.js +0 -6
- langflow/frontend/assets/archive-x-Cah6BUmC.js +0 -6
- langflow/frontend/assets/armchair-CI__vHrc.js +0 -6
- langflow/frontend/assets/arrow-big-down-dash-Cexbrdd1.js +0 -6
- langflow/frontend/assets/arrow-big-down-es-qZLrf.js +0 -6
- langflow/frontend/assets/arrow-big-left-BNfP62tw.js +0 -6
- langflow/frontend/assets/arrow-big-left-dash-CDo880bt.js +0 -6
- langflow/frontend/assets/arrow-big-right-Cw4xK1An.js +0 -6
- langflow/frontend/assets/arrow-big-right-dash-Bv-LrLEi.js +0 -6
- langflow/frontend/assets/arrow-big-up-1D3Ok-B4.js +0 -6
- langflow/frontend/assets/arrow-big-up-dash-DkwHTfuU.js +0 -6
- langflow/frontend/assets/arrow-down-0-1-sOAZahEa.js +0 -6
- langflow/frontend/assets/arrow-down-1-0-jFkfLsFL.js +0 -6
- langflow/frontend/assets/arrow-down-DiLgk_Lv.js +0 -6
- langflow/frontend/assets/arrow-down-a-z-yfXUaZlY.js +0 -6
- langflow/frontend/assets/arrow-down-from-line-JwLxfDLL.js +0 -6
- langflow/frontend/assets/arrow-down-left-9rqXt219.js +0 -6
- langflow/frontend/assets/arrow-down-narrow-wide-DNQQfWSk.js +0 -6
- langflow/frontend/assets/arrow-down-right-C04MAksZ.js +0 -6
- langflow/frontend/assets/arrow-down-to-dot-BIQNg3lP.js +0 -6
- langflow/frontend/assets/arrow-down-to-line-AiuzCgPl.js +0 -6
- langflow/frontend/assets/arrow-down-up-BUl4CwHw.js +0 -6
- langflow/frontend/assets/arrow-down-wide-narrow-BEWv2A3j.js +0 -6
- langflow/frontend/assets/arrow-down-z-a-C-my0MFx.js +0 -6
- langflow/frontend/assets/arrow-left-DraCa3qF.js +0 -6
- langflow/frontend/assets/arrow-left-from-line-Cf8elz8N.js +0 -6
- langflow/frontend/assets/arrow-left-right-DnMFkXhG.js +0 -6
- langflow/frontend/assets/arrow-left-to-line-DqC6UI7j.js +0 -6
- langflow/frontend/assets/arrow-right-DjiPPpgB.js +0 -6
- langflow/frontend/assets/arrow-right-from-line-Dc9a1Fow.js +0 -6
- langflow/frontend/assets/arrow-right-left-DX4SFlaz.js +0 -6
- langflow/frontend/assets/arrow-right-to-line-QDmBsM4R.js +0 -6
- langflow/frontend/assets/arrow-up-0-1-B6al2yLS.js +0 -6
- langflow/frontend/assets/arrow-up-1-0-C6aJcw3B.js +0 -6
- langflow/frontend/assets/arrow-up-CjPYprhI.js +0 -6
- langflow/frontend/assets/arrow-up-a-z-BE7k_Es_.js +0 -6
- langflow/frontend/assets/arrow-up-down-nqmOlLPp.js +0 -6
- langflow/frontend/assets/arrow-up-from-dot-C3rxzunA.js +0 -6
- langflow/frontend/assets/arrow-up-from-line-KUrGFQEP.js +0 -6
- langflow/frontend/assets/arrow-up-left-DfnfqUsI.js +0 -6
- langflow/frontend/assets/arrow-up-narrow-wide-BxqaRTna.js +0 -6
- langflow/frontend/assets/arrow-up-right-XuwyPu6F.js +0 -6
- langflow/frontend/assets/arrow-up-to-line-ClQGsei8.js +0 -6
- langflow/frontend/assets/arrow-up-wide-narrow-Df4gI9kX.js +0 -6
- langflow/frontend/assets/arrow-up-z-a-BCD-rCLh.js +0 -6
- langflow/frontend/assets/arrows-up-from-line-BEVbeabp.js +0 -6
- langflow/frontend/assets/asterisk-DbNqMHXe.js +0 -6
- langflow/frontend/assets/at-sign-D6oIhdLE.js +0 -6
- langflow/frontend/assets/atom-BwKR6eUj.js +0 -6
- langflow/frontend/assets/audio-lines-DuaD6im4.js +0 -6
- langflow/frontend/assets/audio-waveform-BhXwvbto.js +0 -6
- langflow/frontend/assets/award-5kfq8rkw.js +0 -6
- langflow/frontend/assets/axe-BOOglolb.js +0 -6
- langflow/frontend/assets/axis-3d-DOFH7kHD.js +0 -6
- langflow/frontend/assets/baby-BEYKunXX.js +0 -6
- langflow/frontend/assets/backpack-_Qlx18_V.js +0 -6
- langflow/frontend/assets/badge-BOuSs5_H.js +0 -6
- langflow/frontend/assets/badge-alert-CckKfyfr.js +0 -6
- langflow/frontend/assets/badge-cent-BCVyiQHU.js +0 -6
- langflow/frontend/assets/badge-check-evlQm0SD.js +0 -6
- langflow/frontend/assets/badge-dollar-sign-Cs3GeUxH.js +0 -6
- langflow/frontend/assets/badge-euro-Bkq-NiJ5.js +0 -6
- langflow/frontend/assets/badge-help-CZrCA_Ar.js +0 -6
- langflow/frontend/assets/badge-indian-rupee-CGIxUK6a.js +0 -6
- langflow/frontend/assets/badge-info-tIeShHl2.js +0 -6
- langflow/frontend/assets/badge-japanese-yen-DC-UA7pC.js +0 -6
- langflow/frontend/assets/badge-minus-mAxFYDfn.js +0 -6
- langflow/frontend/assets/badge-percent-DInhOlwC.js +0 -6
- langflow/frontend/assets/badge-plus-Drx8vtQY.js +0 -6
- langflow/frontend/assets/badge-pound-sterling-SFaXfQwH.js +0 -6
- langflow/frontend/assets/badge-russian-ruble-Y4OZSJrU.js +0 -6
- langflow/frontend/assets/badge-swiss-franc-5KScJ4ZB.js +0 -6
- langflow/frontend/assets/badge-x-CntBKY-i.js +0 -6
- langflow/frontend/assets/baggage-claim-Bb6waYF4.js +0 -6
- langflow/frontend/assets/ban-Dr4CWBPj.js +0 -6
- langflow/frontend/assets/banana-C4ML2xXp.js +0 -6
- langflow/frontend/assets/bandage-BD0CHios.js +0 -6
- langflow/frontend/assets/banknote-DIcM5_C6.js +0 -6
- langflow/frontend/assets/banknote-arrow-down-v4zeqRIU.js +0 -6
- langflow/frontend/assets/banknote-arrow-up-BykOKE4i.js +0 -6
- langflow/frontend/assets/banknote-x-CpYx8SrC.js +0 -6
- langflow/frontend/assets/barcode-C9KJv53a.js +0 -6
- langflow/frontend/assets/baseline-BUk7-Xi7.js +0 -6
- langflow/frontend/assets/bath-Dg8LjUwx.js +0 -6
- langflow/frontend/assets/battery-CgmqlOl8.js +0 -6
- langflow/frontend/assets/battery-charging-pD-mMKPn.js +0 -6
- langflow/frontend/assets/battery-full-BWR4eBlS.js +0 -6
- langflow/frontend/assets/battery-low-CO0zIMLQ.js +0 -6
- langflow/frontend/assets/battery-medium-BDNKPIlP.js +0 -6
- langflow/frontend/assets/battery-plus-CDftjdMy.js +0 -6
- langflow/frontend/assets/battery-warning-BX8PdyQx.js +0 -6
- langflow/frontend/assets/beaker-DPQTIavx.js +0 -6
- langflow/frontend/assets/bean-Buf4iRsl.js +0 -6
- langflow/frontend/assets/bean-off-BdpjedQD.js +0 -6
- langflow/frontend/assets/bed-DbluJBcJ.js +0 -6
- langflow/frontend/assets/bed-double-ChlRO7Um.js +0 -6
- langflow/frontend/assets/bed-single-5Vz7P4KL.js +0 -6
- langflow/frontend/assets/beef-DLcY3ztG.js +0 -6
- langflow/frontend/assets/beer-CbZf1CLh.js +0 -6
- langflow/frontend/assets/beer-off-DQt9-Yvf.js +0 -6
- langflow/frontend/assets/bell-Dbx9wwOK.js +0 -6
- langflow/frontend/assets/bell-dot-KP_Rh9L4.js +0 -6
- langflow/frontend/assets/bell-electric-DYZym3Iv.js +0 -6
- langflow/frontend/assets/bell-minus-BZGjCom7.js +0 -6
- langflow/frontend/assets/bell-off-BAvH_HuW.js +0 -6
- langflow/frontend/assets/bell-plus-DPFkXHZc.js +0 -6
- langflow/frontend/assets/bell-ring-DuesEJGI.js +0 -6
- langflow/frontend/assets/between-horizontal-end-BPoYnPxc.js +0 -6
- langflow/frontend/assets/between-horizontal-start-DVqlwINr.js +0 -6
- langflow/frontend/assets/between-vertical-end-CGwEFKvW.js +0 -6
- langflow/frontend/assets/between-vertical-start-CTFQjVNF.js +0 -6
- langflow/frontend/assets/biceps-flexed-B2vA7PZV.js +0 -6
- langflow/frontend/assets/bike-Br2K_Koa.js +0 -6
- langflow/frontend/assets/binary-BHLdLb2-.js +0 -6
- langflow/frontend/assets/binoculars-DuKZH8Zh.js +0 -6
- langflow/frontend/assets/biohazard-B8FjW09n.js +0 -6
- langflow/frontend/assets/bird-itw24Hbj.js +0 -6
- langflow/frontend/assets/bitcoin-DgG8rKcA.js +0 -6
- langflow/frontend/assets/blend-CG2CKs-3.js +0 -6
- langflow/frontend/assets/blinds-BvB5LjVo.js +0 -6
- langflow/frontend/assets/blocks-NmxNFC3J.js +0 -6
- langflow/frontend/assets/bluetooth-CyLo6vyP.js +0 -6
- langflow/frontend/assets/bluetooth-connected-CW0EZSjS.js +0 -6
- langflow/frontend/assets/bluetooth-off-CLA2FgtZ.js +0 -6
- langflow/frontend/assets/bluetooth-searching-D39nzp26.js +0 -6
- langflow/frontend/assets/bold-Mwjfwd6i.js +0 -6
- langflow/frontend/assets/bolt-CCG6giOU.js +0 -6
- langflow/frontend/assets/bomb-CmW9GByV.js +0 -6
- langflow/frontend/assets/bone-B-ftIZZC.js +0 -6
- langflow/frontend/assets/book-C9k3ZOBc.js +0 -6
- langflow/frontend/assets/book-a-JtyovsEF.js +0 -6
- langflow/frontend/assets/book-audio-D4ca-u-T.js +0 -6
- langflow/frontend/assets/book-check-BeS3k1s2.js +0 -6
- langflow/frontend/assets/book-copy-C4XYhOc3.js +0 -6
- langflow/frontend/assets/book-dashed-B4RKCqvz.js +0 -6
- langflow/frontend/assets/book-down-C7cuvnxL.js +0 -6
- langflow/frontend/assets/book-headphones-W0HUkTzm.js +0 -6
- langflow/frontend/assets/book-heart-PLiTcr-b.js +0 -6
- langflow/frontend/assets/book-image-CwGwbb3g.js +0 -6
- langflow/frontend/assets/book-key-7traCCG2.js +0 -6
- langflow/frontend/assets/book-lock-Dlltc43Y.js +0 -6
- langflow/frontend/assets/book-marked-CdTsOLQX.js +0 -6
- langflow/frontend/assets/book-minus-6JqstP_B.js +0 -6
- langflow/frontend/assets/book-open--eSp397E.js +0 -6
- langflow/frontend/assets/book-open-check-Bkp4i0Z6.js +0 -6
- langflow/frontend/assets/book-open-text-BIWmd2fT.js +0 -6
- langflow/frontend/assets/book-plus-CflK6Aqe.js +0 -6
- langflow/frontend/assets/book-text-ByR7Lfzl.js +0 -6
- langflow/frontend/assets/book-type-Bq-Jm1g2.js +0 -6
- langflow/frontend/assets/book-up-2-DZZJTQeK.js +0 -6
- langflow/frontend/assets/book-up-ieUJxufA.js +0 -6
- langflow/frontend/assets/book-user-DJC4YpOj.js +0 -6
- langflow/frontend/assets/book-x-BYw2JmSg.js +0 -6
- langflow/frontend/assets/bookmark-DmgojVBV.js +0 -6
- langflow/frontend/assets/bookmark-check-BWmkNODf.js +0 -6
- langflow/frontend/assets/bookmark-minus-Opo6htKF.js +0 -6
- langflow/frontend/assets/bookmark-plus-Cmq9o8rG.js +0 -6
- langflow/frontend/assets/bookmark-x-Bbo75e-_.js +0 -6
- langflow/frontend/assets/boom-box-BUwW6n9i.js +0 -6
- langflow/frontend/assets/bot-DQCZD09Z.js +0 -6
- langflow/frontend/assets/bot-message-square-Qg8qf_Vo.js +0 -6
- langflow/frontend/assets/bot-off-CWhYg4QH.js +0 -6
- langflow/frontend/assets/bow-arrow-2G8YQj8T.js +0 -6
- langflow/frontend/assets/box-DI6aYfMK.js +0 -6
- langflow/frontend/assets/boxes-BtNp1YLT.js +0 -6
- langflow/frontend/assets/braces-BLcS_5vG.js +0 -6
- langflow/frontend/assets/brackets-Cv8xrRQf.js +0 -6
- langflow/frontend/assets/brain-DgRUprQ7.js +0 -6
- langflow/frontend/assets/brain-circuit-BtOL0kFy.js +0 -6
- langflow/frontend/assets/brain-cog-zXypBGqp.js +0 -6
- langflow/frontend/assets/brick-wall-CFFET0Vi.js +0 -6
- langflow/frontend/assets/brick-wall-fire-ZpPxxgvZ.js +0 -6
- langflow/frontend/assets/briefcase-Bbqle57g.js +0 -6
- langflow/frontend/assets/briefcase-business-EvgZ-pGn.js +0 -6
- langflow/frontend/assets/briefcase-conveyor-belt-B71ya1iU.js +0 -6
- langflow/frontend/assets/briefcase-medical-0jat9rYx.js +0 -6
- langflow/frontend/assets/bring-to-front-Cy8Ad0pA.js +0 -6
- langflow/frontend/assets/brush-5lcMFo2M.js +0 -6
- langflow/frontend/assets/bubbles--ZENXIG2.js +0 -6
- langflow/frontend/assets/bug-DRy9Jp16.js +0 -6
- langflow/frontend/assets/bug-off-BxN14Ao_.js +0 -6
- langflow/frontend/assets/bug-play-Dleid9nE.js +0 -6
- langflow/frontend/assets/building-2-CK8gdrCW.js +0 -6
- langflow/frontend/assets/building-DnAh38ZD.js +0 -6
- langflow/frontend/assets/bus-BDx_jniJ.js +0 -6
- langflow/frontend/assets/bus-front-B8mPAPPF.js +0 -6
- langflow/frontend/assets/cable-D1OmUrR-.js +0 -6
- langflow/frontend/assets/cable-car-tPhitjsJ.js +0 -6
- langflow/frontend/assets/cake-C6nHJ4UH.js +0 -6
- langflow/frontend/assets/cake-slice-BgiXTSq6.js +0 -6
- langflow/frontend/assets/calculator-DinCzLLu.js +0 -6
- langflow/frontend/assets/calendar-1-p13BBdjX.js +0 -6
- langflow/frontend/assets/calendar-B51W3LkW.js +0 -6
- langflow/frontend/assets/calendar-arrow-down-D4GLmFd6.js +0 -6
- langflow/frontend/assets/calendar-arrow-up-RlAgBFVb.js +0 -6
- langflow/frontend/assets/calendar-check-2-OzKJ28SZ.js +0 -6
- langflow/frontend/assets/calendar-check-DBkCCqIF.js +0 -6
- langflow/frontend/assets/calendar-clock-CPmhjPfI.js +0 -6
- langflow/frontend/assets/calendar-cog-DNf29O6g.js +0 -6
- langflow/frontend/assets/calendar-days-DM_qi8g0.js +0 -6
- langflow/frontend/assets/calendar-fold-DSBrdaqJ.js +0 -6
- langflow/frontend/assets/calendar-heart-CAtCjdjQ.js +0 -6
- langflow/frontend/assets/calendar-minus-2-hox-wOZr.js +0 -6
- langflow/frontend/assets/calendar-minus-DbKbHYOA.js +0 -6
- langflow/frontend/assets/calendar-off-DlYG3mA6.js +0 -6
- langflow/frontend/assets/calendar-plus-2-Ch9-ovuL.js +0 -6
- langflow/frontend/assets/calendar-plus-BN4Db129.js +0 -6
- langflow/frontend/assets/calendar-range-CJ4VugmU.js +0 -6
- langflow/frontend/assets/calendar-search-DHIkS4iK.js +0 -6
- langflow/frontend/assets/calendar-sync-CbzQX2UF.js +0 -6
- langflow/frontend/assets/calendar-x-2-BNmHDi_X.js +0 -6
- langflow/frontend/assets/calendar-x-LrNbzdAM.js +0 -6
- langflow/frontend/assets/camera-BseIeAZa.js +0 -6
- langflow/frontend/assets/camera-off-0d9MQnAK.js +0 -6
- langflow/frontend/assets/candy-DBuvO51G.js +0 -6
- langflow/frontend/assets/candy-cane-BhKAIRPp.js +0 -6
- langflow/frontend/assets/candy-off-xFO9zAdm.js +0 -6
- langflow/frontend/assets/cannabis-CECNWfs7.js +0 -6
- langflow/frontend/assets/captions-CZdZrpN9.js +0 -6
- langflow/frontend/assets/captions-off-ehI1itMu.js +0 -6
- langflow/frontend/assets/car-D0xYW2KF.js +0 -6
- langflow/frontend/assets/car-front-rr7hWrV5.js +0 -6
- langflow/frontend/assets/car-taxi-front-CQDj7ceR.js +0 -6
- langflow/frontend/assets/caravan-BI0wWOjB.js +0 -6
- langflow/frontend/assets/carrot-NTCSh6Bi.js +0 -6
- langflow/frontend/assets/case-lower-C0v-UmoB.js +0 -6
- langflow/frontend/assets/case-sensitive-CEBMjxQ0.js +0 -6
- langflow/frontend/assets/case-upper-qnPCGODe.js +0 -6
- langflow/frontend/assets/cassette-tape-o1NC2smT.js +0 -6
- langflow/frontend/assets/cast-DoGbtlSh.js +0 -6
- langflow/frontend/assets/castle-CDLhRCwv.js +0 -6
- langflow/frontend/assets/cat-ZE7MBg12.js +0 -6
- langflow/frontend/assets/cctv-BzSWabyA.js +0 -6
- langflow/frontend/assets/chart-area-BAWqnveI.js +0 -6
- langflow/frontend/assets/chart-bar-DQQ3LQU3.js +0 -6
- langflow/frontend/assets/chart-bar-big-D7MR2ePA.js +0 -6
- langflow/frontend/assets/chart-bar-decreasing-Vr_wGqvM.js +0 -6
- langflow/frontend/assets/chart-bar-increasing-DgEFeop5.js +0 -6
- langflow/frontend/assets/chart-bar-stacked-DnRijZKC.js +0 -6
- langflow/frontend/assets/chart-candlestick-DxGYDF5k.js +0 -6
- langflow/frontend/assets/chart-column-Et99item.js +0 -6
- langflow/frontend/assets/chart-column-big-yyRSq6kX.js +0 -6
- langflow/frontend/assets/chart-column-decreasing-CVvjizfE.js +0 -6
- langflow/frontend/assets/chart-column-increasing-CfeF2c-6.js +0 -6
- langflow/frontend/assets/chart-column-stacked-CF9zvWY4.js +0 -6
- langflow/frontend/assets/chart-gantt-BouGwyFq.js +0 -6
- langflow/frontend/assets/chart-line-Dk3EdrPb.js +0 -6
- langflow/frontend/assets/chart-network-CN4xGFXA.js +0 -6
- langflow/frontend/assets/chart-no-axes-column-BcQyHdMD.js +0 -6
- langflow/frontend/assets/chart-no-axes-column-decreasing-BgUclvV3.js +0 -6
- langflow/frontend/assets/chart-no-axes-column-increasing-DNTPc9wN.js +0 -6
- langflow/frontend/assets/chart-no-axes-combined-DF25ksrL.js +0 -6
- langflow/frontend/assets/chart-no-axes-gantt-BaC_vlS6.js +0 -6
- langflow/frontend/assets/chart-pie-B95LBWmZ.js +0 -6
- langflow/frontend/assets/chart-scatter-D8SFnMu1.js +0 -6
- langflow/frontend/assets/chart-spline-ClrgbOlE.js +0 -6
- langflow/frontend/assets/check-check-BXqbwrkO.js +0 -6
- langflow/frontend/assets/chef-hat-BjGOghzL.js +0 -6
- langflow/frontend/assets/cherry-CJB4mtL5.js +0 -6
- langflow/frontend/assets/chevron-first-2oTPGrLc.js +0 -6
- langflow/frontend/assets/chevron-last-3pCmFTmU.js +0 -6
- langflow/frontend/assets/chevron-left-ClDOQQjV.js +0 -6
- langflow/frontend/assets/chevron-right-C711qfbS.js +0 -6
- langflow/frontend/assets/chevrons-down-QCuIa8Yp.js +0 -6
- langflow/frontend/assets/chevrons-down-up-J6xSXJkb.js +0 -6
- langflow/frontend/assets/chevrons-left-NITQoGwJ.js +0 -6
- langflow/frontend/assets/chevrons-left-right-CYcrBR6M.js +0 -6
- langflow/frontend/assets/chevrons-left-right-ellipsis-Br8VMnkg.js +0 -6
- langflow/frontend/assets/chevrons-right-Cs2_g8bG.js +0 -6
- langflow/frontend/assets/chevrons-right-left-DtGiQ_O0.js +0 -6
- langflow/frontend/assets/chevrons-up-BMLMeGVh.js +0 -6
- langflow/frontend/assets/chrome-nvIjs2xZ.js +0 -6
- langflow/frontend/assets/church-Qq4UHf_z.js +0 -6
- langflow/frontend/assets/cigarette-CXfG_56T.js +0 -6
- langflow/frontend/assets/cigarette-off-CdYeRZyX.js +0 -6
- langflow/frontend/assets/circle-alert-DT5NKy9u.js +0 -6
- langflow/frontend/assets/circle-arrow-down-B2qM-Tuw.js +0 -6
- langflow/frontend/assets/circle-arrow-left-CBLpt9nA.js +0 -6
- langflow/frontend/assets/circle-arrow-out-down-left-gA68XlUY.js +0 -6
- langflow/frontend/assets/circle-arrow-out-down-right-HKXxeeQC.js +0 -6
- langflow/frontend/assets/circle-arrow-out-up-left-Cq1LyJKa.js +0 -6
- langflow/frontend/assets/circle-arrow-out-up-right-BUvVbJA7.js +0 -6
- langflow/frontend/assets/circle-arrow-right-D7t8P6ad.js +0 -6
- langflow/frontend/assets/circle-arrow-up-MHzCg4I0.js +0 -6
- langflow/frontend/assets/circle-check-B91Zb0zk.js +0 -6
- langflow/frontend/assets/circle-check-big-BVKtiAhQ.js +0 -6
- langflow/frontend/assets/circle-chevron-down-DNh3bpzK.js +0 -6
- langflow/frontend/assets/circle-chevron-left-BJb7vji3.js +0 -6
- langflow/frontend/assets/circle-chevron-right-CHmsilV-.js +0 -6
- langflow/frontend/assets/circle-chevron-up-Bj9nIZx9.js +0 -6
- langflow/frontend/assets/circle-dashed-DzEIY_5d.js +0 -6
- langflow/frontend/assets/circle-divide-BuJbzWip.js +0 -6
- langflow/frontend/assets/circle-dollar-sign-DdF9J_EI.js +0 -6
- langflow/frontend/assets/circle-dot-DitPRly6.js +0 -6
- langflow/frontend/assets/circle-dot-dashed-OHoDDXoS.js +0 -6
- langflow/frontend/assets/circle-ellipsis-Co5wf0tj.js +0 -6
- langflow/frontend/assets/circle-equal-qGSgRMn6.js +0 -6
- langflow/frontend/assets/circle-fading-arrow-up-DSM4N2tt.js +0 -6
- langflow/frontend/assets/circle-fading-plus-CTQq46rS.js +0 -6
- langflow/frontend/assets/circle-gauge-CisUMCG0.js +0 -6
- langflow/frontend/assets/circle-help-BF5hRBkX.js +0 -6
- langflow/frontend/assets/circle-minus-C3fjtT26.js +0 -6
- langflow/frontend/assets/circle-off-_zmE8lRn.js +0 -6
- langflow/frontend/assets/circle-parking-BLDdyc9C.js +0 -6
- langflow/frontend/assets/circle-parking-off-CxEO8auk.js +0 -6
- langflow/frontend/assets/circle-pause-CsP1hqTY.js +0 -6
- langflow/frontend/assets/circle-percent-CppecgnG.js +0 -6
- langflow/frontend/assets/circle-play-CElAyvGy.js +0 -6
- langflow/frontend/assets/circle-plus-DxOSr_qE.js +0 -6
- langflow/frontend/assets/circle-power-CX9PhDfK.js +0 -6
- langflow/frontend/assets/circle-slash-2--Mme5qmH.js +0 -6
- langflow/frontend/assets/circle-slash-BsqGhDcj.js +0 -6
- langflow/frontend/assets/circle-small-DQ5WLdC1.js +0 -6
- langflow/frontend/assets/circle-stop-5W_dFAx7.js +0 -6
- langflow/frontend/assets/circle-user-cdgPpsDB.js +0 -6
- langflow/frontend/assets/circle-user-round-DpFUTXdt.js +0 -6
- langflow/frontend/assets/circuit-board-Bzpo8k7-.js +0 -6
- langflow/frontend/assets/citrus-BD7KeVpe.js +0 -6
- langflow/frontend/assets/clapperboard-DJq3crx6.js +0 -6
- langflow/frontend/assets/clipboard-check-CzW6HoZg.js +0 -6
- langflow/frontend/assets/clipboard-copy-CuDmr3UP.js +0 -6
- langflow/frontend/assets/clipboard-list-blWwAWhj.js +0 -6
- langflow/frontend/assets/clipboard-minus-MDDcL-JV.js +0 -6
- langflow/frontend/assets/clipboard-paste-BALmGJWd.js +0 -6
- langflow/frontend/assets/clipboard-pen-CKtqpJ-f.js +0 -6
- langflow/frontend/assets/clipboard-pen-line-B8g42LUo.js +0 -6
- langflow/frontend/assets/clipboard-plus-DdcrgHOb.js +0 -6
- langflow/frontend/assets/clipboard-sn1jUIDV.js +0 -6
- langflow/frontend/assets/clipboard-type-DNViKiGe.js +0 -6
- langflow/frontend/assets/clipboard-x-BL6o1EDk.js +0 -6
- langflow/frontend/assets/clock-1-D_Xsorkr.js +0 -6
- langflow/frontend/assets/clock-10-C5lfthCJ.js +0 -6
- langflow/frontend/assets/clock-11-CrzatXPC.js +0 -6
- langflow/frontend/assets/clock-12-CB-3YTlR.js +0 -6
- langflow/frontend/assets/clock-2-CAjJbwpA.js +0 -6
- langflow/frontend/assets/clock-3-BkqbnGC2.js +0 -6
- langflow/frontend/assets/clock-4-B1iR-wjF.js +0 -6
- langflow/frontend/assets/clock-5-hqy_7zzP.js +0 -6
- langflow/frontend/assets/clock-6-COiBqCUV.js +0 -6
- langflow/frontend/assets/clock-7-D8H9-5o2.js +0 -6
- langflow/frontend/assets/clock-8-DmFZf8EJ.js +0 -6
- langflow/frontend/assets/clock-9-5vuBxoOH.js +0 -6
- langflow/frontend/assets/clock-CvX75A0g.js +0 -6
- langflow/frontend/assets/clock-alert-B4zpxMYp.js +0 -6
- langflow/frontend/assets/clock-arrow-down-Cp38KxCZ.js +0 -6
- langflow/frontend/assets/clock-arrow-up-Cu2Eqxj_.js +0 -6
- langflow/frontend/assets/clock-fading-DBqbXrNN.js +0 -6
- langflow/frontend/assets/cloud-alert-C8axZqAX.js +0 -6
- langflow/frontend/assets/cloud-cog-DH4WJaQY.js +0 -6
- langflow/frontend/assets/cloud-download-aSd93OOq.js +0 -6
- langflow/frontend/assets/cloud-drizzle-BoOXY0Vf.js +0 -6
- langflow/frontend/assets/cloud-ePqAv-Nj.js +0 -6
- langflow/frontend/assets/cloud-fog-DgOBgtbG.js +0 -6
- langflow/frontend/assets/cloud-hail-EUTfUsOC.js +0 -6
- langflow/frontend/assets/cloud-lightning-Bq38iQ8R.js +0 -6
- langflow/frontend/assets/cloud-moon-CEZa2582.js +0 -6
- langflow/frontend/assets/cloud-moon-rain-ViKAyE90.js +0 -6
- langflow/frontend/assets/cloud-off-BeDtlaCJ.js +0 -6
- langflow/frontend/assets/cloud-rain-BGFNQif7.js +0 -6
- langflow/frontend/assets/cloud-rain-wind-BJr3MNMX.js +0 -6
- langflow/frontend/assets/cloud-snow-B_NNumLp.js +0 -6
- langflow/frontend/assets/cloud-sun-CSeibAw_.js +0 -6
- langflow/frontend/assets/cloud-sun-rain-CmhhxE4C.js +0 -6
- langflow/frontend/assets/cloud-upload-DGtwHF2g.js +0 -6
- langflow/frontend/assets/cloudy-CZkWi5KD.js +0 -6
- langflow/frontend/assets/clover-DHTKeS-5.js +0 -6
- langflow/frontend/assets/club-BpMaUsgO.js +0 -6
- langflow/frontend/assets/code-xml-CAUmexA-.js +0 -6
- langflow/frontend/assets/codepen-ikBrTpKJ.js +0 -6
- langflow/frontend/assets/codesandbox-C08d09l6.js +0 -6
- langflow/frontend/assets/coffee-CvposdVX.js +0 -6
- langflow/frontend/assets/cog-C64LYrMn.js +0 -6
- langflow/frontend/assets/coins-UEx29OeF.js +0 -6
- langflow/frontend/assets/columns-2-Bsdbp-EE.js +0 -6
- langflow/frontend/assets/columns-3-DXwsg-oz.js +0 -6
- langflow/frontend/assets/columns-3-cog-DtVF6mVc.js +0 -6
- langflow/frontend/assets/columns-4-BRbvUIE-.js +0 -6
- langflow/frontend/assets/combine-BgQxFGO5.js +0 -6
- langflow/frontend/assets/command-B9cAeenh.js +0 -6
- langflow/frontend/assets/compass-pMFWbZJw.js +0 -6
- langflow/frontend/assets/component-BgLZWmP7.js +0 -6
- langflow/frontend/assets/computer-BXGdV9Gt.js +0 -6
- langflow/frontend/assets/concierge-bell-CbQqTx0G.js +0 -6
- langflow/frontend/assets/cone-CZ631cjP.js +0 -6
- langflow/frontend/assets/construction-DpDSFi2C.js +0 -6
- langflow/frontend/assets/contact-Bf_js1wR.js +0 -6
- langflow/frontend/assets/contact-round-CbjK6rc4.js +0 -6
- langflow/frontend/assets/container-SHkUJELq.js +0 -6
- langflow/frontend/assets/contrast-BrqH_HsS.js +0 -6
- langflow/frontend/assets/cookie-7yhFStaP.js +0 -6
- langflow/frontend/assets/cooking-pot-CtXq_mXS.js +0 -6
- langflow/frontend/assets/copy-D33RCBtr.js +0 -6
- langflow/frontend/assets/copy-check-BHsM9R9p.js +0 -6
- langflow/frontend/assets/copy-minus-DzHvDhtg.js +0 -6
- langflow/frontend/assets/copy-plus-D9aWk5ZC.js +0 -6
- langflow/frontend/assets/copy-slash-VkGSZ_CE.js +0 -6
- langflow/frontend/assets/copy-x-C4i424Hw.js +0 -6
- langflow/frontend/assets/copyleft-CqaewALy.js +0 -6
- langflow/frontend/assets/copyright-Bu0x5oIe.js +0 -6
- langflow/frontend/assets/corner-down-left-D6PAN-4K.js +0 -6
- langflow/frontend/assets/corner-down-right-Bn8MOthV.js +0 -6
- langflow/frontend/assets/corner-left-down-D5RxfmoN.js +0 -6
- langflow/frontend/assets/corner-left-up-C8TixmVG.js +0 -6
- langflow/frontend/assets/corner-right-down-CtmEwD6C.js +0 -6
- langflow/frontend/assets/corner-right-up-DG-F1pH2.js +0 -6
- langflow/frontend/assets/corner-up-left-QznD74yA.js +0 -6
- langflow/frontend/assets/corner-up-right-Bhkr_6ta.js +0 -6
- langflow/frontend/assets/cpu-CW82VU4w.js +0 -6
- langflow/frontend/assets/creative-commons-Bh5sqgki.js +0 -6
- langflow/frontend/assets/credit-card-1pfgVrv3.js +0 -6
- langflow/frontend/assets/croissant-DpBBx0pw.js +0 -6
- langflow/frontend/assets/crop-X7W6m64J.js +0 -6
- langflow/frontend/assets/cross-D542UVw8.js +0 -6
- langflow/frontend/assets/crosshair-B6mNFuS-.js +0 -6
- langflow/frontend/assets/crown-D6_nEBly.js +0 -6
- langflow/frontend/assets/cuboid-CyvwAGks.js +0 -6
- langflow/frontend/assets/cup-soda-lE90KQWF.js +0 -6
- langflow/frontend/assets/currency-CvqLSG-s.js +0 -6
- langflow/frontend/assets/cylinder-Dan7kvg6.js +0 -6
- langflow/frontend/assets/dam-BpbkiwPc.js +0 -6
- langflow/frontend/assets/database-CZ11Soos.js +0 -6
- langflow/frontend/assets/database-backup-ueaXvg29.js +0 -6
- langflow/frontend/assets/database-zap-CLyrj98z.js +0 -6
- langflow/frontend/assets/decimals-arrow-left-C4FshaZA.js +0 -6
- langflow/frontend/assets/decimals-arrow-right-BYKeQJvg.js +0 -6
- langflow/frontend/assets/delete-DGp28GjS.js +0 -6
- langflow/frontend/assets/dessert-vafoRC_I.js +0 -6
- langflow/frontend/assets/diameter-CpWKi4bQ.js +0 -6
- langflow/frontend/assets/diamond-D4sYlxiq.js +0 -6
- langflow/frontend/assets/diamond-minus-Dc9_xvul.js +0 -6
- langflow/frontend/assets/diamond-percent-Bls-21yM.js +0 -6
- langflow/frontend/assets/diamond-plus-DUfp2PhN.js +0 -6
- langflow/frontend/assets/dice-1-B5g_tzYc.js +0 -6
- langflow/frontend/assets/dice-2-DbCHSxL8.js +0 -6
- langflow/frontend/assets/dice-3-Bjv-XMP3.js +0 -6
- langflow/frontend/assets/dice-4-ChbYiYkR.js +0 -6
- langflow/frontend/assets/dice-5-CUmwrcU2.js +0 -6
- langflow/frontend/assets/dice-6-2a_DEvNP.js +0 -6
- langflow/frontend/assets/dices-Bfp6xf1T.js +0 -6
- langflow/frontend/assets/diff-DWrr4PgL.js +0 -6
- langflow/frontend/assets/disc-2-BKIHWtvV.js +0 -6
- langflow/frontend/assets/disc-3-C-YNVgLt.js +0 -6
- langflow/frontend/assets/disc-DcpBQ1vZ.js +0 -6
- langflow/frontend/assets/disc-album-BHqF8E8z.js +0 -6
- langflow/frontend/assets/divide-BowweBYy.js +0 -6
- langflow/frontend/assets/dna-CKx2UX_q.js +0 -6
- langflow/frontend/assets/dna-off-6vz4JWoY.js +0 -6
- langflow/frontend/assets/dock-CSWNUNEN.js +0 -6
- langflow/frontend/assets/dog-Brgy9TeF.js +0 -6
- langflow/frontend/assets/dollar-sign-BvVnYnyE.js +0 -6
- langflow/frontend/assets/donut-yE1ohHN1.js +0 -6
- langflow/frontend/assets/door-closed-DbQTZK_Z.js +0 -6
- langflow/frontend/assets/door-open-kU4MiMrV.js +0 -6
- langflow/frontend/assets/dot-BoAAat-a.js +0 -6
- langflow/frontend/assets/download-spnr31G_.js +0 -6
- langflow/frontend/assets/drafting-compass-BVLRoE9p.js +0 -6
- langflow/frontend/assets/drama-DH0VK2y4.js +0 -6
- langflow/frontend/assets/dribbble-BsRD_dOV.js +0 -6
- langflow/frontend/assets/drill-BQ8s8Ovp.js +0 -6
- langflow/frontend/assets/droplet-DgVYu4iw.js +0 -6
- langflow/frontend/assets/droplet-off-CWfFq3Y4.js +0 -6
- langflow/frontend/assets/droplets-BImhG8YB.js +0 -6
- langflow/frontend/assets/drum-CUBUrT-P.js +0 -6
- langflow/frontend/assets/drumstick-BdzvGI3x.js +0 -6
- langflow/frontend/assets/dumbbell-uzNP-XjP.js +0 -6
- langflow/frontend/assets/ear-DG1WWYBD.js +0 -6
- langflow/frontend/assets/ear-off-CnLtouCs.js +0 -6
- langflow/frontend/assets/earth-BLY47zLG.js +0 -6
- langflow/frontend/assets/earth-lock-C_4WyhYm.js +0 -6
- langflow/frontend/assets/eclipse-DotUntyW.js +0 -6
- langflow/frontend/assets/egg-D0p6D8iJ.js +0 -6
- langflow/frontend/assets/egg-fried-D8ZYWDd8.js +0 -6
- langflow/frontend/assets/egg-off-COi0Zq6A.js +0 -6
- langflow/frontend/assets/ellipsis-BqKuKkUq.js +0 -6
- langflow/frontend/assets/ellipsis-vertical-DLAiRoTI.js +0 -6
- langflow/frontend/assets/equal-BPZTCCOR.js +0 -6
- langflow/frontend/assets/equal-approximately-Ci9wlW7H.js +0 -6
- langflow/frontend/assets/equal-not-BbjIRsV9.js +0 -6
- langflow/frontend/assets/eraser-kryVNVEd.js +0 -6
- langflow/frontend/assets/ethernet-port-DY0h8gUB.js +0 -6
- langflow/frontend/assets/euro-CcGvvYEu.js +0 -6
- langflow/frontend/assets/expand-BT1hO_Gd.js +0 -6
- langflow/frontend/assets/eye-0Uepj1qe.js +0 -6
- langflow/frontend/assets/eye-closed-DhVJCZQy.js +0 -6
- langflow/frontend/assets/eye-off-DMZQc0_N.js +0 -6
- langflow/frontend/assets/facebook-BYV_s-7j.js +0 -6
- langflow/frontend/assets/factory-HMK58m9C.js +0 -6
- langflow/frontend/assets/fan-MiojL-un.js +0 -6
- langflow/frontend/assets/fast-forward-CP1NpIFe.js +0 -6
- langflow/frontend/assets/feather-BSp2xn9F.js +0 -6
- langflow/frontend/assets/fence-CBJziCGR.js +0 -6
- langflow/frontend/assets/ferris-wheel-Dc4hXImA.js +0 -6
- langflow/frontend/assets/figma-D1WZZKxq.js +0 -6
- langflow/frontend/assets/file-BJeOmSAw.js +0 -6
- langflow/frontend/assets/file-archive-CYnlcCTN.js +0 -6
- langflow/frontend/assets/file-audio-2-CFgbi0zE.js +0 -6
- langflow/frontend/assets/file-audio-UXcSArn5.js +0 -6
- langflow/frontend/assets/file-axis-3d-BkpPUlaa.js +0 -6
- langflow/frontend/assets/file-badge-2-DxqhO2Ge.js +0 -6
- langflow/frontend/assets/file-badge-R64auIUU.js +0 -6
- langflow/frontend/assets/file-box-BHVs20bG.js +0 -6
- langflow/frontend/assets/file-chart-column-DSBEh916.js +0 -6
- langflow/frontend/assets/file-chart-column-increasing-BLEWUcgJ.js +0 -6
- langflow/frontend/assets/file-chart-line-CkAf2P_o.js +0 -6
- langflow/frontend/assets/file-chart-pie-C6JyaHLt.js +0 -6
- langflow/frontend/assets/file-check-2-Ep64Ldje.js +0 -6
- langflow/frontend/assets/file-check-CfwhdRf-.js +0 -6
- langflow/frontend/assets/file-clock-yuvRB4zR.js +0 -6
- langflow/frontend/assets/file-code-2-DJSRSqgI.js +0 -6
- langflow/frontend/assets/file-code-tTXJt3y7.js +0 -6
- langflow/frontend/assets/file-cog-C3Bke8nN.js +0 -6
- langflow/frontend/assets/file-diff-07-zDqLK.js +0 -6
- langflow/frontend/assets/file-digit-C-TZ6TMx.js +0 -6
- langflow/frontend/assets/file-down-C_21auWB.js +0 -6
- langflow/frontend/assets/file-heart-BUWO_Ubq.js +0 -6
- langflow/frontend/assets/file-image-DeGNhVbH.js +0 -6
- langflow/frontend/assets/file-input-DC648sVv.js +0 -6
- langflow/frontend/assets/file-json-2-BleUm6B-.js +0 -6
- langflow/frontend/assets/file-json-DvYkA26T.js +0 -6
- langflow/frontend/assets/file-key-2-Df3DueKg.js +0 -6
- langflow/frontend/assets/file-key-D25uIzEV.js +0 -6
- langflow/frontend/assets/file-lock-2-CRuvNTc_.js +0 -6
- langflow/frontend/assets/file-lock-CSpPgoDZ.js +0 -6
- langflow/frontend/assets/file-minus-2-DYnr-vtz.js +0 -6
- langflow/frontend/assets/file-minus-CwO2J7XK.js +0 -6
- langflow/frontend/assets/file-music-frXWNJoK.js +0 -6
- langflow/frontend/assets/file-output-BCvl7eUX.js +0 -6
- langflow/frontend/assets/file-pen-CAaJniG8.js +0 -6
- langflow/frontend/assets/file-pen-line-Cgv1i6mY.js +0 -6
- langflow/frontend/assets/file-plus-2-BSvGeJIg.js +0 -6
- langflow/frontend/assets/file-plus-Bh-AJgy4.js +0 -6
- langflow/frontend/assets/file-question-DEVapx4f.js +0 -6
- langflow/frontend/assets/file-scan-t-aTKHOe.js +0 -6
- langflow/frontend/assets/file-search-2-Bh2Lyxdg.js +0 -6
- langflow/frontend/assets/file-search-B2BT1IJF.js +0 -6
- langflow/frontend/assets/file-sliders-BDrWWLnj.js +0 -6
- langflow/frontend/assets/file-spreadsheet-CMHqeLFl.js +0 -6
- langflow/frontend/assets/file-stack-DzWV1JJQ.js +0 -6
- langflow/frontend/assets/file-symlink-m0SuHMbb.js +0 -6
- langflow/frontend/assets/file-terminal-RtBqsz8t.js +0 -6
- langflow/frontend/assets/file-text-DcnfhlJS.js +0 -6
- langflow/frontend/assets/file-type-2-HgN3usQi.js +0 -6
- langflow/frontend/assets/file-type-Wo4mXDEa.js +0 -6
- langflow/frontend/assets/file-up-Ah5Vlblk.js +0 -6
- langflow/frontend/assets/file-user-C10BV3-F.js +0 -6
- langflow/frontend/assets/file-video-2-D60PR2tb.js +0 -6
- langflow/frontend/assets/file-video-D1LP9ceq.js +0 -6
- langflow/frontend/assets/file-volume-2-DWd0pH87.js +0 -6
- langflow/frontend/assets/file-volume-Dx1qqTPj.js +0 -6
- langflow/frontend/assets/file-warning-CntAQ03q.js +0 -6
- langflow/frontend/assets/file-x-2-D7pJdGQ4.js +0 -6
- langflow/frontend/assets/file-x-w3PSwPaN.js +0 -6
- langflow/frontend/assets/files-Ba_FZh9m.js +0 -6
- langflow/frontend/assets/film-CSV5uKAX.js +0 -6
- langflow/frontend/assets/fingerprint-BIoRa0QM.js +0 -6
- langflow/frontend/assets/fire-extinguisher-9pJExz54.js +0 -6
- langflow/frontend/assets/fish-D2IHyGo1.js +0 -6
- langflow/frontend/assets/fish-off-B1AV5M6o.js +0 -6
- langflow/frontend/assets/fish-symbol-1FtOa4Ff.js +0 -6
- langflow/frontend/assets/flag-DeciN7ml.js +0 -6
- langflow/frontend/assets/flag-off-DUP9GpZR.js +0 -6
- langflow/frontend/assets/flag-triangle-left-BFwEeuS_.js +0 -6
- langflow/frontend/assets/flag-triangle-right-CI_SLj86.js +0 -6
- langflow/frontend/assets/flame-GFGSOHNO.js +0 -6
- langflow/frontend/assets/flame-kindling-D8mfrPga.js +0 -6
- langflow/frontend/assets/flashlight-lOh9FijK.js +0 -6
- langflow/frontend/assets/flashlight-off-Bsi5bvDr.js +0 -6
- langflow/frontend/assets/flask-conical-Da2dFJgy.js +0 -6
- langflow/frontend/assets/flask-conical-off-BmBZh8li.js +0 -6
- langflow/frontend/assets/flask-round-DCNbM1Xr.js +0 -6
- langflow/frontend/assets/flip-horizontal-2-DjIxLldP.js +0 -6
- langflow/frontend/assets/flip-horizontal-Y1hdy1M8.js +0 -6
- langflow/frontend/assets/flip-vertical-2-CUzfycnQ.js +0 -6
- langflow/frontend/assets/flip-vertical-D-fZiBdV.js +0 -6
- langflow/frontend/assets/flower-2-DpuYXaI0.js +0 -6
- langflow/frontend/assets/flower-D7VN2vRV.js +0 -6
- langflow/frontend/assets/focus-CgjGqIlO.js +0 -6
- langflow/frontend/assets/fold-horizontal-DHM5GPi5.js +0 -6
- langflow/frontend/assets/fold-vertical-C9gKvqOi.js +0 -6
- langflow/frontend/assets/folder-DHBzBNi6.js +0 -6
- langflow/frontend/assets/folder-archive-Bg0p1BGr.js +0 -6
- langflow/frontend/assets/folder-check-C_J-pqhC.js +0 -6
- langflow/frontend/assets/folder-clock-Bdt0bWYb.js +0 -6
- langflow/frontend/assets/folder-closed-CpG_goS_.js +0 -6
- langflow/frontend/assets/folder-code-BfrcjBiJ.js +0 -6
- langflow/frontend/assets/folder-cog-D0HSZlUk.js +0 -6
- langflow/frontend/assets/folder-dot-Bl6Z8yRd.js +0 -6
- langflow/frontend/assets/folder-down-Cd5yX2hR.js +0 -6
- langflow/frontend/assets/folder-git-2-DW-8izzy.js +0 -6
- langflow/frontend/assets/folder-git-Dl6cI4x0.js +0 -6
- langflow/frontend/assets/folder-heart-BcWNEM_h.js +0 -6
- langflow/frontend/assets/folder-input-D08-f3t3.js +0 -6
- langflow/frontend/assets/folder-kanban-nzQd-lfD.js +0 -6
- langflow/frontend/assets/folder-key-DpznQOiZ.js +0 -6
- langflow/frontend/assets/folder-lock-SUBi7sWw.js +0 -6
- langflow/frontend/assets/folder-minus-DTAhS5kW.js +0 -6
- langflow/frontend/assets/folder-open-P_5T1_df.js +0 -6
- langflow/frontend/assets/folder-open-dot-DLsuij9P.js +0 -6
- langflow/frontend/assets/folder-output-Hoz7C5Sg.js +0 -6
- langflow/frontend/assets/folder-pen-CEFhZuKm.js +0 -6
- langflow/frontend/assets/folder-plus-DYMoWZt-.js +0 -6
- langflow/frontend/assets/folder-root-BTXEc8rM.js +0 -6
- langflow/frontend/assets/folder-search-2-CI2Sxf-y.js +0 -6
- langflow/frontend/assets/folder-search-CF6bJDV6.js +0 -6
- langflow/frontend/assets/folder-symlink-Dc7hVPyd.js +0 -6
- langflow/frontend/assets/folder-sync-BPBUfGnX.js +0 -6
- langflow/frontend/assets/folder-tree-DY4Ftj6k.js +0 -6
- langflow/frontend/assets/folder-up-BE_eC_UH.js +0 -6
- langflow/frontend/assets/folder-x--YzsyTv2.js +0 -6
- langflow/frontend/assets/folders-DBj-mUxf.js +0 -6
- langflow/frontend/assets/footprints-B3LklTMW.js +0 -6
- langflow/frontend/assets/forklift-C5LPpWzy.js +0 -6
- langflow/frontend/assets/forward-C0afMWvu.js +0 -6
- langflow/frontend/assets/frame-CuPcpGgS.js +0 -6
- langflow/frontend/assets/framer-CbCQQsmt.js +0 -6
- langflow/frontend/assets/frown-DxEX23Hm.js +0 -6
- langflow/frontend/assets/fuel-D1xGHjwV.js +0 -6
- langflow/frontend/assets/fullscreen-BIGq91ZI.js +0 -6
- langflow/frontend/assets/funnel-C-NQV0mL.js +0 -6
- langflow/frontend/assets/funnel-plus-D_vUHLvt.js +0 -6
- langflow/frontend/assets/funnel-x-DGu21bT2.js +0 -6
- langflow/frontend/assets/gallery-horizontal-BBiE0_x0.js +0 -6
- langflow/frontend/assets/gallery-horizontal-end-CnMgJ5DS.js +0 -6
- langflow/frontend/assets/gallery-thumbnails-CtOySXe1.js +0 -6
- langflow/frontend/assets/gallery-vertical-CV_I5Zfu.js +0 -6
- langflow/frontend/assets/gallery-vertical-end-4-jdBsGn.js +0 -6
- langflow/frontend/assets/gamepad-2-BvFzOQpx.js +0 -6
- langflow/frontend/assets/gamepad-DJe6Thxy.js +0 -6
- langflow/frontend/assets/gauge-DEzKFfM7.js +0 -6
- langflow/frontend/assets/gavel-CsTDuJw1.js +0 -6
- langflow/frontend/assets/gem-Bypt3rj7.js +0 -6
- langflow/frontend/assets/ghost-CG8V_Wik.js +0 -6
- langflow/frontend/assets/gift-D3Bw3K_w.js +0 -6
- langflow/frontend/assets/git-branch-DQvQg83e.js +0 -6
- langflow/frontend/assets/git-branch-plus-DnKO-rdL.js +0 -6
- langflow/frontend/assets/git-commit-horizontal-BSHVqLrs.js +0 -6
- langflow/frontend/assets/git-commit-vertical-CreWnTSn.js +0 -6
- langflow/frontend/assets/git-compare-B0PwMWpM.js +0 -6
- langflow/frontend/assets/git-compare-arrows-VgtsGNFF.js +0 -6
- langflow/frontend/assets/git-fork-DJZ2qmdu.js +0 -6
- langflow/frontend/assets/git-graph-D8PXH9s_.js +0 -6
- langflow/frontend/assets/git-merge-By9Qd2wm.js +0 -6
- langflow/frontend/assets/git-pull-request-C88DIeQ6.js +0 -6
- langflow/frontend/assets/git-pull-request-arrow-DG1SpKMq.js +0 -6
- langflow/frontend/assets/git-pull-request-closed-T8i53LyB.js +0 -6
- langflow/frontend/assets/git-pull-request-create-Vb2ZcmTQ.js +0 -6
- langflow/frontend/assets/git-pull-request-create-arrow-SiyvlJvG.js +0 -6
- langflow/frontend/assets/git-pull-request-draft-DUHB6Xxe.js +0 -6
- langflow/frontend/assets/github-C8ujlSn8.js +0 -6
- langflow/frontend/assets/gitlab-DY2Q3s_L.js +0 -6
- langflow/frontend/assets/glass-water-DshGksYS.js +0 -6
- langflow/frontend/assets/glasses-B8fR6VRZ.js +0 -6
- langflow/frontend/assets/globe-BOqIf5Wv.js +0 -6
- langflow/frontend/assets/globe-lock-CzUC5IEW.js +0 -6
- langflow/frontend/assets/goal-Vg3Wc1hY.js +0 -6
- langflow/frontend/assets/grab-Dxi_6jkO.js +0 -6
- langflow/frontend/assets/graduation-cap-BwucrBc9.js +0 -6
- langflow/frontend/assets/grape-OktxCY9q.js +0 -6
- langflow/frontend/assets/grid-2x2-CZ4LTCFd.js +0 -6
- langflow/frontend/assets/grid-2x2-check-CMnb1a9J.js +0 -6
- langflow/frontend/assets/grid-2x2-plus-BmbiTZxi.js +0 -6
- langflow/frontend/assets/grid-2x2-x-N-uF1q56.js +0 -6
- langflow/frontend/assets/grid-3x3-DIA7EVIA.js +0 -6
- langflow/frontend/assets/grip-B0YsYJKI.js +0 -6
- langflow/frontend/assets/grip-horizontal-CrMHt-nA.js +0 -6
- langflow/frontend/assets/grip-vertical-CzW6eTXD.js +0 -6
- langflow/frontend/assets/group-FSnIJ4jE.js +0 -6
- langflow/frontend/assets/guitar-CGwJlYgR.js +0 -6
- langflow/frontend/assets/ham-2r9Ls8Vw.js +0 -6
- langflow/frontend/assets/hammer-Dui_gaQL.js +0 -6
- langflow/frontend/assets/hand-BVXVxL5m.js +0 -6
- langflow/frontend/assets/hand-coins-B1hPR1t0.js +0 -6
- langflow/frontend/assets/hand-heart-CFSUyE4-.js +0 -6
- langflow/frontend/assets/hand-helping-BC9Nsi9A.js +0 -6
- langflow/frontend/assets/hand-metal-DlApbOIj.js +0 -6
- langflow/frontend/assets/hand-platter-B5Fh8FyW.js +0 -6
- langflow/frontend/assets/handshake-B7QevLMo.js +0 -6
- langflow/frontend/assets/hard-drive-P7jt4ry6.js +0 -6
- langflow/frontend/assets/hard-drive-download-CGLjKx8_.js +0 -6
- langflow/frontend/assets/hard-drive-upload-BVR4a8dK.js +0 -6
- langflow/frontend/assets/hard-hat-BVHmLBWZ.js +0 -6
- langflow/frontend/assets/hash-Cy_nIGAs.js +0 -6
- langflow/frontend/assets/haze-C0IHpJQl.js +0 -6
- langflow/frontend/assets/hdmi-port-DQdigNCk.js +0 -6
- langflow/frontend/assets/heading-1-y80kG5je.js +0 -6
- langflow/frontend/assets/heading-2-DheBF6n8.js +0 -6
- langflow/frontend/assets/heading-3-jkgnS7dK.js +0 -6
- langflow/frontend/assets/heading-4-BpvVn18-.js +0 -6
- langflow/frontend/assets/heading-5-DH3G5xNX.js +0 -6
- langflow/frontend/assets/heading-6-D2HSUEY3.js +0 -6
- langflow/frontend/assets/heading-Bp2VrhJ9.js +0 -6
- langflow/frontend/assets/headphone-off-CpbOzIOQ.js +0 -6
- langflow/frontend/assets/headphones-CNZ6eFL8.js +0 -6
- langflow/frontend/assets/headset-CoIAhYny.js +0 -6
- langflow/frontend/assets/heart-5gd2ViSB.js +0 -6
- langflow/frontend/assets/heart-crack-aYzz14B5.js +0 -6
- langflow/frontend/assets/heart-handshake-BMKYy31S.js +0 -6
- langflow/frontend/assets/heart-minus-AklI9-MR.js +0 -6
- langflow/frontend/assets/heart-off-Cf0U8ha5.js +0 -6
- langflow/frontend/assets/heart-plus-BKwZH_J0.js +0 -6
- langflow/frontend/assets/heart-pulse-_7ddh519.js +0 -6
- langflow/frontend/assets/heater-Diw3EYfF.js +0 -6
- langflow/frontend/assets/hexagon-BTBf8idD.js +0 -6
- langflow/frontend/assets/highlighter-B0YDF2wa.js +0 -6
- langflow/frontend/assets/history-BDIXPh9_.js +0 -6
- langflow/frontend/assets/hop-CGA6q8Vm.js +0 -6
- langflow/frontend/assets/hop-off-CspGh94X.js +0 -6
- langflow/frontend/assets/hospital-CkxwUPZX.js +0 -6
- langflow/frontend/assets/hotel-DiRHLl0N.js +0 -6
- langflow/frontend/assets/hourglass-7QgnnBxF.js +0 -6
- langflow/frontend/assets/house-PmIvwCGE.js +0 -6
- langflow/frontend/assets/house-plug-D6-CvbzS.js +0 -6
- langflow/frontend/assets/house-plus-fnF0Q1S5.js +0 -6
- langflow/frontend/assets/house-wifi-D5DbD8CC.js +0 -6
- langflow/frontend/assets/ice-cream-bowl-DG7h7X7a.js +0 -6
- langflow/frontend/assets/ice-cream-cone-jr_R23US.js +0 -6
- langflow/frontend/assets/id-card-Kj7Yhkme.js +0 -6
- langflow/frontend/assets/image-CT8Z1KiI.js +0 -6
- langflow/frontend/assets/image-down-BXlsHkdJ.js +0 -6
- langflow/frontend/assets/image-minus-Dx3wFWFv.js +0 -6
- langflow/frontend/assets/image-off-0xSbW3dO.js +0 -6
- langflow/frontend/assets/image-play-INW5qgbJ.js +0 -6
- langflow/frontend/assets/image-plus-B9upvJbV.js +0 -6
- langflow/frontend/assets/image-up-Wgvg5K6c.js +0 -6
- langflow/frontend/assets/image-upscale-eBe3IrfA.js +0 -6
- langflow/frontend/assets/images-CKmX8_ZE.js +0 -6
- langflow/frontend/assets/import-DiSVaG7N.js +0 -6
- langflow/frontend/assets/inbox-CdOX8Icw.js +0 -6
- langflow/frontend/assets/indent-decrease-C7QHjBRg.js +0 -6
- langflow/frontend/assets/indent-increase-Ce0og9UZ.js +0 -6
- langflow/frontend/assets/index-2QKfOwQz.js +0 -1
- langflow/frontend/assets/index-2uQUhMEj.js +0 -1
- langflow/frontend/assets/index-4Mlswa0P.js +0 -1
- langflow/frontend/assets/index-B-KzTSjm.js +0 -1
- langflow/frontend/assets/index-B0rTFfBY.js +0 -1
- langflow/frontend/assets/index-B3BImWpa.js +0 -1
- langflow/frontend/assets/index-B3MGOMPg.js +0 -1
- langflow/frontend/assets/index-B41GnrGb.js +0 -21
- langflow/frontend/assets/index-B61Iucc2.js +0 -1
- langflow/frontend/assets/index-B7-I86_o.js +0 -1
- langflow/frontend/assets/index-B9tZ1GT6.js +0 -1
- langflow/frontend/assets/index-B9ywHEr5.js +0 -381
- langflow/frontend/assets/index-BA5Th8o9.js +0 -399
- langflow/frontend/assets/index-BAtp7_bt.js +0 -1
- langflow/frontend/assets/index-BBsMQR56.js +0 -20
- langflow/frontend/assets/index-BEa6tC2W.js +0 -7
- langflow/frontend/assets/index-BFItMCuU.js +0 -1
- langflow/frontend/assets/index-BFzVY7Nm.js +0 -1
- langflow/frontend/assets/index-BIZ_KOfj.js +0 -1
- langflow/frontend/assets/index-BJ_urhma.js +0 -1
- langflow/frontend/assets/index-BKJwmaxy.js +0 -1
- langflow/frontend/assets/index-BMzmXi7X.js +0 -1
- langflow/frontend/assets/index-BNh7b_1z.js +0 -1
- langflow/frontend/assets/index-BQETpRDP.js +0 -1
- langflow/frontend/assets/index-BQU253FX.js +0 -1
- langflow/frontend/assets/index-BQm6cH0D.js +0 -1
- langflow/frontend/assets/index-BRL6AvWi.js +0 -1
- langflow/frontend/assets/index-BRa3jhDA.js +0 -1
- langflow/frontend/assets/index-BTKi0LQE.js +0 -1
- langflow/frontend/assets/index-BTl_euDg.js +0 -1
- langflow/frontend/assets/index-BU6Vg5LE.js +0 -1
- langflow/frontend/assets/index-BUY4svgp.js +0 -1
- langflow/frontend/assets/index-BVeuK3hL.js +0 -1
- langflow/frontend/assets/index-BW6B6HXq.js +0 -1
- langflow/frontend/assets/index-BW8s5aZH.js +0 -1
- langflow/frontend/assets/index-BXM7wXF_.js +0 -185
- langflow/frontend/assets/index-BXs3aDj7.js +0 -1
- langflow/frontend/assets/index-B__vQOiE.js +0 -1
- langflow/frontend/assets/index-B_gQg1Ia.js +0 -1
- langflow/frontend/assets/index-BhgSwFHy.js +0 -1
- langflow/frontend/assets/index-BiHOs6w-.js +0 -1
- langflow/frontend/assets/index-BjNu8Slh.js +0 -1
- langflow/frontend/assets/index-BjVxHGPh.js +0 -1
- langflow/frontend/assets/index-BkIxy5hm.js +0 -1
- langflow/frontend/assets/index-Bmp8MMKQ.js +0 -1
- langflow/frontend/assets/index-BolQxU0J.js +0 -1
- langflow/frontend/assets/index-BrukvKtm.js +0 -1
- langflow/frontend/assets/index-Buc1fNZf.js +0 -1
- langflow/frontend/assets/index-BwLqtGH-.js +0 -1
- langflow/frontend/assets/index-BwOvHZia.js +0 -1
- langflow/frontend/assets/index-By-Q8tRv.js +0 -1
- langflow/frontend/assets/index-BzFZ-RLv.js +0 -1
- langflow/frontend/assets/index-BzUZ7LvQ.js +0 -767
- langflow/frontend/assets/index-C-LO-qz3.js +0 -1
- langflow/frontend/assets/index-C-pqZWxL.js +0 -1
- langflow/frontend/assets/index-C28aHVop.js +0 -1
- langflow/frontend/assets/index-C29JhKMO.js +0 -1
- langflow/frontend/assets/index-C35CcHFW.js +0 -1
- langflow/frontend/assets/index-C47EGVaO.js +0 -1
- langflow/frontend/assets/index-C5MlvNqt.js +0 -1
- langflow/frontend/assets/index-CBkOCjun.js +0 -205
- langflow/frontend/assets/index-CD0y3pmC.js +0 -1
- langflow/frontend/assets/index-CF5bkPY1.js +0 -1
- langflow/frontend/assets/index-CK8XfBh9.js +0 -1
- langflow/frontend/assets/index-CKNlB8-x.js +0 -1
- langflow/frontend/assets/index-CMoadJdI.js +0 -1
- langflow/frontend/assets/index-CNktQBsO.js +0 -1
- langflow/frontend/assets/index-CR5len4K.css +0 -1
- langflow/frontend/assets/index-CSKTxg0h.js +0 -1
- langflow/frontend/assets/index-CVWSTnX7.js +0 -1
- langflow/frontend/assets/index-CXgT5tuh.js +0 -1
- langflow/frontend/assets/index-CXi-kvMN.js +0 -1
- langflow/frontend/assets/index-CYWr1RTE.js +0 -1
- langflow/frontend/assets/index-CYsVGGsn.js +0 -1
- langflow/frontend/assets/index-C_jiTpRt.js +0 -1
- langflow/frontend/assets/index-CajLPh7J.js +0 -1
- langflow/frontend/assets/index-Cbswwof2.js +0 -1
- langflow/frontend/assets/index-CdGEh5Dd.js +0 -1
- langflow/frontend/assets/index-Cg8JGhuO.js +0 -1
- langflow/frontend/assets/index-Cgt3Y-Xc.js +0 -1
- langflow/frontend/assets/index-ChjP_lcd.js +0 -1
- langflow/frontend/assets/index-CjCZfoPa.js +0 -1
- langflow/frontend/assets/index-CkP6dNdd.js +0 -1
- langflow/frontend/assets/index-CksU1mCy.js +0 -1
- langflow/frontend/assets/index-CldV8cHX.js +0 -1
- langflow/frontend/assets/index-CmnAXW2M.js +0 -1
- langflow/frontend/assets/index-CnTe-ib8.js +0 -1
- langflow/frontend/assets/index-CppXkyAI.js +0 -1
- langflow/frontend/assets/index-CtlV5QSP.js +0 -1
- langflow/frontend/assets/index-Ctz536xU.js +0 -1
- langflow/frontend/assets/index-CumvaFGa.js +0 -1
- langflow/frontend/assets/index-CwHrfmT4.js +0 -1
- langflow/frontend/assets/index-CxThPLLM.js +0 -1
- langflow/frontend/assets/index-CygHHaG2.js +0 -1
- langflow/frontend/assets/index-D-Xdt1WZ.js +0 -1
- langflow/frontend/assets/index-D0rileO3.js +0 -127
- langflow/frontend/assets/index-D13KZztq.js +0 -1
- langflow/frontend/assets/index-D37V2bzg.js +0 -1
- langflow/frontend/assets/index-D3LYZj5R.js +0 -1
- langflow/frontend/assets/index-D3PL-v55.js +0 -1
- langflow/frontend/assets/index-D3k8ERHA.js +0 -1
- langflow/frontend/assets/index-D3xD_Vi3.js +0 -1
- langflow/frontend/assets/index-D4KStq-y.js +0 -1
- langflow/frontend/assets/index-D6IWUtCW.js +0 -1
- langflow/frontend/assets/index-D9EYpYAn.js +0 -1
- langflow/frontend/assets/index-D9pRkBVQ.js +0 -1
- langflow/frontend/assets/index-DBYJSBIJ.js +0 -108
- langflow/frontend/assets/index-DCBcV8DO.js +0 -1
- langflow/frontend/assets/index-DGMmz1qB.js +0 -1
- langflow/frontend/assets/index-DIIpP9BC.js +0 -1
- langflow/frontend/assets/index-DK0SpiSw.js +0 -1
- langflow/frontend/assets/index-DKiew9tJ.js +0 -1
- langflow/frontend/assets/index-DLiLtnQb.js +0 -1
- langflow/frontend/assets/index-DLsjc7AJ.js +0 -1
- langflow/frontend/assets/index-DMo7t1c2.js +0 -1
- langflow/frontend/assets/index-DNnbYSjo.js +0 -1
- langflow/frontend/assets/index-DPXTlNhX.js +0 -1
- langflow/frontend/assets/index-DPwI8ASU.js +0 -1
- langflow/frontend/assets/index-DR86Lsio.js +0 -1
- langflow/frontend/assets/index-DRGpD-Cf.js +0 -1
- langflow/frontend/assets/index-DTjOvZoy.js +0 -1
- langflow/frontend/assets/index-DUIyyegl.js +0 -1
- langflow/frontend/assets/index-DVTTJ573.js +0 -1
- langflow/frontend/assets/index-DWD-qFGN.js +0 -1
- langflow/frontend/assets/index-DXC9SGLO.js +0 -1
- langflow/frontend/assets/index-DXGrBtIm.js +0 -2
- langflow/frontend/assets/index-DcthS0OS.js +0 -1
- langflow/frontend/assets/index-DeO1TmoJ.js +0 -1
- langflow/frontend/assets/index-DfdXqTkC.js +0 -1
- langflow/frontend/assets/index-DgEsHHbn.js +0 -1
- langflow/frontend/assets/index-DiPdSAb-.js +0 -1
- langflow/frontend/assets/index-Dj1_1AVu.js +0 -1
- langflow/frontend/assets/index-DjX3Rlg0.js +0 -1
- langflow/frontend/assets/index-Dp665wgU.js +0 -1
- langflow/frontend/assets/index-DpUVtJBm.js +0 -7321
- langflow/frontend/assets/index-DqykhdBR.js +0 -1
- langflow/frontend/assets/index-DrCxi3rC.js +0 -1
- langflow/frontend/assets/index-DrVyWfLb.js +0 -1
- langflow/frontend/assets/index-Ds909mc5.js +0 -1
- langflow/frontend/assets/index-DtssSJxD.js +0 -1
- langflow/frontend/assets/index-Dunq7Fbc.js +0 -1
- langflow/frontend/assets/index-Dv5PD2q_.js +0 -1
- langflow/frontend/assets/index-DvbGYJtn.js +0 -1
- langflow/frontend/assets/index-Dxa1dBKG.js +0 -1
- langflow/frontend/assets/index-DxlRpmOX.js +0 -13
- langflow/frontend/assets/index-DyF-bhai.js +0 -1
- langflow/frontend/assets/index-DywEJqhX.js +0 -1
- langflow/frontend/assets/index-EG_OxGv1.js +0 -1
- langflow/frontend/assets/index-EzafEE3l.js +0 -1
- langflow/frontend/assets/index-F3rYC31i.js +0 -1
- langflow/frontend/assets/index-FSWmLCr-.js +0 -1
- langflow/frontend/assets/index-HTtZBzMC.js +0 -1
- langflow/frontend/assets/index-In_88aci.js +0 -1
- langflow/frontend/assets/index-J48O83cO.js +0 -1
- langflow/frontend/assets/index-JHNbfi9f.js +0 -1
- langflow/frontend/assets/index-JRpZxXX0.js +0 -1
- langflow/frontend/assets/index-Ku1RDlBy.js +0 -1
- langflow/frontend/assets/index-LJXUrkrg.js +0 -1
- langflow/frontend/assets/index-LfoCLlQg.js +0 -1
- langflow/frontend/assets/index-MUTJNp7V.js +0 -1
- langflow/frontend/assets/index-OD2aObmN.js +0 -1
- langflow/frontend/assets/index-Ocb9xE6f.js +0 -1
- langflow/frontend/assets/index-OveD7Elj.js +0 -1
- langflow/frontend/assets/index-Q2ERMfmI.js +0 -1
- langflow/frontend/assets/index-U8072tZG.js +0 -1
- langflow/frontend/assets/index-UYJ_RoEv.js +0 -1
- langflow/frontend/assets/index-VQoziAj6.js +0 -1
- langflow/frontend/assets/index-XGbXMbq1.js +0 -281
- langflow/frontend/assets/index-_LYoMZUZ.js +0 -1
- langflow/frontend/assets/index-_RoBlfFQ.js +0 -1
- langflow/frontend/assets/index-anR8pASH.js +0 -1
- langflow/frontend/assets/index-e_gCJGBV.js +0 -1
- langflow/frontend/assets/index-el6qZ4-I.js +0 -1
- langflow/frontend/assets/index-exua16zz.js +0 -1
- langflow/frontend/assets/index-exxjib9E.js +0 -1
- langflow/frontend/assets/index-jJhmhzvv.js +0 -1
- langflow/frontend/assets/index-kgyZ5iib.js +0 -1
- langflow/frontend/assets/index-mObAeoAH.js +0 -1
- langflow/frontend/assets/index-nAPqAw8J.js +0 -1
- langflow/frontend/assets/index-pkt4K6Im.js +0 -1
- langflow/frontend/assets/index-sjbu-dD7.js +0 -1
- langflow/frontend/assets/index-t9AMFJoS.js +0 -1
- langflow/frontend/assets/index-ukXwm0mA.js +0 -1
- langflow/frontend/assets/index-wID9VtBj.js +0 -495
- langflow/frontend/assets/indian-rupee-dfWATytK.js +0 -6
- langflow/frontend/assets/infinity-CjUe5ivd.js +0 -6
- langflow/frontend/assets/info-B_LE7L7E.js +0 -6
- langflow/frontend/assets/inspection-panel-ZKvlddDX.js +0 -6
- langflow/frontend/assets/instagram-BsiiTwbe.js +0 -6
- langflow/frontend/assets/italic-DuNznHfD.js +0 -6
- langflow/frontend/assets/iteration-ccw-D_X6Ncpd.js +0 -6
- langflow/frontend/assets/iteration-cw-CtI6sO4s.js +0 -6
- langflow/frontend/assets/japanese-yen-CpXpceuO.js +0 -6
- langflow/frontend/assets/joystick-C2Ky6Mbv.js +0 -6
- langflow/frontend/assets/kanban-C9Ycd6s4.js +0 -6
- langflow/frontend/assets/key-DRVIdukA.js +0 -6
- langflow/frontend/assets/key-round-DNOaaSPy.js +0 -6
- langflow/frontend/assets/key-square-DwMHFAtk.js +0 -6
- langflow/frontend/assets/keyboard-C6CFUeHB.js +0 -6
- langflow/frontend/assets/keyboard-music-CKIVnkdm.js +0 -6
- langflow/frontend/assets/keyboard-off-C7O7DrK0.js +0 -6
- langflow/frontend/assets/lamp-B5kXYX3W.js +0 -6
- langflow/frontend/assets/lamp-ceiling-Bc2MBOMS.js +0 -6
- langflow/frontend/assets/lamp-desk-Cj4cV5p0.js +0 -6
- langflow/frontend/assets/lamp-floor-BmWaN3gA.js +0 -6
- langflow/frontend/assets/lamp-wall-down-DptQKLOl.js +0 -6
- langflow/frontend/assets/lamp-wall-up-D--Xk8Uc.js +0 -6
- langflow/frontend/assets/land-plot-BbZVsEO6.js +0 -6
- langflow/frontend/assets/landmark-CcoCKSRy.js +0 -6
- langflow/frontend/assets/languages-DJmiOypY.js +0 -6
- langflow/frontend/assets/laptop-BH2ES5zs.js +0 -6
- langflow/frontend/assets/laptop-minimal-BViwcE0p.js +0 -6
- langflow/frontend/assets/laptop-minimal-check-BGIW2iZy.js +0 -6
- langflow/frontend/assets/lasso-BmP9amC_.js +0 -6
- langflow/frontend/assets/lasso-select-Be4Nr3Hx.js +0 -6
- langflow/frontend/assets/laugh-C_Mx1EnJ.js +0 -6
- langflow/frontend/assets/layers-2-CQ1eeSl_.js +0 -6
- langflow/frontend/assets/layers-Bpl575qt.js +0 -6
- langflow/frontend/assets/layout-dashboard-DzHGzN63.js +0 -6
- langflow/frontend/assets/layout-grid-BJ0cVgDn.js +0 -6
- langflow/frontend/assets/layout-list-2TpTYkoP.js +0 -6
- langflow/frontend/assets/layout-panel-left-NBHLcbEc.js +0 -6
- langflow/frontend/assets/layout-panel-top-C15hIwEQ.js +0 -6
- langflow/frontend/assets/layout-template-C_2m978f.js +0 -6
- langflow/frontend/assets/lazyIconImports-C1Cwzm74.js +0 -2
- langflow/frontend/assets/leaf-C7I-gNqN.js +0 -6
- langflow/frontend/assets/leafy-green-DxfIltJY.js +0 -6
- langflow/frontend/assets/lectern-BWPxyWG5.js +0 -6
- langflow/frontend/assets/letter-text-CojX37RF.js +0 -6
- langflow/frontend/assets/library-_tOxFRdG.js +0 -6
- langflow/frontend/assets/library-big-V_be0egg.js +0 -6
- langflow/frontend/assets/life-buoy-SLaOKPui.js +0 -6
- langflow/frontend/assets/ligature-DI3N5Sgh.js +0 -6
- langflow/frontend/assets/lightbulb-BJ-u5yNj.js +0 -6
- langflow/frontend/assets/lightbulb-off-CYZZK-Ca.js +0 -6
- langflow/frontend/assets/link-2-C2f9vuOw.js +0 -6
- langflow/frontend/assets/link-2-off-Cznc1x59.js +0 -6
- langflow/frontend/assets/link-D8ffI3Bx.js +0 -6
- langflow/frontend/assets/linkedin-Da0zZOYR.js +0 -6
- langflow/frontend/assets/list-Dbxyd6FK.js +0 -6
- langflow/frontend/assets/list-check-BfuWLRhW.js +0 -6
- langflow/frontend/assets/list-checks-5qGsxHLJ.js +0 -6
- langflow/frontend/assets/list-collapse-CtnPbel8.js +0 -6
- langflow/frontend/assets/list-end-DUboME14.js +0 -6
- langflow/frontend/assets/list-filter-CmoSv9ih.js +0 -6
- langflow/frontend/assets/list-filter-plus-DH53x-KE.js +0 -6
- langflow/frontend/assets/list-minus-rsN5dKeL.js +0 -6
- langflow/frontend/assets/list-music-y6LRVp3R.js +0 -6
- langflow/frontend/assets/list-ordered-CFYedrtq.js +0 -6
- langflow/frontend/assets/list-plus-C1kZwFsM.js +0 -6
- langflow/frontend/assets/list-restart-DH7cBD12.js +0 -6
- langflow/frontend/assets/list-start-CjF0LNBk.js +0 -6
- langflow/frontend/assets/list-todo-D6S7Eq2U.js +0 -6
- langflow/frontend/assets/list-tree-BV3Jr4p1.js +0 -6
- langflow/frontend/assets/list-video-DQuDt4_H.js +0 -6
- langflow/frontend/assets/list-x-SyN4p91y.js +0 -6
- langflow/frontend/assets/loader-CW6ghXpM.js +0 -6
- langflow/frontend/assets/loader-circle-BIdiuIo8.js +0 -6
- langflow/frontend/assets/loader-pinwheel-DN59gqDR.js +0 -6
- langflow/frontend/assets/locate-B1rV_Eud.js +0 -6
- langflow/frontend/assets/locate-fixed-mm8d2I_1.js +0 -6
- langflow/frontend/assets/locate-off-DuwOZuVD.js +0 -6
- langflow/frontend/assets/location-edit-BVWsMtc0.js +0 -6
- langflow/frontend/assets/lock-B_mVf9AO.js +0 -6
- langflow/frontend/assets/lock-keyhole-CZBU_htP.js +0 -6
- langflow/frontend/assets/lock-keyhole-open-BmeFZtQo.js +0 -6
- langflow/frontend/assets/lock-open-B9vea4fd.js +0 -6
- langflow/frontend/assets/log-in-Dp5MKXJ6.js +0 -6
- langflow/frontend/assets/log-out-CnwhIFCV.js +0 -6
- langflow/frontend/assets/logs-CutF0a3A.js +0 -6
- langflow/frontend/assets/lollipop-CKVurF-h.js +0 -6
- langflow/frontend/assets/luggage-SGX9v5BA.js +0 -6
- langflow/frontend/assets/magnet-k1e_jfjF.js +0 -6
- langflow/frontend/assets/mail-CpHB9s87.js +0 -6
- langflow/frontend/assets/mail-check-BGq22NGF.js +0 -6
- langflow/frontend/assets/mail-minus-RCkfM2oU.js +0 -6
- langflow/frontend/assets/mail-open-wYro5Hao.js +0 -6
- langflow/frontend/assets/mail-plus-BlMpIq4Y.js +0 -6
- langflow/frontend/assets/mail-question-DARRLllg.js +0 -6
- langflow/frontend/assets/mail-search-BHPgf9Sg.js +0 -6
- langflow/frontend/assets/mail-warning-B8ppePDz.js +0 -6
- langflow/frontend/assets/mail-x-CaFLEt3S.js +0 -6
- langflow/frontend/assets/mailbox-BvqRfE85.js +0 -6
- langflow/frontend/assets/mails-D0K7EC5r.js +0 -6
- langflow/frontend/assets/map-BWe2j5uV.js +0 -6
- langflow/frontend/assets/map-pin-BIIQp1ny.js +0 -6
- langflow/frontend/assets/map-pin-check-DVigOmJy.js +0 -6
- langflow/frontend/assets/map-pin-check-inside-DAW-jmer.js +0 -6
- langflow/frontend/assets/map-pin-house-BjJGaZ_W.js +0 -6
- langflow/frontend/assets/map-pin-minus-inside-NU3kjUaq.js +0 -6
- langflow/frontend/assets/map-pin-minus-qSJvtAyu.js +0 -6
- langflow/frontend/assets/map-pin-off-D_XWqwUL.js +0 -6
- langflow/frontend/assets/map-pin-plus-BvtSdwiT.js +0 -6
- langflow/frontend/assets/map-pin-plus-inside-B8N0JWVa.js +0 -6
- langflow/frontend/assets/map-pin-x-CzkkzM8C.js +0 -6
- langflow/frontend/assets/map-pin-x-inside-Ch3mMXj3.js +0 -6
- langflow/frontend/assets/map-pinned-BFY8xjWv.js +0 -6
- langflow/frontend/assets/map-plus-C7VchZnk.js +0 -6
- langflow/frontend/assets/mars-CeY3O5YK.js +0 -6
- langflow/frontend/assets/mars-stroke-HXdX2iNQ.js +0 -6
- langflow/frontend/assets/martini-Dpn_2_XE.js +0 -6
- langflow/frontend/assets/maximize-2-CsbNYzxf.js +0 -6
- langflow/frontend/assets/maximize-D87I_lS3.js +0 -6
- langflow/frontend/assets/medal-C-rwKc2p.js +0 -6
- langflow/frontend/assets/megaphone-BmitnmNV.js +0 -6
- langflow/frontend/assets/megaphone-off-Dp38EeVm.js +0 -6
- langflow/frontend/assets/meh-Wl2qG9mS.js +0 -6
- langflow/frontend/assets/memory-stick-DjVuofBU.js +0 -6
- langflow/frontend/assets/menu-C_ZnFtke.js +0 -6
- langflow/frontend/assets/merge-CVxYdOU6.js +0 -6
- langflow/frontend/assets/message-circle-BCFKIVaG.js +0 -6
- langflow/frontend/assets/message-circle-code-ByC3xlrm.js +0 -6
- langflow/frontend/assets/message-circle-dashed-BGf6wc2q.js +0 -6
- langflow/frontend/assets/message-circle-heart-CJe2hG5I.js +0 -6
- langflow/frontend/assets/message-circle-more-DlkXYzwc.js +0 -6
- langflow/frontend/assets/message-circle-off-BXNwVK73.js +0 -6
- langflow/frontend/assets/message-circle-plus-BvVDEWER.js +0 -6
- langflow/frontend/assets/message-circle-question-F_PDi40-.js +0 -6
- langflow/frontend/assets/message-circle-reply-DBVvbcYc.js +0 -6
- langflow/frontend/assets/message-circle-warning-C6owxiSU.js +0 -6
- langflow/frontend/assets/message-circle-x-V7F92TlD.js +0 -6
- langflow/frontend/assets/message-square-DXqIv5-T.js +0 -6
- langflow/frontend/assets/message-square-code-Cnybl1gQ.js +0 -6
- langflow/frontend/assets/message-square-dashed-Dyhajt9A.js +0 -6
- langflow/frontend/assets/message-square-diff-DUvtcPyO.js +0 -6
- langflow/frontend/assets/message-square-dot-C_SriCts.js +0 -6
- langflow/frontend/assets/message-square-heart-eWRT_k_U.js +0 -6
- langflow/frontend/assets/message-square-lock-BbEknDit.js +0 -6
- langflow/frontend/assets/message-square-more-BIWp7spD.js +0 -6
- langflow/frontend/assets/message-square-off-AdEUq_kZ.js +0 -6
- langflow/frontend/assets/message-square-plus-CsVRuGMd.js +0 -6
- langflow/frontend/assets/message-square-quote-CLJ-6YBF.js +0 -6
- langflow/frontend/assets/message-square-reply-COdDGZlL.js +0 -6
- langflow/frontend/assets/message-square-share-Babk5o3W.js +0 -6
- langflow/frontend/assets/message-square-text-KEj0QhlY.js +0 -6
- langflow/frontend/assets/message-square-warning-DbMBK25A.js +0 -6
- langflow/frontend/assets/message-square-x-Dlmu05x-.js +0 -6
- langflow/frontend/assets/messages-square-BLHXkvXu.js +0 -6
- langflow/frontend/assets/mic-CkGvjoA6.js +0 -6
- langflow/frontend/assets/mic-off-BF7T6uJG.js +0 -6
- langflow/frontend/assets/mic-vocal-D63-pkbV.js +0 -6
- langflow/frontend/assets/microchip-BdgsWAAt.js +0 -6
- langflow/frontend/assets/microscope-BIZdt6qa.js +0 -6
- langflow/frontend/assets/microwave-ljjNyijf.js +0 -6
- langflow/frontend/assets/milestone-Z7ApTXoY.js +0 -6
- langflow/frontend/assets/milk-C94MudXv.js +0 -6
- langflow/frontend/assets/milk-off-Bks8F3Rh.js +0 -6
- langflow/frontend/assets/minimize-0iR8d_wz.js +0 -6
- langflow/frontend/assets/minimize-2-4bKQDiPS.js +0 -6
- langflow/frontend/assets/monitor-CzM786BJ.js +0 -6
- langflow/frontend/assets/monitor-check-BumJuy9o.js +0 -6
- langflow/frontend/assets/monitor-cog-CCmf8Cx_.js +0 -6
- langflow/frontend/assets/monitor-dot-CppOnLLF.js +0 -6
- langflow/frontend/assets/monitor-down-VT--09JI.js +0 -6
- langflow/frontend/assets/monitor-off-DsGxBfLz.js +0 -6
- langflow/frontend/assets/monitor-pause-lkcsR8rF.js +0 -6
- langflow/frontend/assets/monitor-play-qe460Ine.js +0 -6
- langflow/frontend/assets/monitor-smartphone-z2JHsU8j.js +0 -6
- langflow/frontend/assets/monitor-speaker-BVDiZULG.js +0 -6
- langflow/frontend/assets/monitor-stop-Ds8yehE1.js +0 -6
- langflow/frontend/assets/monitor-up-BlZtuUw9.js +0 -6
- langflow/frontend/assets/monitor-x-JBkUDpDd.js +0 -6
- langflow/frontend/assets/moon-WoYIfO4w.js +0 -6
- langflow/frontend/assets/moon-star-CNHQKOUR.js +0 -6
- langflow/frontend/assets/mountain-D9FRFvIA.js +0 -6
- langflow/frontend/assets/mountain-snow-DVA_gd64.js +0 -6
- langflow/frontend/assets/mouse-867O2vOv.js +0 -6
- langflow/frontend/assets/mouse-off-BawwNju4.js +0 -6
- langflow/frontend/assets/mouse-pointer-2-DLgsfHFL.js +0 -6
- langflow/frontend/assets/mouse-pointer-C7z_bkYM.js +0 -6
- langflow/frontend/assets/mouse-pointer-ban-CQhj6Cwn.js +0 -6
- langflow/frontend/assets/mouse-pointer-click-BxuJ2b0V.js +0 -6
- langflow/frontend/assets/move-3d-dlIqQaWp.js +0 -6
- langflow/frontend/assets/move-B4Ds2cBm.js +0 -6
- langflow/frontend/assets/move-diagonal-2-BHA9O73b.js +0 -6
- langflow/frontend/assets/move-diagonal-D60wM06u.js +0 -6
- langflow/frontend/assets/move-down-Dx-PFKUb.js +0 -6
- langflow/frontend/assets/move-down-left-Bo5FgvGr.js +0 -6
- langflow/frontend/assets/move-down-right-CH_PsfhD.js +0 -6
- langflow/frontend/assets/move-horizontal-DLrS0Kpz.js +0 -6
- langflow/frontend/assets/move-left-oY8FtBG5.js +0 -6
- langflow/frontend/assets/move-right-Cr4sR_bt.js +0 -6
- langflow/frontend/assets/move-up-left-D7oJ2J8_.js +0 -6
- langflow/frontend/assets/move-up-right-CJJYlUX1.js +0 -6
- langflow/frontend/assets/move-up-w5CKBeD9.js +0 -6
- langflow/frontend/assets/move-vertical-BqfrZ7dN.js +0 -6
- langflow/frontend/assets/music-2-_WHrMLLg.js +0 -6
- langflow/frontend/assets/music-3-DJRE06-A.js +0 -6
- langflow/frontend/assets/music-4-BkKWffDU.js +0 -6
- langflow/frontend/assets/music-DeKSHmIS.js +0 -6
- langflow/frontend/assets/navigation-2-BwK7Ko0h.js +0 -6
- langflow/frontend/assets/navigation-2-off-u3MSWrGH.js +0 -6
- langflow/frontend/assets/navigation-BpGnSiAE.js +0 -6
- langflow/frontend/assets/navigation-off-dsN-pPUd.js +0 -6
- langflow/frontend/assets/network-Dq6lJHXU.js +0 -6
- langflow/frontend/assets/newspaper-30MRjhu7.js +0 -6
- langflow/frontend/assets/nfc-C0BJPdwh.js +0 -6
- langflow/frontend/assets/non-binary-CLGP-iiC.js +0 -6
- langflow/frontend/assets/notebook-CgaWNAFz.js +0 -6
- langflow/frontend/assets/notebook-pen-CYm6Ghk1.js +0 -6
- langflow/frontend/assets/notebook-tabs-Bk5eQyL5.js +0 -6
- langflow/frontend/assets/notebook-text-BLkbIk44.js +0 -6
- langflow/frontend/assets/notepad-text-Cjoga3oN.js +0 -6
- langflow/frontend/assets/notepad-text-dashed-C5hD1-Fe.js +0 -6
- langflow/frontend/assets/nut-CYsTlL60.js +0 -6
- langflow/frontend/assets/nut-off-msUVlCzb.js +0 -6
- langflow/frontend/assets/octagon-CM-nuNqQ.js +0 -6
- langflow/frontend/assets/octagon-alert-DXa35bCO.js +0 -6
- langflow/frontend/assets/octagon-minus-JM9PGbZV.js +0 -6
- langflow/frontend/assets/octagon-pause-M0CjOmJu.js +0 -6
- langflow/frontend/assets/octagon-x-E1ygK_P1.js +0 -6
- langflow/frontend/assets/omega-BjqV4fX1.js +0 -6
- langflow/frontend/assets/option-BIcrDVbD.js +0 -6
- langflow/frontend/assets/orbit-BikgSX0-.js +0 -6
- langflow/frontend/assets/origami-BQ5XI6j8.js +0 -6
- langflow/frontend/assets/package-2-XU3yxTGl.js +0 -6
- langflow/frontend/assets/package-4EiKsge0.js +0 -6
- langflow/frontend/assets/package-check-CfdAe0GF.js +0 -6
- langflow/frontend/assets/package-minus-BvKhdHSB.js +0 -6
- langflow/frontend/assets/package-open-CKh_I0fr.js +0 -6
- langflow/frontend/assets/package-plus-DxVNDWFo.js +0 -6
- langflow/frontend/assets/package-search-G8fpx_ZL.js +0 -6
- langflow/frontend/assets/package-x-DTd2nbYB.js +0 -6
- langflow/frontend/assets/paint-bucket-16FRhKgt.js +0 -6
- langflow/frontend/assets/paint-roller-CkA54Lft.js +0 -6
- langflow/frontend/assets/paintbrush-DiQd2006.js +0 -6
- langflow/frontend/assets/paintbrush-vertical-RVs4ZAcf.js +0 -6
- langflow/frontend/assets/palette-63ZAp8jT.js +0 -6
- langflow/frontend/assets/panel-bottom-BRSGITkZ.js +0 -6
- langflow/frontend/assets/panel-bottom-close-BKhC1IPs.js +0 -6
- langflow/frontend/assets/panel-bottom-dashed-DDmIVEyF.js +0 -6
- langflow/frontend/assets/panel-bottom-open-DNB3w9jB.js +0 -6
- langflow/frontend/assets/panel-left-close-2wcAhQC8.js +0 -6
- langflow/frontend/assets/panel-left-dashed-P-yRaAfE.js +0 -6
- langflow/frontend/assets/panel-left-open-C8Z5Ex7t.js +0 -6
- langflow/frontend/assets/panel-right-DhqTAxzZ.js +0 -6
- langflow/frontend/assets/panel-right-close-D-4tz-fa.js +0 -6
- langflow/frontend/assets/panel-right-dashed-oSwbzusJ.js +0 -6
- langflow/frontend/assets/panel-right-open-D3Vfnad1.js +0 -6
- langflow/frontend/assets/panel-top-BiDhuHAU.js +0 -6
- langflow/frontend/assets/panel-top-close-DXTUcegA.js +0 -6
- langflow/frontend/assets/panel-top-dashed-GiUGeBeB.js +0 -6
- langflow/frontend/assets/panel-top-open-6PMe_rzg.js +0 -6
- langflow/frontend/assets/panels-left-bottom-BLaYgiWe.js +0 -6
- langflow/frontend/assets/panels-right-bottom-CAOwjL6I.js +0 -6
- langflow/frontend/assets/panels-top-left-C7JFKzm4.js +0 -6
- langflow/frontend/assets/paperclip-C2jDvuaB.js +0 -6
- langflow/frontend/assets/parentheses-DpyyMTil.js +0 -6
- langflow/frontend/assets/parking-meter-Br1Avhl7.js +0 -6
- langflow/frontend/assets/party-popper-ml82k9Oh.js +0 -6
- langflow/frontend/assets/pause-CNE8dZxo.js +0 -6
- langflow/frontend/assets/paw-print-f_-GBH01.js +0 -6
- langflow/frontend/assets/pc-case-Chy1tZyO.js +0 -6
- langflow/frontend/assets/pen-CWOC_G5w.js +0 -6
- langflow/frontend/assets/pen-line-CbSvGV_f.js +0 -6
- langflow/frontend/assets/pen-off-CRlhISzF.js +0 -6
- langflow/frontend/assets/pen-tool-BCBDxitS.js +0 -6
- langflow/frontend/assets/pencil-lCJvvWYR.js +0 -6
- langflow/frontend/assets/pencil-line-DuQsld7D.js +0 -6
- langflow/frontend/assets/pencil-off-D9SAANhb.js +0 -6
- langflow/frontend/assets/pencil-ruler-BZ7rwkjR.js +0 -6
- langflow/frontend/assets/pentagon-CMdRJpyU.js +0 -6
- langflow/frontend/assets/percent-DUcp_Hu-.js +0 -6
- langflow/frontend/assets/person-standing-Ur3pkyWF.js +0 -6
- langflow/frontend/assets/philippine-peso-DYnLi4za.js +0 -6
- langflow/frontend/assets/phone-DU0nN01j.js +0 -6
- langflow/frontend/assets/phone-call-CpzfUvCS.js +0 -6
- langflow/frontend/assets/phone-forwarded-BhIeiw1L.js +0 -6
- langflow/frontend/assets/phone-incoming--bMxOKL_.js +0 -6
- langflow/frontend/assets/phone-missed-CLZnCkx0.js +0 -6
- langflow/frontend/assets/phone-off-D2N1--DK.js +0 -6
- langflow/frontend/assets/phone-outgoing-BttSf1Mf.js +0 -6
- langflow/frontend/assets/pi-0ZqHUNvQ.js +0 -6
- langflow/frontend/assets/piano-O0okyq-q.js +0 -6
- langflow/frontend/assets/pickaxe-BBq80IDk.js +0 -6
- langflow/frontend/assets/picture-in-picture-2-BRD22oaq.js +0 -6
- langflow/frontend/assets/picture-in-picture-aMu6X4he.js +0 -6
- langflow/frontend/assets/piggy-bank-Ba5KpW-R.js +0 -6
- langflow/frontend/assets/pilcrow-jO5PkN9u.js +0 -6
- langflow/frontend/assets/pilcrow-left-DIbvdJ4q.js +0 -6
- langflow/frontend/assets/pilcrow-right-Cn9D7hDF.js +0 -6
- langflow/frontend/assets/pill-D-42rIOW.js +0 -6
- langflow/frontend/assets/pill-bottle-DsJKKNcA.js +0 -6
- langflow/frontend/assets/pin-DfAVbRNJ.js +0 -6
- langflow/frontend/assets/pin-off-CJNWcHaA.js +0 -6
- langflow/frontend/assets/pipette-B7tJT2kJ.js +0 -6
- langflow/frontend/assets/pizza-CnrmNK8m.js +0 -6
- langflow/frontend/assets/plane-Dn27nhFg.js +0 -6
- langflow/frontend/assets/plane-landing-D0PYnEJh.js +0 -6
- langflow/frontend/assets/plane-takeoff-C9ORUKgO.js +0 -6
- langflow/frontend/assets/play-fRIv90Vb.js +0 -6
- langflow/frontend/assets/plug-2-D8fXOKQU.js +0 -6
- langflow/frontend/assets/plug-i5tCOxoY.js +0 -6
- langflow/frontend/assets/plug-zap-DUkZjazY.js +0 -6
- langflow/frontend/assets/pocket-Baxk-icN.js +0 -6
- langflow/frontend/assets/pocket-knife-vflNgCDB.js +0 -6
- langflow/frontend/assets/podcast-CGBp0he6.js +0 -6
- langflow/frontend/assets/pointer-BAlqPHUA.js +0 -6
- langflow/frontend/assets/pointer-off-Dr4nsB_n.js +0 -6
- langflow/frontend/assets/popcorn-CkYbqF6n.js +0 -6
- langflow/frontend/assets/popsicle-DQx7XFEX.js +0 -6
- langflow/frontend/assets/pound-sterling-D-7ovrEl.js +0 -6
- langflow/frontend/assets/power-CjdszFge.js +0 -6
- langflow/frontend/assets/power-off-DXTNJRDM.js +0 -6
- langflow/frontend/assets/presentation-BUFQUUad.js +0 -6
- langflow/frontend/assets/printer-DlXrt59N.js +0 -6
- langflow/frontend/assets/printer-check-CNpp-7a2.js +0 -6
- langflow/frontend/assets/projector-CejJOabJ.js +0 -6
- langflow/frontend/assets/proportions-DhzsgWUR.js +0 -6
- langflow/frontend/assets/puzzle-CIUZmh73.js +0 -6
- langflow/frontend/assets/pyramid-B1EU302T.js +0 -6
- langflow/frontend/assets/qr-code-B3ueAf2a.js +0 -6
- langflow/frontend/assets/quote-DnSAw5GA.js +0 -6
- langflow/frontend/assets/rabbit-D_w405-3.js +0 -6
- langflow/frontend/assets/radar-mMKrjXiq.js +0 -6
- langflow/frontend/assets/radiation-BKZhrAsf.js +0 -6
- langflow/frontend/assets/radical-DiyXLgcs.js +0 -6
- langflow/frontend/assets/radio-FZqpRcOY.js +0 -6
- langflow/frontend/assets/radio-receiver-DoqS8xe3.js +0 -6
- langflow/frontend/assets/radio-tower-DzcmNTOD.js +0 -6
- langflow/frontend/assets/radius-WO6Uuofn.js +0 -6
- langflow/frontend/assets/rail-symbol-Blp5Z6mm.js +0 -6
- langflow/frontend/assets/rainbow-BcpREq76.js +0 -6
- langflow/frontend/assets/rat-C_6nvO9X.js +0 -6
- langflow/frontend/assets/ratio-B2vtZEP1.js +0 -6
- langflow/frontend/assets/receipt-WM0uZGH2.js +0 -6
- langflow/frontend/assets/receipt-cent-BsFZulIa.js +0 -6
- langflow/frontend/assets/receipt-euro-JyQiZVY6.js +0 -6
- langflow/frontend/assets/receipt-indian-rupee-fTOVSpHz.js +0 -6
- langflow/frontend/assets/receipt-japanese-yen-D8DfDeDK.js +0 -6
- langflow/frontend/assets/receipt-pound-sterling-DaKscCMf.js +0 -6
- langflow/frontend/assets/receipt-russian-ruble-Buf0_3Kt.js +0 -6
- langflow/frontend/assets/receipt-swiss-franc-Bem-z2ls.js +0 -6
- langflow/frontend/assets/receipt-text-Bwc10qHQ.js +0 -6
- langflow/frontend/assets/rectangle-ellipsis-CeJcpjOB.js +0 -6
- langflow/frontend/assets/rectangle-goggles-DOshY7hS.js +0 -6
- langflow/frontend/assets/rectangle-horizontal-BkYka3pL.js +0 -6
- langflow/frontend/assets/rectangle-vertical-DzlIazB7.js +0 -6
- langflow/frontend/assets/recycle-BYgswKLN.js +0 -6
- langflow/frontend/assets/redo-2-BZ3Hs4ln.js +0 -6
- langflow/frontend/assets/redo-BU2dMbQ2.js +0 -6
- langflow/frontend/assets/redo-dot-BZUxEEyF.js +0 -6
- langflow/frontend/assets/refresh-ccw-dot-Cz65nUFZ.js +0 -6
- langflow/frontend/assets/refresh-ccw-mpgTt4cp.js +0 -6
- langflow/frontend/assets/refresh-cw-ACMLi-4b.js +0 -6
- langflow/frontend/assets/refresh-cw-off-BrGN63Qm.js +0 -6
- langflow/frontend/assets/refrigerator-BFChB889.js +0 -6
- langflow/frontend/assets/regex-C8kDLEV-.js +0 -6
- langflow/frontend/assets/remove-formatting-4xIOGsHV.js +0 -6
- langflow/frontend/assets/repeat-1-C5gQ8b_d.js +0 -6
- langflow/frontend/assets/repeat-2-YlU_Z8sF.js +0 -6
- langflow/frontend/assets/repeat-BYHb23Jr.js +0 -6
- langflow/frontend/assets/replace-DrXxrUoA.js +0 -6
- langflow/frontend/assets/replace-all-_qSvipH9.js +0 -6
- langflow/frontend/assets/reply-D3kS0lZA.js +0 -6
- langflow/frontend/assets/reply-all-C9Q_Q7RN.js +0 -6
- langflow/frontend/assets/rewind-C6LCP7LR.js +0 -6
- langflow/frontend/assets/ribbon-8h1u3qoT.js +0 -6
- langflow/frontend/assets/rocket-6Gkkhs52.js +0 -6
- langflow/frontend/assets/rocking-chair-Ds11M0kh.js +0 -6
- langflow/frontend/assets/roller-coaster-B1FJdn_M.js +0 -6
- langflow/frontend/assets/rotate-3d-BMruZsY9.js +0 -6
- langflow/frontend/assets/rotate-ccw-DXeuJ4SS.js +0 -6
- langflow/frontend/assets/rotate-ccw-key-D8tWaFpf.js +0 -6
- langflow/frontend/assets/rotate-ccw-square-DqcG1yyF.js +0 -6
- langflow/frontend/assets/rotate-cw-JxVkjAiv.js +0 -6
- langflow/frontend/assets/rotate-cw-square-DIFQHpgn.js +0 -6
- langflow/frontend/assets/route-CyvYbs4s.js +0 -6
- langflow/frontend/assets/route-off-DaW9NN2P.js +0 -6
- langflow/frontend/assets/router-Dj4Gk-iP.js +0 -6
- langflow/frontend/assets/rows-2-Bz25-LGn.js +0 -6
- langflow/frontend/assets/rows-3-BjF2fk8b.js +0 -6
- langflow/frontend/assets/rows-4-CdbGj4cO.js +0 -6
- langflow/frontend/assets/rss-BqrD36sY.js +0 -6
- langflow/frontend/assets/ruler-DDUQN13b.js +0 -6
- langflow/frontend/assets/ruler-dimension-line-B7pClM0L.js +0 -6
- langflow/frontend/assets/russian-ruble-B8-eH9Vh.js +0 -6
- langflow/frontend/assets/sailboat-BNh0r77k.js +0 -6
- langflow/frontend/assets/salad-DYdtRABF.js +0 -6
- langflow/frontend/assets/sandwich-BM6ZxGik.js +0 -6
- langflow/frontend/assets/satellite-bn5mBvGZ.js +0 -6
- langflow/frontend/assets/satellite-dish-CInF6yLC.js +0 -6
- langflow/frontend/assets/saudi-riyal-DXjre3xO.js +0 -6
- langflow/frontend/assets/save-CnwN2YAE.js +0 -6
- langflow/frontend/assets/save-all-Drrj35Ia.js +0 -6
- langflow/frontend/assets/save-off-M8ohigKB.js +0 -6
- langflow/frontend/assets/scale-3d-CaKlEBy5.js +0 -6
- langflow/frontend/assets/scale-Cu8-QWt2.js +0 -6
- langflow/frontend/assets/scaling-BoA8uGVv.js +0 -6
- langflow/frontend/assets/scan-C_H_s3YU.js +0 -6
- langflow/frontend/assets/scan-barcode-CrdT66Ss.js +0 -6
- langflow/frontend/assets/scan-eye-DVxu5yMg.js +0 -6
- langflow/frontend/assets/scan-face-C-BbOdW7.js +0 -6
- langflow/frontend/assets/scan-heart-BDP49vL1.js +0 -6
- langflow/frontend/assets/scan-line-CvXcAKFz.js +0 -6
- langflow/frontend/assets/scan-qr-code-CGmOxmjp.js +0 -6
- langflow/frontend/assets/scan-search-lVHucfuL.js +0 -6
- langflow/frontend/assets/scan-text-BWlFO81f.js +0 -6
- langflow/frontend/assets/school-DIrnM4NK.js +0 -6
- langflow/frontend/assets/scissors-D_tqn99a.js +0 -6
- langflow/frontend/assets/scissors-line-dashed-BmzyE8L6.js +0 -6
- langflow/frontend/assets/screen-share-QrqusLrN.js +0 -6
- langflow/frontend/assets/screen-share-off-CChuEPW1.js +0 -6
- langflow/frontend/assets/scroll-CJKwovV_.js +0 -6
- langflow/frontend/assets/scroll-text-DrBBLd5M.js +0 -6
- langflow/frontend/assets/search-check-pd5Z-lqD.js +0 -6
- langflow/frontend/assets/search-code-Dv1aBkEZ.js +0 -6
- langflow/frontend/assets/search-slash-C7hA1-is.js +0 -6
- langflow/frontend/assets/search-x-BBxtqy3_.js +0 -6
- langflow/frontend/assets/section-BQnHgm0Z.js +0 -6
- langflow/frontend/assets/send-Bic93nFl.js +0 -6
- langflow/frontend/assets/send-horizontal-Djz0F2nb.js +0 -6
- langflow/frontend/assets/send-to-back-Du3rjlDy.js +0 -6
- langflow/frontend/assets/separator-horizontal-DK0ZpL2Q.js +0 -6
- langflow/frontend/assets/separator-vertical-Zxsg5S5s.js +0 -6
- langflow/frontend/assets/server-cog-DgcA3tg2.js +0 -6
- langflow/frontend/assets/server-crash-Lc5DjUjZ.js +0 -6
- langflow/frontend/assets/server-cxBG8tpy.js +0 -6
- langflow/frontend/assets/server-off-C1-ZzWKv.js +0 -6
- langflow/frontend/assets/settings-2-BZ95YTfB.js +0 -6
- langflow/frontend/assets/settings-DbTdPIpg.js +0 -6
- langflow/frontend/assets/shapes-DhvVOUty.js +0 -6
- langflow/frontend/assets/share-2-CgsPoN9M.js +0 -6
- langflow/frontend/assets/share-BMMVZ7rL.js +0 -6
- langflow/frontend/assets/sheet-DoAFHBc2.js +0 -6
- langflow/frontend/assets/shell-DVTOAKsK.js +0 -6
- langflow/frontend/assets/shield-CdOo33h6.js +0 -6
- langflow/frontend/assets/shield-alert-DBjHf6ln.js +0 -6
- langflow/frontend/assets/shield-ban-iaGkidPw.js +0 -6
- langflow/frontend/assets/shield-check-BcYNKKvn.js +0 -6
- langflow/frontend/assets/shield-ellipsis-CeuabAd1.js +0 -6
- langflow/frontend/assets/shield-half-DslM6pvI.js +0 -6
- langflow/frontend/assets/shield-minus-5D5bC80R.js +0 -6
- langflow/frontend/assets/shield-off-Bs6Dw1oj.js +0 -6
- langflow/frontend/assets/shield-plus-BYTPSZ_j.js +0 -6
- langflow/frontend/assets/shield-question-8di04eB9.js +0 -6
- langflow/frontend/assets/shield-user-BjZpNWs-.js +0 -6
- langflow/frontend/assets/shield-x-DtMjrAR6.js +0 -6
- langflow/frontend/assets/ship-B1FS-0wt.js +0 -6
- langflow/frontend/assets/ship-wheel-CWwqGxuS.js +0 -6
- langflow/frontend/assets/shirt-DDY_cBLI.js +0 -6
- langflow/frontend/assets/shopping-bag-C8yUBVA3.js +0 -6
- langflow/frontend/assets/shopping-basket-DuQiTq_R.js +0 -6
- langflow/frontend/assets/shopping-cart-DXQDHvOm.js +0 -6
- langflow/frontend/assets/shovel-BX6j4P4r.js +0 -6
- langflow/frontend/assets/shower-head-CnHgENtR.js +0 -6
- langflow/frontend/assets/shredder-CNaGhMYw.js +0 -6
- langflow/frontend/assets/shrimp-BKwZUqsk.js +0 -6
- langflow/frontend/assets/shrink-DtBGdGCI.js +0 -6
- langflow/frontend/assets/shrub-BHoEVOKE.js +0 -6
- langflow/frontend/assets/shuffle-ewdvGbAy.js +0 -6
- langflow/frontend/assets/sigma-KzfEfHDJ.js +0 -6
- langflow/frontend/assets/signal-Cty6boDC.js +0 -6
- langflow/frontend/assets/signal-high-o0UeLOaX.js +0 -6
- langflow/frontend/assets/signal-low-BlXUWkId.js +0 -6
- langflow/frontend/assets/signal-medium-Cb-EZQHK.js +0 -6
- langflow/frontend/assets/signal-zero-WgiDibfW.js +0 -6
- langflow/frontend/assets/signature-D6cLBZaG.js +0 -6
- langflow/frontend/assets/signpost-DCNWRGGD.js +0 -6
- langflow/frontend/assets/signpost-big-BRAZrCYB.js +0 -6
- langflow/frontend/assets/siren-CmgQp-ZJ.js +0 -6
- langflow/frontend/assets/skip-back-BiBdMTVG.js +0 -6
- langflow/frontend/assets/skip-forward-DnMYJ9X6.js +0 -6
- langflow/frontend/assets/skull-CvtoSbMr.js +0 -6
- langflow/frontend/assets/slack-C_8L2fXg.js +0 -6
- langflow/frontend/assets/slash-BuhBmsx0.js +0 -6
- langflow/frontend/assets/slice-C33iA43B.js +0 -6
- langflow/frontend/assets/sliders-horizontal-DzuvDOHu.js +0 -6
- langflow/frontend/assets/sliders-vertical-DswThdIG.js +0 -6
- langflow/frontend/assets/smartphone-DLfmh6zg.js +0 -6
- langflow/frontend/assets/smartphone-charging-DM5gpvRw.js +0 -6
- langflow/frontend/assets/smartphone-nfc-4FHMN64h.js +0 -6
- langflow/frontend/assets/smile-DfMqFt_h.js +0 -6
- langflow/frontend/assets/smile-plus-vdR01AAo.js +0 -6
- langflow/frontend/assets/snail-BSe4rGOt.js +0 -6
- langflow/frontend/assets/snowflake-jjr9o6Xt.js +0 -6
- langflow/frontend/assets/sofa-CSdha_xf.js +0 -6
- langflow/frontend/assets/soup-DZaUMUi7.js +0 -6
- langflow/frontend/assets/space-CtU_wGsw.js +0 -6
- langflow/frontend/assets/spade-D6c1SnhI.js +0 -6
- langflow/frontend/assets/sparkle-D4Y-hgf0.js +0 -6
- langflow/frontend/assets/sparkles-D6LCSr3Q.js +0 -6
- langflow/frontend/assets/speaker-cIby5NbL.js +0 -6
- langflow/frontend/assets/speech-BcZoNsRO.js +0 -6
- langflow/frontend/assets/spell-check-2-gCrGa94o.js +0 -6
- langflow/frontend/assets/spell-check-C4VH_2Qb.js +0 -6
- langflow/frontend/assets/spline-30bTTImI.js +0 -6
- langflow/frontend/assets/spline-pointer-cKwSQ01W.js +0 -6
- langflow/frontend/assets/split-CNrHGI-P.js +0 -6
- langflow/frontend/assets/spray-can-MY8gc3Gg.js +0 -6
- langflow/frontend/assets/sprout-CTMnmXTl.js +0 -6
- langflow/frontend/assets/square-DAYnpPeo.js +0 -6
- langflow/frontend/assets/square-activity-BkP8wsck.js +0 -6
- langflow/frontend/assets/square-arrow-down-left-BJCokILI.js +0 -6
- langflow/frontend/assets/square-arrow-down-right-D21bwU3d.js +0 -6
- langflow/frontend/assets/square-arrow-down-wjq_PHOs.js +0 -6
- langflow/frontend/assets/square-arrow-left-ffOKr4VO.js +0 -6
- langflow/frontend/assets/square-arrow-out-down-left-BezNJDBn.js +0 -6
- langflow/frontend/assets/square-arrow-out-down-right-BPuETIWj.js +0 -6
- langflow/frontend/assets/square-arrow-out-up-left-DLD7WE_w.js +0 -6
- langflow/frontend/assets/square-arrow-out-up-right-DA0PM5tU.js +0 -6
- langflow/frontend/assets/square-arrow-right-B4b1_-rA.js +0 -6
- langflow/frontend/assets/square-arrow-up-D1JuObvy.js +0 -6
- langflow/frontend/assets/square-arrow-up-left-C4rWW6J5.js +0 -6
- langflow/frontend/assets/square-arrow-up-right-BccXA4Y9.js +0 -6
- langflow/frontend/assets/square-asterisk-CrzQn13y.js +0 -6
- langflow/frontend/assets/square-bottom-dashed-scissors-DnW0XK0f.js +0 -6
- langflow/frontend/assets/square-chart-gantt-C8R1N8RH.js +0 -6
- langflow/frontend/assets/square-check-D4l21ciO.js +0 -6
- langflow/frontend/assets/square-check-big-DjzIbmzH.js +0 -6
- langflow/frontend/assets/square-chevron-down-BPkxVX0b.js +0 -6
- langflow/frontend/assets/square-chevron-left-ExTGsTLo.js +0 -6
- langflow/frontend/assets/square-chevron-right-BBaghHnR.js +0 -6
- langflow/frontend/assets/square-chevron-up-DkVUGfLD.js +0 -6
- langflow/frontend/assets/square-code-CQFZqV73.js +0 -6
- langflow/frontend/assets/square-dashed-D_wWm-82.js +0 -6
- langflow/frontend/assets/square-dashed-bottom-Bqr8MwXl.js +0 -6
- langflow/frontend/assets/square-dashed-bottom-code-Bjjim6HD.js +0 -6
- langflow/frontend/assets/square-dashed-kanban-CCab8Xca.js +0 -6
- langflow/frontend/assets/square-dashed-mouse-pointer-BxGXrsme.js +0 -6
- langflow/frontend/assets/square-divide-CKI-Up8y.js +0 -6
- langflow/frontend/assets/square-dot-DgcJzw1Q.js +0 -6
- langflow/frontend/assets/square-equal-CSDXQXyV.js +0 -6
- langflow/frontend/assets/square-function-D6lS9fXm.js +0 -6
- langflow/frontend/assets/square-kanban-D1wJC8dg.js +0 -6
- langflow/frontend/assets/square-library-oxh7GiX_.js +0 -6
- langflow/frontend/assets/square-m-D3E68E4o.js +0 -6
- langflow/frontend/assets/square-menu-DkvQRppR.js +0 -6
- langflow/frontend/assets/square-minus-D3EZtgoZ.js +0 -6
- langflow/frontend/assets/square-mouse-pointer-Djj-JU4h.js +0 -6
- langflow/frontend/assets/square-parking-D9m5K58Z.js +0 -6
- langflow/frontend/assets/square-parking-off-Br2o87Vn.js +0 -6
- langflow/frontend/assets/square-pen-54_TzMVB.js +0 -6
- langflow/frontend/assets/square-percent-Pi7Do-mI.js +0 -6
- langflow/frontend/assets/square-pi-d8AE2n6O.js +0 -6
- langflow/frontend/assets/square-pilcrow-CHkd54Ay.js +0 -6
- langflow/frontend/assets/square-play-C7NhfVmU.js +0 -6
- langflow/frontend/assets/square-plus-7W1vqpS2.js +0 -6
- langflow/frontend/assets/square-power-d73kfd02.js +0 -6
- langflow/frontend/assets/square-radical-B_WKpw6e.js +0 -6
- langflow/frontend/assets/square-round-corner-Bt24eSa-.js +0 -6
- langflow/frontend/assets/square-scissors-BPBlO8tj.js +0 -6
- langflow/frontend/assets/square-sigma-B408Hcot.js +0 -6
- langflow/frontend/assets/square-slash-oyzWpALk.js +0 -6
- langflow/frontend/assets/square-split-horizontal-BwcBVle3.js +0 -6
- langflow/frontend/assets/square-split-vertical-D1ATm8h5.js +0 -6
- langflow/frontend/assets/square-square-Y0bNlAeu.js +0 -6
- langflow/frontend/assets/square-stack-DIcbRSYB.js +0 -6
- langflow/frontend/assets/square-terminal-DNbwvTum.js +0 -6
- langflow/frontend/assets/square-user-C6j9Cm_b.js +0 -6
- langflow/frontend/assets/square-user-round-CGV7arDL.js +0 -6
- langflow/frontend/assets/square-x-BSlFsooC.js +0 -6
- langflow/frontend/assets/squares-exclude-BWlUU_LN.js +0 -6
- langflow/frontend/assets/squares-intersect-DC96-VnH.js +0 -6
- langflow/frontend/assets/squares-subtract-V_tzjsIa.js +0 -6
- langflow/frontend/assets/squares-unite-DDAWTUUz.js +0 -6
- langflow/frontend/assets/squircle-CWI8bpGs.js +0 -6
- langflow/frontend/assets/squirrel-DexGqqHj.js +0 -6
- langflow/frontend/assets/stamp-Da9eG7P8.js +0 -6
- langflow/frontend/assets/star-CjU7PovP.js +0 -6
- langflow/frontend/assets/star-half-BEdJF7rh.js +0 -6
- langflow/frontend/assets/star-off-DEHoRhIC.js +0 -6
- langflow/frontend/assets/step-back-BGv8ki_W.js +0 -6
- langflow/frontend/assets/step-forward-CXeF6y97.js +0 -6
- langflow/frontend/assets/stethoscope-B_z5mVjV.js +0 -6
- langflow/frontend/assets/sticker-R-n9lbNf.js +0 -6
- langflow/frontend/assets/sticky-note-at6ea9az.js +0 -6
- langflow/frontend/assets/store-DnHo-Dvu.js +0 -6
- langflow/frontend/assets/stretch-horizontal-zg63Pwn2.js +0 -6
- langflow/frontend/assets/stretch-vertical-CB9Cr8wu.js +0 -6
- langflow/frontend/assets/strikethrough-B3J3AT-j.js +0 -6
- langflow/frontend/assets/subscript-wOCgwyoJ.js +0 -6
- langflow/frontend/assets/sun-1UeCQOnL.js +0 -6
- langflow/frontend/assets/sun-dim-B0YsfXD6.js +0 -6
- langflow/frontend/assets/sun-medium-CUw1fOHy.js +0 -6
- langflow/frontend/assets/sun-moon-BkXUm2zc.js +0 -6
- langflow/frontend/assets/sun-snow-AD_NFDlL.js +0 -6
- langflow/frontend/assets/sunrise-DrRDOJnx.js +0 -6
- langflow/frontend/assets/sunset-BmTyIBYG.js +0 -6
- langflow/frontend/assets/superscript-DAkv6GWV.js +0 -6
- langflow/frontend/assets/swatch-book-PuFO7fNf.js +0 -6
- langflow/frontend/assets/swiss-franc-CvCwlH-1.js +0 -6
- langflow/frontend/assets/switch-camera-CVKjOYy0.js +0 -6
- langflow/frontend/assets/sword-Dl4xK_Hg.js +0 -6
- langflow/frontend/assets/swords-B2bEsoTz.js +0 -6
- langflow/frontend/assets/syringe-CWwiBNw1.js +0 -6
- langflow/frontend/assets/table-2-5Ub1Hp1X.js +0 -6
- langflow/frontend/assets/table-cQlSPuPD.js +0 -6
- langflow/frontend/assets/table-cells-merge-5Lwptgjx.js +0 -6
- langflow/frontend/assets/table-cells-split-D5HaR7Ur.js +0 -6
- langflow/frontend/assets/table-columns-split-Br2xOFx-.js +0 -6
- langflow/frontend/assets/table-of-contents-J33-4h_p.js +0 -6
- langflow/frontend/assets/table-properties-lG9kds2q.js +0 -6
- langflow/frontend/assets/table-rows-split-NcY8df44.js +0 -6
- langflow/frontend/assets/tablet-bAWYk7ZU.js +0 -6
- langflow/frontend/assets/tablet-smartphone-CFUKE6kR.js +0 -6
- langflow/frontend/assets/tablets-P6mDX7J9.js +0 -6
- langflow/frontend/assets/tag-CQdskkfZ.js +0 -6
- langflow/frontend/assets/tags-BxGGU895.js +0 -6
- langflow/frontend/assets/tally-1-SqGUi5E_.js +0 -6
- langflow/frontend/assets/tally-2-DeYyaYLG.js +0 -6
- langflow/frontend/assets/tally-3-CaXs59HO.js +0 -6
- langflow/frontend/assets/tally-4-CmBeVOUP.js +0 -6
- langflow/frontend/assets/tally-5-Cp6xqAlX.js +0 -6
- langflow/frontend/assets/tangent-Bu8LuRAW.js +0 -6
- langflow/frontend/assets/target-CatpZfLc.js +0 -6
- langflow/frontend/assets/telescope-BPZqaaPb.js +0 -6
- langflow/frontend/assets/tent-qOuOFpz4.js +0 -6
- langflow/frontend/assets/tent-tree-DmiIwVgi.js +0 -6
- langflow/frontend/assets/terminal-BYbGvjDK.js +0 -6
- langflow/frontend/assets/test-tube-D_FhTaaq.js +0 -6
- langflow/frontend/assets/test-tube-diagonal-CCU3bG1X.js +0 -6
- langflow/frontend/assets/test-tubes-DukEK2vU.js +0 -6
- langflow/frontend/assets/text-CwwKm1R0.js +0 -6
- langflow/frontend/assets/text-cursor-BimJjGf3.js +0 -6
- langflow/frontend/assets/text-cursor-input-B_kXpYRl.js +0 -6
- langflow/frontend/assets/text-quote-CBAkQ8QD.js +0 -6
- langflow/frontend/assets/text-search-B7Sl0pKm.js +0 -6
- langflow/frontend/assets/text-select-DjpMY6Y4.js +0 -6
- langflow/frontend/assets/theater-Bo3HTTbl.js +0 -6
- langflow/frontend/assets/thermometer-Bu6gSpo-.js +0 -6
- langflow/frontend/assets/thermometer-snowflake-hm8pKZNQ.js +0 -6
- langflow/frontend/assets/thermometer-sun-DP-3bkYe.js +0 -6
- langflow/frontend/assets/thumbs-down-BN2xuLtF.js +0 -6
- langflow/frontend/assets/thumbs-up-CvtaTShj.js +0 -6
- langflow/frontend/assets/ticket-B8jfAFNy.js +0 -6
- langflow/frontend/assets/ticket-check-MV1S9SUz.js +0 -6
- langflow/frontend/assets/ticket-minus-D9NRuCuh.js +0 -6
- langflow/frontend/assets/ticket-percent-Cx11tpWt.js +0 -6
- langflow/frontend/assets/ticket-plus-B4SeZsFv.js +0 -6
- langflow/frontend/assets/ticket-slash-DmFj6_tZ.js +0 -6
- langflow/frontend/assets/ticket-x-BV_YZPkD.js +0 -6
- langflow/frontend/assets/tickets-BuIASBDi.js +0 -6
- langflow/frontend/assets/tickets-plane-BVCZthgO.js +0 -6
- langflow/frontend/assets/timer-5MEGKA2T.js +0 -6
- langflow/frontend/assets/timer-off-C-i8-CA1.js +0 -6
- langflow/frontend/assets/timer-reset-DN9eZBRg.js +0 -6
- langflow/frontend/assets/toggle-left-BCOe-Uk4.js +0 -6
- langflow/frontend/assets/toggle-right-ersa9_T2.js +0 -6
- langflow/frontend/assets/toilet-DpxVM3Ui.js +0 -6
- langflow/frontend/assets/tornado-JM7DbumL.js +0 -6
- langflow/frontend/assets/torus-Bei_YR1p.js +0 -6
- langflow/frontend/assets/touchpad-CXUqWqt1.js +0 -6
- langflow/frontend/assets/touchpad-off-DyO9VlXZ.js +0 -6
- langflow/frontend/assets/tower-control-BKAIg-Wk.js +0 -6
- langflow/frontend/assets/toy-brick-DcGrcKQp.js +0 -6
- langflow/frontend/assets/tractor-B2dLboVj.js +0 -6
- langflow/frontend/assets/traffic-cone-BEvlA0ug.js +0 -6
- langflow/frontend/assets/train-front-CxEtDqw-.js +0 -6
- langflow/frontend/assets/train-front-tunnel-6851wkpJ.js +0 -6
- langflow/frontend/assets/train-track-Cgy3PJec.js +0 -6
- langflow/frontend/assets/tram-front-C5eL4T0U.js +0 -6
- langflow/frontend/assets/transgender-W81LXVG9.js +0 -6
- langflow/frontend/assets/trash-C-jmCiLI.js +0 -6
- langflow/frontend/assets/tree-deciduous-DYmfvFfP.js +0 -6
- langflow/frontend/assets/tree-palm-Bv1YDrxR.js +0 -6
- langflow/frontend/assets/tree-pine-F7CHJhUF.js +0 -6
- langflow/frontend/assets/trees-CQI05VGt.js +0 -6
- langflow/frontend/assets/trello-D1yKllL-.js +0 -6
- langflow/frontend/assets/trending-down-7BR48si1.js +0 -6
- langflow/frontend/assets/trending-up-DxGJGJI4.js +0 -6
- langflow/frontend/assets/trending-up-down-Bv-0EkEM.js +0 -6
- langflow/frontend/assets/triangle-CqL0BuIo.js +0 -6
- langflow/frontend/assets/triangle-alert-BurSbX0E.js +0 -6
- langflow/frontend/assets/triangle-dashed-D0AlVMT4.js +0 -6
- langflow/frontend/assets/triangle-right-Cjlm7XfT.js +0 -6
- langflow/frontend/assets/trophy-DlqrTI3t.js +0 -6
- langflow/frontend/assets/truck-Be0AHBIn.js +0 -6
- langflow/frontend/assets/truck-electric-CTzzAU12.js +0 -6
- langflow/frontend/assets/turtle-CwgcW4BG.js +0 -6
- langflow/frontend/assets/tv-Cvkiuwa4.js +0 -6
- langflow/frontend/assets/tv-minimal-BKMMXObd.js +0 -6
- langflow/frontend/assets/tv-minimal-play-C2zC8Mf7.js +0 -6
- langflow/frontend/assets/twitch-BaNtc3ms.js +0 -6
- langflow/frontend/assets/twitter-D8cJDYlb.js +0 -6
- langflow/frontend/assets/type-B6-SVmrS.js +0 -6
- langflow/frontend/assets/type-outline-DF201kHQ.js +0 -6
- langflow/frontend/assets/umbrella-CUjrRZLn.js +0 -6
- langflow/frontend/assets/umbrella-off-DUIvDGWF.js +0 -6
- langflow/frontend/assets/underline-BZYW7kZe.js +0 -6
- langflow/frontend/assets/undo-2-_LSGuM6A.js +0 -6
- langflow/frontend/assets/undo-D0ua0irY.js +0 -6
- langflow/frontend/assets/undo-dot-DHpoiELc.js +0 -6
- langflow/frontend/assets/unfold-horizontal-Baz2NDym.js +0 -6
- langflow/frontend/assets/unfold-vertical-B5z_zoi2.js +0 -6
- langflow/frontend/assets/ungroup-Byf-HoMq.js +0 -6
- langflow/frontend/assets/university-BfeHsa2H.js +0 -6
- langflow/frontend/assets/unlink-2-Bf6hkBxc.js +0 -6
- langflow/frontend/assets/unlink-PTIP9C1t.js +0 -6
- langflow/frontend/assets/unplug-dq9vW1e5.js +0 -6
- langflow/frontend/assets/upload-ClL_xcHX.js +0 -6
- langflow/frontend/assets/usb-CMQz5Bbx.js +0 -6
- langflow/frontend/assets/use-post-add-user-CijdM3CW.js +0 -1
- langflow/frontend/assets/user-CJbOlfYO.js +0 -6
- langflow/frontend/assets/user-check-D2TJIdbC.js +0 -6
- langflow/frontend/assets/user-cog-xgFL0Fjx.js +0 -6
- langflow/frontend/assets/user-lock-4Ccl2f31.js +0 -6
- langflow/frontend/assets/user-minus-3-XA_v8O.js +0 -6
- langflow/frontend/assets/user-pen-B6_m96L5.js +0 -6
- langflow/frontend/assets/user-plus-DcRRk4IL.js +0 -6
- langflow/frontend/assets/user-round-B4Dz_J0y.js +0 -6
- langflow/frontend/assets/user-round-check-BuqG6Tln.js +0 -6
- langflow/frontend/assets/user-round-cog-CkomKcE0.js +0 -6
- langflow/frontend/assets/user-round-minus-BOY_xYco.js +0 -6
- langflow/frontend/assets/user-round-pen-QbRIGglu.js +0 -6
- langflow/frontend/assets/user-round-plus-BC1vyhU-.js +0 -6
- langflow/frontend/assets/user-round-search-CDMrfpLU.js +0 -6
- langflow/frontend/assets/user-round-x-B3E2RJ6I.js +0 -6
- langflow/frontend/assets/user-search-DF_KLVhe.js +0 -6
- langflow/frontend/assets/user-x-DgFDuuYq.js +0 -6
- langflow/frontend/assets/users-C9tV3bcv.js +0 -6
- langflow/frontend/assets/users-round-m5S3NT8N.js +0 -6
- langflow/frontend/assets/utensils-CNMxOrnM.js +0 -6
- langflow/frontend/assets/utensils-crossed-CWsvzFyf.js +0 -6
- langflow/frontend/assets/utility-pole-PSm7b5qq.js +0 -6
- langflow/frontend/assets/variable-Dosn3l0Q.js +0 -6
- langflow/frontend/assets/vault-DJCdrDkA.js +0 -6
- langflow/frontend/assets/vegan-BzI5fdli.js +0 -6
- langflow/frontend/assets/venetian-mask-DhNCjf4N.js +0 -6
- langflow/frontend/assets/venus-Dz-DpZXp.js +0 -6
- langflow/frontend/assets/venus-and-mars-Bl6thHIW.js +0 -6
- langflow/frontend/assets/vibrate-BtFaim1I.js +0 -6
- langflow/frontend/assets/vibrate-off-CrxEKLLu.js +0 -6
- langflow/frontend/assets/video-CskvLdG0.js +0 -6
- langflow/frontend/assets/video-off-BLD65TIj.js +0 -6
- langflow/frontend/assets/videotape-CFtB6Y7N.js +0 -6
- langflow/frontend/assets/view-vJgBVvc1.js +0 -6
- langflow/frontend/assets/voicemail-BLTEEoA_.js +0 -6
- langflow/frontend/assets/volleyball-CmsNUAQG.js +0 -6
- langflow/frontend/assets/volume-1-GNgUvREd.js +0 -6
- langflow/frontend/assets/volume-2--ZL1-glW.js +0 -6
- langflow/frontend/assets/volume-Cb0M2vA7.js +0 -6
- langflow/frontend/assets/volume-off-B0WaOdRU.js +0 -6
- langflow/frontend/assets/volume-x-N8PIRYGP.js +0 -6
- langflow/frontend/assets/vote-BybNJmTk.js +0 -6
- langflow/frontend/assets/wallet--kGpRM2_.js +0 -6
- langflow/frontend/assets/wallet-cards-DlB31LM8.js +0 -6
- langflow/frontend/assets/wallet-minimal-Bi8ZraZE.js +0 -6
- langflow/frontend/assets/wallpaper-DtDpeCXF.js +0 -6
- langflow/frontend/assets/wand-DCe0uAlf.js +0 -6
- langflow/frontend/assets/wand-sparkles-3r2BJJrS.js +0 -6
- langflow/frontend/assets/warehouse-BKHflVjD.js +0 -6
- langflow/frontend/assets/washing-machine-DX7eBIvZ.js +0 -6
- langflow/frontend/assets/watch-DtXtjDr9.js +0 -6
- langflow/frontend/assets/waves-CiYh0DqU.js +0 -6
- langflow/frontend/assets/waves-ladder-Yzo4x2dv.js +0 -6
- langflow/frontend/assets/waypoints-Be0aFt5U.js +0 -6
- langflow/frontend/assets/webcam-BrDmzAmL.js +0 -6
- langflow/frontend/assets/webhook-DJlX-3N-.js +0 -6
- langflow/frontend/assets/webhook-off-B7Eotjfb.js +0 -6
- langflow/frontend/assets/weight-DEkTHimE.js +0 -6
- langflow/frontend/assets/wheat-BinBJSa-.js +0 -6
- langflow/frontend/assets/wheat-off-DOI2qhbr.js +0 -6
- langflow/frontend/assets/whole-word-DoiXEyAQ.js +0 -6
- langflow/frontend/assets/wifi-C5iLP1z0.js +0 -6
- langflow/frontend/assets/wifi-high-WCT9uviK.js +0 -6
- langflow/frontend/assets/wifi-low-bhDZjYYt.js +0 -6
- langflow/frontend/assets/wifi-off-DybtTHDv.js +0 -6
- langflow/frontend/assets/wifi-pen-YZxtC-1t.js +0 -6
- langflow/frontend/assets/wifi-zero-Ck1ckTXM.js +0 -6
- langflow/frontend/assets/wind-DpU4CZZc.js +0 -6
- langflow/frontend/assets/wind-arrow-down-CF-PTBQL.js +0 -6
- langflow/frontend/assets/wine-DZzgE7cg.js +0 -6
- langflow/frontend/assets/wine-off-CKFsTdqQ.js +0 -6
- langflow/frontend/assets/workflow-B9ICwfQ9.js +0 -6
- langflow/frontend/assets/worm-B9DE2nB9.js +0 -6
- langflow/frontend/assets/wrap-text-GILhD4dN.js +0 -6
- langflow/frontend/assets/wrench-BVYdz0EV.js +0 -6
- langflow/frontend/assets/youtube-6WX8K7Zb.js +0 -6
- langflow/frontend/assets/zap-BZEXKDc5.js +0 -6
- langflow/frontend/assets/zap-off-B4uFrIUs.js +0 -6
- langflow/frontend/assets/zoom-in-CWEynbHp.js +0 -6
- langflow/frontend/assets/zoom-out-3VosI-6u.js +0 -6
- langflow_base_nightly-1.7.0.dev26.dist-info/METADATA +0 -99
- langflow_base_nightly-1.7.0.dev26.dist-info/RECORD +0 -2277
- {langflow_base_nightly-1.7.0.dev26.dist-info → langflow_base_nightly-1.7.0.dev34.dist-info}/WHEEL +0 -0
- {langflow_base_nightly-1.7.0.dev26.dist-info → langflow_base_nightly-1.7.0.dev34.dist-info}/entry_points.txt +0 -0
|
@@ -476,7 +476,7 @@
|
|
|
476
476
|
"legacy": false,
|
|
477
477
|
"lf_version": "1.6.0",
|
|
478
478
|
"metadata": {
|
|
479
|
-
"code_hash": "
|
|
479
|
+
"code_hash": "8c87e536cca4",
|
|
480
480
|
"dependencies": {
|
|
481
481
|
"dependencies": [
|
|
482
482
|
{
|
|
@@ -485,7 +485,7 @@
|
|
|
485
485
|
},
|
|
486
486
|
{
|
|
487
487
|
"name": "fastapi",
|
|
488
|
-
"version": "0.
|
|
488
|
+
"version": "0.123.0"
|
|
489
489
|
},
|
|
490
490
|
{
|
|
491
491
|
"name": "lfx",
|
|
@@ -550,7 +550,7 @@
|
|
|
550
550
|
"show": true,
|
|
551
551
|
"title_case": false,
|
|
552
552
|
"type": "code",
|
|
553
|
-
"value": "from collections.abc import Generator\nfrom typing import Any\n\nimport orjson\nfrom fastapi.encoders import jsonable_encoder\n\nfrom lfx.base.io.chat import ChatComponent\nfrom lfx.helpers.data import safe_convert\nfrom lfx.inputs.inputs import BoolInput, DropdownInput, HandleInput, MessageTextInput\nfrom lfx.schema.data import Data\nfrom lfx.schema.dataframe import DataFrame\nfrom lfx.schema.message import Message\nfrom lfx.schema.properties import Source\nfrom lfx.template.field.base import Output\nfrom lfx.utils.constants import (\n MESSAGE_SENDER_AI,\n MESSAGE_SENDER_NAME_AI,\n MESSAGE_SENDER_USER,\n)\n\n\nclass ChatOutput(ChatComponent):\n display_name = \"Chat Output\"\n description = \"Display a chat message in the Playground.\"\n documentation: str = \"https://docs.langflow.org/chat-input-and-output\"\n icon = \"MessagesSquare\"\n name = \"ChatOutput\"\n minimized = True\n\n inputs = [\n HandleInput(\n name=\"input_value\",\n display_name=\"Inputs\",\n info=\"Message to be passed as output.\",\n input_types=[\"Data\", \"DataFrame\", \"Message\"],\n required=True,\n ),\n BoolInput(\n name=\"should_store_message\",\n display_name=\"Store Messages\",\n info=\"Store the message in the history.\",\n value=True,\n advanced=True,\n ),\n DropdownInput(\n name=\"sender\",\n display_name=\"Sender Type\",\n options=[MESSAGE_SENDER_AI, MESSAGE_SENDER_USER],\n value=MESSAGE_SENDER_AI,\n advanced=True,\n info=\"Type of sender.\",\n ),\n MessageTextInput(\n name=\"sender_name\",\n display_name=\"Sender Name\",\n info=\"Name of the sender.\",\n value=MESSAGE_SENDER_NAME_AI,\n advanced=True,\n ),\n MessageTextInput(\n name=\"session_id\",\n display_name=\"Session ID\",\n info=\"The session ID of the chat. If empty, the current session ID parameter will be used.\",\n advanced=True,\n ),\n MessageTextInput(\n name=\"context_id\",\n display_name=\"Context ID\",\n info=\"The context ID of the chat. Adds an extra layer to the local memory.\",\n value=\"\",\n advanced=True,\n ),\n MessageTextInput(\n name=\"data_template\",\n display_name=\"Data Template\",\n value=\"{text}\",\n advanced=True,\n info=\"Template to convert Data to Text. If left empty, it will be dynamically set to the Data's text key.\",\n ),\n BoolInput(\n name=\"clean_data\",\n display_name=\"Basic Clean Data\",\n value=True,\n advanced=True,\n info=\"Whether to clean data before converting to string.\",\n ),\n ]\n outputs = [\n Output(\n display_name=\"Output Message\",\n name=\"message\",\n method=\"message_response\",\n ),\n ]\n\n def _build_source(self, id_: str | None, display_name: str | None, source: str | None) -> Source:\n source_dict = {}\n if id_:\n source_dict[\"id\"] = id_\n if display_name:\n source_dict[\"display_name\"] = display_name\n if source:\n # Handle case where source is a ChatOpenAI object\n if hasattr(source, \"model_name\"):\n source_dict[\"source\"] = source.model_name\n elif hasattr(source, \"model\"):\n source_dict[\"source\"] = str(source.model)\n else:\n source_dict[\"source\"] = str(source)\n return Source(**source_dict)\n\n async def message_response(self) -> Message:\n # First convert the input to string if needed\n text = self.convert_to_string()\n\n # Get source properties\n source, _, display_name, source_id = self.get_properties_from_source_component()\n\n # Create or use existing Message object\n if isinstance(self.input_value, Message) and not self.is_connected_to_chat_input():\n message = self.input_value\n # Update message properties\n message.text = text\n else:\n message = Message(text=text)\n\n # Set message properties\n message.sender = self.sender\n message.sender_name = self.sender_name\n message.session_id = self.session_id or self.graph.session_id or \"\"\n message.context_id = self.context_id\n message.flow_id = self.graph.flow_id if hasattr(self, \"graph\") else None\n message.properties.source = self._build_source(source_id, display_name, source)\n\n # Store message if needed\n if message.session_id and self.should_store_message:\n stored_message = await self.send_message(message)\n self.message.value = stored_message\n message = stored_message\n\n self.status = message\n return message\n\n def _serialize_data(self, data: Data) -> str:\n \"\"\"Serialize Data object to JSON string.\"\"\"\n # Convert data.data to JSON-serializable format\n serializable_data = jsonable_encoder(data.data)\n # Serialize with orjson, enabling pretty printing with indentation\n json_bytes = orjson.dumps(serializable_data, option=orjson.OPT_INDENT_2)\n # Convert bytes to string and wrap in Markdown code blocks\n return \"```json\\n\" + json_bytes.decode(\"utf-8\") + \"\\n```\"\n\n def _validate_input(self) -> None:\n \"\"\"Validate the input data and raise ValueError if invalid.\"\"\"\n if self.input_value is None:\n msg = \"Input data cannot be None\"\n raise ValueError(msg)\n if isinstance(self.input_value, list) and not all(\n isinstance(item, Message | Data | DataFrame | str) for item in self.input_value\n ):\n invalid_types = [\n type(item).__name__\n for item in self.input_value\n if not isinstance(item, Message | Data | DataFrame | str)\n ]\n msg = f\"Expected Data or DataFrame or Message or str, got {invalid_types}\"\n raise TypeError(msg)\n if not isinstance(\n self.input_value,\n Message | Data | DataFrame | str | list | Generator | type(None),\n ):\n type_name = type(self.input_value).__name__\n msg = f\"Expected Data or DataFrame or Message or str, Generator or None, got {type_name}\"\n raise TypeError(msg)\n\n def convert_to_string(self) -> str | Generator[Any, None, None]:\n \"\"\"Convert input data to string with proper error handling.\"\"\"\n self._validate_input()\n if isinstance(self.input_value, list):\n clean_data: bool = getattr(self, \"clean_data\", False)\n return \"\\n\".join([safe_convert(item, clean_data=clean_data) for item in self.input_value])\n if isinstance(self.input_value, Generator):\n return self.input_value\n return safe_convert(self.input_value)\n"
|
|
553
|
+
"value": "from collections.abc import Generator\nfrom typing import Any\n\nimport orjson\nfrom fastapi.encoders import jsonable_encoder\n\nfrom lfx.base.io.chat import ChatComponent\nfrom lfx.helpers.data import safe_convert\nfrom lfx.inputs.inputs import BoolInput, DropdownInput, HandleInput, MessageTextInput\nfrom lfx.schema.data import Data\nfrom lfx.schema.dataframe import DataFrame\nfrom lfx.schema.message import Message\nfrom lfx.schema.properties import Source\nfrom lfx.template.field.base import Output\nfrom lfx.utils.constants import (\n MESSAGE_SENDER_AI,\n MESSAGE_SENDER_NAME_AI,\n MESSAGE_SENDER_USER,\n)\n\n\nclass ChatOutput(ChatComponent):\n display_name = \"Chat Output\"\n description = \"Display a chat message in the Playground.\"\n documentation: str = \"https://docs.langflow.org/chat-input-and-output\"\n icon = \"MessagesSquare\"\n name = \"ChatOutput\"\n minimized = True\n\n inputs = [\n HandleInput(\n name=\"input_value\",\n display_name=\"Inputs\",\n info=\"Message to be passed as output.\",\n input_types=[\"Data\", \"DataFrame\", \"Message\"],\n required=True,\n ),\n BoolInput(\n name=\"should_store_message\",\n display_name=\"Store Messages\",\n info=\"Store the message in the history.\",\n value=True,\n advanced=True,\n ),\n DropdownInput(\n name=\"sender\",\n display_name=\"Sender Type\",\n options=[MESSAGE_SENDER_AI, MESSAGE_SENDER_USER],\n value=MESSAGE_SENDER_AI,\n advanced=True,\n info=\"Type of sender.\",\n ),\n MessageTextInput(\n name=\"sender_name\",\n display_name=\"Sender Name\",\n info=\"Name of the sender.\",\n value=MESSAGE_SENDER_NAME_AI,\n advanced=True,\n ),\n MessageTextInput(\n name=\"session_id\",\n display_name=\"Session ID\",\n info=\"The session ID of the chat. If empty, the current session ID parameter will be used.\",\n advanced=True,\n ),\n MessageTextInput(\n name=\"context_id\",\n display_name=\"Context ID\",\n info=\"The context ID of the chat. Adds an extra layer to the local memory.\",\n value=\"\",\n advanced=True,\n ),\n MessageTextInput(\n name=\"data_template\",\n display_name=\"Data Template\",\n value=\"{text}\",\n advanced=True,\n info=\"Template to convert Data to Text. If left empty, it will be dynamically set to the Data's text key.\",\n ),\n BoolInput(\n name=\"clean_data\",\n display_name=\"Basic Clean Data\",\n value=True,\n advanced=True,\n info=\"Whether to clean data before converting to string.\",\n ),\n ]\n outputs = [\n Output(\n display_name=\"Output Message\",\n name=\"message\",\n method=\"message_response\",\n ),\n ]\n\n def _build_source(self, id_: str | None, display_name: str | None, source: str | None) -> Source:\n source_dict = {}\n if id_:\n source_dict[\"id\"] = id_\n if display_name:\n source_dict[\"display_name\"] = display_name\n if source:\n # Handle case where source is a ChatOpenAI object\n if hasattr(source, \"model_name\"):\n source_dict[\"source\"] = source.model_name\n elif hasattr(source, \"model\"):\n source_dict[\"source\"] = str(source.model)\n else:\n source_dict[\"source\"] = str(source)\n return Source(**source_dict)\n\n async def message_response(self) -> Message:\n # First convert the input to string if needed\n text = self.convert_to_string()\n\n # Get source properties\n source, _, display_name, source_id = self.get_properties_from_source_component()\n\n # Create or use existing Message object\n if isinstance(self.input_value, Message) and not self.is_connected_to_chat_input():\n message = self.input_value\n # Update message properties\n message.text = text\n # Preserve existing session_id from the incoming message if it exists\n existing_session_id = message.session_id\n else:\n message = Message(text=text)\n existing_session_id = None\n\n # Set message properties\n message.sender = self.sender\n message.sender_name = self.sender_name\n # Preserve session_id from incoming message, or use component/graph session_id\n message.session_id = (\n self.session_id or existing_session_id or (self.graph.session_id if hasattr(self, \"graph\") else None) or \"\"\n )\n message.context_id = self.context_id\n message.flow_id = self.graph.flow_id if hasattr(self, \"graph\") else None\n message.properties.source = self._build_source(source_id, display_name, source)\n\n # Store message if needed\n if message.session_id and self.should_store_message:\n stored_message = await self.send_message(message)\n self.message.value = stored_message\n message = stored_message\n\n self.status = message\n return message\n\n def _serialize_data(self, data: Data) -> str:\n \"\"\"Serialize Data object to JSON string.\"\"\"\n # Convert data.data to JSON-serializable format\n serializable_data = jsonable_encoder(data.data)\n # Serialize with orjson, enabling pretty printing with indentation\n json_bytes = orjson.dumps(serializable_data, option=orjson.OPT_INDENT_2)\n # Convert bytes to string and wrap in Markdown code blocks\n return \"```json\\n\" + json_bytes.decode(\"utf-8\") + \"\\n```\"\n\n def _validate_input(self) -> None:\n \"\"\"Validate the input data and raise ValueError if invalid.\"\"\"\n if self.input_value is None:\n msg = \"Input data cannot be None\"\n raise ValueError(msg)\n if isinstance(self.input_value, list) and not all(\n isinstance(item, Message | Data | DataFrame | str) for item in self.input_value\n ):\n invalid_types = [\n type(item).__name__\n for item in self.input_value\n if not isinstance(item, Message | Data | DataFrame | str)\n ]\n msg = f\"Expected Data or DataFrame or Message or str, got {invalid_types}\"\n raise TypeError(msg)\n if not isinstance(\n self.input_value,\n Message | Data | DataFrame | str | list | Generator | type(None),\n ):\n type_name = type(self.input_value).__name__\n msg = f\"Expected Data or DataFrame or Message or str, Generator or None, got {type_name}\"\n raise TypeError(msg)\n\n def convert_to_string(self) -> str | Generator[Any, None, None]:\n \"\"\"Convert input data to string with proper error handling.\"\"\"\n self._validate_input()\n if isinstance(self.input_value, list):\n clean_data: bool = getattr(self, \"clean_data\", False)\n return \"\\n\".join([safe_convert(item, clean_data=clean_data) for item in self.input_value])\n if isinstance(self.input_value, Generator):\n return self.input_value\n return safe_convert(self.input_value)\n"
|
|
554
554
|
},
|
|
555
555
|
"context_id": {
|
|
556
556
|
"_input_type": "MessageTextInput",
|
|
@@ -1547,12 +1547,12 @@
|
|
|
1547
1547
|
"legacy": false,
|
|
1548
1548
|
"lf_version": "1.6.0",
|
|
1549
1549
|
"metadata": {
|
|
1550
|
-
"code_hash": "
|
|
1550
|
+
"code_hash": "fba2d73636e5",
|
|
1551
1551
|
"dependencies": {
|
|
1552
1552
|
"dependencies": [
|
|
1553
1553
|
{
|
|
1554
1554
|
"name": "langchain_core",
|
|
1555
|
-
"version": "0.3.
|
|
1555
|
+
"version": "0.3.80"
|
|
1556
1556
|
},
|
|
1557
1557
|
{
|
|
1558
1558
|
"name": "pydantic",
|
|
@@ -1673,17 +1673,23 @@
|
|
|
1673
1673
|
"icon": "OpenAI"
|
|
1674
1674
|
},
|
|
1675
1675
|
{
|
|
1676
|
-
"icon": "
|
|
1676
|
+
"icon": "WatsonxAI"
|
|
1677
|
+
},
|
|
1678
|
+
{
|
|
1679
|
+
"icon": "Ollama"
|
|
1677
1680
|
}
|
|
1678
1681
|
],
|
|
1682
|
+
"override_skip": false,
|
|
1679
1683
|
"placeholder": "",
|
|
1680
1684
|
"real_time_refresh": true,
|
|
1685
|
+
"refresh_button": false,
|
|
1681
1686
|
"required": false,
|
|
1682
1687
|
"show": true,
|
|
1683
1688
|
"title_case": false,
|
|
1684
1689
|
"toggle": false,
|
|
1685
1690
|
"tool_mode": false,
|
|
1686
1691
|
"trace_as_metadata": true,
|
|
1692
|
+
"track_in_telemetry": true,
|
|
1687
1693
|
"type": "str",
|
|
1688
1694
|
"value": "OpenAI"
|
|
1689
1695
|
},
|
|
@@ -1715,6 +1721,7 @@
|
|
|
1715
1721
|
"list_add_label": "Add More",
|
|
1716
1722
|
"load_from_db": false,
|
|
1717
1723
|
"name": "base_url",
|
|
1724
|
+
"override_skip": false,
|
|
1718
1725
|
"placeholder": "",
|
|
1719
1726
|
"required": true,
|
|
1720
1727
|
"show": false,
|
|
@@ -1741,7 +1748,7 @@
|
|
|
1741
1748
|
"show": true,
|
|
1742
1749
|
"title_case": false,
|
|
1743
1750
|
"type": "code",
|
|
1744
|
-
"value": "import json\nimport re\n\nfrom langchain_core.tools import StructuredTool, Tool\nfrom pydantic import ValidationError\n\nfrom lfx.base.agents.agent import LCToolsAgentComponent\nfrom lfx.base.agents.events import ExceptionWithMessageError\nfrom lfx.base.models.model_input_constants import (\n ALL_PROVIDER_FIELDS,\n MODEL_DYNAMIC_UPDATE_FIELDS,\n MODEL_PROVIDERS_DICT,\n MODEL_PROVIDERS_LIST,\n MODELS_METADATA,\n)\nfrom lfx.base.models.model_utils import get_model_name\nfrom lfx.components.helpers import CurrentDateComponent\nfrom lfx.components.langchain_utilities.tool_calling import ToolCallingAgentComponent\nfrom lfx.components.models_and_agents.memory import MemoryComponent\nfrom lfx.custom.custom_component.component import get_component_toolkit\nfrom lfx.custom.utils import update_component_build_config\nfrom lfx.helpers.base_model import build_model_from_schema\nfrom lfx.inputs.inputs import BoolInput, SecretStrInput, StrInput\nfrom lfx.io import DropdownInput, IntInput, MessageTextInput, MultilineInput, Output, TableInput\nfrom lfx.log.logger import logger\nfrom lfx.schema.data import Data\nfrom lfx.schema.dotdict import dotdict\nfrom lfx.schema.message import Message\nfrom lfx.schema.table import EditMode\n\n\ndef set_advanced_true(component_input):\n component_input.advanced = True\n return component_input\n\n\nclass AgentComponent(ToolCallingAgentComponent):\n display_name: str = \"Agent\"\n description: str = \"Define the agent's instructions, then enter a task to complete using tools.\"\n documentation: str = \"https://docs.langflow.org/agents\"\n icon = \"bot\"\n beta = False\n name = \"Agent\"\n\n memory_inputs = [set_advanced_true(component_input) for component_input in MemoryComponent().inputs]\n\n # Filter out json_mode from OpenAI inputs since we handle structured output differently\n if \"OpenAI\" in MODEL_PROVIDERS_DICT:\n openai_inputs_filtered = [\n input_field\n for input_field in MODEL_PROVIDERS_DICT[\"OpenAI\"][\"inputs\"]\n if not (hasattr(input_field, \"name\") and input_field.name == \"json_mode\")\n ]\n else:\n openai_inputs_filtered = []\n\n inputs = [\n DropdownInput(\n name=\"agent_llm\",\n display_name=\"Model Provider\",\n info=\"The provider of the language model that the agent will use to generate responses.\",\n options=[*MODEL_PROVIDERS_LIST],\n value=\"OpenAI\",\n real_time_refresh=True,\n refresh_button=False,\n input_types=[],\n options_metadata=[MODELS_METADATA[key] for key in MODEL_PROVIDERS_LIST if key in MODELS_METADATA],\n external_options={\n \"fields\": {\n \"data\": {\n \"node\": {\n \"name\": \"connect_other_models\",\n \"display_name\": \"Connect other models\",\n \"icon\": \"CornerDownLeft\",\n }\n }\n },\n },\n ),\n SecretStrInput(\n name=\"api_key\",\n display_name=\"API Key\",\n info=\"The API key to use for the model.\",\n required=True,\n ),\n StrInput(\n name=\"base_url\",\n display_name=\"Base URL\",\n info=\"The base URL of the API.\",\n required=True,\n show=False,\n ),\n StrInput(\n name=\"project_id\",\n display_name=\"Project ID\",\n info=\"The project ID of the model.\",\n required=True,\n show=False,\n ),\n IntInput(\n name=\"max_output_tokens\",\n display_name=\"Max Output Tokens\",\n info=\"The maximum number of tokens to generate.\",\n show=False,\n ),\n *openai_inputs_filtered,\n MultilineInput(\n name=\"system_prompt\",\n display_name=\"Agent Instructions\",\n info=\"System Prompt: Initial instructions and context provided to guide the agent's behavior.\",\n value=\"You are a helpful assistant that can use tools to answer questions and perform tasks.\",\n advanced=False,\n ),\n MessageTextInput(\n name=\"context_id\",\n display_name=\"Context ID\",\n info=\"The context ID of the chat. Adds an extra layer to the local memory.\",\n value=\"\",\n advanced=True,\n ),\n IntInput(\n name=\"n_messages\",\n display_name=\"Number of Chat History Messages\",\n value=100,\n info=\"Number of chat history messages to retrieve.\",\n advanced=True,\n show=True,\n ),\n MultilineInput(\n name=\"format_instructions\",\n display_name=\"Output Format Instructions\",\n info=\"Generic Template for structured output formatting. Valid only with Structured response.\",\n value=(\n \"You are an AI that extracts structured JSON objects from unstructured text. \"\n \"Use a predefined schema with expected types (str, int, float, bool, dict). \"\n \"Extract ALL relevant instances that match the schema - if multiple patterns exist, capture them all. \"\n \"Fill missing or ambiguous values with defaults: null for missing values. \"\n \"Remove exact duplicates but keep variations that have different field values. \"\n \"Always return valid JSON in the expected format, never throw errors. \"\n \"If multiple objects can be extracted, return them all in the structured format.\"\n ),\n advanced=True,\n ),\n TableInput(\n name=\"output_schema\",\n display_name=\"Output Schema\",\n info=(\n \"Schema Validation: Define the structure and data types for structured output. \"\n \"No validation if no output schema.\"\n ),\n advanced=True,\n required=False,\n value=[],\n table_schema=[\n {\n \"name\": \"name\",\n \"display_name\": \"Name\",\n \"type\": \"str\",\n \"description\": \"Specify the name of the output field.\",\n \"default\": \"field\",\n \"edit_mode\": EditMode.INLINE,\n },\n {\n \"name\": \"description\",\n \"display_name\": \"Description\",\n \"type\": \"str\",\n \"description\": \"Describe the purpose of the output field.\",\n \"default\": \"description of field\",\n \"edit_mode\": EditMode.POPOVER,\n },\n {\n \"name\": \"type\",\n \"display_name\": \"Type\",\n \"type\": \"str\",\n \"edit_mode\": EditMode.INLINE,\n \"description\": (\"Indicate the data type of the output field (e.g., str, int, float, bool, dict).\"),\n \"options\": [\"str\", \"int\", \"float\", \"bool\", \"dict\"],\n \"default\": \"str\",\n },\n {\n \"name\": \"multiple\",\n \"display_name\": \"As List\",\n \"type\": \"boolean\",\n \"description\": \"Set to True if this output field should be a list of the specified type.\",\n \"default\": \"False\",\n \"edit_mode\": EditMode.INLINE,\n },\n ],\n ),\n *LCToolsAgentComponent.get_base_inputs(),\n # removed memory inputs from agent component\n # *memory_inputs,\n BoolInput(\n name=\"add_current_date_tool\",\n display_name=\"Current Date\",\n advanced=True,\n info=\"If true, will add a tool to the agent that returns the current date.\",\n value=True,\n ),\n ]\n outputs = [\n Output(name=\"response\", display_name=\"Response\", method=\"message_response\"),\n ]\n\n async def get_agent_requirements(self):\n \"\"\"Get the agent requirements for the agent.\"\"\"\n llm_model, display_name = await self.get_llm()\n if llm_model is None:\n msg = \"No language model selected. Please choose a model to proceed.\"\n raise ValueError(msg)\n self.model_name = get_model_name(llm_model, display_name=display_name)\n\n # Get memory data\n self.chat_history = await self.get_memory_data()\n await logger.adebug(f\"Retrieved {len(self.chat_history)} chat history messages\")\n if isinstance(self.chat_history, Message):\n self.chat_history = [self.chat_history]\n\n # Add current date tool if enabled\n if self.add_current_date_tool:\n if not isinstance(self.tools, list): # type: ignore[has-type]\n self.tools = []\n current_date_tool = (await CurrentDateComponent(**self.get_base_args()).to_toolkit()).pop(0)\n\n if not isinstance(current_date_tool, StructuredTool):\n msg = \"CurrentDateComponent must be converted to a StructuredTool\"\n raise TypeError(msg)\n self.tools.append(current_date_tool)\n\n # Set shared callbacks for tracing the tools used by the agent\n self.set_tools_callbacks(self.tools, self._get_shared_callbacks())\n\n return llm_model, self.chat_history, self.tools\n\n async def message_response(self) -> Message:\n try:\n llm_model, self.chat_history, self.tools = await self.get_agent_requirements()\n # Set up and run agent\n self.set(\n llm=llm_model,\n tools=self.tools or [],\n chat_history=self.chat_history,\n input_value=self.input_value,\n system_prompt=self.system_prompt,\n )\n agent = self.create_agent_runnable()\n result = await self.run_agent(agent)\n\n # Store result for potential JSON output\n self._agent_result = result\n\n except (ValueError, TypeError, KeyError) as e:\n await logger.aerror(f\"{type(e).__name__}: {e!s}\")\n raise\n except ExceptionWithMessageError as e:\n await logger.aerror(f\"ExceptionWithMessageError occurred: {e}\")\n raise\n # Avoid catching blind Exception; let truly unexpected exceptions propagate\n except Exception as e:\n await logger.aerror(f\"Unexpected error: {e!s}\")\n raise\n else:\n return result\n\n def _preprocess_schema(self, schema):\n \"\"\"Preprocess schema to ensure correct data types for build_model_from_schema.\"\"\"\n processed_schema = []\n for field in schema:\n processed_field = {\n \"name\": str(field.get(\"name\", \"field\")),\n \"type\": str(field.get(\"type\", \"str\")),\n \"description\": str(field.get(\"description\", \"\")),\n \"multiple\": field.get(\"multiple\", False),\n }\n # Ensure multiple is handled correctly\n if isinstance(processed_field[\"multiple\"], str):\n processed_field[\"multiple\"] = processed_field[\"multiple\"].lower() in [\n \"true\",\n \"1\",\n \"t\",\n \"y\",\n \"yes\",\n ]\n processed_schema.append(processed_field)\n return processed_schema\n\n async def build_structured_output_base(self, content: str):\n \"\"\"Build structured output with optional BaseModel validation.\"\"\"\n json_pattern = r\"\\{.*\\}\"\n schema_error_msg = \"Try setting an output schema\"\n\n # Try to parse content as JSON first\n json_data = None\n try:\n json_data = json.loads(content)\n except json.JSONDecodeError:\n json_match = re.search(json_pattern, content, re.DOTALL)\n if json_match:\n try:\n json_data = json.loads(json_match.group())\n except json.JSONDecodeError:\n return {\"content\": content, \"error\": schema_error_msg}\n else:\n return {\"content\": content, \"error\": schema_error_msg}\n\n # If no output schema provided, return parsed JSON without validation\n if not hasattr(self, \"output_schema\") or not self.output_schema or len(self.output_schema) == 0:\n return json_data\n\n # Use BaseModel validation with schema\n try:\n processed_schema = self._preprocess_schema(self.output_schema)\n output_model = build_model_from_schema(processed_schema)\n\n # Validate against the schema\n if isinstance(json_data, list):\n # Multiple objects\n validated_objects = []\n for item in json_data:\n try:\n validated_obj = output_model.model_validate(item)\n validated_objects.append(validated_obj.model_dump())\n except ValidationError as e:\n await logger.aerror(f\"Validation error for item: {e}\")\n # Include invalid items with error info\n validated_objects.append({\"data\": item, \"validation_error\": str(e)})\n return validated_objects\n\n # Single object\n try:\n validated_obj = output_model.model_validate(json_data)\n return [validated_obj.model_dump()] # Return as list for consistency\n except ValidationError as e:\n await logger.aerror(f\"Validation error: {e}\")\n return [{\"data\": json_data, \"validation_error\": str(e)}]\n\n except (TypeError, ValueError) as e:\n await logger.aerror(f\"Error building structured output: {e}\")\n # Fallback to parsed JSON without validation\n return json_data\n\n async def json_response(self) -> Data:\n \"\"\"Convert agent response to structured JSON Data output with schema validation.\"\"\"\n # Always use structured chat agent for JSON response mode for better JSON formatting\n try:\n system_components = []\n\n # 1. Agent Instructions (system_prompt)\n agent_instructions = getattr(self, \"system_prompt\", \"\") or \"\"\n if agent_instructions:\n system_components.append(f\"{agent_instructions}\")\n\n # 2. Format Instructions\n format_instructions = getattr(self, \"format_instructions\", \"\") or \"\"\n if format_instructions:\n system_components.append(f\"Format instructions: {format_instructions}\")\n\n # 3. Schema Information from BaseModel\n if hasattr(self, \"output_schema\") and self.output_schema and len(self.output_schema) > 0:\n try:\n processed_schema = self._preprocess_schema(self.output_schema)\n output_model = build_model_from_schema(processed_schema)\n schema_dict = output_model.model_json_schema()\n schema_info = (\n \"You are given some text that may include format instructions, \"\n \"explanations, or other content alongside a JSON schema.\\n\\n\"\n \"Your task:\\n\"\n \"- Extract only the JSON schema.\\n\"\n \"- Return it as valid JSON.\\n\"\n \"- Do not include format instructions, explanations, or extra text.\\n\\n\"\n \"Input:\\n\"\n f\"{json.dumps(schema_dict, indent=2)}\\n\\n\"\n \"Output (only JSON schema):\"\n )\n system_components.append(schema_info)\n except (ValidationError, ValueError, TypeError, KeyError) as e:\n await logger.aerror(f\"Could not build schema for prompt: {e}\", exc_info=True)\n\n # Combine all components\n combined_instructions = \"\\n\\n\".join(system_components) if system_components else \"\"\n llm_model, self.chat_history, self.tools = await self.get_agent_requirements()\n self.set(\n llm=llm_model,\n tools=self.tools or [],\n chat_history=self.chat_history,\n input_value=self.input_value,\n system_prompt=combined_instructions,\n )\n\n # Create and run structured chat agent\n try:\n structured_agent = self.create_agent_runnable()\n except (NotImplementedError, ValueError, TypeError) as e:\n await logger.aerror(f\"Error with structured chat agent: {e}\")\n raise\n try:\n result = await self.run_agent(structured_agent)\n except (\n ExceptionWithMessageError,\n ValueError,\n TypeError,\n RuntimeError,\n ) as e:\n await logger.aerror(f\"Error with structured agent result: {e}\")\n raise\n # Extract content from structured agent result\n if hasattr(result, \"content\"):\n content = result.content\n elif hasattr(result, \"text\"):\n content = result.text\n else:\n content = str(result)\n\n except (\n ExceptionWithMessageError,\n ValueError,\n TypeError,\n NotImplementedError,\n AttributeError,\n ) as e:\n await logger.aerror(f\"Error with structured chat agent: {e}\")\n # Fallback to regular agent\n content_str = \"No content returned from agent\"\n return Data(data={\"content\": content_str, \"error\": str(e)})\n\n # Process with structured output validation\n try:\n structured_output = await self.build_structured_output_base(content)\n\n # Handle different output formats\n if isinstance(structured_output, list) and structured_output:\n if len(structured_output) == 1:\n return Data(data=structured_output[0])\n return Data(data={\"results\": structured_output})\n if isinstance(structured_output, dict):\n return Data(data=structured_output)\n return Data(data={\"content\": content})\n\n except (ValueError, TypeError) as e:\n await logger.aerror(f\"Error in structured output processing: {e}\")\n return Data(data={\"content\": content, \"error\": str(e)})\n\n async def get_memory_data(self):\n # TODO: This is a temporary fix to avoid message duplication. We should develop a function for this.\n messages = (\n await MemoryComponent(**self.get_base_args())\n .set(\n session_id=self.graph.session_id,\n context_id=self.context_id,\n order=\"Ascending\",\n n_messages=self.n_messages,\n )\n .retrieve_messages()\n )\n return [\n message for message in messages if getattr(message, \"id\", None) != getattr(self.input_value, \"id\", None)\n ]\n\n async def get_llm(self):\n if not isinstance(self.agent_llm, str):\n return self.agent_llm, None\n\n try:\n provider_info = MODEL_PROVIDERS_DICT.get(self.agent_llm)\n if not provider_info:\n msg = f\"Invalid model provider: {self.agent_llm}\"\n raise ValueError(msg)\n\n component_class = provider_info.get(\"component_class\")\n display_name = component_class.display_name\n inputs = provider_info.get(\"inputs\")\n prefix = provider_info.get(\"prefix\", \"\")\n\n return self._build_llm_model(component_class, inputs, prefix), display_name\n\n except (AttributeError, ValueError, TypeError, RuntimeError) as e:\n await logger.aerror(f\"Error building {self.agent_llm} language model: {e!s}\")\n msg = f\"Failed to initialize language model: {e!s}\"\n raise ValueError(msg) from e\n\n def _build_llm_model(self, component, inputs, prefix=\"\"):\n model_kwargs = {}\n for input_ in inputs:\n if hasattr(self, f\"{prefix}{input_.name}\"):\n model_kwargs[input_.name] = getattr(self, f\"{prefix}{input_.name}\")\n return component.set(**model_kwargs).build_model()\n\n def set_component_params(self, component):\n provider_info = MODEL_PROVIDERS_DICT.get(self.agent_llm)\n if provider_info:\n inputs = provider_info.get(\"inputs\")\n prefix = provider_info.get(\"prefix\")\n # Filter out json_mode and only use attributes that exist on this component\n model_kwargs = {}\n for input_ in inputs:\n if hasattr(self, f\"{prefix}{input_.name}\"):\n model_kwargs[input_.name] = getattr(self, f\"{prefix}{input_.name}\")\n\n return component.set(**model_kwargs)\n return component\n\n def delete_fields(self, build_config: dotdict, fields: dict | list[str]) -> None:\n \"\"\"Delete specified fields from build_config.\"\"\"\n for field in fields:\n if build_config is not None and field in build_config:\n build_config.pop(field, None)\n\n def update_input_types(self, build_config: dotdict) -> dotdict:\n \"\"\"Update input types for all fields in build_config.\"\"\"\n for key, value in build_config.items():\n if isinstance(value, dict):\n if value.get(\"input_types\") is None:\n build_config[key][\"input_types\"] = []\n elif hasattr(value, \"input_types\") and value.input_types is None:\n value.input_types = []\n return build_config\n\n async def update_build_config(\n self, build_config: dotdict, field_value: str, field_name: str | None = None\n ) -> dotdict:\n # Iterate over all providers in the MODEL_PROVIDERS_DICT\n # Existing logic for updating build_config\n if field_name in (\"agent_llm\",):\n build_config[\"agent_llm\"][\"value\"] = field_value\n provider_info = MODEL_PROVIDERS_DICT.get(field_value)\n if provider_info:\n component_class = provider_info.get(\"component_class\")\n if component_class and hasattr(component_class, \"update_build_config\"):\n # Call the component class's update_build_config method\n build_config = await update_component_build_config(\n component_class, build_config, field_value, \"model_name\"\n )\n\n provider_configs: dict[str, tuple[dict, list[dict]]] = {\n provider: (\n MODEL_PROVIDERS_DICT[provider][\"fields\"],\n [\n MODEL_PROVIDERS_DICT[other_provider][\"fields\"]\n for other_provider in MODEL_PROVIDERS_DICT\n if other_provider != provider\n ],\n )\n for provider in MODEL_PROVIDERS_DICT\n }\n if field_value in provider_configs:\n fields_to_add, fields_to_delete = provider_configs[field_value]\n\n # Delete fields from other providers\n for fields in fields_to_delete:\n self.delete_fields(build_config, fields)\n\n # Add provider-specific fields\n if field_value == \"OpenAI\" and not any(field in build_config for field in fields_to_add):\n build_config.update(fields_to_add)\n else:\n build_config.update(fields_to_add)\n # Reset input types for agent_llm\n build_config[\"agent_llm\"][\"input_types\"] = []\n build_config[\"agent_llm\"][\"display_name\"] = \"Model Provider\"\n elif field_value == \"connect_other_models\":\n # Delete all provider fields\n self.delete_fields(build_config, ALL_PROVIDER_FIELDS)\n # # Update with custom component\n custom_component = DropdownInput(\n name=\"agent_llm\",\n display_name=\"Language Model\",\n info=\"The provider of the language model that the agent will use to generate responses.\",\n options=[*MODEL_PROVIDERS_LIST],\n real_time_refresh=True,\n refresh_button=False,\n input_types=[\"LanguageModel\"],\n placeholder=\"Awaiting model input.\",\n options_metadata=[MODELS_METADATA[key] for key in MODEL_PROVIDERS_LIST if key in MODELS_METADATA],\n external_options={\n \"fields\": {\n \"data\": {\n \"node\": {\n \"name\": \"connect_other_models\",\n \"display_name\": \"Connect other models\",\n \"icon\": \"CornerDownLeft\",\n },\n }\n },\n },\n )\n build_config.update({\"agent_llm\": custom_component.to_dict()})\n # Update input types for all fields\n build_config = self.update_input_types(build_config)\n\n # Validate required keys\n default_keys = [\n \"code\",\n \"_type\",\n \"agent_llm\",\n \"tools\",\n \"input_value\",\n \"add_current_date_tool\",\n \"system_prompt\",\n \"agent_description\",\n \"max_iterations\",\n \"handle_parsing_errors\",\n \"verbose\",\n ]\n missing_keys = [key for key in default_keys if key not in build_config]\n if missing_keys:\n msg = f\"Missing required keys in build_config: {missing_keys}\"\n raise ValueError(msg)\n if (\n isinstance(self.agent_llm, str)\n and self.agent_llm in MODEL_PROVIDERS_DICT\n and field_name in MODEL_DYNAMIC_UPDATE_FIELDS\n ):\n provider_info = MODEL_PROVIDERS_DICT.get(self.agent_llm)\n if provider_info:\n component_class = provider_info.get(\"component_class\")\n component_class = self.set_component_params(component_class)\n prefix = provider_info.get(\"prefix\")\n if component_class and hasattr(component_class, \"update_build_config\"):\n # Call each component class's update_build_config method\n # remove the prefix from the field_name\n if isinstance(field_name, str) and isinstance(prefix, str):\n field_name = field_name.replace(prefix, \"\")\n build_config = await update_component_build_config(\n component_class, build_config, field_value, \"model_name\"\n )\n return dotdict({k: v.to_dict() if hasattr(v, \"to_dict\") else v for k, v in build_config.items()})\n\n async def _get_tools(self) -> list[Tool]:\n component_toolkit = get_component_toolkit()\n tools_names = self._build_tools_names()\n agent_description = self.get_tool_description()\n # TODO: Agent Description Depreciated Feature to be removed\n description = f\"{agent_description}{tools_names}\"\n\n tools = component_toolkit(component=self).get_tools(\n tool_name=\"Call_Agent\",\n tool_description=description,\n # here we do not use the shared callbacks as we are exposing the agent as a tool\n callbacks=self.get_langchain_callbacks(),\n )\n if hasattr(self, \"tools_metadata\"):\n tools = component_toolkit(component=self, metadata=self.tools_metadata).update_tools_metadata(tools=tools)\n\n return tools\n"
|
|
1751
|
+
"value": "import json\nimport re\n\nfrom langchain_core.tools import StructuredTool, Tool\nfrom pydantic import ValidationError\n\nfrom lfx.base.agents.agent import LCToolsAgentComponent\nfrom lfx.base.agents.events import ExceptionWithMessageError\nfrom lfx.base.models.model_input_constants import (\n ALL_PROVIDER_FIELDS,\n MODEL_DYNAMIC_UPDATE_FIELDS,\n MODEL_PROVIDERS_DICT,\n MODEL_PROVIDERS_LIST,\n MODELS_METADATA,\n)\nfrom lfx.base.models.model_utils import get_model_name\nfrom lfx.components.helpers import CurrentDateComponent\nfrom lfx.components.langchain_utilities.tool_calling import ToolCallingAgentComponent\nfrom lfx.components.models_and_agents.memory import MemoryComponent\nfrom lfx.custom.custom_component.component import get_component_toolkit\nfrom lfx.custom.utils import update_component_build_config\nfrom lfx.helpers.base_model import build_model_from_schema\nfrom lfx.inputs.inputs import BoolInput, SecretStrInput, StrInput\nfrom lfx.io import DropdownInput, IntInput, MessageTextInput, MultilineInput, Output, TableInput\nfrom lfx.log.logger import logger\nfrom lfx.schema.data import Data\nfrom lfx.schema.dotdict import dotdict\nfrom lfx.schema.message import Message\nfrom lfx.schema.table import EditMode\n\n\ndef set_advanced_true(component_input):\n component_input.advanced = True\n return component_input\n\n\nclass AgentComponent(ToolCallingAgentComponent):\n display_name: str = \"Agent\"\n description: str = \"Define the agent's instructions, then enter a task to complete using tools.\"\n documentation: str = \"https://docs.langflow.org/agents\"\n icon = \"bot\"\n beta = False\n name = \"Agent\"\n\n memory_inputs = [set_advanced_true(component_input) for component_input in MemoryComponent().inputs]\n\n # Filter out json_mode from OpenAI inputs since we handle structured output differently\n if \"OpenAI\" in MODEL_PROVIDERS_DICT:\n openai_inputs_filtered = [\n input_field\n for input_field in MODEL_PROVIDERS_DICT[\"OpenAI\"][\"inputs\"]\n if not (hasattr(input_field, \"name\") and input_field.name == \"json_mode\")\n ]\n else:\n openai_inputs_filtered = []\n\n inputs = [\n DropdownInput(\n name=\"agent_llm\",\n display_name=\"Model Provider\",\n info=\"The provider of the language model that the agent will use to generate responses.\",\n options=[*MODEL_PROVIDERS_LIST],\n value=\"OpenAI\",\n real_time_refresh=True,\n refresh_button=False,\n input_types=[],\n options_metadata=[MODELS_METADATA[key] for key in MODEL_PROVIDERS_LIST if key in MODELS_METADATA],\n external_options={\n \"fields\": {\n \"data\": {\n \"node\": {\n \"name\": \"connect_other_models\",\n \"display_name\": \"Connect other models\",\n \"icon\": \"CornerDownLeft\",\n }\n }\n },\n },\n ),\n SecretStrInput(\n name=\"api_key\",\n display_name=\"API Key\",\n info=\"The API key to use for the model.\",\n required=True,\n ),\n StrInput(\n name=\"base_url\",\n display_name=\"Base URL\",\n info=\"The base URL of the API.\",\n required=True,\n show=False,\n ),\n StrInput(\n name=\"project_id\",\n display_name=\"Project ID\",\n info=\"The project ID of the model.\",\n required=True,\n show=False,\n ),\n IntInput(\n name=\"max_output_tokens\",\n display_name=\"Max Output Tokens\",\n info=\"The maximum number of tokens to generate.\",\n show=False,\n ),\n *openai_inputs_filtered,\n MultilineInput(\n name=\"system_prompt\",\n display_name=\"Agent Instructions\",\n info=\"System Prompt: Initial instructions and context provided to guide the agent's behavior.\",\n value=\"You are a helpful assistant that can use tools to answer questions and perform tasks.\",\n advanced=False,\n ),\n MessageTextInput(\n name=\"context_id\",\n display_name=\"Context ID\",\n info=\"The context ID of the chat. Adds an extra layer to the local memory.\",\n value=\"\",\n advanced=True,\n ),\n IntInput(\n name=\"n_messages\",\n display_name=\"Number of Chat History Messages\",\n value=100,\n info=\"Number of chat history messages to retrieve.\",\n advanced=True,\n show=True,\n ),\n MultilineInput(\n name=\"format_instructions\",\n display_name=\"Output Format Instructions\",\n info=\"Generic Template for structured output formatting. Valid only with Structured response.\",\n value=(\n \"You are an AI that extracts structured JSON objects from unstructured text. \"\n \"Use a predefined schema with expected types (str, int, float, bool, dict). \"\n \"Extract ALL relevant instances that match the schema - if multiple patterns exist, capture them all. \"\n \"Fill missing or ambiguous values with defaults: null for missing values. \"\n \"Remove exact duplicates but keep variations that have different field values. \"\n \"Always return valid JSON in the expected format, never throw errors. \"\n \"If multiple objects can be extracted, return them all in the structured format.\"\n ),\n advanced=True,\n ),\n TableInput(\n name=\"output_schema\",\n display_name=\"Output Schema\",\n info=(\n \"Schema Validation: Define the structure and data types for structured output. \"\n \"No validation if no output schema.\"\n ),\n advanced=True,\n required=False,\n value=[],\n table_schema=[\n {\n \"name\": \"name\",\n \"display_name\": \"Name\",\n \"type\": \"str\",\n \"description\": \"Specify the name of the output field.\",\n \"default\": \"field\",\n \"edit_mode\": EditMode.INLINE,\n },\n {\n \"name\": \"description\",\n \"display_name\": \"Description\",\n \"type\": \"str\",\n \"description\": \"Describe the purpose of the output field.\",\n \"default\": \"description of field\",\n \"edit_mode\": EditMode.POPOVER,\n },\n {\n \"name\": \"type\",\n \"display_name\": \"Type\",\n \"type\": \"str\",\n \"edit_mode\": EditMode.INLINE,\n \"description\": (\"Indicate the data type of the output field (e.g., str, int, float, bool, dict).\"),\n \"options\": [\"str\", \"int\", \"float\", \"bool\", \"dict\"],\n \"default\": \"str\",\n },\n {\n \"name\": \"multiple\",\n \"display_name\": \"As List\",\n \"type\": \"boolean\",\n \"description\": \"Set to True if this output field should be a list of the specified type.\",\n \"default\": \"False\",\n \"edit_mode\": EditMode.INLINE,\n },\n ],\n ),\n *LCToolsAgentComponent.get_base_inputs(),\n # removed memory inputs from agent component\n # *memory_inputs,\n BoolInput(\n name=\"add_current_date_tool\",\n display_name=\"Current Date\",\n advanced=True,\n info=\"If true, will add a tool to the agent that returns the current date.\",\n value=True,\n ),\n ]\n outputs = [\n Output(name=\"response\", display_name=\"Response\", method=\"message_response\"),\n ]\n\n async def get_agent_requirements(self):\n \"\"\"Get the agent requirements for the agent.\"\"\"\n llm_model, display_name = await self.get_llm()\n if llm_model is None:\n msg = \"No language model selected. Please choose a model to proceed.\"\n raise ValueError(msg)\n self.model_name = get_model_name(llm_model, display_name=display_name)\n\n # Get memory data\n self.chat_history = await self.get_memory_data()\n await logger.adebug(f\"Retrieved {len(self.chat_history)} chat history messages\")\n if isinstance(self.chat_history, Message):\n self.chat_history = [self.chat_history]\n\n # Add current date tool if enabled\n if self.add_current_date_tool:\n if not isinstance(self.tools, list): # type: ignore[has-type]\n self.tools = []\n current_date_tool = (await CurrentDateComponent(**self.get_base_args()).to_toolkit()).pop(0)\n\n if not isinstance(current_date_tool, StructuredTool):\n msg = \"CurrentDateComponent must be converted to a StructuredTool\"\n raise TypeError(msg)\n self.tools.append(current_date_tool)\n\n # Set shared callbacks for tracing the tools used by the agent\n self.set_tools_callbacks(self.tools, self._get_shared_callbacks())\n\n return llm_model, self.chat_history, self.tools\n\n async def message_response(self) -> Message:\n try:\n llm_model, self.chat_history, self.tools = await self.get_agent_requirements()\n # Set up and run agent\n self.set(\n llm=llm_model,\n tools=self.tools or [],\n chat_history=self.chat_history,\n input_value=self.input_value,\n system_prompt=self.system_prompt,\n )\n agent = self.create_agent_runnable()\n result = await self.run_agent(agent)\n\n # Store result for potential JSON output\n self._agent_result = result\n\n except (ValueError, TypeError, KeyError) as e:\n await logger.aerror(f\"{type(e).__name__}: {e!s}\")\n raise\n except ExceptionWithMessageError as e:\n await logger.aerror(f\"ExceptionWithMessageError occurred: {e}\")\n raise\n # Avoid catching blind Exception; let truly unexpected exceptions propagate\n except Exception as e:\n await logger.aerror(f\"Unexpected error: {e!s}\")\n raise\n else:\n return result\n\n def _preprocess_schema(self, schema):\n \"\"\"Preprocess schema to ensure correct data types for build_model_from_schema.\"\"\"\n processed_schema = []\n for field in schema:\n processed_field = {\n \"name\": str(field.get(\"name\", \"field\")),\n \"type\": str(field.get(\"type\", \"str\")),\n \"description\": str(field.get(\"description\", \"\")),\n \"multiple\": field.get(\"multiple\", False),\n }\n # Ensure multiple is handled correctly\n if isinstance(processed_field[\"multiple\"], str):\n processed_field[\"multiple\"] = processed_field[\"multiple\"].lower() in [\n \"true\",\n \"1\",\n \"t\",\n \"y\",\n \"yes\",\n ]\n processed_schema.append(processed_field)\n return processed_schema\n\n async def build_structured_output_base(self, content: str):\n \"\"\"Build structured output with optional BaseModel validation.\"\"\"\n json_pattern = r\"\\{.*\\}\"\n schema_error_msg = \"Try setting an output schema\"\n\n # Try to parse content as JSON first\n json_data = None\n try:\n json_data = json.loads(content)\n except json.JSONDecodeError:\n json_match = re.search(json_pattern, content, re.DOTALL)\n if json_match:\n try:\n json_data = json.loads(json_match.group())\n except json.JSONDecodeError:\n return {\"content\": content, \"error\": schema_error_msg}\n else:\n return {\"content\": content, \"error\": schema_error_msg}\n\n # If no output schema provided, return parsed JSON without validation\n if not hasattr(self, \"output_schema\") or not self.output_schema or len(self.output_schema) == 0:\n return json_data\n\n # Use BaseModel validation with schema\n try:\n processed_schema = self._preprocess_schema(self.output_schema)\n output_model = build_model_from_schema(processed_schema)\n\n # Validate against the schema\n if isinstance(json_data, list):\n # Multiple objects\n validated_objects = []\n for item in json_data:\n try:\n validated_obj = output_model.model_validate(item)\n validated_objects.append(validated_obj.model_dump())\n except ValidationError as e:\n await logger.aerror(f\"Validation error for item: {e}\")\n # Include invalid items with error info\n validated_objects.append({\"data\": item, \"validation_error\": str(e)})\n return validated_objects\n\n # Single object\n try:\n validated_obj = output_model.model_validate(json_data)\n return [validated_obj.model_dump()] # Return as list for consistency\n except ValidationError as e:\n await logger.aerror(f\"Validation error: {e}\")\n return [{\"data\": json_data, \"validation_error\": str(e)}]\n\n except (TypeError, ValueError) as e:\n await logger.aerror(f\"Error building structured output: {e}\")\n # Fallback to parsed JSON without validation\n return json_data\n\n async def json_response(self) -> Data:\n \"\"\"Convert agent response to structured JSON Data output with schema validation.\"\"\"\n # Always use structured chat agent for JSON response mode for better JSON formatting\n try:\n system_components = []\n\n # 1. Agent Instructions (system_prompt)\n agent_instructions = getattr(self, \"system_prompt\", \"\") or \"\"\n if agent_instructions:\n system_components.append(f\"{agent_instructions}\")\n\n # 2. Format Instructions\n format_instructions = getattr(self, \"format_instructions\", \"\") or \"\"\n if format_instructions:\n system_components.append(f\"Format instructions: {format_instructions}\")\n\n # 3. Schema Information from BaseModel\n if hasattr(self, \"output_schema\") and self.output_schema and len(self.output_schema) > 0:\n try:\n processed_schema = self._preprocess_schema(self.output_schema)\n output_model = build_model_from_schema(processed_schema)\n schema_dict = output_model.model_json_schema()\n schema_info = (\n \"You are given some text that may include format instructions, \"\n \"explanations, or other content alongside a JSON schema.\\n\\n\"\n \"Your task:\\n\"\n \"- Extract only the JSON schema.\\n\"\n \"- Return it as valid JSON.\\n\"\n \"- Do not include format instructions, explanations, or extra text.\\n\\n\"\n \"Input:\\n\"\n f\"{json.dumps(schema_dict, indent=2)}\\n\\n\"\n \"Output (only JSON schema):\"\n )\n system_components.append(schema_info)\n except (ValidationError, ValueError, TypeError, KeyError) as e:\n await logger.aerror(f\"Could not build schema for prompt: {e}\", exc_info=True)\n\n # Combine all components\n combined_instructions = \"\\n\\n\".join(system_components) if system_components else \"\"\n llm_model, self.chat_history, self.tools = await self.get_agent_requirements()\n self.set(\n llm=llm_model,\n tools=self.tools or [],\n chat_history=self.chat_history,\n input_value=self.input_value,\n system_prompt=combined_instructions,\n )\n\n # Create and run structured chat agent\n try:\n structured_agent = self.create_agent_runnable()\n except (NotImplementedError, ValueError, TypeError) as e:\n await logger.aerror(f\"Error with structured chat agent: {e}\")\n raise\n try:\n result = await self.run_agent(structured_agent)\n except (\n ExceptionWithMessageError,\n ValueError,\n TypeError,\n RuntimeError,\n ) as e:\n await logger.aerror(f\"Error with structured agent result: {e}\")\n raise\n # Extract content from structured agent result\n if hasattr(result, \"content\"):\n content = result.content\n elif hasattr(result, \"text\"):\n content = result.text\n else:\n content = str(result)\n\n except (\n ExceptionWithMessageError,\n ValueError,\n TypeError,\n NotImplementedError,\n AttributeError,\n ) as e:\n await logger.aerror(f\"Error with structured chat agent: {e}\")\n # Fallback to regular agent\n content_str = \"No content returned from agent\"\n return Data(data={\"content\": content_str, \"error\": str(e)})\n\n # Process with structured output validation\n try:\n structured_output = await self.build_structured_output_base(content)\n\n # Handle different output formats\n if isinstance(structured_output, list) and structured_output:\n if len(structured_output) == 1:\n return Data(data=structured_output[0])\n return Data(data={\"results\": structured_output})\n if isinstance(structured_output, dict):\n return Data(data=structured_output)\n return Data(data={\"content\": content})\n\n except (ValueError, TypeError) as e:\n await logger.aerror(f\"Error in structured output processing: {e}\")\n return Data(data={\"content\": content, \"error\": str(e)})\n\n async def get_memory_data(self):\n # TODO: This is a temporary fix to avoid message duplication. We should develop a function for this.\n messages = (\n await MemoryComponent(**self.get_base_args())\n .set(\n session_id=self.graph.session_id,\n context_id=self.context_id,\n order=\"Ascending\",\n n_messages=self.n_messages,\n )\n .retrieve_messages()\n )\n return [\n message for message in messages if getattr(message, \"id\", None) != getattr(self.input_value, \"id\", None)\n ]\n\n async def get_llm(self):\n if not isinstance(self.agent_llm, str):\n return self.agent_llm, None\n\n try:\n provider_info = MODEL_PROVIDERS_DICT.get(self.agent_llm)\n if not provider_info:\n msg = f\"Invalid model provider: {self.agent_llm}\"\n raise ValueError(msg)\n\n component_class = provider_info.get(\"component_class\")\n display_name = component_class.display_name\n inputs = provider_info.get(\"inputs\")\n prefix = provider_info.get(\"prefix\", \"\")\n\n return self._build_llm_model(component_class, inputs, prefix), display_name\n\n except (AttributeError, ValueError, TypeError, RuntimeError) as e:\n await logger.aerror(f\"Error building {self.agent_llm} language model: {e!s}\")\n msg = f\"Failed to initialize language model: {e!s}\"\n raise ValueError(msg) from e\n\n def _build_llm_model(self, component, inputs, prefix=\"\"):\n model_kwargs = {}\n for input_ in inputs:\n if hasattr(self, f\"{prefix}{input_.name}\"):\n model_kwargs[input_.name] = getattr(self, f\"{prefix}{input_.name}\")\n return component.set(**model_kwargs).build_model()\n\n def set_component_params(self, component):\n provider_info = MODEL_PROVIDERS_DICT.get(self.agent_llm)\n if provider_info:\n inputs = provider_info.get(\"inputs\")\n prefix = provider_info.get(\"prefix\")\n # Filter out json_mode and only use attributes that exist on this component\n model_kwargs = {}\n for input_ in inputs:\n if hasattr(self, f\"{prefix}{input_.name}\"):\n model_kwargs[input_.name] = getattr(self, f\"{prefix}{input_.name}\")\n\n return component.set(**model_kwargs)\n return component\n\n def delete_fields(self, build_config: dotdict, fields: dict | list[str]) -> None:\n \"\"\"Delete specified fields from build_config.\"\"\"\n for field in fields:\n if build_config is not None and field in build_config:\n build_config.pop(field, None)\n\n def update_input_types(self, build_config: dotdict) -> dotdict:\n \"\"\"Update input types for all fields in build_config.\"\"\"\n for key, value in build_config.items():\n if isinstance(value, dict):\n if value.get(\"input_types\") is None:\n build_config[key][\"input_types\"] = []\n elif hasattr(value, \"input_types\") and value.input_types is None:\n value.input_types = []\n return build_config\n\n async def update_build_config(\n self, build_config: dotdict, field_value: str, field_name: str | None = None\n ) -> dotdict:\n # Iterate over all providers in the MODEL_PROVIDERS_DICT\n # Existing logic for updating build_config\n if field_name in (\"agent_llm\",):\n build_config[\"agent_llm\"][\"value\"] = field_value\n provider_info = MODEL_PROVIDERS_DICT.get(field_value)\n if provider_info:\n component_class = provider_info.get(\"component_class\")\n if component_class and hasattr(component_class, \"update_build_config\"):\n # Call the component class's update_build_config method\n build_config = await update_component_build_config(\n component_class, build_config, field_value, \"model_name\"\n )\n\n provider_configs: dict[str, tuple[dict, list[dict]]] = {\n provider: (\n MODEL_PROVIDERS_DICT[provider][\"fields\"],\n [\n MODEL_PROVIDERS_DICT[other_provider][\"fields\"]\n for other_provider in MODEL_PROVIDERS_DICT\n if other_provider != provider\n ],\n )\n for provider in MODEL_PROVIDERS_DICT\n }\n if field_value in provider_configs:\n fields_to_add, fields_to_delete = provider_configs[field_value]\n\n # Delete fields from other providers\n for fields in fields_to_delete:\n self.delete_fields(build_config, fields)\n\n # Add provider-specific fields\n if field_value == \"OpenAI\" and not any(field in build_config for field in fields_to_add):\n build_config.update(fields_to_add)\n else:\n build_config.update(fields_to_add)\n # Reset input types for agent_llm\n build_config[\"agent_llm\"][\"input_types\"] = []\n build_config[\"agent_llm\"][\"display_name\"] = \"Model Provider\"\n elif field_value == \"connect_other_models\":\n # Delete all provider fields\n self.delete_fields(build_config, ALL_PROVIDER_FIELDS)\n # # Update with custom component\n custom_component = DropdownInput(\n name=\"agent_llm\",\n display_name=\"Language Model\",\n info=\"The provider of the language model that the agent will use to generate responses.\",\n options=[*MODEL_PROVIDERS_LIST],\n real_time_refresh=True,\n refresh_button=False,\n input_types=[\"LanguageModel\"],\n placeholder=\"Awaiting model input.\",\n options_metadata=[MODELS_METADATA[key] for key in MODEL_PROVIDERS_LIST if key in MODELS_METADATA],\n external_options={\n \"fields\": {\n \"data\": {\n \"node\": {\n \"name\": \"connect_other_models\",\n \"display_name\": \"Connect other models\",\n \"icon\": \"CornerDownLeft\",\n },\n }\n },\n },\n )\n build_config.update({\"agent_llm\": custom_component.to_dict()})\n # Update input types for all fields\n build_config = self.update_input_types(build_config)\n\n # Validate required keys\n default_keys = [\n \"code\",\n \"_type\",\n \"agent_llm\",\n \"tools\",\n \"input_value\",\n \"add_current_date_tool\",\n \"system_prompt\",\n \"agent_description\",\n \"max_iterations\",\n \"handle_parsing_errors\",\n \"verbose\",\n ]\n missing_keys = [key for key in default_keys if key not in build_config]\n if missing_keys:\n msg = f\"Missing required keys in build_config: {missing_keys}\"\n raise ValueError(msg)\n if (\n isinstance(self.agent_llm, str)\n and self.agent_llm in MODEL_PROVIDERS_DICT\n and field_name in MODEL_DYNAMIC_UPDATE_FIELDS\n ):\n provider_info = MODEL_PROVIDERS_DICT.get(self.agent_llm)\n if provider_info:\n component_class = provider_info.get(\"component_class\")\n component_class = self.set_component_params(component_class)\n prefix = provider_info.get(\"prefix\")\n if component_class and hasattr(component_class, \"update_build_config\"):\n # Call each component class's update_build_config method\n # remove the prefix from the field_name\n if isinstance(field_name, str) and isinstance(prefix, str):\n field_name_without_prefix = field_name.replace(prefix, \"\")\n else:\n field_name_without_prefix = field_name\n build_config = await update_component_build_config(\n component_class, build_config, field_value, field_name_without_prefix\n )\n return dotdict({k: v.to_dict() if hasattr(v, \"to_dict\") else v for k, v in build_config.items()})\n\n async def _get_tools(self) -> list[Tool]:\n component_toolkit = get_component_toolkit()\n tools_names = self._build_tools_names()\n agent_description = self.get_tool_description()\n # TODO: Agent Description Depreciated Feature to be removed\n description = f\"{agent_description}{tools_names}\"\n\n tools = component_toolkit(component=self).get_tools(\n tool_name=\"Call_Agent\",\n tool_description=description,\n # here we do not use the shared callbacks as we are exposing the agent as a tool\n callbacks=self.get_langchain_callbacks(),\n )\n if hasattr(self, \"tools_metadata\"):\n tools = component_toolkit(component=self, metadata=self.tools_metadata).update_tools_metadata(tools=tools)\n\n return tools\n"
|
|
1745
1752
|
},
|
|
1746
1753
|
"context_id": {
|
|
1747
1754
|
"_input_type": "MessageTextInput",
|
|
@@ -1859,6 +1866,7 @@
|
|
|
1859
1866
|
"list": false,
|
|
1860
1867
|
"list_add_label": "Add More",
|
|
1861
1868
|
"name": "max_output_tokens",
|
|
1869
|
+
"override_skip": false,
|
|
1862
1870
|
"placeholder": "",
|
|
1863
1871
|
"required": false,
|
|
1864
1872
|
"show": false,
|
|
@@ -1878,12 +1886,14 @@
|
|
|
1878
1886
|
"list": false,
|
|
1879
1887
|
"list_add_label": "Add More",
|
|
1880
1888
|
"name": "max_retries",
|
|
1889
|
+
"override_skip": false,
|
|
1881
1890
|
"placeholder": "",
|
|
1882
1891
|
"required": false,
|
|
1883
1892
|
"show": true,
|
|
1884
1893
|
"title_case": false,
|
|
1885
1894
|
"tool_mode": false,
|
|
1886
1895
|
"trace_as_metadata": true,
|
|
1896
|
+
"track_in_telemetry": true,
|
|
1887
1897
|
"type": "int",
|
|
1888
1898
|
"value": 5
|
|
1889
1899
|
},
|
|
@@ -1896,10 +1906,11 @@
|
|
|
1896
1906
|
"list": false,
|
|
1897
1907
|
"list_add_label": "Add More",
|
|
1898
1908
|
"name": "max_tokens",
|
|
1909
|
+
"override_skip": false,
|
|
1899
1910
|
"placeholder": "",
|
|
1900
1911
|
"range_spec": {
|
|
1901
|
-
"max": 128000,
|
|
1902
|
-
"min": 0,
|
|
1912
|
+
"max": 128000.0,
|
|
1913
|
+
"min": 0.0,
|
|
1903
1914
|
"step": 0.1,
|
|
1904
1915
|
"step_type": "float"
|
|
1905
1916
|
},
|
|
@@ -1908,6 +1919,7 @@
|
|
|
1908
1919
|
"title_case": false,
|
|
1909
1920
|
"tool_mode": false,
|
|
1910
1921
|
"trace_as_metadata": true,
|
|
1922
|
+
"track_in_telemetry": true,
|
|
1911
1923
|
"type": "int",
|
|
1912
1924
|
"value": ""
|
|
1913
1925
|
},
|
|
@@ -1920,12 +1932,14 @@
|
|
|
1920
1932
|
"list": false,
|
|
1921
1933
|
"list_add_label": "Add More",
|
|
1922
1934
|
"name": "model_kwargs",
|
|
1935
|
+
"override_skip": false,
|
|
1923
1936
|
"placeholder": "",
|
|
1924
1937
|
"required": false,
|
|
1925
1938
|
"show": true,
|
|
1926
1939
|
"title_case": false,
|
|
1927
1940
|
"tool_mode": false,
|
|
1928
1941
|
"trace_as_input": true,
|
|
1942
|
+
"track_in_telemetry": false,
|
|
1929
1943
|
"type": "dict",
|
|
1930
1944
|
"value": {}
|
|
1931
1945
|
},
|
|
@@ -1936,6 +1950,7 @@
|
|
|
1936
1950
|
"dialog_inputs": {},
|
|
1937
1951
|
"display_name": "Model Name",
|
|
1938
1952
|
"dynamic": false,
|
|
1953
|
+
"external_options": {},
|
|
1939
1954
|
"info": "To see the model names, first choose a provider. Then, enter your API key and click the refresh button next to the model name.",
|
|
1940
1955
|
"name": "model_name",
|
|
1941
1956
|
"options": [
|
|
@@ -1961,6 +1976,7 @@
|
|
|
1961
1976
|
"o4-mini-high"
|
|
1962
1977
|
],
|
|
1963
1978
|
"options_metadata": [],
|
|
1979
|
+
"override_skip": false,
|
|
1964
1980
|
"placeholder": "",
|
|
1965
1981
|
"real_time_refresh": false,
|
|
1966
1982
|
"required": false,
|
|
@@ -1969,8 +1985,9 @@
|
|
|
1969
1985
|
"toggle": false,
|
|
1970
1986
|
"tool_mode": false,
|
|
1971
1987
|
"trace_as_metadata": true,
|
|
1988
|
+
"track_in_telemetry": true,
|
|
1972
1989
|
"type": "str",
|
|
1973
|
-
"value": "gpt-4o"
|
|
1990
|
+
"value": "gpt-4o-mini"
|
|
1974
1991
|
},
|
|
1975
1992
|
"n_messages": {
|
|
1976
1993
|
"_input_type": "IntInput",
|
|
@@ -2000,12 +2017,14 @@
|
|
|
2000
2017
|
"list_add_label": "Add More",
|
|
2001
2018
|
"load_from_db": false,
|
|
2002
2019
|
"name": "openai_api_base",
|
|
2020
|
+
"override_skip": false,
|
|
2003
2021
|
"placeholder": "",
|
|
2004
2022
|
"required": false,
|
|
2005
2023
|
"show": true,
|
|
2006
2024
|
"title_case": false,
|
|
2007
2025
|
"tool_mode": false,
|
|
2008
2026
|
"trace_as_metadata": true,
|
|
2027
|
+
"track_in_telemetry": false,
|
|
2009
2028
|
"type": "str",
|
|
2010
2029
|
"value": ""
|
|
2011
2030
|
},
|
|
@@ -2081,6 +2100,7 @@
|
|
|
2081
2100
|
"list_add_label": "Add More",
|
|
2082
2101
|
"load_from_db": false,
|
|
2083
2102
|
"name": "project_id",
|
|
2103
|
+
"override_skip": false,
|
|
2084
2104
|
"placeholder": "",
|
|
2085
2105
|
"required": true,
|
|
2086
2106
|
"show": false,
|
|
@@ -2100,12 +2120,14 @@
|
|
|
2100
2120
|
"list": false,
|
|
2101
2121
|
"list_add_label": "Add More",
|
|
2102
2122
|
"name": "seed",
|
|
2123
|
+
"override_skip": false,
|
|
2103
2124
|
"placeholder": "",
|
|
2104
2125
|
"required": false,
|
|
2105
2126
|
"show": true,
|
|
2106
2127
|
"title_case": false,
|
|
2107
2128
|
"tool_mode": false,
|
|
2108
2129
|
"trace_as_metadata": true,
|
|
2130
|
+
"track_in_telemetry": true,
|
|
2109
2131
|
"type": "int",
|
|
2110
2132
|
"value": 1
|
|
2111
2133
|
},
|
|
@@ -2145,10 +2167,11 @@
|
|
|
2145
2167
|
"min_label": "",
|
|
2146
2168
|
"min_label_icon": "",
|
|
2147
2169
|
"name": "temperature",
|
|
2170
|
+
"override_skip": false,
|
|
2148
2171
|
"placeholder": "",
|
|
2149
2172
|
"range_spec": {
|
|
2150
|
-
"max": 1,
|
|
2151
|
-
"min": 0,
|
|
2173
|
+
"max": 1.0,
|
|
2174
|
+
"min": 0.0,
|
|
2152
2175
|
"step": 0.01,
|
|
2153
2176
|
"step_type": "float"
|
|
2154
2177
|
},
|
|
@@ -2159,6 +2182,7 @@
|
|
|
2159
2182
|
"slider_input": false,
|
|
2160
2183
|
"title_case": false,
|
|
2161
2184
|
"tool_mode": false,
|
|
2185
|
+
"track_in_telemetry": false,
|
|
2162
2186
|
"type": "slider",
|
|
2163
2187
|
"value": 0.1
|
|
2164
2188
|
},
|
|
@@ -2171,12 +2195,14 @@
|
|
|
2171
2195
|
"list": false,
|
|
2172
2196
|
"list_add_label": "Add More",
|
|
2173
2197
|
"name": "timeout",
|
|
2198
|
+
"override_skip": false,
|
|
2174
2199
|
"placeholder": "",
|
|
2175
2200
|
"required": false,
|
|
2176
2201
|
"show": true,
|
|
2177
2202
|
"title_case": false,
|
|
2178
2203
|
"tool_mode": false,
|
|
2179
2204
|
"trace_as_metadata": true,
|
|
2205
|
+
"track_in_telemetry": true,
|
|
2180
2206
|
"type": "int",
|
|
2181
2207
|
"value": 700
|
|
2182
2208
|
},
|
|
@@ -2559,11 +2585,13 @@
|
|
|
2559
2585
|
"list": false,
|
|
2560
2586
|
"list_add_label": "Add More",
|
|
2561
2587
|
"name": "llm",
|
|
2588
|
+
"override_skip": false,
|
|
2562
2589
|
"placeholder": "",
|
|
2563
2590
|
"required": true,
|
|
2564
2591
|
"show": true,
|
|
2565
2592
|
"title_case": false,
|
|
2566
2593
|
"trace_as_metadata": true,
|
|
2594
|
+
"track_in_telemetry": false,
|
|
2567
2595
|
"type": "other",
|
|
2568
2596
|
"value": ""
|
|
2569
2597
|
},
|
|
@@ -639,7 +639,7 @@
|
|
|
639
639
|
"legacy": false,
|
|
640
640
|
"lf_version": "1.1.5",
|
|
641
641
|
"metadata": {
|
|
642
|
-
"code_hash": "
|
|
642
|
+
"code_hash": "8c87e536cca4",
|
|
643
643
|
"dependencies": {
|
|
644
644
|
"dependencies": [
|
|
645
645
|
{
|
|
@@ -648,7 +648,7 @@
|
|
|
648
648
|
},
|
|
649
649
|
{
|
|
650
650
|
"name": "fastapi",
|
|
651
|
-
"version": "0.
|
|
651
|
+
"version": "0.123.0"
|
|
652
652
|
},
|
|
653
653
|
{
|
|
654
654
|
"name": "lfx",
|
|
@@ -715,7 +715,7 @@
|
|
|
715
715
|
"show": true,
|
|
716
716
|
"title_case": false,
|
|
717
717
|
"type": "code",
|
|
718
|
-
"value": "from collections.abc import Generator\nfrom typing import Any\n\nimport orjson\nfrom fastapi.encoders import jsonable_encoder\n\nfrom lfx.base.io.chat import ChatComponent\nfrom lfx.helpers.data import safe_convert\nfrom lfx.inputs.inputs import BoolInput, DropdownInput, HandleInput, MessageTextInput\nfrom lfx.schema.data import Data\nfrom lfx.schema.dataframe import DataFrame\nfrom lfx.schema.message import Message\nfrom lfx.schema.properties import Source\nfrom lfx.template.field.base import Output\nfrom lfx.utils.constants import (\n MESSAGE_SENDER_AI,\n MESSAGE_SENDER_NAME_AI,\n MESSAGE_SENDER_USER,\n)\n\n\nclass ChatOutput(ChatComponent):\n display_name = \"Chat Output\"\n description = \"Display a chat message in the Playground.\"\n documentation: str = \"https://docs.langflow.org/chat-input-and-output\"\n icon = \"MessagesSquare\"\n name = \"ChatOutput\"\n minimized = True\n\n inputs = [\n HandleInput(\n name=\"input_value\",\n display_name=\"Inputs\",\n info=\"Message to be passed as output.\",\n input_types=[\"Data\", \"DataFrame\", \"Message\"],\n required=True,\n ),\n BoolInput(\n name=\"should_store_message\",\n display_name=\"Store Messages\",\n info=\"Store the message in the history.\",\n value=True,\n advanced=True,\n ),\n DropdownInput(\n name=\"sender\",\n display_name=\"Sender Type\",\n options=[MESSAGE_SENDER_AI, MESSAGE_SENDER_USER],\n value=MESSAGE_SENDER_AI,\n advanced=True,\n info=\"Type of sender.\",\n ),\n MessageTextInput(\n name=\"sender_name\",\n display_name=\"Sender Name\",\n info=\"Name of the sender.\",\n value=MESSAGE_SENDER_NAME_AI,\n advanced=True,\n ),\n MessageTextInput(\n name=\"session_id\",\n display_name=\"Session ID\",\n info=\"The session ID of the chat. If empty, the current session ID parameter will be used.\",\n advanced=True,\n ),\n MessageTextInput(\n name=\"context_id\",\n display_name=\"Context ID\",\n info=\"The context ID of the chat. Adds an extra layer to the local memory.\",\n value=\"\",\n advanced=True,\n ),\n MessageTextInput(\n name=\"data_template\",\n display_name=\"Data Template\",\n value=\"{text}\",\n advanced=True,\n info=\"Template to convert Data to Text. If left empty, it will be dynamically set to the Data's text key.\",\n ),\n BoolInput(\n name=\"clean_data\",\n display_name=\"Basic Clean Data\",\n value=True,\n advanced=True,\n info=\"Whether to clean data before converting to string.\",\n ),\n ]\n outputs = [\n Output(\n display_name=\"Output Message\",\n name=\"message\",\n method=\"message_response\",\n ),\n ]\n\n def _build_source(self, id_: str | None, display_name: str | None, source: str | None) -> Source:\n source_dict = {}\n if id_:\n source_dict[\"id\"] = id_\n if display_name:\n source_dict[\"display_name\"] = display_name\n if source:\n # Handle case where source is a ChatOpenAI object\n if hasattr(source, \"model_name\"):\n source_dict[\"source\"] = source.model_name\n elif hasattr(source, \"model\"):\n source_dict[\"source\"] = str(source.model)\n else:\n source_dict[\"source\"] = str(source)\n return Source(**source_dict)\n\n async def message_response(self) -> Message:\n # First convert the input to string if needed\n text = self.convert_to_string()\n\n # Get source properties\n source, _, display_name, source_id = self.get_properties_from_source_component()\n\n # Create or use existing Message object\n if isinstance(self.input_value, Message) and not self.is_connected_to_chat_input():\n message = self.input_value\n # Update message properties\n message.text = text\n else:\n message = Message(text=text)\n\n # Set message properties\n message.sender = self.sender\n message.sender_name = self.sender_name\n message.session_id = self.session_id or self.graph.session_id or \"\"\n message.context_id = self.context_id\n message.flow_id = self.graph.flow_id if hasattr(self, \"graph\") else None\n message.properties.source = self._build_source(source_id, display_name, source)\n\n # Store message if needed\n if message.session_id and self.should_store_message:\n stored_message = await self.send_message(message)\n self.message.value = stored_message\n message = stored_message\n\n self.status = message\n return message\n\n def _serialize_data(self, data: Data) -> str:\n \"\"\"Serialize Data object to JSON string.\"\"\"\n # Convert data.data to JSON-serializable format\n serializable_data = jsonable_encoder(data.data)\n # Serialize with orjson, enabling pretty printing with indentation\n json_bytes = orjson.dumps(serializable_data, option=orjson.OPT_INDENT_2)\n # Convert bytes to string and wrap in Markdown code blocks\n return \"```json\\n\" + json_bytes.decode(\"utf-8\") + \"\\n```\"\n\n def _validate_input(self) -> None:\n \"\"\"Validate the input data and raise ValueError if invalid.\"\"\"\n if self.input_value is None:\n msg = \"Input data cannot be None\"\n raise ValueError(msg)\n if isinstance(self.input_value, list) and not all(\n isinstance(item, Message | Data | DataFrame | str) for item in self.input_value\n ):\n invalid_types = [\n type(item).__name__\n for item in self.input_value\n if not isinstance(item, Message | Data | DataFrame | str)\n ]\n msg = f\"Expected Data or DataFrame or Message or str, got {invalid_types}\"\n raise TypeError(msg)\n if not isinstance(\n self.input_value,\n Message | Data | DataFrame | str | list | Generator | type(None),\n ):\n type_name = type(self.input_value).__name__\n msg = f\"Expected Data or DataFrame or Message or str, Generator or None, got {type_name}\"\n raise TypeError(msg)\n\n def convert_to_string(self) -> str | Generator[Any, None, None]:\n \"\"\"Convert input data to string with proper error handling.\"\"\"\n self._validate_input()\n if isinstance(self.input_value, list):\n clean_data: bool = getattr(self, \"clean_data\", False)\n return \"\\n\".join([safe_convert(item, clean_data=clean_data) for item in self.input_value])\n if isinstance(self.input_value, Generator):\n return self.input_value\n return safe_convert(self.input_value)\n"
|
|
718
|
+
"value": "from collections.abc import Generator\nfrom typing import Any\n\nimport orjson\nfrom fastapi.encoders import jsonable_encoder\n\nfrom lfx.base.io.chat import ChatComponent\nfrom lfx.helpers.data import safe_convert\nfrom lfx.inputs.inputs import BoolInput, DropdownInput, HandleInput, MessageTextInput\nfrom lfx.schema.data import Data\nfrom lfx.schema.dataframe import DataFrame\nfrom lfx.schema.message import Message\nfrom lfx.schema.properties import Source\nfrom lfx.template.field.base import Output\nfrom lfx.utils.constants import (\n MESSAGE_SENDER_AI,\n MESSAGE_SENDER_NAME_AI,\n MESSAGE_SENDER_USER,\n)\n\n\nclass ChatOutput(ChatComponent):\n display_name = \"Chat Output\"\n description = \"Display a chat message in the Playground.\"\n documentation: str = \"https://docs.langflow.org/chat-input-and-output\"\n icon = \"MessagesSquare\"\n name = \"ChatOutput\"\n minimized = True\n\n inputs = [\n HandleInput(\n name=\"input_value\",\n display_name=\"Inputs\",\n info=\"Message to be passed as output.\",\n input_types=[\"Data\", \"DataFrame\", \"Message\"],\n required=True,\n ),\n BoolInput(\n name=\"should_store_message\",\n display_name=\"Store Messages\",\n info=\"Store the message in the history.\",\n value=True,\n advanced=True,\n ),\n DropdownInput(\n name=\"sender\",\n display_name=\"Sender Type\",\n options=[MESSAGE_SENDER_AI, MESSAGE_SENDER_USER],\n value=MESSAGE_SENDER_AI,\n advanced=True,\n info=\"Type of sender.\",\n ),\n MessageTextInput(\n name=\"sender_name\",\n display_name=\"Sender Name\",\n info=\"Name of the sender.\",\n value=MESSAGE_SENDER_NAME_AI,\n advanced=True,\n ),\n MessageTextInput(\n name=\"session_id\",\n display_name=\"Session ID\",\n info=\"The session ID of the chat. If empty, the current session ID parameter will be used.\",\n advanced=True,\n ),\n MessageTextInput(\n name=\"context_id\",\n display_name=\"Context ID\",\n info=\"The context ID of the chat. Adds an extra layer to the local memory.\",\n value=\"\",\n advanced=True,\n ),\n MessageTextInput(\n name=\"data_template\",\n display_name=\"Data Template\",\n value=\"{text}\",\n advanced=True,\n info=\"Template to convert Data to Text. If left empty, it will be dynamically set to the Data's text key.\",\n ),\n BoolInput(\n name=\"clean_data\",\n display_name=\"Basic Clean Data\",\n value=True,\n advanced=True,\n info=\"Whether to clean data before converting to string.\",\n ),\n ]\n outputs = [\n Output(\n display_name=\"Output Message\",\n name=\"message\",\n method=\"message_response\",\n ),\n ]\n\n def _build_source(self, id_: str | None, display_name: str | None, source: str | None) -> Source:\n source_dict = {}\n if id_:\n source_dict[\"id\"] = id_\n if display_name:\n source_dict[\"display_name\"] = display_name\n if source:\n # Handle case where source is a ChatOpenAI object\n if hasattr(source, \"model_name\"):\n source_dict[\"source\"] = source.model_name\n elif hasattr(source, \"model\"):\n source_dict[\"source\"] = str(source.model)\n else:\n source_dict[\"source\"] = str(source)\n return Source(**source_dict)\n\n async def message_response(self) -> Message:\n # First convert the input to string if needed\n text = self.convert_to_string()\n\n # Get source properties\n source, _, display_name, source_id = self.get_properties_from_source_component()\n\n # Create or use existing Message object\n if isinstance(self.input_value, Message) and not self.is_connected_to_chat_input():\n message = self.input_value\n # Update message properties\n message.text = text\n # Preserve existing session_id from the incoming message if it exists\n existing_session_id = message.session_id\n else:\n message = Message(text=text)\n existing_session_id = None\n\n # Set message properties\n message.sender = self.sender\n message.sender_name = self.sender_name\n # Preserve session_id from incoming message, or use component/graph session_id\n message.session_id = (\n self.session_id or existing_session_id or (self.graph.session_id if hasattr(self, \"graph\") else None) or \"\"\n )\n message.context_id = self.context_id\n message.flow_id = self.graph.flow_id if hasattr(self, \"graph\") else None\n message.properties.source = self._build_source(source_id, display_name, source)\n\n # Store message if needed\n if message.session_id and self.should_store_message:\n stored_message = await self.send_message(message)\n self.message.value = stored_message\n message = stored_message\n\n self.status = message\n return message\n\n def _serialize_data(self, data: Data) -> str:\n \"\"\"Serialize Data object to JSON string.\"\"\"\n # Convert data.data to JSON-serializable format\n serializable_data = jsonable_encoder(data.data)\n # Serialize with orjson, enabling pretty printing with indentation\n json_bytes = orjson.dumps(serializable_data, option=orjson.OPT_INDENT_2)\n # Convert bytes to string and wrap in Markdown code blocks\n return \"```json\\n\" + json_bytes.decode(\"utf-8\") + \"\\n```\"\n\n def _validate_input(self) -> None:\n \"\"\"Validate the input data and raise ValueError if invalid.\"\"\"\n if self.input_value is None:\n msg = \"Input data cannot be None\"\n raise ValueError(msg)\n if isinstance(self.input_value, list) and not all(\n isinstance(item, Message | Data | DataFrame | str) for item in self.input_value\n ):\n invalid_types = [\n type(item).__name__\n for item in self.input_value\n if not isinstance(item, Message | Data | DataFrame | str)\n ]\n msg = f\"Expected Data or DataFrame or Message or str, got {invalid_types}\"\n raise TypeError(msg)\n if not isinstance(\n self.input_value,\n Message | Data | DataFrame | str | list | Generator | type(None),\n ):\n type_name = type(self.input_value).__name__\n msg = f\"Expected Data or DataFrame or Message or str, Generator or None, got {type_name}\"\n raise TypeError(msg)\n\n def convert_to_string(self) -> str | Generator[Any, None, None]:\n \"\"\"Convert input data to string with proper error handling.\"\"\"\n self._validate_input()\n if isinstance(self.input_value, list):\n clean_data: bool = getattr(self, \"clean_data\", False)\n return \"\\n\".join([safe_convert(item, clean_data=clean_data) for item in self.input_value])\n if isinstance(self.input_value, Generator):\n return self.input_value\n return safe_convert(self.input_value)\n"
|
|
719
719
|
},
|
|
720
720
|
"context_id": {
|
|
721
721
|
"_input_type": "MessageTextInput",
|
|
@@ -918,7 +918,7 @@
|
|
|
918
918
|
"legacy": false,
|
|
919
919
|
"lf_version": "1.1.1",
|
|
920
920
|
"metadata": {
|
|
921
|
-
"code_hash": "
|
|
921
|
+
"code_hash": "8c87e536cca4",
|
|
922
922
|
"dependencies": {
|
|
923
923
|
"dependencies": [
|
|
924
924
|
{
|
|
@@ -927,7 +927,7 @@
|
|
|
927
927
|
},
|
|
928
928
|
{
|
|
929
929
|
"name": "fastapi",
|
|
930
|
-
"version": "0.
|
|
930
|
+
"version": "0.123.0"
|
|
931
931
|
},
|
|
932
932
|
{
|
|
933
933
|
"name": "lfx",
|
|
@@ -994,7 +994,7 @@
|
|
|
994
994
|
"show": true,
|
|
995
995
|
"title_case": false,
|
|
996
996
|
"type": "code",
|
|
997
|
-
"value": "from collections.abc import Generator\nfrom typing import Any\n\nimport orjson\nfrom fastapi.encoders import jsonable_encoder\n\nfrom lfx.base.io.chat import ChatComponent\nfrom lfx.helpers.data import safe_convert\nfrom lfx.inputs.inputs import BoolInput, DropdownInput, HandleInput, MessageTextInput\nfrom lfx.schema.data import Data\nfrom lfx.schema.dataframe import DataFrame\nfrom lfx.schema.message import Message\nfrom lfx.schema.properties import Source\nfrom lfx.template.field.base import Output\nfrom lfx.utils.constants import (\n MESSAGE_SENDER_AI,\n MESSAGE_SENDER_NAME_AI,\n MESSAGE_SENDER_USER,\n)\n\n\nclass ChatOutput(ChatComponent):\n display_name = \"Chat Output\"\n description = \"Display a chat message in the Playground.\"\n documentation: str = \"https://docs.langflow.org/chat-input-and-output\"\n icon = \"MessagesSquare\"\n name = \"ChatOutput\"\n minimized = True\n\n inputs = [\n HandleInput(\n name=\"input_value\",\n display_name=\"Inputs\",\n info=\"Message to be passed as output.\",\n input_types=[\"Data\", \"DataFrame\", \"Message\"],\n required=True,\n ),\n BoolInput(\n name=\"should_store_message\",\n display_name=\"Store Messages\",\n info=\"Store the message in the history.\",\n value=True,\n advanced=True,\n ),\n DropdownInput(\n name=\"sender\",\n display_name=\"Sender Type\",\n options=[MESSAGE_SENDER_AI, MESSAGE_SENDER_USER],\n value=MESSAGE_SENDER_AI,\n advanced=True,\n info=\"Type of sender.\",\n ),\n MessageTextInput(\n name=\"sender_name\",\n display_name=\"Sender Name\",\n info=\"Name of the sender.\",\n value=MESSAGE_SENDER_NAME_AI,\n advanced=True,\n ),\n MessageTextInput(\n name=\"session_id\",\n display_name=\"Session ID\",\n info=\"The session ID of the chat. If empty, the current session ID parameter will be used.\",\n advanced=True,\n ),\n MessageTextInput(\n name=\"context_id\",\n display_name=\"Context ID\",\n info=\"The context ID of the chat. Adds an extra layer to the local memory.\",\n value=\"\",\n advanced=True,\n ),\n MessageTextInput(\n name=\"data_template\",\n display_name=\"Data Template\",\n value=\"{text}\",\n advanced=True,\n info=\"Template to convert Data to Text. If left empty, it will be dynamically set to the Data's text key.\",\n ),\n BoolInput(\n name=\"clean_data\",\n display_name=\"Basic Clean Data\",\n value=True,\n advanced=True,\n info=\"Whether to clean data before converting to string.\",\n ),\n ]\n outputs = [\n Output(\n display_name=\"Output Message\",\n name=\"message\",\n method=\"message_response\",\n ),\n ]\n\n def _build_source(self, id_: str | None, display_name: str | None, source: str | None) -> Source:\n source_dict = {}\n if id_:\n source_dict[\"id\"] = id_\n if display_name:\n source_dict[\"display_name\"] = display_name\n if source:\n # Handle case where source is a ChatOpenAI object\n if hasattr(source, \"model_name\"):\n source_dict[\"source\"] = source.model_name\n elif hasattr(source, \"model\"):\n source_dict[\"source\"] = str(source.model)\n else:\n source_dict[\"source\"] = str(source)\n return Source(**source_dict)\n\n async def message_response(self) -> Message:\n # First convert the input to string if needed\n text = self.convert_to_string()\n\n # Get source properties\n source, _, display_name, source_id = self.get_properties_from_source_component()\n\n # Create or use existing Message object\n if isinstance(self.input_value, Message) and not self.is_connected_to_chat_input():\n message = self.input_value\n # Update message properties\n message.text = text\n else:\n message = Message(text=text)\n\n # Set message properties\n message.sender = self.sender\n message.sender_name = self.sender_name\n message.session_id = self.session_id or self.graph.session_id or \"\"\n message.context_id = self.context_id\n message.flow_id = self.graph.flow_id if hasattr(self, \"graph\") else None\n message.properties.source = self._build_source(source_id, display_name, source)\n\n # Store message if needed\n if message.session_id and self.should_store_message:\n stored_message = await self.send_message(message)\n self.message.value = stored_message\n message = stored_message\n\n self.status = message\n return message\n\n def _serialize_data(self, data: Data) -> str:\n \"\"\"Serialize Data object to JSON string.\"\"\"\n # Convert data.data to JSON-serializable format\n serializable_data = jsonable_encoder(data.data)\n # Serialize with orjson, enabling pretty printing with indentation\n json_bytes = orjson.dumps(serializable_data, option=orjson.OPT_INDENT_2)\n # Convert bytes to string and wrap in Markdown code blocks\n return \"```json\\n\" + json_bytes.decode(\"utf-8\") + \"\\n```\"\n\n def _validate_input(self) -> None:\n \"\"\"Validate the input data and raise ValueError if invalid.\"\"\"\n if self.input_value is None:\n msg = \"Input data cannot be None\"\n raise ValueError(msg)\n if isinstance(self.input_value, list) and not all(\n isinstance(item, Message | Data | DataFrame | str) for item in self.input_value\n ):\n invalid_types = [\n type(item).__name__\n for item in self.input_value\n if not isinstance(item, Message | Data | DataFrame | str)\n ]\n msg = f\"Expected Data or DataFrame or Message or str, got {invalid_types}\"\n raise TypeError(msg)\n if not isinstance(\n self.input_value,\n Message | Data | DataFrame | str | list | Generator | type(None),\n ):\n type_name = type(self.input_value).__name__\n msg = f\"Expected Data or DataFrame or Message or str, Generator or None, got {type_name}\"\n raise TypeError(msg)\n\n def convert_to_string(self) -> str | Generator[Any, None, None]:\n \"\"\"Convert input data to string with proper error handling.\"\"\"\n self._validate_input()\n if isinstance(self.input_value, list):\n clean_data: bool = getattr(self, \"clean_data\", False)\n return \"\\n\".join([safe_convert(item, clean_data=clean_data) for item in self.input_value])\n if isinstance(self.input_value, Generator):\n return self.input_value\n return safe_convert(self.input_value)\n"
|
|
997
|
+
"value": "from collections.abc import Generator\nfrom typing import Any\n\nimport orjson\nfrom fastapi.encoders import jsonable_encoder\n\nfrom lfx.base.io.chat import ChatComponent\nfrom lfx.helpers.data import safe_convert\nfrom lfx.inputs.inputs import BoolInput, DropdownInput, HandleInput, MessageTextInput\nfrom lfx.schema.data import Data\nfrom lfx.schema.dataframe import DataFrame\nfrom lfx.schema.message import Message\nfrom lfx.schema.properties import Source\nfrom lfx.template.field.base import Output\nfrom lfx.utils.constants import (\n MESSAGE_SENDER_AI,\n MESSAGE_SENDER_NAME_AI,\n MESSAGE_SENDER_USER,\n)\n\n\nclass ChatOutput(ChatComponent):\n display_name = \"Chat Output\"\n description = \"Display a chat message in the Playground.\"\n documentation: str = \"https://docs.langflow.org/chat-input-and-output\"\n icon = \"MessagesSquare\"\n name = \"ChatOutput\"\n minimized = True\n\n inputs = [\n HandleInput(\n name=\"input_value\",\n display_name=\"Inputs\",\n info=\"Message to be passed as output.\",\n input_types=[\"Data\", \"DataFrame\", \"Message\"],\n required=True,\n ),\n BoolInput(\n name=\"should_store_message\",\n display_name=\"Store Messages\",\n info=\"Store the message in the history.\",\n value=True,\n advanced=True,\n ),\n DropdownInput(\n name=\"sender\",\n display_name=\"Sender Type\",\n options=[MESSAGE_SENDER_AI, MESSAGE_SENDER_USER],\n value=MESSAGE_SENDER_AI,\n advanced=True,\n info=\"Type of sender.\",\n ),\n MessageTextInput(\n name=\"sender_name\",\n display_name=\"Sender Name\",\n info=\"Name of the sender.\",\n value=MESSAGE_SENDER_NAME_AI,\n advanced=True,\n ),\n MessageTextInput(\n name=\"session_id\",\n display_name=\"Session ID\",\n info=\"The session ID of the chat. If empty, the current session ID parameter will be used.\",\n advanced=True,\n ),\n MessageTextInput(\n name=\"context_id\",\n display_name=\"Context ID\",\n info=\"The context ID of the chat. Adds an extra layer to the local memory.\",\n value=\"\",\n advanced=True,\n ),\n MessageTextInput(\n name=\"data_template\",\n display_name=\"Data Template\",\n value=\"{text}\",\n advanced=True,\n info=\"Template to convert Data to Text. If left empty, it will be dynamically set to the Data's text key.\",\n ),\n BoolInput(\n name=\"clean_data\",\n display_name=\"Basic Clean Data\",\n value=True,\n advanced=True,\n info=\"Whether to clean data before converting to string.\",\n ),\n ]\n outputs = [\n Output(\n display_name=\"Output Message\",\n name=\"message\",\n method=\"message_response\",\n ),\n ]\n\n def _build_source(self, id_: str | None, display_name: str | None, source: str | None) -> Source:\n source_dict = {}\n if id_:\n source_dict[\"id\"] = id_\n if display_name:\n source_dict[\"display_name\"] = display_name\n if source:\n # Handle case where source is a ChatOpenAI object\n if hasattr(source, \"model_name\"):\n source_dict[\"source\"] = source.model_name\n elif hasattr(source, \"model\"):\n source_dict[\"source\"] = str(source.model)\n else:\n source_dict[\"source\"] = str(source)\n return Source(**source_dict)\n\n async def message_response(self) -> Message:\n # First convert the input to string if needed\n text = self.convert_to_string()\n\n # Get source properties\n source, _, display_name, source_id = self.get_properties_from_source_component()\n\n # Create or use existing Message object\n if isinstance(self.input_value, Message) and not self.is_connected_to_chat_input():\n message = self.input_value\n # Update message properties\n message.text = text\n # Preserve existing session_id from the incoming message if it exists\n existing_session_id = message.session_id\n else:\n message = Message(text=text)\n existing_session_id = None\n\n # Set message properties\n message.sender = self.sender\n message.sender_name = self.sender_name\n # Preserve session_id from incoming message, or use component/graph session_id\n message.session_id = (\n self.session_id or existing_session_id or (self.graph.session_id if hasattr(self, \"graph\") else None) or \"\"\n )\n message.context_id = self.context_id\n message.flow_id = self.graph.flow_id if hasattr(self, \"graph\") else None\n message.properties.source = self._build_source(source_id, display_name, source)\n\n # Store message if needed\n if message.session_id and self.should_store_message:\n stored_message = await self.send_message(message)\n self.message.value = stored_message\n message = stored_message\n\n self.status = message\n return message\n\n def _serialize_data(self, data: Data) -> str:\n \"\"\"Serialize Data object to JSON string.\"\"\"\n # Convert data.data to JSON-serializable format\n serializable_data = jsonable_encoder(data.data)\n # Serialize with orjson, enabling pretty printing with indentation\n json_bytes = orjson.dumps(serializable_data, option=orjson.OPT_INDENT_2)\n # Convert bytes to string and wrap in Markdown code blocks\n return \"```json\\n\" + json_bytes.decode(\"utf-8\") + \"\\n```\"\n\n def _validate_input(self) -> None:\n \"\"\"Validate the input data and raise ValueError if invalid.\"\"\"\n if self.input_value is None:\n msg = \"Input data cannot be None\"\n raise ValueError(msg)\n if isinstance(self.input_value, list) and not all(\n isinstance(item, Message | Data | DataFrame | str) for item in self.input_value\n ):\n invalid_types = [\n type(item).__name__\n for item in self.input_value\n if not isinstance(item, Message | Data | DataFrame | str)\n ]\n msg = f\"Expected Data or DataFrame or Message or str, got {invalid_types}\"\n raise TypeError(msg)\n if not isinstance(\n self.input_value,\n Message | Data | DataFrame | str | list | Generator | type(None),\n ):\n type_name = type(self.input_value).__name__\n msg = f\"Expected Data or DataFrame or Message or str, Generator or None, got {type_name}\"\n raise TypeError(msg)\n\n def convert_to_string(self) -> str | Generator[Any, None, None]:\n \"\"\"Convert input data to string with proper error handling.\"\"\"\n self._validate_input()\n if isinstance(self.input_value, list):\n clean_data: bool = getattr(self, \"clean_data\", False)\n return \"\\n\".join([safe_convert(item, clean_data=clean_data) for item in self.input_value])\n if isinstance(self.input_value, Generator):\n return self.input_value\n return safe_convert(self.input_value)\n"
|
|
998
998
|
},
|
|
999
999
|
"context_id": {
|
|
1000
1000
|
"_input_type": "MessageTextInput",
|
|
@@ -1197,7 +1197,7 @@
|
|
|
1197
1197
|
"legacy": false,
|
|
1198
1198
|
"lf_version": "1.1.5",
|
|
1199
1199
|
"metadata": {
|
|
1200
|
-
"code_hash": "
|
|
1200
|
+
"code_hash": "8c87e536cca4",
|
|
1201
1201
|
"dependencies": {
|
|
1202
1202
|
"dependencies": [
|
|
1203
1203
|
{
|
|
@@ -1206,7 +1206,7 @@
|
|
|
1206
1206
|
},
|
|
1207
1207
|
{
|
|
1208
1208
|
"name": "fastapi",
|
|
1209
|
-
"version": "0.
|
|
1209
|
+
"version": "0.123.0"
|
|
1210
1210
|
},
|
|
1211
1211
|
{
|
|
1212
1212
|
"name": "lfx",
|
|
@@ -1273,7 +1273,7 @@
|
|
|
1273
1273
|
"show": true,
|
|
1274
1274
|
"title_case": false,
|
|
1275
1275
|
"type": "code",
|
|
1276
|
-
"value": "from collections.abc import Generator\nfrom typing import Any\n\nimport orjson\nfrom fastapi.encoders import jsonable_encoder\n\nfrom lfx.base.io.chat import ChatComponent\nfrom lfx.helpers.data import safe_convert\nfrom lfx.inputs.inputs import BoolInput, DropdownInput, HandleInput, MessageTextInput\nfrom lfx.schema.data import Data\nfrom lfx.schema.dataframe import DataFrame\nfrom lfx.schema.message import Message\nfrom lfx.schema.properties import Source\nfrom lfx.template.field.base import Output\nfrom lfx.utils.constants import (\n MESSAGE_SENDER_AI,\n MESSAGE_SENDER_NAME_AI,\n MESSAGE_SENDER_USER,\n)\n\n\nclass ChatOutput(ChatComponent):\n display_name = \"Chat Output\"\n description = \"Display a chat message in the Playground.\"\n documentation: str = \"https://docs.langflow.org/chat-input-and-output\"\n icon = \"MessagesSquare\"\n name = \"ChatOutput\"\n minimized = True\n\n inputs = [\n HandleInput(\n name=\"input_value\",\n display_name=\"Inputs\",\n info=\"Message to be passed as output.\",\n input_types=[\"Data\", \"DataFrame\", \"Message\"],\n required=True,\n ),\n BoolInput(\n name=\"should_store_message\",\n display_name=\"Store Messages\",\n info=\"Store the message in the history.\",\n value=True,\n advanced=True,\n ),\n DropdownInput(\n name=\"sender\",\n display_name=\"Sender Type\",\n options=[MESSAGE_SENDER_AI, MESSAGE_SENDER_USER],\n value=MESSAGE_SENDER_AI,\n advanced=True,\n info=\"Type of sender.\",\n ),\n MessageTextInput(\n name=\"sender_name\",\n display_name=\"Sender Name\",\n info=\"Name of the sender.\",\n value=MESSAGE_SENDER_NAME_AI,\n advanced=True,\n ),\n MessageTextInput(\n name=\"session_id\",\n display_name=\"Session ID\",\n info=\"The session ID of the chat. If empty, the current session ID parameter will be used.\",\n advanced=True,\n ),\n MessageTextInput(\n name=\"context_id\",\n display_name=\"Context ID\",\n info=\"The context ID of the chat. Adds an extra layer to the local memory.\",\n value=\"\",\n advanced=True,\n ),\n MessageTextInput(\n name=\"data_template\",\n display_name=\"Data Template\",\n value=\"{text}\",\n advanced=True,\n info=\"Template to convert Data to Text. If left empty, it will be dynamically set to the Data's text key.\",\n ),\n BoolInput(\n name=\"clean_data\",\n display_name=\"Basic Clean Data\",\n value=True,\n advanced=True,\n info=\"Whether to clean data before converting to string.\",\n ),\n ]\n outputs = [\n Output(\n display_name=\"Output Message\",\n name=\"message\",\n method=\"message_response\",\n ),\n ]\n\n def _build_source(self, id_: str | None, display_name: str | None, source: str | None) -> Source:\n source_dict = {}\n if id_:\n source_dict[\"id\"] = id_\n if display_name:\n source_dict[\"display_name\"] = display_name\n if source:\n # Handle case where source is a ChatOpenAI object\n if hasattr(source, \"model_name\"):\n source_dict[\"source\"] = source.model_name\n elif hasattr(source, \"model\"):\n source_dict[\"source\"] = str(source.model)\n else:\n source_dict[\"source\"] = str(source)\n return Source(**source_dict)\n\n async def message_response(self) -> Message:\n # First convert the input to string if needed\n text = self.convert_to_string()\n\n # Get source properties\n source, _, display_name, source_id = self.get_properties_from_source_component()\n\n # Create or use existing Message object\n if isinstance(self.input_value, Message) and not self.is_connected_to_chat_input():\n message = self.input_value\n # Update message properties\n message.text = text\n else:\n message = Message(text=text)\n\n # Set message properties\n message.sender = self.sender\n message.sender_name = self.sender_name\n message.session_id = self.session_id or self.graph.session_id or \"\"\n message.context_id = self.context_id\n message.flow_id = self.graph.flow_id if hasattr(self, \"graph\") else None\n message.properties.source = self._build_source(source_id, display_name, source)\n\n # Store message if needed\n if message.session_id and self.should_store_message:\n stored_message = await self.send_message(message)\n self.message.value = stored_message\n message = stored_message\n\n self.status = message\n return message\n\n def _serialize_data(self, data: Data) -> str:\n \"\"\"Serialize Data object to JSON string.\"\"\"\n # Convert data.data to JSON-serializable format\n serializable_data = jsonable_encoder(data.data)\n # Serialize with orjson, enabling pretty printing with indentation\n json_bytes = orjson.dumps(serializable_data, option=orjson.OPT_INDENT_2)\n # Convert bytes to string and wrap in Markdown code blocks\n return \"```json\\n\" + json_bytes.decode(\"utf-8\") + \"\\n```\"\n\n def _validate_input(self) -> None:\n \"\"\"Validate the input data and raise ValueError if invalid.\"\"\"\n if self.input_value is None:\n msg = \"Input data cannot be None\"\n raise ValueError(msg)\n if isinstance(self.input_value, list) and not all(\n isinstance(item, Message | Data | DataFrame | str) for item in self.input_value\n ):\n invalid_types = [\n type(item).__name__\n for item in self.input_value\n if not isinstance(item, Message | Data | DataFrame | str)\n ]\n msg = f\"Expected Data or DataFrame or Message or str, got {invalid_types}\"\n raise TypeError(msg)\n if not isinstance(\n self.input_value,\n Message | Data | DataFrame | str | list | Generator | type(None),\n ):\n type_name = type(self.input_value).__name__\n msg = f\"Expected Data or DataFrame or Message or str, Generator or None, got {type_name}\"\n raise TypeError(msg)\n\n def convert_to_string(self) -> str | Generator[Any, None, None]:\n \"\"\"Convert input data to string with proper error handling.\"\"\"\n self._validate_input()\n if isinstance(self.input_value, list):\n clean_data: bool = getattr(self, \"clean_data\", False)\n return \"\\n\".join([safe_convert(item, clean_data=clean_data) for item in self.input_value])\n if isinstance(self.input_value, Generator):\n return self.input_value\n return safe_convert(self.input_value)\n"
|
|
1276
|
+
"value": "from collections.abc import Generator\nfrom typing import Any\n\nimport orjson\nfrom fastapi.encoders import jsonable_encoder\n\nfrom lfx.base.io.chat import ChatComponent\nfrom lfx.helpers.data import safe_convert\nfrom lfx.inputs.inputs import BoolInput, DropdownInput, HandleInput, MessageTextInput\nfrom lfx.schema.data import Data\nfrom lfx.schema.dataframe import DataFrame\nfrom lfx.schema.message import Message\nfrom lfx.schema.properties import Source\nfrom lfx.template.field.base import Output\nfrom lfx.utils.constants import (\n MESSAGE_SENDER_AI,\n MESSAGE_SENDER_NAME_AI,\n MESSAGE_SENDER_USER,\n)\n\n\nclass ChatOutput(ChatComponent):\n display_name = \"Chat Output\"\n description = \"Display a chat message in the Playground.\"\n documentation: str = \"https://docs.langflow.org/chat-input-and-output\"\n icon = \"MessagesSquare\"\n name = \"ChatOutput\"\n minimized = True\n\n inputs = [\n HandleInput(\n name=\"input_value\",\n display_name=\"Inputs\",\n info=\"Message to be passed as output.\",\n input_types=[\"Data\", \"DataFrame\", \"Message\"],\n required=True,\n ),\n BoolInput(\n name=\"should_store_message\",\n display_name=\"Store Messages\",\n info=\"Store the message in the history.\",\n value=True,\n advanced=True,\n ),\n DropdownInput(\n name=\"sender\",\n display_name=\"Sender Type\",\n options=[MESSAGE_SENDER_AI, MESSAGE_SENDER_USER],\n value=MESSAGE_SENDER_AI,\n advanced=True,\n info=\"Type of sender.\",\n ),\n MessageTextInput(\n name=\"sender_name\",\n display_name=\"Sender Name\",\n info=\"Name of the sender.\",\n value=MESSAGE_SENDER_NAME_AI,\n advanced=True,\n ),\n MessageTextInput(\n name=\"session_id\",\n display_name=\"Session ID\",\n info=\"The session ID of the chat. If empty, the current session ID parameter will be used.\",\n advanced=True,\n ),\n MessageTextInput(\n name=\"context_id\",\n display_name=\"Context ID\",\n info=\"The context ID of the chat. Adds an extra layer to the local memory.\",\n value=\"\",\n advanced=True,\n ),\n MessageTextInput(\n name=\"data_template\",\n display_name=\"Data Template\",\n value=\"{text}\",\n advanced=True,\n info=\"Template to convert Data to Text. If left empty, it will be dynamically set to the Data's text key.\",\n ),\n BoolInput(\n name=\"clean_data\",\n display_name=\"Basic Clean Data\",\n value=True,\n advanced=True,\n info=\"Whether to clean data before converting to string.\",\n ),\n ]\n outputs = [\n Output(\n display_name=\"Output Message\",\n name=\"message\",\n method=\"message_response\",\n ),\n ]\n\n def _build_source(self, id_: str | None, display_name: str | None, source: str | None) -> Source:\n source_dict = {}\n if id_:\n source_dict[\"id\"] = id_\n if display_name:\n source_dict[\"display_name\"] = display_name\n if source:\n # Handle case where source is a ChatOpenAI object\n if hasattr(source, \"model_name\"):\n source_dict[\"source\"] = source.model_name\n elif hasattr(source, \"model\"):\n source_dict[\"source\"] = str(source.model)\n else:\n source_dict[\"source\"] = str(source)\n return Source(**source_dict)\n\n async def message_response(self) -> Message:\n # First convert the input to string if needed\n text = self.convert_to_string()\n\n # Get source properties\n source, _, display_name, source_id = self.get_properties_from_source_component()\n\n # Create or use existing Message object\n if isinstance(self.input_value, Message) and not self.is_connected_to_chat_input():\n message = self.input_value\n # Update message properties\n message.text = text\n # Preserve existing session_id from the incoming message if it exists\n existing_session_id = message.session_id\n else:\n message = Message(text=text)\n existing_session_id = None\n\n # Set message properties\n message.sender = self.sender\n message.sender_name = self.sender_name\n # Preserve session_id from incoming message, or use component/graph session_id\n message.session_id = (\n self.session_id or existing_session_id or (self.graph.session_id if hasattr(self, \"graph\") else None) or \"\"\n )\n message.context_id = self.context_id\n message.flow_id = self.graph.flow_id if hasattr(self, \"graph\") else None\n message.properties.source = self._build_source(source_id, display_name, source)\n\n # Store message if needed\n if message.session_id and self.should_store_message:\n stored_message = await self.send_message(message)\n self.message.value = stored_message\n message = stored_message\n\n self.status = message\n return message\n\n def _serialize_data(self, data: Data) -> str:\n \"\"\"Serialize Data object to JSON string.\"\"\"\n # Convert data.data to JSON-serializable format\n serializable_data = jsonable_encoder(data.data)\n # Serialize with orjson, enabling pretty printing with indentation\n json_bytes = orjson.dumps(serializable_data, option=orjson.OPT_INDENT_2)\n # Convert bytes to string and wrap in Markdown code blocks\n return \"```json\\n\" + json_bytes.decode(\"utf-8\") + \"\\n```\"\n\n def _validate_input(self) -> None:\n \"\"\"Validate the input data and raise ValueError if invalid.\"\"\"\n if self.input_value is None:\n msg = \"Input data cannot be None\"\n raise ValueError(msg)\n if isinstance(self.input_value, list) and not all(\n isinstance(item, Message | Data | DataFrame | str) for item in self.input_value\n ):\n invalid_types = [\n type(item).__name__\n for item in self.input_value\n if not isinstance(item, Message | Data | DataFrame | str)\n ]\n msg = f\"Expected Data or DataFrame or Message or str, got {invalid_types}\"\n raise TypeError(msg)\n if not isinstance(\n self.input_value,\n Message | Data | DataFrame | str | list | Generator | type(None),\n ):\n type_name = type(self.input_value).__name__\n msg = f\"Expected Data or DataFrame or Message or str, Generator or None, got {type_name}\"\n raise TypeError(msg)\n\n def convert_to_string(self) -> str | Generator[Any, None, None]:\n \"\"\"Convert input data to string with proper error handling.\"\"\"\n self._validate_input()\n if isinstance(self.input_value, list):\n clean_data: bool = getattr(self, \"clean_data\", False)\n return \"\\n\".join([safe_convert(item, clean_data=clean_data) for item in self.input_value])\n if isinstance(self.input_value, Generator):\n return self.input_value\n return safe_convert(self.input_value)\n"
|
|
1277
1277
|
},
|
|
1278
1278
|
"context_id": {
|
|
1279
1279
|
"_input_type": "MessageTextInput",
|