langflow-base-nightly 1.7.0.dev55__py3-none-any.whl → 1.7.1.dev5__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/api/utils/core.py +1 -1
- langflow/api/v1/monitor.py +15 -4
- langflow/api/v2/files.py +6 -6
- langflow/frontend/assets/SlackIcon-CDt9ruDi.js +1 -0
- langflow/frontend/assets/Wikipedia-CzZweN4V.js +1 -0
- langflow/frontend/assets/Wolfram-CZ-rQ_dz.js +1 -0
- langflow/frontend/assets/a-arrow-down-CwPpd9H4.js +6 -0
- langflow/frontend/assets/a-arrow-up-jM3y2OLL.js +6 -0
- langflow/frontend/assets/a-large-small-DIxOsxWM.js +6 -0
- langflow/frontend/assets/accessibility-Bu35r-m5.js +6 -0
- langflow/frontend/assets/activity-C8wc8_Pd.js +6 -0
- langflow/frontend/assets/air-vent-B_sKAddy.js +6 -0
- langflow/frontend/assets/airplay-BRq-ZU7H.js +6 -0
- langflow/frontend/assets/alarm-clock-BbYCqVew.js +6 -0
- langflow/frontend/assets/alarm-clock-check-BrWJwXsN.js +6 -0
- langflow/frontend/assets/alarm-clock-minus-B6CwqW-T.js +6 -0
- langflow/frontend/assets/alarm-clock-off-B9ifv7kn.js +6 -0
- langflow/frontend/assets/alarm-clock-plus-BOzl727m.js +6 -0
- langflow/frontend/assets/alarm-smoke-BhmbHGGn.js +6 -0
- langflow/frontend/assets/album-CoFPyd_v.js +6 -0
- langflow/frontend/assets/align-center-DGVY6SPd.js +6 -0
- langflow/frontend/assets/align-center-horizontal-Cey2fjtd.js +6 -0
- langflow/frontend/assets/align-center-vertical-DPOUZrSH.js +6 -0
- langflow/frontend/assets/align-end-horizontal-Cqp4DWbq.js +6 -0
- langflow/frontend/assets/align-end-vertical-Do5r6aRH.js +6 -0
- langflow/frontend/assets/align-horizontal-distribute-center-BNr6hPSI.js +6 -0
- langflow/frontend/assets/align-horizontal-distribute-end-DZG6jDkR.js +6 -0
- langflow/frontend/assets/align-horizontal-distribute-start-BmK__V8Z.js +6 -0
- langflow/frontend/assets/align-horizontal-justify-center-DmWrPC9A.js +6 -0
- langflow/frontend/assets/align-horizontal-justify-end-DROxo_RK.js +6 -0
- langflow/frontend/assets/align-horizontal-justify-start-Bq3cTNol.js +6 -0
- langflow/frontend/assets/align-horizontal-space-around-CLSN-Vf9.js +6 -0
- langflow/frontend/assets/align-horizontal-space-between-LCNWIoA3.js +6 -0
- langflow/frontend/assets/align-justify-CD4s57UD.js +6 -0
- langflow/frontend/assets/align-left-OX3uEBv3.js +6 -0
- langflow/frontend/assets/align-right-DkuuTQ1d.js +6 -0
- langflow/frontend/assets/align-start-horizontal-BNRk7zxc.js +6 -0
- langflow/frontend/assets/align-start-vertical-B4GqW30U.js +6 -0
- langflow/frontend/assets/align-vertical-distribute-center-CI-DiRiC.js +6 -0
- langflow/frontend/assets/align-vertical-distribute-end-DEy26fXc.js +6 -0
- langflow/frontend/assets/align-vertical-distribute-start-2FYac2F0.js +6 -0
- langflow/frontend/assets/align-vertical-justify-center-BjCbehse.js +6 -0
- langflow/frontend/assets/align-vertical-justify-end-DyqItGrk.js +6 -0
- langflow/frontend/assets/align-vertical-justify-start-C3sYyyyy.js +6 -0
- langflow/frontend/assets/align-vertical-space-around-BOmH3ztI.js +6 -0
- langflow/frontend/assets/align-vertical-space-between-B9c0Lk1p.js +6 -0
- langflow/frontend/assets/ambulance-BE5C3u47.js +6 -0
- langflow/frontend/assets/ampersand-CGiQT7mb.js +6 -0
- langflow/frontend/assets/ampersands-DjvDv92k.js +6 -0
- langflow/frontend/assets/amphora-D5nk3hGg.js +6 -0
- langflow/frontend/assets/anchor-Dqa2CHUZ.js +6 -0
- langflow/frontend/assets/angry-uV--xR8-.js +6 -0
- langflow/frontend/assets/annoyed-DyakcX_g.js +6 -0
- langflow/frontend/assets/antenna-h5RNooai.js +6 -0
- langflow/frontend/assets/anvil-RNRmD2-Y.js +6 -0
- langflow/frontend/assets/aperture-CW9oEicD.js +6 -0
- langflow/frontend/assets/app-window-B6cERlnL.js +6 -0
- langflow/frontend/assets/app-window-mac-DS2dTXq9.js +6 -0
- langflow/frontend/assets/apple-3Hp6P8Bd.js +6 -0
- langflow/frontend/assets/archive-DJwcBaYO.js +6 -0
- langflow/frontend/assets/archive-restore-Bwbb9GIi.js +6 -0
- langflow/frontend/assets/archive-x-BVKIwMVP.js +6 -0
- langflow/frontend/assets/armchair-Bqp7yqwW.js +6 -0
- langflow/frontend/assets/arrow-big-down-CBSTnf2S.js +6 -0
- langflow/frontend/assets/arrow-big-down-dash-Xt3uFfZd.js +6 -0
- langflow/frontend/assets/arrow-big-left-dash-CHj1IfTf.js +6 -0
- langflow/frontend/assets/arrow-big-left-n76PSUVg.js +6 -0
- langflow/frontend/assets/arrow-big-right-dash-D8_l2gIo.js +6 -0
- langflow/frontend/assets/arrow-big-right-qtyRi8in.js +6 -0
- langflow/frontend/assets/arrow-big-up-DT6iJYNQ.js +6 -0
- langflow/frontend/assets/arrow-big-up-dash-Bm1yxK2z.js +6 -0
- langflow/frontend/assets/arrow-down-0-1-RckAPt_n.js +6 -0
- langflow/frontend/assets/arrow-down-1-0-B87psQUW.js +6 -0
- langflow/frontend/assets/arrow-down-CKT3Z8_c.js +6 -0
- langflow/frontend/assets/arrow-down-a-z-C1SkXhIF.js +6 -0
- langflow/frontend/assets/arrow-down-from-line-wpXr5zyx.js +6 -0
- langflow/frontend/assets/arrow-down-left-BYiO5bjf.js +6 -0
- langflow/frontend/assets/arrow-down-narrow-wide-Dw8fGlIz.js +6 -0
- langflow/frontend/assets/arrow-down-right-DF2bUPf_.js +6 -0
- langflow/frontend/assets/arrow-down-to-dot-DmM95y_f.js +6 -0
- langflow/frontend/assets/arrow-down-to-line-B6_vSTzR.js +6 -0
- langflow/frontend/assets/arrow-down-up-BQzt8kqF.js +6 -0
- langflow/frontend/assets/arrow-down-wide-narrow-9dunOrWa.js +6 -0
- langflow/frontend/assets/arrow-down-z-a-Cs1Gl6Ca.js +6 -0
- langflow/frontend/assets/arrow-left-DO-I9wG0.js +6 -0
- langflow/frontend/assets/arrow-left-from-line-CHZCYDQr.js +6 -0
- langflow/frontend/assets/arrow-left-right-XNNtW4Ep.js +6 -0
- langflow/frontend/assets/arrow-left-to-line-BMmitzR6.js +6 -0
- langflow/frontend/assets/arrow-right-C5rahmtj.js +6 -0
- langflow/frontend/assets/arrow-right-from-line-DcUVS8Cj.js +6 -0
- langflow/frontend/assets/arrow-right-left-5FApCcJp.js +6 -0
- langflow/frontend/assets/arrow-right-to-line-Bntn-h6M.js +6 -0
- langflow/frontend/assets/arrow-up-0-1-C6I42WXu.js +6 -0
- langflow/frontend/assets/arrow-up-1-0-RvL5qAHL.js +6 -0
- langflow/frontend/assets/arrow-up-B7ZXHfGR.js +6 -0
- langflow/frontend/assets/arrow-up-a-z-CtljPw0p.js +6 -0
- langflow/frontend/assets/arrow-up-down-CLOJpN5F.js +6 -0
- langflow/frontend/assets/arrow-up-from-dot-Cav5DpLx.js +6 -0
- langflow/frontend/assets/arrow-up-from-line-SJKN8JiM.js +6 -0
- langflow/frontend/assets/arrow-up-left-DeKMDzci.js +6 -0
- langflow/frontend/assets/arrow-up-narrow-wide-CaDsGalF.js +6 -0
- langflow/frontend/assets/arrow-up-right-CgVujl4S.js +6 -0
- langflow/frontend/assets/arrow-up-to-line-Bz-pymjr.js +6 -0
- langflow/frontend/assets/arrow-up-wide-narrow-B-pvvK1E.js +6 -0
- langflow/frontend/assets/arrow-up-z-a-x_h5ovMC.js +6 -0
- langflow/frontend/assets/arrows-up-from-line-m1TUacrX.js +6 -0
- langflow/frontend/assets/asterisk-DSjrdpN1.js +6 -0
- langflow/frontend/assets/at-sign-DFB5giOH.js +6 -0
- langflow/frontend/assets/atom-BGG-TeLe.js +6 -0
- langflow/frontend/assets/audio-lines-CRHT7SQE.js +6 -0
- langflow/frontend/assets/audio-waveform-BzTFaccJ.js +6 -0
- langflow/frontend/assets/award-CNg72EMQ.js +6 -0
- langflow/frontend/assets/axe-CM9Ab5NQ.js +6 -0
- langflow/frontend/assets/axis-3d-DL4YygIz.js +6 -0
- langflow/frontend/assets/baby-C-RQQFSK.js +6 -0
- langflow/frontend/assets/backpack-DSwZazFo.js +6 -0
- langflow/frontend/assets/badge-DQ5UeQW1.js +6 -0
- langflow/frontend/assets/badge-alert-D30mz3o7.js +6 -0
- langflow/frontend/assets/badge-cent-DXwIzlsc.js +6 -0
- langflow/frontend/assets/badge-check-B3YRdSc5.js +6 -0
- langflow/frontend/assets/badge-dollar-sign-D8D48CHU.js +6 -0
- langflow/frontend/assets/badge-euro-Br1IAxah.js +6 -0
- langflow/frontend/assets/badge-help-KG-DxL5J.js +6 -0
- langflow/frontend/assets/badge-indian-rupee-D6piDzXk.js +6 -0
- langflow/frontend/assets/badge-info-BAmJu6DP.js +6 -0
- langflow/frontend/assets/badge-japanese-yen-Bho9pGNs.js +6 -0
- langflow/frontend/assets/badge-minus-BB3vc1Vg.js +6 -0
- langflow/frontend/assets/badge-percent-6vQ2H28C.js +6 -0
- langflow/frontend/assets/badge-plus-D5JLiEnK.js +6 -0
- langflow/frontend/assets/badge-pound-sterling-BmSqgf2V.js +6 -0
- langflow/frontend/assets/badge-russian-ruble-C-aY70Vz.js +6 -0
- langflow/frontend/assets/badge-swiss-franc-DWG2YTZG.js +6 -0
- langflow/frontend/assets/badge-x-CPdTrgRu.js +6 -0
- langflow/frontend/assets/baggage-claim-D5X9ZlaP.js +6 -0
- langflow/frontend/assets/ban-CZlim5IR.js +6 -0
- langflow/frontend/assets/banana-rtMT0E6z.js +6 -0
- langflow/frontend/assets/bandage-B1GX6ABE.js +6 -0
- langflow/frontend/assets/banknote-DPaqrakL.js +6 -0
- langflow/frontend/assets/banknote-arrow-down-DwmMSd1v.js +6 -0
- langflow/frontend/assets/banknote-arrow-up-D9lBKTuZ.js +6 -0
- langflow/frontend/assets/banknote-x-DCgkd1Ve.js +6 -0
- langflow/frontend/assets/barcode-DQOpG04l.js +6 -0
- langflow/frontend/assets/baseline-BL_0FrxU.js +6 -0
- langflow/frontend/assets/bath-Cw2hZQEE.js +6 -0
- langflow/frontend/assets/battery-CJDR3MfN.js +6 -0
- langflow/frontend/assets/battery-charging-BQbJE4JT.js +6 -0
- langflow/frontend/assets/battery-full-CYJlIaJU.js +6 -0
- langflow/frontend/assets/battery-low-CBXuAAur.js +6 -0
- langflow/frontend/assets/battery-medium-BsrJ-_J5.js +6 -0
- langflow/frontend/assets/battery-plus-DwpCzI9s.js +6 -0
- langflow/frontend/assets/battery-warning-DL58ObVr.js +6 -0
- langflow/frontend/assets/beaker-BvvtcoCg.js +6 -0
- langflow/frontend/assets/bean-CxPsMN48.js +6 -0
- langflow/frontend/assets/bean-off-CiYxtEpo.js +6 -0
- langflow/frontend/assets/bed-CHFGG9my.js +6 -0
- langflow/frontend/assets/bed-double-BmatvTtI.js +6 -0
- langflow/frontend/assets/bed-single-BkCg_xO8.js +6 -0
- langflow/frontend/assets/beef-BT-Tqkcu.js +6 -0
- langflow/frontend/assets/beer-Br-w96_H.js +6 -0
- langflow/frontend/assets/beer-off-BCLntpC4.js +6 -0
- langflow/frontend/assets/bell-O8GI9kMj.js +6 -0
- langflow/frontend/assets/bell-dot-Bj0OBLjN.js +6 -0
- langflow/frontend/assets/bell-electric-CY2HEJBK.js +6 -0
- langflow/frontend/assets/bell-minus-DcJMlwFa.js +6 -0
- langflow/frontend/assets/bell-off-BddznZLT.js +6 -0
- langflow/frontend/assets/bell-plus-Bdbag6Iy.js +6 -0
- langflow/frontend/assets/bell-ring-QniTUI83.js +6 -0
- langflow/frontend/assets/between-horizontal-end-BccaaLIx.js +6 -0
- langflow/frontend/assets/between-horizontal-start-DLeaS38Y.js +6 -0
- langflow/frontend/assets/between-vertical-end-Bp5YYPcy.js +6 -0
- langflow/frontend/assets/between-vertical-start-Uq1m2vPv.js +6 -0
- langflow/frontend/assets/biceps-flexed-C7-coF7l.js +6 -0
- langflow/frontend/assets/bike-CW47gMaO.js +6 -0
- langflow/frontend/assets/binary-B2jWyHmS.js +6 -0
- langflow/frontend/assets/binoculars-CLrFW0If.js +6 -0
- langflow/frontend/assets/biohazard-CF7F57VV.js +6 -0
- langflow/frontend/assets/bird-j20wt-d7.js +6 -0
- langflow/frontend/assets/bitcoin-DKaXAvZs.js +6 -0
- langflow/frontend/assets/blend-YB2G1cSt.js +6 -0
- langflow/frontend/assets/blinds-CvjOeFFH.js +6 -0
- langflow/frontend/assets/blocks-KEQTbHJv.js +6 -0
- langflow/frontend/assets/bluetooth-B6WGG2GD.js +6 -0
- langflow/frontend/assets/bluetooth-connected-DYLNIZYk.js +6 -0
- langflow/frontend/assets/bluetooth-off-CLNKbIaL.js +6 -0
- langflow/frontend/assets/bluetooth-searching-DfIeGkiC.js +6 -0
- langflow/frontend/assets/bold-i26IDbuD.js +6 -0
- langflow/frontend/assets/bolt-BvWGlJ7e.js +6 -0
- langflow/frontend/assets/bomb-eETI4arK.js +6 -0
- langflow/frontend/assets/bone-BfX5_39K.js +6 -0
- langflow/frontend/assets/book-C8qxTl1A.js +6 -0
- langflow/frontend/assets/book-a-BjfQrVZT.js +6 -0
- langflow/frontend/assets/book-audio-CW-IVPLM.js +6 -0
- langflow/frontend/assets/book-check-Ysv0j0jd.js +6 -0
- langflow/frontend/assets/book-copy-CREVzePN.js +6 -0
- langflow/frontend/assets/book-dashed-dZlt1GVE.js +6 -0
- langflow/frontend/assets/book-down-BMgE5E_a.js +6 -0
- langflow/frontend/assets/book-headphones-B2LmDr1V.js +6 -0
- langflow/frontend/assets/book-heart-RRe549pE.js +6 -0
- langflow/frontend/assets/book-image-CtVi8j_P.js +6 -0
- langflow/frontend/assets/book-key-DJl_z9qN.js +6 -0
- langflow/frontend/assets/book-lock-Cu1d99eT.js +6 -0
- langflow/frontend/assets/book-marked-BVeaBa6E.js +6 -0
- langflow/frontend/assets/book-minus-D5UpV0HU.js +6 -0
- langflow/frontend/assets/book-open-CAg3knij.js +6 -0
- langflow/frontend/assets/book-open-check-NXQYhiZT.js +6 -0
- langflow/frontend/assets/book-open-text-BpiCvJWR.js +6 -0
- langflow/frontend/assets/book-plus-DCGPS6zP.js +6 -0
- langflow/frontend/assets/book-text-BW4VnWf6.js +6 -0
- langflow/frontend/assets/book-type-D_46kL_0.js +6 -0
- langflow/frontend/assets/book-up-2-DONNzzqQ.js +6 -0
- langflow/frontend/assets/book-up-NbOioeni.js +6 -0
- langflow/frontend/assets/book-user-rhEFRy8m.js +6 -0
- langflow/frontend/assets/book-x-C8XI7wnn.js +6 -0
- langflow/frontend/assets/bookmark-C2DUONVZ.js +6 -0
- langflow/frontend/assets/bookmark-check-BQNeLmCq.js +6 -0
- langflow/frontend/assets/bookmark-minus-BoKQoPZm.js +6 -0
- langflow/frontend/assets/bookmark-plus-Vcuasv25.js +6 -0
- langflow/frontend/assets/bookmark-x-BNZ7MP72.js +6 -0
- langflow/frontend/assets/boom-box-1piwy5jk.js +6 -0
- langflow/frontend/assets/bot-CPP_c_G2.js +6 -0
- langflow/frontend/assets/bot-message-square-tm8Mv6Jm.js +6 -0
- langflow/frontend/assets/bot-off-YjYeJfp4.js +6 -0
- langflow/frontend/assets/bow-arrow-uP26AkC3.js +6 -0
- langflow/frontend/assets/box-Bmq_FMQ4.js +6 -0
- langflow/frontend/assets/boxes-BZ_6JxMi.js +6 -0
- langflow/frontend/assets/braces-DVOM3D5l.js +6 -0
- langflow/frontend/assets/brackets-CS9ID129.js +6 -0
- langflow/frontend/assets/brain-BlXEX7dQ.js +6 -0
- langflow/frontend/assets/brain-circuit-CnThDCAt.js +6 -0
- langflow/frontend/assets/brain-cog-AMJAkopE.js +6 -0
- langflow/frontend/assets/brick-wall-CTT89ewp.js +6 -0
- langflow/frontend/assets/brick-wall-fire-DydIX0mH.js +6 -0
- langflow/frontend/assets/briefcase-DMY6Harl.js +6 -0
- langflow/frontend/assets/briefcase-business-D3M6AyNo.js +6 -0
- langflow/frontend/assets/briefcase-conveyor-belt-CyzrQNxu.js +6 -0
- langflow/frontend/assets/briefcase-medical-CutojFFW.js +6 -0
- langflow/frontend/assets/bring-to-front-DtTEoFiK.js +6 -0
- langflow/frontend/assets/brush-DjTIQhD-.js +6 -0
- langflow/frontend/assets/bubbles-Rdx0Rz-Y.js +6 -0
- langflow/frontend/assets/bug-CcTiugJm.js +6 -0
- langflow/frontend/assets/bug-off-B5Vj99QQ.js +6 -0
- langflow/frontend/assets/bug-play-BjmNJyqy.js +6 -0
- langflow/frontend/assets/building-2-DeBHtjkZ.js +6 -0
- langflow/frontend/assets/building-P-LGfmKw.js +6 -0
- langflow/frontend/assets/bus-B_zj7QKv.js +6 -0
- langflow/frontend/assets/bus-front-zMB5V2yK.js +6 -0
- langflow/frontend/assets/cable-CyF4WLKb.js +6 -0
- langflow/frontend/assets/cable-car-B6fC8qcU.js +6 -0
- langflow/frontend/assets/cake-U4HTzBNY.js +6 -0
- langflow/frontend/assets/cake-slice-bLcEeX90.js +6 -0
- langflow/frontend/assets/calculator-CYPSfYA9.js +6 -0
- langflow/frontend/assets/calendar-1-BjEKNx8O.js +6 -0
- langflow/frontend/assets/calendar-DhVDFKop.js +6 -0
- langflow/frontend/assets/calendar-arrow-down-BBYJBh4D.js +6 -0
- langflow/frontend/assets/calendar-arrow-up-EuTph0Vf.js +6 -0
- langflow/frontend/assets/calendar-check-2-jQv5IN8U.js +6 -0
- langflow/frontend/assets/calendar-check-BJYMA1zc.js +6 -0
- langflow/frontend/assets/calendar-clock-B-WGUYKA.js +6 -0
- langflow/frontend/assets/calendar-cog-CfGO1wE3.js +6 -0
- langflow/frontend/assets/calendar-days-CT3s84rd.js +6 -0
- langflow/frontend/assets/calendar-fold-DPSW8svP.js +6 -0
- langflow/frontend/assets/calendar-heart-CL4f45_b.js +6 -0
- langflow/frontend/assets/calendar-minus-2-DM8uaG1R.js +6 -0
- langflow/frontend/assets/calendar-minus-CT-E1w1p.js +6 -0
- langflow/frontend/assets/calendar-off-BlsGnhnc.js +6 -0
- langflow/frontend/assets/calendar-plus-2-D9evQuaz.js +6 -0
- langflow/frontend/assets/calendar-plus-Badr2uJB.js +6 -0
- langflow/frontend/assets/calendar-range-Ca4xroAn.js +6 -0
- langflow/frontend/assets/calendar-search-BLa7TVYc.js +6 -0
- langflow/frontend/assets/calendar-sync-qbExxZFt.js +6 -0
- langflow/frontend/assets/calendar-x-2-BQ5KOlTJ.js +6 -0
- langflow/frontend/assets/calendar-x-DLCr9CBc.js +6 -0
- langflow/frontend/assets/camera-BXi8O_zl.js +6 -0
- langflow/frontend/assets/camera-off-aT5pglDA.js +6 -0
- langflow/frontend/assets/candy-DSgtO84_.js +6 -0
- langflow/frontend/assets/candy-cane-DVUNmAFZ.js +6 -0
- langflow/frontend/assets/candy-off-CJYlmyP8.js +6 -0
- langflow/frontend/assets/cannabis-DEK82vkB.js +6 -0
- langflow/frontend/assets/captions-HrImpf78.js +6 -0
- langflow/frontend/assets/captions-off-Cxu54MuH.js +6 -0
- langflow/frontend/assets/car-DhYibMDs.js +6 -0
- langflow/frontend/assets/car-front-m-Z--qaT.js +6 -0
- langflow/frontend/assets/car-taxi-front-tFDluXjk.js +6 -0
- langflow/frontend/assets/caravan-Bt5cD847.js +6 -0
- langflow/frontend/assets/carrot--1wSSLRL.js +6 -0
- langflow/frontend/assets/case-lower-rNT5IJCc.js +6 -0
- langflow/frontend/assets/case-sensitive-DwYm5kig.js +6 -0
- langflow/frontend/assets/case-upper-CdvxBi1h.js +6 -0
- langflow/frontend/assets/cassette-tape-D9oQvvFk.js +6 -0
- langflow/frontend/assets/cast-BKETl3Xr.js +6 -0
- langflow/frontend/assets/castle-DFGLBp5r.js +6 -0
- langflow/frontend/assets/cat-BrwBFWdh.js +6 -0
- langflow/frontend/assets/cctv-V8X59rAi.js +6 -0
- langflow/frontend/assets/chart-area-2JCEngWp.js +6 -0
- langflow/frontend/assets/chart-bar-big-CEtsUZjz.js +6 -0
- langflow/frontend/assets/chart-bar-decreasing-BlRfoirI.js +6 -0
- langflow/frontend/assets/chart-bar-increasing-BGiKeAkL.js +6 -0
- langflow/frontend/assets/chart-bar-stacked-DBYrg7mL.js +6 -0
- langflow/frontend/assets/chart-bar-wcD35if1.js +6 -0
- langflow/frontend/assets/chart-candlestick-DGIzqvPs.js +6 -0
- langflow/frontend/assets/chart-column-D02BTIiE.js +6 -0
- langflow/frontend/assets/chart-column-big-ClkNvcMf.js +6 -0
- langflow/frontend/assets/chart-column-decreasing-BNpafKhd.js +6 -0
- langflow/frontend/assets/chart-column-increasing-BrJ9DVDR.js +6 -0
- langflow/frontend/assets/chart-column-stacked-BKC7Zxsp.js +6 -0
- langflow/frontend/assets/chart-gantt-B0dRB2ET.js +6 -0
- langflow/frontend/assets/chart-line-DV6qehEx.js +6 -0
- langflow/frontend/assets/chart-network-CxWgm8mb.js +6 -0
- langflow/frontend/assets/chart-no-axes-column-decreasing-EF7fSZW9.js +6 -0
- langflow/frontend/assets/chart-no-axes-column-iaJ37m4r.js +6 -0
- langflow/frontend/assets/chart-no-axes-column-increasing-JvoS2P-k.js +6 -0
- langflow/frontend/assets/chart-no-axes-combined-DqCgbcuU.js +6 -0
- langflow/frontend/assets/chart-no-axes-gantt-CXMbzpzk.js +6 -0
- langflow/frontend/assets/chart-pie-DM3UVAmN.js +6 -0
- langflow/frontend/assets/chart-scatter-Xqqty9pG.js +6 -0
- langflow/frontend/assets/chart-spline-CaI8se4y.js +6 -0
- langflow/frontend/assets/check-check-3-9PVEn6.js +6 -0
- langflow/frontend/assets/chef-hat-b2fuIXLM.js +6 -0
- langflow/frontend/assets/cherry-CkSaxXPj.js +6 -0
- langflow/frontend/assets/chevron-first-CEn77K5n.js +6 -0
- langflow/frontend/assets/chevron-last-m7wpp3J9.js +6 -0
- langflow/frontend/assets/chevron-left-B1Da_p-C.js +6 -0
- langflow/frontend/assets/chevron-right-CPxlA3qE.js +6 -0
- langflow/frontend/assets/chevrons-down-CTry-RgK.js +6 -0
- langflow/frontend/assets/chevrons-down-up-BPprNhyY.js +6 -0
- langflow/frontend/assets/chevrons-left-BAOVO2Xk.js +6 -0
- langflow/frontend/assets/chevrons-left-right--Lo8NJcC.js +6 -0
- langflow/frontend/assets/chevrons-left-right-ellipsis-CQesA8OH.js +6 -0
- langflow/frontend/assets/chevrons-right-Ddn6k-ej.js +6 -0
- langflow/frontend/assets/chevrons-right-left-BaKH8xtU.js +6 -0
- langflow/frontend/assets/chevrons-up-DV1RzvN8.js +6 -0
- langflow/frontend/assets/chrome-COtt_XZg.js +6 -0
- langflow/frontend/assets/church-DYdgde2T.js +6 -0
- langflow/frontend/assets/cigarette-QRyLOzku.js +6 -0
- langflow/frontend/assets/cigarette-off-CF1zQ4q8.js +6 -0
- langflow/frontend/assets/circle-alert-BVPeMSu6.js +6 -0
- langflow/frontend/assets/circle-arrow-down-CkKJnt8Y.js +6 -0
- langflow/frontend/assets/circle-arrow-left-BuITv_pg.js +6 -0
- langflow/frontend/assets/circle-arrow-out-down-left-TG2WB5nr.js +6 -0
- langflow/frontend/assets/circle-arrow-out-down-right-CaAsVoyT.js +6 -0
- langflow/frontend/assets/circle-arrow-out-up-left-gl7rB8AN.js +6 -0
- langflow/frontend/assets/circle-arrow-out-up-right-D-hRThX0.js +6 -0
- langflow/frontend/assets/circle-arrow-right-QgGj1RWM.js +6 -0
- langflow/frontend/assets/circle-arrow-up-Di9tJK9i.js +6 -0
- langflow/frontend/assets/circle-check-BdxJ-7PP.js +6 -0
- langflow/frontend/assets/circle-check-big-B12HKwgl.js +6 -0
- langflow/frontend/assets/circle-chevron-down-Cq7MJqBG.js +6 -0
- langflow/frontend/assets/circle-chevron-left-qzSEOIJ-.js +6 -0
- langflow/frontend/assets/circle-chevron-right-H0-KNvtP.js +6 -0
- langflow/frontend/assets/circle-chevron-up-BMAb8RPb.js +6 -0
- langflow/frontend/assets/circle-dashed-C6lpZiZf.js +6 -0
- langflow/frontend/assets/circle-divide-S1GCJZUd.js +6 -0
- langflow/frontend/assets/circle-dollar-sign-bB-SHgD0.js +6 -0
- langflow/frontend/assets/circle-dot-D1Bz2sKf.js +6 -0
- langflow/frontend/assets/circle-dot-dashed-Cwg4RtHm.js +6 -0
- langflow/frontend/assets/circle-ellipsis-BA_vcrPc.js +6 -0
- langflow/frontend/assets/circle-equal-_g_Zkb-H.js +6 -0
- langflow/frontend/assets/circle-fading-arrow-up-B1Lg7xE2.js +6 -0
- langflow/frontend/assets/circle-fading-plus-sxwQGJMn.js +6 -0
- langflow/frontend/assets/circle-gauge-D1whQBBI.js +6 -0
- langflow/frontend/assets/circle-help-DTvoqPm9.js +6 -0
- langflow/frontend/assets/circle-minus-DbAVK8gs.js +6 -0
- langflow/frontend/assets/circle-off-BgDZaql4.js +6 -0
- langflow/frontend/assets/circle-parking-7OC9NdSJ.js +6 -0
- langflow/frontend/assets/circle-parking-off-BGDZDlhS.js +6 -0
- langflow/frontend/assets/circle-pause-DcpqhY4z.js +6 -0
- langflow/frontend/assets/circle-percent-pewKzWce.js +6 -0
- langflow/frontend/assets/circle-play-2y8KwPRR.js +6 -0
- langflow/frontend/assets/circle-plus-D0PDnHno.js +6 -0
- langflow/frontend/assets/circle-power-D7WcMrhN.js +6 -0
- langflow/frontend/assets/circle-slash-2-BjpHAhly.js +6 -0
- langflow/frontend/assets/circle-slash-D7eGpJzk.js +6 -0
- langflow/frontend/assets/circle-small-D2rIC7CY.js +6 -0
- langflow/frontend/assets/circle-stop-BUZqaquT.js +6 -0
- langflow/frontend/assets/circle-user-MtGkEAO0.js +6 -0
- langflow/frontend/assets/circle-user-round-BWCMkI0X.js +6 -0
- langflow/frontend/assets/circuit-board-wWvxCT1Z.js +6 -0
- langflow/frontend/assets/citrus-oqCVmLTv.js +6 -0
- langflow/frontend/assets/clapperboard-D-tG8IJ-.js +6 -0
- langflow/frontend/assets/clipboard-ClTJNl9o.js +6 -0
- langflow/frontend/assets/clipboard-check-BhUrMOzo.js +6 -0
- langflow/frontend/assets/clipboard-copy-BsUNmGRu.js +6 -0
- langflow/frontend/assets/clipboard-list-QIxeDhpF.js +6 -0
- langflow/frontend/assets/clipboard-minus-0pd6K21W.js +6 -0
- langflow/frontend/assets/clipboard-paste-B47VCs_4.js +6 -0
- langflow/frontend/assets/clipboard-pen-Ctecdlrt.js +6 -0
- langflow/frontend/assets/clipboard-pen-line-CHfgNevI.js +6 -0
- langflow/frontend/assets/clipboard-plus-st5sZ5-j.js +6 -0
- langflow/frontend/assets/clipboard-type-DMrKOdE_.js +6 -0
- langflow/frontend/assets/clipboard-x-tb2H5EoM.js +6 -0
- langflow/frontend/assets/clock-1-CUU0V973.js +6 -0
- langflow/frontend/assets/clock-10-q0uaDBmU.js +6 -0
- langflow/frontend/assets/clock-11-DAjGZFmP.js +6 -0
- langflow/frontend/assets/clock-12-D6fkn7Tv.js +6 -0
- langflow/frontend/assets/clock-2-BIyO9Pgx.js +6 -0
- langflow/frontend/assets/clock-3-GuASqSMO.js +6 -0
- langflow/frontend/assets/clock-4-CgSZXRlg.js +6 -0
- langflow/frontend/assets/clock-5-CTbaoUdy.js +6 -0
- langflow/frontend/assets/clock-6-C02Kg74z.js +6 -0
- langflow/frontend/assets/clock-7-DLJK7aUO.js +6 -0
- langflow/frontend/assets/clock-8-DY4UpQ3I.js +6 -0
- langflow/frontend/assets/clock-9-PfpxlzNP.js +6 -0
- langflow/frontend/assets/clock-D9Ia9heH.js +6 -0
- langflow/frontend/assets/clock-alert--zyosldl.js +6 -0
- langflow/frontend/assets/clock-arrow-down-BFSPb4PP.js +6 -0
- langflow/frontend/assets/clock-arrow-up-Civ0eqJv.js +6 -0
- langflow/frontend/assets/clock-fading-Ef5FY0hG.js +6 -0
- langflow/frontend/assets/cloud-alert-X_M36tgo.js +6 -0
- langflow/frontend/assets/cloud-cog-OJdqL8Vi.js +6 -0
- langflow/frontend/assets/cloud-download-pHZ4Jcpz.js +6 -0
- langflow/frontend/assets/cloud-drizzle-BMQrHzfm.js +6 -0
- langflow/frontend/assets/cloud-fog-B2wy3Jlh.js +6 -0
- langflow/frontend/assets/cloud-hail-C_35hXdP.js +6 -0
- langflow/frontend/assets/cloud-lightning-CoKf6VsW.js +6 -0
- langflow/frontend/assets/cloud-moon-02NWUEnX.js +6 -0
- langflow/frontend/assets/cloud-moon-rain-CnQjjZZ6.js +6 -0
- langflow/frontend/assets/cloud-off-D_38ldJY.js +6 -0
- langflow/frontend/assets/cloud-rain-ByFqaLK9.js +6 -0
- langflow/frontend/assets/cloud-rain-wind-DufxKNtC.js +6 -0
- langflow/frontend/assets/cloud-sd0d0_fr.js +6 -0
- langflow/frontend/assets/cloud-snow-DV2VAQdy.js +6 -0
- langflow/frontend/assets/cloud-sun-CS9Q-Nel.js +6 -0
- langflow/frontend/assets/cloud-sun-rain-3-9vglOw.js +6 -0
- langflow/frontend/assets/cloud-upload-CpUgWK_N.js +6 -0
- langflow/frontend/assets/cloudy-BQ9g3wfi.js +6 -0
- langflow/frontend/assets/clover-G6B85aQR.js +6 -0
- langflow/frontend/assets/club-BQx1ewS4.js +6 -0
- langflow/frontend/assets/code-xml-DyWGGOPS.js +6 -0
- langflow/frontend/assets/codepen-B29Vj0AG.js +6 -0
- langflow/frontend/assets/codesandbox-CMnUQzQD.js +6 -0
- langflow/frontend/assets/coffee-BSkcH0MI.js +6 -0
- langflow/frontend/assets/cog-zVHMemn0.js +6 -0
- langflow/frontend/assets/coins-BQ-IbPWT.js +6 -0
- langflow/frontend/assets/columns-2-AnUCWtuZ.js +6 -0
- langflow/frontend/assets/columns-3-Ce0nNosW.js +6 -0
- langflow/frontend/assets/columns-3-cog-0pMtbMd-.js +6 -0
- langflow/frontend/assets/columns-4-C26EKhUO.js +6 -0
- langflow/frontend/assets/combine-qijrq0j0.js +6 -0
- langflow/frontend/assets/command-xDjo1fXY.js +6 -0
- langflow/frontend/assets/compass-40OgO7cL.js +6 -0
- langflow/frontend/assets/component-D-4zw18E.js +6 -0
- langflow/frontend/assets/computer-Bb-9wpWf.js +6 -0
- langflow/frontend/assets/concierge-bell-Bs_P7IDT.js +6 -0
- langflow/frontend/assets/cone-BnTDaaXX.js +6 -0
- langflow/frontend/assets/construction-MqPC2xE9.js +6 -0
- langflow/frontend/assets/contact-HS_H1Amb.js +6 -0
- langflow/frontend/assets/contact-round-BqcTnhVJ.js +6 -0
- langflow/frontend/assets/container-DGELqX4n.js +6 -0
- langflow/frontend/assets/contrast-Cba5NJz9.js +6 -0
- langflow/frontend/assets/cookie-TiGfIL4Z.js +6 -0
- langflow/frontend/assets/cooking-pot-DS-66mBu.js +6 -0
- langflow/frontend/assets/copy-check-D5_qks-T.js +6 -0
- langflow/frontend/assets/copy-iQ_JNkV2.js +6 -0
- langflow/frontend/assets/copy-minus-CiCCpXjv.js +6 -0
- langflow/frontend/assets/copy-plus-DZ6IVh6l.js +6 -0
- langflow/frontend/assets/copy-slash-DJpRn_d0.js +6 -0
- langflow/frontend/assets/copy-x-B1SRWp3Z.js +6 -0
- langflow/frontend/assets/copyleft-CwGxM0FQ.js +6 -0
- langflow/frontend/assets/copyright-Cb6NhYfY.js +6 -0
- langflow/frontend/assets/corner-down-left-CyYCkrO9.js +6 -0
- langflow/frontend/assets/corner-down-right-CQTs69Wv.js +6 -0
- langflow/frontend/assets/corner-left-down-Biky6PpP.js +6 -0
- langflow/frontend/assets/corner-left-up-ClakI_sx.js +6 -0
- langflow/frontend/assets/corner-right-down-CT4XUC0Y.js +6 -0
- langflow/frontend/assets/corner-right-up-D-9JXYE3.js +6 -0
- langflow/frontend/assets/corner-up-left-BQZvhRWq.js +6 -0
- langflow/frontend/assets/corner-up-right-txrP0lLM.js +6 -0
- langflow/frontend/assets/cpu-fpIelFFN.js +6 -0
- langflow/frontend/assets/creative-commons-WnIC6bT1.js +6 -0
- langflow/frontend/assets/credit-card-B5XGEKAs.js +6 -0
- langflow/frontend/assets/croissant-CytcoiPI.js +6 -0
- langflow/frontend/assets/crop-CNssI4oM.js +6 -0
- langflow/frontend/assets/cross-GS_Xw4t2.js +6 -0
- langflow/frontend/assets/crosshair-B8sM8IzX.js +6 -0
- langflow/frontend/assets/crown-DNf5ckus.js +6 -0
- langflow/frontend/assets/cuboid-CxmbTA8D.js +6 -0
- langflow/frontend/assets/cup-soda-Dutc7xOD.js +6 -0
- langflow/frontend/assets/currency-BghQv0Z2.js +6 -0
- langflow/frontend/assets/cylinder-C_0Fp7QJ.js +6 -0
- langflow/frontend/assets/dam-DXzZpUnJ.js +6 -0
- langflow/frontend/assets/database-BGNRGl7O.js +6 -0
- langflow/frontend/assets/database-backup-It3E_N1S.js +6 -0
- langflow/frontend/assets/database-zap-CncNo01C.js +6 -0
- langflow/frontend/assets/decimals-arrow-left-DppGbfxl.js +6 -0
- langflow/frontend/assets/decimals-arrow-right-0C7ZMNny.js +6 -0
- langflow/frontend/assets/delete-F3Cw_6ye.js +6 -0
- langflow/frontend/assets/dessert-CF5OWFRH.js +6 -0
- langflow/frontend/assets/diameter-Cnf5-UwJ.js +6 -0
- langflow/frontend/assets/diamond-CnMEVGVq.js +6 -0
- langflow/frontend/assets/diamond-minus-Ckt6A3hC.js +6 -0
- langflow/frontend/assets/diamond-percent-DctcOWRA.js +6 -0
- langflow/frontend/assets/diamond-plus-BY2Lhcm3.js +6 -0
- langflow/frontend/assets/dice-1-HcMDbokI.js +6 -0
- langflow/frontend/assets/dice-2-BpvF3HMY.js +6 -0
- langflow/frontend/assets/dice-3-fRvD-dQk.js +6 -0
- langflow/frontend/assets/dice-4-qt09lOYy.js +6 -0
- langflow/frontend/assets/dice-5-6CVUNXl8.js +6 -0
- langflow/frontend/assets/dice-6-EYe8e-bQ.js +6 -0
- langflow/frontend/assets/dices-BuxvFS2F.js +6 -0
- langflow/frontend/assets/diff-DvRcI8ka.js +6 -0
- langflow/frontend/assets/disc-2-BxRqyAsn.js +6 -0
- langflow/frontend/assets/disc-3-CvX-oqUB.js +6 -0
- langflow/frontend/assets/disc-88VI5vk-.js +6 -0
- langflow/frontend/assets/disc-album-9vJwjI9u.js +6 -0
- langflow/frontend/assets/divide-DjSfvHRd.js +6 -0
- langflow/frontend/assets/dna-DKik6eTc.js +6 -0
- langflow/frontend/assets/dna-off-BlPboZwU.js +6 -0
- langflow/frontend/assets/dock-DsrVg5kM.js +6 -0
- langflow/frontend/assets/dog-BQ_pyc-Y.js +6 -0
- langflow/frontend/assets/dollar-sign-BcCJ81JM.js +6 -0
- langflow/frontend/assets/donut-Gu53j78o.js +6 -0
- langflow/frontend/assets/door-closed-CjzpJYWU.js +6 -0
- langflow/frontend/assets/door-open-yBJWY9gV.js +6 -0
- langflow/frontend/assets/dot-D9DAVIZe.js +6 -0
- langflow/frontend/assets/download-BPm4IaMg.js +6 -0
- langflow/frontend/assets/drafting-compass--bkWM4Rt.js +6 -0
- langflow/frontend/assets/drama-CdAK8SJH.js +6 -0
- langflow/frontend/assets/dribbble-Rr-xrzHx.js +6 -0
- langflow/frontend/assets/drill-D5M2KPjP.js +6 -0
- langflow/frontend/assets/droplet-m3J0bDQ9.js +6 -0
- langflow/frontend/assets/droplet-off-DEvutFmU.js +6 -0
- langflow/frontend/assets/droplets-CtbZ0Nj7.js +6 -0
- langflow/frontend/assets/drum-Bk7Ltjlj.js +6 -0
- langflow/frontend/assets/drumstick-Dt55S9C8.js +6 -0
- langflow/frontend/assets/dumbbell-CgF3VfO_.js +6 -0
- langflow/frontend/assets/ear-DnWEOSLb.js +6 -0
- langflow/frontend/assets/ear-off-BerACZyc.js +6 -0
- langflow/frontend/assets/earth-dunFCe-v.js +6 -0
- langflow/frontend/assets/earth-lock-B-qoUtct.js +6 -0
- langflow/frontend/assets/eclipse-DQbRwBhc.js +6 -0
- langflow/frontend/assets/egg-Q7kDbnVO.js +6 -0
- langflow/frontend/assets/egg-fried-Dpjhw8EO.js +6 -0
- langflow/frontend/assets/egg-off-BUOfwj2j.js +6 -0
- langflow/frontend/assets/ellipsis-DWkFFB3i.js +6 -0
- langflow/frontend/assets/ellipsis-vertical-C_7RDOeG.js +6 -0
- langflow/frontend/assets/equal-CoQw3Zg7.js +6 -0
- langflow/frontend/assets/equal-approximately-DEwpuH9U.js +6 -0
- langflow/frontend/assets/equal-not-CUs0NFk6.js +6 -0
- langflow/frontend/assets/eraser-DzVU4nMu.js +6 -0
- langflow/frontend/assets/ethernet-port-C9BfP7L4.js +6 -0
- langflow/frontend/assets/euro-DKRXsBRi.js +6 -0
- langflow/frontend/assets/expand-9cuh98c8.js +6 -0
- langflow/frontend/assets/eye-DfM59ZZW.js +6 -0
- langflow/frontend/assets/eye-closed-CufTHV8Y.js +6 -0
- langflow/frontend/assets/eye-off-D7kT_L4q.js +6 -0
- langflow/frontend/assets/facebook-bt0dC2tM.js +6 -0
- langflow/frontend/assets/factory-Ie1CJCnF.js +6 -0
- langflow/frontend/assets/fan-LxprqMWb.js +6 -0
- langflow/frontend/assets/fast-forward-JyHe7CV2.js +6 -0
- langflow/frontend/assets/feather-D9hVYAUV.js +6 -0
- langflow/frontend/assets/fence-Bt2GAQed.js +6 -0
- langflow/frontend/assets/ferris-wheel-DaNAGEmM.js +6 -0
- langflow/frontend/assets/figma-BIR275F4.js +6 -0
- langflow/frontend/assets/file-DVeNIRB3.js +6 -0
- langflow/frontend/assets/file-archive-VpREZIUi.js +6 -0
- langflow/frontend/assets/file-audio-2-B-yrg8Rz.js +6 -0
- langflow/frontend/assets/file-audio-jM0ZVuOx.js +6 -0
- langflow/frontend/assets/file-axis-3d-BpcLKyg_.js +6 -0
- langflow/frontend/assets/file-badge-2-CGjtYMv1.js +6 -0
- langflow/frontend/assets/file-badge-BSt1l_WA.js +6 -0
- langflow/frontend/assets/file-box-C_a8JCNO.js +6 -0
- langflow/frontend/assets/file-chart-column-9Py3tGdD.js +6 -0
- langflow/frontend/assets/file-chart-column-increasing-F1C9y24C.js +6 -0
- langflow/frontend/assets/file-chart-line-BuRbF5_Y.js +6 -0
- langflow/frontend/assets/file-chart-pie-B6kpbzRN.js +6 -0
- langflow/frontend/assets/file-check-2-B_mo4bXF.js +6 -0
- langflow/frontend/assets/file-check-DIYBh0Xu.js +6 -0
- langflow/frontend/assets/file-clock-r-k_U-Cx.js +6 -0
- langflow/frontend/assets/file-code-2-DGDSsDjn.js +6 -0
- langflow/frontend/assets/file-code-kj-49n2G.js +6 -0
- langflow/frontend/assets/file-cog-CUNuKES2.js +6 -0
- langflow/frontend/assets/file-diff-uWziA2C8.js +6 -0
- langflow/frontend/assets/file-digit-Cq2QZJPr.js +6 -0
- langflow/frontend/assets/file-down-di8_WVmc.js +6 -0
- langflow/frontend/assets/file-heart-CJMOShlZ.js +6 -0
- langflow/frontend/assets/file-image-7VnsoJzf.js +6 -0
- langflow/frontend/assets/file-input-BRdR2Iqm.js +6 -0
- langflow/frontend/assets/file-json-2-Bd7KRBwA.js +6 -0
- langflow/frontend/assets/file-json-CxpBvSeL.js +6 -0
- langflow/frontend/assets/file-key-2-BnbpCdnA.js +6 -0
- langflow/frontend/assets/file-key-D4mq2inr.js +6 -0
- langflow/frontend/assets/file-lock-2-D35FlqO6.js +6 -0
- langflow/frontend/assets/file-lock-BsLN8ivh.js +6 -0
- langflow/frontend/assets/file-minus-2-DiCtTLy_.js +6 -0
- langflow/frontend/assets/file-minus-Czy9XFsr.js +6 -0
- langflow/frontend/assets/file-music-qwmZBWH5.js +6 -0
- langflow/frontend/assets/file-output-BfM7RW2p.js +6 -0
- langflow/frontend/assets/file-pen-IT6qCeZE.js +6 -0
- langflow/frontend/assets/file-pen-line-B_kFaoQp.js +6 -0
- langflow/frontend/assets/file-plus-2-Bx-XMP5a.js +6 -0
- langflow/frontend/assets/file-plus-CSg2K6Kc.js +6 -0
- langflow/frontend/assets/file-question-BI2uHyLk.js +6 -0
- langflow/frontend/assets/file-scan-C2u1Weq3.js +6 -0
- langflow/frontend/assets/file-search-2-BXUv_UPS.js +6 -0
- langflow/frontend/assets/file-search-DeMMfTW9.js +6 -0
- langflow/frontend/assets/file-sliders-D7sOABUZ.js +6 -0
- langflow/frontend/assets/file-spreadsheet-ljGfaFp4.js +6 -0
- langflow/frontend/assets/file-stack-BMZ2kTBj.js +6 -0
- langflow/frontend/assets/file-symlink-DlkPl1N7.js +6 -0
- langflow/frontend/assets/file-terminal-DlUhm9ct.js +6 -0
- langflow/frontend/assets/file-text-C_7MEPeN.js +6 -0
- langflow/frontend/assets/file-type-2-CNx2HHPs.js +6 -0
- langflow/frontend/assets/file-type-MLpMLybD.js +6 -0
- langflow/frontend/assets/file-up-qFQCsN6t.js +6 -0
- langflow/frontend/assets/file-user-Czm_ZenO.js +6 -0
- langflow/frontend/assets/file-video-2-BmQkl6Af.js +6 -0
- langflow/frontend/assets/file-video-DmoNZ_PH.js +6 -0
- langflow/frontend/assets/file-volume-2-ClNY-6dj.js +6 -0
- langflow/frontend/assets/file-volume-96lDguhH.js +6 -0
- langflow/frontend/assets/file-warning-BzTT_h23.js +6 -0
- langflow/frontend/assets/file-x-2-D5jphfdP.js +6 -0
- langflow/frontend/assets/file-x-CdlycWJK.js +6 -0
- langflow/frontend/assets/files-D2s65Qur.js +6 -0
- langflow/frontend/assets/film-DxZl5nh0.js +6 -0
- langflow/frontend/assets/fingerprint-Dvf6NX7k.js +6 -0
- langflow/frontend/assets/fire-extinguisher-pLGXvC01.js +6 -0
- langflow/frontend/assets/fish-Cms_f8Xu.js +6 -0
- langflow/frontend/assets/fish-off-NIYHWkGM.js +6 -0
- langflow/frontend/assets/fish-symbol-u_RKPyIz.js +6 -0
- langflow/frontend/assets/flag-DQJjqwdV.js +6 -0
- langflow/frontend/assets/flag-off-CzQf8vsm.js +6 -0
- langflow/frontend/assets/flag-triangle-left-zl-5PcyN.js +6 -0
- langflow/frontend/assets/flag-triangle-right-ChgiiQS1.js +6 -0
- langflow/frontend/assets/flame-BRjSBRcv.js +6 -0
- langflow/frontend/assets/flame-kindling-DL9GSUPS.js +6 -0
- langflow/frontend/assets/flashlight-S9uKWRge.js +6 -0
- langflow/frontend/assets/flashlight-off-D_5pWdDf.js +6 -0
- langflow/frontend/assets/flask-conical-CxSk0Ye2.js +6 -0
- langflow/frontend/assets/flask-conical-off-D0qXXYzd.js +6 -0
- langflow/frontend/assets/flask-round-Cm1EeQog.js +6 -0
- langflow/frontend/assets/flip-horizontal-2-CiicAelk.js +6 -0
- langflow/frontend/assets/flip-horizontal-DzU6OoDY.js +6 -0
- langflow/frontend/assets/flip-vertical-2-D7NpvDiS.js +6 -0
- langflow/frontend/assets/flip-vertical-D5zZqtcB.js +6 -0
- langflow/frontend/assets/flower-2-CexztYf1.js +6 -0
- langflow/frontend/assets/flower-Bma54DNC.js +6 -0
- langflow/frontend/assets/focus-BfN4N87r.js +6 -0
- langflow/frontend/assets/fold-horizontal-JLSkx5Ul.js +6 -0
- langflow/frontend/assets/fold-vertical-C8KNIM_1.js +6 -0
- langflow/frontend/assets/folder-archive-BqffCI6s.js +6 -0
- langflow/frontend/assets/folder-check-DOeoM9Ui.js +6 -0
- langflow/frontend/assets/folder-clock-DY8Py7Yo.js +6 -0
- langflow/frontend/assets/folder-closed-8Sjt5Q_M.js +6 -0
- langflow/frontend/assets/folder-code-af2KOgrM.js +6 -0
- langflow/frontend/assets/folder-cog-CG8S-nJf.js +6 -0
- langflow/frontend/assets/folder-dot-Bn_AK8ht.js +6 -0
- langflow/frontend/assets/folder-down-Cdg7RppH.js +6 -0
- langflow/frontend/assets/folder-eVmqxqLu.js +6 -0
- langflow/frontend/assets/folder-git-2-CS7p8jPS.js +6 -0
- langflow/frontend/assets/folder-git-BEvtNhYB.js +6 -0
- langflow/frontend/assets/folder-heart-B3357bQ7.js +6 -0
- langflow/frontend/assets/folder-input-CS54jGvm.js +6 -0
- langflow/frontend/assets/folder-kanban-CfsbatY0.js +6 -0
- langflow/frontend/assets/folder-key-C8fVwDGj.js +6 -0
- langflow/frontend/assets/folder-lock-DWlbGIuU.js +6 -0
- langflow/frontend/assets/folder-minus-BgrJAll7.js +6 -0
- langflow/frontend/assets/folder-open-BpUXP460.js +6 -0
- langflow/frontend/assets/folder-open-dot-DwAfKF1I.js +6 -0
- langflow/frontend/assets/folder-output-BvntvXWn.js +6 -0
- langflow/frontend/assets/folder-pen-C7R4xK75.js +6 -0
- langflow/frontend/assets/folder-plus-C13gniOb.js +6 -0
- langflow/frontend/assets/folder-root-byXl6PUE.js +6 -0
- langflow/frontend/assets/folder-search-2-CprKqiKf.js +6 -0
- langflow/frontend/assets/folder-search-B704Twr9.js +6 -0
- langflow/frontend/assets/folder-symlink-DV-YEYTe.js +6 -0
- langflow/frontend/assets/folder-sync-DmFfBIzv.js +6 -0
- langflow/frontend/assets/folder-tree-BwA8hS45.js +6 -0
- langflow/frontend/assets/folder-up-dfRL3ZbO.js +6 -0
- langflow/frontend/assets/folder-x-DdS1Kh6E.js +6 -0
- langflow/frontend/assets/folders-jURfeUYW.js +6 -0
- langflow/frontend/assets/footprints-C3DhUQi1.js +6 -0
- langflow/frontend/assets/forklift-Dsb8hU2a.js +6 -0
- langflow/frontend/assets/forward-4ryXowC_.js +6 -0
- langflow/frontend/assets/frame-BcnUbN8A.js +6 -0
- langflow/frontend/assets/framer-DSJuC3Ej.js +6 -0
- langflow/frontend/assets/frown-bORFKAs-.js +6 -0
- langflow/frontend/assets/fuel-BD7G4Lam.js +6 -0
- langflow/frontend/assets/fullscreen-1-vF6jDJ.js +6 -0
- langflow/frontend/assets/funnel-BEjJpk-D.js +6 -0
- langflow/frontend/assets/funnel-plus-Cwb3P2We.js +6 -0
- langflow/frontend/assets/funnel-x-DB866IWX.js +6 -0
- langflow/frontend/assets/gallery-horizontal-MVzvwubX.js +6 -0
- langflow/frontend/assets/gallery-horizontal-end-BqPCJklr.js +6 -0
- langflow/frontend/assets/gallery-thumbnails-tksV-fzS.js +6 -0
- langflow/frontend/assets/gallery-vertical-CwDEqkCI.js +6 -0
- langflow/frontend/assets/gallery-vertical-end-CM57RekV.js +6 -0
- langflow/frontend/assets/gamepad-2-DWFvNiTD.js +6 -0
- langflow/frontend/assets/gamepad-BhI1fwnk.js +6 -0
- langflow/frontend/assets/gauge-pm_LFK3O.js +6 -0
- langflow/frontend/assets/gavel-BA_oTbL9.js +6 -0
- langflow/frontend/assets/gem-C3ngjhCw.js +6 -0
- langflow/frontend/assets/ghost-BF-FyixJ.js +6 -0
- langflow/frontend/assets/gift-DXVBCeHi.js +6 -0
- langflow/frontend/assets/git-branch-CvymwRNH.js +6 -0
- langflow/frontend/assets/git-branch-plus-CBvvPXl7.js +6 -0
- langflow/frontend/assets/git-commit-horizontal-9RbPhyua.js +6 -0
- langflow/frontend/assets/git-commit-vertical-D5cBOLH7.js +6 -0
- langflow/frontend/assets/git-compare-arrows-JsHSBf7B.js +6 -0
- langflow/frontend/assets/git-compare-bNqBra3R.js +6 -0
- langflow/frontend/assets/git-fork-DHR8LFdx.js +6 -0
- langflow/frontend/assets/git-graph-C-KsT4_y.js +6 -0
- langflow/frontend/assets/git-merge-CJviIaGN.js +6 -0
- langflow/frontend/assets/git-pull-request-VeeK2-yo.js +6 -0
- langflow/frontend/assets/git-pull-request-arrow-D5tXBIXv.js +6 -0
- langflow/frontend/assets/git-pull-request-closed-BLteWwtB.js +6 -0
- langflow/frontend/assets/git-pull-request-create-DIcNHYxH.js +6 -0
- langflow/frontend/assets/git-pull-request-create-arrow-BT0Y1rqZ.js +6 -0
- langflow/frontend/assets/git-pull-request-draft-Bbwzg6vX.js +6 -0
- langflow/frontend/assets/github-DLwvmAC1.js +6 -0
- langflow/frontend/assets/gitlab-DtCtYN7A.js +6 -0
- langflow/frontend/assets/glass-water-D2Y_kLyA.js +6 -0
- langflow/frontend/assets/glasses-CtHdOWfR.js +6 -0
- langflow/frontend/assets/globe-lock-B9ATkXdO.js +6 -0
- langflow/frontend/assets/globe-mb9Bd_p-.js +6 -0
- langflow/frontend/assets/goal-D_saei_u.js +6 -0
- langflow/frontend/assets/grab-BxnPY0g2.js +6 -0
- langflow/frontend/assets/graduation-cap-CUs3RC3F.js +6 -0
- langflow/frontend/assets/grape-CKMb2mkd.js +6 -0
- langflow/frontend/assets/grid-2x2-BWVzxLQw.js +6 -0
- langflow/frontend/assets/grid-2x2-check-DUj9ZJqn.js +6 -0
- langflow/frontend/assets/grid-2x2-plus-BT-EsIOn.js +6 -0
- langflow/frontend/assets/grid-2x2-x-DxReUbA5.js +6 -0
- langflow/frontend/assets/grid-3x3-C_ligFpx.js +6 -0
- langflow/frontend/assets/grip-B_KD3YUU.js +6 -0
- langflow/frontend/assets/grip-horizontal-BZ3Vv2Ha.js +6 -0
- langflow/frontend/assets/grip-vertical-BETUt37g.js +6 -0
- langflow/frontend/assets/group-BNmcogVv.js +6 -0
- langflow/frontend/assets/guitar-W4OktqAe.js +6 -0
- langflow/frontend/assets/ham-CVCR1uS6.js +6 -0
- langflow/frontend/assets/hammer-BWh1SXlv.js +6 -0
- langflow/frontend/assets/hand-C7TtnIa3.js +6 -0
- langflow/frontend/assets/hand-coins-gDwx7SVi.js +6 -0
- langflow/frontend/assets/hand-heart-rA9LGnON.js +6 -0
- langflow/frontend/assets/hand-helping-0S22McQF.js +6 -0
- langflow/frontend/assets/hand-metal-BRS4Qm3s.js +6 -0
- langflow/frontend/assets/hand-platter-CLqrlgex.js +6 -0
- langflow/frontend/assets/handshake-Bt0bcpFJ.js +6 -0
- langflow/frontend/assets/hard-drive-CRYjv4W-.js +6 -0
- langflow/frontend/assets/hard-drive-download-CY7chV9Q.js +6 -0
- langflow/frontend/assets/hard-drive-upload-P-zTZlIN.js +6 -0
- langflow/frontend/assets/hard-hat-CiAbIFtZ.js +6 -0
- langflow/frontend/assets/hash-B5ffTNt7.js +6 -0
- langflow/frontend/assets/haze-4j36iUtw.js +6 -0
- langflow/frontend/assets/hdmi-port-DW9O8GNF.js +6 -0
- langflow/frontend/assets/heading-1-qvUkh-3B.js +6 -0
- langflow/frontend/assets/heading-2-BR9BEcEH.js +6 -0
- langflow/frontend/assets/heading-3-DY9Zf3vZ.js +6 -0
- langflow/frontend/assets/heading-4-DNahwYJC.js +6 -0
- langflow/frontend/assets/heading-5-Ci_pbAP7.js +6 -0
- langflow/frontend/assets/heading-6-BWA32eyj.js +6 -0
- langflow/frontend/assets/heading-C7KLVz9g.js +6 -0
- langflow/frontend/assets/headphone-off-CTBK5huX.js +6 -0
- langflow/frontend/assets/headphones-CvpfHeBw.js +6 -0
- langflow/frontend/assets/headset-D6a1tEnQ.js +6 -0
- langflow/frontend/assets/heart-CegSgV3K.js +6 -0
- langflow/frontend/assets/heart-crack-C_pCvIp3.js +6 -0
- langflow/frontend/assets/heart-handshake-BKILJI-d.js +6 -0
- langflow/frontend/assets/heart-minus-H31H2CjD.js +6 -0
- langflow/frontend/assets/heart-off-D7RaIGZM.js +6 -0
- langflow/frontend/assets/heart-plus-BzjaA-vB.js +6 -0
- langflow/frontend/assets/heart-pulse-qBJcE0u6.js +6 -0
- langflow/frontend/assets/heater-DK20eg_l.js +6 -0
- langflow/frontend/assets/hexagon-CVp0ssY4.js +6 -0
- langflow/frontend/assets/highlighter-C99QVyyU.js +6 -0
- langflow/frontend/assets/history-D8wfKqDa.js +6 -0
- langflow/frontend/assets/hop-D3dNEcSg.js +6 -0
- langflow/frontend/assets/hop-off-BLuyaOPs.js +6 -0
- langflow/frontend/assets/hospital-CcVqiCkI.js +6 -0
- langflow/frontend/assets/hotel-CyO8UKhp.js +6 -0
- langflow/frontend/assets/hourglass-BhWwaV7W.js +6 -0
- langflow/frontend/assets/house-DSBGYwYC.js +6 -0
- langflow/frontend/assets/house-plug-Cexilfei.js +6 -0
- langflow/frontend/assets/house-plus-BsgGJ5Yf.js +6 -0
- langflow/frontend/assets/house-wifi-DBFvR9TZ.js +6 -0
- langflow/frontend/assets/ice-cream-bowl-Dof7QD1I.js +6 -0
- langflow/frontend/assets/ice-cream-cone-CthW8x9G.js +6 -0
- langflow/frontend/assets/id-card-D5dEmhp_.js +6 -0
- langflow/frontend/assets/image-BdfQPOA_.js +6 -0
- langflow/frontend/assets/image-down-B5rjh0eb.js +6 -0
- langflow/frontend/assets/image-minus-B5F4zilt.js +6 -0
- langflow/frontend/assets/image-off-iZqLyP3o.js +6 -0
- langflow/frontend/assets/image-play-Cdd_sPBz.js +6 -0
- langflow/frontend/assets/image-plus-Bsgt4Tfk.js +6 -0
- langflow/frontend/assets/image-up-R3S-Fb_a.js +6 -0
- langflow/frontend/assets/image-upscale-usmdTndn.js +6 -0
- langflow/frontend/assets/images-CLONhCoO.js +6 -0
- langflow/frontend/assets/import-GkIxe6Nc.js +6 -0
- langflow/frontend/assets/inbox-C32wQ12t.js +6 -0
- langflow/frontend/assets/indent-decrease-B9_yCuAJ.js +6 -0
- langflow/frontend/assets/indent-increase-Cz2JLS0b.js +6 -0
- langflow/frontend/assets/index-0phF0hAW.js +1 -0
- langflow/frontend/assets/index-190xvA68.js +1 -0
- langflow/frontend/assets/index-25_Qp26P.js +1 -0
- langflow/frontend/assets/index-2MtSuMmd.js +1 -0
- langflow/frontend/assets/index-5D92uxEJ.js +1 -0
- langflow/frontend/assets/index-6BJZ9Pmp.js +1 -0
- langflow/frontend/assets/index-94gla548.js +1 -0
- langflow/frontend/assets/index-AuZe-ngU.js +381 -0
- langflow/frontend/assets/index-B0HiEU_s.js +1 -0
- langflow/frontend/assets/index-B15lQ_2z.js +1 -0
- langflow/frontend/assets/index-B3OK8N2u.js +1 -0
- langflow/frontend/assets/index-B3Yt68yy.js +1 -0
- langflow/frontend/assets/index-B5Zvq_Pb.js +1 -0
- langflow/frontend/assets/index-B6NZoXiJ.js +7 -0
- langflow/frontend/assets/index-B85_Dksv.js +1 -0
- langflow/frontend/assets/index-BEMjoSH7.js +1 -0
- langflow/frontend/assets/index-BF1oPeYf.js +1 -0
- langflow/frontend/assets/index-BF353yvx.js +1 -0
- langflow/frontend/assets/index-BFD8SY9I.js +1 -0
- langflow/frontend/assets/index-BFVJpgU8.js +1 -0
- langflow/frontend/assets/index-BGLqZQ5F.js +1 -0
- langflow/frontend/assets/index-BHgI-kgJ.js +1 -0
- langflow/frontend/assets/index-BJO0z3G0.js +1 -0
- langflow/frontend/assets/index-BKNu5vZa.js +205 -0
- langflow/frontend/assets/index-BMaP8pXZ.js +1 -0
- langflow/frontend/assets/index-BMo4bXAs.css +1 -0
- langflow/frontend/assets/index-BP9yxPCl.js +1 -0
- langflow/frontend/assets/index-BQ61IrZU.js +185 -0
- langflow/frontend/assets/index-BSQGtvtI.js +1 -0
- langflow/frontend/assets/index-BXIMxiON.js +1 -0
- langflow/frontend/assets/index-BYTys_GB.js +1 -0
- langflow/frontend/assets/index-BYXzjVHC.js +1 -0
- langflow/frontend/assets/index-BZFHtvHK.js +1 -0
- langflow/frontend/assets/index-B_jd7JB6.js +1 -0
- langflow/frontend/assets/index-B_r_WXxu.js +1 -0
- langflow/frontend/assets/index-B_yqjRPz.js +1 -0
- langflow/frontend/assets/index-BadcH9fn.js +1 -0
- langflow/frontend/assets/index-Bae3Qz10.js +1 -0
- langflow/frontend/assets/index-BbOBJJKV.js +1 -0
- langflow/frontend/assets/index-BgwF8LI8.js +1 -0
- langflow/frontend/assets/index-BhdwDbaJ.js +1 -0
- langflow/frontend/assets/index-Bi4c-giG.js +1 -0
- langflow/frontend/assets/index-Bip6ySuQ.js +1 -0
- langflow/frontend/assets/index-BkbCY_dl.js +1 -0
- langflow/frontend/assets/index-BlOlBfRg.js +1 -0
- langflow/frontend/assets/index-Blhx-SP4.js +1 -0
- langflow/frontend/assets/index-Bnb7QBfu.js +1 -0
- langflow/frontend/assets/index-Bnss_nit.js +1 -0
- langflow/frontend/assets/index-BpNqCkB1.js +1 -0
- langflow/frontend/assets/index-BqRKzkF1.js +1 -0
- langflow/frontend/assets/index-Bsjnh87F.js +1 -0
- langflow/frontend/assets/index-Btaf2a3s.js +1 -0
- langflow/frontend/assets/index-Bu9v3rac.js +1 -0
- langflow/frontend/assets/index-Bw_hOzan.js +1 -0
- langflow/frontend/assets/index-BwutGmgE.js +1 -0
- langflow/frontend/assets/index-ByweHquX.js +1 -0
- langflow/frontend/assets/index-Bz1CRp1o.js +1 -0
- langflow/frontend/assets/index-C1kmAgl5.js +1 -0
- langflow/frontend/assets/index-C2NO6tJj.js +1 -0
- langflow/frontend/assets/index-C2X7xzXv.js +1 -0
- langflow/frontend/assets/index-C3Qz98DK.js +1 -0
- langflow/frontend/assets/index-C3hN_tQ_.js +281 -0
- langflow/frontend/assets/index-C4MOo85o.js +1 -0
- langflow/frontend/assets/index-C64ecSrr.js +1 -0
- langflow/frontend/assets/index-C8-2C71K.js +1 -0
- langflow/frontend/assets/index-CArLAVm4.js +1 -0
- langflow/frontend/assets/index-CCgTZGr5.js +1 -0
- langflow/frontend/assets/index-CDSyGh8h.js +1 -0
- langflow/frontend/assets/index-CDZKnq7I.js +1 -0
- langflow/frontend/assets/index-CEgPuN0K.js +1 -0
- langflow/frontend/assets/index-CG1O4hT5.js +1 -0
- langflow/frontend/assets/index-CH2G7t7D.js +1 -0
- langflow/frontend/assets/index-CQdn9e1s.js +21 -0
- langflow/frontend/assets/index-CRMphHp1.js +1 -0
- langflow/frontend/assets/index-CRURQPcb.js +1 -0
- langflow/frontend/assets/index-CT1bvNKi.js +1 -0
- langflow/frontend/assets/index-CTVsEvAT.js +1 -0
- langflow/frontend/assets/index-CX2CahQs.js +1 -0
- langflow/frontend/assets/index-CXNxNpz_.js +1 -0
- langflow/frontend/assets/index-CYXf3ZKk.js +1 -0
- langflow/frontend/assets/index-CZNTNIYG.js +1 -0
- langflow/frontend/assets/index-C_40j3dV.js +1 -0
- langflow/frontend/assets/index-CcVZOh8b.js +1 -0
- langflow/frontend/assets/index-Cck8pnPg.js +1 -0
- langflow/frontend/assets/index-CdVB2QJD.js +1 -0
- langflow/frontend/assets/index-CeF2eL7q.js +1 -0
- langflow/frontend/assets/index-Cidr57qg.js +7323 -0
- langflow/frontend/assets/index-CjhZZUe9.js +1 -0
- langflow/frontend/assets/index-CkE4ffT5.js +1 -0
- langflow/frontend/assets/index-CocJsLpF.js +1 -0
- langflow/frontend/assets/index-CpUnm570.js +1 -0
- langflow/frontend/assets/index-CqOsAlB1.js +1 -0
- langflow/frontend/assets/index-Ctv5t9Ax.js +1 -0
- langflow/frontend/assets/index-Cu71RknM.js +1 -0
- langflow/frontend/assets/index-CuWoIZkj.js +1 -0
- langflow/frontend/assets/index-CuboaYvj.js +1 -0
- langflow/frontend/assets/index-CvnvFDEJ.js +108 -0
- langflow/frontend/assets/index-Cwrq5I4n.js +14 -0
- langflow/frontend/assets/index-CxBgryeO.js +1 -0
- langflow/frontend/assets/index-Cy-nj55q.js +1 -0
- langflow/frontend/assets/index-D-I17JZS.js +1 -0
- langflow/frontend/assets/index-D0_3pIA0.js +1 -0
- langflow/frontend/assets/index-D2-y5UBg.js +1 -0
- langflow/frontend/assets/index-D5p-Xdcb.js +1 -0
- langflow/frontend/assets/index-D7SXXArE.js +1 -0
- langflow/frontend/assets/index-D7ug5Mr4.js +1 -0
- langflow/frontend/assets/index-D8Ojh-k6.js +1 -0
- langflow/frontend/assets/index-D8UxwgB_.js +1 -0
- langflow/frontend/assets/index-DAxOth3t.js +1 -0
- langflow/frontend/assets/index-DB02OuvQ.js +767 -0
- langflow/frontend/assets/index-DB3P3gpX.js +1 -0
- langflow/frontend/assets/index-DDbpcVpi.js +1 -0
- langflow/frontend/assets/index-DDkfBk3_.js +1 -0
- langflow/frontend/assets/index-DE4WjdXi.js +1 -0
- langflow/frontend/assets/index-DFefZRt3.js +1 -0
- langflow/frontend/assets/index-DHhNCoxC.js +1 -0
- langflow/frontend/assets/index-DHvEjBzy.js +1 -0
- langflow/frontend/assets/index-DIeFK5un.js +1 -0
- langflow/frontend/assets/index-DJMrXx0h.js +1 -0
- langflow/frontend/assets/index-DMKTA8hO.js +1 -0
- langflow/frontend/assets/index-DNc0ObDi.js +1 -0
- langflow/frontend/assets/index-DPYWL9Xo.js +1 -0
- langflow/frontend/assets/index-DPpFAB_M.js +1 -0
- langflow/frontend/assets/index-DS6TyH60.js +1 -0
- langflow/frontend/assets/index-DSiPc20v.js +1 -0
- langflow/frontend/assets/index-DT6I0ji6.js +1 -0
- langflow/frontend/assets/index-DUPyoHu0.js +1 -0
- langflow/frontend/assets/index-DZ5HGZMy.js +1 -0
- langflow/frontend/assets/index-DZRwOBje.js +20 -0
- langflow/frontend/assets/index-De3N_i8c.js +1 -0
- langflow/frontend/assets/index-DjBhV7ZX.js +1 -0
- langflow/frontend/assets/index-DjCKJxoZ.js +1 -0
- langflow/frontend/assets/index-DknGB3mL.js +1 -0
- langflow/frontend/assets/index-DnDMuUOD.js +1 -0
- langflow/frontend/assets/index-DnMs3n1N.js +399 -0
- langflow/frontend/assets/index-DnqVuRVT.js +1 -0
- langflow/frontend/assets/index-DpJ0uzab.js +495 -0
- langflow/frontend/assets/index-DqSxHJgE.js +1 -0
- langflow/frontend/assets/index-DqrfBmrJ.js +1 -0
- langflow/frontend/assets/index-DrDOytJC.js +1 -0
- langflow/frontend/assets/index-DsDi0Bjj.js +1 -0
- langflow/frontend/assets/index-DsNVoDzR.js +127 -0
- langflow/frontend/assets/index-Dt50-PjL.js +1 -0
- langflow/frontend/assets/index-Du9lcEvb.js +1 -0
- langflow/frontend/assets/index-Dvu6DvO2.js +1 -0
- langflow/frontend/assets/index-DwBe9f6v.js +1 -0
- langflow/frontend/assets/index-DwtG8USV.js +1 -0
- langflow/frontend/assets/index-Dzc_q67O.js +1 -0
- langflow/frontend/assets/index-E0x1Hzu4.js +1 -0
- langflow/frontend/assets/index-GykK2iIn.js +1 -0
- langflow/frontend/assets/index-K8dAnAZF.js +1 -0
- langflow/frontend/assets/index-KFjasZlN.js +1 -0
- langflow/frontend/assets/index-KRFrreTx.js +1 -0
- langflow/frontend/assets/index-MZ8lJjwI.js +1 -0
- langflow/frontend/assets/index-PAdwqdYR.js +2 -0
- langflow/frontend/assets/index-PzWFAJc5.js +1 -0
- langflow/frontend/assets/index-QbN-AMm6.js +1 -0
- langflow/frontend/assets/index-SaFrAWJv.js +1 -0
- langflow/frontend/assets/index-Sg9rwmLa.js +1 -0
- langflow/frontend/assets/index-TdOK0iYE.js +1 -0
- langflow/frontend/assets/index-UVJZzmVG.js +1 -0
- langflow/frontend/assets/index-UfDqV7Th.js +1 -0
- langflow/frontend/assets/index-VPMVkUGa.js +1 -0
- langflow/frontend/assets/index-YYykW4Z0.js +1 -0
- langflow/frontend/assets/index-ZvMkdQ1T.js +1 -0
- langflow/frontend/assets/index-_X1FFLFO.js +1 -0
- langflow/frontend/assets/index-aX7kluAF.js +1 -0
- langflow/frontend/assets/index-b_iJY4LX.js +1 -0
- langflow/frontend/assets/index-eOFIpP6q.js +1 -0
- langflow/frontend/assets/index-i5xkcJo9.js +1 -0
- langflow/frontend/assets/index-j9XPM87F.js +1 -0
- langflow/frontend/assets/index-jX87eqGu.js +1 -0
- langflow/frontend/assets/index-kR3AdtE6.js +1 -0
- langflow/frontend/assets/index-kkPMNG8F.js +13 -0
- langflow/frontend/assets/index-lGKQ51bw.js +1 -0
- langflow/frontend/assets/index-nC0FZUl2.js +1 -0
- langflow/frontend/assets/index-nRNamDkS.js +1 -0
- langflow/frontend/assets/index-naRqFBGF.js +1 -0
- langflow/frontend/assets/index-oZYqaFMt.js +1 -0
- langflow/frontend/assets/index-p_O4RsMx.js +1 -0
- langflow/frontend/assets/index-sNtTAT5M.js +1 -0
- langflow/frontend/assets/index-tRn0T9eP.js +1 -0
- langflow/frontend/assets/index-u-PIynSn.js +1 -0
- langflow/frontend/assets/index-uNXjHJ0I.js +1 -0
- langflow/frontend/assets/index-uywG8s5T.js +1 -0
- langflow/frontend/assets/index-v7I5KNh9.js +1 -0
- langflow/frontend/assets/indian-rupee-BwTmLYOI.js +6 -0
- langflow/frontend/assets/infinity-Dh8NBtPf.js +6 -0
- langflow/frontend/assets/info-Dv4W4Ls4.js +6 -0
- langflow/frontend/assets/inspection-panel-D7WhwHo_.js +6 -0
- langflow/frontend/assets/instagram-Do9mreAQ.js +6 -0
- langflow/frontend/assets/italic-Ca-_MJMM.js +6 -0
- langflow/frontend/assets/iteration-ccw-BJurPsoq.js +6 -0
- langflow/frontend/assets/iteration-cw-FqnCo_5f.js +6 -0
- langflow/frontend/assets/japanese-yen-Bav4bd1l.js +6 -0
- langflow/frontend/assets/joystick-DV4qb2N5.js +6 -0
- langflow/frontend/assets/kanban-CZS74wpv.js +6 -0
- langflow/frontend/assets/key-BWzYBkPV.js +6 -0
- langflow/frontend/assets/key-round-DuROIWKu.js +6 -0
- langflow/frontend/assets/key-square-BVQppw3t.js +6 -0
- langflow/frontend/assets/keyboard-CzWokhoC.js +6 -0
- langflow/frontend/assets/keyboard-music-D9OkSafG.js +6 -0
- langflow/frontend/assets/keyboard-off-eIoqTwvV.js +6 -0
- langflow/frontend/assets/lamp-bVDXt7l6.js +6 -0
- langflow/frontend/assets/lamp-ceiling-vyH-uHHW.js +6 -0
- langflow/frontend/assets/lamp-desk-C1_xpLmX.js +6 -0
- langflow/frontend/assets/lamp-floor-DgNIyBa9.js +6 -0
- langflow/frontend/assets/lamp-wall-down-BPzU3zyX.js +6 -0
- langflow/frontend/assets/lamp-wall-up-CrBzyE-d.js +6 -0
- langflow/frontend/assets/land-plot-BZQr9cgA.js +6 -0
- langflow/frontend/assets/landmark-CVYKdN3X.js +6 -0
- langflow/frontend/assets/languages-45SyjLGE.js +6 -0
- langflow/frontend/assets/laptop-CoknuACm.js +6 -0
- langflow/frontend/assets/laptop-minimal-DLasDIm8.js +6 -0
- langflow/frontend/assets/laptop-minimal-check-DJ5oYc2T.js +6 -0
- langflow/frontend/assets/lasso-BI3aB94J.js +6 -0
- langflow/frontend/assets/lasso-select-UJUIqJqA.js +6 -0
- langflow/frontend/assets/laugh-DDFlxFF9.js +6 -0
- langflow/frontend/assets/layers-2-VRynypVE.js +6 -0
- langflow/frontend/assets/layers-BHZWg3DI.js +6 -0
- langflow/frontend/assets/layout-dashboard-DgW72CjK.js +6 -0
- langflow/frontend/assets/layout-grid--q7PN_qg.js +6 -0
- langflow/frontend/assets/layout-list-CCLvLIFC.js +6 -0
- langflow/frontend/assets/layout-panel-left-C_Qjw6QC.js +6 -0
- langflow/frontend/assets/layout-panel-top-DzLjyhuf.js +6 -0
- langflow/frontend/assets/layout-template-B-5X_Qkx.js +6 -0
- langflow/frontend/assets/lazyIconImports-Bz3bkgCe.js +2 -0
- langflow/frontend/assets/leaf-C3JjvcCt.js +6 -0
- langflow/frontend/assets/leafy-green-CyhqB08u.js +6 -0
- langflow/frontend/assets/lectern-DOC9cItP.js +6 -0
- langflow/frontend/assets/letter-text-C0gmbTry.js +6 -0
- langflow/frontend/assets/library-C1CsMb8h.js +6 -0
- langflow/frontend/assets/library-big-Cg8YN3RQ.js +6 -0
- langflow/frontend/assets/life-buoy-BJ4o4btU.js +6 -0
- langflow/frontend/assets/ligature-F7CjHgcf.js +6 -0
- langflow/frontend/assets/lightbulb-DwhjekWM.js +6 -0
- langflow/frontend/assets/lightbulb-off--IIEl1Uu.js +6 -0
- langflow/frontend/assets/link-2-BwyOJj2E.js +6 -0
- langflow/frontend/assets/link-2-off-C5VeEnRj.js +6 -0
- langflow/frontend/assets/link-Crooi5CK.js +6 -0
- langflow/frontend/assets/linkedin-CW8Gdyiy.js +6 -0
- langflow/frontend/assets/list-BqvobIeA.js +6 -0
- langflow/frontend/assets/list-check-CO3D1i6B.js +6 -0
- langflow/frontend/assets/list-checks-ompA_hJ3.js +6 -0
- langflow/frontend/assets/list-collapse-BMesRt3G.js +6 -0
- langflow/frontend/assets/list-end-CcRyDVJj.js +6 -0
- langflow/frontend/assets/list-filter-CiV0Bxq2.js +6 -0
- langflow/frontend/assets/list-filter-plus-BZpxNwsH.js +6 -0
- langflow/frontend/assets/list-minus-BYvvlNjc.js +6 -0
- langflow/frontend/assets/list-music-BvIN7DCF.js +6 -0
- langflow/frontend/assets/list-ordered-DC36HggM.js +6 -0
- langflow/frontend/assets/list-plus-CBq0273s.js +6 -0
- langflow/frontend/assets/list-restart-MpqexlAi.js +6 -0
- langflow/frontend/assets/list-start-C8B4Iz0l.js +6 -0
- langflow/frontend/assets/list-todo-t9Uz6s5k.js +6 -0
- langflow/frontend/assets/list-tree-C_jTFXcp.js +6 -0
- langflow/frontend/assets/list-video-BUi7L7h1.js +6 -0
- langflow/frontend/assets/list-x-25I3R3EQ.js +6 -0
- langflow/frontend/assets/loader-DojwFfmg.js +6 -0
- langflow/frontend/assets/loader-circle-BIDGgBMg.js +6 -0
- langflow/frontend/assets/loader-pinwheel-DAcRdN4v.js +6 -0
- langflow/frontend/assets/locate-DU82yHfH.js +6 -0
- langflow/frontend/assets/locate-fixed-BOviOtja.js +6 -0
- langflow/frontend/assets/locate-off-ypytr2El.js +6 -0
- langflow/frontend/assets/location-edit-Cz3hePHF.js +6 -0
- langflow/frontend/assets/lock-CCg6w3pY.js +6 -0
- langflow/frontend/assets/lock-keyhole-CX3_fQEB.js +6 -0
- langflow/frontend/assets/lock-keyhole-open-Kq0AVKzj.js +6 -0
- langflow/frontend/assets/lock-open-DtpgnBqE.js +6 -0
- langflow/frontend/assets/log-in-CUEy1JTq.js +6 -0
- langflow/frontend/assets/log-out-IzTjzLpx.js +6 -0
- langflow/frontend/assets/logs-CJulgLEs.js +6 -0
- langflow/frontend/assets/lollipop-DBq9NgQr.js +6 -0
- langflow/frontend/assets/luggage-Btwx2Ot6.js +6 -0
- langflow/frontend/assets/magnet-Denpacuv.js +6 -0
- langflow/frontend/assets/mail-check-CaJkfM-K.js +6 -0
- langflow/frontend/assets/mail-mNShmIw5.js +6 -0
- langflow/frontend/assets/mail-minus-C3CryOgO.js +6 -0
- langflow/frontend/assets/mail-open-CH5-mJXF.js +6 -0
- langflow/frontend/assets/mail-plus-Biazs9K2.js +6 -0
- langflow/frontend/assets/mail-question-DK9RsXOL.js +6 -0
- langflow/frontend/assets/mail-search-DFn8-RMW.js +6 -0
- langflow/frontend/assets/mail-warning-BfqXHQ0a.js +6 -0
- langflow/frontend/assets/mail-x-BbahUcO6.js +6 -0
- langflow/frontend/assets/mailbox-8wq6kjqA.js +6 -0
- langflow/frontend/assets/mails-Q1q_iYv7.js +6 -0
- langflow/frontend/assets/map-BNKjH1Fl.js +6 -0
- langflow/frontend/assets/map-pin-Hq6WcTW0.js +6 -0
- langflow/frontend/assets/map-pin-check-inside-2vLXtfPV.js +6 -0
- langflow/frontend/assets/map-pin-check-tZZ9FoDV.js +6 -0
- langflow/frontend/assets/map-pin-house-LL627BKs.js +6 -0
- langflow/frontend/assets/map-pin-minus-BA87I2RR.js +6 -0
- langflow/frontend/assets/map-pin-minus-inside-Ys3Lzs0l.js +6 -0
- langflow/frontend/assets/map-pin-off-gbjYYZwD.js +6 -0
- langflow/frontend/assets/map-pin-plus-BqmbzQII.js +6 -0
- langflow/frontend/assets/map-pin-plus-inside-1d0l4IFr.js +6 -0
- langflow/frontend/assets/map-pin-x-BzVVR0rt.js +6 -0
- langflow/frontend/assets/map-pin-x-inside-D28uxF0R.js +6 -0
- langflow/frontend/assets/map-pinned-Dq19m9e2.js +6 -0
- langflow/frontend/assets/map-plus-DmbbaQS7.js +6 -0
- langflow/frontend/assets/mars-BX3A7zA9.js +6 -0
- langflow/frontend/assets/mars-stroke-BL38pj5R.js +6 -0
- langflow/frontend/assets/martini-Bqwx_md5.js +6 -0
- langflow/frontend/assets/maximize-2-CpuS3cL-.js +6 -0
- langflow/frontend/assets/maximize-BedPrjVF.js +6 -0
- langflow/frontend/assets/medal-AghGVQt7.js +6 -0
- langflow/frontend/assets/megaphone-CJ_vXm7O.js +6 -0
- langflow/frontend/assets/megaphone-off-C11KLwO4.js +6 -0
- langflow/frontend/assets/meh-CW-EgNPh.js +6 -0
- langflow/frontend/assets/memory-stick-Cd66iaS4.js +6 -0
- langflow/frontend/assets/menu-_dG5yVw3.js +6 -0
- langflow/frontend/assets/merge-Cb0QwOv7.js +6 -0
- langflow/frontend/assets/message-circle-52FtCirt.js +6 -0
- langflow/frontend/assets/message-circle-code-B5KURs5S.js +6 -0
- langflow/frontend/assets/message-circle-dashed-waKjBvNJ.js +6 -0
- langflow/frontend/assets/message-circle-heart-UMH-HX7W.js +6 -0
- langflow/frontend/assets/message-circle-more-Cg_ltQEC.js +6 -0
- langflow/frontend/assets/message-circle-off-zHmLC-AS.js +6 -0
- langflow/frontend/assets/message-circle-plus-C3e9QNH0.js +6 -0
- langflow/frontend/assets/message-circle-question-0dwLf4vc.js +6 -0
- langflow/frontend/assets/message-circle-reply-CB0lR6DE.js +6 -0
- langflow/frontend/assets/message-circle-warning-CTB2Hx_g.js +6 -0
- langflow/frontend/assets/message-circle-x-CT_pQ-jA.js +6 -0
- langflow/frontend/assets/message-square-Q5N-krYh.js +6 -0
- langflow/frontend/assets/message-square-code-ibprMtz3.js +6 -0
- langflow/frontend/assets/message-square-dashed-NEtTID9I.js +6 -0
- langflow/frontend/assets/message-square-diff-BLldgXed.js +6 -0
- langflow/frontend/assets/message-square-dot-Cfibvj-U.js +6 -0
- langflow/frontend/assets/message-square-heart-CV7hi8dc.js +6 -0
- langflow/frontend/assets/message-square-lock-mWga49zz.js +6 -0
- langflow/frontend/assets/message-square-more-DCr1OP5i.js +6 -0
- langflow/frontend/assets/message-square-off-SRd8-EpB.js +6 -0
- langflow/frontend/assets/message-square-plus-VBl7AfnB.js +6 -0
- langflow/frontend/assets/message-square-quote-CgkubcWl.js +6 -0
- langflow/frontend/assets/message-square-reply-DhRhpR7V.js +6 -0
- langflow/frontend/assets/message-square-share-BTxQd2vA.js +6 -0
- langflow/frontend/assets/message-square-text-BzdbDDYX.js +6 -0
- langflow/frontend/assets/message-square-warning-DElcRREE.js +6 -0
- langflow/frontend/assets/message-square-x-CkS-D0ZQ.js +6 -0
- langflow/frontend/assets/messages-square-CJRjj-e6.js +6 -0
- langflow/frontend/assets/mic-CbUPysjv.js +6 -0
- langflow/frontend/assets/mic-off-DnQis5H4.js +6 -0
- langflow/frontend/assets/mic-vocal-C_32nw-u.js +6 -0
- langflow/frontend/assets/microchip-hihvWe6v.js +6 -0
- langflow/frontend/assets/microscope-V58rsnW1.js +6 -0
- langflow/frontend/assets/microwave-fAFdtfZD.js +6 -0
- langflow/frontend/assets/milestone-Bvy5tx_q.js +6 -0
- langflow/frontend/assets/milk-RvsrcGM-.js +6 -0
- langflow/frontend/assets/milk-off-DR675sEi.js +6 -0
- langflow/frontend/assets/minimize-2-BOQ_nBxs.js +6 -0
- langflow/frontend/assets/minimize-DgOpuiSn.js +6 -0
- langflow/frontend/assets/monitor-C-64RI3p.js +6 -0
- langflow/frontend/assets/monitor-check-B7yW02iG.js +6 -0
- langflow/frontend/assets/monitor-cog-BghcqHRt.js +6 -0
- langflow/frontend/assets/monitor-dot-CD9ZdwzM.js +6 -0
- langflow/frontend/assets/monitor-down-Cgqoy8Gy.js +6 -0
- langflow/frontend/assets/monitor-off-Dn_XstC0.js +6 -0
- langflow/frontend/assets/monitor-pause-RDyryqkr.js +6 -0
- langflow/frontend/assets/monitor-play--cb__gmL.js +6 -0
- langflow/frontend/assets/monitor-smartphone-BF285xqc.js +6 -0
- langflow/frontend/assets/monitor-speaker-xO_S-6dS.js +6 -0
- langflow/frontend/assets/monitor-stop-CtCM968A.js +6 -0
- langflow/frontend/assets/monitor-up-5L3XxAMM.js +6 -0
- langflow/frontend/assets/monitor-x-DgYxgG2N.js +6 -0
- langflow/frontend/assets/moon-CI2m7CGH.js +6 -0
- langflow/frontend/assets/moon-star-Bz3TgrEc.js +6 -0
- langflow/frontend/assets/mountain-LpzgaRB1.js +6 -0
- langflow/frontend/assets/mountain-snow-BQJQB6gK.js +6 -0
- langflow/frontend/assets/mouse-BL1O1m96.js +6 -0
- langflow/frontend/assets/mouse-off-D_qFgcNf.js +6 -0
- langflow/frontend/assets/mouse-pointer-2-DOYUlrR6.js +6 -0
- langflow/frontend/assets/mouse-pointer-BZ69s9aI.js +6 -0
- langflow/frontend/assets/mouse-pointer-ban-3sdegHOo.js +6 -0
- langflow/frontend/assets/mouse-pointer-click-DbqPOzfa.js +6 -0
- langflow/frontend/assets/move-3d-DjF8F2Xe.js +6 -0
- langflow/frontend/assets/move-C8KtKXDD.js +6 -0
- langflow/frontend/assets/move-diagonal-2-BnJF1lh-.js +6 -0
- langflow/frontend/assets/move-diagonal-qMcF5hdU.js +6 -0
- langflow/frontend/assets/move-down-DSPc-fDE.js +6 -0
- langflow/frontend/assets/move-down-left-K4qdRcT6.js +6 -0
- langflow/frontend/assets/move-down-right-DV4ZEXu5.js +6 -0
- langflow/frontend/assets/move-horizontal-D00wEncL.js +6 -0
- langflow/frontend/assets/move-left-BQT_sqYK.js +6 -0
- langflow/frontend/assets/move-right-BEL9BIao.js +6 -0
- langflow/frontend/assets/move-up-D7szht_Z.js +6 -0
- langflow/frontend/assets/move-up-left-L6w6uQ4-.js +6 -0
- langflow/frontend/assets/move-up-right-C5-N-Erm.js +6 -0
- langflow/frontend/assets/move-vertical-BGY4Z6NJ.js +6 -0
- langflow/frontend/assets/music-2-BZZd-8Da.js +6 -0
- langflow/frontend/assets/music-3-DWl9Kftk.js +6 -0
- langflow/frontend/assets/music-4-D9TbRjBe.js +6 -0
- langflow/frontend/assets/music-CXzNx0Ej.js +6 -0
- langflow/frontend/assets/navigation-2-off-BMnzsjaI.js +6 -0
- langflow/frontend/assets/navigation-2-zKBl6Qda.js +6 -0
- langflow/frontend/assets/navigation-off-G_2EJHcd.js +6 -0
- langflow/frontend/assets/navigation-qFDfgVuO.js +6 -0
- langflow/frontend/assets/network-C01c95uT.js +6 -0
- langflow/frontend/assets/newspaper-Cv-lQymb.js +6 -0
- langflow/frontend/assets/nfc-mP6629yS.js +6 -0
- langflow/frontend/assets/non-binary-CutC3h4F.js +6 -0
- langflow/frontend/assets/notebook-BZsHMDll.js +6 -0
- langflow/frontend/assets/notebook-pen-B37VM9LR.js +6 -0
- langflow/frontend/assets/notebook-tabs-D0248WIy.js +6 -0
- langflow/frontend/assets/notebook-text-CtsTa1Tx.js +6 -0
- langflow/frontend/assets/notepad-text-5ZgoKeZw.js +6 -0
- langflow/frontend/assets/notepad-text-dashed-Bi2tmsP-.js +6 -0
- langflow/frontend/assets/nut-Cc8dxv-3.js +6 -0
- langflow/frontend/assets/nut-off-Dq-nJY58.js +6 -0
- langflow/frontend/assets/octagon-B43W9laf.js +6 -0
- langflow/frontend/assets/octagon-alert-BKT-KENt.js +6 -0
- langflow/frontend/assets/octagon-minus-CIpb0cq9.js +6 -0
- langflow/frontend/assets/octagon-pause-C3VYxdNn.js +6 -0
- langflow/frontend/assets/octagon-x-BD2emBvs.js +6 -0
- langflow/frontend/assets/omega-5KFeiZdP.js +6 -0
- langflow/frontend/assets/option-D-_6YLKc.js +6 -0
- langflow/frontend/assets/orbit-CMaQ8NFZ.js +6 -0
- langflow/frontend/assets/origami-BGDHUS5V.js +6 -0
- langflow/frontend/assets/package-2-iJReeCXG.js +6 -0
- langflow/frontend/assets/package-check-BPwowUBP.js +6 -0
- langflow/frontend/assets/package-minus-dNiTU7ns.js +6 -0
- langflow/frontend/assets/package-n5XZlHRs.js +6 -0
- langflow/frontend/assets/package-open-BPFhKbzL.js +6 -0
- langflow/frontend/assets/package-plus-CYBPxJrj.js +6 -0
- langflow/frontend/assets/package-search-DmOrd4Wx.js +6 -0
- langflow/frontend/assets/package-x-WzFs0CkF.js +6 -0
- langflow/frontend/assets/paint-bucket-DSeGe6Wq.js +6 -0
- langflow/frontend/assets/paint-roller-CbhG-k_d.js +6 -0
- langflow/frontend/assets/paintbrush-DCub73HW.js +6 -0
- langflow/frontend/assets/paintbrush-vertical-CSgUB38n.js +6 -0
- langflow/frontend/assets/palette-BTAspRl6.js +6 -0
- langflow/frontend/assets/panel-bottom-DKAs47n1.js +6 -0
- langflow/frontend/assets/panel-bottom-close-Dn9Aee-D.js +6 -0
- langflow/frontend/assets/panel-bottom-dashed-C57ExszP.js +6 -0
- langflow/frontend/assets/panel-bottom-open-BahoAeBY.js +6 -0
- langflow/frontend/assets/panel-left-close-2NZii4px.js +6 -0
- langflow/frontend/assets/panel-left-dashed-B7xvlrM3.js +6 -0
- langflow/frontend/assets/panel-left-open-D8IbiVni.js +6 -0
- langflow/frontend/assets/panel-right-DvEwh69d.js +6 -0
- langflow/frontend/assets/panel-right-close-BU2i_6lj.js +6 -0
- langflow/frontend/assets/panel-right-dashed-CGVyfcX7.js +6 -0
- langflow/frontend/assets/panel-right-open-BY6izYgI.js +6 -0
- langflow/frontend/assets/panel-top-DF9Tk-Sl.js +6 -0
- langflow/frontend/assets/panel-top-close-H2Byp8q0.js +6 -0
- langflow/frontend/assets/panel-top-dashed-Dp-OM5rf.js +6 -0
- langflow/frontend/assets/panel-top-open-ChysV6wS.js +6 -0
- langflow/frontend/assets/panels-left-bottom-B9g0wVu3.js +6 -0
- langflow/frontend/assets/panels-right-bottom-BEUMDIKf.js +6 -0
- langflow/frontend/assets/panels-top-left-BhITaudh.js +6 -0
- langflow/frontend/assets/paperclip-vx41TSPC.js +6 -0
- langflow/frontend/assets/parentheses-BWn3uWrz.js +6 -0
- langflow/frontend/assets/parking-meter-D17UrNOe.js +6 -0
- langflow/frontend/assets/party-popper-D2swQyOD.js +6 -0
- langflow/frontend/assets/pause-eTQboL6R.js +6 -0
- langflow/frontend/assets/paw-print-CPITBsQk.js +6 -0
- langflow/frontend/assets/pc-case-DGANtdEL.js +6 -0
- langflow/frontend/assets/pen-BxPgLmtS.js +6 -0
- langflow/frontend/assets/pen-line-iD0BMH2s.js +6 -0
- langflow/frontend/assets/pen-off-DxNceeBA.js +6 -0
- langflow/frontend/assets/pen-tool-Di8zA-s7.js +6 -0
- langflow/frontend/assets/pencil-9kfwTqUP.js +6 -0
- langflow/frontend/assets/pencil-line-CSxpjcva.js +6 -0
- langflow/frontend/assets/pencil-off-CaGgN8bq.js +6 -0
- langflow/frontend/assets/pencil-ruler-Dm9Wz7dD.js +6 -0
- langflow/frontend/assets/pentagon-CLWMXAaY.js +6 -0
- langflow/frontend/assets/percent-9fNitGXM.js +6 -0
- langflow/frontend/assets/person-standing-EqJkcYTC.js +6 -0
- langflow/frontend/assets/philippine-peso-DBvIYuWa.js +6 -0
- langflow/frontend/assets/phone-BllQ2UMq.js +6 -0
- langflow/frontend/assets/phone-call-BMCwxqZn.js +6 -0
- langflow/frontend/assets/phone-forwarded-mlLsfTs-.js +6 -0
- langflow/frontend/assets/phone-incoming-zfZsIXer.js +6 -0
- langflow/frontend/assets/phone-missed-CuSafq9_.js +6 -0
- langflow/frontend/assets/phone-off-CMeaZRiB.js +6 -0
- langflow/frontend/assets/phone-outgoing-DslJLl8S.js +6 -0
- langflow/frontend/assets/pi-ZOw0VRyU.js +6 -0
- langflow/frontend/assets/piano-MWguQr7g.js +6 -0
- langflow/frontend/assets/pickaxe-Cwr62aW5.js +6 -0
- langflow/frontend/assets/picture-in-picture-2-CmjgS_Sk.js +6 -0
- langflow/frontend/assets/picture-in-picture-CIvF2OW6.js +6 -0
- langflow/frontend/assets/piggy-bank-BdGPIv5a.js +6 -0
- langflow/frontend/assets/pilcrow-DIcrLu_7.js +6 -0
- langflow/frontend/assets/pilcrow-left-CjzCvCBJ.js +6 -0
- langflow/frontend/assets/pilcrow-right-D7SrTDGh.js +6 -0
- langflow/frontend/assets/pill-arUcAXhm.js +6 -0
- langflow/frontend/assets/pill-bottle-LPnBlax_.js +6 -0
- langflow/frontend/assets/pin-C-Z7BLdx.js +6 -0
- langflow/frontend/assets/pin-off-DiGxUvg0.js +6 -0
- langflow/frontend/assets/pipette-KZIcjurR.js +6 -0
- langflow/frontend/assets/pizza-C5ovkYsw.js +6 -0
- langflow/frontend/assets/plane-gwsbhpCH.js +6 -0
- langflow/frontend/assets/plane-landing-CmNBajV5.js +6 -0
- langflow/frontend/assets/plane-takeoff-BAKmx9xy.js +6 -0
- langflow/frontend/assets/play-BLX7pfhg.js +6 -0
- langflow/frontend/assets/plug-2-DIJRHfBc.js +6 -0
- langflow/frontend/assets/plug-DvGJf4or.js +6 -0
- langflow/frontend/assets/plug-zap-Dby7iXz_.js +6 -0
- langflow/frontend/assets/pocket-CBi6EXJ9.js +6 -0
- langflow/frontend/assets/pocket-knife-DWNeZDKw.js +6 -0
- langflow/frontend/assets/podcast-REvxdRL4.js +6 -0
- langflow/frontend/assets/pointer-Cb95n8P9.js +6 -0
- langflow/frontend/assets/pointer-off-oUPHD8gV.js +6 -0
- langflow/frontend/assets/popcorn-Dc_a5cjE.js +6 -0
- langflow/frontend/assets/popsicle-D9aLKYLe.js +6 -0
- langflow/frontend/assets/pound-sterling-CyOuNQbR.js +6 -0
- langflow/frontend/assets/power-7-2MF3yX.js +6 -0
- langflow/frontend/assets/power-off-9A6f6kBZ.js +6 -0
- langflow/frontend/assets/presentation-CXImVjJ-.js +6 -0
- langflow/frontend/assets/printer-check-B22z9hle.js +6 -0
- langflow/frontend/assets/printer-kYdn5NFX.js +6 -0
- langflow/frontend/assets/projector-Cip5ECQv.js +6 -0
- langflow/frontend/assets/proportions-DQEPBHfD.js +6 -0
- langflow/frontend/assets/puzzle-WV0iKtR6.js +6 -0
- langflow/frontend/assets/pyramid-BFq2uJGo.js +6 -0
- langflow/frontend/assets/qr-code-DlXW931L.js +6 -0
- langflow/frontend/assets/quote-BdZd7eyc.js +6 -0
- langflow/frontend/assets/rabbit-BYqaCmUx.js +6 -0
- langflow/frontend/assets/radar-D5YpnRk7.js +6 -0
- langflow/frontend/assets/radiation-lTLARj--.js +6 -0
- langflow/frontend/assets/radical-B4Ov94pe.js +6 -0
- langflow/frontend/assets/radio-D4-DfE_1.js +6 -0
- langflow/frontend/assets/radio-receiver-CwMRHUBC.js +6 -0
- langflow/frontend/assets/radio-tower-CBT0T3eV.js +6 -0
- langflow/frontend/assets/radius-Bghc24jA.js +6 -0
- langflow/frontend/assets/rail-symbol-DwuSUAy8.js +6 -0
- langflow/frontend/assets/rainbow-Ez9S5P24.js +6 -0
- langflow/frontend/assets/rat-Aqd9wr3L.js +6 -0
- langflow/frontend/assets/ratio-DmoVdMEJ.js +6 -0
- langflow/frontend/assets/receipt-CrRxOoc9.js +6 -0
- langflow/frontend/assets/receipt-cent-BzRdT5iD.js +6 -0
- langflow/frontend/assets/receipt-euro-Cj4w2KwE.js +6 -0
- langflow/frontend/assets/receipt-indian-rupee-6rfN1Cns.js +6 -0
- langflow/frontend/assets/receipt-japanese-yen-DdxDu5AW.js +6 -0
- langflow/frontend/assets/receipt-pound-sterling-c2IWPR24.js +6 -0
- langflow/frontend/assets/receipt-russian-ruble-iseq21zF.js +6 -0
- langflow/frontend/assets/receipt-swiss-franc-DCCm43Nd.js +6 -0
- langflow/frontend/assets/receipt-text-pnC0gKyt.js +6 -0
- langflow/frontend/assets/rectangle-ellipsis-CF73XhsP.js +6 -0
- langflow/frontend/assets/rectangle-goggles-CAShxqJi.js +6 -0
- langflow/frontend/assets/rectangle-horizontal-N2VbSnFI.js +6 -0
- langflow/frontend/assets/rectangle-vertical-CVTdkuTc.js +6 -0
- langflow/frontend/assets/recycle-mxb5g6m_.js +6 -0
- langflow/frontend/assets/redo-2-hr1J81Ig.js +6 -0
- langflow/frontend/assets/redo-Ay9lRnpR.js +6 -0
- langflow/frontend/assets/redo-dot-DaEyWXX5.js +6 -0
- langflow/frontend/assets/refresh-ccw-CdZJX3RU.js +6 -0
- langflow/frontend/assets/refresh-ccw-dot-BwMiuAgO.js +6 -0
- langflow/frontend/assets/refresh-cw-DTYMzKiJ.js +6 -0
- langflow/frontend/assets/refresh-cw-off-ty-uTVvi.js +6 -0
- langflow/frontend/assets/refrigerator-REjxmqJC.js +6 -0
- langflow/frontend/assets/regex-Cg22XfVG.js +6 -0
- langflow/frontend/assets/remove-formatting-DZ3JpmPQ.js +6 -0
- langflow/frontend/assets/repeat-1-DJZ-Jrr5.js +6 -0
- langflow/frontend/assets/repeat-2-CFBAgrr8.js +6 -0
- langflow/frontend/assets/repeat-C7jVkMcY.js +6 -0
- langflow/frontend/assets/replace-BvaqTZNB.js +6 -0
- langflow/frontend/assets/replace-all-FGJUpTnx.js +6 -0
- langflow/frontend/assets/reply-CcLLusZd.js +6 -0
- langflow/frontend/assets/reply-all-CWHfytey.js +6 -0
- langflow/frontend/assets/rewind-D07HB0Gh.js +6 -0
- langflow/frontend/assets/ribbon-DINZnC8A.js +6 -0
- langflow/frontend/assets/rocket-DJn94ITT.js +6 -0
- langflow/frontend/assets/rocking-chair-BIXukant.js +6 -0
- langflow/frontend/assets/roller-coaster-jnXQm5X7.js +6 -0
- langflow/frontend/assets/rotate-3d-OE_Ffhwg.js +6 -0
- langflow/frontend/assets/rotate-ccw-BWm1gOT_.js +6 -0
- langflow/frontend/assets/rotate-ccw-key-DraXNNlO.js +6 -0
- langflow/frontend/assets/rotate-ccw-square-Q4i_j52y.js +6 -0
- langflow/frontend/assets/rotate-cw-DMkokMV_.js +6 -0
- langflow/frontend/assets/rotate-cw-square-DiUhpfPT.js +6 -0
- langflow/frontend/assets/route-ClOv8UAD.js +6 -0
- langflow/frontend/assets/route-off-BnIsbc68.js +6 -0
- langflow/frontend/assets/router-BHv7gFmI.js +6 -0
- langflow/frontend/assets/rows-2-DTZnpgGL.js +6 -0
- langflow/frontend/assets/rows-3-DCEUH2hC.js +6 -0
- langflow/frontend/assets/rows-4-BBiUwu5l.js +6 -0
- langflow/frontend/assets/rss-P-oOpENE.js +6 -0
- langflow/frontend/assets/ruler-DkxXaPK_.js +6 -0
- langflow/frontend/assets/ruler-dimension-line-Cz1V9c03.js +6 -0
- langflow/frontend/assets/russian-ruble-DmW3mLmW.js +6 -0
- langflow/frontend/assets/sailboat-Tetgo4Lb.js +6 -0
- langflow/frontend/assets/salad-DMwMyvB5.js +6 -0
- langflow/frontend/assets/sandwich-Bba6HLT0.js +6 -0
- langflow/frontend/assets/satellite-Ddu5ipJx.js +6 -0
- langflow/frontend/assets/satellite-dish-BMQARc8I.js +6 -0
- langflow/frontend/assets/saudi-riyal-BQQlONU-.js +6 -0
- langflow/frontend/assets/save-CdxxT5KB.js +6 -0
- langflow/frontend/assets/save-all-D8hqBz4i.js +6 -0
- langflow/frontend/assets/save-off-CgSs9rr9.js +6 -0
- langflow/frontend/assets/scale-3d-D7IZLnfN.js +6 -0
- langflow/frontend/assets/scale-93M8x4y6.js +6 -0
- langflow/frontend/assets/scaling-CA8UBaOt.js +6 -0
- langflow/frontend/assets/scan-DNIHgr8K.js +6 -0
- langflow/frontend/assets/scan-barcode-BMmz7dNs.js +6 -0
- langflow/frontend/assets/scan-eye-Beb09hiv.js +6 -0
- langflow/frontend/assets/scan-face-BQplkbWv.js +6 -0
- langflow/frontend/assets/scan-heart-BD_4v2ah.js +6 -0
- langflow/frontend/assets/scan-line-CSPugzgQ.js +6 -0
- langflow/frontend/assets/scan-qr-code-Cxarkxzn.js +6 -0
- langflow/frontend/assets/scan-search-DfgRNeZg.js +6 -0
- langflow/frontend/assets/scan-text---lWlVm4.js +6 -0
- langflow/frontend/assets/school-CV1XycZ3.js +6 -0
- langflow/frontend/assets/scissors-NyUF9OZW.js +6 -0
- langflow/frontend/assets/scissors-line-dashed-J9QGREeb.js +6 -0
- langflow/frontend/assets/screen-share-B42rg9ys.js +6 -0
- langflow/frontend/assets/screen-share-off-CmLTkMUk.js +6 -0
- langflow/frontend/assets/scroll-D1EI8Rz4.js +6 -0
- langflow/frontend/assets/scroll-text-Dx_-xmVI.js +6 -0
- langflow/frontend/assets/search-check-BF2od0KI.js +6 -0
- langflow/frontend/assets/search-code-B26GQWI6.js +6 -0
- langflow/frontend/assets/search-slash-BETXps2t.js +6 -0
- langflow/frontend/assets/search-x-DPb5LlA3.js +6 -0
- langflow/frontend/assets/section-B4Q9DCdm.js +6 -0
- langflow/frontend/assets/send-ZE383SKr.js +6 -0
- langflow/frontend/assets/send-horizontal-D0lDWrSA.js +6 -0
- langflow/frontend/assets/send-to-back-Ca8Vx9zf.js +6 -0
- langflow/frontend/assets/separator-horizontal-CDugpdYB.js +6 -0
- langflow/frontend/assets/separator-vertical-DMgJmJJ6.js +6 -0
- langflow/frontend/assets/server-NwiDY9d-.js +6 -0
- langflow/frontend/assets/server-cog-DdF97wmM.js +6 -0
- langflow/frontend/assets/server-crash-DNd7M6hh.js +6 -0
- langflow/frontend/assets/server-off-YhWx3OCB.js +6 -0
- langflow/frontend/assets/settings-2-DY_KIsk0.js +6 -0
- langflow/frontend/assets/settings-T6CRSr45.js +6 -0
- langflow/frontend/assets/shapes-vJvMiRGi.js +6 -0
- langflow/frontend/assets/share-2-E5VMR1Hg.js +6 -0
- langflow/frontend/assets/share-DC9RnFbY.js +6 -0
- langflow/frontend/assets/sheet-Ruqk26Oc.js +6 -0
- langflow/frontend/assets/shell-rFGa8qRZ.js +6 -0
- langflow/frontend/assets/shield-B0M1G5xB.js +6 -0
- langflow/frontend/assets/shield-alert-7i642MLN.js +6 -0
- langflow/frontend/assets/shield-ban-BdfO4IFn.js +6 -0
- langflow/frontend/assets/shield-check-DfgimtKv.js +6 -0
- langflow/frontend/assets/shield-ellipsis-DlI2NVRM.js +6 -0
- langflow/frontend/assets/shield-half-BBafVyZq.js +6 -0
- langflow/frontend/assets/shield-minus-BtBybI3y.js +6 -0
- langflow/frontend/assets/shield-off-BYAEKjAr.js +6 -0
- langflow/frontend/assets/shield-plus-Cljw3ov4.js +6 -0
- langflow/frontend/assets/shield-question-Dalxl2-B.js +6 -0
- langflow/frontend/assets/shield-user-D4X9Un7l.js +6 -0
- langflow/frontend/assets/shield-x-BUeUx9EQ.js +6 -0
- langflow/frontend/assets/ship-DTfs26OC.js +6 -0
- langflow/frontend/assets/ship-wheel-DVz0eFlR.js +6 -0
- langflow/frontend/assets/shirt-BnKjDvos.js +6 -0
- langflow/frontend/assets/shopping-bag-Dfkia7L0.js +6 -0
- langflow/frontend/assets/shopping-basket-SUNesxhk.js +6 -0
- langflow/frontend/assets/shopping-cart-BH9sfqQX.js +6 -0
- langflow/frontend/assets/shovel-Bxs0Qjmh.js +6 -0
- langflow/frontend/assets/shower-head-CADjDTiK.js +6 -0
- langflow/frontend/assets/shredder-Cu7Xn00A.js +6 -0
- langflow/frontend/assets/shrimp-C3jKiKrk.js +6 -0
- langflow/frontend/assets/shrink-Cclu_dw0.js +6 -0
- langflow/frontend/assets/shrub-BL5dBzfp.js +6 -0
- langflow/frontend/assets/shuffle-C_WrduYd.js +6 -0
- langflow/frontend/assets/sigma-CJnd9jNa.js +6 -0
- langflow/frontend/assets/signal-Dcm6sbyu.js +6 -0
- langflow/frontend/assets/signal-high-DfHqHBGU.js +6 -0
- langflow/frontend/assets/signal-low-DkvkPeXD.js +6 -0
- langflow/frontend/assets/signal-medium-Z8D3qUli.js +6 -0
- langflow/frontend/assets/signal-zero-DMMOUSJN.js +6 -0
- langflow/frontend/assets/signature-BuNASrxq.js +6 -0
- langflow/frontend/assets/signpost-DZ45H1O1.js +6 -0
- langflow/frontend/assets/signpost-big-DPz14W8U.js +6 -0
- langflow/frontend/assets/siren-DB3WrVSP.js +6 -0
- langflow/frontend/assets/skip-back-DjUV73s2.js +6 -0
- langflow/frontend/assets/skip-forward-CmD_sUWm.js +6 -0
- langflow/frontend/assets/skull-BFSFzqlJ.js +6 -0
- langflow/frontend/assets/slack-a0qHkocc.js +6 -0
- langflow/frontend/assets/slash-BTqLWpKj.js +6 -0
- langflow/frontend/assets/slice-DtaQu0Yo.js +6 -0
- langflow/frontend/assets/sliders-horizontal-Cb6o0sGH.js +6 -0
- langflow/frontend/assets/sliders-vertical-CQiKA-33.js +6 -0
- langflow/frontend/assets/smartphone-charging-CGHpA7Gv.js +6 -0
- langflow/frontend/assets/smartphone-nfc-DpmH6c7h.js +6 -0
- langflow/frontend/assets/smartphone-vbMnkDNF.js +6 -0
- langflow/frontend/assets/smile-FPhOdGXi.js +6 -0
- langflow/frontend/assets/smile-plus-BLvbs7Wn.js +6 -0
- langflow/frontend/assets/snail-N5ea-xbv.js +6 -0
- langflow/frontend/assets/snowflake-B2IUrE0d.js +6 -0
- langflow/frontend/assets/sofa-GDryelNA.js +6 -0
- langflow/frontend/assets/soup-DW9OBMi1.js +6 -0
- langflow/frontend/assets/space-Lgs4HSmS.js +6 -0
- langflow/frontend/assets/spade-Dz9fYCdz.js +6 -0
- langflow/frontend/assets/sparkle-BXX-A6Ie.js +6 -0
- langflow/frontend/assets/sparkles-DseoCWZ7.js +6 -0
- langflow/frontend/assets/speaker-B-4Rhc6r.js +6 -0
- langflow/frontend/assets/speech-vGyEnTQZ.js +6 -0
- langflow/frontend/assets/spell-check-2-BcJkVZtT.js +6 -0
- langflow/frontend/assets/spell-check-DAFBDc9n.js +6 -0
- langflow/frontend/assets/spline-BHwR5076.js +6 -0
- langflow/frontend/assets/spline-pointer-DXr7gccJ.js +6 -0
- langflow/frontend/assets/split-DlhPVsS1.js +6 -0
- langflow/frontend/assets/spray-can-Ba6HqBzy.js +6 -0
- langflow/frontend/assets/sprout-LkXWX66w.js +6 -0
- langflow/frontend/assets/square-D2C9EdwK.js +6 -0
- langflow/frontend/assets/square-activity-DSalkO78.js +6 -0
- langflow/frontend/assets/square-arrow-down-Vr9KV4e0.js +6 -0
- langflow/frontend/assets/square-arrow-down-left-DIKkCn9X.js +6 -0
- langflow/frontend/assets/square-arrow-down-right-CQmsD6Ru.js +6 -0
- langflow/frontend/assets/square-arrow-left-YykOBzPM.js +6 -0
- langflow/frontend/assets/square-arrow-out-down-left-qCxMUFxq.js +6 -0
- langflow/frontend/assets/square-arrow-out-down-right-B76Xndzc.js +6 -0
- langflow/frontend/assets/square-arrow-out-up-left-BGzA2Zut.js +6 -0
- langflow/frontend/assets/square-arrow-out-up-right-DKjQdxIe.js +6 -0
- langflow/frontend/assets/square-arrow-right-CyyxLw_B.js +6 -0
- langflow/frontend/assets/square-arrow-up-9z96Lbfu.js +6 -0
- langflow/frontend/assets/square-arrow-up-left-CmYwn9TO.js +6 -0
- langflow/frontend/assets/square-arrow-up-right-CTUXxklq.js +6 -0
- langflow/frontend/assets/square-asterisk-D3-w77Cq.js +6 -0
- langflow/frontend/assets/square-bottom-dashed-scissors-C05k0PnK.js +6 -0
- langflow/frontend/assets/square-chart-gantt-C0WUKYq1.js +6 -0
- langflow/frontend/assets/square-check-DWIo-rkj.js +6 -0
- langflow/frontend/assets/square-check-big-CioQ9mBa.js +6 -0
- langflow/frontend/assets/square-chevron-down-BMwUjPc-.js +6 -0
- langflow/frontend/assets/square-chevron-left-CV4PVhGg.js +6 -0
- langflow/frontend/assets/square-chevron-right-CcElTxoP.js +6 -0
- langflow/frontend/assets/square-chevron-up-6SRxVe27.js +6 -0
- langflow/frontend/assets/square-code-Dxb-TMRS.js +6 -0
- langflow/frontend/assets/square-dashed-EeG4YZEK.js +6 -0
- langflow/frontend/assets/square-dashed-bottom-ClygsM7v.js +6 -0
- langflow/frontend/assets/square-dashed-bottom-code-CAOzImD1.js +6 -0
- langflow/frontend/assets/square-dashed-kanban-CE_7x2N2.js +6 -0
- langflow/frontend/assets/square-dashed-mouse-pointer-kD-CXdJV.js +6 -0
- langflow/frontend/assets/square-divide-Wcsw80g6.js +6 -0
- langflow/frontend/assets/square-dot-Do97Knxf.js +6 -0
- langflow/frontend/assets/square-equal-zQafNVoS.js +6 -0
- langflow/frontend/assets/square-function-D-6HIJRC.js +6 -0
- langflow/frontend/assets/square-kanban-BdYVtNEl.js +6 -0
- langflow/frontend/assets/square-library-BwV-ZYF-.js +6 -0
- langflow/frontend/assets/square-m-C31tRU7Q.js +6 -0
- langflow/frontend/assets/square-menu-ByLhwz06.js +6 -0
- langflow/frontend/assets/square-minus-pkut0v0I.js +6 -0
- langflow/frontend/assets/square-mouse-pointer-B5tVHvzR.js +6 -0
- langflow/frontend/assets/square-parking-C4WAAtn0.js +6 -0
- langflow/frontend/assets/square-parking-off-BLLny9Y8.js +6 -0
- langflow/frontend/assets/square-pen-rgiAP6Nm.js +6 -0
- langflow/frontend/assets/square-percent-BMcuqyrL.js +6 -0
- langflow/frontend/assets/square-pi-CFhLD_bP.js +6 -0
- langflow/frontend/assets/square-pilcrow-CoJO-JAr.js +6 -0
- langflow/frontend/assets/square-play-9l1wTOU7.js +6 -0
- langflow/frontend/assets/square-plus-DxOhcRAK.js +6 -0
- langflow/frontend/assets/square-power-DnvBz_TG.js +6 -0
- langflow/frontend/assets/square-radical-i6SMras_.js +6 -0
- langflow/frontend/assets/square-round-corner-Cb01vLpU.js +6 -0
- langflow/frontend/assets/square-scissors-WEQ9paYy.js +6 -0
- langflow/frontend/assets/square-sigma-BptuOfPm.js +6 -0
- langflow/frontend/assets/square-slash-IltY0vnS.js +6 -0
- langflow/frontend/assets/square-split-horizontal-BrYZ_oXa.js +6 -0
- langflow/frontend/assets/square-split-vertical-DyDKX7Jn.js +6 -0
- langflow/frontend/assets/square-square-DDDFXroa.js +6 -0
- langflow/frontend/assets/square-stack-BmRTUF55.js +6 -0
- langflow/frontend/assets/square-terminal-CsakaMH-.js +6 -0
- langflow/frontend/assets/square-user-B6N8QZMc.js +6 -0
- langflow/frontend/assets/square-user-round-D5ysg8tr.js +6 -0
- langflow/frontend/assets/square-x-Cv84TzQW.js +6 -0
- langflow/frontend/assets/squares-exclude-Dp8LEVCx.js +6 -0
- langflow/frontend/assets/squares-intersect-jgYcuegN.js +6 -0
- langflow/frontend/assets/squares-subtract-BPS0VqTr.js +6 -0
- langflow/frontend/assets/squares-unite-Xr7e6dw5.js +6 -0
- langflow/frontend/assets/squircle-CnQgALl2.js +6 -0
- langflow/frontend/assets/squirrel-BXh__7Tp.js +6 -0
- langflow/frontend/assets/stamp-DEljq4EG.js +6 -0
- langflow/frontend/assets/star-BDdTgqkA.js +6 -0
- langflow/frontend/assets/star-half-CkpChSgZ.js +6 -0
- langflow/frontend/assets/star-off-C8tXhBzU.js +6 -0
- langflow/frontend/assets/step-back-CeUcLpYP.js +6 -0
- langflow/frontend/assets/step-forward-YZYgie-H.js +6 -0
- langflow/frontend/assets/stethoscope-B1HKkNjb.js +6 -0
- langflow/frontend/assets/sticker-s76hzsbw.js +6 -0
- langflow/frontend/assets/sticky-note-d3wKhnVZ.js +6 -0
- langflow/frontend/assets/store-CgkhfYr8.js +6 -0
- langflow/frontend/assets/stretch-horizontal-CgRs532f.js +6 -0
- langflow/frontend/assets/stretch-vertical-Cbbad0DE.js +6 -0
- langflow/frontend/assets/strikethrough-CLu5NrUJ.js +6 -0
- langflow/frontend/assets/subscript-iNLzbpNF.js +6 -0
- langflow/frontend/assets/sun-DdND6npr.js +6 -0
- langflow/frontend/assets/sun-dim-Cp5QYpLO.js +6 -0
- langflow/frontend/assets/sun-medium-0hYIdM7r.js +6 -0
- langflow/frontend/assets/sun-moon-dCZP-wBl.js +6 -0
- langflow/frontend/assets/sun-snow-CMkrYaZU.js +6 -0
- langflow/frontend/assets/sunrise-B_4rb5Yc.js +6 -0
- langflow/frontend/assets/sunset-CdHtBu9f.js +6 -0
- langflow/frontend/assets/superscript-D-43mfqg.js +6 -0
- langflow/frontend/assets/swatch-book-CWvY6Gge.js +6 -0
- langflow/frontend/assets/swiss-franc-CQUQOqfw.js +6 -0
- langflow/frontend/assets/switch-camera-D8HVtE35.js +6 -0
- langflow/frontend/assets/sword-ZhnbrO02.js +6 -0
- langflow/frontend/assets/swords-1419KKmU.js +6 -0
- langflow/frontend/assets/syringe-C-ur-zxc.js +6 -0
- langflow/frontend/assets/table-2-DqDVsfw0.js +6 -0
- langflow/frontend/assets/table-BR7M9T2m.js +6 -0
- langflow/frontend/assets/table-cells-merge-LP_BdXHn.js +6 -0
- langflow/frontend/assets/table-cells-split-DDEZjNxQ.js +6 -0
- langflow/frontend/assets/table-columns-split-CZFb_e6a.js +6 -0
- langflow/frontend/assets/table-of-contents-YKQOIBeh.js +6 -0
- langflow/frontend/assets/table-properties-07iCbzoF.js +6 -0
- langflow/frontend/assets/table-rows-split-BvGY1KFG.js +6 -0
- langflow/frontend/assets/tablet-B1dvFkME.js +6 -0
- langflow/frontend/assets/tablet-smartphone-C9zhR9id.js +6 -0
- langflow/frontend/assets/tablets-BV0NxbWo.js +6 -0
- langflow/frontend/assets/tag-K-O6lnTy.js +6 -0
- langflow/frontend/assets/tags-ByeAXu2U.js +6 -0
- langflow/frontend/assets/tally-1-CROxhWtK.js +6 -0
- langflow/frontend/assets/tally-2-BsgGv4NP.js +6 -0
- langflow/frontend/assets/tally-3-ByWskaRS.js +6 -0
- langflow/frontend/assets/tally-4-BNd2X26I.js +6 -0
- langflow/frontend/assets/tally-5-Db_7pJVF.js +6 -0
- langflow/frontend/assets/tangent-DE9c5ssL.js +6 -0
- langflow/frontend/assets/target-B4BR4LnK.js +6 -0
- langflow/frontend/assets/telescope-COaR5mQI.js +6 -0
- langflow/frontend/assets/tent-Rbm180IQ.js +6 -0
- langflow/frontend/assets/tent-tree-BKb-kXr8.js +6 -0
- langflow/frontend/assets/terminal-tEjz8sWY.js +6 -0
- langflow/frontend/assets/test-tube-DZ4xTCVw.js +6 -0
- langflow/frontend/assets/test-tube-diagonal-B2qLgIo7.js +6 -0
- langflow/frontend/assets/test-tubes-mReW2TR5.js +6 -0
- langflow/frontend/assets/text-CMv6Ef3g.js +6 -0
- langflow/frontend/assets/text-cursor-CvvULVqP.js +6 -0
- langflow/frontend/assets/text-cursor-input-DrTxBv-T.js +6 -0
- langflow/frontend/assets/text-quote-CFgdWDkk.js +6 -0
- langflow/frontend/assets/text-search-D1eRjWbA.js +6 -0
- langflow/frontend/assets/text-select-CXDcKbEm.js +6 -0
- langflow/frontend/assets/theater-DgHnzf31.js +6 -0
- langflow/frontend/assets/thermometer-T9ytEgwA.js +6 -0
- langflow/frontend/assets/thermometer-snowflake-DMDHpy2y.js +6 -0
- langflow/frontend/assets/thermometer-sun-CX5XTyHW.js +6 -0
- langflow/frontend/assets/thumbs-down-Pt3RAIOb.js +6 -0
- langflow/frontend/assets/thumbs-up-C914Y43F.js +6 -0
- langflow/frontend/assets/ticket-COv_WbDG.js +6 -0
- langflow/frontend/assets/ticket-check-D3svOi3W.js +6 -0
- langflow/frontend/assets/ticket-minus-DjdC_Cll.js +6 -0
- langflow/frontend/assets/ticket-percent-DnirgzY8.js +6 -0
- langflow/frontend/assets/ticket-plus-BNktrtF7.js +6 -0
- langflow/frontend/assets/ticket-slash-CeGoC2KZ.js +6 -0
- langflow/frontend/assets/ticket-x-BuNvjw4X.js +6 -0
- langflow/frontend/assets/tickets-CYmPlQI9.js +6 -0
- langflow/frontend/assets/tickets-plane-CAWIkLW_.js +6 -0
- langflow/frontend/assets/timer-BwrzCE-V.js +6 -0
- langflow/frontend/assets/timer-off-T8DLAP8U.js +6 -0
- langflow/frontend/assets/timer-reset-DOhC4myx.js +6 -0
- langflow/frontend/assets/toggle-left-BhOOqX0X.js +6 -0
- langflow/frontend/assets/toggle-right-D5ZrH_0F.js +6 -0
- langflow/frontend/assets/toilet-SiYTUeEv.js +6 -0
- langflow/frontend/assets/tornado-DxgHb0Ve.js +6 -0
- langflow/frontend/assets/torus-BwTWyr_F.js +6 -0
- langflow/frontend/assets/touchpad-BVOsSOil.js +6 -0
- langflow/frontend/assets/touchpad-off-DeZcOnny.js +6 -0
- langflow/frontend/assets/tower-control-5bMwbXDP.js +6 -0
- langflow/frontend/assets/toy-brick-Kd7RLgVo.js +6 -0
- langflow/frontend/assets/tractor-DooKePRM.js +6 -0
- langflow/frontend/assets/traffic-cone-aU9C6EVe.js +6 -0
- langflow/frontend/assets/train-front-B9zYcrr0.js +6 -0
- langflow/frontend/assets/train-front-tunnel-CGgQ0665.js +6 -0
- langflow/frontend/assets/train-track-CNSTSElM.js +6 -0
- langflow/frontend/assets/tram-front-Bh3c0VTb.js +6 -0
- langflow/frontend/assets/transgender-Yb9Aw3eq.js +6 -0
- langflow/frontend/assets/trash-D8bX1W_s.js +6 -0
- langflow/frontend/assets/tree-deciduous-DfnqNuRS.js +6 -0
- langflow/frontend/assets/tree-palm-DJXocuTV.js +6 -0
- langflow/frontend/assets/tree-pine-BP3dMe04.js +6 -0
- langflow/frontend/assets/trees-D6yP_WCR.js +6 -0
- langflow/frontend/assets/trello-DGqo8szF.js +6 -0
- langflow/frontend/assets/trending-down-BR09CtIE.js +6 -0
- langflow/frontend/assets/trending-up-CirFPPVF.js +6 -0
- langflow/frontend/assets/trending-up-down-BTY_q6JA.js +6 -0
- langflow/frontend/assets/triangle-B-H_4YEk.js +6 -0
- langflow/frontend/assets/triangle-alert-DXeGuITo.js +6 -0
- langflow/frontend/assets/triangle-dashed-Dn7NnKw5.js +6 -0
- langflow/frontend/assets/triangle-right-zG_BZzF1.js +6 -0
- langflow/frontend/assets/trophy-DueWLGox.js +6 -0
- langflow/frontend/assets/truck-BhAvmcrD.js +6 -0
- langflow/frontend/assets/truck-electric-CpHu1jkP.js +6 -0
- langflow/frontend/assets/turtle-DmRYvXYC.js +6 -0
- langflow/frontend/assets/tv-DPms7spx.js +6 -0
- langflow/frontend/assets/tv-minimal-D2oB1Crj.js +6 -0
- langflow/frontend/assets/tv-minimal-play-5WSDRFTW.js +6 -0
- langflow/frontend/assets/twitch-CTyYsltR.js +6 -0
- langflow/frontend/assets/twitter-Uejh7W2i.js +6 -0
- langflow/frontend/assets/type-DCWbYKxb.js +6 -0
- langflow/frontend/assets/type-outline-DwmlKH7Q.js +6 -0
- langflow/frontend/assets/umbrella-DzoOhtjc.js +6 -0
- langflow/frontend/assets/umbrella-off-BnGloLbA.js +6 -0
- langflow/frontend/assets/underline-D6VqNULT.js +6 -0
- langflow/frontend/assets/undo-2-TM0n_RG8.js +6 -0
- langflow/frontend/assets/undo-DrNsQ0jO.js +6 -0
- langflow/frontend/assets/undo-dot-CQVBPt4f.js +6 -0
- langflow/frontend/assets/unfold-horizontal-CzsehnZk.js +6 -0
- langflow/frontend/assets/unfold-vertical-DNVYXN_y.js +6 -0
- langflow/frontend/assets/ungroup-BM2bWp8p.js +6 -0
- langflow/frontend/assets/university-DB28dVFt.js +6 -0
- langflow/frontend/assets/unlink-2-WpXjYohB.js +6 -0
- langflow/frontend/assets/unlink-BLFGfEEc.js +6 -0
- langflow/frontend/assets/unplug-_UmFvYbg.js +6 -0
- langflow/frontend/assets/upload-8boS95gI.js +6 -0
- langflow/frontend/assets/usb-BMx0J0Sy.js +6 -0
- langflow/frontend/assets/use-post-add-user-b13pIDQz.js +1 -0
- langflow/frontend/assets/user-Kd6NpdHy.js +6 -0
- langflow/frontend/assets/user-check-FzX3eqRX.js +6 -0
- langflow/frontend/assets/user-cog-D6mCcJMc.js +6 -0
- langflow/frontend/assets/user-lock-BH_MoGYH.js +6 -0
- langflow/frontend/assets/user-minus-Bff-DMlG.js +6 -0
- langflow/frontend/assets/user-pen-eD_3V4js.js +6 -0
- langflow/frontend/assets/user-plus-BN6TLHAo.js +6 -0
- langflow/frontend/assets/user-round-a2K1pyMI.js +6 -0
- langflow/frontend/assets/user-round-check-BAIHcpBc.js +6 -0
- langflow/frontend/assets/user-round-cog-BCBk6ZVt.js +6 -0
- langflow/frontend/assets/user-round-minus-CHL_i3b9.js +6 -0
- langflow/frontend/assets/user-round-pen-TnLmmKC3.js +6 -0
- langflow/frontend/assets/user-round-plus-Qrfk8bFQ.js +6 -0
- langflow/frontend/assets/user-round-search-Cn3fCMkz.js +6 -0
- langflow/frontend/assets/user-round-x-345XjYXs.js +6 -0
- langflow/frontend/assets/user-search-CBLnlbDn.js +6 -0
- langflow/frontend/assets/user-x-ik_MyYRD.js +6 -0
- langflow/frontend/assets/users-Df0o_CuB.js +6 -0
- langflow/frontend/assets/users-round-BKnPg4da.js +6 -0
- langflow/frontend/assets/utensils-cq-tMQLW.js +6 -0
- langflow/frontend/assets/utensils-crossed-DWzuDxTn.js +6 -0
- langflow/frontend/assets/utility-pole-qRfA8wtY.js +6 -0
- langflow/frontend/assets/variable-B45R7IJK.js +6 -0
- langflow/frontend/assets/vault-SaNUMa_B.js +6 -0
- langflow/frontend/assets/vegan-C2JI0djZ.js +6 -0
- langflow/frontend/assets/venetian-mask-l_dC3fdd.js +6 -0
- langflow/frontend/assets/venus-DNdaOye-.js +6 -0
- langflow/frontend/assets/venus-and-mars-DMUL6DMg.js +6 -0
- langflow/frontend/assets/vibrate-C9HxrpTc.js +6 -0
- langflow/frontend/assets/vibrate-off-w-61vbky.js +6 -0
- langflow/frontend/assets/video-87Z3Lbge.js +6 -0
- langflow/frontend/assets/video-off-BOIzvqoS.js +6 -0
- langflow/frontend/assets/videotape-DwCI9sEE.js +6 -0
- langflow/frontend/assets/view-z8q6zdGE.js +6 -0
- langflow/frontend/assets/voicemail-VlgAyZ7U.js +6 -0
- langflow/frontend/assets/volleyball-CF870KHa.js +6 -0
- langflow/frontend/assets/volume-1-CNxob_Nl.js +6 -0
- langflow/frontend/assets/volume-2-DQomH6nX.js +6 -0
- langflow/frontend/assets/volume-BoHZDoyz.js +6 -0
- langflow/frontend/assets/volume-off-D5MM66Sc.js +6 -0
- langflow/frontend/assets/volume-x-BqytCptf.js +6 -0
- langflow/frontend/assets/vote-Dv_EZ8YN.js +6 -0
- langflow/frontend/assets/wallet-DiTqyz__.js +6 -0
- langflow/frontend/assets/wallet-cards-B6eU3---.js +6 -0
- langflow/frontend/assets/wallet-minimal-BZ4XgiJA.js +6 -0
- langflow/frontend/assets/wallpaper-CoIeU4pe.js +6 -0
- langflow/frontend/assets/wand-Chf-H806.js +6 -0
- langflow/frontend/assets/wand-sparkles--NVEsZKT.js +6 -0
- langflow/frontend/assets/warehouse-CQ7L8eBz.js +6 -0
- langflow/frontend/assets/washing-machine-WMapWZY7.js +6 -0
- langflow/frontend/assets/watch-DwmxDPvs.js +6 -0
- langflow/frontend/assets/waves-bvbK_c78.js +6 -0
- langflow/frontend/assets/waves-ladder-Bv98yPlz.js +6 -0
- langflow/frontend/assets/waypoints-PsEPIFFL.js +6 -0
- langflow/frontend/assets/webcam-02bsO3AI.js +6 -0
- langflow/frontend/assets/webhook-Dx_085r3.js +6 -0
- langflow/frontend/assets/webhook-off-TY8hluXX.js +6 -0
- langflow/frontend/assets/weight-BfWkUxko.js +6 -0
- langflow/frontend/assets/wheat-Cwsqt3C_.js +6 -0
- langflow/frontend/assets/wheat-off-1iG0pZ4K.js +6 -0
- langflow/frontend/assets/whole-word-4BN517Fj.js +6 -0
- langflow/frontend/assets/wifi-BpnpJKhW.js +6 -0
- langflow/frontend/assets/wifi-high-CBK4pbuW.js +6 -0
- langflow/frontend/assets/wifi-low-D0DpTmqi.js +6 -0
- langflow/frontend/assets/wifi-off-BzrDb98-.js +6 -0
- langflow/frontend/assets/wifi-pen-C5DgAR9i.js +6 -0
- langflow/frontend/assets/wifi-zero-DEHB1VJ-.js +6 -0
- langflow/frontend/assets/wind-BxI8NUUR.js +6 -0
- langflow/frontend/assets/wind-arrow-down-BjRs1yLb.js +6 -0
- langflow/frontend/assets/wine-BqMCCO2_.js +6 -0
- langflow/frontend/assets/wine-off-Df34oC2c.js +6 -0
- langflow/frontend/assets/workflow-BvNCAg6i.js +6 -0
- langflow/frontend/assets/worm-BIo_UYvJ.js +6 -0
- langflow/frontend/assets/wrap-text-D3TsRBDd.js +6 -0
- langflow/frontend/assets/wrench-BFkT40qn.js +6 -0
- langflow/frontend/assets/youtube-ChyocX_5.js +6 -0
- langflow/frontend/assets/zap-DUIubQvb.js +6 -0
- langflow/frontend/assets/zap-off-CPra9mqz.js +6 -0
- langflow/frontend/assets/zoom-in-DzwDGluP.js +6 -0
- langflow/frontend/assets/zoom-out-C1sJbBAI.js +6 -0
- langflow/frontend/index.html +2 -2
- langflow/initial_setup/starter_projects/Basic Prompt Chaining.json +31 -1088
- langflow/initial_setup/starter_projects/Basic Prompting.json +197 -136
- langflow/initial_setup/starter_projects/Blog Writer.json +142 -85
- langflow/initial_setup/starter_projects/Custom Component Generator.json +134 -74
- langflow/initial_setup/starter_projects/Document Q&A.json +320 -85
- langflow/initial_setup/starter_projects/Financial Report Parser.json +1 -356
- langflow/initial_setup/starter_projects/Hybrid Search RAG.json +1 -713
- langflow/initial_setup/starter_projects/Image Sentiment Analysis.json +655 -702
- langflow/initial_setup/starter_projects/Instagram Copywriter.json +327 -210
- langflow/initial_setup/starter_projects/Invoice Summarizer.json +50 -26
- langflow/initial_setup/starter_projects/Market Research.json +51 -386
- langflow/initial_setup/starter_projects/Meeting Summary.json +268 -170
- langflow/initial_setup/starter_projects/Memory Chatbot.json +137 -82
- langflow/initial_setup/starter_projects/News Aggregator.json +57 -38
- langflow/initial_setup/starter_projects/Nvidia Remix.json +54 -30
- langflow/initial_setup/starter_projects/Pok/303/251dex Agent.json" +52 -28
- langflow/initial_setup/starter_projects/Portfolio Website Code Generator.json +304 -431
- langflow/initial_setup/starter_projects/Price Deal Finder.json +51 -27
- langflow/initial_setup/starter_projects/Research Agent.json +324 -188
- langflow/initial_setup/starter_projects/Research Translation Loop.json +637 -615
- langflow/initial_setup/starter_projects/SEO Keyword Generator.json +146 -90
- langflow/initial_setup/starter_projects/SaaS Pricing.json +51 -27
- langflow/initial_setup/starter_projects/Search agent.json +50 -26
- langflow/initial_setup/starter_projects/Sequential Tasks Agents.json +156 -69
- langflow/initial_setup/starter_projects/Simple Agent.json +50 -21
- langflow/initial_setup/starter_projects/Social Media Agent.json +50 -21
- langflow/initial_setup/starter_projects/Text Sentiment Analysis.json +584 -257
- langflow/initial_setup/starter_projects/Travel Planning Agents.json +155 -68
- langflow/initial_setup/starter_projects/Twitter Thread Generator.json +138 -82
- langflow/initial_setup/starter_projects/Vector Store RAG.json +317 -86
- langflow/initial_setup/starter_projects/Youtube Analysis.json +828 -827
- langflow/memory.py +6 -2
- langflow/services/deps.py +2 -2
- langflow/services/storage/local.py +13 -8
- langflow/services/storage/s3.py +5 -7
- langflow_base_nightly-1.7.1.dev5.dist-info/METADATA +99 -0
- langflow_base_nightly-1.7.1.dev5.dist-info/RECORD +2283 -0
- langflow/frontend/assets/SlackIcon-CiDRMRPJ.js +0 -1
- langflow/frontend/assets/Wikipedia-Dy2BbcVZ.js +0 -1
- langflow/frontend/assets/Wolfram-Cqcm65J8.js +0 -1
- langflow/frontend/assets/a-arrow-down-D0QDfPwx.js +0 -6
- langflow/frontend/assets/a-arrow-up-DToMBqme.js +0 -6
- langflow/frontend/assets/a-large-small-DoI6Lbmh.js +0 -6
- langflow/frontend/assets/accessibility-Cw-mNMt4.js +0 -6
- langflow/frontend/assets/activity-hWot7v0y.js +0 -6
- langflow/frontend/assets/air-vent-Byvqj6UO.js +0 -6
- langflow/frontend/assets/airplay-DHukvi2i.js +0 -6
- langflow/frontend/assets/alarm-clock-DtrrEQBq.js +0 -6
- langflow/frontend/assets/alarm-clock-check-D6AI3OPX.js +0 -6
- langflow/frontend/assets/alarm-clock-minus-BL3qcCTv.js +0 -6
- langflow/frontend/assets/alarm-clock-off-Cp1EL8zC.js +0 -6
- langflow/frontend/assets/alarm-clock-plus-kX0kuGbg.js +0 -6
- langflow/frontend/assets/alarm-smoke-B_ihQo4m.js +0 -6
- langflow/frontend/assets/album-C7gkxb6p.js +0 -6
- langflow/frontend/assets/align-center-DtKFvIp-.js +0 -6
- langflow/frontend/assets/align-center-horizontal-CmKZBJ3p.js +0 -6
- langflow/frontend/assets/align-center-vertical-BVHpQ5jm.js +0 -6
- langflow/frontend/assets/align-end-horizontal-CnTv9v1g.js +0 -6
- langflow/frontend/assets/align-end-vertical-DOXV_CPn.js +0 -6
- langflow/frontend/assets/align-horizontal-distribute-center-Gp4cXira.js +0 -6
- langflow/frontend/assets/align-horizontal-distribute-end-TJv5yc-l.js +0 -6
- langflow/frontend/assets/align-horizontal-distribute-start-Dma5h49X.js +0 -6
- langflow/frontend/assets/align-horizontal-justify-center-D_Va6wiK.js +0 -6
- langflow/frontend/assets/align-horizontal-justify-end-C6QiubjB.js +0 -6
- langflow/frontend/assets/align-horizontal-justify-start-XdwaVYgG.js +0 -6
- langflow/frontend/assets/align-horizontal-space-around-X1tLLrkW.js +0 -6
- langflow/frontend/assets/align-horizontal-space-between-Dh3018_K.js +0 -6
- langflow/frontend/assets/align-justify-DHg8_U1g.js +0 -6
- langflow/frontend/assets/align-left-DhwQkbhk.js +0 -6
- langflow/frontend/assets/align-right-BPRo6jGb.js +0 -6
- langflow/frontend/assets/align-start-horizontal-BCuSphdX.js +0 -6
- langflow/frontend/assets/align-start-vertical-ab2DXCS5.js +0 -6
- langflow/frontend/assets/align-vertical-distribute-center-DFhGK-rN.js +0 -6
- langflow/frontend/assets/align-vertical-distribute-end-Dfe56eVW.js +0 -6
- langflow/frontend/assets/align-vertical-distribute-start-URfCfDOt.js +0 -6
- langflow/frontend/assets/align-vertical-justify-center-Io8SQ_x_.js +0 -6
- langflow/frontend/assets/align-vertical-justify-end-BRreSma-.js +0 -6
- langflow/frontend/assets/align-vertical-justify-start-BKE4PAN5.js +0 -6
- langflow/frontend/assets/align-vertical-space-around-BUAWwmKu.js +0 -6
- langflow/frontend/assets/align-vertical-space-between-D0dmJ62l.js +0 -6
- langflow/frontend/assets/ambulance-CBSM6r9I.js +0 -6
- langflow/frontend/assets/ampersand-OwbxfSoT.js +0 -6
- langflow/frontend/assets/ampersands-phDhbc5_.js +0 -6
- langflow/frontend/assets/amphora-XJ0wSntH.js +0 -6
- langflow/frontend/assets/anchor-YZR9yXb1.js +0 -6
- langflow/frontend/assets/angry-7RJyr8Ks.js +0 -6
- langflow/frontend/assets/annoyed-CQgFRIXq.js +0 -6
- langflow/frontend/assets/antenna-DWt3JquC.js +0 -6
- langflow/frontend/assets/anvil-oydRBR5k.js +0 -6
- langflow/frontend/assets/aperture-ConT4Ais.js +0 -6
- langflow/frontend/assets/app-window-BEQBdken.js +0 -6
- langflow/frontend/assets/app-window-mac-derfeq8Q.js +0 -6
- langflow/frontend/assets/apple-oQkXFKHk.js +0 -6
- langflow/frontend/assets/archive-DL4Jju_X.js +0 -6
- langflow/frontend/assets/archive-restore-tbbdtHnz.js +0 -6
- langflow/frontend/assets/archive-x-B9xJPjFQ.js +0 -6
- langflow/frontend/assets/armchair-BZsNazfR.js +0 -6
- langflow/frontend/assets/arrow-big-down-_w3gYubJ.js +0 -6
- langflow/frontend/assets/arrow-big-down-dash-ZWzf7_Vm.js +0 -6
- langflow/frontend/assets/arrow-big-left-CwRD-vU8.js +0 -6
- langflow/frontend/assets/arrow-big-left-dash-CLj6et2F.js +0 -6
- langflow/frontend/assets/arrow-big-right-BU1ZIOoI.js +0 -6
- langflow/frontend/assets/arrow-big-right-dash-mVNtCmy4.js +0 -6
- langflow/frontend/assets/arrow-big-up-MZBxWcLb.js +0 -6
- langflow/frontend/assets/arrow-big-up-dash-BTSaZ3rL.js +0 -6
- langflow/frontend/assets/arrow-down-0-1-CtQvLh_F.js +0 -6
- langflow/frontend/assets/arrow-down-1-0-G0DV_-jJ.js +0 -6
- langflow/frontend/assets/arrow-down-B-l93xHD.js +0 -6
- langflow/frontend/assets/arrow-down-a-z-Tzg5tpD_.js +0 -6
- langflow/frontend/assets/arrow-down-from-line-B66kDVSw.js +0 -6
- langflow/frontend/assets/arrow-down-left-Bb9_3CCF.js +0 -6
- langflow/frontend/assets/arrow-down-narrow-wide-DVQ_iZIB.js +0 -6
- langflow/frontend/assets/arrow-down-right-BrFOGPEk.js +0 -6
- langflow/frontend/assets/arrow-down-to-dot-BUHlbyD0.js +0 -6
- langflow/frontend/assets/arrow-down-to-line-CUx9iPzf.js +0 -6
- langflow/frontend/assets/arrow-down-up-DEGIbqld.js +0 -6
- langflow/frontend/assets/arrow-down-wide-narrow-BDGmkk1h.js +0 -6
- langflow/frontend/assets/arrow-down-z-a-CZLqKUx0.js +0 -6
- langflow/frontend/assets/arrow-left-B_OBt03y.js +0 -6
- langflow/frontend/assets/arrow-left-from-line-9ufi0ecO.js +0 -6
- langflow/frontend/assets/arrow-left-right-gOh2Y7oY.js +0 -6
- langflow/frontend/assets/arrow-left-to-line-D70iFjNH.js +0 -6
- langflow/frontend/assets/arrow-right-CKq9pdal.js +0 -6
- langflow/frontend/assets/arrow-right-from-line-DvnunoU0.js +0 -6
- langflow/frontend/assets/arrow-right-left-_2oF7m9r.js +0 -6
- langflow/frontend/assets/arrow-right-to-line-BxWsuvcP.js +0 -6
- langflow/frontend/assets/arrow-up-0-1-UrjSfDJn.js +0 -6
- langflow/frontend/assets/arrow-up-1-0-CM2dh3AB.js +0 -6
- langflow/frontend/assets/arrow-up-D_Y7BGJZ.js +0 -6
- langflow/frontend/assets/arrow-up-a-z-CZ5_KOss.js +0 -6
- langflow/frontend/assets/arrow-up-down-D-WPBja4.js +0 -6
- langflow/frontend/assets/arrow-up-from-dot-C1ebyeMB.js +0 -6
- langflow/frontend/assets/arrow-up-from-line-BGDFNOIe.js +0 -6
- langflow/frontend/assets/arrow-up-left-oYJa1lK6.js +0 -6
- langflow/frontend/assets/arrow-up-narrow-wide-CL-SemHX.js +0 -6
- langflow/frontend/assets/arrow-up-right-q5RfBzKt.js +0 -6
- langflow/frontend/assets/arrow-up-to-line-D9O_vbe8.js +0 -6
- langflow/frontend/assets/arrow-up-wide-narrow-C1Q3vBuZ.js +0 -6
- langflow/frontend/assets/arrow-up-z-a-D-kVvjSu.js +0 -6
- langflow/frontend/assets/arrows-up-from-line-DJQdeKsZ.js +0 -6
- langflow/frontend/assets/asterisk-Ca3MsPZE.js +0 -6
- langflow/frontend/assets/at-sign-BAJSJ1qU.js +0 -6
- langflow/frontend/assets/atom-BvwGZJ3B.js +0 -6
- langflow/frontend/assets/audio-lines-Du741dSy.js +0 -6
- langflow/frontend/assets/audio-waveform-esSOCFic.js +0 -6
- langflow/frontend/assets/award-B4Q8oZG_.js +0 -6
- langflow/frontend/assets/axe-CVfqqqJ0.js +0 -6
- langflow/frontend/assets/axis-3d-DeT-zV7X.js +0 -6
- langflow/frontend/assets/baby-BdI6Bx5H.js +0 -6
- langflow/frontend/assets/backpack-YYgLRu05.js +0 -6
- langflow/frontend/assets/badge-CtIB0t_6.js +0 -6
- langflow/frontend/assets/badge-alert-BqPiZdq9.js +0 -6
- langflow/frontend/assets/badge-cent-Dzwmq_lP.js +0 -6
- langflow/frontend/assets/badge-check-DszgZEqQ.js +0 -6
- langflow/frontend/assets/badge-dollar-sign-D6_EslRQ.js +0 -6
- langflow/frontend/assets/badge-euro-BQql-pg0.js +0 -6
- langflow/frontend/assets/badge-help-BnNCR5F0.js +0 -6
- langflow/frontend/assets/badge-indian-rupee-BIYCaJCb.js +0 -6
- langflow/frontend/assets/badge-info-Dri8mwgT.js +0 -6
- langflow/frontend/assets/badge-japanese-yen-BwcOCoeZ.js +0 -6
- langflow/frontend/assets/badge-minus-DBkvvSwv.js +0 -6
- langflow/frontend/assets/badge-percent-Cxy2Fo-N.js +0 -6
- langflow/frontend/assets/badge-plus-DE8fShhE.js +0 -6
- langflow/frontend/assets/badge-pound-sterling-BofEzkg2.js +0 -6
- langflow/frontend/assets/badge-russian-ruble-Cm0gaD62.js +0 -6
- langflow/frontend/assets/badge-swiss-franc-DrYVhggb.js +0 -6
- langflow/frontend/assets/badge-x-BX5JqZV7.js +0 -6
- langflow/frontend/assets/baggage-claim-DvpoauZf.js +0 -6
- langflow/frontend/assets/ban-B1KHPWy2.js +0 -6
- langflow/frontend/assets/banana-CfdacHC0.js +0 -6
- langflow/frontend/assets/bandage-D_DmeXTQ.js +0 -6
- langflow/frontend/assets/banknote-CGf35Nu_.js +0 -6
- langflow/frontend/assets/banknote-arrow-down-Bsk5AYgW.js +0 -6
- langflow/frontend/assets/banknote-arrow-up-DxrrWbYd.js +0 -6
- langflow/frontend/assets/banknote-x-CNLoLyte.js +0 -6
- langflow/frontend/assets/barcode-CkAiQpv_.js +0 -6
- langflow/frontend/assets/baseline-DmSN7vJT.js +0 -6
- langflow/frontend/assets/bath-BVUupyhv.js +0 -6
- langflow/frontend/assets/battery-CEAwSkFP.js +0 -6
- langflow/frontend/assets/battery-charging-BfLCX2-h.js +0 -6
- langflow/frontend/assets/battery-full-0iDVp-o0.js +0 -6
- langflow/frontend/assets/battery-low-BcZQ08Dw.js +0 -6
- langflow/frontend/assets/battery-medium-DGqJYD1t.js +0 -6
- langflow/frontend/assets/battery-plus-BOSFZqZe.js +0 -6
- langflow/frontend/assets/battery-warning-ic4lJJVp.js +0 -6
- langflow/frontend/assets/beaker-BFuons2p.js +0 -6
- langflow/frontend/assets/bean-8vnDx1I9.js +0 -6
- langflow/frontend/assets/bean-off-Ysohtf4O.js +0 -6
- langflow/frontend/assets/bed-DuqIrPmN.js +0 -6
- langflow/frontend/assets/bed-double-BAIWPGsm.js +0 -6
- langflow/frontend/assets/bed-single-YYvXUljj.js +0 -6
- langflow/frontend/assets/beef-CK-4EOk9.js +0 -6
- langflow/frontend/assets/beer-DxRkOXll.js +0 -6
- langflow/frontend/assets/beer-off-ca2uo1xU.js +0 -6
- langflow/frontend/assets/bell-Udiy8X0N.js +0 -6
- langflow/frontend/assets/bell-dot-BBHKkc5C.js +0 -6
- langflow/frontend/assets/bell-electric-gUJz2OHW.js +0 -6
- langflow/frontend/assets/bell-minus-CVq_mjkN.js +0 -6
- langflow/frontend/assets/bell-off-0qN--6Yo.js +0 -6
- langflow/frontend/assets/bell-plus-BhRzK6QJ.js +0 -6
- langflow/frontend/assets/bell-ring-DjQSsyYE.js +0 -6
- langflow/frontend/assets/between-horizontal-end-NpyCdfOE.js +0 -6
- langflow/frontend/assets/between-horizontal-start-Dnpc4BAO.js +0 -6
- langflow/frontend/assets/between-vertical-end-CHrjEpfS.js +0 -6
- langflow/frontend/assets/between-vertical-start-DKJs53Sx.js +0 -6
- langflow/frontend/assets/biceps-flexed-CsE7dV3u.js +0 -6
- langflow/frontend/assets/bike-CVR0RzpQ.js +0 -6
- langflow/frontend/assets/binary-Bcih0o69.js +0 -6
- langflow/frontend/assets/binoculars-ICtPwNib.js +0 -6
- langflow/frontend/assets/biohazard-D03rerME.js +0 -6
- langflow/frontend/assets/bird-B5I4-Y1a.js +0 -6
- langflow/frontend/assets/bitcoin-CY0RUO73.js +0 -6
- langflow/frontend/assets/blend-ByVWGP-D.js +0 -6
- langflow/frontend/assets/blinds-8P6aWn71.js +0 -6
- langflow/frontend/assets/blocks-C7fg3_Sh.js +0 -6
- langflow/frontend/assets/bluetooth-DF_2-I3H.js +0 -6
- langflow/frontend/assets/bluetooth-connected-C7eddUdy.js +0 -6
- langflow/frontend/assets/bluetooth-off-Br88awpS.js +0 -6
- langflow/frontend/assets/bluetooth-searching-B4WptJbX.js +0 -6
- langflow/frontend/assets/bold-CqjK5dvo.js +0 -6
- langflow/frontend/assets/bolt-D9ewNwxl.js +0 -6
- langflow/frontend/assets/bomb-D89BBj0x.js +0 -6
- langflow/frontend/assets/bone-DZfW0e9X.js +0 -6
- langflow/frontend/assets/book-CU5lbLsx.js +0 -6
- langflow/frontend/assets/book-a-DyEiNbAO.js +0 -6
- langflow/frontend/assets/book-audio-BOz0SK3h.js +0 -6
- langflow/frontend/assets/book-check-bAiLk1v0.js +0 -6
- langflow/frontend/assets/book-copy-Bjyl8Dxj.js +0 -6
- langflow/frontend/assets/book-dashed-87-hTIj-.js +0 -6
- langflow/frontend/assets/book-down-DMGDvX6c.js +0 -6
- langflow/frontend/assets/book-headphones-DxzgLbtY.js +0 -6
- langflow/frontend/assets/book-heart-CoddRiQc.js +0 -6
- langflow/frontend/assets/book-image-Bvm0otFu.js +0 -6
- langflow/frontend/assets/book-key-Crv25-1b.js +0 -6
- langflow/frontend/assets/book-lock-CE-TUGNT.js +0 -6
- langflow/frontend/assets/book-marked-DyXwsEf8.js +0 -6
- langflow/frontend/assets/book-minus-B4Q7tkGf.js +0 -6
- langflow/frontend/assets/book-open-BwdF_mSV.js +0 -6
- langflow/frontend/assets/book-open-check-DAKXiQog.js +0 -6
- langflow/frontend/assets/book-open-text-DmYpNWDa.js +0 -6
- langflow/frontend/assets/book-plus-nDtW0juH.js +0 -6
- langflow/frontend/assets/book-text-A0c-fc0P.js +0 -6
- langflow/frontend/assets/book-type-Byqm2yjx.js +0 -6
- langflow/frontend/assets/book-up-2-CoIJp0vk.js +0 -6
- langflow/frontend/assets/book-up-PCEt_ENQ.js +0 -6
- langflow/frontend/assets/book-user-TA8Et36C.js +0 -6
- langflow/frontend/assets/book-x-BFRasTEI.js +0 -6
- langflow/frontend/assets/bookmark-BJ6wtUhD.js +0 -6
- langflow/frontend/assets/bookmark-check-CxMqJ7-P.js +0 -6
- langflow/frontend/assets/bookmark-minus-B0_-EHIw.js +0 -6
- langflow/frontend/assets/bookmark-plus-CZbCCZjc.js +0 -6
- langflow/frontend/assets/bookmark-x-CXVmt1v4.js +0 -6
- langflow/frontend/assets/boom-box-CgZrwetT.js +0 -6
- langflow/frontend/assets/bot-DQRMipsE.js +0 -6
- langflow/frontend/assets/bot-message-square-CZBvDG_-.js +0 -6
- langflow/frontend/assets/bot-off-vPdD2RlP.js +0 -6
- langflow/frontend/assets/bow-arrow-EPgHlepf.js +0 -6
- langflow/frontend/assets/box-BgDOdcN1.js +0 -6
- langflow/frontend/assets/boxes-1Ph2c29h.js +0 -6
- langflow/frontend/assets/braces-C3gETHIP.js +0 -6
- langflow/frontend/assets/brackets-DQQ4xUwP.js +0 -6
- langflow/frontend/assets/brain-CKgUPawu.js +0 -6
- langflow/frontend/assets/brain-circuit-71o2XFnH.js +0 -6
- langflow/frontend/assets/brain-cog-CkwmrEVa.js +0 -6
- langflow/frontend/assets/brick-wall-CIfP2291.js +0 -6
- langflow/frontend/assets/brick-wall-fire-CVapRCpF.js +0 -6
- langflow/frontend/assets/briefcase-CUCjqLGO.js +0 -6
- langflow/frontend/assets/briefcase-business-C6KvOrlm.js +0 -6
- langflow/frontend/assets/briefcase-conveyor-belt-D8-KT8xV.js +0 -6
- langflow/frontend/assets/briefcase-medical-BMcjLsMG.js +0 -6
- langflow/frontend/assets/bring-to-front-BglFFtX9.js +0 -6
- langflow/frontend/assets/brush-BlEF7vZs.js +0 -6
- langflow/frontend/assets/bubbles-Cm5afSpk.js +0 -6
- langflow/frontend/assets/bug-CROT4EB9.js +0 -6
- langflow/frontend/assets/bug-off-B5pdze6F.js +0 -6
- langflow/frontend/assets/bug-play-B6XD7tsh.js +0 -6
- langflow/frontend/assets/building-2-CsWtjYjF.js +0 -6
- langflow/frontend/assets/building-CzrfPDJV.js +0 -6
- langflow/frontend/assets/bus-C-85lnrJ.js +0 -6
- langflow/frontend/assets/bus-front-Cxmu9qEn.js +0 -6
- langflow/frontend/assets/cable-B58qv4J-.js +0 -6
- langflow/frontend/assets/cable-car-BHokOmFT.js +0 -6
- langflow/frontend/assets/cake-CGFaGIrC.js +0 -6
- langflow/frontend/assets/cake-slice-BBjohR7D.js +0 -6
- langflow/frontend/assets/calculator-B-0BeATJ.js +0 -6
- langflow/frontend/assets/calendar-1-cuaB_r0e.js +0 -6
- langflow/frontend/assets/calendar-DTeTAlFN.js +0 -6
- langflow/frontend/assets/calendar-arrow-down-C-nN5_4E.js +0 -6
- langflow/frontend/assets/calendar-arrow-up-friUOxYZ.js +0 -6
- langflow/frontend/assets/calendar-check-2-Ddx3rWxC.js +0 -6
- langflow/frontend/assets/calendar-check-CVcw0Oaa.js +0 -6
- langflow/frontend/assets/calendar-clock-DB3BqPqH.js +0 -6
- langflow/frontend/assets/calendar-cog-qufoRfNY.js +0 -6
- langflow/frontend/assets/calendar-days-JGKw613e.js +0 -6
- langflow/frontend/assets/calendar-fold-xVSKci71.js +0 -6
- langflow/frontend/assets/calendar-heart-DVc8QSMQ.js +0 -6
- langflow/frontend/assets/calendar-minus-2-XIDnJ8bN.js +0 -6
- langflow/frontend/assets/calendar-minus-BG-9Gyu2.js +0 -6
- langflow/frontend/assets/calendar-off-U_58_9a9.js +0 -6
- langflow/frontend/assets/calendar-plus-2-DlZ32tDq.js +0 -6
- langflow/frontend/assets/calendar-plus-wPVwP8XH.js +0 -6
- langflow/frontend/assets/calendar-range-Dh3Mn4wk.js +0 -6
- langflow/frontend/assets/calendar-search-BYxcN8lZ.js +0 -6
- langflow/frontend/assets/calendar-sync-Dml9hu0M.js +0 -6
- langflow/frontend/assets/calendar-x-2-BCfg_6G9.js +0 -6
- langflow/frontend/assets/calendar-x-_X2UsDsD.js +0 -6
- langflow/frontend/assets/camera-Bq6YMUSz.js +0 -6
- langflow/frontend/assets/camera-off-D87mM-V8.js +0 -6
- langflow/frontend/assets/candy-B-0zd1zJ.js +0 -6
- langflow/frontend/assets/candy-cane-B02xZ8Yh.js +0 -6
- langflow/frontend/assets/candy-off-B31YgP4X.js +0 -6
- langflow/frontend/assets/cannabis-vbR60kvp.js +0 -6
- langflow/frontend/assets/captions-IapwnCWY.js +0 -6
- langflow/frontend/assets/captions-off-Cqyp0BCZ.js +0 -6
- langflow/frontend/assets/car-CFU8YDmN.js +0 -6
- langflow/frontend/assets/car-front-uwGBK8Yy.js +0 -6
- langflow/frontend/assets/car-taxi-front-9uT_Py1s.js +0 -6
- langflow/frontend/assets/caravan-CucvY9fQ.js +0 -6
- langflow/frontend/assets/carrot-Bb2TYO_E.js +0 -6
- langflow/frontend/assets/case-lower-DAlIbIk7.js +0 -6
- langflow/frontend/assets/case-sensitive-DVwMfk_g.js +0 -6
- langflow/frontend/assets/case-upper-DCIiTCMq.js +0 -6
- langflow/frontend/assets/cassette-tape-Bdfd7Nu2.js +0 -6
- langflow/frontend/assets/cast-C703ktdG.js +0 -6
- langflow/frontend/assets/castle-CMOrKjig.js +0 -6
- langflow/frontend/assets/cat-BAQE-Uvu.js +0 -6
- langflow/frontend/assets/cctv-Bm1ksqgN.js +0 -6
- langflow/frontend/assets/chart-area-0ZVeQsVc.js +0 -6
- langflow/frontend/assets/chart-bar-D9XeOk_i.js +0 -6
- langflow/frontend/assets/chart-bar-big-CW3qe26X.js +0 -6
- langflow/frontend/assets/chart-bar-decreasing-C0-1_ZyP.js +0 -6
- langflow/frontend/assets/chart-bar-increasing-CkeXMrpE.js +0 -6
- langflow/frontend/assets/chart-bar-stacked-LJjgMToq.js +0 -6
- langflow/frontend/assets/chart-candlestick-k1gVX8Te.js +0 -6
- langflow/frontend/assets/chart-column-BBJrPy0c.js +0 -6
- langflow/frontend/assets/chart-column-big-DcVBLwTs.js +0 -6
- langflow/frontend/assets/chart-column-decreasing-Cadd5KDq.js +0 -6
- langflow/frontend/assets/chart-column-increasing-CVGwOZ7O.js +0 -6
- langflow/frontend/assets/chart-column-stacked-nkTWIhS7.js +0 -6
- langflow/frontend/assets/chart-gantt-CDUJnFDM.js +0 -6
- langflow/frontend/assets/chart-line-CZBVm0lz.js +0 -6
- langflow/frontend/assets/chart-network-35pXQTAP.js +0 -6
- langflow/frontend/assets/chart-no-axes-column-cNjR2jbE.js +0 -6
- langflow/frontend/assets/chart-no-axes-column-decreasing-BOmLD1-Q.js +0 -6
- langflow/frontend/assets/chart-no-axes-column-increasing-yAD6_Y5Q.js +0 -6
- langflow/frontend/assets/chart-no-axes-combined-BkyhRYPE.js +0 -6
- langflow/frontend/assets/chart-no-axes-gantt-BnnWuplR.js +0 -6
- langflow/frontend/assets/chart-pie-D345szvo.js +0 -6
- langflow/frontend/assets/chart-scatter-BCE828AF.js +0 -6
- langflow/frontend/assets/chart-spline-DezWqFYo.js +0 -6
- langflow/frontend/assets/check-check-jYR0NdUS.js +0 -6
- langflow/frontend/assets/chef-hat-dWKJciCE.js +0 -6
- langflow/frontend/assets/cherry-C1B8wlvn.js +0 -6
- langflow/frontend/assets/chevron-first-DMbVTlgQ.js +0 -6
- langflow/frontend/assets/chevron-last-DUFi9nfs.js +0 -6
- langflow/frontend/assets/chevron-left-YByHwjJF.js +0 -6
- langflow/frontend/assets/chevron-right-BY1WKmJZ.js +0 -6
- langflow/frontend/assets/chevrons-down-CrEwkPTZ.js +0 -6
- langflow/frontend/assets/chevrons-down-up-B5omkIRL.js +0 -6
- langflow/frontend/assets/chevrons-left-CM5G6uIl.js +0 -6
- langflow/frontend/assets/chevrons-left-right-B3JKONgK.js +0 -6
- langflow/frontend/assets/chevrons-left-right-ellipsis-BsM6mFG_.js +0 -6
- langflow/frontend/assets/chevrons-right-fATY3ztz.js +0 -6
- langflow/frontend/assets/chevrons-right-left-CByP6P6z.js +0 -6
- langflow/frontend/assets/chevrons-up-CbWgePoj.js +0 -6
- langflow/frontend/assets/chrome-CWus5OOn.js +0 -6
- langflow/frontend/assets/church-DpYoZOhe.js +0 -6
- langflow/frontend/assets/cigarette-BmmVmlkc.js +0 -6
- langflow/frontend/assets/cigarette-off-CIEgMxHs.js +0 -6
- langflow/frontend/assets/circle-alert-CGmUq1ya.js +0 -6
- langflow/frontend/assets/circle-arrow-down-8jMDMeCm.js +0 -6
- langflow/frontend/assets/circle-arrow-left-CWYEEHDb.js +0 -6
- langflow/frontend/assets/circle-arrow-out-down-left-PqJt80DA.js +0 -6
- langflow/frontend/assets/circle-arrow-out-down-right-Bo9MkoPr.js +0 -6
- langflow/frontend/assets/circle-arrow-out-up-left-Bc0KGGYv.js +0 -6
- langflow/frontend/assets/circle-arrow-out-up-right-ByDZT4Rk.js +0 -6
- langflow/frontend/assets/circle-arrow-right-HbEOzhU9.js +0 -6
- langflow/frontend/assets/circle-arrow-up-ytUDzbm6.js +0 -6
- langflow/frontend/assets/circle-check-big-CXyZID9v.js +0 -6
- langflow/frontend/assets/circle-check-pEV54vM8.js +0 -6
- langflow/frontend/assets/circle-chevron-down-DS_rpf-8.js +0 -6
- langflow/frontend/assets/circle-chevron-left-CKeX3Rs-.js +0 -6
- langflow/frontend/assets/circle-chevron-right-DCI9ueTi.js +0 -6
- langflow/frontend/assets/circle-chevron-up-CptWpWQz.js +0 -6
- langflow/frontend/assets/circle-dashed-BYSh0yLh.js +0 -6
- langflow/frontend/assets/circle-divide-CaJ8BhKC.js +0 -6
- langflow/frontend/assets/circle-dollar-sign-bP6otW6i.js +0 -6
- langflow/frontend/assets/circle-dot-Dm-xR7J-.js +0 -6
- langflow/frontend/assets/circle-dot-dashed-DgOLrW-Y.js +0 -6
- langflow/frontend/assets/circle-ellipsis-CyuQbkx5.js +0 -6
- langflow/frontend/assets/circle-equal-ssfZnjeF.js +0 -6
- langflow/frontend/assets/circle-fading-arrow-up-CySl1dVh.js +0 -6
- langflow/frontend/assets/circle-fading-plus-DMkF1waP.js +0 -6
- langflow/frontend/assets/circle-gauge-BGrOst9L.js +0 -6
- langflow/frontend/assets/circle-help-CdMXDZFr.js +0 -6
- langflow/frontend/assets/circle-minus-DXLI43-p.js +0 -6
- langflow/frontend/assets/circle-off-C0JmuYH0.js +0 -6
- langflow/frontend/assets/circle-parking-CaoT_oV9.js +0 -6
- langflow/frontend/assets/circle-parking-off-Wl6mU15R.js +0 -6
- langflow/frontend/assets/circle-pause-nra2vq3x.js +0 -6
- langflow/frontend/assets/circle-percent-BtjKjrfI.js +0 -6
- langflow/frontend/assets/circle-play-BE-c8K8S.js +0 -6
- langflow/frontend/assets/circle-plus-PzFpxIZH.js +0 -6
- langflow/frontend/assets/circle-power-Ha2F1tSB.js +0 -6
- langflow/frontend/assets/circle-slash-2-DHcrnWlR.js +0 -6
- langflow/frontend/assets/circle-slash-CA-S0W4g.js +0 -6
- langflow/frontend/assets/circle-small-BvhryrIK.js +0 -6
- langflow/frontend/assets/circle-stop-Ct35yBZk.js +0 -6
- langflow/frontend/assets/circle-user-CPz8bqCl.js +0 -6
- langflow/frontend/assets/circle-user-round-yXIR-WgU.js +0 -6
- langflow/frontend/assets/circuit-board-CVkWlM5E.js +0 -6
- langflow/frontend/assets/citrus-BZCxNd7O.js +0 -6
- langflow/frontend/assets/clapperboard-dK4xZgsP.js +0 -6
- langflow/frontend/assets/clipboard-Ds5Z07sv.js +0 -6
- langflow/frontend/assets/clipboard-check-CT7rgWE7.js +0 -6
- langflow/frontend/assets/clipboard-copy-7ubC4Yza.js +0 -6
- langflow/frontend/assets/clipboard-list-o0oDhA77.js +0 -6
- langflow/frontend/assets/clipboard-minus-0Tz_adOm.js +0 -6
- langflow/frontend/assets/clipboard-paste-CoL1xZzr.js +0 -6
- langflow/frontend/assets/clipboard-pen-DuFR5bFR.js +0 -6
- langflow/frontend/assets/clipboard-pen-line-DGQtHbq3.js +0 -6
- langflow/frontend/assets/clipboard-plus-Y_fHUXMT.js +0 -6
- langflow/frontend/assets/clipboard-type-Du6tDpB5.js +0 -6
- langflow/frontend/assets/clipboard-x-CXlHspQq.js +0 -6
- langflow/frontend/assets/clock-1-Cy6_CrM-.js +0 -6
- langflow/frontend/assets/clock-10-DsU4PSzZ.js +0 -6
- langflow/frontend/assets/clock-11-DW5wXcwz.js +0 -6
- langflow/frontend/assets/clock-12-DRROOWaF.js +0 -6
- langflow/frontend/assets/clock-2-BYx-WvG0.js +0 -6
- langflow/frontend/assets/clock-3-BuBfWBH5.js +0 -6
- langflow/frontend/assets/clock-4-YZVu0Ndv.js +0 -6
- langflow/frontend/assets/clock-4ZjirP4v.js +0 -6
- langflow/frontend/assets/clock-5-OFWQOHb4.js +0 -6
- langflow/frontend/assets/clock-6-DxeICftX.js +0 -6
- langflow/frontend/assets/clock-7-CXQOXN6H.js +0 -6
- langflow/frontend/assets/clock-8-3KkUcd3O.js +0 -6
- langflow/frontend/assets/clock-9-6wbf25s1.js +0 -6
- langflow/frontend/assets/clock-alert-D452LIEg.js +0 -6
- langflow/frontend/assets/clock-arrow-down-TZUf1BSr.js +0 -6
- langflow/frontend/assets/clock-arrow-up-FXv7ULpb.js +0 -6
- langflow/frontend/assets/clock-fading-Da23qbqo.js +0 -6
- langflow/frontend/assets/cloud-Bo7mxJI_.js +0 -6
- langflow/frontend/assets/cloud-alert-BS8A9duL.js +0 -6
- langflow/frontend/assets/cloud-cog-Dpz4nFHS.js +0 -6
- langflow/frontend/assets/cloud-download-BVDMyr-G.js +0 -6
- langflow/frontend/assets/cloud-drizzle-BF3Y0HIk.js +0 -6
- langflow/frontend/assets/cloud-fog-B36RLGg6.js +0 -6
- langflow/frontend/assets/cloud-hail-CIDuu6t8.js +0 -6
- langflow/frontend/assets/cloud-lightning-CAi65H2c.js +0 -6
- langflow/frontend/assets/cloud-moon-qTvrUE7I.js +0 -6
- langflow/frontend/assets/cloud-moon-rain-ow_c2stP.js +0 -6
- langflow/frontend/assets/cloud-off-BLZed7la.js +0 -6
- langflow/frontend/assets/cloud-rain-CkjUfBVa.js +0 -6
- langflow/frontend/assets/cloud-rain-wind-B8R8wlV5.js +0 -6
- langflow/frontend/assets/cloud-snow-jnovgErB.js +0 -6
- langflow/frontend/assets/cloud-sun-Bfiu6mlL.js +0 -6
- langflow/frontend/assets/cloud-sun-rain-DHrnuDTE.js +0 -6
- langflow/frontend/assets/cloud-upload-E5DtpyCY.js +0 -6
- langflow/frontend/assets/cloudy-DpXNakKX.js +0 -6
- langflow/frontend/assets/clover-CSiWVDIr.js +0 -6
- langflow/frontend/assets/club-BwR217MS.js +0 -6
- langflow/frontend/assets/code-xml-DlFYVj3F.js +0 -6
- langflow/frontend/assets/codepen-UiUQU8WH.js +0 -6
- langflow/frontend/assets/codesandbox-B_mdLC3X.js +0 -6
- langflow/frontend/assets/coffee-DikHS02J.js +0 -6
- langflow/frontend/assets/cog-D2FSybxc.js +0 -6
- langflow/frontend/assets/coins-B3Ya8Atq.js +0 -6
- langflow/frontend/assets/columns-2-Drto25WB.js +0 -6
- langflow/frontend/assets/columns-3-CmrffVop.js +0 -6
- langflow/frontend/assets/columns-3-cog-CoWf_Nd8.js +0 -6
- langflow/frontend/assets/columns-4-H_EZ1mDg.js +0 -6
- langflow/frontend/assets/combine-mDtTaynV.js +0 -6
- langflow/frontend/assets/command-DSyz5JVi.js +0 -6
- langflow/frontend/assets/compass-BUS0JqW-.js +0 -6
- langflow/frontend/assets/component-CfzKr799.js +0 -6
- langflow/frontend/assets/computer-CN82ro8w.js +0 -6
- langflow/frontend/assets/concierge-bell-ByYUTkOH.js +0 -6
- langflow/frontend/assets/cone-D28CyZL2.js +0 -6
- langflow/frontend/assets/construction-BXaUJNkf.js +0 -6
- langflow/frontend/assets/contact-BODZSa_7.js +0 -6
- langflow/frontend/assets/contact-round-vAysxw5u.js +0 -6
- langflow/frontend/assets/container-i-a2gr02.js +0 -6
- langflow/frontend/assets/contrast-CbcHXjip.js +0 -6
- langflow/frontend/assets/cookie-hLfPjk6N.js +0 -6
- langflow/frontend/assets/cooking-pot-B4uLRrHG.js +0 -6
- langflow/frontend/assets/copy-4ZcB4prM.js +0 -6
- langflow/frontend/assets/copy-check-CUGgeRgc.js +0 -6
- langflow/frontend/assets/copy-minus-CB5xeyvB.js +0 -6
- langflow/frontend/assets/copy-plus-B8G2k-oB.js +0 -6
- langflow/frontend/assets/copy-slash-5Ap4tA3k.js +0 -6
- langflow/frontend/assets/copy-x-BhfHJzxP.js +0 -6
- langflow/frontend/assets/copyleft-CXRD8E9w.js +0 -6
- langflow/frontend/assets/copyright-BiA3grV6.js +0 -6
- langflow/frontend/assets/corner-down-left-ClJMDHI0.js +0 -6
- langflow/frontend/assets/corner-down-right-DCRPuYSm.js +0 -6
- langflow/frontend/assets/corner-left-down-BvS0G4W9.js +0 -6
- langflow/frontend/assets/corner-left-up-DWHo1WXV.js +0 -6
- langflow/frontend/assets/corner-right-down-BBB10evG.js +0 -6
- langflow/frontend/assets/corner-right-up-DXbv20S0.js +0 -6
- langflow/frontend/assets/corner-up-left-DomYLrA5.js +0 -6
- langflow/frontend/assets/corner-up-right-DEtvY6ys.js +0 -6
- langflow/frontend/assets/cpu-Dh88Q9fD.js +0 -6
- langflow/frontend/assets/creative-commons-BAe3nwZQ.js +0 -6
- langflow/frontend/assets/credit-card-DaB3cpBZ.js +0 -6
- langflow/frontend/assets/croissant-D96TGpzu.js +0 -6
- langflow/frontend/assets/crop-C8FxaeL1.js +0 -6
- langflow/frontend/assets/cross-5bdVltt9.js +0 -6
- langflow/frontend/assets/crosshair-CyZbfDct.js +0 -6
- langflow/frontend/assets/crown-BZnnOYwP.js +0 -6
- langflow/frontend/assets/cuboid-BqWogU5y.js +0 -6
- langflow/frontend/assets/cup-soda-Dz7NtIvF.js +0 -6
- langflow/frontend/assets/currency-5tPdc9Zh.js +0 -6
- langflow/frontend/assets/cylinder-B4mmn8ns.js +0 -6
- langflow/frontend/assets/dam-C2fbdkPV.js +0 -6
- langflow/frontend/assets/database-C8DmijcH.js +0 -6
- langflow/frontend/assets/database-backup-71ce-aHZ.js +0 -6
- langflow/frontend/assets/database-zap-DzH5GBmm.js +0 -6
- langflow/frontend/assets/decimals-arrow-left-DlR2OMIu.js +0 -6
- langflow/frontend/assets/decimals-arrow-right-Dx4ObfYv.js +0 -6
- langflow/frontend/assets/delete-BHxYtCY6.js +0 -6
- langflow/frontend/assets/dessert-CfOk8Cm8.js +0 -6
- langflow/frontend/assets/diameter-PFK47COt.js +0 -6
- langflow/frontend/assets/diamond-D2hRkW3R.js +0 -6
- langflow/frontend/assets/diamond-minus-BmmkztHK.js +0 -6
- langflow/frontend/assets/diamond-percent-Um3urkva.js +0 -6
- langflow/frontend/assets/diamond-plus-BctFfXFQ.js +0 -6
- langflow/frontend/assets/dice-1-iAashtM4.js +0 -6
- langflow/frontend/assets/dice-2-DYFUv-fQ.js +0 -6
- langflow/frontend/assets/dice-3-BKhH_7UE.js +0 -6
- langflow/frontend/assets/dice-4-DXL3N_4x.js +0 -6
- langflow/frontend/assets/dice-5-DnplP8dS.js +0 -6
- langflow/frontend/assets/dice-6-B60nh8vo.js +0 -6
- langflow/frontend/assets/dices-Dhvt0dI6.js +0 -6
- langflow/frontend/assets/diff-C0ITnBBr.js +0 -6
- langflow/frontend/assets/disc-2-BuaKHZRj.js +0 -6
- langflow/frontend/assets/disc-3-NMQNF-ZM.js +0 -6
- langflow/frontend/assets/disc-album-BcLrWjhq.js +0 -6
- langflow/frontend/assets/disc-yALpXpks.js +0 -6
- langflow/frontend/assets/divide-Dh7ujBOW.js +0 -6
- langflow/frontend/assets/dna-Bjifao3X.js +0 -6
- langflow/frontend/assets/dna-off-BUJlgzYb.js +0 -6
- langflow/frontend/assets/dock-B7EXITnl.js +0 -6
- langflow/frontend/assets/dog-B7U04mka.js +0 -6
- langflow/frontend/assets/dollar-sign-BMgFrD98.js +0 -6
- langflow/frontend/assets/donut-Bi1ebPXI.js +0 -6
- langflow/frontend/assets/door-closed-CSJ7S_5P.js +0 -6
- langflow/frontend/assets/door-open-DETl8Hsq.js +0 -6
- langflow/frontend/assets/dot-D3t9y3Ei.js +0 -6
- langflow/frontend/assets/download-QVQHjJbn.js +0 -6
- langflow/frontend/assets/drafting-compass-C_G_-w6o.js +0 -6
- langflow/frontend/assets/drama-C3d5snUt.js +0 -6
- langflow/frontend/assets/dribbble-gc8Hu2iM.js +0 -6
- langflow/frontend/assets/drill-C-_x7kVx.js +0 -6
- langflow/frontend/assets/droplet-CGpBURa1.js +0 -6
- langflow/frontend/assets/droplet-off-Pzyqut0G.js +0 -6
- langflow/frontend/assets/droplets-DUbFcMnM.js +0 -6
- langflow/frontend/assets/drum-Dc54lUwD.js +0 -6
- langflow/frontend/assets/drumstick-HKILk0Ot.js +0 -6
- langflow/frontend/assets/dumbbell-CW1875td.js +0 -6
- langflow/frontend/assets/ear-0Ch7ti8X.js +0 -6
- langflow/frontend/assets/ear-off-DraFLzw1.js +0 -6
- langflow/frontend/assets/earth-CFLvTzOE.js +0 -6
- langflow/frontend/assets/earth-lock-DnZmTPsn.js +0 -6
- langflow/frontend/assets/eclipse-CUbD3Qmh.js +0 -6
- langflow/frontend/assets/egg-Cbjn6S80.js +0 -6
- langflow/frontend/assets/egg-fried-CdBx5g4H.js +0 -6
- langflow/frontend/assets/egg-off-CxJ1u2w-.js +0 -6
- langflow/frontend/assets/ellipsis-BlbxdKlT.js +0 -6
- langflow/frontend/assets/ellipsis-vertical-COL6TUrg.js +0 -6
- langflow/frontend/assets/equal-BAjxFHm9.js +0 -6
- langflow/frontend/assets/equal-approximately-C_CIwv4D.js +0 -6
- langflow/frontend/assets/equal-not-Do3tztaX.js +0 -6
- langflow/frontend/assets/eraser-DF0f0uKS.js +0 -6
- langflow/frontend/assets/ethernet-port-WBTFOR3g.js +0 -6
- langflow/frontend/assets/euro-CEzliHoa.js +0 -6
- langflow/frontend/assets/expand-CuqWvmGR.js +0 -6
- langflow/frontend/assets/eye-BGqdGvP5.js +0 -6
- langflow/frontend/assets/eye-closed-DLJqwgv0.js +0 -6
- langflow/frontend/assets/eye-off-KDImmRkJ.js +0 -6
- langflow/frontend/assets/facebook-CYcXd9Iu.js +0 -6
- langflow/frontend/assets/factory-BWOF7gQH.js +0 -6
- langflow/frontend/assets/fan-CbdBZoHh.js +0 -6
- langflow/frontend/assets/fast-forward-nZ4kgGaR.js +0 -6
- langflow/frontend/assets/feather-Bpthyo1u.js +0 -6
- langflow/frontend/assets/fence-Cme7hk6F.js +0 -6
- langflow/frontend/assets/ferris-wheel-jGi85-Eg.js +0 -6
- langflow/frontend/assets/figma-Cjv8Tt79.js +0 -6
- langflow/frontend/assets/file-archive-Dly_3YF2.js +0 -6
- langflow/frontend/assets/file-audio-2-xj82e07p.js +0 -6
- langflow/frontend/assets/file-audio-9pU0xORZ.js +0 -6
- langflow/frontend/assets/file-axis-3d-BnYGLTM3.js +0 -6
- langflow/frontend/assets/file-badge-2-D0HG_ejF.js +0 -6
- langflow/frontend/assets/file-badge-BuHpQjAI.js +0 -6
- langflow/frontend/assets/file-box-D1VeNtpk.js +0 -6
- langflow/frontend/assets/file-chart-column-CnCcp9LE.js +0 -6
- langflow/frontend/assets/file-chart-column-increasing-C1rCConI.js +0 -6
- langflow/frontend/assets/file-chart-line-hgrAAx_4.js +0 -6
- langflow/frontend/assets/file-chart-pie-Dib4XDbW.js +0 -6
- langflow/frontend/assets/file-check-2-rLTogQx4.js +0 -6
- langflow/frontend/assets/file-check-DsnWAUT2.js +0 -6
- langflow/frontend/assets/file-clock---MrJeyO.js +0 -6
- langflow/frontend/assets/file-code-2-BdBTEdln.js +0 -6
- langflow/frontend/assets/file-code-BSD6ungW.js +0 -6
- langflow/frontend/assets/file-cog-BZQy-ba9.js +0 -6
- langflow/frontend/assets/file-dKQZYwuH.js +0 -6
- langflow/frontend/assets/file-diff-CH7EDtJC.js +0 -6
- langflow/frontend/assets/file-digit-D7_d-0CW.js +0 -6
- langflow/frontend/assets/file-down-Dt_7usLA.js +0 -6
- langflow/frontend/assets/file-heart-DT8xufAg.js +0 -6
- langflow/frontend/assets/file-image-DxvKruYd.js +0 -6
- langflow/frontend/assets/file-input-DxHp4Alf.js +0 -6
- langflow/frontend/assets/file-json-1-XvNhLQ.js +0 -6
- langflow/frontend/assets/file-json-2-DRiAa60m.js +0 -6
- langflow/frontend/assets/file-key-2-MRdv5jhW.js +0 -6
- langflow/frontend/assets/file-key-BzyIQNd6.js +0 -6
- langflow/frontend/assets/file-lock-2-Bkidiloq.js +0 -6
- langflow/frontend/assets/file-lock-D7DhBd2i.js +0 -6
- langflow/frontend/assets/file-minus-2-DyXNKy2T.js +0 -6
- langflow/frontend/assets/file-minus-DF3g9dIu.js +0 -6
- langflow/frontend/assets/file-music-DqiM-iAp.js +0 -6
- langflow/frontend/assets/file-output-D_Wg1CeJ.js +0 -6
- langflow/frontend/assets/file-pen-Bxm1mc6w.js +0 -6
- langflow/frontend/assets/file-pen-line-C4OMd3fE.js +0 -6
- langflow/frontend/assets/file-plus-2-kLdziRLd.js +0 -6
- langflow/frontend/assets/file-plus-CTa-OXIp.js +0 -6
- langflow/frontend/assets/file-question-CfxvLxIm.js +0 -6
- langflow/frontend/assets/file-scan-pgmy9fvz.js +0 -6
- langflow/frontend/assets/file-search-2-BwkJ5R6W.js +0 -6
- langflow/frontend/assets/file-search-DgBAyK6K.js +0 -6
- langflow/frontend/assets/file-sliders-B_OpLmha.js +0 -6
- langflow/frontend/assets/file-spreadsheet-DOtP8Gg9.js +0 -6
- langflow/frontend/assets/file-stack-DgDtpiMd.js +0 -6
- langflow/frontend/assets/file-symlink-vbXhuo8H.js +0 -6
- langflow/frontend/assets/file-terminal-DVvboZq6.js +0 -6
- langflow/frontend/assets/file-text-DGC7sdsW.js +0 -6
- langflow/frontend/assets/file-type-2-CfUahUxh.js +0 -6
- langflow/frontend/assets/file-type-BfSvTYPv.js +0 -6
- langflow/frontend/assets/file-up-Bvvikwm4.js +0 -6
- langflow/frontend/assets/file-user-DaUm7IPn.js +0 -6
- langflow/frontend/assets/file-video-2-DKvfIpuU.js +0 -6
- langflow/frontend/assets/file-video-Bu3OwNfA.js +0 -6
- langflow/frontend/assets/file-volume-2-9TCupQJ0.js +0 -6
- langflow/frontend/assets/file-volume-B79HFEYG.js +0 -6
- langflow/frontend/assets/file-warning-ox5Dn4wi.js +0 -6
- langflow/frontend/assets/file-x-2-BIUsvjws.js +0 -6
- langflow/frontend/assets/file-x-BbofT8LN.js +0 -6
- langflow/frontend/assets/files-DDq74A_H.js +0 -6
- langflow/frontend/assets/film-Cc-5l2Ug.js +0 -6
- langflow/frontend/assets/fingerprint-Bk43daa2.js +0 -6
- langflow/frontend/assets/fire-extinguisher-BpYWRcDE.js +0 -6
- langflow/frontend/assets/fish-CcgTXDr0.js +0 -6
- langflow/frontend/assets/fish-off-CTSoMjtL.js +0 -6
- langflow/frontend/assets/fish-symbol-4qaq4eUT.js +0 -6
- langflow/frontend/assets/flag-off-B6WIJPdA.js +0 -6
- langflow/frontend/assets/flag-s8A97f1C.js +0 -6
- langflow/frontend/assets/flag-triangle-left-Cb13gKSR.js +0 -6
- langflow/frontend/assets/flag-triangle-right-B2eU89J-.js +0 -6
- langflow/frontend/assets/flame-BdBUc1r8.js +0 -6
- langflow/frontend/assets/flame-kindling-B7n5jjlj.js +0 -6
- langflow/frontend/assets/flashlight-fNk35AiJ.js +0 -6
- langflow/frontend/assets/flashlight-off-D_RazXUc.js +0 -6
- langflow/frontend/assets/flask-conical-BGnLLMGf.js +0 -6
- langflow/frontend/assets/flask-conical-off-CnQAoWVR.js +0 -6
- langflow/frontend/assets/flask-round-fIBIuEdL.js +0 -6
- langflow/frontend/assets/flip-horizontal-2-CrrY3ni3.js +0 -6
- langflow/frontend/assets/flip-horizontal-hx2JiivV.js +0 -6
- langflow/frontend/assets/flip-vertical-2-DwP6Bzum.js +0 -6
- langflow/frontend/assets/flip-vertical-DcWXhqJt.js +0 -6
- langflow/frontend/assets/flower-2-BVqurWNh.js +0 -6
- langflow/frontend/assets/flower-DJSvFbmv.js +0 -6
- langflow/frontend/assets/focus-DdtKbmAh.js +0 -6
- langflow/frontend/assets/fold-horizontal-ZEKAo_f5.js +0 -6
- langflow/frontend/assets/fold-vertical-tn9KV2gT.js +0 -6
- langflow/frontend/assets/folder-D65_ctxW.js +0 -6
- langflow/frontend/assets/folder-archive-CSZUIv0L.js +0 -6
- langflow/frontend/assets/folder-check-DAD0Wbb0.js +0 -6
- langflow/frontend/assets/folder-clock-DKBSEbt1.js +0 -6
- langflow/frontend/assets/folder-closed-Da_IyQl-.js +0 -6
- langflow/frontend/assets/folder-code-BjK12yQl.js +0 -6
- langflow/frontend/assets/folder-cog-gMICaCve.js +0 -6
- langflow/frontend/assets/folder-dot-YKXGT1nq.js +0 -6
- langflow/frontend/assets/folder-down-U1ORGhse.js +0 -6
- langflow/frontend/assets/folder-git-2-CbITkZ8X.js +0 -6
- langflow/frontend/assets/folder-git-DqiNhlgf.js +0 -6
- langflow/frontend/assets/folder-heart-D3Oj_-2a.js +0 -6
- langflow/frontend/assets/folder-input-nAAMicET.js +0 -6
- langflow/frontend/assets/folder-kanban-CSdvrbDp.js +0 -6
- langflow/frontend/assets/folder-key-DLXTk8pJ.js +0 -6
- langflow/frontend/assets/folder-lock-WUABa7Oe.js +0 -6
- langflow/frontend/assets/folder-minus-B5xGdFAn.js +0 -6
- langflow/frontend/assets/folder-open-Bgv6WmI3.js +0 -6
- langflow/frontend/assets/folder-open-dot-DC2HgEPN.js +0 -6
- langflow/frontend/assets/folder-output-DwyLKy4X.js +0 -6
- langflow/frontend/assets/folder-pen-tcF02hyr.js +0 -6
- langflow/frontend/assets/folder-plus-B9_vaYDU.js +0 -6
- langflow/frontend/assets/folder-root-VwCr5OUC.js +0 -6
- langflow/frontend/assets/folder-search-2-BfQXzu7L.js +0 -6
- langflow/frontend/assets/folder-search-paV45aMl.js +0 -6
- langflow/frontend/assets/folder-symlink-COgmF5VW.js +0 -6
- langflow/frontend/assets/folder-sync-DrURUnNI.js +0 -6
- langflow/frontend/assets/folder-tree-CdICwYAj.js +0 -6
- langflow/frontend/assets/folder-up-D4WwIsp_.js +0 -6
- langflow/frontend/assets/folder-x-J2_4fdUF.js +0 -6
- langflow/frontend/assets/folders-7Xpsj7jV.js +0 -6
- langflow/frontend/assets/footprints-DVRSLXMk.js +0 -6
- langflow/frontend/assets/forklift-VMigNBFJ.js +0 -6
- langflow/frontend/assets/forward-CE54kWRO.js +0 -6
- langflow/frontend/assets/frame-BdXE1XDm.js +0 -6
- langflow/frontend/assets/framer-CA5fZhO7.js +0 -6
- langflow/frontend/assets/frown-oWG9DrD9.js +0 -6
- langflow/frontend/assets/fuel-ClmPVHZi.js +0 -6
- langflow/frontend/assets/fullscreen-DZIeVmwf.js +0 -6
- langflow/frontend/assets/funnel-DXZIwh3S.js +0 -6
- langflow/frontend/assets/funnel-plus-I5y8cnUa.js +0 -6
- langflow/frontend/assets/funnel-x-BRv8lJ4W.js +0 -6
- langflow/frontend/assets/gallery-horizontal-CTWQRiwE.js +0 -6
- langflow/frontend/assets/gallery-horizontal-end-CgCNLcQc.js +0 -6
- langflow/frontend/assets/gallery-thumbnails-DN-r2ZhB.js +0 -6
- langflow/frontend/assets/gallery-vertical-BsYEUvUD.js +0 -6
- langflow/frontend/assets/gallery-vertical-end-B3eXPsrk.js +0 -6
- langflow/frontend/assets/gamepad-2-Dw8h7uZr.js +0 -6
- langflow/frontend/assets/gamepad-CCft0e71.js +0 -6
- langflow/frontend/assets/gauge-mS-OblJR.js +0 -6
- langflow/frontend/assets/gavel-CupBXWg7.js +0 -6
- langflow/frontend/assets/gem-BUEaPolw.js +0 -6
- langflow/frontend/assets/ghost-3ME0nRk0.js +0 -6
- langflow/frontend/assets/gift-BtPeSI-o.js +0 -6
- langflow/frontend/assets/git-branch-D6kfZJaL.js +0 -6
- langflow/frontend/assets/git-branch-plus-3njkIJRK.js +0 -6
- langflow/frontend/assets/git-commit-horizontal-CFXGXdxi.js +0 -6
- langflow/frontend/assets/git-commit-vertical-CodAcvyH.js +0 -6
- langflow/frontend/assets/git-compare-DFPGVUFR.js +0 -6
- langflow/frontend/assets/git-compare-arrows-G2uE17iL.js +0 -6
- langflow/frontend/assets/git-fork-QJnff6sK.js +0 -6
- langflow/frontend/assets/git-graph-BucU4GOG.js +0 -6
- langflow/frontend/assets/git-merge-B0MmNtRI.js +0 -6
- langflow/frontend/assets/git-pull-request-DSB5VAZk.js +0 -6
- langflow/frontend/assets/git-pull-request-arrow-CmrmZgBw.js +0 -6
- langflow/frontend/assets/git-pull-request-closed-IdMIAzQ5.js +0 -6
- langflow/frontend/assets/git-pull-request-create-BaiY-zu7.js +0 -6
- langflow/frontend/assets/git-pull-request-create-arrow-Boj2Q1Ag.js +0 -6
- langflow/frontend/assets/git-pull-request-draft-BrbDUuPH.js +0 -6
- langflow/frontend/assets/github-B_uKXLGN.js +0 -6
- langflow/frontend/assets/gitlab-Dssfz-7b.js +0 -6
- langflow/frontend/assets/glass-water-DctUWtdy.js +0 -6
- langflow/frontend/assets/glasses-CJUqREJR.js +0 -6
- langflow/frontend/assets/globe-CW-N7YFg.js +0 -6
- langflow/frontend/assets/globe-lock-DmWaI8LB.js +0 -6
- langflow/frontend/assets/goal-C-A92vzq.js +0 -6
- langflow/frontend/assets/grab-DXNtbqNu.js +0 -6
- langflow/frontend/assets/graduation-cap-BvKxds3-.js +0 -6
- langflow/frontend/assets/grape-vxg-QmAa.js +0 -6
- langflow/frontend/assets/grid-2x2-Bda9xvw8.js +0 -6
- langflow/frontend/assets/grid-2x2-check-Cq4oXCG_.js +0 -6
- langflow/frontend/assets/grid-2x2-plus-DlbSyK4w.js +0 -6
- langflow/frontend/assets/grid-2x2-x-COkPyLW2.js +0 -6
- langflow/frontend/assets/grid-3x3-P5m98H0I.js +0 -6
- langflow/frontend/assets/grip-C8l1seJj.js +0 -6
- langflow/frontend/assets/grip-horizontal-C8xf9EqD.js +0 -6
- langflow/frontend/assets/grip-vertical-Dp8b3qVy.js +0 -6
- langflow/frontend/assets/group-NMh_xbhf.js +0 -6
- langflow/frontend/assets/guitar-Dohq_76_.js +0 -6
- langflow/frontend/assets/ham-CmDFmjBB.js +0 -6
- langflow/frontend/assets/hammer-_CGQRxth.js +0 -6
- langflow/frontend/assets/hand-CHd9erzR.js +0 -6
- langflow/frontend/assets/hand-coins-BhEGokvW.js +0 -6
- langflow/frontend/assets/hand-heart-7Oby7SAS.js +0 -6
- langflow/frontend/assets/hand-helping-CXMrHB_F.js +0 -6
- langflow/frontend/assets/hand-metal-C6MrIW5O.js +0 -6
- langflow/frontend/assets/hand-platter-Cbs2yD55.js +0 -6
- langflow/frontend/assets/handshake-DnW2f3e-.js +0 -6
- langflow/frontend/assets/hard-drive-B5MqVYDD.js +0 -6
- langflow/frontend/assets/hard-drive-download-DQm3Jx-J.js +0 -6
- langflow/frontend/assets/hard-drive-upload-UyeC7okZ.js +0 -6
- langflow/frontend/assets/hard-hat-DuBdE6ld.js +0 -6
- langflow/frontend/assets/hash-41NgbFLv.js +0 -6
- langflow/frontend/assets/haze-BoMT93pB.js +0 -6
- langflow/frontend/assets/hdmi-port-CKp8ZzL2.js +0 -6
- langflow/frontend/assets/heading-1-OsGkodnl.js +0 -6
- langflow/frontend/assets/heading-2-ByrEnN6x.js +0 -6
- langflow/frontend/assets/heading-3-C5NsklPz.js +0 -6
- langflow/frontend/assets/heading-4-Bhl4hzbe.js +0 -6
- langflow/frontend/assets/heading-5-DBI6pawb.js +0 -6
- langflow/frontend/assets/heading-6-DfxwQfT7.js +0 -6
- langflow/frontend/assets/heading-zd0OZwON.js +0 -6
- langflow/frontend/assets/headphone-off-mURIsBWJ.js +0 -6
- langflow/frontend/assets/headphones-BFe-lgHV.js +0 -6
- langflow/frontend/assets/headset-Bwf3fpi7.js +0 -6
- langflow/frontend/assets/heart-Dq1D84te.js +0 -6
- langflow/frontend/assets/heart-crack-CG--JiGk.js +0 -6
- langflow/frontend/assets/heart-handshake-oDkkGSno.js +0 -6
- langflow/frontend/assets/heart-minus-CCNRC1c0.js +0 -6
- langflow/frontend/assets/heart-off-BAPYXlds.js +0 -6
- langflow/frontend/assets/heart-plus-CvC3EhpP.js +0 -6
- langflow/frontend/assets/heart-pulse-DF-ORHct.js +0 -6
- langflow/frontend/assets/heater-eJfnwYYQ.js +0 -6
- langflow/frontend/assets/hexagon-BcDEx4Wb.js +0 -6
- langflow/frontend/assets/highlighter-j24gyp2u.js +0 -6
- langflow/frontend/assets/history-myIN6jVF.js +0 -6
- langflow/frontend/assets/hop-DSJJg5IW.js +0 -6
- langflow/frontend/assets/hop-off-CDIpY23y.js +0 -6
- langflow/frontend/assets/hospital-C2kjtT3N.js +0 -6
- langflow/frontend/assets/hotel-BiI9qopK.js +0 -6
- langflow/frontend/assets/hourglass-DdgptFb-.js +0 -6
- langflow/frontend/assets/house-D9nykhn2.js +0 -6
- langflow/frontend/assets/house-plug-CE2Jg8bl.js +0 -6
- langflow/frontend/assets/house-plus-DT80fPIW.js +0 -6
- langflow/frontend/assets/house-wifi-BB9Ytt9Q.js +0 -6
- langflow/frontend/assets/ice-cream-bowl-BtGfB4bc.js +0 -6
- langflow/frontend/assets/ice-cream-cone-q1HuFU8K.js +0 -6
- langflow/frontend/assets/id-card-CT13zAKZ.js +0 -6
- langflow/frontend/assets/image-D0ZjsAQs.js +0 -6
- langflow/frontend/assets/image-down-Du2TxYUV.js +0 -6
- langflow/frontend/assets/image-minus-DtJgK1SX.js +0 -6
- langflow/frontend/assets/image-off-CJM0L0Pm.js +0 -6
- langflow/frontend/assets/image-play-rO_sigy3.js +0 -6
- langflow/frontend/assets/image-plus-BtHXKAhF.js +0 -6
- langflow/frontend/assets/image-up-BedomcGK.js +0 -6
- langflow/frontend/assets/image-upscale-CTytoZQ7.js +0 -6
- langflow/frontend/assets/images-DQdzA8PB.js +0 -6
- langflow/frontend/assets/import-BSj_tVee.js +0 -6
- langflow/frontend/assets/inbox-CLdA6iO6.js +0 -6
- langflow/frontend/assets/indent-decrease-eBOWpxsA.js +0 -6
- langflow/frontend/assets/indent-increase-PUZyQsBH.js +0 -6
- langflow/frontend/assets/index--3O3NqKN.js +0 -1
- langflow/frontend/assets/index--IHrpBoo.js +0 -1
- langflow/frontend/assets/index-2kWQOuop.js +0 -1
- langflow/frontend/assets/index-5KYiBJ4r.js +0 -1
- langflow/frontend/assets/index-7l4lKqCJ.js +0 -1
- langflow/frontend/assets/index-8zD_EsG6.js +0 -1
- langflow/frontend/assets/index-9-TuTYSh.js +0 -1
- langflow/frontend/assets/index-Ayc8Z_Hb.js +0 -1
- langflow/frontend/assets/index-B0jfUxmL.js +0 -1
- langflow/frontend/assets/index-B12iJWz4.js +0 -1
- langflow/frontend/assets/index-B2tpdHrx.js +0 -1
- langflow/frontend/assets/index-B5ecjJUs.js +0 -1
- langflow/frontend/assets/index-B8V3us4q.js +0 -1
- langflow/frontend/assets/index-B94OQ3jt.js +0 -1
- langflow/frontend/assets/index-B9ommOZl.js +0 -1
- langflow/frontend/assets/index-BCAS0lQ_.js +0 -1
- langflow/frontend/assets/index-BDRoIsie.js +0 -1
- langflow/frontend/assets/index-BEDcwmO-.js +0 -1
- langflow/frontend/assets/index-BG8kF-GV.js +0 -1
- langflow/frontend/assets/index-BHAQc8Wu.js +0 -1
- langflow/frontend/assets/index-BI78KkAp.js +0 -1
- langflow/frontend/assets/index-BIK_Gncf.js +0 -1
- langflow/frontend/assets/index-BIitGLYF.js +0 -1
- langflow/frontend/assets/index-BJ2E8Jz2.js +0 -1
- langflow/frontend/assets/index-BJJAM1fq.js +0 -1
- langflow/frontend/assets/index-BJvXXLH0.js +0 -1
- langflow/frontend/assets/index-BK7ASEdZ.js +0 -1
- langflow/frontend/assets/index-BL9t0aq2.js +0 -1
- langflow/frontend/assets/index-BMw6t_pn.js +0 -1
- langflow/frontend/assets/index-BN_YNwOx.js +0 -1
- langflow/frontend/assets/index-BPkpEYRa.js +0 -1
- langflow/frontend/assets/index-BPoAfmHl.js +0 -1
- langflow/frontend/assets/index-BQ4YbPOt.js +0 -1
- langflow/frontend/assets/index-BRWCSHPL.js +0 -1
- langflow/frontend/assets/index-BTIO2Hd1.js +0 -1
- langflow/frontend/assets/index-BTn9ARUB.js +0 -13
- langflow/frontend/assets/index-BVLcStRP.js +0 -1
- langflow/frontend/assets/index-BVTk2F-Y.js +0 -1
- langflow/frontend/assets/index-BVnY-2eL.js +0 -1
- langflow/frontend/assets/index-BW_0_NQR.js +0 -1
- langflow/frontend/assets/index-BYGyku6g.js +0 -1
- langflow/frontend/assets/index-BYVzErJa.js +0 -1
- langflow/frontend/assets/index-BYaZbRmc.js +0 -1
- langflow/frontend/assets/index-BYnidR2j.js +0 -1
- langflow/frontend/assets/index-B_WRaKpb.js +0 -1
- langflow/frontend/assets/index-Bbd-X_I4.js +0 -1
- langflow/frontend/assets/index-Bd02jzx4.css +0 -1
- langflow/frontend/assets/index-BebbP1_3.js +0 -2
- langflow/frontend/assets/index-BfpDvtx9.js +0 -1
- langflow/frontend/assets/index-BguOvTIt.js +0 -1
- langflow/frontend/assets/index-Bh4jFZOt.js +0 -1
- langflow/frontend/assets/index-BlbxL0_F.js +0 -1
- langflow/frontend/assets/index-BlpMuHC1.js +0 -1
- langflow/frontend/assets/index-BmILSNO1.js +0 -1
- langflow/frontend/assets/index-Bnb_9gFT.js +0 -1
- langflow/frontend/assets/index-BnhOQvim.js +0 -1
- langflow/frontend/assets/index-BpQ_FwEx.js +0 -1
- langflow/frontend/assets/index-BrhCPWHl.js +0 -1
- langflow/frontend/assets/index-Bs66S-cg.js +0 -1
- langflow/frontend/assets/index-Bt8ozu-9.js +0 -1
- langflow/frontend/assets/index-Bte_MSlg.js +0 -21
- langflow/frontend/assets/index-Bu9UBPcf.js +0 -1
- langflow/frontend/assets/index-BuWUz5Es.js +0 -1
- langflow/frontend/assets/index-BxDCY7GA.js +0 -1
- langflow/frontend/assets/index-ByYWULC4.js +0 -1
- langflow/frontend/assets/index-Bylvmlsj.js +0 -399
- langflow/frontend/assets/index-BzcJzsWn.js +0 -1
- langflow/frontend/assets/index-C6jWT2p-.js +0 -1
- langflow/frontend/assets/index-C9Y1VV1M.js +0 -1
- langflow/frontend/assets/index-C9k7xHBe.js +0 -1
- langflow/frontend/assets/index-CB1BfuBr.js +0 -1
- langflow/frontend/assets/index-CDtwENIK.js +0 -1
- langflow/frontend/assets/index-CE488wQD.js +0 -1
- langflow/frontend/assets/index-CGvfR3yr.js +0 -1
- langflow/frontend/assets/index-CHJ-CBzq.js +0 -1
- langflow/frontend/assets/index-CHZjBnIE.js +0 -1
- langflow/frontend/assets/index-CI-vC5Lq.js +0 -1
- langflow/frontend/assets/index-CIZmTxGi.js +0 -1
- langflow/frontend/assets/index-CIcq7OmA.js +0 -1
- langflow/frontend/assets/index-CKMr8E1p.js +0 -1
- langflow/frontend/assets/index-CKTmIMMn.js +0 -1
- langflow/frontend/assets/index-CKpOimEN.js +0 -381
- langflow/frontend/assets/index-CLcE4nRm.js +0 -1
- langflow/frontend/assets/index-CM1jxAtr.js +0 -1
- langflow/frontend/assets/index-CM9ccl8R.js +0 -1
- langflow/frontend/assets/index-CN1xk2bm.js +0 -1
- langflow/frontend/assets/index-CPhJ9MJ3.js +0 -1
- langflow/frontend/assets/index-CPq9Cq75.js +0 -1
- langflow/frontend/assets/index-CQLuLC1H.js +0 -1
- langflow/frontend/assets/index-CQtCkREE.js +0 -1
- langflow/frontend/assets/index-CRzDwBcv.js +0 -1
- langflow/frontend/assets/index-CSKeDy3F.js +0 -1
- langflow/frontend/assets/index-CTTFx3hy.js +0 -1
- langflow/frontend/assets/index-CWO6aLRj.js +0 -1
- langflow/frontend/assets/index-CXJx-x2V.js +0 -1
- langflow/frontend/assets/index-CY8ExIlC.js +0 -1
- langflow/frontend/assets/index-CYS-koZD.js +0 -1
- langflow/frontend/assets/index-CYlls8yU.js +0 -1
- langflow/frontend/assets/index-CZDezo23.js +0 -1
- langflow/frontend/assets/index-Cc6LQgxi.js +0 -1
- langflow/frontend/assets/index-Cea1VdoP.js +0 -20
- langflow/frontend/assets/index-Ch73zLO7.js +0 -1
- langflow/frontend/assets/index-Chvm9gnt.js +0 -1
- langflow/frontend/assets/index-CiMhzwVm.js +0 -1
- langflow/frontend/assets/index-CjIpaN28.js +0 -1
- langflow/frontend/assets/index-Cmqey3tV.js +0 -1
- langflow/frontend/assets/index-CpKrIPML.js +0 -205
- langflow/frontend/assets/index-CpXuZ5Yj.js +0 -1
- langflow/frontend/assets/index-Cql8nLGl.js +0 -1
- langflow/frontend/assets/index-Cu5di6tV.js +0 -1
- langflow/frontend/assets/index-Cy2hauYT.js +0 -185
- langflow/frontend/assets/index-CyPXGUjM.js +0 -1
- langflow/frontend/assets/index-CzVx1ZZG.js +0 -1
- langflow/frontend/assets/index-D-sbAj3-.js +0 -767
- langflow/frontend/assets/index-D0faXIRw.js +0 -1
- langflow/frontend/assets/index-D2F1nNcS.js +0 -1
- langflow/frontend/assets/index-D6rNZM8d.js +0 -1
- langflow/frontend/assets/index-D7c71Ncp.js +0 -7323
- langflow/frontend/assets/index-D7nicSdX.js +0 -1
- langflow/frontend/assets/index-D8b32AEu.js +0 -1
- langflow/frontend/assets/index-DAp88IjZ.js +0 -1
- langflow/frontend/assets/index-DBLewSdZ.js +0 -1
- langflow/frontend/assets/index-DCAYv_9J.js +0 -1
- langflow/frontend/assets/index-DCdIQCmd.js +0 -281
- langflow/frontend/assets/index-DCjaZqzk.js +0 -1
- langflow/frontend/assets/index-DFsk-5F7.js +0 -1
- langflow/frontend/assets/index-DGHIyISG.js +0 -1
- langflow/frontend/assets/index-DHr2zhC0.js +0 -1
- langflow/frontend/assets/index-DJYsexlm.js +0 -1
- langflow/frontend/assets/index-DK6ZzpFl.js +0 -1
- langflow/frontend/assets/index-DL-XWPcx.js +0 -7
- langflow/frontend/assets/index-DNRIGLMN.js +0 -1
- langflow/frontend/assets/index-DORDRALN.js +0 -1
- langflow/frontend/assets/index-DOVsIs1Y.js +0 -1
- langflow/frontend/assets/index-DOYJ_CZN.js +0 -1
- langflow/frontend/assets/index-DQvsXVLs.js +0 -1
- langflow/frontend/assets/index-DThcEP2S.js +0 -1
- langflow/frontend/assets/index-DWW4i1mS.js +0 -1
- langflow/frontend/assets/index-DZydxXk-.js +0 -1
- langflow/frontend/assets/index-Daw8xyJf.js +0 -1
- langflow/frontend/assets/index-Dc0nF4D_.js +0 -1
- langflow/frontend/assets/index-DctkFwnK.js +0 -108
- langflow/frontend/assets/index-DjCcbnqJ.js +0 -127
- langflow/frontend/assets/index-DjG319lz.js +0 -1
- langflow/frontend/assets/index-DkxwwfUL.js +0 -1
- langflow/frontend/assets/index-DlNYEnyO.js +0 -1
- langflow/frontend/assets/index-DpNGpygE.js +0 -14
- langflow/frontend/assets/index-DwGroZ5i.js +0 -1
- langflow/frontend/assets/index-DwdF4A_k.js +0 -1
- langflow/frontend/assets/index-DwupFUE1.js +0 -1
- langflow/frontend/assets/index-DyFJaxvz.js +0 -1
- langflow/frontend/assets/index-DylRhyva.js +0 -1
- langflow/frontend/assets/index-Dz6LtjFc.js +0 -1
- langflow/frontend/assets/index-E_woFm9H.js +0 -1
- langflow/frontend/assets/index-IYvFl1oN.js +0 -1
- langflow/frontend/assets/index-KWmSW1LE.js +0 -1
- langflow/frontend/assets/index-KyJaEIZu.js +0 -495
- langflow/frontend/assets/index-L2r_nVW-.js +0 -1
- langflow/frontend/assets/index-LKY1_Kuv.js +0 -1
- langflow/frontend/assets/index-LykvuH3z.js +0 -1
- langflow/frontend/assets/index-PgeGlQPr.js +0 -1
- langflow/frontend/assets/index-Pj0GaUuE.js +0 -1
- langflow/frontend/assets/index-RHN6mdhz.js +0 -1
- langflow/frontend/assets/index-T-7O_UCg.js +0 -1
- langflow/frontend/assets/index-TaFYKyCQ.js +0 -1
- langflow/frontend/assets/index-V652fUKL.js +0 -1
- langflow/frontend/assets/index-WVOTQJ09.js +0 -1
- langflow/frontend/assets/index-WuyU7hfS.js +0 -1
- langflow/frontend/assets/index-XdlnxfM1.js +0 -1
- langflow/frontend/assets/index-Zb3do5-I.js +0 -1
- langflow/frontend/assets/index-_msEUPyj.js +0 -1
- langflow/frontend/assets/index-cP7Rj7nE.js +0 -1
- langflow/frontend/assets/index-dHzQlvPn.js +0 -1
- langflow/frontend/assets/index-gItsUULG.js +0 -1
- langflow/frontend/assets/index-heRrRQYO.js +0 -1
- langflow/frontend/assets/index-iP58GKwK.js +0 -1
- langflow/frontend/assets/index-iwuC6nMx.js +0 -1
- langflow/frontend/assets/index-jONH7mX0.js +0 -1
- langflow/frontend/assets/index-mj8XK9Tl.js +0 -1
- langflow/frontend/assets/index-oiBWx4w9.js +0 -1
- langflow/frontend/assets/index-pKCSZFwa.js +0 -1
- langflow/frontend/assets/index-qF5m8J6W.js +0 -1
- langflow/frontend/assets/index-s2HlLerd.js +0 -1
- langflow/frontend/assets/index-sDM3dLyW.js +0 -1
- langflow/frontend/assets/index-twqYNsoX.js +0 -1
- langflow/frontend/assets/index-ukjxiqG1.js +0 -1
- langflow/frontend/assets/indian-rupee-DDsHHnpw.js +0 -6
- langflow/frontend/assets/infinity-BBPXbhl6.js +0 -6
- langflow/frontend/assets/info-pijX_lAI.js +0 -6
- langflow/frontend/assets/inspection-panel-B3s01EPS.js +0 -6
- langflow/frontend/assets/instagram-DQjEVc1a.js +0 -6
- langflow/frontend/assets/italic-DmZqJc3s.js +0 -6
- langflow/frontend/assets/iteration-ccw-Btg_E23q.js +0 -6
- langflow/frontend/assets/iteration-cw-Db00y5_M.js +0 -6
- langflow/frontend/assets/japanese-yen-GDtYmkLT.js +0 -6
- langflow/frontend/assets/joystick-oCzqrBnq.js +0 -6
- langflow/frontend/assets/kanban-we0yz9mS.js +0 -6
- langflow/frontend/assets/key-DAr2T7wP.js +0 -6
- langflow/frontend/assets/key-round-BlVlTn-g.js +0 -6
- langflow/frontend/assets/key-square-QfUsUzpk.js +0 -6
- langflow/frontend/assets/keyboard-BU9Zjv_Y.js +0 -6
- langflow/frontend/assets/keyboard-music-Gpxy8HJ1.js +0 -6
- langflow/frontend/assets/keyboard-off-DyG_chgi.js +0 -6
- langflow/frontend/assets/lamp-CHwGph0N.js +0 -6
- langflow/frontend/assets/lamp-ceiling-BvzzpZjI.js +0 -6
- langflow/frontend/assets/lamp-desk-wFruCDAT.js +0 -6
- langflow/frontend/assets/lamp-floor-BmL4iQON.js +0 -6
- langflow/frontend/assets/lamp-wall-down-CqQUSQrD.js +0 -6
- langflow/frontend/assets/lamp-wall-up-DaIm2ZHs.js +0 -6
- langflow/frontend/assets/land-plot-BOPhLWQf.js +0 -6
- langflow/frontend/assets/landmark-CDhFL2--.js +0 -6
- langflow/frontend/assets/languages-DeYdLiLU.js +0 -6
- langflow/frontend/assets/laptop-bZpl3U9i.js +0 -6
- langflow/frontend/assets/laptop-minimal-D3HG41A6.js +0 -6
- langflow/frontend/assets/laptop-minimal-check-BCTwuOkq.js +0 -6
- langflow/frontend/assets/lasso-8Rzjwdvb.js +0 -6
- langflow/frontend/assets/lasso-select-KR_FJ8Sz.js +0 -6
- langflow/frontend/assets/laugh-DPLw2kQc.js +0 -6
- langflow/frontend/assets/layers-2-ccTMvAQJ.js +0 -6
- langflow/frontend/assets/layers-C9PBhMbR.js +0 -6
- langflow/frontend/assets/layout-dashboard-DWhDHJLb.js +0 -6
- langflow/frontend/assets/layout-grid-j545VrOo.js +0 -6
- langflow/frontend/assets/layout-list-B6mdFVQM.js +0 -6
- langflow/frontend/assets/layout-panel-left-DNm1Lb-C.js +0 -6
- langflow/frontend/assets/layout-panel-top--RhZXVol.js +0 -6
- langflow/frontend/assets/layout-template-Bqrsfj6g.js +0 -6
- langflow/frontend/assets/lazyIconImports-DRfFaNPB.js +0 -2
- langflow/frontend/assets/leaf-C4sMkYhR.js +0 -6
- langflow/frontend/assets/leafy-green-C6iBk6n7.js +0 -6
- langflow/frontend/assets/lectern-D_jCIZYa.js +0 -6
- langflow/frontend/assets/letter-text-C20LU8vc.js +0 -6
- langflow/frontend/assets/library-C6q6nxw1.js +0 -6
- langflow/frontend/assets/library-big-BMOPwYLP.js +0 -6
- langflow/frontend/assets/life-buoy-BdTs-3qm.js +0 -6
- langflow/frontend/assets/ligature-59BNBdFO.js +0 -6
- langflow/frontend/assets/lightbulb-B6rFe3OL.js +0 -6
- langflow/frontend/assets/lightbulb-off-B21C0ap6.js +0 -6
- langflow/frontend/assets/link-2-DFDRgD6E.js +0 -6
- langflow/frontend/assets/link-2-off-DuyJz9Te.js +0 -6
- langflow/frontend/assets/link-BW7ikAR2.js +0 -6
- langflow/frontend/assets/linkedin-BC54gln0.js +0 -6
- langflow/frontend/assets/list-D9uknRtj.js +0 -6
- langflow/frontend/assets/list-check-CZp0P9j8.js +0 -6
- langflow/frontend/assets/list-checks-DtbWypeT.js +0 -6
- langflow/frontend/assets/list-collapse-BYTfMbYt.js +0 -6
- langflow/frontend/assets/list-end-CNOAFpq7.js +0 -6
- langflow/frontend/assets/list-filter-B0frV5dv.js +0 -6
- langflow/frontend/assets/list-filter-plus-CK5Lcsa4.js +0 -6
- langflow/frontend/assets/list-minus-C6ulm7vt.js +0 -6
- langflow/frontend/assets/list-music-B4L-9duN.js +0 -6
- langflow/frontend/assets/list-ordered-C86H0C6g.js +0 -6
- langflow/frontend/assets/list-plus-D78K3DjW.js +0 -6
- langflow/frontend/assets/list-restart-CVZZyeJ2.js +0 -6
- langflow/frontend/assets/list-start-gDuX8tMg.js +0 -6
- langflow/frontend/assets/list-todo-DtkFXzaW.js +0 -6
- langflow/frontend/assets/list-tree-Oi6vkVwR.js +0 -6
- langflow/frontend/assets/list-video-DE73_LYJ.js +0 -6
- langflow/frontend/assets/list-x-CgQzsjRB.js +0 -6
- langflow/frontend/assets/loader-RDvq_gck.js +0 -6
- langflow/frontend/assets/loader-circle-DkJY-7be.js +0 -6
- langflow/frontend/assets/loader-pinwheel-DqLtT1OW.js +0 -6
- langflow/frontend/assets/locate-27R1wayC.js +0 -6
- langflow/frontend/assets/locate-fixed-B25GqMPm.js +0 -6
- langflow/frontend/assets/locate-off-DxcIo3ue.js +0 -6
- langflow/frontend/assets/location-edit-C8GKuWlO.js +0 -6
- langflow/frontend/assets/lock-DbdTPRie.js +0 -6
- langflow/frontend/assets/lock-keyhole-Cx4a6BYs.js +0 -6
- langflow/frontend/assets/lock-keyhole-open-DTLQHZiP.js +0 -6
- langflow/frontend/assets/lock-open-CnTQhpTU.js +0 -6
- langflow/frontend/assets/log-in-DEu4f9CT.js +0 -6
- langflow/frontend/assets/log-out-Rw31_grB.js +0 -6
- langflow/frontend/assets/logs-C_xcALe5.js +0 -6
- langflow/frontend/assets/lollipop-B6UBSkOr.js +0 -6
- langflow/frontend/assets/luggage-B759at-b.js +0 -6
- langflow/frontend/assets/magnet-CeNQFjoD.js +0 -6
- langflow/frontend/assets/mail-De4rBGVq.js +0 -6
- langflow/frontend/assets/mail-check-CbJ1IOaN.js +0 -6
- langflow/frontend/assets/mail-minus-RnPcqZ0v.js +0 -6
- langflow/frontend/assets/mail-open-D9M_LY0y.js +0 -6
- langflow/frontend/assets/mail-plus-BT5pdOrC.js +0 -6
- langflow/frontend/assets/mail-question-C2SIW5_-.js +0 -6
- langflow/frontend/assets/mail-search-Cyt39aW3.js +0 -6
- langflow/frontend/assets/mail-warning-DeMRXgCc.js +0 -6
- langflow/frontend/assets/mail-x-B8pe3ypI.js +0 -6
- langflow/frontend/assets/mailbox-DOr4Jgda.js +0 -6
- langflow/frontend/assets/mails-Ce7xii1i.js +0 -6
- langflow/frontend/assets/map-DpiPYH-Q.js +0 -6
- langflow/frontend/assets/map-pin-Cc26OxY-.js +0 -6
- langflow/frontend/assets/map-pin-check-CByGWxEF.js +0 -6
- langflow/frontend/assets/map-pin-check-inside-DiG2kXfQ.js +0 -6
- langflow/frontend/assets/map-pin-house-23Gzpmu2.js +0 -6
- langflow/frontend/assets/map-pin-minus-ITQdHJk5.js +0 -6
- langflow/frontend/assets/map-pin-minus-inside-B679vGwS.js +0 -6
- langflow/frontend/assets/map-pin-off-CWKH97P5.js +0 -6
- langflow/frontend/assets/map-pin-plus-DfAOd7pB.js +0 -6
- langflow/frontend/assets/map-pin-plus-inside-JzHwlP76.js +0 -6
- langflow/frontend/assets/map-pin-x-DUyBhfDm.js +0 -6
- langflow/frontend/assets/map-pin-x-inside-C6k1KmNh.js +0 -6
- langflow/frontend/assets/map-pinned-BpuyCi6Y.js +0 -6
- langflow/frontend/assets/map-plus-DO7OUsBp.js +0 -6
- langflow/frontend/assets/mars-09Pgjyim.js +0 -6
- langflow/frontend/assets/mars-stroke-DoS_IHT5.js +0 -6
- langflow/frontend/assets/martini-C4dLdwZz.js +0 -6
- langflow/frontend/assets/maximize-2-BgGWLpMa.js +0 -6
- langflow/frontend/assets/maximize-BnmFD7Ea.js +0 -6
- langflow/frontend/assets/medal-CVtEX92m.js +0 -6
- langflow/frontend/assets/megaphone-B_S1jdP6.js +0 -6
- langflow/frontend/assets/megaphone-off-CRjvXD1m.js +0 -6
- langflow/frontend/assets/meh-C8uPKyUp.js +0 -6
- langflow/frontend/assets/memory-stick-Bj3nN5dk.js +0 -6
- langflow/frontend/assets/menu-B9s_-3BK.js +0 -6
- langflow/frontend/assets/merge-J8TxoB_I.js +0 -6
- langflow/frontend/assets/message-circle-code-f4mtGDDw.js +0 -6
- langflow/frontend/assets/message-circle-dashed-r3VtirOd.js +0 -6
- langflow/frontend/assets/message-circle-heart-Bgz1ew21.js +0 -6
- langflow/frontend/assets/message-circle-jUyFs-es.js +0 -6
- langflow/frontend/assets/message-circle-more-Bla7Vdfj.js +0 -6
- langflow/frontend/assets/message-circle-off-CLEvmyW9.js +0 -6
- langflow/frontend/assets/message-circle-plus-a11z-ovw.js +0 -6
- langflow/frontend/assets/message-circle-question-B5_XYWTb.js +0 -6
- langflow/frontend/assets/message-circle-reply-CPOzJ66g.js +0 -6
- langflow/frontend/assets/message-circle-warning-DRIi-daa.js +0 -6
- langflow/frontend/assets/message-circle-x-CIBETEKZ.js +0 -6
- langflow/frontend/assets/message-square-code-B2wt6I5-.js +0 -6
- langflow/frontend/assets/message-square-dashed-4X0h0pQb.js +0 -6
- langflow/frontend/assets/message-square-diff-xWeaewsx.js +0 -6
- langflow/frontend/assets/message-square-dot--0-tnQXG.js +0 -6
- langflow/frontend/assets/message-square-heart-5g8BhHmh.js +0 -6
- langflow/frontend/assets/message-square-k6VTaNBS.js +0 -6
- langflow/frontend/assets/message-square-lock-RQv6B-95.js +0 -6
- langflow/frontend/assets/message-square-more-CG788VX0.js +0 -6
- langflow/frontend/assets/message-square-off-BhjWfl1b.js +0 -6
- langflow/frontend/assets/message-square-plus-BI-H6jxM.js +0 -6
- langflow/frontend/assets/message-square-quote-Cp8iAUVq.js +0 -6
- langflow/frontend/assets/message-square-reply-ciwL0PNR.js +0 -6
- langflow/frontend/assets/message-square-share-BtRNOwXY.js +0 -6
- langflow/frontend/assets/message-square-text-CQcrmsOB.js +0 -6
- langflow/frontend/assets/message-square-warning-BW_paLfj.js +0 -6
- langflow/frontend/assets/message-square-x-CzT3l51X.js +0 -6
- langflow/frontend/assets/messages-square-Bk4KnQ8F.js +0 -6
- langflow/frontend/assets/mic-CVjPC0nA.js +0 -6
- langflow/frontend/assets/mic-off-cvNpAnCO.js +0 -6
- langflow/frontend/assets/mic-vocal-Bvu_7-1P.js +0 -6
- langflow/frontend/assets/microchip-CL7Q_1xX.js +0 -6
- langflow/frontend/assets/microscope-DRVScFmr.js +0 -6
- langflow/frontend/assets/microwave--4oIy06y.js +0 -6
- langflow/frontend/assets/milestone-KpASYh3p.js +0 -6
- langflow/frontend/assets/milk-ZOs_y1PL.js +0 -6
- langflow/frontend/assets/milk-off-CvETS96K.js +0 -6
- langflow/frontend/assets/minimize-2-ZcENftRc.js +0 -6
- langflow/frontend/assets/minimize-D7d37njo.js +0 -6
- langflow/frontend/assets/monitor-DOlbFky5.js +0 -6
- langflow/frontend/assets/monitor-check-DmUCeR9A.js +0 -6
- langflow/frontend/assets/monitor-cog-m74VAarh.js +0 -6
- langflow/frontend/assets/monitor-dot-CaDHU0F7.js +0 -6
- langflow/frontend/assets/monitor-down-5IIJ7Hp3.js +0 -6
- langflow/frontend/assets/monitor-off-BF07OCtl.js +0 -6
- langflow/frontend/assets/monitor-pause-BWHoCkC-.js +0 -6
- langflow/frontend/assets/monitor-play-xck1Q3K3.js +0 -6
- langflow/frontend/assets/monitor-smartphone-BAz_rtXC.js +0 -6
- langflow/frontend/assets/monitor-speaker-CSzIdDUR.js +0 -6
- langflow/frontend/assets/monitor-stop-Cg4Yysvq.js +0 -6
- langflow/frontend/assets/monitor-up-BibsRz8A.js +0 -6
- langflow/frontend/assets/monitor-x-CnIc-XPo.js +0 -6
- langflow/frontend/assets/moon-CwBh9jCb.js +0 -6
- langflow/frontend/assets/moon-star-Cqz6Au_k.js +0 -6
- langflow/frontend/assets/mountain-DBNjOkPk.js +0 -6
- langflow/frontend/assets/mountain-snow-o4r6usrx.js +0 -6
- langflow/frontend/assets/mouse-C1nhRUcr.js +0 -6
- langflow/frontend/assets/mouse-off-CASRo_QW.js +0 -6
- langflow/frontend/assets/mouse-pointer-2-Mb8VGr0o.js +0 -6
- langflow/frontend/assets/mouse-pointer-D94fPNG2.js +0 -6
- langflow/frontend/assets/mouse-pointer-ban-KUQlGU-A.js +0 -6
- langflow/frontend/assets/mouse-pointer-click-CaZdrkEQ.js +0 -6
- langflow/frontend/assets/move-3d-C0T67La1.js +0 -6
- langflow/frontend/assets/move-Bpi1PuOT.js +0 -6
- langflow/frontend/assets/move-diagonal-2-uxLMwSLU.js +0 -6
- langflow/frontend/assets/move-diagonal-BI_kq6Ri.js +0 -6
- langflow/frontend/assets/move-down-BaiJALD6.js +0 -6
- langflow/frontend/assets/move-down-left-DvHTc324.js +0 -6
- langflow/frontend/assets/move-down-right-bDhB8pmN.js +0 -6
- langflow/frontend/assets/move-horizontal-Gg4hQwWM.js +0 -6
- langflow/frontend/assets/move-left-DyKB1bwc.js +0 -6
- langflow/frontend/assets/move-right-BA7N--Qc.js +0 -6
- langflow/frontend/assets/move-up-DFrSH8tg.js +0 -6
- langflow/frontend/assets/move-up-left-BTjfll8R.js +0 -6
- langflow/frontend/assets/move-up-right-CtNx6SNy.js +0 -6
- langflow/frontend/assets/move-vertical-DL7X4ZR7.js +0 -6
- langflow/frontend/assets/music-2-mR0Ncuz9.js +0 -6
- langflow/frontend/assets/music-3-D5hWNdP9.js +0 -6
- langflow/frontend/assets/music-4-C02EtyPP.js +0 -6
- langflow/frontend/assets/music-JFE7Sjcf.js +0 -6
- langflow/frontend/assets/navigation-2-BdKxOaeL.js +0 -6
- langflow/frontend/assets/navigation-2-off-DRqqqtsH.js +0 -6
- langflow/frontend/assets/navigation-BXXLD9fO.js +0 -6
- langflow/frontend/assets/navigation-off-BXq2L8Di.js +0 -6
- langflow/frontend/assets/network-B0vJejCu.js +0 -6
- langflow/frontend/assets/newspaper-DOjvrahU.js +0 -6
- langflow/frontend/assets/nfc-DjQCvvsE.js +0 -6
- langflow/frontend/assets/non-binary-D9LpkBPk.js +0 -6
- langflow/frontend/assets/notebook-DndOO5LI.js +0 -6
- langflow/frontend/assets/notebook-pen-BUm3h1SI.js +0 -6
- langflow/frontend/assets/notebook-tabs-K5Tr_Osa.js +0 -6
- langflow/frontend/assets/notebook-text-eJKgVHF9.js +0 -6
- langflow/frontend/assets/notepad-text-DdGjs0YI.js +0 -6
- langflow/frontend/assets/notepad-text-dashed-CAnbEisZ.js +0 -6
- langflow/frontend/assets/nut-B_EAyVRW.js +0 -6
- langflow/frontend/assets/nut-off-Dj7aFgNZ.js +0 -6
- langflow/frontend/assets/octagon-BkhRt-4I.js +0 -6
- langflow/frontend/assets/octagon-alert-CqRFnA7H.js +0 -6
- langflow/frontend/assets/octagon-minus-DLVOuzms.js +0 -6
- langflow/frontend/assets/octagon-pause-js4QzBZA.js +0 -6
- langflow/frontend/assets/octagon-x-Dk9a4j2g.js +0 -6
- langflow/frontend/assets/omega-mYamy5wP.js +0 -6
- langflow/frontend/assets/option-CUYRIOMu.js +0 -6
- langflow/frontend/assets/orbit-CKv-3NP9.js +0 -6
- langflow/frontend/assets/origami-Db03P-HH.js +0 -6
- langflow/frontend/assets/package-2-2Juwg_5K.js +0 -6
- langflow/frontend/assets/package-BRGSHC5m.js +0 -6
- langflow/frontend/assets/package-check-B2UvoBTd.js +0 -6
- langflow/frontend/assets/package-minus-eCu1HcH4.js +0 -6
- langflow/frontend/assets/package-open-D5apDq0b.js +0 -6
- langflow/frontend/assets/package-plus-DcmauE5Y.js +0 -6
- langflow/frontend/assets/package-search-DPrIAldx.js +0 -6
- langflow/frontend/assets/package-x-XPlCRqVg.js +0 -6
- langflow/frontend/assets/paint-bucket-Dtt7DipG.js +0 -6
- langflow/frontend/assets/paint-roller-D54hQ9EL.js +0 -6
- langflow/frontend/assets/paintbrush-D6DVlQY-.js +0 -6
- langflow/frontend/assets/paintbrush-vertical-Cvrh0dv8.js +0 -6
- langflow/frontend/assets/palette-DZjLqWEE.js +0 -6
- langflow/frontend/assets/panel-bottom-DKkfhNbE.js +0 -6
- langflow/frontend/assets/panel-bottom-close-Y9inZ-Lg.js +0 -6
- langflow/frontend/assets/panel-bottom-dashed-BkJIn8pA.js +0 -6
- langflow/frontend/assets/panel-bottom-open-q4f0GVbZ.js +0 -6
- langflow/frontend/assets/panel-left-close-BmtAQrKJ.js +0 -6
- langflow/frontend/assets/panel-left-dashed-ChlwFy74.js +0 -6
- langflow/frontend/assets/panel-left-open-XHXZVNWv.js +0 -6
- langflow/frontend/assets/panel-right-B_GO73R6.js +0 -6
- langflow/frontend/assets/panel-right-close-CjTH2SAn.js +0 -6
- langflow/frontend/assets/panel-right-dashed-L5Yp190t.js +0 -6
- langflow/frontend/assets/panel-right-open--iHtcOYZ.js +0 -6
- langflow/frontend/assets/panel-top-DOXfrMML.js +0 -6
- langflow/frontend/assets/panel-top-close-CfDHwCd3.js +0 -6
- langflow/frontend/assets/panel-top-dashed-CLOfFL5Y.js +0 -6
- langflow/frontend/assets/panel-top-open-C6x3bGks.js +0 -6
- langflow/frontend/assets/panels-left-bottom-DErJphT8.js +0 -6
- langflow/frontend/assets/panels-right-bottom-D81AMxRS.js +0 -6
- langflow/frontend/assets/panels-top-left-C2K8WXtA.js +0 -6
- langflow/frontend/assets/paperclip-DoulwVXo.js +0 -6
- langflow/frontend/assets/parentheses-D1sMSJok.js +0 -6
- langflow/frontend/assets/parking-meter-kicxVB57.js +0 -6
- langflow/frontend/assets/party-popper-DOehfOsh.js +0 -6
- langflow/frontend/assets/pause-DC3AS1_H.js +0 -6
- langflow/frontend/assets/paw-print-DjOLImjW.js +0 -6
- langflow/frontend/assets/pc-case-DQC3GYeR.js +0 -6
- langflow/frontend/assets/pen-DM7kR0Jw.js +0 -6
- langflow/frontend/assets/pen-line-Bsvdd4jV.js +0 -6
- langflow/frontend/assets/pen-off-CAEWPqXv.js +0 -6
- langflow/frontend/assets/pen-tool-BcVfRopU.js +0 -6
- langflow/frontend/assets/pencil-BlUEec4X.js +0 -6
- langflow/frontend/assets/pencil-line-L2QYrPj8.js +0 -6
- langflow/frontend/assets/pencil-off-CGzZM-T2.js +0 -6
- langflow/frontend/assets/pencil-ruler-B3oatjJU.js +0 -6
- langflow/frontend/assets/pentagon-BLB278_6.js +0 -6
- langflow/frontend/assets/percent-BDXmF2EC.js +0 -6
- langflow/frontend/assets/person-standing-Dzk1Z3_N.js +0 -6
- langflow/frontend/assets/philippine-peso-8pW6097O.js +0 -6
- langflow/frontend/assets/phone-BSB5gkXg.js +0 -6
- langflow/frontend/assets/phone-call-DaUk93Y4.js +0 -6
- langflow/frontend/assets/phone-forwarded-Dc7TrVMY.js +0 -6
- langflow/frontend/assets/phone-incoming-BDqjCVEn.js +0 -6
- langflow/frontend/assets/phone-missed-C6jXid_r.js +0 -6
- langflow/frontend/assets/phone-off-DX2bd0Rz.js +0 -6
- langflow/frontend/assets/phone-outgoing-CIBRSzlg.js +0 -6
- langflow/frontend/assets/pi-DFvu6Rvd.js +0 -6
- langflow/frontend/assets/piano-BrBrplYm.js +0 -6
- langflow/frontend/assets/pickaxe-C-_uD3S4.js +0 -6
- langflow/frontend/assets/picture-in-picture-2-CYPLZgIz.js +0 -6
- langflow/frontend/assets/picture-in-picture-CzJMCFL0.js +0 -6
- langflow/frontend/assets/piggy-bank-VrsksHBR.js +0 -6
- langflow/frontend/assets/pilcrow-CRVQVjXq.js +0 -6
- langflow/frontend/assets/pilcrow-left-Bw5MDtcD.js +0 -6
- langflow/frontend/assets/pilcrow-right-BSvYW3Bs.js +0 -6
- langflow/frontend/assets/pill-CCgZIZaU.js +0 -6
- langflow/frontend/assets/pill-bottle-Bz8L-myc.js +0 -6
- langflow/frontend/assets/pin-CpcZfyaQ.js +0 -6
- langflow/frontend/assets/pin-off-BWxMlSF9.js +0 -6
- langflow/frontend/assets/pipette-DIOU6U4M.js +0 -6
- langflow/frontend/assets/pizza-DPndoBkE.js +0 -6
- langflow/frontend/assets/plane-BjKU1SMi.js +0 -6
- langflow/frontend/assets/plane-landing-BwaoIaxM.js +0 -6
- langflow/frontend/assets/plane-takeoff-cJrbN5JR.js +0 -6
- langflow/frontend/assets/play-JWwcgO_a.js +0 -6
- langflow/frontend/assets/plug-2-BkULzhLG.js +0 -6
- langflow/frontend/assets/plug-EGvNpePB.js +0 -6
- langflow/frontend/assets/plug-zap-PocgL_HA.js +0 -6
- langflow/frontend/assets/pocket-B1PYQMj8.js +0 -6
- langflow/frontend/assets/pocket-knife-W8PnIhO8.js +0 -6
- langflow/frontend/assets/podcast-Bn9vBhTr.js +0 -6
- langflow/frontend/assets/pointer-ZXX5ydr8.js +0 -6
- langflow/frontend/assets/pointer-off-DGMoG6N9.js +0 -6
- langflow/frontend/assets/popcorn-CjKmsViy.js +0 -6
- langflow/frontend/assets/popsicle-CEJfaRsa.js +0 -6
- langflow/frontend/assets/pound-sterling-4pIuM8qN.js +0 -6
- langflow/frontend/assets/power-Ce_RpKLS.js +0 -6
- langflow/frontend/assets/power-off-BTk6a4jN.js +0 -6
- langflow/frontend/assets/presentation-zDaQAcCi.js +0 -6
- langflow/frontend/assets/printer-DiHhWOSl.js +0 -6
- langflow/frontend/assets/printer-check-DD2-75np.js +0 -6
- langflow/frontend/assets/projector-BPXyhKc4.js +0 -6
- langflow/frontend/assets/proportions-CMaVT9lx.js +0 -6
- langflow/frontend/assets/puzzle-Dt6QmOyl.js +0 -6
- langflow/frontend/assets/pyramid-Bv9KPys4.js +0 -6
- langflow/frontend/assets/qr-code-BQh4vsHb.js +0 -6
- langflow/frontend/assets/quote-BIyJsKFu.js +0 -6
- langflow/frontend/assets/rabbit-CwpQ58xh.js +0 -6
- langflow/frontend/assets/radar-BPXLopgw.js +0 -6
- langflow/frontend/assets/radiation-XiU5J_0y.js +0 -6
- langflow/frontend/assets/radical-DBsO9JOZ.js +0 -6
- langflow/frontend/assets/radio-8plMkBKD.js +0 -6
- langflow/frontend/assets/radio-receiver-DGCIRtlV.js +0 -6
- langflow/frontend/assets/radio-tower-D-K-Dq1j.js +0 -6
- langflow/frontend/assets/radius-BtxdGraC.js +0 -6
- langflow/frontend/assets/rail-symbol-2saYAXmw.js +0 -6
- langflow/frontend/assets/rainbow-D-vQhn_P.js +0 -6
- langflow/frontend/assets/rat-ksp-2Opn.js +0 -6
- langflow/frontend/assets/ratio-b2pIUzfC.js +0 -6
- langflow/frontend/assets/receipt-DnxW2sTC.js +0 -6
- langflow/frontend/assets/receipt-cent-DgTFiFsN.js +0 -6
- langflow/frontend/assets/receipt-euro-CroU75OQ.js +0 -6
- langflow/frontend/assets/receipt-indian-rupee-BelGNdhL.js +0 -6
- langflow/frontend/assets/receipt-japanese-yen-Dneos7wW.js +0 -6
- langflow/frontend/assets/receipt-pound-sterling-D9oMyPW3.js +0 -6
- langflow/frontend/assets/receipt-russian-ruble-BaAMI2z5.js +0 -6
- langflow/frontend/assets/receipt-swiss-franc-CApWMWoy.js +0 -6
- langflow/frontend/assets/receipt-text-DWaWoT63.js +0 -6
- langflow/frontend/assets/rectangle-ellipsis-Dy7FN8ah.js +0 -6
- langflow/frontend/assets/rectangle-goggles-BZVdtly_.js +0 -6
- langflow/frontend/assets/rectangle-horizontal-DhnV4Cu8.js +0 -6
- langflow/frontend/assets/rectangle-vertical-SWDCzzA3.js +0 -6
- langflow/frontend/assets/recycle-BXD3AUyp.js +0 -6
- langflow/frontend/assets/redo-2-W_Any8U_.js +0 -6
- langflow/frontend/assets/redo-BxyriiyO.js +0 -6
- langflow/frontend/assets/redo-dot-DXqHkWDY.js +0 -6
- langflow/frontend/assets/refresh-ccw-DDJPywZK.js +0 -6
- langflow/frontend/assets/refresh-ccw-dot-CaQZuaz7.js +0 -6
- langflow/frontend/assets/refresh-cw-off-BAgYS8rV.js +0 -6
- langflow/frontend/assets/refresh-cw-qPmtnxQM.js +0 -6
- langflow/frontend/assets/refrigerator-79QxWziD.js +0 -6
- langflow/frontend/assets/regex-DAMPVDJy.js +0 -6
- langflow/frontend/assets/remove-formatting-Bzr7ewLV.js +0 -6
- langflow/frontend/assets/repeat-1-CoOD4iUH.js +0 -6
- langflow/frontend/assets/repeat-2-go-DpP_V.js +0 -6
- langflow/frontend/assets/repeat-Cb229YM9.js +0 -6
- langflow/frontend/assets/replace-CEVfl2u6.js +0 -6
- langflow/frontend/assets/replace-all-DWkdmDKo.js +0 -6
- langflow/frontend/assets/reply-7f-PQSmd.js +0 -6
- langflow/frontend/assets/reply-all-REIVdVRK.js +0 -6
- langflow/frontend/assets/rewind-jMTQjdh4.js +0 -6
- langflow/frontend/assets/ribbon-DwOcydsj.js +0 -6
- langflow/frontend/assets/rocket-B3qiDK0E.js +0 -6
- langflow/frontend/assets/rocking-chair-DVFxjG7x.js +0 -6
- langflow/frontend/assets/roller-coaster-B_hAk2yh.js +0 -6
- langflow/frontend/assets/rotate-3d-CJDyYXfO.js +0 -6
- langflow/frontend/assets/rotate-ccw-DTYUML5q.js +0 -6
- langflow/frontend/assets/rotate-ccw-key-B6lAxVk3.js +0 -6
- langflow/frontend/assets/rotate-ccw-square-ZpzHg3BG.js +0 -6
- langflow/frontend/assets/rotate-cw--goANcZb.js +0 -6
- langflow/frontend/assets/rotate-cw-square-CQme4RDc.js +0 -6
- langflow/frontend/assets/route-U0PdlpK1.js +0 -6
- langflow/frontend/assets/route-off-Dmd6qmJr.js +0 -6
- langflow/frontend/assets/router-CqVHwsp4.js +0 -6
- langflow/frontend/assets/rows-2-DZd3r_d1.js +0 -6
- langflow/frontend/assets/rows-3-DlRhRNBS.js +0 -6
- langflow/frontend/assets/rows-4-Bnr3F5Ig.js +0 -6
- langflow/frontend/assets/rss-hfQ63sRl.js +0 -6
- langflow/frontend/assets/ruler-CNOWvm8e.js +0 -6
- langflow/frontend/assets/ruler-dimension-line-B-_7fa-e.js +0 -6
- langflow/frontend/assets/russian-ruble-CWj2DXGa.js +0 -6
- langflow/frontend/assets/sailboat-BN755CkX.js +0 -6
- langflow/frontend/assets/salad-B1FASsWL.js +0 -6
- langflow/frontend/assets/sandwich-B8Gbp6Uu.js +0 -6
- langflow/frontend/assets/satellite-DJ_-Qrkd.js +0 -6
- langflow/frontend/assets/satellite-dish-C5W00Cw4.js +0 -6
- langflow/frontend/assets/saudi-riyal-BaHsEeX2.js +0 -6
- langflow/frontend/assets/save-all-Cq-IUzX0.js +0 -6
- langflow/frontend/assets/save-off-BFUHSfZB.js +0 -6
- langflow/frontend/assets/save-rUXWuhsE.js +0 -6
- langflow/frontend/assets/scale-3d-DRHbTf94.js +0 -6
- langflow/frontend/assets/scale-Bwvd5eQq.js +0 -6
- langflow/frontend/assets/scaling-T7W3r6OS.js +0 -6
- langflow/frontend/assets/scan-BYcsyfUO.js +0 -6
- langflow/frontend/assets/scan-barcode-WDmK-SAE.js +0 -6
- langflow/frontend/assets/scan-eye-DvLqoQk9.js +0 -6
- langflow/frontend/assets/scan-face-ErJORfeD.js +0 -6
- langflow/frontend/assets/scan-heart-B17SEF1b.js +0 -6
- langflow/frontend/assets/scan-line-DJVPfHlj.js +0 -6
- langflow/frontend/assets/scan-qr-code-Dp5pDTe9.js +0 -6
- langflow/frontend/assets/scan-search-CyMMc6uG.js +0 -6
- langflow/frontend/assets/scan-text-BvfPVvZd.js +0 -6
- langflow/frontend/assets/school-6RZvHm3Y.js +0 -6
- langflow/frontend/assets/scissors-BnZH5FLV.js +0 -6
- langflow/frontend/assets/scissors-line-dashed-B8CnhLpp.js +0 -6
- langflow/frontend/assets/screen-share-B-IdJsWf.js +0 -6
- langflow/frontend/assets/screen-share-off-BcLgB-QY.js +0 -6
- langflow/frontend/assets/scroll-BAbvzFhw.js +0 -6
- langflow/frontend/assets/scroll-text-CTyVAGzP.js +0 -6
- langflow/frontend/assets/search-check-ZLjbC5QE.js +0 -6
- langflow/frontend/assets/search-code-Dz2bEMJ1.js +0 -6
- langflow/frontend/assets/search-slash-C0GPHmeV.js +0 -6
- langflow/frontend/assets/search-x-DSRVo8Q0.js +0 -6
- langflow/frontend/assets/section-BXtLLfVB.js +0 -6
- langflow/frontend/assets/send-horizontal-Bk0C5xTn.js +0 -6
- langflow/frontend/assets/send-to-back-DVDTCTmY.js +0 -6
- langflow/frontend/assets/send-y3xac-Z8.js +0 -6
- langflow/frontend/assets/separator-horizontal-DjhyGqlL.js +0 -6
- langflow/frontend/assets/separator-vertical-C8yHKi3A.js +0 -6
- langflow/frontend/assets/server-DLMBtLRi.js +0 -6
- langflow/frontend/assets/server-cog-C_acTz3o.js +0 -6
- langflow/frontend/assets/server-crash-DiB_eAS0.js +0 -6
- langflow/frontend/assets/server-off-Ce2m2PO8.js +0 -6
- langflow/frontend/assets/settings-2-BXS8p9yd.js +0 -6
- langflow/frontend/assets/settings-CECtcUku.js +0 -6
- langflow/frontend/assets/shapes-CyAdB2p1.js +0 -6
- langflow/frontend/assets/share-2-CkR2XJ4w.js +0 -6
- langflow/frontend/assets/share-aU1oQycm.js +0 -6
- langflow/frontend/assets/sheet-wd6yVF1G.js +0 -6
- langflow/frontend/assets/shell-BsVxCNun.js +0 -6
- langflow/frontend/assets/shield-BYup7Kta.js +0 -6
- langflow/frontend/assets/shield-alert-jWbvzd7t.js +0 -6
- langflow/frontend/assets/shield-ban-CMOWtw6F.js +0 -6
- langflow/frontend/assets/shield-check-CGQOVQ5t.js +0 -6
- langflow/frontend/assets/shield-ellipsis-BjZtu1ZK.js +0 -6
- langflow/frontend/assets/shield-half-hSgNZ-Dk.js +0 -6
- langflow/frontend/assets/shield-minus-vA1GzWXQ.js +0 -6
- langflow/frontend/assets/shield-off-BI1Unp0c.js +0 -6
- langflow/frontend/assets/shield-plus-jS3THPuG.js +0 -6
- langflow/frontend/assets/shield-question-CvfF4Pzd.js +0 -6
- langflow/frontend/assets/shield-user-BET3N5mT.js +0 -6
- langflow/frontend/assets/shield-x-COkQc8o5.js +0 -6
- langflow/frontend/assets/ship-CcNhSIdY.js +0 -6
- langflow/frontend/assets/ship-wheel-Bw6rSHjc.js +0 -6
- langflow/frontend/assets/shirt-C5JGmzKr.js +0 -6
- langflow/frontend/assets/shopping-bag-BQ76dBeS.js +0 -6
- langflow/frontend/assets/shopping-basket-Dblk_9d-.js +0 -6
- langflow/frontend/assets/shopping-cart-CZAlfqop.js +0 -6
- langflow/frontend/assets/shovel-CDBUKSze.js +0 -6
- langflow/frontend/assets/shower-head-CpzqDVGY.js +0 -6
- langflow/frontend/assets/shredder-JSFjoB_H.js +0 -6
- langflow/frontend/assets/shrimp-CFl1_DR9.js +0 -6
- langflow/frontend/assets/shrink-hfrXOzVx.js +0 -6
- langflow/frontend/assets/shrub-qz_D8MIN.js +0 -6
- langflow/frontend/assets/shuffle-B0RZ6qeq.js +0 -6
- langflow/frontend/assets/sigma-DgOloNah.js +0 -6
- langflow/frontend/assets/signal-MDPVUvhX.js +0 -6
- langflow/frontend/assets/signal-high-D1zK4rF8.js +0 -6
- langflow/frontend/assets/signal-low-Dua5YeAL.js +0 -6
- langflow/frontend/assets/signal-medium-BmB_4ag4.js +0 -6
- langflow/frontend/assets/signal-zero-D3JYrbLc.js +0 -6
- langflow/frontend/assets/signature-BfLVCz_j.js +0 -6
- langflow/frontend/assets/signpost-C9alkE0N.js +0 -6
- langflow/frontend/assets/signpost-big-CZqm-mwM.js +0 -6
- langflow/frontend/assets/siren-C5_yv4zf.js +0 -6
- langflow/frontend/assets/skip-back-CoBWwFvy.js +0 -6
- langflow/frontend/assets/skip-forward-BvNbx8_A.js +0 -6
- langflow/frontend/assets/skull-CoN9k39Z.js +0 -6
- langflow/frontend/assets/slack-DR-xhp_D.js +0 -6
- langflow/frontend/assets/slash-YOt-xLyu.js +0 -6
- langflow/frontend/assets/slice-CTm9mXYF.js +0 -6
- langflow/frontend/assets/sliders-horizontal-Bbllrlfg.js +0 -6
- langflow/frontend/assets/sliders-vertical-BqJXkXug.js +0 -6
- langflow/frontend/assets/smartphone-charging-qqe-f_oj.js +0 -6
- langflow/frontend/assets/smartphone-nfc-gg3LXEcw.js +0 -6
- langflow/frontend/assets/smartphone-pTpD7ZG6.js +0 -6
- langflow/frontend/assets/smile-C9kL5Bua.js +0 -6
- langflow/frontend/assets/smile-plus-btM6Cy_d.js +0 -6
- langflow/frontend/assets/snail-CGrap-4v.js +0 -6
- langflow/frontend/assets/snowflake-CVgE3j4c.js +0 -6
- langflow/frontend/assets/sofa-B9ORaq0V.js +0 -6
- langflow/frontend/assets/soup-9KCvJm6J.js +0 -6
- langflow/frontend/assets/space-CawtjWB3.js +0 -6
- langflow/frontend/assets/spade-W3RW53k8.js +0 -6
- langflow/frontend/assets/sparkle-C0YNDR10.js +0 -6
- langflow/frontend/assets/sparkles-BAmY14PC.js +0 -6
- langflow/frontend/assets/speaker-CLczsiCK.js +0 -6
- langflow/frontend/assets/speech-LrPI1Bg8.js +0 -6
- langflow/frontend/assets/spell-check-2-vl6PmkgZ.js +0 -6
- langflow/frontend/assets/spell-check-B6_0sdGp.js +0 -6
- langflow/frontend/assets/spline-Cps3LTJ7.js +0 -6
- langflow/frontend/assets/spline-pointer-CgACMmpv.js +0 -6
- langflow/frontend/assets/split-Du8iRMG7.js +0 -6
- langflow/frontend/assets/spray-can-CRoAiiwu.js +0 -6
- langflow/frontend/assets/sprout-CMvJ56QM.js +0 -6
- langflow/frontend/assets/square-CkroTjSQ.js +0 -6
- langflow/frontend/assets/square-activity-CcOSYBrS.js +0 -6
- langflow/frontend/assets/square-arrow-down-BVdJOZEJ.js +0 -6
- langflow/frontend/assets/square-arrow-down-left-Cmzi6p1x.js +0 -6
- langflow/frontend/assets/square-arrow-down-right-CZLHVnQz.js +0 -6
- langflow/frontend/assets/square-arrow-left-DjVpjsrO.js +0 -6
- langflow/frontend/assets/square-arrow-out-down-left-wXj5IWRk.js +0 -6
- langflow/frontend/assets/square-arrow-out-down-right-CwtDp41D.js +0 -6
- langflow/frontend/assets/square-arrow-out-up-left-FRvjXB1a.js +0 -6
- langflow/frontend/assets/square-arrow-out-up-right-DlPfPEyw.js +0 -6
- langflow/frontend/assets/square-arrow-right-CXsKizML.js +0 -6
- langflow/frontend/assets/square-arrow-up-CEkTBxex.js +0 -6
- langflow/frontend/assets/square-arrow-up-left-BP02lXAS.js +0 -6
- langflow/frontend/assets/square-arrow-up-right-BmSDFkDr.js +0 -6
- langflow/frontend/assets/square-asterisk-hbwvBM2B.js +0 -6
- langflow/frontend/assets/square-bottom-dashed-scissors-DYKrJw1y.js +0 -6
- langflow/frontend/assets/square-chart-gantt-Vwnfo_Pn.js +0 -6
- langflow/frontend/assets/square-check-C04cs5ZB.js +0 -6
- langflow/frontend/assets/square-check-big-BF3AAHOB.js +0 -6
- langflow/frontend/assets/square-chevron-down-DmNdYA3q.js +0 -6
- langflow/frontend/assets/square-chevron-left-BtlOVCVY.js +0 -6
- langflow/frontend/assets/square-chevron-right-GIZBQEzx.js +0 -6
- langflow/frontend/assets/square-chevron-up-CQEO5ONV.js +0 -6
- langflow/frontend/assets/square-code-CD0gAgvN.js +0 -6
- langflow/frontend/assets/square-dashed-BDrI1c-R.js +0 -6
- langflow/frontend/assets/square-dashed-bottom-BJL9d4pa.js +0 -6
- langflow/frontend/assets/square-dashed-bottom-code-BeOBZkR0.js +0 -6
- langflow/frontend/assets/square-dashed-kanban-CErbmiES.js +0 -6
- langflow/frontend/assets/square-dashed-mouse-pointer-Zmi5agfp.js +0 -6
- langflow/frontend/assets/square-divide-B6A6zkw1.js +0 -6
- langflow/frontend/assets/square-dot-P6fcdHPf.js +0 -6
- langflow/frontend/assets/square-equal-WJbHP_t4.js +0 -6
- langflow/frontend/assets/square-function-CettiR3X.js +0 -6
- langflow/frontend/assets/square-kanban-BsXU8E_y.js +0 -6
- langflow/frontend/assets/square-library-BmQ3hTyB.js +0 -6
- langflow/frontend/assets/square-m-DwfZ-vok.js +0 -6
- langflow/frontend/assets/square-menu-Dpthf6jm.js +0 -6
- langflow/frontend/assets/square-minus-Tj5ClIqx.js +0 -6
- langflow/frontend/assets/square-mouse-pointer-mr8timW7.js +0 -6
- langflow/frontend/assets/square-parking-Bk9SzHc8.js +0 -6
- langflow/frontend/assets/square-parking-off-IrrpobT0.js +0 -6
- langflow/frontend/assets/square-pen-KiRrTvtS.js +0 -6
- langflow/frontend/assets/square-percent-C8aOSpg0.js +0 -6
- langflow/frontend/assets/square-pi-DgKhv0At.js +0 -6
- langflow/frontend/assets/square-pilcrow-COH3OK9n.js +0 -6
- langflow/frontend/assets/square-play-CAUGl-72.js +0 -6
- langflow/frontend/assets/square-plus-CRlzaeG6.js +0 -6
- langflow/frontend/assets/square-power-BUV-DpO9.js +0 -6
- langflow/frontend/assets/square-radical-mDbhE1Jp.js +0 -6
- langflow/frontend/assets/square-round-corner-D8ikBzW8.js +0 -6
- langflow/frontend/assets/square-scissors-sOPUwUTq.js +0 -6
- langflow/frontend/assets/square-sigma-pZR7i2en.js +0 -6
- langflow/frontend/assets/square-slash-CecdJ-2g.js +0 -6
- langflow/frontend/assets/square-split-horizontal-Cn1YMMw-.js +0 -6
- langflow/frontend/assets/square-split-vertical-C3Z8n5KC.js +0 -6
- langflow/frontend/assets/square-square-CiXxR3Ie.js +0 -6
- langflow/frontend/assets/square-stack-B2uKFYXm.js +0 -6
- langflow/frontend/assets/square-terminal-DE1v-WES.js +0 -6
- langflow/frontend/assets/square-user-CdQ5nItk.js +0 -6
- langflow/frontend/assets/square-user-round-BAGRGZ4p.js +0 -6
- langflow/frontend/assets/square-x-BI3Pn3yZ.js +0 -6
- langflow/frontend/assets/squares-exclude-CBt3NOOB.js +0 -6
- langflow/frontend/assets/squares-intersect-C1ol5eE2.js +0 -6
- langflow/frontend/assets/squares-subtract-CxQ-opYW.js +0 -6
- langflow/frontend/assets/squares-unite-bHbJjImE.js +0 -6
- langflow/frontend/assets/squircle-BKxd9XrI.js +0 -6
- langflow/frontend/assets/squirrel-BdGL91Qm.js +0 -6
- langflow/frontend/assets/stamp-BIQg-SUE.js +0 -6
- langflow/frontend/assets/star-Cpa4WlZd.js +0 -6
- langflow/frontend/assets/star-half-BnsiPaVT.js +0 -6
- langflow/frontend/assets/star-off-AO1QRqoS.js +0 -6
- langflow/frontend/assets/step-back-CcOvZiFD.js +0 -6
- langflow/frontend/assets/step-forward-C4x-q-G6.js +0 -6
- langflow/frontend/assets/stethoscope-CANnOOAi.js +0 -6
- langflow/frontend/assets/sticker-Q5M0hcLB.js +0 -6
- langflow/frontend/assets/sticky-note-C4QwXCe_.js +0 -6
- langflow/frontend/assets/store-CJCVnYZH.js +0 -6
- langflow/frontend/assets/stretch-horizontal-3ZhE2sCc.js +0 -6
- langflow/frontend/assets/stretch-vertical-mf41Xa4e.js +0 -6
- langflow/frontend/assets/strikethrough-yFT7jPwx.js +0 -6
- langflow/frontend/assets/subscript-VCxtxqO7.js +0 -6
- langflow/frontend/assets/sun-dim-4VSc0tI8.js +0 -6
- langflow/frontend/assets/sun-medium-CJ4xVMuF.js +0 -6
- langflow/frontend/assets/sun-moon-BO47Jkl4.js +0 -6
- langflow/frontend/assets/sun-rRloNURd.js +0 -6
- langflow/frontend/assets/sun-snow-BlSdUi7g.js +0 -6
- langflow/frontend/assets/sunrise-sO4wXyPP.js +0 -6
- langflow/frontend/assets/sunset-E9GFs51P.js +0 -6
- langflow/frontend/assets/superscript-BWmyCaUT.js +0 -6
- langflow/frontend/assets/swatch-book-BmWfAu49.js +0 -6
- langflow/frontend/assets/swiss-franc-hV1KP_fg.js +0 -6
- langflow/frontend/assets/switch-camera-BWkYvwXl.js +0 -6
- langflow/frontend/assets/sword-BDSHehSN.js +0 -6
- langflow/frontend/assets/swords-BRibwz0-.js +0 -6
- langflow/frontend/assets/syringe-C7_FV9Po.js +0 -6
- langflow/frontend/assets/table-2-CkYqc62r.js +0 -6
- langflow/frontend/assets/table-CASDU2H0.js +0 -6
- langflow/frontend/assets/table-cells-merge-DpXjO7d-.js +0 -6
- langflow/frontend/assets/table-cells-split-aydpayp8.js +0 -6
- langflow/frontend/assets/table-columns-split-B8VrYcuj.js +0 -6
- langflow/frontend/assets/table-of-contents-oGuU6U6i.js +0 -6
- langflow/frontend/assets/table-properties-DAgm8rqw.js +0 -6
- langflow/frontend/assets/table-rows-split-BFIJj2J8.js +0 -6
- langflow/frontend/assets/tablet-BliqtQBM.js +0 -6
- langflow/frontend/assets/tablet-smartphone-CE2tqU0B.js +0 -6
- langflow/frontend/assets/tablets-CswnoDNg.js +0 -6
- langflow/frontend/assets/tag-BerZ0133.js +0 -6
- langflow/frontend/assets/tags-DYlK_nbG.js +0 -6
- langflow/frontend/assets/tally-1-IN24qgmu.js +0 -6
- langflow/frontend/assets/tally-2-D02oV5rO.js +0 -6
- langflow/frontend/assets/tally-3-DYlGnbrA.js +0 -6
- langflow/frontend/assets/tally-4-D2KLKgKj.js +0 -6
- langflow/frontend/assets/tally-5-Cd0kRXrn.js +0 -6
- langflow/frontend/assets/tangent-G01MUkHP.js +0 -6
- langflow/frontend/assets/target-DbUvoffS.js +0 -6
- langflow/frontend/assets/telescope-KhvkA8ff.js +0 -6
- langflow/frontend/assets/tent-BgTD0ty8.js +0 -6
- langflow/frontend/assets/tent-tree-_R3-gT0M.js +0 -6
- langflow/frontend/assets/terminal-CqO1pA0S.js +0 -6
- langflow/frontend/assets/test-tube-Cosu5dmV.js +0 -6
- langflow/frontend/assets/test-tube-diagonal-BdAA9XeL.js +0 -6
- langflow/frontend/assets/test-tubes-Cd4n2GvV.js +0 -6
- langflow/frontend/assets/text-B0Xnj4ft.js +0 -6
- langflow/frontend/assets/text-cursor-Cy8p6TjV.js +0 -6
- langflow/frontend/assets/text-cursor-input-DgOo4wY8.js +0 -6
- langflow/frontend/assets/text-quote-C92ek5Lo.js +0 -6
- langflow/frontend/assets/text-search-Cy6e1fBt.js +0 -6
- langflow/frontend/assets/text-select-BdMHFJow.js +0 -6
- langflow/frontend/assets/theater-DK0cChU_.js +0 -6
- langflow/frontend/assets/thermometer-BcSnLB44.js +0 -6
- langflow/frontend/assets/thermometer-snowflake-BFFQB-J0.js +0 -6
- langflow/frontend/assets/thermometer-sun-By6M7z2S.js +0 -6
- langflow/frontend/assets/thumbs-down-DpArakqZ.js +0 -6
- langflow/frontend/assets/thumbs-up-OCTYaIsr.js +0 -6
- langflow/frontend/assets/ticket-DKk9KFsa.js +0 -6
- langflow/frontend/assets/ticket-check-CxlmH0TZ.js +0 -6
- langflow/frontend/assets/ticket-minus-yYNVgAXv.js +0 -6
- langflow/frontend/assets/ticket-percent-DTK_Eij8.js +0 -6
- langflow/frontend/assets/ticket-plus-DZH6kdc0.js +0 -6
- langflow/frontend/assets/ticket-slash-DaT9cJnH.js +0 -6
- langflow/frontend/assets/ticket-x-C91cugzp.js +0 -6
- langflow/frontend/assets/tickets-D8_swpjZ.js +0 -6
- langflow/frontend/assets/tickets-plane-Bs7N6tut.js +0 -6
- langflow/frontend/assets/timer-D1A5dgcp.js +0 -6
- langflow/frontend/assets/timer-off-Bnj53uqH.js +0 -6
- langflow/frontend/assets/timer-reset-CH2_6LXB.js +0 -6
- langflow/frontend/assets/toggle-left-Bms5HJPp.js +0 -6
- langflow/frontend/assets/toggle-right-Cm22-5tq.js +0 -6
- langflow/frontend/assets/toilet-B_EZH3rv.js +0 -6
- langflow/frontend/assets/tornado-DH7xrdf8.js +0 -6
- langflow/frontend/assets/torus-CeDcEzNl.js +0 -6
- langflow/frontend/assets/touchpad-BkFD1ONX.js +0 -6
- langflow/frontend/assets/touchpad-off-B0uLi6UN.js +0 -6
- langflow/frontend/assets/tower-control-vAS-GcnT.js +0 -6
- langflow/frontend/assets/toy-brick-Cp_hT2tX.js +0 -6
- langflow/frontend/assets/tractor-C6J-q888.js +0 -6
- langflow/frontend/assets/traffic-cone-Bf6tu1aR.js +0 -6
- langflow/frontend/assets/train-front-DFS_gdr7.js +0 -6
- langflow/frontend/assets/train-front-tunnel-B_B45p2C.js +0 -6
- langflow/frontend/assets/train-track-BYxDcy6T.js +0 -6
- langflow/frontend/assets/tram-front-mrGC7NJo.js +0 -6
- langflow/frontend/assets/transgender-imH1_ahf.js +0 -6
- langflow/frontend/assets/trash-CLIJ7hzA.js +0 -6
- langflow/frontend/assets/tree-deciduous-CcMF7uqB.js +0 -6
- langflow/frontend/assets/tree-palm-Cz7loG-5.js +0 -6
- langflow/frontend/assets/tree-pine-_KnmdDVv.js +0 -6
- langflow/frontend/assets/trees-DcMR2K_M.js +0 -6
- langflow/frontend/assets/trello-BNZfFWYi.js +0 -6
- langflow/frontend/assets/trending-down-BWrM4zQ0.js +0 -6
- langflow/frontend/assets/trending-up-BWgdc-K5.js +0 -6
- langflow/frontend/assets/trending-up-down-DQhSV3Za.js +0 -6
- langflow/frontend/assets/triangle-BQ6LFOFJ.js +0 -6
- langflow/frontend/assets/triangle-alert-BdJuJY-l.js +0 -6
- langflow/frontend/assets/triangle-dashed-Ch_AzxG9.js +0 -6
- langflow/frontend/assets/triangle-right-DqHR4ZXG.js +0 -6
- langflow/frontend/assets/trophy-eLjuXzFa.js +0 -6
- langflow/frontend/assets/truck-DXuqRqEe.js +0 -6
- langflow/frontend/assets/truck-electric-D3HyVQnU.js +0 -6
- langflow/frontend/assets/turtle-BuFnjN3h.js +0 -6
- langflow/frontend/assets/tv-BlUmv2d2.js +0 -6
- langflow/frontend/assets/tv-minimal-CpWoecoV.js +0 -6
- langflow/frontend/assets/tv-minimal-play-CPnVQl2f.js +0 -6
- langflow/frontend/assets/twitch-BkdmleL2.js +0 -6
- langflow/frontend/assets/twitter-05QHmZD0.js +0 -6
- langflow/frontend/assets/type-DNr3dfa5.js +0 -6
- langflow/frontend/assets/type-outline-CIrmdXWg.js +0 -6
- langflow/frontend/assets/umbrella-BdhvIGDz.js +0 -6
- langflow/frontend/assets/umbrella-off-BHSI8Bue.js +0 -6
- langflow/frontend/assets/underline-BslkaCEJ.js +0 -6
- langflow/frontend/assets/undo-2-BMx3oDcQ.js +0 -6
- langflow/frontend/assets/undo-CH0IX0A-.js +0 -6
- langflow/frontend/assets/undo-dot-B6yP9J8b.js +0 -6
- langflow/frontend/assets/unfold-horizontal-qqXqOLiN.js +0 -6
- langflow/frontend/assets/unfold-vertical-CLJkyOZ8.js +0 -6
- langflow/frontend/assets/ungroup--gpU_yyB.js +0 -6
- langflow/frontend/assets/university-DcMAR2QE.js +0 -6
- langflow/frontend/assets/unlink-2-DgHQM-Ol.js +0 -6
- langflow/frontend/assets/unlink-CFlKKKjg.js +0 -6
- langflow/frontend/assets/unplug-t7thfy3A.js +0 -6
- langflow/frontend/assets/upload-B47QANX4.js +0 -6
- langflow/frontend/assets/usb-Bao-9jlF.js +0 -6
- langflow/frontend/assets/use-post-add-user-DcUHAOql.js +0 -1
- langflow/frontend/assets/user-Drfvifu4.js +0 -6
- langflow/frontend/assets/user-check-Cl2Cugpa.js +0 -6
- langflow/frontend/assets/user-cog-yKYAgaSS.js +0 -6
- langflow/frontend/assets/user-lock-BspYeCuz.js +0 -6
- langflow/frontend/assets/user-minus-AkYkI7UT.js +0 -6
- langflow/frontend/assets/user-pen-nm0syYEm.js +0 -6
- langflow/frontend/assets/user-plus-ClieQhai.js +0 -6
- langflow/frontend/assets/user-round-DOm2Rvec.js +0 -6
- langflow/frontend/assets/user-round-check-CkC7KhO_.js +0 -6
- langflow/frontend/assets/user-round-cog-B40OFz4y.js +0 -6
- langflow/frontend/assets/user-round-minus-DzKXVvj5.js +0 -6
- langflow/frontend/assets/user-round-pen-B7Hx7T-z.js +0 -6
- langflow/frontend/assets/user-round-plus-gPUNVs5p.js +0 -6
- langflow/frontend/assets/user-round-search-BuCrN7rk.js +0 -6
- langflow/frontend/assets/user-round-x-Clw_HKFu.js +0 -6
- langflow/frontend/assets/user-search-7r9kPJdn.js +0 -6
- langflow/frontend/assets/user-x-D-08UDtO.js +0 -6
- langflow/frontend/assets/users-C4G9vyGr.js +0 -6
- langflow/frontend/assets/users-round-C3zj8mhR.js +0 -6
- langflow/frontend/assets/utensils-BVhMMIp4.js +0 -6
- langflow/frontend/assets/utensils-crossed-DwXOXddJ.js +0 -6
- langflow/frontend/assets/utility-pole-CPmMsN8O.js +0 -6
- langflow/frontend/assets/variable-ihOqLInK.js +0 -6
- langflow/frontend/assets/vault-BL-zlOyC.js +0 -6
- langflow/frontend/assets/vegan-HSv936HT.js +0 -6
- langflow/frontend/assets/venetian-mask-CPF9ez22.js +0 -6
- langflow/frontend/assets/venus-WD9kncdm.js +0 -6
- langflow/frontend/assets/venus-and-mars-DJuedjXD.js +0 -6
- langflow/frontend/assets/vibrate-BlIj-Jgh.js +0 -6
- langflow/frontend/assets/vibrate-off-Bs5X_4sP.js +0 -6
- langflow/frontend/assets/video-Cp1GFFC_.js +0 -6
- langflow/frontend/assets/video-off-BYJF_42a.js +0 -6
- langflow/frontend/assets/videotape-CuedGIlK.js +0 -6
- langflow/frontend/assets/view-uwAlPOmt.js +0 -6
- langflow/frontend/assets/voicemail-IRTIXCuv.js +0 -6
- langflow/frontend/assets/volleyball-Dm8hJeFi.js +0 -6
- langflow/frontend/assets/volume-1-B7dG7AaQ.js +0 -6
- langflow/frontend/assets/volume-1UMvsCQJ.js +0 -6
- langflow/frontend/assets/volume-2-Dbb7rUtl.js +0 -6
- langflow/frontend/assets/volume-off-kXe4C-Hg.js +0 -6
- langflow/frontend/assets/volume-x-Bd5C5IxT.js +0 -6
- langflow/frontend/assets/vote-CBtMBPq5.js +0 -6
- langflow/frontend/assets/wallet-D8Q8uawC.js +0 -6
- langflow/frontend/assets/wallet-cards-_GGB7vF_.js +0 -6
- langflow/frontend/assets/wallet-minimal-CucBi0Jd.js +0 -6
- langflow/frontend/assets/wallpaper-C_9hKf-n.js +0 -6
- langflow/frontend/assets/wand-DPL3CBte.js +0 -6
- langflow/frontend/assets/wand-sparkles-Cl_E8IQM.js +0 -6
- langflow/frontend/assets/warehouse-si5e0uad.js +0 -6
- langflow/frontend/assets/washing-machine-DAoYXz8S.js +0 -6
- langflow/frontend/assets/watch-vHRKFSRo.js +0 -6
- langflow/frontend/assets/waves-DIE8r4QU.js +0 -6
- langflow/frontend/assets/waves-ladder-DmCrSafi.js +0 -6
- langflow/frontend/assets/waypoints-BxAb3sb6.js +0 -6
- langflow/frontend/assets/webcam-DXKnwxjx.js +0 -6
- langflow/frontend/assets/webhook-DIcfjt0z.js +0 -6
- langflow/frontend/assets/webhook-off-Cizw6u19.js +0 -6
- langflow/frontend/assets/weight-C8waPDsY.js +0 -6
- langflow/frontend/assets/wheat-DjhsGbzN.js +0 -6
- langflow/frontend/assets/wheat-off-D159TbMR.js +0 -6
- langflow/frontend/assets/whole-word-BWpJx-dg.js +0 -6
- langflow/frontend/assets/wifi-Bvv6U9Hi.js +0 -6
- langflow/frontend/assets/wifi-high-Ct1ZekJ4.js +0 -6
- langflow/frontend/assets/wifi-low-BfylmAcn.js +0 -6
- langflow/frontend/assets/wifi-off-BD5Wk1pw.js +0 -6
- langflow/frontend/assets/wifi-pen-Bxkh4qXC.js +0 -6
- langflow/frontend/assets/wifi-zero-CqfrN4bl.js +0 -6
- langflow/frontend/assets/wind-D6hRFy66.js +0 -6
- langflow/frontend/assets/wind-arrow-down-DGVpj5j-.js +0 -6
- langflow/frontend/assets/wine-Dbt_7b9f.js +0 -6
- langflow/frontend/assets/wine-off-BuB0kkR9.js +0 -6
- langflow/frontend/assets/workflow-Cfb_GZf0.js +0 -6
- langflow/frontend/assets/worm-B7O5ml_A.js +0 -6
- langflow/frontend/assets/wrap-text-Pa-62zfV.js +0 -6
- langflow/frontend/assets/wrench-BIR5N1wl.js +0 -6
- langflow/frontend/assets/youtube-DvEYbar7.js +0 -6
- langflow/frontend/assets/zap-B7FF_DHv.js +0 -6
- langflow/frontend/assets/zap-off-ZtPxT6cL.js +0 -6
- langflow/frontend/assets/zoom-in-B0wOuivz.js +0 -6
- langflow/frontend/assets/zoom-out-DEmL9kzZ.js +0 -6
- langflow_base_nightly-1.7.0.dev55.dist-info/METADATA +0 -99
- langflow_base_nightly-1.7.0.dev55.dist-info/RECORD +0 -2283
- {langflow_base_nightly-1.7.0.dev55.dist-info → langflow_base_nightly-1.7.1.dev5.dist-info}/WHEEL +0 -0
- {langflow_base_nightly-1.7.0.dev55.dist-info → langflow_base_nightly-1.7.1.dev5.dist-info}/entry_points.txt +0 -0
|
@@ -1629,23 +1629,17 @@
|
|
|
1629
1629
|
"conditional_paths": [],
|
|
1630
1630
|
"custom_fields": {},
|
|
1631
1631
|
"description": "Define the agent's instructions, then enter a task to complete using tools.",
|
|
1632
|
-
"display_name": "
|
|
1633
|
-
"documentation": "",
|
|
1632
|
+
"display_name": "Agent",
|
|
1633
|
+
"documentation": "https://docs.langflow.org/agents",
|
|
1634
1634
|
"edited": false,
|
|
1635
1635
|
"field_order": [
|
|
1636
|
-
"
|
|
1637
|
-
"max_tokens",
|
|
1638
|
-
"model_kwargs",
|
|
1639
|
-
"json_mode",
|
|
1640
|
-
"model_name",
|
|
1641
|
-
"openai_api_base",
|
|
1636
|
+
"model",
|
|
1642
1637
|
"api_key",
|
|
1643
|
-
"temperature",
|
|
1644
|
-
"seed",
|
|
1645
|
-
"max_retries",
|
|
1646
|
-
"timeout",
|
|
1647
1638
|
"system_prompt",
|
|
1639
|
+
"context_id",
|
|
1648
1640
|
"n_messages",
|
|
1641
|
+
"format_instructions",
|
|
1642
|
+
"output_schema",
|
|
1649
1643
|
"tools",
|
|
1650
1644
|
"input_value",
|
|
1651
1645
|
"handle_parsing_errors",
|
|
@@ -1656,9 +1650,10 @@
|
|
|
1656
1650
|
],
|
|
1657
1651
|
"frozen": false,
|
|
1658
1652
|
"icon": "bot",
|
|
1653
|
+
"last_updated": "2025-12-11T21:41:48.407Z",
|
|
1659
1654
|
"legacy": false,
|
|
1660
1655
|
"metadata": {
|
|
1661
|
-
"code_hash": "
|
|
1656
|
+
"code_hash": "bdc309bc2d2a",
|
|
1662
1657
|
"dependencies": {
|
|
1663
1658
|
"dependencies": [
|
|
1664
1659
|
{
|
|
@@ -1705,21 +1700,25 @@
|
|
|
1705
1700
|
"display_name": "Current Date",
|
|
1706
1701
|
"dynamic": false,
|
|
1707
1702
|
"info": "If true, will add a tool to the agent that returns the current date.",
|
|
1703
|
+
"input_types": [],
|
|
1708
1704
|
"list": false,
|
|
1709
1705
|
"list_add_label": "Add More",
|
|
1710
1706
|
"name": "add_current_date_tool",
|
|
1707
|
+
"override_skip": false,
|
|
1711
1708
|
"placeholder": "",
|
|
1712
1709
|
"required": false,
|
|
1713
1710
|
"show": true,
|
|
1714
1711
|
"title_case": false,
|
|
1715
1712
|
"tool_mode": false,
|
|
1716
1713
|
"trace_as_metadata": true,
|
|
1714
|
+
"track_in_telemetry": true,
|
|
1717
1715
|
"type": "bool",
|
|
1718
1716
|
"value": true
|
|
1719
1717
|
},
|
|
1720
1718
|
"agent_description": {
|
|
1721
1719
|
"_input_type": "MultilineInput",
|
|
1722
1720
|
"advanced": true,
|
|
1721
|
+
"ai_enabled": false,
|
|
1723
1722
|
"copy_field": false,
|
|
1724
1723
|
"display_name": "Agent Description [Deprecated]",
|
|
1725
1724
|
"dynamic": false,
|
|
@@ -1732,6 +1731,7 @@
|
|
|
1732
1731
|
"load_from_db": false,
|
|
1733
1732
|
"multiline": true,
|
|
1734
1733
|
"name": "agent_description",
|
|
1734
|
+
"override_skip": false,
|
|
1735
1735
|
"placeholder": "",
|
|
1736
1736
|
"required": false,
|
|
1737
1737
|
"show": true,
|
|
@@ -1739,26 +1739,29 @@
|
|
|
1739
1739
|
"tool_mode": false,
|
|
1740
1740
|
"trace_as_input": true,
|
|
1741
1741
|
"trace_as_metadata": true,
|
|
1742
|
+
"track_in_telemetry": false,
|
|
1742
1743
|
"type": "str",
|
|
1743
1744
|
"value": "A helpful assistant with access to the following tools:"
|
|
1744
1745
|
},
|
|
1745
1746
|
"api_key": {
|
|
1746
1747
|
"_input_type": "SecretStrInput",
|
|
1747
|
-
"advanced":
|
|
1748
|
+
"advanced": true,
|
|
1748
1749
|
"display_name": "API Key",
|
|
1749
1750
|
"dynamic": false,
|
|
1750
1751
|
"info": "Model Provider API key",
|
|
1751
1752
|
"input_types": [],
|
|
1752
|
-
"load_from_db":
|
|
1753
|
+
"load_from_db": false,
|
|
1753
1754
|
"name": "api_key",
|
|
1755
|
+
"override_skip": false,
|
|
1754
1756
|
"password": true,
|
|
1755
1757
|
"placeholder": "",
|
|
1756
1758
|
"real_time_refresh": true,
|
|
1757
1759
|
"required": false,
|
|
1758
1760
|
"show": true,
|
|
1759
1761
|
"title_case": false,
|
|
1762
|
+
"track_in_telemetry": false,
|
|
1760
1763
|
"type": "str",
|
|
1761
|
-
"value": "
|
|
1764
|
+
"value": ""
|
|
1762
1765
|
},
|
|
1763
1766
|
"code": {
|
|
1764
1767
|
"advanced": true,
|
|
@@ -1776,7 +1779,7 @@
|
|
|
1776
1779
|
"show": true,
|
|
1777
1780
|
"title_case": false,
|
|
1778
1781
|
"type": "code",
|
|
1779
|
-
"value": "from __future__ import annotations\n\nimport json\nimport re\nfrom typing import TYPE_CHECKING\n\nfrom pydantic import ValidationError\n\nfrom lfx.components.models_and_agents.memory import MemoryComponent\n\nif TYPE_CHECKING:\n from langchain_core.tools import Tool\n\nfrom lfx.base.agents.agent import LCToolsAgentComponent\nfrom lfx.base.agents.events import ExceptionWithMessageError\nfrom lfx.base.models.unified_models import (\n get_language_model_options,\n get_llm,\n update_model_options_in_build_config,\n)\nfrom lfx.components.helpers import CurrentDateComponent\nfrom lfx.components.langchain_utilities.tool_calling import ToolCallingAgentComponent\nfrom lfx.custom.custom_component.component import get_component_toolkit\nfrom lfx.helpers.base_model import build_model_from_schema\nfrom lfx.inputs.inputs import BoolInput, ModelInput\nfrom lfx.io import IntInput, MessageTextInput, MultilineInput, Output, SecretStrInput, 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 inputs = [\n ModelInput(\n name=\"model\",\n display_name=\"Language Model\",\n info=\"Select your model provider\",\n real_time_refresh=True,\n required=True,\n ),\n SecretStrInput(\n name=\"api_key\",\n display_name=\"API Key\",\n info=\"Model Provider API key\",\n real_time_refresh=True,\n advanced=True,\n ),\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 from langchain_core.tools import StructuredTool\n\n llm_model = get_llm(\n model=self.model,\n user_id=self.user_id,\n api_key=self.api_key,\n )\n if llm_model is None:\n msg = \"No language model selected. Please choose a model to proceed.\"\n raise ValueError(msg)\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 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,\n build_config: dotdict,\n field_value: list[dict],\n field_name: str | None = None,\n ) -> dotdict:\n # Update model options with caching (for all field changes)\n # Agents require tool calling, so filter for only tool-calling capable models\n def get_tool_calling_model_options(user_id=None):\n return get_language_model_options(user_id=user_id, tool_calling=True)\n\n build_config = update_model_options_in_build_config(\n component=self,\n build_config=dict(build_config),\n cache_key_prefix=\"language_model_options_tool_calling\",\n get_options_func=get_tool_calling_model_options,\n field_name=field_name,\n field_value=field_value,\n )\n build_config = dotdict(build_config)\n\n # Iterate over all providers in the MODEL_PROVIDERS_DICT\n if field_name == \"model\":\n self.log(str(field_value))\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 \"model\",\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\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"
|
|
1782
|
+
"value": "from __future__ import annotations\n\nimport json\nimport re\nfrom typing import TYPE_CHECKING\n\nfrom pydantic import ValidationError\n\nfrom lfx.components.models_and_agents.memory import MemoryComponent\n\nif TYPE_CHECKING:\n from langchain_core.tools import Tool\n\nfrom lfx.base.agents.agent import LCToolsAgentComponent\nfrom lfx.base.agents.events import ExceptionWithMessageError\nfrom lfx.base.models.unified_models import (\n get_language_model_options,\n get_llm,\n update_model_options_in_build_config,\n)\nfrom lfx.components.helpers import CurrentDateComponent\nfrom lfx.components.langchain_utilities.tool_calling import ToolCallingAgentComponent\nfrom lfx.custom.custom_component.component import get_component_toolkit\nfrom lfx.helpers.base_model import build_model_from_schema\nfrom lfx.inputs.inputs import BoolInput, ModelInput\nfrom lfx.io import IntInput, MessageTextInput, MultilineInput, Output, SecretStrInput, 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 inputs = [\n ModelInput(\n name=\"model\",\n display_name=\"Language Model\",\n info=\"Select your model provider\",\n real_time_refresh=True,\n required=True,\n ),\n SecretStrInput(\n name=\"api_key\",\n display_name=\"API Key\",\n info=\"Model Provider API key\",\n real_time_refresh=True,\n advanced=True,\n ),\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 from langchain_core.tools import StructuredTool\n\n llm_model = get_llm(\n model=self.model,\n user_id=self.user_id,\n api_key=self.api_key,\n )\n if llm_model is None:\n msg = \"No language model selected. Please choose a model to proceed.\"\n raise ValueError(msg)\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 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,\n build_config: dotdict,\n field_value: list[dict],\n field_name: str | None = None,\n ) -> dotdict:\n # Update model options with caching (for all field changes)\n # Agents require tool calling, so filter for only tool-calling capable models\n def get_tool_calling_model_options(user_id=None):\n return get_language_model_options(user_id=user_id, tool_calling=True)\n\n build_config = update_model_options_in_build_config(\n component=self,\n build_config=dict(build_config),\n cache_key_prefix=\"language_model_options_tool_calling\",\n get_options_func=get_tool_calling_model_options,\n field_name=field_name,\n field_value=field_value,\n )\n build_config = dotdict(build_config)\n\n # Iterate over all providers in the MODEL_PROVIDERS_DICT\n if field_name == \"model\":\n self.log(str(field_value))\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 \"model\",\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 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"
|
|
1780
1783
|
},
|
|
1781
1784
|
"context_id": {
|
|
1782
1785
|
"_input_type": "MessageTextInput",
|
|
@@ -1791,6 +1794,7 @@
|
|
|
1791
1794
|
"list_add_label": "Add More",
|
|
1792
1795
|
"load_from_db": false,
|
|
1793
1796
|
"name": "context_id",
|
|
1797
|
+
"override_skip": false,
|
|
1794
1798
|
"placeholder": "",
|
|
1795
1799
|
"required": false,
|
|
1796
1800
|
"show": true,
|
|
@@ -1798,12 +1802,14 @@
|
|
|
1798
1802
|
"tool_mode": false,
|
|
1799
1803
|
"trace_as_input": true,
|
|
1800
1804
|
"trace_as_metadata": true,
|
|
1805
|
+
"track_in_telemetry": false,
|
|
1801
1806
|
"type": "str",
|
|
1802
1807
|
"value": ""
|
|
1803
1808
|
},
|
|
1804
1809
|
"format_instructions": {
|
|
1805
1810
|
"_input_type": "MultilineInput",
|
|
1806
1811
|
"advanced": true,
|
|
1812
|
+
"ai_enabled": false,
|
|
1807
1813
|
"copy_field": false,
|
|
1808
1814
|
"display_name": "Output Format Instructions",
|
|
1809
1815
|
"dynamic": false,
|
|
@@ -1816,6 +1822,7 @@
|
|
|
1816
1822
|
"load_from_db": false,
|
|
1817
1823
|
"multiline": true,
|
|
1818
1824
|
"name": "format_instructions",
|
|
1825
|
+
"override_skip": false,
|
|
1819
1826
|
"placeholder": "",
|
|
1820
1827
|
"required": false,
|
|
1821
1828
|
"show": true,
|
|
@@ -1823,6 +1830,7 @@
|
|
|
1823
1830
|
"tool_mode": false,
|
|
1824
1831
|
"trace_as_input": true,
|
|
1825
1832
|
"trace_as_metadata": true,
|
|
1833
|
+
"track_in_telemetry": false,
|
|
1826
1834
|
"type": "str",
|
|
1827
1835
|
"value": "You are an AI that extracts structured JSON objects from unstructured text. Use a predefined schema with expected types (str, int, float, bool, dict). Extract ALL relevant instances that match the schema - if multiple patterns exist, capture them all. Fill missing or ambiguous values with defaults: null for missing values. Remove exact duplicates but keep variations that have different field values. Always return valid JSON in the expected format, never throw errors. If multiple objects can be extracted, return them all in the structured format."
|
|
1828
1836
|
},
|
|
@@ -1832,20 +1840,23 @@
|
|
|
1832
1840
|
"display_name": "Handle Parse Errors",
|
|
1833
1841
|
"dynamic": false,
|
|
1834
1842
|
"info": "Should the Agent fix errors when reading user input for better processing?",
|
|
1843
|
+
"input_types": [],
|
|
1835
1844
|
"list": false,
|
|
1836
1845
|
"list_add_label": "Add More",
|
|
1837
1846
|
"name": "handle_parsing_errors",
|
|
1847
|
+
"override_skip": false,
|
|
1838
1848
|
"placeholder": "",
|
|
1839
1849
|
"required": false,
|
|
1840
1850
|
"show": true,
|
|
1841
1851
|
"title_case": false,
|
|
1842
1852
|
"tool_mode": false,
|
|
1843
1853
|
"trace_as_metadata": true,
|
|
1854
|
+
"track_in_telemetry": true,
|
|
1844
1855
|
"type": "bool",
|
|
1845
1856
|
"value": true
|
|
1846
1857
|
},
|
|
1847
1858
|
"input_value": {
|
|
1848
|
-
"_input_type": "
|
|
1859
|
+
"_input_type": "MessageInput",
|
|
1849
1860
|
"advanced": false,
|
|
1850
1861
|
"display_name": "Input",
|
|
1851
1862
|
"dynamic": false,
|
|
@@ -1857,6 +1868,7 @@
|
|
|
1857
1868
|
"list_add_label": "Add More",
|
|
1858
1869
|
"load_from_db": false,
|
|
1859
1870
|
"name": "input_value",
|
|
1871
|
+
"override_skip": false,
|
|
1860
1872
|
"placeholder": "",
|
|
1861
1873
|
"required": false,
|
|
1862
1874
|
"show": true,
|
|
@@ -1864,6 +1876,7 @@
|
|
|
1864
1876
|
"tool_mode": true,
|
|
1865
1877
|
"trace_as_input": true,
|
|
1866
1878
|
"trace_as_metadata": true,
|
|
1879
|
+
"track_in_telemetry": false,
|
|
1867
1880
|
"type": "str",
|
|
1868
1881
|
"value": ""
|
|
1869
1882
|
},
|
|
@@ -1873,15 +1886,18 @@
|
|
|
1873
1886
|
"display_name": "Max Iterations",
|
|
1874
1887
|
"dynamic": false,
|
|
1875
1888
|
"info": "The maximum number of attempts the agent can make to complete its task before it stops.",
|
|
1889
|
+
"input_types": [],
|
|
1876
1890
|
"list": false,
|
|
1877
1891
|
"list_add_label": "Add More",
|
|
1878
1892
|
"name": "max_iterations",
|
|
1893
|
+
"override_skip": false,
|
|
1879
1894
|
"placeholder": "",
|
|
1880
1895
|
"required": false,
|
|
1881
1896
|
"show": true,
|
|
1882
1897
|
"title_case": false,
|
|
1883
1898
|
"tool_mode": false,
|
|
1884
1899
|
"trace_as_metadata": true,
|
|
1900
|
+
"track_in_telemetry": true,
|
|
1885
1901
|
"type": "int",
|
|
1886
1902
|
"value": 15
|
|
1887
1903
|
},
|
|
@@ -1902,13 +1918,12 @@
|
|
|
1902
1918
|
}
|
|
1903
1919
|
},
|
|
1904
1920
|
"info": "Select your model provider",
|
|
1905
|
-
"input_types": [
|
|
1906
|
-
"LanguageModel"
|
|
1907
|
-
],
|
|
1921
|
+
"input_types": [],
|
|
1908
1922
|
"list": false,
|
|
1909
1923
|
"list_add_label": "Add More",
|
|
1910
1924
|
"model_type": "language",
|
|
1911
1925
|
"name": "model",
|
|
1926
|
+
"options": [],
|
|
1912
1927
|
"override_skip": false,
|
|
1913
1928
|
"placeholder": "Setup Provider",
|
|
1914
1929
|
"real_time_refresh": true,
|
|
@@ -1920,7 +1935,7 @@
|
|
|
1920
1935
|
"trace_as_input": true,
|
|
1921
1936
|
"track_in_telemetry": false,
|
|
1922
1937
|
"type": "model",
|
|
1923
|
-
"value":
|
|
1938
|
+
"value": []
|
|
1924
1939
|
},
|
|
1925
1940
|
"n_messages": {
|
|
1926
1941
|
"_input_type": "IntInput",
|
|
@@ -1928,15 +1943,18 @@
|
|
|
1928
1943
|
"display_name": "Number of Chat History Messages",
|
|
1929
1944
|
"dynamic": false,
|
|
1930
1945
|
"info": "Number of chat history messages to retrieve.",
|
|
1946
|
+
"input_types": [],
|
|
1931
1947
|
"list": false,
|
|
1932
1948
|
"list_add_label": "Add More",
|
|
1933
1949
|
"name": "n_messages",
|
|
1950
|
+
"override_skip": false,
|
|
1934
1951
|
"placeholder": "",
|
|
1935
1952
|
"required": false,
|
|
1936
1953
|
"show": true,
|
|
1937
1954
|
"title_case": false,
|
|
1938
1955
|
"tool_mode": false,
|
|
1939
1956
|
"trace_as_metadata": true,
|
|
1957
|
+
"track_in_telemetry": true,
|
|
1940
1958
|
"type": "int",
|
|
1941
1959
|
"value": 100
|
|
1942
1960
|
},
|
|
@@ -1946,9 +1964,11 @@
|
|
|
1946
1964
|
"display_name": "Output Schema",
|
|
1947
1965
|
"dynamic": false,
|
|
1948
1966
|
"info": "Schema Validation: Define the structure and data types for structured output. No validation if no output schema.",
|
|
1967
|
+
"input_types": [],
|
|
1949
1968
|
"is_list": true,
|
|
1950
1969
|
"list_add_label": "Add More",
|
|
1951
1970
|
"name": "output_schema",
|
|
1971
|
+
"override_skip": false,
|
|
1952
1972
|
"placeholder": "",
|
|
1953
1973
|
"required": false,
|
|
1954
1974
|
"show": true,
|
|
@@ -1997,6 +2017,7 @@
|
|
|
1997
2017
|
"title_case": false,
|
|
1998
2018
|
"tool_mode": false,
|
|
1999
2019
|
"trace_as_metadata": true,
|
|
2020
|
+
"track_in_telemetry": false,
|
|
2000
2021
|
"trigger_icon": "Table",
|
|
2001
2022
|
"trigger_text": "Open table",
|
|
2002
2023
|
"type": "table",
|
|
@@ -2005,6 +2026,7 @@
|
|
|
2005
2026
|
"system_prompt": {
|
|
2006
2027
|
"_input_type": "MultilineInput",
|
|
2007
2028
|
"advanced": false,
|
|
2029
|
+
"ai_enabled": false,
|
|
2008
2030
|
"copy_field": false,
|
|
2009
2031
|
"display_name": "Agent Instructions",
|
|
2010
2032
|
"dynamic": false,
|
|
@@ -2017,6 +2039,7 @@
|
|
|
2017
2039
|
"load_from_db": false,
|
|
2018
2040
|
"multiline": true,
|
|
2019
2041
|
"name": "system_prompt",
|
|
2042
|
+
"override_skip": false,
|
|
2020
2043
|
"placeholder": "",
|
|
2021
2044
|
"required": false,
|
|
2022
2045
|
"show": true,
|
|
@@ -2024,6 +2047,7 @@
|
|
|
2024
2047
|
"tool_mode": false,
|
|
2025
2048
|
"trace_as_input": true,
|
|
2026
2049
|
"trace_as_metadata": true,
|
|
2050
|
+
"track_in_telemetry": false,
|
|
2027
2051
|
"type": "str",
|
|
2028
2052
|
"value": "You are a helpful assistant that can use tools to answer questions and perform tasks."
|
|
2029
2053
|
},
|
|
@@ -2039,11 +2063,13 @@
|
|
|
2039
2063
|
"list": true,
|
|
2040
2064
|
"list_add_label": "Add More",
|
|
2041
2065
|
"name": "tools",
|
|
2066
|
+
"override_skip": false,
|
|
2042
2067
|
"placeholder": "",
|
|
2043
2068
|
"required": false,
|
|
2044
2069
|
"show": true,
|
|
2045
2070
|
"title_case": false,
|
|
2046
2071
|
"trace_as_metadata": true,
|
|
2072
|
+
"track_in_telemetry": false,
|
|
2047
2073
|
"type": "other",
|
|
2048
2074
|
"value": ""
|
|
2049
2075
|
},
|
|
@@ -2053,15 +2079,18 @@
|
|
|
2053
2079
|
"display_name": "Verbose",
|
|
2054
2080
|
"dynamic": false,
|
|
2055
2081
|
"info": "",
|
|
2082
|
+
"input_types": [],
|
|
2056
2083
|
"list": false,
|
|
2057
2084
|
"list_add_label": "Add More",
|
|
2058
2085
|
"name": "verbose",
|
|
2086
|
+
"override_skip": false,
|
|
2059
2087
|
"placeholder": "",
|
|
2060
2088
|
"required": false,
|
|
2061
2089
|
"show": true,
|
|
2062
2090
|
"title_case": false,
|
|
2063
2091
|
"tool_mode": false,
|
|
2064
2092
|
"trace_as_metadata": true,
|
|
2093
|
+
"track_in_telemetry": true,
|
|
2065
2094
|
"type": "bool",
|
|
2066
2095
|
"value": true
|
|
2067
2096
|
}
|
|
@@ -2096,23 +2125,17 @@
|
|
|
2096
2125
|
"conditional_paths": [],
|
|
2097
2126
|
"custom_fields": {},
|
|
2098
2127
|
"description": "Define the agent's instructions, then enter a task to complete using tools.",
|
|
2099
|
-
"display_name": "
|
|
2100
|
-
"documentation": "",
|
|
2128
|
+
"display_name": "Agent",
|
|
2129
|
+
"documentation": "https://docs.langflow.org/agents",
|
|
2101
2130
|
"edited": false,
|
|
2102
2131
|
"field_order": [
|
|
2103
|
-
"
|
|
2104
|
-
"max_tokens",
|
|
2105
|
-
"model_kwargs",
|
|
2106
|
-
"json_mode",
|
|
2107
|
-
"model_name",
|
|
2108
|
-
"openai_api_base",
|
|
2132
|
+
"model",
|
|
2109
2133
|
"api_key",
|
|
2110
|
-
"temperature",
|
|
2111
|
-
"seed",
|
|
2112
|
-
"max_retries",
|
|
2113
|
-
"timeout",
|
|
2114
2134
|
"system_prompt",
|
|
2135
|
+
"context_id",
|
|
2115
2136
|
"n_messages",
|
|
2137
|
+
"format_instructions",
|
|
2138
|
+
"output_schema",
|
|
2116
2139
|
"tools",
|
|
2117
2140
|
"input_value",
|
|
2118
2141
|
"handle_parsing_errors",
|
|
@@ -2123,9 +2146,10 @@
|
|
|
2123
2146
|
],
|
|
2124
2147
|
"frozen": false,
|
|
2125
2148
|
"icon": "bot",
|
|
2149
|
+
"last_updated": "2025-12-11T21:41:48.407Z",
|
|
2126
2150
|
"legacy": false,
|
|
2127
2151
|
"metadata": {
|
|
2128
|
-
"code_hash": "
|
|
2152
|
+
"code_hash": "bdc309bc2d2a",
|
|
2129
2153
|
"dependencies": {
|
|
2130
2154
|
"dependencies": [
|
|
2131
2155
|
{
|
|
@@ -2172,21 +2196,25 @@
|
|
|
2172
2196
|
"display_name": "Current Date",
|
|
2173
2197
|
"dynamic": false,
|
|
2174
2198
|
"info": "If true, will add a tool to the agent that returns the current date.",
|
|
2199
|
+
"input_types": [],
|
|
2175
2200
|
"list": false,
|
|
2176
2201
|
"list_add_label": "Add More",
|
|
2177
2202
|
"name": "add_current_date_tool",
|
|
2203
|
+
"override_skip": false,
|
|
2178
2204
|
"placeholder": "",
|
|
2179
2205
|
"required": false,
|
|
2180
2206
|
"show": true,
|
|
2181
2207
|
"title_case": false,
|
|
2182
2208
|
"tool_mode": false,
|
|
2183
2209
|
"trace_as_metadata": true,
|
|
2210
|
+
"track_in_telemetry": true,
|
|
2184
2211
|
"type": "bool",
|
|
2185
2212
|
"value": true
|
|
2186
2213
|
},
|
|
2187
2214
|
"agent_description": {
|
|
2188
2215
|
"_input_type": "MultilineInput",
|
|
2189
2216
|
"advanced": true,
|
|
2217
|
+
"ai_enabled": false,
|
|
2190
2218
|
"copy_field": false,
|
|
2191
2219
|
"display_name": "Agent Description [Deprecated]",
|
|
2192
2220
|
"dynamic": false,
|
|
@@ -2199,6 +2227,7 @@
|
|
|
2199
2227
|
"load_from_db": false,
|
|
2200
2228
|
"multiline": true,
|
|
2201
2229
|
"name": "agent_description",
|
|
2230
|
+
"override_skip": false,
|
|
2202
2231
|
"placeholder": "",
|
|
2203
2232
|
"required": false,
|
|
2204
2233
|
"show": true,
|
|
@@ -2206,26 +2235,29 @@
|
|
|
2206
2235
|
"tool_mode": false,
|
|
2207
2236
|
"trace_as_input": true,
|
|
2208
2237
|
"trace_as_metadata": true,
|
|
2238
|
+
"track_in_telemetry": false,
|
|
2209
2239
|
"type": "str",
|
|
2210
2240
|
"value": "A helpful assistant with access to the following tools:"
|
|
2211
2241
|
},
|
|
2212
2242
|
"api_key": {
|
|
2213
2243
|
"_input_type": "SecretStrInput",
|
|
2214
|
-
"advanced":
|
|
2244
|
+
"advanced": true,
|
|
2215
2245
|
"display_name": "API Key",
|
|
2216
2246
|
"dynamic": false,
|
|
2217
2247
|
"info": "Model Provider API key",
|
|
2218
2248
|
"input_types": [],
|
|
2219
|
-
"load_from_db":
|
|
2249
|
+
"load_from_db": false,
|
|
2220
2250
|
"name": "api_key",
|
|
2251
|
+
"override_skip": false,
|
|
2221
2252
|
"password": true,
|
|
2222
2253
|
"placeholder": "",
|
|
2223
2254
|
"real_time_refresh": true,
|
|
2224
2255
|
"required": false,
|
|
2225
2256
|
"show": true,
|
|
2226
2257
|
"title_case": false,
|
|
2258
|
+
"track_in_telemetry": false,
|
|
2227
2259
|
"type": "str",
|
|
2228
|
-
"value": "
|
|
2260
|
+
"value": ""
|
|
2229
2261
|
},
|
|
2230
2262
|
"code": {
|
|
2231
2263
|
"advanced": true,
|
|
@@ -2243,7 +2275,7 @@
|
|
|
2243
2275
|
"show": true,
|
|
2244
2276
|
"title_case": false,
|
|
2245
2277
|
"type": "code",
|
|
2246
|
-
"value": "from __future__ import annotations\n\nimport json\nimport re\nfrom typing import TYPE_CHECKING\n\nfrom pydantic import ValidationError\n\nfrom lfx.components.models_and_agents.memory import MemoryComponent\n\nif TYPE_CHECKING:\n from langchain_core.tools import Tool\n\nfrom lfx.base.agents.agent import LCToolsAgentComponent\nfrom lfx.base.agents.events import ExceptionWithMessageError\nfrom lfx.base.models.unified_models import (\n get_language_model_options,\n get_llm,\n update_model_options_in_build_config,\n)\nfrom lfx.components.helpers import CurrentDateComponent\nfrom lfx.components.langchain_utilities.tool_calling import ToolCallingAgentComponent\nfrom lfx.custom.custom_component.component import get_component_toolkit\nfrom lfx.helpers.base_model import build_model_from_schema\nfrom lfx.inputs.inputs import BoolInput, ModelInput\nfrom lfx.io import IntInput, MessageTextInput, MultilineInput, Output, SecretStrInput, 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 inputs = [\n ModelInput(\n name=\"model\",\n display_name=\"Language Model\",\n info=\"Select your model provider\",\n real_time_refresh=True,\n required=True,\n ),\n SecretStrInput(\n name=\"api_key\",\n display_name=\"API Key\",\n info=\"Model Provider API key\",\n real_time_refresh=True,\n advanced=True,\n ),\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 from langchain_core.tools import StructuredTool\n\n llm_model = get_llm(\n model=self.model,\n user_id=self.user_id,\n api_key=self.api_key,\n )\n if llm_model is None:\n msg = \"No language model selected. Please choose a model to proceed.\"\n raise ValueError(msg)\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 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,\n build_config: dotdict,\n field_value: list[dict],\n field_name: str | None = None,\n ) -> dotdict:\n # Update model options with caching (for all field changes)\n # Agents require tool calling, so filter for only tool-calling capable models\n def get_tool_calling_model_options(user_id=None):\n return get_language_model_options(user_id=user_id, tool_calling=True)\n\n build_config = update_model_options_in_build_config(\n component=self,\n build_config=dict(build_config),\n cache_key_prefix=\"language_model_options_tool_calling\",\n get_options_func=get_tool_calling_model_options,\n field_name=field_name,\n field_value=field_value,\n )\n build_config = dotdict(build_config)\n\n # Iterate over all providers in the MODEL_PROVIDERS_DICT\n if field_name == \"model\":\n self.log(str(field_value))\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 \"model\",\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\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"
|
|
2278
|
+
"value": "from __future__ import annotations\n\nimport json\nimport re\nfrom typing import TYPE_CHECKING\n\nfrom pydantic import ValidationError\n\nfrom lfx.components.models_and_agents.memory import MemoryComponent\n\nif TYPE_CHECKING:\n from langchain_core.tools import Tool\n\nfrom lfx.base.agents.agent import LCToolsAgentComponent\nfrom lfx.base.agents.events import ExceptionWithMessageError\nfrom lfx.base.models.unified_models import (\n get_language_model_options,\n get_llm,\n update_model_options_in_build_config,\n)\nfrom lfx.components.helpers import CurrentDateComponent\nfrom lfx.components.langchain_utilities.tool_calling import ToolCallingAgentComponent\nfrom lfx.custom.custom_component.component import get_component_toolkit\nfrom lfx.helpers.base_model import build_model_from_schema\nfrom lfx.inputs.inputs import BoolInput, ModelInput\nfrom lfx.io import IntInput, MessageTextInput, MultilineInput, Output, SecretStrInput, 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 inputs = [\n ModelInput(\n name=\"model\",\n display_name=\"Language Model\",\n info=\"Select your model provider\",\n real_time_refresh=True,\n required=True,\n ),\n SecretStrInput(\n name=\"api_key\",\n display_name=\"API Key\",\n info=\"Model Provider API key\",\n real_time_refresh=True,\n advanced=True,\n ),\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 from langchain_core.tools import StructuredTool\n\n llm_model = get_llm(\n model=self.model,\n user_id=self.user_id,\n api_key=self.api_key,\n )\n if llm_model is None:\n msg = \"No language model selected. Please choose a model to proceed.\"\n raise ValueError(msg)\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 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,\n build_config: dotdict,\n field_value: list[dict],\n field_name: str | None = None,\n ) -> dotdict:\n # Update model options with caching (for all field changes)\n # Agents require tool calling, so filter for only tool-calling capable models\n def get_tool_calling_model_options(user_id=None):\n return get_language_model_options(user_id=user_id, tool_calling=True)\n\n build_config = update_model_options_in_build_config(\n component=self,\n build_config=dict(build_config),\n cache_key_prefix=\"language_model_options_tool_calling\",\n get_options_func=get_tool_calling_model_options,\n field_name=field_name,\n field_value=field_value,\n )\n build_config = dotdict(build_config)\n\n # Iterate over all providers in the MODEL_PROVIDERS_DICT\n if field_name == \"model\":\n self.log(str(field_value))\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 \"model\",\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 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"
|
|
2247
2279
|
},
|
|
2248
2280
|
"context_id": {
|
|
2249
2281
|
"_input_type": "MessageTextInput",
|
|
@@ -2258,6 +2290,7 @@
|
|
|
2258
2290
|
"list_add_label": "Add More",
|
|
2259
2291
|
"load_from_db": false,
|
|
2260
2292
|
"name": "context_id",
|
|
2293
|
+
"override_skip": false,
|
|
2261
2294
|
"placeholder": "",
|
|
2262
2295
|
"required": false,
|
|
2263
2296
|
"show": true,
|
|
@@ -2265,12 +2298,14 @@
|
|
|
2265
2298
|
"tool_mode": false,
|
|
2266
2299
|
"trace_as_input": true,
|
|
2267
2300
|
"trace_as_metadata": true,
|
|
2301
|
+
"track_in_telemetry": false,
|
|
2268
2302
|
"type": "str",
|
|
2269
2303
|
"value": ""
|
|
2270
2304
|
},
|
|
2271
2305
|
"format_instructions": {
|
|
2272
2306
|
"_input_type": "MultilineInput",
|
|
2273
2307
|
"advanced": true,
|
|
2308
|
+
"ai_enabled": false,
|
|
2274
2309
|
"copy_field": false,
|
|
2275
2310
|
"display_name": "Output Format Instructions",
|
|
2276
2311
|
"dynamic": false,
|
|
@@ -2283,6 +2318,7 @@
|
|
|
2283
2318
|
"load_from_db": false,
|
|
2284
2319
|
"multiline": true,
|
|
2285
2320
|
"name": "format_instructions",
|
|
2321
|
+
"override_skip": false,
|
|
2286
2322
|
"placeholder": "",
|
|
2287
2323
|
"required": false,
|
|
2288
2324
|
"show": true,
|
|
@@ -2290,6 +2326,7 @@
|
|
|
2290
2326
|
"tool_mode": false,
|
|
2291
2327
|
"trace_as_input": true,
|
|
2292
2328
|
"trace_as_metadata": true,
|
|
2329
|
+
"track_in_telemetry": false,
|
|
2293
2330
|
"type": "str",
|
|
2294
2331
|
"value": "You are an AI that extracts structured JSON objects from unstructured text. Use a predefined schema with expected types (str, int, float, bool, dict). Extract ALL relevant instances that match the schema - if multiple patterns exist, capture them all. Fill missing or ambiguous values with defaults: null for missing values. Remove exact duplicates but keep variations that have different field values. Always return valid JSON in the expected format, never throw errors. If multiple objects can be extracted, return them all in the structured format."
|
|
2295
2332
|
},
|
|
@@ -2299,20 +2336,23 @@
|
|
|
2299
2336
|
"display_name": "Handle Parse Errors",
|
|
2300
2337
|
"dynamic": false,
|
|
2301
2338
|
"info": "Should the Agent fix errors when reading user input for better processing?",
|
|
2339
|
+
"input_types": [],
|
|
2302
2340
|
"list": false,
|
|
2303
2341
|
"list_add_label": "Add More",
|
|
2304
2342
|
"name": "handle_parsing_errors",
|
|
2343
|
+
"override_skip": false,
|
|
2305
2344
|
"placeholder": "",
|
|
2306
2345
|
"required": false,
|
|
2307
2346
|
"show": true,
|
|
2308
2347
|
"title_case": false,
|
|
2309
2348
|
"tool_mode": false,
|
|
2310
2349
|
"trace_as_metadata": true,
|
|
2350
|
+
"track_in_telemetry": true,
|
|
2311
2351
|
"type": "bool",
|
|
2312
2352
|
"value": true
|
|
2313
2353
|
},
|
|
2314
2354
|
"input_value": {
|
|
2315
|
-
"_input_type": "
|
|
2355
|
+
"_input_type": "MessageInput",
|
|
2316
2356
|
"advanced": false,
|
|
2317
2357
|
"display_name": "Input",
|
|
2318
2358
|
"dynamic": false,
|
|
@@ -2324,6 +2364,7 @@
|
|
|
2324
2364
|
"list_add_label": "Add More",
|
|
2325
2365
|
"load_from_db": false,
|
|
2326
2366
|
"name": "input_value",
|
|
2367
|
+
"override_skip": false,
|
|
2327
2368
|
"placeholder": "",
|
|
2328
2369
|
"required": false,
|
|
2329
2370
|
"show": true,
|
|
@@ -2331,6 +2372,7 @@
|
|
|
2331
2372
|
"tool_mode": true,
|
|
2332
2373
|
"trace_as_input": true,
|
|
2333
2374
|
"trace_as_metadata": true,
|
|
2375
|
+
"track_in_telemetry": false,
|
|
2334
2376
|
"type": "str",
|
|
2335
2377
|
"value": ""
|
|
2336
2378
|
},
|
|
@@ -2340,15 +2382,18 @@
|
|
|
2340
2382
|
"display_name": "Max Iterations",
|
|
2341
2383
|
"dynamic": false,
|
|
2342
2384
|
"info": "The maximum number of attempts the agent can make to complete its task before it stops.",
|
|
2385
|
+
"input_types": [],
|
|
2343
2386
|
"list": false,
|
|
2344
2387
|
"list_add_label": "Add More",
|
|
2345
2388
|
"name": "max_iterations",
|
|
2389
|
+
"override_skip": false,
|
|
2346
2390
|
"placeholder": "",
|
|
2347
2391
|
"required": false,
|
|
2348
2392
|
"show": true,
|
|
2349
2393
|
"title_case": false,
|
|
2350
2394
|
"tool_mode": false,
|
|
2351
2395
|
"trace_as_metadata": true,
|
|
2396
|
+
"track_in_telemetry": true,
|
|
2352
2397
|
"type": "int",
|
|
2353
2398
|
"value": 15
|
|
2354
2399
|
},
|
|
@@ -2369,13 +2414,12 @@
|
|
|
2369
2414
|
}
|
|
2370
2415
|
},
|
|
2371
2416
|
"info": "Select your model provider",
|
|
2372
|
-
"input_types": [
|
|
2373
|
-
"LanguageModel"
|
|
2374
|
-
],
|
|
2417
|
+
"input_types": [],
|
|
2375
2418
|
"list": false,
|
|
2376
2419
|
"list_add_label": "Add More",
|
|
2377
2420
|
"model_type": "language",
|
|
2378
2421
|
"name": "model",
|
|
2422
|
+
"options": [],
|
|
2379
2423
|
"override_skip": false,
|
|
2380
2424
|
"placeholder": "Setup Provider",
|
|
2381
2425
|
"real_time_refresh": true,
|
|
@@ -2387,7 +2431,7 @@
|
|
|
2387
2431
|
"trace_as_input": true,
|
|
2388
2432
|
"track_in_telemetry": false,
|
|
2389
2433
|
"type": "model",
|
|
2390
|
-
"value":
|
|
2434
|
+
"value": []
|
|
2391
2435
|
},
|
|
2392
2436
|
"n_messages": {
|
|
2393
2437
|
"_input_type": "IntInput",
|
|
@@ -2395,15 +2439,18 @@
|
|
|
2395
2439
|
"display_name": "Number of Chat History Messages",
|
|
2396
2440
|
"dynamic": false,
|
|
2397
2441
|
"info": "Number of chat history messages to retrieve.",
|
|
2442
|
+
"input_types": [],
|
|
2398
2443
|
"list": false,
|
|
2399
2444
|
"list_add_label": "Add More",
|
|
2400
2445
|
"name": "n_messages",
|
|
2446
|
+
"override_skip": false,
|
|
2401
2447
|
"placeholder": "",
|
|
2402
2448
|
"required": false,
|
|
2403
2449
|
"show": true,
|
|
2404
2450
|
"title_case": false,
|
|
2405
2451
|
"tool_mode": false,
|
|
2406
2452
|
"trace_as_metadata": true,
|
|
2453
|
+
"track_in_telemetry": true,
|
|
2407
2454
|
"type": "int",
|
|
2408
2455
|
"value": 100
|
|
2409
2456
|
},
|
|
@@ -2413,9 +2460,11 @@
|
|
|
2413
2460
|
"display_name": "Output Schema",
|
|
2414
2461
|
"dynamic": false,
|
|
2415
2462
|
"info": "Schema Validation: Define the structure and data types for structured output. No validation if no output schema.",
|
|
2463
|
+
"input_types": [],
|
|
2416
2464
|
"is_list": true,
|
|
2417
2465
|
"list_add_label": "Add More",
|
|
2418
2466
|
"name": "output_schema",
|
|
2467
|
+
"override_skip": false,
|
|
2419
2468
|
"placeholder": "",
|
|
2420
2469
|
"required": false,
|
|
2421
2470
|
"show": true,
|
|
@@ -2464,6 +2513,7 @@
|
|
|
2464
2513
|
"title_case": false,
|
|
2465
2514
|
"tool_mode": false,
|
|
2466
2515
|
"trace_as_metadata": true,
|
|
2516
|
+
"track_in_telemetry": false,
|
|
2467
2517
|
"trigger_icon": "Table",
|
|
2468
2518
|
"trigger_text": "Open table",
|
|
2469
2519
|
"type": "table",
|
|
@@ -2472,6 +2522,7 @@
|
|
|
2472
2522
|
"system_prompt": {
|
|
2473
2523
|
"_input_type": "MultilineInput",
|
|
2474
2524
|
"advanced": false,
|
|
2525
|
+
"ai_enabled": false,
|
|
2475
2526
|
"copy_field": false,
|
|
2476
2527
|
"display_name": "Agent Instructions",
|
|
2477
2528
|
"dynamic": false,
|
|
@@ -2484,6 +2535,7 @@
|
|
|
2484
2535
|
"load_from_db": false,
|
|
2485
2536
|
"multiline": true,
|
|
2486
2537
|
"name": "system_prompt",
|
|
2538
|
+
"override_skip": false,
|
|
2487
2539
|
"placeholder": "",
|
|
2488
2540
|
"required": false,
|
|
2489
2541
|
"show": true,
|
|
@@ -2491,8 +2543,9 @@
|
|
|
2491
2543
|
"tool_mode": false,
|
|
2492
2544
|
"trace_as_input": true,
|
|
2493
2545
|
"trace_as_metadata": true,
|
|
2546
|
+
"track_in_telemetry": false,
|
|
2494
2547
|
"type": "str",
|
|
2495
|
-
"value": "You are a
|
|
2548
|
+
"value": "You are a helpful assistant that can use tools to answer questions and perform tasks."
|
|
2496
2549
|
},
|
|
2497
2550
|
"tools": {
|
|
2498
2551
|
"_input_type": "HandleInput",
|
|
@@ -2506,11 +2559,13 @@
|
|
|
2506
2559
|
"list": true,
|
|
2507
2560
|
"list_add_label": "Add More",
|
|
2508
2561
|
"name": "tools",
|
|
2562
|
+
"override_skip": false,
|
|
2509
2563
|
"placeholder": "",
|
|
2510
2564
|
"required": false,
|
|
2511
2565
|
"show": true,
|
|
2512
2566
|
"title_case": false,
|
|
2513
2567
|
"trace_as_metadata": true,
|
|
2568
|
+
"track_in_telemetry": false,
|
|
2514
2569
|
"type": "other",
|
|
2515
2570
|
"value": ""
|
|
2516
2571
|
},
|
|
@@ -2520,15 +2575,18 @@
|
|
|
2520
2575
|
"display_name": "Verbose",
|
|
2521
2576
|
"dynamic": false,
|
|
2522
2577
|
"info": "",
|
|
2578
|
+
"input_types": [],
|
|
2523
2579
|
"list": false,
|
|
2524
2580
|
"list_add_label": "Add More",
|
|
2525
2581
|
"name": "verbose",
|
|
2582
|
+
"override_skip": false,
|
|
2526
2583
|
"placeholder": "",
|
|
2527
2584
|
"required": false,
|
|
2528
2585
|
"show": true,
|
|
2529
2586
|
"title_case": false,
|
|
2530
2587
|
"tool_mode": false,
|
|
2531
2588
|
"trace_as_metadata": true,
|
|
2589
|
+
"track_in_telemetry": true,
|
|
2532
2590
|
"type": "bool",
|
|
2533
2591
|
"value": true
|
|
2534
2592
|
}
|
|
@@ -2563,23 +2621,17 @@
|
|
|
2563
2621
|
"conditional_paths": [],
|
|
2564
2622
|
"custom_fields": {},
|
|
2565
2623
|
"description": "Define the agent's instructions, then enter a task to complete using tools.",
|
|
2566
|
-
"display_name": "
|
|
2567
|
-
"documentation": "",
|
|
2624
|
+
"display_name": "Agent",
|
|
2625
|
+
"documentation": "https://docs.langflow.org/agents",
|
|
2568
2626
|
"edited": false,
|
|
2569
2627
|
"field_order": [
|
|
2570
|
-
"
|
|
2571
|
-
"max_tokens",
|
|
2572
|
-
"model_kwargs",
|
|
2573
|
-
"json_mode",
|
|
2574
|
-
"model_name",
|
|
2575
|
-
"openai_api_base",
|
|
2628
|
+
"model",
|
|
2576
2629
|
"api_key",
|
|
2577
|
-
"temperature",
|
|
2578
|
-
"seed",
|
|
2579
|
-
"max_retries",
|
|
2580
|
-
"timeout",
|
|
2581
2630
|
"system_prompt",
|
|
2631
|
+
"context_id",
|
|
2582
2632
|
"n_messages",
|
|
2633
|
+
"format_instructions",
|
|
2634
|
+
"output_schema",
|
|
2583
2635
|
"tools",
|
|
2584
2636
|
"input_value",
|
|
2585
2637
|
"handle_parsing_errors",
|
|
@@ -2590,9 +2642,10 @@
|
|
|
2590
2642
|
],
|
|
2591
2643
|
"frozen": false,
|
|
2592
2644
|
"icon": "bot",
|
|
2645
|
+
"last_updated": "2025-12-11T21:41:48.407Z",
|
|
2593
2646
|
"legacy": false,
|
|
2594
2647
|
"metadata": {
|
|
2595
|
-
"code_hash": "
|
|
2648
|
+
"code_hash": "bdc309bc2d2a",
|
|
2596
2649
|
"dependencies": {
|
|
2597
2650
|
"dependencies": [
|
|
2598
2651
|
{
|
|
@@ -2639,21 +2692,25 @@
|
|
|
2639
2692
|
"display_name": "Current Date",
|
|
2640
2693
|
"dynamic": false,
|
|
2641
2694
|
"info": "If true, will add a tool to the agent that returns the current date.",
|
|
2695
|
+
"input_types": [],
|
|
2642
2696
|
"list": false,
|
|
2643
2697
|
"list_add_label": "Add More",
|
|
2644
2698
|
"name": "add_current_date_tool",
|
|
2699
|
+
"override_skip": false,
|
|
2645
2700
|
"placeholder": "",
|
|
2646
2701
|
"required": false,
|
|
2647
2702
|
"show": true,
|
|
2648
2703
|
"title_case": false,
|
|
2649
2704
|
"tool_mode": false,
|
|
2650
2705
|
"trace_as_metadata": true,
|
|
2706
|
+
"track_in_telemetry": true,
|
|
2651
2707
|
"type": "bool",
|
|
2652
2708
|
"value": true
|
|
2653
2709
|
},
|
|
2654
2710
|
"agent_description": {
|
|
2655
2711
|
"_input_type": "MultilineInput",
|
|
2656
2712
|
"advanced": true,
|
|
2713
|
+
"ai_enabled": false,
|
|
2657
2714
|
"copy_field": false,
|
|
2658
2715
|
"display_name": "Agent Description [Deprecated]",
|
|
2659
2716
|
"dynamic": false,
|
|
@@ -2666,6 +2723,7 @@
|
|
|
2666
2723
|
"load_from_db": false,
|
|
2667
2724
|
"multiline": true,
|
|
2668
2725
|
"name": "agent_description",
|
|
2726
|
+
"override_skip": false,
|
|
2669
2727
|
"placeholder": "",
|
|
2670
2728
|
"required": false,
|
|
2671
2729
|
"show": true,
|
|
@@ -2673,26 +2731,29 @@
|
|
|
2673
2731
|
"tool_mode": false,
|
|
2674
2732
|
"trace_as_input": true,
|
|
2675
2733
|
"trace_as_metadata": true,
|
|
2734
|
+
"track_in_telemetry": false,
|
|
2676
2735
|
"type": "str",
|
|
2677
2736
|
"value": "A helpful assistant with access to the following tools:"
|
|
2678
2737
|
},
|
|
2679
2738
|
"api_key": {
|
|
2680
2739
|
"_input_type": "SecretStrInput",
|
|
2681
|
-
"advanced":
|
|
2740
|
+
"advanced": true,
|
|
2682
2741
|
"display_name": "API Key",
|
|
2683
2742
|
"dynamic": false,
|
|
2684
2743
|
"info": "Model Provider API key",
|
|
2685
2744
|
"input_types": [],
|
|
2686
|
-
"load_from_db":
|
|
2745
|
+
"load_from_db": false,
|
|
2687
2746
|
"name": "api_key",
|
|
2747
|
+
"override_skip": false,
|
|
2688
2748
|
"password": true,
|
|
2689
2749
|
"placeholder": "",
|
|
2690
2750
|
"real_time_refresh": true,
|
|
2691
2751
|
"required": false,
|
|
2692
2752
|
"show": true,
|
|
2693
2753
|
"title_case": false,
|
|
2754
|
+
"track_in_telemetry": false,
|
|
2694
2755
|
"type": "str",
|
|
2695
|
-
"value": "
|
|
2756
|
+
"value": ""
|
|
2696
2757
|
},
|
|
2697
2758
|
"code": {
|
|
2698
2759
|
"advanced": true,
|
|
@@ -2710,7 +2771,7 @@
|
|
|
2710
2771
|
"show": true,
|
|
2711
2772
|
"title_case": false,
|
|
2712
2773
|
"type": "code",
|
|
2713
|
-
"value": "from __future__ import annotations\n\nimport json\nimport re\nfrom typing import TYPE_CHECKING\n\nfrom pydantic import ValidationError\n\nfrom lfx.components.models_and_agents.memory import MemoryComponent\n\nif TYPE_CHECKING:\n from langchain_core.tools import Tool\n\nfrom lfx.base.agents.agent import LCToolsAgentComponent\nfrom lfx.base.agents.events import ExceptionWithMessageError\nfrom lfx.base.models.unified_models import (\n get_language_model_options,\n get_llm,\n update_model_options_in_build_config,\n)\nfrom lfx.components.helpers import CurrentDateComponent\nfrom lfx.components.langchain_utilities.tool_calling import ToolCallingAgentComponent\nfrom lfx.custom.custom_component.component import get_component_toolkit\nfrom lfx.helpers.base_model import build_model_from_schema\nfrom lfx.inputs.inputs import BoolInput, ModelInput\nfrom lfx.io import IntInput, MessageTextInput, MultilineInput, Output, SecretStrInput, 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 inputs = [\n ModelInput(\n name=\"model\",\n display_name=\"Language Model\",\n info=\"Select your model provider\",\n real_time_refresh=True,\n required=True,\n ),\n SecretStrInput(\n name=\"api_key\",\n display_name=\"API Key\",\n info=\"Model Provider API key\",\n real_time_refresh=True,\n advanced=True,\n ),\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 from langchain_core.tools import StructuredTool\n\n llm_model = get_llm(\n model=self.model,\n user_id=self.user_id,\n api_key=self.api_key,\n )\n if llm_model is None:\n msg = \"No language model selected. Please choose a model to proceed.\"\n raise ValueError(msg)\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 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,\n build_config: dotdict,\n field_value: list[dict],\n field_name: str | None = None,\n ) -> dotdict:\n # Update model options with caching (for all field changes)\n # Agents require tool calling, so filter for only tool-calling capable models\n def get_tool_calling_model_options(user_id=None):\n return get_language_model_options(user_id=user_id, tool_calling=True)\n\n build_config = update_model_options_in_build_config(\n component=self,\n build_config=dict(build_config),\n cache_key_prefix=\"language_model_options_tool_calling\",\n get_options_func=get_tool_calling_model_options,\n field_name=field_name,\n field_value=field_value,\n )\n build_config = dotdict(build_config)\n\n # Iterate over all providers in the MODEL_PROVIDERS_DICT\n if field_name == \"model\":\n self.log(str(field_value))\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 \"model\",\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\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"
|
|
2774
|
+
"value": "from __future__ import annotations\n\nimport json\nimport re\nfrom typing import TYPE_CHECKING\n\nfrom pydantic import ValidationError\n\nfrom lfx.components.models_and_agents.memory import MemoryComponent\n\nif TYPE_CHECKING:\n from langchain_core.tools import Tool\n\nfrom lfx.base.agents.agent import LCToolsAgentComponent\nfrom lfx.base.agents.events import ExceptionWithMessageError\nfrom lfx.base.models.unified_models import (\n get_language_model_options,\n get_llm,\n update_model_options_in_build_config,\n)\nfrom lfx.components.helpers import CurrentDateComponent\nfrom lfx.components.langchain_utilities.tool_calling import ToolCallingAgentComponent\nfrom lfx.custom.custom_component.component import get_component_toolkit\nfrom lfx.helpers.base_model import build_model_from_schema\nfrom lfx.inputs.inputs import BoolInput, ModelInput\nfrom lfx.io import IntInput, MessageTextInput, MultilineInput, Output, SecretStrInput, 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 inputs = [\n ModelInput(\n name=\"model\",\n display_name=\"Language Model\",\n info=\"Select your model provider\",\n real_time_refresh=True,\n required=True,\n ),\n SecretStrInput(\n name=\"api_key\",\n display_name=\"API Key\",\n info=\"Model Provider API key\",\n real_time_refresh=True,\n advanced=True,\n ),\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 from langchain_core.tools import StructuredTool\n\n llm_model = get_llm(\n model=self.model,\n user_id=self.user_id,\n api_key=self.api_key,\n )\n if llm_model is None:\n msg = \"No language model selected. Please choose a model to proceed.\"\n raise ValueError(msg)\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 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,\n build_config: dotdict,\n field_value: list[dict],\n field_name: str | None = None,\n ) -> dotdict:\n # Update model options with caching (for all field changes)\n # Agents require tool calling, so filter for only tool-calling capable models\n def get_tool_calling_model_options(user_id=None):\n return get_language_model_options(user_id=user_id, tool_calling=True)\n\n build_config = update_model_options_in_build_config(\n component=self,\n build_config=dict(build_config),\n cache_key_prefix=\"language_model_options_tool_calling\",\n get_options_func=get_tool_calling_model_options,\n field_name=field_name,\n field_value=field_value,\n )\n build_config = dotdict(build_config)\n\n # Iterate over all providers in the MODEL_PROVIDERS_DICT\n if field_name == \"model\":\n self.log(str(field_value))\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 \"model\",\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 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"
|
|
2714
2775
|
},
|
|
2715
2776
|
"context_id": {
|
|
2716
2777
|
"_input_type": "MessageTextInput",
|
|
@@ -2725,6 +2786,7 @@
|
|
|
2725
2786
|
"list_add_label": "Add More",
|
|
2726
2787
|
"load_from_db": false,
|
|
2727
2788
|
"name": "context_id",
|
|
2789
|
+
"override_skip": false,
|
|
2728
2790
|
"placeholder": "",
|
|
2729
2791
|
"required": false,
|
|
2730
2792
|
"show": true,
|
|
@@ -2732,12 +2794,14 @@
|
|
|
2732
2794
|
"tool_mode": false,
|
|
2733
2795
|
"trace_as_input": true,
|
|
2734
2796
|
"trace_as_metadata": true,
|
|
2797
|
+
"track_in_telemetry": false,
|
|
2735
2798
|
"type": "str",
|
|
2736
2799
|
"value": ""
|
|
2737
2800
|
},
|
|
2738
2801
|
"format_instructions": {
|
|
2739
2802
|
"_input_type": "MultilineInput",
|
|
2740
2803
|
"advanced": true,
|
|
2804
|
+
"ai_enabled": false,
|
|
2741
2805
|
"copy_field": false,
|
|
2742
2806
|
"display_name": "Output Format Instructions",
|
|
2743
2807
|
"dynamic": false,
|
|
@@ -2750,6 +2814,7 @@
|
|
|
2750
2814
|
"load_from_db": false,
|
|
2751
2815
|
"multiline": true,
|
|
2752
2816
|
"name": "format_instructions",
|
|
2817
|
+
"override_skip": false,
|
|
2753
2818
|
"placeholder": "",
|
|
2754
2819
|
"required": false,
|
|
2755
2820
|
"show": true,
|
|
@@ -2757,6 +2822,7 @@
|
|
|
2757
2822
|
"tool_mode": false,
|
|
2758
2823
|
"trace_as_input": true,
|
|
2759
2824
|
"trace_as_metadata": true,
|
|
2825
|
+
"track_in_telemetry": false,
|
|
2760
2826
|
"type": "str",
|
|
2761
2827
|
"value": "You are an AI that extracts structured JSON objects from unstructured text. Use a predefined schema with expected types (str, int, float, bool, dict). Extract ALL relevant instances that match the schema - if multiple patterns exist, capture them all. Fill missing or ambiguous values with defaults: null for missing values. Remove exact duplicates but keep variations that have different field values. Always return valid JSON in the expected format, never throw errors. If multiple objects can be extracted, return them all in the structured format."
|
|
2762
2828
|
},
|
|
@@ -2766,20 +2832,23 @@
|
|
|
2766
2832
|
"display_name": "Handle Parse Errors",
|
|
2767
2833
|
"dynamic": false,
|
|
2768
2834
|
"info": "Should the Agent fix errors when reading user input for better processing?",
|
|
2835
|
+
"input_types": [],
|
|
2769
2836
|
"list": false,
|
|
2770
2837
|
"list_add_label": "Add More",
|
|
2771
2838
|
"name": "handle_parsing_errors",
|
|
2839
|
+
"override_skip": false,
|
|
2772
2840
|
"placeholder": "",
|
|
2773
2841
|
"required": false,
|
|
2774
2842
|
"show": true,
|
|
2775
2843
|
"title_case": false,
|
|
2776
2844
|
"tool_mode": false,
|
|
2777
2845
|
"trace_as_metadata": true,
|
|
2846
|
+
"track_in_telemetry": true,
|
|
2778
2847
|
"type": "bool",
|
|
2779
2848
|
"value": true
|
|
2780
2849
|
},
|
|
2781
2850
|
"input_value": {
|
|
2782
|
-
"_input_type": "
|
|
2851
|
+
"_input_type": "MessageInput",
|
|
2783
2852
|
"advanced": false,
|
|
2784
2853
|
"display_name": "Input",
|
|
2785
2854
|
"dynamic": false,
|
|
@@ -2791,6 +2860,7 @@
|
|
|
2791
2860
|
"list_add_label": "Add More",
|
|
2792
2861
|
"load_from_db": false,
|
|
2793
2862
|
"name": "input_value",
|
|
2863
|
+
"override_skip": false,
|
|
2794
2864
|
"placeholder": "",
|
|
2795
2865
|
"required": false,
|
|
2796
2866
|
"show": true,
|
|
@@ -2798,6 +2868,7 @@
|
|
|
2798
2868
|
"tool_mode": true,
|
|
2799
2869
|
"trace_as_input": true,
|
|
2800
2870
|
"trace_as_metadata": true,
|
|
2871
|
+
"track_in_telemetry": false,
|
|
2801
2872
|
"type": "str",
|
|
2802
2873
|
"value": ""
|
|
2803
2874
|
},
|
|
@@ -2807,15 +2878,18 @@
|
|
|
2807
2878
|
"display_name": "Max Iterations",
|
|
2808
2879
|
"dynamic": false,
|
|
2809
2880
|
"info": "The maximum number of attempts the agent can make to complete its task before it stops.",
|
|
2881
|
+
"input_types": [],
|
|
2810
2882
|
"list": false,
|
|
2811
2883
|
"list_add_label": "Add More",
|
|
2812
2884
|
"name": "max_iterations",
|
|
2885
|
+
"override_skip": false,
|
|
2813
2886
|
"placeholder": "",
|
|
2814
2887
|
"required": false,
|
|
2815
2888
|
"show": true,
|
|
2816
2889
|
"title_case": false,
|
|
2817
2890
|
"tool_mode": false,
|
|
2818
2891
|
"trace_as_metadata": true,
|
|
2892
|
+
"track_in_telemetry": true,
|
|
2819
2893
|
"type": "int",
|
|
2820
2894
|
"value": 15
|
|
2821
2895
|
},
|
|
@@ -2836,13 +2910,12 @@
|
|
|
2836
2910
|
}
|
|
2837
2911
|
},
|
|
2838
2912
|
"info": "Select your model provider",
|
|
2839
|
-
"input_types": [
|
|
2840
|
-
"LanguageModel"
|
|
2841
|
-
],
|
|
2913
|
+
"input_types": [],
|
|
2842
2914
|
"list": false,
|
|
2843
2915
|
"list_add_label": "Add More",
|
|
2844
2916
|
"model_type": "language",
|
|
2845
2917
|
"name": "model",
|
|
2918
|
+
"options": [],
|
|
2846
2919
|
"override_skip": false,
|
|
2847
2920
|
"placeholder": "Setup Provider",
|
|
2848
2921
|
"real_time_refresh": true,
|
|
@@ -2854,7 +2927,7 @@
|
|
|
2854
2927
|
"trace_as_input": true,
|
|
2855
2928
|
"track_in_telemetry": false,
|
|
2856
2929
|
"type": "model",
|
|
2857
|
-
"value":
|
|
2930
|
+
"value": []
|
|
2858
2931
|
},
|
|
2859
2932
|
"n_messages": {
|
|
2860
2933
|
"_input_type": "IntInput",
|
|
@@ -2862,15 +2935,18 @@
|
|
|
2862
2935
|
"display_name": "Number of Chat History Messages",
|
|
2863
2936
|
"dynamic": false,
|
|
2864
2937
|
"info": "Number of chat history messages to retrieve.",
|
|
2938
|
+
"input_types": [],
|
|
2865
2939
|
"list": false,
|
|
2866
2940
|
"list_add_label": "Add More",
|
|
2867
2941
|
"name": "n_messages",
|
|
2942
|
+
"override_skip": false,
|
|
2868
2943
|
"placeholder": "",
|
|
2869
2944
|
"required": false,
|
|
2870
2945
|
"show": true,
|
|
2871
2946
|
"title_case": false,
|
|
2872
2947
|
"tool_mode": false,
|
|
2873
2948
|
"trace_as_metadata": true,
|
|
2949
|
+
"track_in_telemetry": true,
|
|
2874
2950
|
"type": "int",
|
|
2875
2951
|
"value": 100
|
|
2876
2952
|
},
|
|
@@ -2880,9 +2956,11 @@
|
|
|
2880
2956
|
"display_name": "Output Schema",
|
|
2881
2957
|
"dynamic": false,
|
|
2882
2958
|
"info": "Schema Validation: Define the structure and data types for structured output. No validation if no output schema.",
|
|
2959
|
+
"input_types": [],
|
|
2883
2960
|
"is_list": true,
|
|
2884
2961
|
"list_add_label": "Add More",
|
|
2885
2962
|
"name": "output_schema",
|
|
2963
|
+
"override_skip": false,
|
|
2886
2964
|
"placeholder": "",
|
|
2887
2965
|
"required": false,
|
|
2888
2966
|
"show": true,
|
|
@@ -2931,6 +3009,7 @@
|
|
|
2931
3009
|
"title_case": false,
|
|
2932
3010
|
"tool_mode": false,
|
|
2933
3011
|
"trace_as_metadata": true,
|
|
3012
|
+
"track_in_telemetry": false,
|
|
2934
3013
|
"trigger_icon": "Table",
|
|
2935
3014
|
"trigger_text": "Open table",
|
|
2936
3015
|
"type": "table",
|
|
@@ -2939,6 +3018,7 @@
|
|
|
2939
3018
|
"system_prompt": {
|
|
2940
3019
|
"_input_type": "MultilineInput",
|
|
2941
3020
|
"advanced": false,
|
|
3021
|
+
"ai_enabled": false,
|
|
2942
3022
|
"copy_field": false,
|
|
2943
3023
|
"display_name": "Agent Instructions",
|
|
2944
3024
|
"dynamic": false,
|
|
@@ -2951,6 +3031,7 @@
|
|
|
2951
3031
|
"load_from_db": false,
|
|
2952
3032
|
"multiline": true,
|
|
2953
3033
|
"name": "system_prompt",
|
|
3034
|
+
"override_skip": false,
|
|
2954
3035
|
"placeholder": "",
|
|
2955
3036
|
"required": false,
|
|
2956
3037
|
"show": true,
|
|
@@ -2958,8 +3039,9 @@
|
|
|
2958
3039
|
"tool_mode": false,
|
|
2959
3040
|
"trace_as_input": true,
|
|
2960
3041
|
"trace_as_metadata": true,
|
|
3042
|
+
"track_in_telemetry": false,
|
|
2961
3043
|
"type": "str",
|
|
2962
|
-
"value": "You are
|
|
3044
|
+
"value": "You are a helpful assistant that can use tools to answer questions and perform tasks."
|
|
2963
3045
|
},
|
|
2964
3046
|
"tools": {
|
|
2965
3047
|
"_input_type": "HandleInput",
|
|
@@ -2973,11 +3055,13 @@
|
|
|
2973
3055
|
"list": true,
|
|
2974
3056
|
"list_add_label": "Add More",
|
|
2975
3057
|
"name": "tools",
|
|
3058
|
+
"override_skip": false,
|
|
2976
3059
|
"placeholder": "",
|
|
2977
3060
|
"required": false,
|
|
2978
3061
|
"show": true,
|
|
2979
3062
|
"title_case": false,
|
|
2980
3063
|
"trace_as_metadata": true,
|
|
3064
|
+
"track_in_telemetry": false,
|
|
2981
3065
|
"type": "other",
|
|
2982
3066
|
"value": ""
|
|
2983
3067
|
},
|
|
@@ -2987,15 +3071,18 @@
|
|
|
2987
3071
|
"display_name": "Verbose",
|
|
2988
3072
|
"dynamic": false,
|
|
2989
3073
|
"info": "",
|
|
3074
|
+
"input_types": [],
|
|
2990
3075
|
"list": false,
|
|
2991
3076
|
"list_add_label": "Add More",
|
|
2992
3077
|
"name": "verbose",
|
|
3078
|
+
"override_skip": false,
|
|
2993
3079
|
"placeholder": "",
|
|
2994
3080
|
"required": false,
|
|
2995
3081
|
"show": true,
|
|
2996
3082
|
"title_case": false,
|
|
2997
3083
|
"tool_mode": false,
|
|
2998
3084
|
"trace_as_metadata": true,
|
|
3085
|
+
"track_in_telemetry": true,
|
|
2999
3086
|
"type": "bool",
|
|
3000
3087
|
"value": true
|
|
3001
3088
|
}
|