Skip to content

Conversation

@AustinMroz
Copy link
Collaborator

@AustinMroz AustinMroz commented Nov 21, 2025

  • Re-enables the share button in Linear Mode and have it export the current workflow
    • Not as nice as having it copy an actual URL, but good enough for the interim and it help with dead space
  • Display the Media Assets Panel on the left hand side to replace the removed Queue Panel
image

┆Issue is synchronized with this Notion page by Unito

@dosubot dosubot bot added the size:S This PR changes 10-29 lines, ignoring generated files. label Nov 21, 2025
@github-actions
Copy link

github-actions bot commented Nov 21, 2025

🎭 Playwright Test Results

⚠️ Tests passed with flaky tests

⏰ Completed at: 11/22/2025, 05:30:26 PM UTC

📈 Summary

  • Total Tests: 497
  • Passed: 486 ✅
  • Failed: 0
  • Flaky: 2 ⚠️
  • Skipped: 9 ⏭️

📊 Test Reports by Browser

  • chromium: View Report • ✅ 477 / ❌ 0 / ⚠️ 2 / ⏭️ 9
  • chromium-2x: View Report • ✅ 2 / ❌ 0 / ⚠️ 0 / ⏭️ 0
  • chromium-0.5x: View Report • ✅ 1 / ❌ 0 / ⚠️ 0 / ⏭️ 0
  • mobile-chrome: View Report • ✅ 6 / ❌ 0 / ⚠️ 0 / ⏭️ 0

🎉 Click on the links above to view detailed test results for each browser configuration.

@github-actions
Copy link

github-actions bot commented Nov 21, 2025

🎨 Storybook Build Status

Build completed successfully!

⏰ Completed at: 11/22/2025, 05:16:33 PM UTC

🔗 Links


🎉 Your Storybook is ready for review!

@github-actions
Copy link

github-actions bot commented Nov 21, 2025

Bundle Size Report

Summary

  • Raw size: 14.2 MB baseline 14.2 MB — 🔴 +1.16 kB
  • Gzip: 2.84 MB baseline 2.84 MB — 🔴 +200 B
  • Brotli: 2.23 MB baseline 2.23 MB — 🔴 +12 B
  • Bundles: 92 current • 92 baseline • 38 added / 38 removed

Category Glance
Graph Workspace 🔴 +1.03 kB (942 kB) · App Entry Points 🔴 +131 B (3.18 MB) · Vendor & Third-Party ⚪ 0 B (5.7 MB) · Other ⚪ 0 B (3.87 MB) · Panels & Settings ⚪ 0 B (306 kB) · UI Components ⚪ 0 B (141 kB) · + 3 more

Per-category breakdown
App Entry Points — 3.18 MB (baseline 3.18 MB) • 🔴 +131 B

Main entry bundles and manifests

File Before After Δ Raw Δ Gzip Δ Brotli
assets/index-CVG7ffYb.js (new) 2.77 MB 🔴 +2.77 MB 🔴 +579 kB 🔴 +440 kB
assets/index-CgzD7nfh.js (removed) 2.77 MB 🟢 -2.77 MB 🟢 -579 kB 🟢 -440 kB
assets/index-ClhHPuRB.js (new) 413 kB 🔴 +413 kB 🔴 +84.6 kB 🔴 +68.9 kB
assets/index-YVlIKVIM.js (removed) 413 kB 🟢 -413 kB 🟢 -84.6 kB 🟢 -69 kB
assets/index-Di3qr7lA.js (new) 345 B 🔴 +345 B 🔴 +246 B 🔴 +231 B
assets/index-TGQQddDv.js (removed) 345 B 🟢 -345 B 🟢 -245 B 🟢 -229 B

Status: 3 added / 3 removed

Graph Workspace — 942 kB (baseline 940 kB) • 🔴 +1.03 kB

Graph editor runtime, canvas, workflow orchestration

File Before After Δ Raw Δ Gzip Δ Brotli
assets/GraphView-BOg88Odg.js (new) 942 kB 🔴 +942 kB 🔴 +182 kB 🔴 +140 kB
assets/GraphView-Dvubymop.js (removed) 940 kB 🟢 -940 kB 🟢 -182 kB 🟢 -140 kB

Status: 1 added / 1 removed

Views & Navigation — 7.97 kB (baseline 7.97 kB) • ⚪ 0 B

Top-level views, pages, and routed surfaces

File Before After Δ Raw Δ Gzip Δ Brotli
assets/UserSelectView-BBNgm99C.js (removed) 7.97 kB 🟢 -7.97 kB 🟢 -2.43 kB 🟢 -2.14 kB
assets/UserSelectView-khlGvSvO.js (new) 7.97 kB 🔴 +7.97 kB 🔴 +2.43 kB 🔴 +2.14 kB

Status: 1 added / 1 removed

Panels & Settings — 306 kB (baseline 306 kB) • ⚪ 0 B

Configuration panels, inspectors, and settings screens

File Before After Δ Raw Δ Gzip Δ Brotli
assets/CreditsPanel-DCkfxwOY.js (new) 22.9 kB 🔴 +22.9 kB 🔴 +5.46 kB 🔴 +4.79 kB
assets/CreditsPanel-DjpDYgge.js (removed) 22.9 kB 🟢 -22.9 kB 🟢 -5.46 kB 🟢 -4.78 kB
assets/KeybindingPanel-CCJy-BrX.js (new) 15.1 kB 🔴 +15.1 kB 🔴 +3.73 kB 🔴 +3.28 kB
assets/KeybindingPanel-CpyO_c5a.js (removed) 15.1 kB 🟢 -15.1 kB 🟢 -3.73 kB 🟢 -3.3 kB
assets/ExtensionPanel-DWSrgC9O.js (removed) 11.9 kB 🟢 -11.9 kB 🟢 -2.79 kB 🟢 -2.45 kB
assets/ExtensionPanel-zn3IhY-t.js (new) 11.9 kB 🔴 +11.9 kB 🔴 +2.79 kB 🔴 +2.45 kB
assets/AboutPanel-CzKiuDiA.js (new) 10.1 kB 🔴 +10.1 kB 🔴 +2.62 kB 🔴 +2.31 kB
assets/AboutPanel-D-w3VX_N.js (removed) 10.1 kB 🟢 -10.1 kB 🟢 -2.62 kB 🟢 -2.31 kB
assets/ServerConfigPanel-CEI2muCu.js (removed) 8.02 kB 🟢 -8.02 kB 🟢 -2.12 kB 🟢 -1.89 kB
assets/ServerConfigPanel-CXF1Ifo6.js (new) 8.02 kB 🔴 +8.02 kB 🔴 +2.12 kB 🔴 +1.89 kB
assets/UserPanel-BP8YZzKH.js (new) 7.74 kB 🔴 +7.74 kB 🔴 +2.03 kB 🔴 +1.77 kB
assets/UserPanel-DqNn8Jif.js (removed) 7.74 kB 🟢 -7.74 kB 🟢 -2.03 kB 🟢 -1.77 kB
assets/settings-BXTtSH4O.js 33.3 kB 33.3 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/settings-C9Pzn-NG.js 25.2 kB 25.2 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/settings-CCy2fA_h.js 27.3 kB 27.3 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/settings-CQpqEFfl.js 26.6 kB 26.6 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/settings-DHcnxypw.js 21.7 kB 21.7 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/settings-DhFTK9fY.js 25.1 kB 25.1 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/settings-DlT4t_ui.js 25.9 kB 25.9 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/settings-DRgSrIdD.js 24.2 kB 24.2 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/settings-tjkeqiZq.js 21.1 kB 21.1 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B

Status: 6 added / 6 removed

UI Components — 141 kB (baseline 141 kB) • ⚪ 0 B

Reusable component library chunks

File Before After Δ Raw Δ Gzip Δ Brotli
assets/Load3D.vue_vue_type_script_setup_true_lang-Bv2eV5gl.js (new) 53.9 kB 🔴 +53.9 kB 🔴 +8.43 kB 🔴 +7.24 kB
assets/Load3D.vue_vue_type_script_setup_true_lang-ChxgexPi.js (removed) 53.9 kB 🟢 -53.9 kB 🟢 -8.43 kB 🟢 -7.23 kB
assets/WidgetSelect.vue_vue_type_script_setup_true_lang-Bi-lUhO4.js (removed) 48.1 kB 🟢 -48.1 kB 🟢 -10.3 kB 🟢 -8.93 kB
assets/WidgetSelect.vue_vue_type_script_setup_true_lang-DRtGvQa7.js (new) 48.1 kB 🔴 +48.1 kB 🔴 +10.3 kB 🔴 +8.95 kB
assets/WidgetInputNumber.vue_vue_type_script_setup_true_lang-oY-VPTU-.js (new) 12.7 kB 🔴 +12.7 kB 🔴 +3.3 kB 🔴 +2.92 kB
assets/WidgetInputNumber.vue_vue_type_script_setup_true_lang-Z5dNCNKW.js (removed) 12.7 kB 🟢 -12.7 kB 🟢 -3.31 kB 🟢 -2.92 kB
assets/ComfyQueueButton-B5Nxk50V.js (new) 9.22 kB 🔴 +9.22 kB 🔴 +2.5 kB 🔴 +2.2 kB
assets/ComfyQueueButton-BzNzUrxH.js (removed) 9.22 kB 🟢 -9.22 kB 🟢 -2.5 kB 🟢 -2.2 kB
assets/WidgetLayoutField.vue_vue_type_script_setup_true_lang-Ca2J3LHx.js (removed) 2.14 kB 🟢 -2.14 kB 🟢 -794 B 🟢 -692 B
assets/WidgetLayoutField.vue_vue_type_script_setup_true_lang-D58NSGR3.js (new) 2.14 kB 🔴 +2.14 kB 🔴 +797 B 🔴 +692 B
assets/MediaTitle.vue_vue_type_script_setup_true_lang-1ipHxqLy.js (new) 848 B 🔴 +848 B 🔴 +475 B 🔴 +418 B
assets/MediaTitle.vue_vue_type_script_setup_true_lang-t3b7cWfw.js (removed) 848 B 🟢 -848 B 🟢 -475 B 🟢 -417 B
assets/LazyImage.vue_vue_type_script_setup_true_lang-Wi-CcgaU.js 10.7 kB 10.7 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/UserAvatar.vue_vue_type_script_setup_true_lang-D2s8tnS2.js 1.26 kB 1.26 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/WidgetButton-ByrPd5jr.js 1.62 kB 1.62 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B

Status: 6 added / 6 removed

Data & Services — 12.5 kB (baseline 12.5 kB) • ⚪ 0 B

Stores, services, APIs, and repositories

File Before After Δ Raw Δ Gzip Δ Brotli
assets/keybindingService-CfV8GAsu.js (new) 7.51 kB 🔴 +7.51 kB 🔴 +1.83 kB 🔴 +1.58 kB
assets/keybindingService-yFkdrvCH.js (removed) 7.51 kB 🟢 -7.51 kB 🟢 -1.83 kB 🟢 -1.58 kB
assets/audioService-BUTueTqm.js (new) 2.2 kB 🔴 +2.2 kB 🔴 +959 B 🔴 +818 B
assets/audioService-C9lzKxt2.js (removed) 2.2 kB 🟢 -2.2 kB 🟢 -959 B 🟢 -821 B
assets/serverConfigStore-B8VVfOcG.js 2.79 kB 2.79 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B

Status: 2 added / 2 removed

Utilities & Hooks — 2.94 kB (baseline 2.94 kB) • ⚪ 0 B

Helpers, composables, and utility bundles

File Before After Δ Raw Δ Gzip Δ Brotli
assets/audioUtils-B0pT5wVW.js (new) 1.41 kB 🔴 +1.41 kB 🔴 +651 B 🔴 +549 B
assets/audioUtils-BBqc68yx.js (removed) 1.41 kB 🟢 -1.41 kB 🟢 -651 B 🟢 -542 B
assets/mathUtil-CTARWQ-l.js 1.07 kB 1.07 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/nodeFilterUtil-CXKCRJ-m.js 460 B 460 B ⚪ 0 B ⚪ 0 B ⚪ 0 B

Status: 1 added / 1 removed

Vendor & Third-Party — 5.7 MB (baseline 5.7 MB) • ⚪ 0 B

External libraries and shared vendor chunks

File Before After Δ Raw Δ Gzip Δ Brotli
assets/vendor-other-BccPILzc.js 3.59 MB 3.59 MB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/vendor-primevue-PESgPnbc.js 517 B 517 B ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/vendor-three-aR6ntw5X.js 1.37 MB 1.37 MB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/vendor-tiptap-CmlTruXJ.js 232 kB 232 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/vendor-vue-CIBLfoY2.js 92.6 kB 92.6 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/vendor-xterm-BZLod3g9.js 407 kB 407 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
Other — 3.87 MB (baseline 3.87 MB) • ⚪ 0 B

Bundles that do not match a named category

File Before After Δ Raw Δ Gzip Δ Brotli
assets/WidgetRecordAudio-DaCe9yAg.js (new) 21.9 kB 🔴 +21.9 kB 🔴 +5.52 kB 🔴 +4.88 kB
assets/WidgetRecordAudio-YP0hJKQu.js (removed) 21.9 kB 🟢 -21.9 kB 🟢 -5.52 kB 🟢 -4.88 kB
assets/AudioPreviewPlayer-D_tODR_L.js (new) 14.9 kB 🔴 +14.9 kB 🔴 +3.69 kB 🔴 +3.29 kB
assets/AudioPreviewPlayer-D3Gt8lFB.js (removed) 14.9 kB 🟢 -14.9 kB 🟢 -3.69 kB 🟢 -3.3 kB
assets/WidgetGalleria-Bi2lfMM_.js (removed) 5.56 kB 🟢 -5.56 kB 🟢 -1.74 kB 🟢 -1.54 kB
assets/WidgetGalleria-BWe7q3Q7.js (new) 5.56 kB 🔴 +5.56 kB 🔴 +1.74 kB 🔴 +1.54 kB
assets/WidgetColorPicker-DYr3b-Jl.js (new) 4.87 kB 🔴 +4.87 kB 🔴 +1.69 kB 🔴 +1.48 kB
assets/WidgetColorPicker-WH9KDh1_.js (removed) 4.87 kB 🟢 -4.87 kB 🟢 -1.69 kB 🟢 -1.48 kB
assets/WidgetMarkdown-DZgnCO9C.js (removed) 4.64 kB 🟢 -4.64 kB 🟢 -1.62 kB 🟢 -1.41 kB
assets/WidgetMarkdown-InMnyjF_.js (new) 4.64 kB 🔴 +4.64 kB 🔴 +1.62 kB 🔴 +1.41 kB
assets/WidgetAudioUI-BQ1QHCMV.js (new) 4.33 kB 🔴 +4.33 kB 🔴 +1.44 kB 🔴 +1.29 kB
assets/WidgetAudioUI-wULPHvk3.js (removed) 4.33 kB 🟢 -4.33 kB 🟢 -1.44 kB 🟢 -1.29 kB
assets/WidgetTextarea-DtvcJR8j.js (removed) 3.72 kB 🟢 -3.72 kB 🟢 -1.3 kB 🟢 -1.15 kB
assets/WidgetTextarea-orND-zlY.js (new) 3.72 kB 🔴 +3.72 kB 🔴 +1.3 kB 🔴 +1.15 kB
assets/WidgetInputText-Dm8VTEJS.js (new) 3.45 kB 🔴 +3.45 kB 🔴 +1.24 kB 🔴 +1.09 kB
assets/WidgetInputText-DnXVoD3L.js (removed) 3.45 kB 🟢 -3.45 kB 🟢 -1.23 kB 🟢 -1.09 kB
assets/WidgetToggleSwitch-BBZ1Mngu.js (new) 3.23 kB 🔴 +3.23 kB 🔴 +1.14 kB 🔴 +1.01 kB
assets/WidgetToggleSwitch-Bu_29fyo.js (removed) 3.23 kB 🟢 -3.23 kB 🟢 -1.14 kB 🟢 -1.02 kB
assets/MediaImageBottom-B4pXrQQR.js (removed) 3.05 kB 🟢 -3.05 kB 🟢 -1.05 kB 🟢 -904 B
assets/MediaImageBottom-BDpBW9Gk.js (new) 3.05 kB 🔴 +3.05 kB 🔴 +1.05 kB 🔴 +915 B
assets/MediaAudioBottom-BkOZqZwm.js (removed) 3 kB 🟢 -3 kB 🟢 -1.05 kB 🟢 -918 B
assets/MediaAudioBottom-DaxdnC_8.js (new) 3 kB 🔴 +3 kB 🔴 +1.05 kB 🔴 +923 B
assets/Media3DTop-DTS-b_Bp.js (removed) 3 kB 🟢 -3 kB 🟢 -1.08 kB 🟢 -911 B
assets/Media3DTop-ehIfasxr.js (new) 3 kB 🔴 +3 kB 🔴 +1.08 kB 🔴 +912 B
assets/MediaVideoBottom-CZL4ixjw.js (new) 3 kB 🔴 +3 kB 🔴 +1.05 kB 🔴 +912 B
assets/MediaVideoBottom-DZyVeoDo.js (removed) 3 kB 🟢 -3 kB 🟢 -1.04 kB 🟢 -914 B
assets/Media3DBottom-BiVY9oDe.js (removed) 2.98 kB 🟢 -2.98 kB 🟢 -1.04 kB 🟢 -911 B
assets/Media3DBottom-ByOkU5VT.js (new) 2.98 kB 🔴 +2.98 kB 🔴 +1.04 kB 🔴 +923 B
assets/WidgetSelect-Cc9Fz3-A.js (removed) 2.17 kB 🟢 -2.17 kB 🟢 -673 B 🟢 -575 B
assets/WidgetSelect-DsrFZzJ1.js (new) 2.17 kB 🔴 +2.17 kB 🔴 +674 B 🔴 +577 B
assets/WidgetInputNumber-bZF2RsDW.js (new) 2.12 kB 🔴 +2.12 kB 🔴 +662 B 🔴 +558 B
assets/WidgetInputNumber-CdJLwgPU.js (removed) 2.12 kB 🟢 -2.12 kB 🟢 -663 B 🟢 -566 B
assets/Load3D-DigW5aQO.js (removed) 1.94 kB 🟢 -1.94 kB 🟢 -594 B 🟢 -499 B
assets/Load3D-f3UnT7Re.js (new) 1.94 kB 🔴 +1.94 kB 🔴 +596 B 🔴 +534 B
assets/WidgetLegacy-DaraZmqD.js (new) 1.88 kB 🔴 +1.88 kB 🔴 +560 B 🔴 +507 B
assets/WidgetLegacy-zP-qDrpn.js (removed) 1.88 kB 🟢 -1.88 kB 🟢 -559 B 🟢 -470 B
assets/commands-_s-RvhJR.js 13.6 kB 13.6 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/commands-BuUILW6P.js 13 kB 13 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/commands-BV4R6fLx.js 14.9 kB 14.9 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/commands-CLwPdnT6.js 14.2 kB 14.2 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/commands-CWMchBmd.js 15.9 kB 15.9 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/commands-DazTQhtc.js 12.9 kB 12.9 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/commands-DmWrOe93.js 13.7 kB 13.7 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/commands-DwiH7Kr6.js 13.8 kB 13.8 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/commands-mS3LCNPn.js 14.5 kB 14.5 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/main-5lOBdqcC.js 84.5 kB 84.5 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/main-BOCuaVpE.js 73.4 kB 73.4 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/main-ClrEFGUz.js 72.4 kB 72.4 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/main-CyNU0iQX.js 99.3 kB 99.3 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/main-D7gwLxft.js 114 kB 114 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/main-DC8o4BCt.js 86.8 kB 86.8 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/main-DKiesCV4.js 94.3 kB 94.3 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/main-Hq2q-OtB.js 83.6 kB 83.6 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/main-USAlAlnj.js 82 kB 82 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/MediaAudioTop-RTI8pWy9.js 1.42 kB 1.42 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/MediaImageTop-BEdbKgBt.js 1.68 kB 1.68 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/MediaVideoTop-BB0lT7C5.js 2.7 kB 2.7 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/nodeDefs-_Px5dSNW.js 306 kB 306 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/nodeDefs-7z21KPoS.js 285 kB 285 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/nodeDefs-BWKZzBPK.js 346 kB 346 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/nodeDefs-CGbgH4Yl.js 320 kB 320 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/nodeDefs-CjjjdWkV.js 313 kB 313 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/nodeDefs-CVrNtxvj.js 288 kB 288 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/nodeDefs-DLRSA0IK.js 309 kB 309 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/nodeDefs-DQV2gnwA.js 372 kB 372 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/nodeDefs-ofqLG5vz.js 310 kB 310 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/WidgetChart-rDmYEWg5.js 2.39 kB 2.39 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/WidgetImageCompare-Ds3K3ULR.js 2.15 kB 2.15 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/widgetPropFilter-BIbGSUAt.js 1.28 kB 1.28 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B

Status: 18 added / 18 removed

@dosubot dosubot bot added size:M This PR changes 30-99 lines, ignoring generated files. and removed size:S This PR changes 10-29 lines, ignoring generated files. labels Nov 22, 2025
@coderabbitai
Copy link

coderabbitai bot commented Nov 22, 2025

📝 Walkthrough

Walkthrough

Added linearMode translation entries to the English locale file. Modified LinearView.vue to integrate UI extension slot support, workflow export functionality, adjust layout with a left sidebar panel, and replace hard-coded button labels with internationalized translations.

Changes

Cohort / File(s) Summary
Translation Updates
src/locales/en/main.json
Added linearMode object containing share and openWorkflow string fields to the translation dictionary.
Linear View Component
src/views/LinearView.vue
Imported ExtensionSlot component and useAssetsSidebarTab composable to add left sidebar support. Imported useWorkflowService to enable workflow export. Adjusted SplitterPanel sizing (99 to 98), added margin to main content, repositioned action bar controls from center to justify-end, replaced hard-coded button labels with i18n translations for Feedback/Open Workflow/Share, and wired Share button to exportWorkflow method. Removed commented queue store references.

Sequence Diagram(s)

sequenceDiagram
    participant User
    participant LinearView
    participant WorkflowService
    
    User->>LinearView: Click Share button
    LinearView->>WorkflowService: exportWorkflow(workflowData)
    WorkflowService-->>LinearView: Export result
    LinearView-->>User: Workflow exported
Loading
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch austin/linear-tweaks

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between bdf6d4d and 00a2f79.

📒 Files selected for processing (2)
  • src/locales/en/main.json (1 hunks)
  • src/views/LinearView.vue (4 hunks)
🧰 Additional context used
🪛 ESLint
src/views/LinearView.vue

[error] 8-8: Unable to resolve path to module '@/components/common/ExtensionSlot.vue'.

(import-x/no-unresolved)


[error] 18-18: Unable to resolve path to module '@/composables/sidebarTabs/useAssetsSidebarTab'.

(import-x/no-unresolved)


[error] 19-19: Unable to resolve path to module '@/i18n'.

(import-x/no-unresolved)


[error] 21-21: Unable to resolve path to module '@/platform/telemetry'.

(import-x/no-unresolved)


[error] 22-22: Unable to resolve path to module '@/platform/workflow/core/services/workflowService'.

(import-x/no-unresolved)

⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (5)
  • GitHub Check: collect
  • GitHub Check: lint-and-format
  • GitHub Check: collect
  • GitHub Check: setup
  • GitHub Check: test
🔇 Additional comments (4)
src/locales/en/main.json (1)

2200-2203: LGTM!

The translation entries are correctly structured and align with the usage in LinearView.vue.

src/views/LinearView.vue (3)

8-8: New imports look appropriate.

The static analysis errors about unresolved imports are likely false positives due to TypeScript path aliases configured in your build system. The imports align with the PR's objective to add the Assets Panel and workflow export functionality.

Also applies to: 18-18, 22-22


126-127: Layout adjustments look correct.

The size reduction from 99 to 98 properly accommodates the new left sidebar panel (size 1), and the margin addition improves the visual spacing.


143-162: Excellent i18n implementation.

The buttons now properly use translated labels via t(), and the Share button correctly calls exportWorkflow() to export the current workflow as described in the PR objectives.

Comment on lines +118 to +124
<SplitterPanel :size="1" class="min-w-min bg-comfy-menu-bg">
<div
class="sidebar-content-container h-full w-full overflow-x-hidden overflow-y-auto border-r-1 border-node-component-border"
>
<ExtensionSlot :extension="useAssetsSidebarTab()" />
</div>
</SplitterPanel>
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟠 Major

Avoid calling composables directly in the template.

Calling useAssetsSidebarTab() directly in the template (line 122) is an anti-pattern in Vue because:

  • Composables are re-executed on every render
  • May cause reactivity and lifecycle management issues
  • Goes against Vue's composition API best practices

Apply this diff to fix:

 const { isLoggedIn } = useCurrentUser()
 const isDesktop = isElectron()
+const assetsSidebarExtension = useAssetsSidebarTab()

 const batchCountWidget = {

Then update the template:

-        <ExtensionSlot :extension="useAssetsSidebarTab()" />
+        <ExtensionSlot :extension="assetsSidebarExtension" />

Committable suggestion skipped: line range outside the PR's diff.

🤖 Prompt for AI Agents
In src/views/LinearView.vue around lines 118 to 124, the template is calling the
composable useAssetsSidebarTab() directly which causes it to run on every
render; move the composable invocation into the component's script setup (or
setup function), assign its return value to a const (or computed/ref as
appropriate), and then use that variable in the template's ExtensionSlot prop
(replace :extension="useAssetsSidebarTab()" with :extension="assetsSidebarTab"
or similar); ensure the variable is exported/returned from setup so the template
can access it.

@christian-byrne christian-byrne merged commit 58b051a into main Nov 23, 2025
46 of 49 checks passed
@christian-byrne christian-byrne deleted the austin/linear-tweaks branch November 23, 2025 19:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:M This PR changes 30-99 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants