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
|
@@ -328,23 +328,17 @@
|
|
|
328
328
|
"conditional_paths": [],
|
|
329
329
|
"custom_fields": {},
|
|
330
330
|
"description": "Define the agent's instructions, then enter a task to complete using tools.",
|
|
331
|
-
"display_name": "
|
|
332
|
-
"documentation": "",
|
|
331
|
+
"display_name": "Agent",
|
|
332
|
+
"documentation": "https://docs.langflow.org/agents",
|
|
333
333
|
"edited": false,
|
|
334
334
|
"field_order": [
|
|
335
|
-
"
|
|
336
|
-
"max_tokens",
|
|
337
|
-
"model_kwargs",
|
|
338
|
-
"json_mode",
|
|
339
|
-
"model_name",
|
|
340
|
-
"openai_api_base",
|
|
335
|
+
"model",
|
|
341
336
|
"api_key",
|
|
342
|
-
"temperature",
|
|
343
|
-
"seed",
|
|
344
|
-
"max_retries",
|
|
345
|
-
"timeout",
|
|
346
337
|
"system_prompt",
|
|
338
|
+
"context_id",
|
|
347
339
|
"n_messages",
|
|
340
|
+
"format_instructions",
|
|
341
|
+
"output_schema",
|
|
348
342
|
"tools",
|
|
349
343
|
"input_value",
|
|
350
344
|
"handle_parsing_errors",
|
|
@@ -355,9 +349,10 @@
|
|
|
355
349
|
],
|
|
356
350
|
"frozen": false,
|
|
357
351
|
"icon": "bot",
|
|
352
|
+
"last_updated": "2025-12-11T21:41:48.407Z",
|
|
358
353
|
"legacy": false,
|
|
359
354
|
"metadata": {
|
|
360
|
-
"code_hash": "
|
|
355
|
+
"code_hash": "bdc309bc2d2a",
|
|
361
356
|
"dependencies": {
|
|
362
357
|
"dependencies": [
|
|
363
358
|
{
|
|
@@ -404,21 +399,25 @@
|
|
|
404
399
|
"display_name": "Current Date",
|
|
405
400
|
"dynamic": false,
|
|
406
401
|
"info": "If true, will add a tool to the agent that returns the current date.",
|
|
402
|
+
"input_types": [],
|
|
407
403
|
"list": false,
|
|
408
404
|
"list_add_label": "Add More",
|
|
409
405
|
"name": "add_current_date_tool",
|
|
406
|
+
"override_skip": false,
|
|
410
407
|
"placeholder": "",
|
|
411
408
|
"required": false,
|
|
412
409
|
"show": true,
|
|
413
410
|
"title_case": false,
|
|
414
411
|
"tool_mode": false,
|
|
415
412
|
"trace_as_metadata": true,
|
|
413
|
+
"track_in_telemetry": true,
|
|
416
414
|
"type": "bool",
|
|
417
415
|
"value": true
|
|
418
416
|
},
|
|
419
417
|
"agent_description": {
|
|
420
418
|
"_input_type": "MultilineInput",
|
|
421
419
|
"advanced": true,
|
|
420
|
+
"ai_enabled": false,
|
|
422
421
|
"copy_field": false,
|
|
423
422
|
"display_name": "Agent Description [Deprecated]",
|
|
424
423
|
"dynamic": false,
|
|
@@ -431,6 +430,7 @@
|
|
|
431
430
|
"load_from_db": false,
|
|
432
431
|
"multiline": true,
|
|
433
432
|
"name": "agent_description",
|
|
433
|
+
"override_skip": false,
|
|
434
434
|
"placeholder": "",
|
|
435
435
|
"required": false,
|
|
436
436
|
"show": true,
|
|
@@ -438,26 +438,29 @@
|
|
|
438
438
|
"tool_mode": false,
|
|
439
439
|
"trace_as_input": true,
|
|
440
440
|
"trace_as_metadata": true,
|
|
441
|
+
"track_in_telemetry": false,
|
|
441
442
|
"type": "str",
|
|
442
443
|
"value": "A helpful assistant with access to the following tools:"
|
|
443
444
|
},
|
|
444
445
|
"api_key": {
|
|
445
446
|
"_input_type": "SecretStrInput",
|
|
446
|
-
"advanced":
|
|
447
|
+
"advanced": true,
|
|
447
448
|
"display_name": "API Key",
|
|
448
449
|
"dynamic": false,
|
|
449
450
|
"info": "Model Provider API key",
|
|
450
451
|
"input_types": [],
|
|
451
|
-
"load_from_db":
|
|
452
|
+
"load_from_db": false,
|
|
452
453
|
"name": "api_key",
|
|
454
|
+
"override_skip": false,
|
|
453
455
|
"password": true,
|
|
454
456
|
"placeholder": "",
|
|
455
457
|
"real_time_refresh": true,
|
|
456
458
|
"required": false,
|
|
457
459
|
"show": true,
|
|
458
460
|
"title_case": false,
|
|
461
|
+
"track_in_telemetry": false,
|
|
459
462
|
"type": "str",
|
|
460
|
-
"value": "
|
|
463
|
+
"value": ""
|
|
461
464
|
},
|
|
462
465
|
"code": {
|
|
463
466
|
"advanced": true,
|
|
@@ -475,7 +478,7 @@
|
|
|
475
478
|
"show": true,
|
|
476
479
|
"title_case": false,
|
|
477
480
|
"type": "code",
|
|
478
|
-
"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"
|
|
481
|
+
"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"
|
|
479
482
|
},
|
|
480
483
|
"context_id": {
|
|
481
484
|
"_input_type": "MessageTextInput",
|
|
@@ -490,6 +493,7 @@
|
|
|
490
493
|
"list_add_label": "Add More",
|
|
491
494
|
"load_from_db": false,
|
|
492
495
|
"name": "context_id",
|
|
496
|
+
"override_skip": false,
|
|
493
497
|
"placeholder": "",
|
|
494
498
|
"required": false,
|
|
495
499
|
"show": true,
|
|
@@ -497,12 +501,14 @@
|
|
|
497
501
|
"tool_mode": false,
|
|
498
502
|
"trace_as_input": true,
|
|
499
503
|
"trace_as_metadata": true,
|
|
504
|
+
"track_in_telemetry": false,
|
|
500
505
|
"type": "str",
|
|
501
506
|
"value": ""
|
|
502
507
|
},
|
|
503
508
|
"format_instructions": {
|
|
504
509
|
"_input_type": "MultilineInput",
|
|
505
510
|
"advanced": true,
|
|
511
|
+
"ai_enabled": false,
|
|
506
512
|
"copy_field": false,
|
|
507
513
|
"display_name": "Output Format Instructions",
|
|
508
514
|
"dynamic": false,
|
|
@@ -515,6 +521,7 @@
|
|
|
515
521
|
"load_from_db": false,
|
|
516
522
|
"multiline": true,
|
|
517
523
|
"name": "format_instructions",
|
|
524
|
+
"override_skip": false,
|
|
518
525
|
"placeholder": "",
|
|
519
526
|
"required": false,
|
|
520
527
|
"show": true,
|
|
@@ -522,6 +529,7 @@
|
|
|
522
529
|
"tool_mode": false,
|
|
523
530
|
"trace_as_input": true,
|
|
524
531
|
"trace_as_metadata": true,
|
|
532
|
+
"track_in_telemetry": false,
|
|
525
533
|
"type": "str",
|
|
526
534
|
"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."
|
|
527
535
|
},
|
|
@@ -531,20 +539,23 @@
|
|
|
531
539
|
"display_name": "Handle Parse Errors",
|
|
532
540
|
"dynamic": false,
|
|
533
541
|
"info": "Should the Agent fix errors when reading user input for better processing?",
|
|
542
|
+
"input_types": [],
|
|
534
543
|
"list": false,
|
|
535
544
|
"list_add_label": "Add More",
|
|
536
545
|
"name": "handle_parsing_errors",
|
|
546
|
+
"override_skip": false,
|
|
537
547
|
"placeholder": "",
|
|
538
548
|
"required": false,
|
|
539
549
|
"show": true,
|
|
540
550
|
"title_case": false,
|
|
541
551
|
"tool_mode": false,
|
|
542
552
|
"trace_as_metadata": true,
|
|
553
|
+
"track_in_telemetry": true,
|
|
543
554
|
"type": "bool",
|
|
544
555
|
"value": true
|
|
545
556
|
},
|
|
546
557
|
"input_value": {
|
|
547
|
-
"_input_type": "
|
|
558
|
+
"_input_type": "MessageInput",
|
|
548
559
|
"advanced": false,
|
|
549
560
|
"display_name": "Input",
|
|
550
561
|
"dynamic": false,
|
|
@@ -556,6 +567,7 @@
|
|
|
556
567
|
"list_add_label": "Add More",
|
|
557
568
|
"load_from_db": false,
|
|
558
569
|
"name": "input_value",
|
|
570
|
+
"override_skip": false,
|
|
559
571
|
"placeholder": "",
|
|
560
572
|
"required": false,
|
|
561
573
|
"show": true,
|
|
@@ -563,6 +575,7 @@
|
|
|
563
575
|
"tool_mode": true,
|
|
564
576
|
"trace_as_input": true,
|
|
565
577
|
"trace_as_metadata": true,
|
|
578
|
+
"track_in_telemetry": false,
|
|
566
579
|
"type": "str",
|
|
567
580
|
"value": ""
|
|
568
581
|
},
|
|
@@ -572,15 +585,18 @@
|
|
|
572
585
|
"display_name": "Max Iterations",
|
|
573
586
|
"dynamic": false,
|
|
574
587
|
"info": "The maximum number of attempts the agent can make to complete its task before it stops.",
|
|
588
|
+
"input_types": [],
|
|
575
589
|
"list": false,
|
|
576
590
|
"list_add_label": "Add More",
|
|
577
591
|
"name": "max_iterations",
|
|
592
|
+
"override_skip": false,
|
|
578
593
|
"placeholder": "",
|
|
579
594
|
"required": false,
|
|
580
595
|
"show": true,
|
|
581
596
|
"title_case": false,
|
|
582
597
|
"tool_mode": false,
|
|
583
598
|
"trace_as_metadata": true,
|
|
599
|
+
"track_in_telemetry": true,
|
|
584
600
|
"type": "int",
|
|
585
601
|
"value": 15
|
|
586
602
|
},
|
|
@@ -601,13 +617,12 @@
|
|
|
601
617
|
}
|
|
602
618
|
},
|
|
603
619
|
"info": "Select your model provider",
|
|
604
|
-
"input_types": [
|
|
605
|
-
"LanguageModel"
|
|
606
|
-
],
|
|
620
|
+
"input_types": [],
|
|
607
621
|
"list": false,
|
|
608
622
|
"list_add_label": "Add More",
|
|
609
623
|
"model_type": "language",
|
|
610
624
|
"name": "model",
|
|
625
|
+
"options": [],
|
|
611
626
|
"override_skip": false,
|
|
612
627
|
"placeholder": "Setup Provider",
|
|
613
628
|
"real_time_refresh": true,
|
|
@@ -619,7 +634,7 @@
|
|
|
619
634
|
"trace_as_input": true,
|
|
620
635
|
"track_in_telemetry": false,
|
|
621
636
|
"type": "model",
|
|
622
|
-
"value":
|
|
637
|
+
"value": []
|
|
623
638
|
},
|
|
624
639
|
"n_messages": {
|
|
625
640
|
"_input_type": "IntInput",
|
|
@@ -627,15 +642,18 @@
|
|
|
627
642
|
"display_name": "Number of Chat History Messages",
|
|
628
643
|
"dynamic": false,
|
|
629
644
|
"info": "Number of chat history messages to retrieve.",
|
|
645
|
+
"input_types": [],
|
|
630
646
|
"list": false,
|
|
631
647
|
"list_add_label": "Add More",
|
|
632
648
|
"name": "n_messages",
|
|
649
|
+
"override_skip": false,
|
|
633
650
|
"placeholder": "",
|
|
634
651
|
"required": false,
|
|
635
652
|
"show": true,
|
|
636
653
|
"title_case": false,
|
|
637
654
|
"tool_mode": false,
|
|
638
655
|
"trace_as_metadata": true,
|
|
656
|
+
"track_in_telemetry": true,
|
|
639
657
|
"type": "int",
|
|
640
658
|
"value": 100
|
|
641
659
|
},
|
|
@@ -645,9 +663,11 @@
|
|
|
645
663
|
"display_name": "Output Schema",
|
|
646
664
|
"dynamic": false,
|
|
647
665
|
"info": "Schema Validation: Define the structure and data types for structured output. No validation if no output schema.",
|
|
666
|
+
"input_types": [],
|
|
648
667
|
"is_list": true,
|
|
649
668
|
"list_add_label": "Add More",
|
|
650
669
|
"name": "output_schema",
|
|
670
|
+
"override_skip": false,
|
|
651
671
|
"placeholder": "",
|
|
652
672
|
"required": false,
|
|
653
673
|
"show": true,
|
|
@@ -696,6 +716,7 @@
|
|
|
696
716
|
"title_case": false,
|
|
697
717
|
"tool_mode": false,
|
|
698
718
|
"trace_as_metadata": true,
|
|
719
|
+
"track_in_telemetry": false,
|
|
699
720
|
"trigger_icon": "Table",
|
|
700
721
|
"trigger_text": "Open table",
|
|
701
722
|
"type": "table",
|
|
@@ -704,6 +725,7 @@
|
|
|
704
725
|
"system_prompt": {
|
|
705
726
|
"_input_type": "MultilineInput",
|
|
706
727
|
"advanced": false,
|
|
728
|
+
"ai_enabled": false,
|
|
707
729
|
"copy_field": false,
|
|
708
730
|
"display_name": "Agent Instructions",
|
|
709
731
|
"dynamic": false,
|
|
@@ -716,6 +738,7 @@
|
|
|
716
738
|
"load_from_db": false,
|
|
717
739
|
"multiline": true,
|
|
718
740
|
"name": "system_prompt",
|
|
741
|
+
"override_skip": false,
|
|
719
742
|
"placeholder": "",
|
|
720
743
|
"required": false,
|
|
721
744
|
"show": true,
|
|
@@ -723,8 +746,9 @@
|
|
|
723
746
|
"tool_mode": false,
|
|
724
747
|
"trace_as_input": true,
|
|
725
748
|
"trace_as_metadata": true,
|
|
749
|
+
"track_in_telemetry": false,
|
|
726
750
|
"type": "str",
|
|
727
|
-
"value": "You are
|
|
751
|
+
"value": "You are a helpful assistant that can use tools to answer questions and perform tasks."
|
|
728
752
|
},
|
|
729
753
|
"tools": {
|
|
730
754
|
"_input_type": "HandleInput",
|
|
@@ -738,11 +762,13 @@
|
|
|
738
762
|
"list": true,
|
|
739
763
|
"list_add_label": "Add More",
|
|
740
764
|
"name": "tools",
|
|
765
|
+
"override_skip": false,
|
|
741
766
|
"placeholder": "",
|
|
742
767
|
"required": false,
|
|
743
768
|
"show": true,
|
|
744
769
|
"title_case": false,
|
|
745
770
|
"trace_as_metadata": true,
|
|
771
|
+
"track_in_telemetry": false,
|
|
746
772
|
"type": "other",
|
|
747
773
|
"value": ""
|
|
748
774
|
},
|
|
@@ -752,15 +778,18 @@
|
|
|
752
778
|
"display_name": "Verbose",
|
|
753
779
|
"dynamic": false,
|
|
754
780
|
"info": "",
|
|
781
|
+
"input_types": [],
|
|
755
782
|
"list": false,
|
|
756
783
|
"list_add_label": "Add More",
|
|
757
784
|
"name": "verbose",
|
|
785
|
+
"override_skip": false,
|
|
758
786
|
"placeholder": "",
|
|
759
787
|
"required": false,
|
|
760
788
|
"show": true,
|
|
761
789
|
"title_case": false,
|
|
762
790
|
"tool_mode": false,
|
|
763
791
|
"trace_as_metadata": true,
|
|
792
|
+
"track_in_telemetry": true,
|
|
764
793
|
"type": "bool",
|
|
765
794
|
"value": true
|
|
766
795
|
}
|
|
@@ -800,23 +829,17 @@
|
|
|
800
829
|
"conditional_paths": [],
|
|
801
830
|
"custom_fields": {},
|
|
802
831
|
"description": "Define the agent's instructions, then enter a task to complete using tools.",
|
|
803
|
-
"display_name": "
|
|
804
|
-
"documentation": "",
|
|
832
|
+
"display_name": "Agent",
|
|
833
|
+
"documentation": "https://docs.langflow.org/agents",
|
|
805
834
|
"edited": false,
|
|
806
835
|
"field_order": [
|
|
807
|
-
"
|
|
808
|
-
"max_tokens",
|
|
809
|
-
"model_kwargs",
|
|
810
|
-
"json_mode",
|
|
811
|
-
"model_name",
|
|
812
|
-
"openai_api_base",
|
|
836
|
+
"model",
|
|
813
837
|
"api_key",
|
|
814
|
-
"temperature",
|
|
815
|
-
"seed",
|
|
816
|
-
"max_retries",
|
|
817
|
-
"timeout",
|
|
818
838
|
"system_prompt",
|
|
839
|
+
"context_id",
|
|
819
840
|
"n_messages",
|
|
841
|
+
"format_instructions",
|
|
842
|
+
"output_schema",
|
|
820
843
|
"tools",
|
|
821
844
|
"input_value",
|
|
822
845
|
"handle_parsing_errors",
|
|
@@ -827,9 +850,10 @@
|
|
|
827
850
|
],
|
|
828
851
|
"frozen": false,
|
|
829
852
|
"icon": "bot",
|
|
853
|
+
"last_updated": "2025-12-11T21:41:48.407Z",
|
|
830
854
|
"legacy": false,
|
|
831
855
|
"metadata": {
|
|
832
|
-
"code_hash": "
|
|
856
|
+
"code_hash": "bdc309bc2d2a",
|
|
833
857
|
"dependencies": {
|
|
834
858
|
"dependencies": [
|
|
835
859
|
{
|
|
@@ -876,21 +900,25 @@
|
|
|
876
900
|
"display_name": "Current Date",
|
|
877
901
|
"dynamic": false,
|
|
878
902
|
"info": "If true, will add a tool to the agent that returns the current date.",
|
|
903
|
+
"input_types": [],
|
|
879
904
|
"list": false,
|
|
880
905
|
"list_add_label": "Add More",
|
|
881
906
|
"name": "add_current_date_tool",
|
|
907
|
+
"override_skip": false,
|
|
882
908
|
"placeholder": "",
|
|
883
909
|
"required": false,
|
|
884
910
|
"show": true,
|
|
885
911
|
"title_case": false,
|
|
886
912
|
"tool_mode": false,
|
|
887
913
|
"trace_as_metadata": true,
|
|
914
|
+
"track_in_telemetry": true,
|
|
888
915
|
"type": "bool",
|
|
889
916
|
"value": true
|
|
890
917
|
},
|
|
891
918
|
"agent_description": {
|
|
892
919
|
"_input_type": "MultilineInput",
|
|
893
920
|
"advanced": true,
|
|
921
|
+
"ai_enabled": false,
|
|
894
922
|
"copy_field": false,
|
|
895
923
|
"display_name": "Agent Description [Deprecated]",
|
|
896
924
|
"dynamic": false,
|
|
@@ -903,6 +931,7 @@
|
|
|
903
931
|
"load_from_db": false,
|
|
904
932
|
"multiline": true,
|
|
905
933
|
"name": "agent_description",
|
|
934
|
+
"override_skip": false,
|
|
906
935
|
"placeholder": "",
|
|
907
936
|
"required": false,
|
|
908
937
|
"show": true,
|
|
@@ -910,26 +939,29 @@
|
|
|
910
939
|
"tool_mode": false,
|
|
911
940
|
"trace_as_input": true,
|
|
912
941
|
"trace_as_metadata": true,
|
|
942
|
+
"track_in_telemetry": false,
|
|
913
943
|
"type": "str",
|
|
914
944
|
"value": "A helpful assistant with access to the following tools:"
|
|
915
945
|
},
|
|
916
946
|
"api_key": {
|
|
917
947
|
"_input_type": "SecretStrInput",
|
|
918
|
-
"advanced":
|
|
948
|
+
"advanced": true,
|
|
919
949
|
"display_name": "API Key",
|
|
920
950
|
"dynamic": false,
|
|
921
951
|
"info": "Model Provider API key",
|
|
922
952
|
"input_types": [],
|
|
923
|
-
"load_from_db":
|
|
953
|
+
"load_from_db": false,
|
|
924
954
|
"name": "api_key",
|
|
955
|
+
"override_skip": false,
|
|
925
956
|
"password": true,
|
|
926
957
|
"placeholder": "",
|
|
927
958
|
"real_time_refresh": true,
|
|
928
959
|
"required": false,
|
|
929
960
|
"show": true,
|
|
930
961
|
"title_case": false,
|
|
962
|
+
"track_in_telemetry": false,
|
|
931
963
|
"type": "str",
|
|
932
|
-
"value": "
|
|
964
|
+
"value": ""
|
|
933
965
|
},
|
|
934
966
|
"code": {
|
|
935
967
|
"advanced": true,
|
|
@@ -947,7 +979,7 @@
|
|
|
947
979
|
"show": true,
|
|
948
980
|
"title_case": false,
|
|
949
981
|
"type": "code",
|
|
950
|
-
"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"
|
|
982
|
+
"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"
|
|
951
983
|
},
|
|
952
984
|
"context_id": {
|
|
953
985
|
"_input_type": "MessageTextInput",
|
|
@@ -962,6 +994,7 @@
|
|
|
962
994
|
"list_add_label": "Add More",
|
|
963
995
|
"load_from_db": false,
|
|
964
996
|
"name": "context_id",
|
|
997
|
+
"override_skip": false,
|
|
965
998
|
"placeholder": "",
|
|
966
999
|
"required": false,
|
|
967
1000
|
"show": true,
|
|
@@ -969,12 +1002,14 @@
|
|
|
969
1002
|
"tool_mode": false,
|
|
970
1003
|
"trace_as_input": true,
|
|
971
1004
|
"trace_as_metadata": true,
|
|
1005
|
+
"track_in_telemetry": false,
|
|
972
1006
|
"type": "str",
|
|
973
1007
|
"value": ""
|
|
974
1008
|
},
|
|
975
1009
|
"format_instructions": {
|
|
976
1010
|
"_input_type": "MultilineInput",
|
|
977
1011
|
"advanced": true,
|
|
1012
|
+
"ai_enabled": false,
|
|
978
1013
|
"copy_field": false,
|
|
979
1014
|
"display_name": "Output Format Instructions",
|
|
980
1015
|
"dynamic": false,
|
|
@@ -987,6 +1022,7 @@
|
|
|
987
1022
|
"load_from_db": false,
|
|
988
1023
|
"multiline": true,
|
|
989
1024
|
"name": "format_instructions",
|
|
1025
|
+
"override_skip": false,
|
|
990
1026
|
"placeholder": "",
|
|
991
1027
|
"required": false,
|
|
992
1028
|
"show": true,
|
|
@@ -994,6 +1030,7 @@
|
|
|
994
1030
|
"tool_mode": false,
|
|
995
1031
|
"trace_as_input": true,
|
|
996
1032
|
"trace_as_metadata": true,
|
|
1033
|
+
"track_in_telemetry": false,
|
|
997
1034
|
"type": "str",
|
|
998
1035
|
"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."
|
|
999
1036
|
},
|
|
@@ -1003,20 +1040,23 @@
|
|
|
1003
1040
|
"display_name": "Handle Parse Errors",
|
|
1004
1041
|
"dynamic": false,
|
|
1005
1042
|
"info": "Should the Agent fix errors when reading user input for better processing?",
|
|
1043
|
+
"input_types": [],
|
|
1006
1044
|
"list": false,
|
|
1007
1045
|
"list_add_label": "Add More",
|
|
1008
1046
|
"name": "handle_parsing_errors",
|
|
1047
|
+
"override_skip": false,
|
|
1009
1048
|
"placeholder": "",
|
|
1010
1049
|
"required": false,
|
|
1011
1050
|
"show": true,
|
|
1012
1051
|
"title_case": false,
|
|
1013
1052
|
"tool_mode": false,
|
|
1014
1053
|
"trace_as_metadata": true,
|
|
1054
|
+
"track_in_telemetry": true,
|
|
1015
1055
|
"type": "bool",
|
|
1016
1056
|
"value": true
|
|
1017
1057
|
},
|
|
1018
1058
|
"input_value": {
|
|
1019
|
-
"_input_type": "
|
|
1059
|
+
"_input_type": "MessageInput",
|
|
1020
1060
|
"advanced": false,
|
|
1021
1061
|
"display_name": "Input",
|
|
1022
1062
|
"dynamic": false,
|
|
@@ -1028,6 +1068,7 @@
|
|
|
1028
1068
|
"list_add_label": "Add More",
|
|
1029
1069
|
"load_from_db": false,
|
|
1030
1070
|
"name": "input_value",
|
|
1071
|
+
"override_skip": false,
|
|
1031
1072
|
"placeholder": "",
|
|
1032
1073
|
"required": false,
|
|
1033
1074
|
"show": true,
|
|
@@ -1035,8 +1076,9 @@
|
|
|
1035
1076
|
"tool_mode": true,
|
|
1036
1077
|
"trace_as_input": true,
|
|
1037
1078
|
"trace_as_metadata": true,
|
|
1079
|
+
"track_in_telemetry": false,
|
|
1038
1080
|
"type": "str",
|
|
1039
|
-
"value": "
|
|
1081
|
+
"value": ""
|
|
1040
1082
|
},
|
|
1041
1083
|
"max_iterations": {
|
|
1042
1084
|
"_input_type": "IntInput",
|
|
@@ -1044,15 +1086,18 @@
|
|
|
1044
1086
|
"display_name": "Max Iterations",
|
|
1045
1087
|
"dynamic": false,
|
|
1046
1088
|
"info": "The maximum number of attempts the agent can make to complete its task before it stops.",
|
|
1089
|
+
"input_types": [],
|
|
1047
1090
|
"list": false,
|
|
1048
1091
|
"list_add_label": "Add More",
|
|
1049
1092
|
"name": "max_iterations",
|
|
1093
|
+
"override_skip": false,
|
|
1050
1094
|
"placeholder": "",
|
|
1051
1095
|
"required": false,
|
|
1052
1096
|
"show": true,
|
|
1053
1097
|
"title_case": false,
|
|
1054
1098
|
"tool_mode": false,
|
|
1055
1099
|
"trace_as_metadata": true,
|
|
1100
|
+
"track_in_telemetry": true,
|
|
1056
1101
|
"type": "int",
|
|
1057
1102
|
"value": 15
|
|
1058
1103
|
},
|
|
@@ -1073,13 +1118,12 @@
|
|
|
1073
1118
|
}
|
|
1074
1119
|
},
|
|
1075
1120
|
"info": "Select your model provider",
|
|
1076
|
-
"input_types": [
|
|
1077
|
-
"LanguageModel"
|
|
1078
|
-
],
|
|
1121
|
+
"input_types": [],
|
|
1079
1122
|
"list": false,
|
|
1080
1123
|
"list_add_label": "Add More",
|
|
1081
1124
|
"model_type": "language",
|
|
1082
1125
|
"name": "model",
|
|
1126
|
+
"options": [],
|
|
1083
1127
|
"override_skip": false,
|
|
1084
1128
|
"placeholder": "Setup Provider",
|
|
1085
1129
|
"real_time_refresh": true,
|
|
@@ -1091,7 +1135,7 @@
|
|
|
1091
1135
|
"trace_as_input": true,
|
|
1092
1136
|
"track_in_telemetry": false,
|
|
1093
1137
|
"type": "model",
|
|
1094
|
-
"value":
|
|
1138
|
+
"value": []
|
|
1095
1139
|
},
|
|
1096
1140
|
"n_messages": {
|
|
1097
1141
|
"_input_type": "IntInput",
|
|
@@ -1099,15 +1143,18 @@
|
|
|
1099
1143
|
"display_name": "Number of Chat History Messages",
|
|
1100
1144
|
"dynamic": false,
|
|
1101
1145
|
"info": "Number of chat history messages to retrieve.",
|
|
1146
|
+
"input_types": [],
|
|
1102
1147
|
"list": false,
|
|
1103
1148
|
"list_add_label": "Add More",
|
|
1104
1149
|
"name": "n_messages",
|
|
1150
|
+
"override_skip": false,
|
|
1105
1151
|
"placeholder": "",
|
|
1106
1152
|
"required": false,
|
|
1107
1153
|
"show": true,
|
|
1108
1154
|
"title_case": false,
|
|
1109
1155
|
"tool_mode": false,
|
|
1110
1156
|
"trace_as_metadata": true,
|
|
1157
|
+
"track_in_telemetry": true,
|
|
1111
1158
|
"type": "int",
|
|
1112
1159
|
"value": 100
|
|
1113
1160
|
},
|
|
@@ -1117,9 +1164,11 @@
|
|
|
1117
1164
|
"display_name": "Output Schema",
|
|
1118
1165
|
"dynamic": false,
|
|
1119
1166
|
"info": "Schema Validation: Define the structure and data types for structured output. No validation if no output schema.",
|
|
1167
|
+
"input_types": [],
|
|
1120
1168
|
"is_list": true,
|
|
1121
1169
|
"list_add_label": "Add More",
|
|
1122
1170
|
"name": "output_schema",
|
|
1171
|
+
"override_skip": false,
|
|
1123
1172
|
"placeholder": "",
|
|
1124
1173
|
"required": false,
|
|
1125
1174
|
"show": true,
|
|
@@ -1168,6 +1217,7 @@
|
|
|
1168
1217
|
"title_case": false,
|
|
1169
1218
|
"tool_mode": false,
|
|
1170
1219
|
"trace_as_metadata": true,
|
|
1220
|
+
"track_in_telemetry": false,
|
|
1171
1221
|
"trigger_icon": "Table",
|
|
1172
1222
|
"trigger_text": "Open table",
|
|
1173
1223
|
"type": "table",
|
|
@@ -1176,6 +1226,7 @@
|
|
|
1176
1226
|
"system_prompt": {
|
|
1177
1227
|
"_input_type": "MultilineInput",
|
|
1178
1228
|
"advanced": false,
|
|
1229
|
+
"ai_enabled": false,
|
|
1179
1230
|
"copy_field": false,
|
|
1180
1231
|
"display_name": "Agent Instructions",
|
|
1181
1232
|
"dynamic": false,
|
|
@@ -1188,6 +1239,7 @@
|
|
|
1188
1239
|
"load_from_db": false,
|
|
1189
1240
|
"multiline": true,
|
|
1190
1241
|
"name": "system_prompt",
|
|
1242
|
+
"override_skip": false,
|
|
1191
1243
|
"placeholder": "",
|
|
1192
1244
|
"required": false,
|
|
1193
1245
|
"show": true,
|
|
@@ -1195,8 +1247,9 @@
|
|
|
1195
1247
|
"tool_mode": false,
|
|
1196
1248
|
"trace_as_input": true,
|
|
1197
1249
|
"trace_as_metadata": true,
|
|
1250
|
+
"track_in_telemetry": false,
|
|
1198
1251
|
"type": "str",
|
|
1199
|
-
"value": "You are a
|
|
1252
|
+
"value": "You are a helpful assistant that can use tools to answer questions and perform tasks."
|
|
1200
1253
|
},
|
|
1201
1254
|
"tools": {
|
|
1202
1255
|
"_input_type": "HandleInput",
|
|
@@ -1210,11 +1263,13 @@
|
|
|
1210
1263
|
"list": true,
|
|
1211
1264
|
"list_add_label": "Add More",
|
|
1212
1265
|
"name": "tools",
|
|
1266
|
+
"override_skip": false,
|
|
1213
1267
|
"placeholder": "",
|
|
1214
1268
|
"required": false,
|
|
1215
1269
|
"show": true,
|
|
1216
1270
|
"title_case": false,
|
|
1217
1271
|
"trace_as_metadata": true,
|
|
1272
|
+
"track_in_telemetry": false,
|
|
1218
1273
|
"type": "other",
|
|
1219
1274
|
"value": ""
|
|
1220
1275
|
},
|
|
@@ -1224,15 +1279,18 @@
|
|
|
1224
1279
|
"display_name": "Verbose",
|
|
1225
1280
|
"dynamic": false,
|
|
1226
1281
|
"info": "",
|
|
1282
|
+
"input_types": [],
|
|
1227
1283
|
"list": false,
|
|
1228
1284
|
"list_add_label": "Add More",
|
|
1229
1285
|
"name": "verbose",
|
|
1286
|
+
"override_skip": false,
|
|
1230
1287
|
"placeholder": "",
|
|
1231
1288
|
"required": false,
|
|
1232
1289
|
"show": true,
|
|
1233
1290
|
"title_case": false,
|
|
1234
1291
|
"tool_mode": false,
|
|
1235
1292
|
"trace_as_metadata": true,
|
|
1293
|
+
"track_in_telemetry": true,
|
|
1236
1294
|
"type": "bool",
|
|
1237
1295
|
"value": true
|
|
1238
1296
|
}
|
|
@@ -2035,23 +2093,17 @@
|
|
|
2035
2093
|
"conditional_paths": [],
|
|
2036
2094
|
"custom_fields": {},
|
|
2037
2095
|
"description": "Define the agent's instructions, then enter a task to complete using tools.",
|
|
2038
|
-
"display_name": "
|
|
2039
|
-
"documentation": "",
|
|
2096
|
+
"display_name": "Agent",
|
|
2097
|
+
"documentation": "https://docs.langflow.org/agents",
|
|
2040
2098
|
"edited": false,
|
|
2041
2099
|
"field_order": [
|
|
2042
|
-
"
|
|
2043
|
-
"max_tokens",
|
|
2044
|
-
"model_kwargs",
|
|
2045
|
-
"json_mode",
|
|
2046
|
-
"model_name",
|
|
2047
|
-
"openai_api_base",
|
|
2100
|
+
"model",
|
|
2048
2101
|
"api_key",
|
|
2049
|
-
"temperature",
|
|
2050
|
-
"seed",
|
|
2051
|
-
"max_retries",
|
|
2052
|
-
"timeout",
|
|
2053
2102
|
"system_prompt",
|
|
2103
|
+
"context_id",
|
|
2054
2104
|
"n_messages",
|
|
2105
|
+
"format_instructions",
|
|
2106
|
+
"output_schema",
|
|
2055
2107
|
"tools",
|
|
2056
2108
|
"input_value",
|
|
2057
2109
|
"handle_parsing_errors",
|
|
@@ -2062,9 +2114,10 @@
|
|
|
2062
2114
|
],
|
|
2063
2115
|
"frozen": false,
|
|
2064
2116
|
"icon": "bot",
|
|
2117
|
+
"last_updated": "2025-12-11T21:41:48.407Z",
|
|
2065
2118
|
"legacy": false,
|
|
2066
2119
|
"metadata": {
|
|
2067
|
-
"code_hash": "
|
|
2120
|
+
"code_hash": "bdc309bc2d2a",
|
|
2068
2121
|
"dependencies": {
|
|
2069
2122
|
"dependencies": [
|
|
2070
2123
|
{
|
|
@@ -2111,21 +2164,25 @@
|
|
|
2111
2164
|
"display_name": "Current Date",
|
|
2112
2165
|
"dynamic": false,
|
|
2113
2166
|
"info": "If true, will add a tool to the agent that returns the current date.",
|
|
2167
|
+
"input_types": [],
|
|
2114
2168
|
"list": false,
|
|
2115
2169
|
"list_add_label": "Add More",
|
|
2116
2170
|
"name": "add_current_date_tool",
|
|
2171
|
+
"override_skip": false,
|
|
2117
2172
|
"placeholder": "",
|
|
2118
2173
|
"required": false,
|
|
2119
2174
|
"show": true,
|
|
2120
2175
|
"title_case": false,
|
|
2121
2176
|
"tool_mode": false,
|
|
2122
2177
|
"trace_as_metadata": true,
|
|
2178
|
+
"track_in_telemetry": true,
|
|
2123
2179
|
"type": "bool",
|
|
2124
2180
|
"value": true
|
|
2125
2181
|
},
|
|
2126
2182
|
"agent_description": {
|
|
2127
2183
|
"_input_type": "MultilineInput",
|
|
2128
2184
|
"advanced": true,
|
|
2185
|
+
"ai_enabled": false,
|
|
2129
2186
|
"copy_field": false,
|
|
2130
2187
|
"display_name": "Agent Description [Deprecated]",
|
|
2131
2188
|
"dynamic": false,
|
|
@@ -2138,6 +2195,7 @@
|
|
|
2138
2195
|
"load_from_db": false,
|
|
2139
2196
|
"multiline": true,
|
|
2140
2197
|
"name": "agent_description",
|
|
2198
|
+
"override_skip": false,
|
|
2141
2199
|
"placeholder": "",
|
|
2142
2200
|
"required": false,
|
|
2143
2201
|
"show": true,
|
|
@@ -2145,26 +2203,29 @@
|
|
|
2145
2203
|
"tool_mode": false,
|
|
2146
2204
|
"trace_as_input": true,
|
|
2147
2205
|
"trace_as_metadata": true,
|
|
2206
|
+
"track_in_telemetry": false,
|
|
2148
2207
|
"type": "str",
|
|
2149
2208
|
"value": "A helpful assistant with access to the following tools:"
|
|
2150
2209
|
},
|
|
2151
2210
|
"api_key": {
|
|
2152
2211
|
"_input_type": "SecretStrInput",
|
|
2153
|
-
"advanced":
|
|
2212
|
+
"advanced": true,
|
|
2154
2213
|
"display_name": "API Key",
|
|
2155
2214
|
"dynamic": false,
|
|
2156
2215
|
"info": "Model Provider API key",
|
|
2157
2216
|
"input_types": [],
|
|
2158
|
-
"load_from_db":
|
|
2217
|
+
"load_from_db": false,
|
|
2159
2218
|
"name": "api_key",
|
|
2219
|
+
"override_skip": false,
|
|
2160
2220
|
"password": true,
|
|
2161
2221
|
"placeholder": "",
|
|
2162
2222
|
"real_time_refresh": true,
|
|
2163
2223
|
"required": false,
|
|
2164
2224
|
"show": true,
|
|
2165
2225
|
"title_case": false,
|
|
2226
|
+
"track_in_telemetry": false,
|
|
2166
2227
|
"type": "str",
|
|
2167
|
-
"value": "
|
|
2228
|
+
"value": ""
|
|
2168
2229
|
},
|
|
2169
2230
|
"code": {
|
|
2170
2231
|
"advanced": true,
|
|
@@ -2182,7 +2243,7 @@
|
|
|
2182
2243
|
"show": true,
|
|
2183
2244
|
"title_case": false,
|
|
2184
2245
|
"type": "code",
|
|
2185
|
-
"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"
|
|
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 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"
|
|
2186
2247
|
},
|
|
2187
2248
|
"context_id": {
|
|
2188
2249
|
"_input_type": "MessageTextInput",
|
|
@@ -2197,6 +2258,7 @@
|
|
|
2197
2258
|
"list_add_label": "Add More",
|
|
2198
2259
|
"load_from_db": false,
|
|
2199
2260
|
"name": "context_id",
|
|
2261
|
+
"override_skip": false,
|
|
2200
2262
|
"placeholder": "",
|
|
2201
2263
|
"required": false,
|
|
2202
2264
|
"show": true,
|
|
@@ -2204,12 +2266,14 @@
|
|
|
2204
2266
|
"tool_mode": false,
|
|
2205
2267
|
"trace_as_input": true,
|
|
2206
2268
|
"trace_as_metadata": true,
|
|
2269
|
+
"track_in_telemetry": false,
|
|
2207
2270
|
"type": "str",
|
|
2208
2271
|
"value": ""
|
|
2209
2272
|
},
|
|
2210
2273
|
"format_instructions": {
|
|
2211
2274
|
"_input_type": "MultilineInput",
|
|
2212
2275
|
"advanced": true,
|
|
2276
|
+
"ai_enabled": false,
|
|
2213
2277
|
"copy_field": false,
|
|
2214
2278
|
"display_name": "Output Format Instructions",
|
|
2215
2279
|
"dynamic": false,
|
|
@@ -2222,6 +2286,7 @@
|
|
|
2222
2286
|
"load_from_db": false,
|
|
2223
2287
|
"multiline": true,
|
|
2224
2288
|
"name": "format_instructions",
|
|
2289
|
+
"override_skip": false,
|
|
2225
2290
|
"placeholder": "",
|
|
2226
2291
|
"required": false,
|
|
2227
2292
|
"show": true,
|
|
@@ -2229,6 +2294,7 @@
|
|
|
2229
2294
|
"tool_mode": false,
|
|
2230
2295
|
"trace_as_input": true,
|
|
2231
2296
|
"trace_as_metadata": true,
|
|
2297
|
+
"track_in_telemetry": false,
|
|
2232
2298
|
"type": "str",
|
|
2233
2299
|
"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."
|
|
2234
2300
|
},
|
|
@@ -2238,20 +2304,23 @@
|
|
|
2238
2304
|
"display_name": "Handle Parse Errors",
|
|
2239
2305
|
"dynamic": false,
|
|
2240
2306
|
"info": "Should the Agent fix errors when reading user input for better processing?",
|
|
2307
|
+
"input_types": [],
|
|
2241
2308
|
"list": false,
|
|
2242
2309
|
"list_add_label": "Add More",
|
|
2243
2310
|
"name": "handle_parsing_errors",
|
|
2311
|
+
"override_skip": false,
|
|
2244
2312
|
"placeholder": "",
|
|
2245
2313
|
"required": false,
|
|
2246
2314
|
"show": true,
|
|
2247
2315
|
"title_case": false,
|
|
2248
2316
|
"tool_mode": false,
|
|
2249
2317
|
"trace_as_metadata": true,
|
|
2318
|
+
"track_in_telemetry": true,
|
|
2250
2319
|
"type": "bool",
|
|
2251
2320
|
"value": true
|
|
2252
2321
|
},
|
|
2253
2322
|
"input_value": {
|
|
2254
|
-
"_input_type": "
|
|
2323
|
+
"_input_type": "MessageInput",
|
|
2255
2324
|
"advanced": false,
|
|
2256
2325
|
"display_name": "Input",
|
|
2257
2326
|
"dynamic": false,
|
|
@@ -2263,6 +2332,7 @@
|
|
|
2263
2332
|
"list_add_label": "Add More",
|
|
2264
2333
|
"load_from_db": false,
|
|
2265
2334
|
"name": "input_value",
|
|
2335
|
+
"override_skip": false,
|
|
2266
2336
|
"placeholder": "",
|
|
2267
2337
|
"required": false,
|
|
2268
2338
|
"show": true,
|
|
@@ -2270,6 +2340,7 @@
|
|
|
2270
2340
|
"tool_mode": true,
|
|
2271
2341
|
"trace_as_input": true,
|
|
2272
2342
|
"trace_as_metadata": true,
|
|
2343
|
+
"track_in_telemetry": false,
|
|
2273
2344
|
"type": "str",
|
|
2274
2345
|
"value": ""
|
|
2275
2346
|
},
|
|
@@ -2279,15 +2350,18 @@
|
|
|
2279
2350
|
"display_name": "Max Iterations",
|
|
2280
2351
|
"dynamic": false,
|
|
2281
2352
|
"info": "The maximum number of attempts the agent can make to complete its task before it stops.",
|
|
2353
|
+
"input_types": [],
|
|
2282
2354
|
"list": false,
|
|
2283
2355
|
"list_add_label": "Add More",
|
|
2284
2356
|
"name": "max_iterations",
|
|
2357
|
+
"override_skip": false,
|
|
2285
2358
|
"placeholder": "",
|
|
2286
2359
|
"required": false,
|
|
2287
2360
|
"show": true,
|
|
2288
2361
|
"title_case": false,
|
|
2289
2362
|
"tool_mode": false,
|
|
2290
2363
|
"trace_as_metadata": true,
|
|
2364
|
+
"track_in_telemetry": true,
|
|
2291
2365
|
"type": "int",
|
|
2292
2366
|
"value": 15
|
|
2293
2367
|
},
|
|
@@ -2308,13 +2382,12 @@
|
|
|
2308
2382
|
}
|
|
2309
2383
|
},
|
|
2310
2384
|
"info": "Select your model provider",
|
|
2311
|
-
"input_types": [
|
|
2312
|
-
"LanguageModel"
|
|
2313
|
-
],
|
|
2385
|
+
"input_types": [],
|
|
2314
2386
|
"list": false,
|
|
2315
2387
|
"list_add_label": "Add More",
|
|
2316
2388
|
"model_type": "language",
|
|
2317
2389
|
"name": "model",
|
|
2390
|
+
"options": [],
|
|
2318
2391
|
"override_skip": false,
|
|
2319
2392
|
"placeholder": "Setup Provider",
|
|
2320
2393
|
"real_time_refresh": true,
|
|
@@ -2326,7 +2399,7 @@
|
|
|
2326
2399
|
"trace_as_input": true,
|
|
2327
2400
|
"track_in_telemetry": false,
|
|
2328
2401
|
"type": "model",
|
|
2329
|
-
"value":
|
|
2402
|
+
"value": []
|
|
2330
2403
|
},
|
|
2331
2404
|
"n_messages": {
|
|
2332
2405
|
"_input_type": "IntInput",
|
|
@@ -2334,15 +2407,18 @@
|
|
|
2334
2407
|
"display_name": "Number of Chat History Messages",
|
|
2335
2408
|
"dynamic": false,
|
|
2336
2409
|
"info": "Number of chat history messages to retrieve.",
|
|
2410
|
+
"input_types": [],
|
|
2337
2411
|
"list": false,
|
|
2338
2412
|
"list_add_label": "Add More",
|
|
2339
2413
|
"name": "n_messages",
|
|
2414
|
+
"override_skip": false,
|
|
2340
2415
|
"placeholder": "",
|
|
2341
2416
|
"required": false,
|
|
2342
2417
|
"show": true,
|
|
2343
2418
|
"title_case": false,
|
|
2344
2419
|
"tool_mode": false,
|
|
2345
2420
|
"trace_as_metadata": true,
|
|
2421
|
+
"track_in_telemetry": true,
|
|
2346
2422
|
"type": "int",
|
|
2347
2423
|
"value": 100
|
|
2348
2424
|
},
|
|
@@ -2352,9 +2428,11 @@
|
|
|
2352
2428
|
"display_name": "Output Schema",
|
|
2353
2429
|
"dynamic": false,
|
|
2354
2430
|
"info": "Schema Validation: Define the structure and data types for structured output. No validation if no output schema.",
|
|
2431
|
+
"input_types": [],
|
|
2355
2432
|
"is_list": true,
|
|
2356
2433
|
"list_add_label": "Add More",
|
|
2357
2434
|
"name": "output_schema",
|
|
2435
|
+
"override_skip": false,
|
|
2358
2436
|
"placeholder": "",
|
|
2359
2437
|
"required": false,
|
|
2360
2438
|
"show": true,
|
|
@@ -2403,6 +2481,7 @@
|
|
|
2403
2481
|
"title_case": false,
|
|
2404
2482
|
"tool_mode": false,
|
|
2405
2483
|
"trace_as_metadata": true,
|
|
2484
|
+
"track_in_telemetry": false,
|
|
2406
2485
|
"trigger_icon": "Table",
|
|
2407
2486
|
"trigger_text": "Open table",
|
|
2408
2487
|
"type": "table",
|
|
@@ -2411,6 +2490,7 @@
|
|
|
2411
2490
|
"system_prompt": {
|
|
2412
2491
|
"_input_type": "MultilineInput",
|
|
2413
2492
|
"advanced": false,
|
|
2493
|
+
"ai_enabled": false,
|
|
2414
2494
|
"copy_field": false,
|
|
2415
2495
|
"display_name": "Agent Instructions",
|
|
2416
2496
|
"dynamic": false,
|
|
@@ -2423,6 +2503,7 @@
|
|
|
2423
2503
|
"load_from_db": false,
|
|
2424
2504
|
"multiline": true,
|
|
2425
2505
|
"name": "system_prompt",
|
|
2506
|
+
"override_skip": false,
|
|
2426
2507
|
"placeholder": "",
|
|
2427
2508
|
"required": false,
|
|
2428
2509
|
"show": true,
|
|
@@ -2430,6 +2511,7 @@
|
|
|
2430
2511
|
"tool_mode": false,
|
|
2431
2512
|
"trace_as_input": true,
|
|
2432
2513
|
"trace_as_metadata": true,
|
|
2514
|
+
"track_in_telemetry": false,
|
|
2433
2515
|
"type": "str",
|
|
2434
2516
|
"value": "You are a helpful assistant that can use tools to answer questions and perform tasks."
|
|
2435
2517
|
},
|
|
@@ -2445,11 +2527,13 @@
|
|
|
2445
2527
|
"list": true,
|
|
2446
2528
|
"list_add_label": "Add More",
|
|
2447
2529
|
"name": "tools",
|
|
2530
|
+
"override_skip": false,
|
|
2448
2531
|
"placeholder": "",
|
|
2449
2532
|
"required": false,
|
|
2450
2533
|
"show": true,
|
|
2451
2534
|
"title_case": false,
|
|
2452
2535
|
"trace_as_metadata": true,
|
|
2536
|
+
"track_in_telemetry": false,
|
|
2453
2537
|
"type": "other",
|
|
2454
2538
|
"value": ""
|
|
2455
2539
|
},
|
|
@@ -2459,15 +2543,18 @@
|
|
|
2459
2543
|
"display_name": "Verbose",
|
|
2460
2544
|
"dynamic": false,
|
|
2461
2545
|
"info": "",
|
|
2546
|
+
"input_types": [],
|
|
2462
2547
|
"list": false,
|
|
2463
2548
|
"list_add_label": "Add More",
|
|
2464
2549
|
"name": "verbose",
|
|
2550
|
+
"override_skip": false,
|
|
2465
2551
|
"placeholder": "",
|
|
2466
2552
|
"required": false,
|
|
2467
2553
|
"show": true,
|
|
2468
2554
|
"title_case": false,
|
|
2469
2555
|
"tool_mode": false,
|
|
2470
2556
|
"trace_as_metadata": true,
|
|
2557
|
+
"track_in_telemetry": true,
|
|
2471
2558
|
"type": "bool",
|
|
2472
2559
|
"value": true
|
|
2473
2560
|
}
|