@jetcrab/pi-desk 1.1.12 → 1.1.13-dev
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.
- package/docs/plugins.md +21 -1
- package/package.json +2 -2
- package/src/app/api/work-sessions/rename/route.ts +1 -0
- package/src/client/l2_biz/auth/l2-login.tsx +1 -1
- package/src/client/l2_biz/plugin-host/l2-plugin-session-sidebar-tab.tsx +6 -2
- package/src/client/l2_biz/settings/l2-auth-settings.tsx +1 -1
- package/src/client/l2_biz/settings/views/l2-appearance-settings.tsx +1 -16
- package/src/client/l2_biz/task-center/l2-task-center.tsx +4 -30
- package/src/client/l2_biz/workbench/file-workspace/l2-plugin-standalone-file-preview.tsx +45 -7
- package/src/client/l2_biz/workbench/hooks/l2-work-session-rename.ts +57 -0
- package/src/client/l2_biz/workbench/l2-work-session-columns.tsx +0 -11
- package/src/client/l2_biz/workbench/l2-work-session-sidebar.tsx +107 -6
- package/src/client/l2_biz/workbench/l2-workbench-biz.ts +5 -0
- package/src/client/l2_biz/workbench/l2-workbench-chat-composer.tsx +333 -350
- package/src/client/l2_biz/workbench/l2-workbench.tsx +46 -1
- package/src/client/l2_biz/workbench/views/l2-work-session-rename-dialog.tsx +88 -0
- package/src/client/l3_modules/project-files/l3-markdown-preview.module.css +81 -0
- package/src/client/l3_modules/project-files/l3-markdown-preview.tsx +52 -0
- package/src/client/l3_modules/project-files/l3-project-document-view.tsx +26 -8
- package/src/client/l3_modules/project-files/l3-project-file-runtime.ts +16 -1
- package/src/client/l3_modules/project-files/l3-project-text-preview.ts +5 -0
- package/src/client/l3_modules/work-session-visual/l3-work-session-visual-effects.module.css +0 -36
- package/src/client/l3_modules/work-session-visual/l3-work-session-visual-view.tsx +0 -5
- package/src/client/l4_foundation/plugin-host/l4-plugin-host-runtime.ts +71 -1
- package/src/client/l4_foundation/styles/l4-globals.css +0 -19
- package/src/client/l4_foundation/ui/code/l4-code-preview.tsx +2 -1
- package/src/common/l2_biz/auth/l2-auth-contract.ts +2 -2
- package/src/common/l2_biz/auth/l2-auth-messages.ts +2 -2
- package/src/common/l2_biz/settings/l2-settings-messages.ts +0 -6
- package/src/common/l2_biz/work-session/l2-work-session-contract.ts +9 -0
- package/src/common/l2_biz/workbench/l2-workbench-locale-messages.ts +6 -0
- package/src/common/l3_modules/project-files/l3-project-files-locale-messages.ts +4 -0
- package/src/common/l4_foundation/locale/l4-host-error-messages.ts +6 -0
- package/src/server/l1_entry/api/l1-work-session-rename-route.ts +52 -0
- package/src/server/l2_biz/work-session/l2-work-session-chat-runtime.ts +5 -0
- package/src/server/l2_biz/work-session/l2-work-session-manage.ts +13 -0
- package/src/server/l3_modules/work-session/l3-work-session.ts +4 -0
- package/src/server/l4_foundation/pi/l4-pi-chat-worker.ts +12 -1
- package/src/server/l4_foundation/pi/l4-pi-work-session-runtime.ts +5 -0
- package/temp/build/pi-desk/release/.next/BUILD_ID +1 -1
- package/temp/build/pi-desk/release/.next/app-path-routes-manifest.json +1 -0
- package/temp/build/pi-desk/release/.next/build-manifest.json +3 -3
- package/temp/build/pi-desk/release/.next/prerender-manifest.json +3 -3
- package/temp/build/pi-desk/release/.next/react-loadable-manifest.json +1 -2
- package/temp/build/pi-desk/release/.next/required-server-files.js +3 -3
- package/temp/build/pi-desk/release/.next/required-server-files.json +3 -3
- package/temp/build/pi-desk/release/.next/routes-manifest.json +6 -0
- package/temp/build/pi-desk/release/.next/server/app/_global-error/page.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/_global-error.html +1 -1
- package/temp/build/pi-desk/release/.next/server/app/_global-error.rsc +1 -1
- package/temp/build/pi-desk/release/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/temp/build/pi-desk/release/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
- package/temp/build/pi-desk/release/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/temp/build/pi-desk/release/.next/server/app/_not-found/page.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/auth/login/route.js +2 -2
- package/temp/build/pi-desk/release/.next/server/app/api/auth/logout/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/auth-settings/get/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/auth-settings/replace/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/capability-modes/get/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/capability-modes/replace/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/chat/context/get/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/chat/images/get/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/chat/messages/get/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/health/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/mcp-check/get/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/mcp-settings/del/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/mcp-settings/get/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/mcp-settings/replace/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/model-catalog/list/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/model-settings/get/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/model-settings/replace/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/pi/directories/list/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/pi/directory-entries/list/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/pi/directory-ignores/list/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/pi/directory-ignores/replace/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/pi/models/list/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/pi/session-user-messages/list/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/pi/sessions/list/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/plugin-catalog/get/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/plugin-catalog/search/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/plugin-catalog/settings-get/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/plugin-catalog/settings-replace/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/plugins/add/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/plugins/apply/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/plugins/batch/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/plugins/browser-resources/[resourceGroup]/[...resourcePath]/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/plugins/del/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/plugins/enabled-set/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/plugins/get/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/plugins/host-runtime/[runtimeVersion]/[...resourcePath]/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/plugins/list/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/plugins/reload/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/plugins/update/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/project-files/get/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/project-files/list/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/project-files/reveal/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/project-files/search/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/project-git/get/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/project-git-branches/list/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/project-git-changes/list/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/project-git-diff/get/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/project-git-heads/get/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/project-git-log/list/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/project-model-default/get/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/project-model-default/replace/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/skill-files/get/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/skill-files/list/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/skill-files/replace/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/skills/list/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/task-center/images/get/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/task-center/messages/get/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/work-session-git-branch/add/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/work-session-git-branch/replace/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/work-session-tree/get/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/work-session-tree-entry/get/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/work-sessions/add/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/work-sessions/branch/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/work-sessions/del/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/work-sessions/rename/route.js +1 -0
- package/temp/build/pi-desk/release/.next/server/app/api/work-sessions/rename/route_client-reference-manifest.js +1 -0
- package/temp/build/pi-desk/release/.next/server/app/api/work-sessions/replace/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/work-sessions/sort/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/favicon.ico/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/login/page.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/login/page_client-reference-manifest.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/page.js +80 -314
- package/temp/build/pi-desk/release/.next/server/app/page_client-reference-manifest.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app-paths-manifest.json +1 -0
- package/temp/build/pi-desk/release/.next/server/chunks/23054.js +1 -1
- package/temp/build/pi-desk/release/.next/server/chunks/25406.js +8 -8
- package/temp/build/pi-desk/release/.next/server/chunks/33658.js +296 -0
- package/temp/build/pi-desk/release/.next/server/chunks/35985.js +5 -5
- package/temp/build/pi-desk/release/.next/server/chunks/48180.js +1 -1
- package/temp/build/pi-desk/release/.next/server/chunks/49900.js +2 -2
- package/temp/build/pi-desk/release/.next/server/chunks/6917.js +1 -1
- package/temp/build/pi-desk/release/.next/server/chunks/82499.js +3 -3
- package/temp/build/pi-desk/release/.next/server/chunks/92386.js +3 -3
- package/temp/build/pi-desk/release/.next/server/chunks/94296.js +2 -2
- package/temp/build/pi-desk/release/.next/server/middleware-build-manifest.js +1 -1
- package/temp/build/pi-desk/release/.next/server/middleware-react-loadable-manifest.js +1 -1
- package/temp/build/pi-desk/release/.next/server/pages/500.html +1 -1
- package/temp/build/pi-desk/release/.next/server/server-reference-manifest.json +1 -1
- package/temp/build/pi-desk/release/.next/static/YdOQ7klRBI5tJb5NpDVLW/_buildManifest.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/31087-ba426d09d6f68bfd.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/39654-b5fedd762ea0312e.js +238 -0
- package/temp/build/pi-desk/release/.next/static/chunks/49516-cc4dcd84d64ab4fe.js +81 -0
- package/temp/build/pi-desk/release/.next/static/chunks/75130-d2ca74894aff8085.js +13 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/_global-error/page-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/_not-found/page-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/auth/login/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/auth/logout/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/auth-settings/get/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/auth-settings/replace/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/capability-modes/get/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/capability-modes/replace/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/chat/context/get/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/chat/images/get/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/chat/messages/get/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/health/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/mcp-check/get/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/mcp-settings/del/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/mcp-settings/get/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/mcp-settings/replace/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/model-catalog/list/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/model-settings/get/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/model-settings/replace/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/pi/directories/list/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/pi/directory-entries/list/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/pi/directory-ignores/list/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/pi/directory-ignores/replace/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/pi/models/list/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/pi/session-user-messages/list/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/pi/sessions/list/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/plugin-catalog/get/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/plugin-catalog/search/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/plugin-catalog/settings-get/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/plugin-catalog/settings-replace/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/plugins/add/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/plugins/apply/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/plugins/batch/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/plugins/browser-resources/[resourceGroup]/[...resourcePath]/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/plugins/del/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/plugins/enabled-set/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/plugins/get/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/plugins/host-runtime/[runtimeVersion]/[...resourcePath]/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/plugins/list/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/plugins/reload/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/plugins/update/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/project-files/get/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/project-files/list/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/project-files/reveal/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/project-files/search/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/project-git/get/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/project-git-branches/list/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/project-git-changes/list/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/project-git-diff/get/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/project-git-heads/get/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/project-git-log/list/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/project-model-default/get/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/project-model-default/replace/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/skill-files/get/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/skill-files/list/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/skill-files/replace/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/skills/list/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/task-center/images/get/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/task-center/messages/get/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/work-session-git-branch/add/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/work-session-git-branch/replace/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/work-session-tree/get/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/work-session-tree-entry/get/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/work-sessions/add/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/work-sessions/branch/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/work-sessions/del/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/work-sessions/rename/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/work-sessions/replace/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/work-sessions/sort/route-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/layout-358978b7cfe69a5f.js +3 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/login/page-84892b06243891f0.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/page-cc05e71bf51adb57.js +158 -0
- package/temp/build/pi-desk/release/.next/static/chunks/next/dist/client/components/builtin/app-error-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/next/dist/client/components/builtin/forbidden-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/next/dist/client/components/builtin/unauthorized-5137efe26947191b.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/webpack-40a782fc8a3535b9.js +1 -0
- package/temp/build/pi-desk/release/.next/static/css/095a062e18f96657.css +1 -0
- package/temp/build/pi-desk/release/.next/static/css/{adb1d4e48dd43c0a.css → 949d0d1a99d5de92.css} +1 -1
- package/temp/build/pi-desk/release/.next/trace-build +1 -1
- package/src/client/l2_biz/workbench/hooks/l2-work-session-column-motion.ts +0 -87
- package/src/client/l3_modules/work-session-visual/l3-work-session-status-border.tsx +0 -66
- package/src/client/l4_foundation/ui/l4-power-saving.ts +0 -45
- package/src/client/l4_foundation/ui/l4-window-reveal.ts +0 -30
- package/temp/build/pi-desk/release/.next/server/chunks/56284.js +0 -62
- package/temp/build/pi-desk/release/.next/static/96geGVI-j_dC6I3k-XFCB/_buildManifest.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/31087-333cae396a52f232.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/45992-92d8b8b10fcfbb6b.js +0 -13
- package/temp/build/pi-desk/release/.next/static/chunks/47340-c1c09c77c1a88514.js +0 -318
- package/temp/build/pi-desk/release/.next/static/chunks/57208-d6d38167dabb91e4.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/_global-error/page-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/_not-found/page-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/auth/login/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/auth/logout/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/auth-settings/get/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/auth-settings/replace/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/capability-modes/get/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/capability-modes/replace/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/chat/context/get/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/chat/images/get/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/chat/messages/get/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/health/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/mcp-check/get/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/mcp-settings/del/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/mcp-settings/get/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/mcp-settings/replace/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/model-catalog/list/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/model-settings/get/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/model-settings/replace/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/pi/directories/list/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/pi/directory-entries/list/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/pi/directory-ignores/list/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/pi/directory-ignores/replace/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/pi/models/list/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/pi/session-user-messages/list/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/pi/sessions/list/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/plugin-catalog/get/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/plugin-catalog/search/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/plugin-catalog/settings-get/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/plugin-catalog/settings-replace/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/plugins/add/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/plugins/apply/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/plugins/batch/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/plugins/browser-resources/[resourceGroup]/[...resourcePath]/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/plugins/del/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/plugins/enabled-set/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/plugins/get/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/plugins/host-runtime/[runtimeVersion]/[...resourcePath]/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/plugins/list/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/plugins/reload/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/plugins/update/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/project-files/get/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/project-files/list/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/project-files/reveal/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/project-files/search/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/project-git/get/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/project-git-branches/list/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/project-git-changes/list/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/project-git-diff/get/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/project-git-heads/get/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/project-git-log/list/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/project-model-default/get/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/project-model-default/replace/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/skill-files/get/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/skill-files/list/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/skill-files/replace/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/skills/list/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/task-center/images/get/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/task-center/messages/get/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/work-session-git-branch/add/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/work-session-git-branch/replace/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/work-session-tree/get/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/work-session-tree-entry/get/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/work-sessions/add/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/work-sessions/branch/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/work-sessions/del/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/work-sessions/replace/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/api/work-sessions/sort/route-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/layout-839162b6cfae8347.js +0 -3
- package/temp/build/pi-desk/release/.next/static/chunks/app/login/page-4532a3bbee48e219.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/page-4b6367cde5c04597.js +0 -158
- package/temp/build/pi-desk/release/.next/static/chunks/next/dist/client/components/builtin/app-error-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/next/dist/client/components/builtin/forbidden-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/next/dist/client/components/builtin/unauthorized-dde4fd973791f7f7.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/webpack-735430d61da52e9d.js +0 -1
- package/temp/build/pi-desk/release/.next/static/css/4a5dda7ff3a82c4a.css +0 -1
- /package/temp/build/pi-desk/release/.next/static/{96geGVI-j_dC6I3k-XFCB → YdOQ7klRBI5tJb5NpDVLW}/_ssgManifest.js +0 -0
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
'use client'
|
|
2
|
-
|
|
3
|
-
import { useLayoutEffect, useRef, type RefObject } from 'react'
|
|
4
|
-
import { useReducedMotion } from 'motion/react'
|
|
5
|
-
import { useL4PowerSaving } from '@client/l4_foundation/ui/l4-power-saving'
|
|
6
|
-
|
|
7
|
-
interface ColumnPositions {
|
|
8
|
-
width: number
|
|
9
|
-
leftById: Map<string, number>
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
export function useL2WorkSessionColumnMotion(
|
|
13
|
-
containerRef: RefObject<HTMLDivElement | null>,
|
|
14
|
-
layoutKey: string,
|
|
15
|
-
enabled: boolean
|
|
16
|
-
): void {
|
|
17
|
-
const reducedMotion = useReducedMotion()
|
|
18
|
-
const powerSaving = useL4PowerSaving()
|
|
19
|
-
const previousPositions = useRef<ColumnPositions | null>(null)
|
|
20
|
-
|
|
21
|
-
useLayoutEffect(() => {
|
|
22
|
-
const container = containerRef.current
|
|
23
|
-
if (!container || !enabled || reducedMotion || powerSaving) {
|
|
24
|
-
previousPositions.current = null
|
|
25
|
-
return
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
const panels = Array.from(container.children).filter(
|
|
29
|
-
(element): element is HTMLElement =>
|
|
30
|
-
element instanceof HTMLElement && element.hasAttribute('data-panel')
|
|
31
|
-
)
|
|
32
|
-
// 同样的位置变化也可能来自切换折叠窗口;只有窗口增删才播放位移动画。
|
|
33
|
-
const topologyChanged =
|
|
34
|
-
previousPositions.current !== null &&
|
|
35
|
-
previousPositions.current.leftById.size !== panels.length
|
|
36
|
-
const animations = new Map<HTMLElement, Animation>()
|
|
37
|
-
const cancelAnimations = (): void => {
|
|
38
|
-
for (const animation of animations.values()) animation.cancel()
|
|
39
|
-
animations.clear()
|
|
40
|
-
}
|
|
41
|
-
const observer = new ResizeObserver(() => {
|
|
42
|
-
const previous = previousPositions.current
|
|
43
|
-
const width = container.clientWidth
|
|
44
|
-
const leftById = new Map(panels.map((panel) => [panel.id, panel.offsetLeft]))
|
|
45
|
-
const groupLeft = container.getBoundingClientRect().left
|
|
46
|
-
const visibleLeftById = new Map(
|
|
47
|
-
panels.map((panel) => [
|
|
48
|
-
panel.id,
|
|
49
|
-
animations.has(panel)
|
|
50
|
-
? panel.getBoundingClientRect().left - groupLeft
|
|
51
|
-
: previous?.leftById.get(panel.id)
|
|
52
|
-
])
|
|
53
|
-
)
|
|
54
|
-
const resizing =
|
|
55
|
-
container.matches(':has([data-separator="active"])') ||
|
|
56
|
-
container.parentElement
|
|
57
|
-
?.closest('.pi-desk-workbench-resize-group')
|
|
58
|
-
?.matches(':has([data-separator="active"])')
|
|
59
|
-
cancelAnimations()
|
|
60
|
-
previousPositions.current = { width, leftById }
|
|
61
|
-
if (!topologyChanged || !previous || Math.abs(previous.width - width) > 1 || resizing) {
|
|
62
|
-
return
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
// 尺寸由面板库一次提交;只移动窗口位置,不缩放正文或逐帧重排聊天。
|
|
66
|
-
for (const panel of panels) {
|
|
67
|
-
const oldLeft = visibleLeftById.get(panel.id)
|
|
68
|
-
const delta = oldLeft === undefined ? 0 : oldLeft - panel.offsetLeft
|
|
69
|
-
if (Math.abs(delta) < 1) continue
|
|
70
|
-
const animation = panel.animate(
|
|
71
|
-
[{ transform: `translateX(${delta}px)` }, { transform: 'translateX(0)' }],
|
|
72
|
-
{ duration: 220, easing: 'cubic-bezier(0.22, 1, 0.36, 1)' }
|
|
73
|
-
)
|
|
74
|
-
animations.set(panel, animation)
|
|
75
|
-
animation.onfinish = () => animations.delete(panel)
|
|
76
|
-
}
|
|
77
|
-
})
|
|
78
|
-
observer.observe(container)
|
|
79
|
-
for (const panel of panels) observer.observe(panel)
|
|
80
|
-
container.addEventListener('pointerdown', cancelAnimations, true)
|
|
81
|
-
return () => {
|
|
82
|
-
observer.disconnect()
|
|
83
|
-
container.removeEventListener('pointerdown', cancelAnimations, true)
|
|
84
|
-
cancelAnimations()
|
|
85
|
-
}
|
|
86
|
-
}, [containerRef, enabled, layoutKey, powerSaving, reducedMotion])
|
|
87
|
-
}
|
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
'use client'
|
|
2
|
-
|
|
3
|
-
import { useLayoutEffect, useRef } from 'react'
|
|
4
|
-
import styles from './l3-work-session-visual-effects.module.css'
|
|
5
|
-
|
|
6
|
-
export type L3WorkSessionVisualState = 'running' | 'completed' | 'idle'
|
|
7
|
-
|
|
8
|
-
export function L3WorkSessionStatusBorder({
|
|
9
|
-
state,
|
|
10
|
-
powerSaving
|
|
11
|
-
}: {
|
|
12
|
-
state: L3WorkSessionVisualState
|
|
13
|
-
powerSaving: boolean
|
|
14
|
-
}): React.JSX.Element | null {
|
|
15
|
-
const rectRef = useRef<SVGRectElement>(null)
|
|
16
|
-
|
|
17
|
-
useLayoutEffect(() => {
|
|
18
|
-
const rect = rectRef.current
|
|
19
|
-
if (!rect || powerSaving || state === 'idle') return
|
|
20
|
-
|
|
21
|
-
const length = state === 'completed' ? 30 : 14
|
|
22
|
-
const animation = rect.animate(
|
|
23
|
-
[{ strokeDashoffset: length }, { strokeDashoffset: length - 100 }],
|
|
24
|
-
{ duration: 6000, iterations: Infinity, easing: 'linear' }
|
|
25
|
-
)
|
|
26
|
-
let visible = true
|
|
27
|
-
|
|
28
|
-
const sync = (): void => {
|
|
29
|
-
if (document.hidden || !visible) {
|
|
30
|
-
animation.pause()
|
|
31
|
-
} else {
|
|
32
|
-
// 共用 document.timeline 的零点;新挂载、状态变化和恢复可见都不从头计时。
|
|
33
|
-
animation.play()
|
|
34
|
-
animation.startTime = 0
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
const observer = new IntersectionObserver(([entry]) => {
|
|
38
|
-
visible = entry.isIntersecting
|
|
39
|
-
sync()
|
|
40
|
-
})
|
|
41
|
-
observer.observe(rect)
|
|
42
|
-
document.addEventListener('visibilitychange', sync)
|
|
43
|
-
sync()
|
|
44
|
-
|
|
45
|
-
return () => {
|
|
46
|
-
observer.disconnect()
|
|
47
|
-
document.removeEventListener('visibilitychange', sync)
|
|
48
|
-
animation.cancel()
|
|
49
|
-
}
|
|
50
|
-
}, [powerSaving, state])
|
|
51
|
-
|
|
52
|
-
if (powerSaving || state === 'idle') return null
|
|
53
|
-
|
|
54
|
-
return (
|
|
55
|
-
<svg
|
|
56
|
-
aria-hidden="true"
|
|
57
|
-
focusable="false"
|
|
58
|
-
data-testid="work-session-status-border"
|
|
59
|
-
data-state={state}
|
|
60
|
-
className={styles.statusBorder}
|
|
61
|
-
>
|
|
62
|
-
{/* pathLength 归一化周长;改变线长时向后延伸,前端始终落在统一进度上。 */}
|
|
63
|
-
<rect ref={rectRef} x="1" y="1" pathLength="100" />
|
|
64
|
-
</svg>
|
|
65
|
-
)
|
|
66
|
-
}
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
'use client'
|
|
2
|
-
|
|
3
|
-
import { useSyncExternalStore } from 'react'
|
|
4
|
-
|
|
5
|
-
const STORAGE_KEY = 'pi-desk:power-saving'
|
|
6
|
-
const CHANGE_EVENT = 'pi-desk:power-saving-change'
|
|
7
|
-
let memoryValue: boolean | null = null
|
|
8
|
-
|
|
9
|
-
function readPowerSaving(): boolean {
|
|
10
|
-
if (memoryValue !== null) return memoryValue
|
|
11
|
-
try {
|
|
12
|
-
memoryValue = window.localStorage.getItem(STORAGE_KEY) === 'true'
|
|
13
|
-
} catch {
|
|
14
|
-
memoryValue = false
|
|
15
|
-
}
|
|
16
|
-
return memoryValue
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
function subscribePowerSaving(listener: () => void): () => void {
|
|
20
|
-
const handleStorage = (event: StorageEvent): void => {
|
|
21
|
-
if (event.key !== null && event.key !== STORAGE_KEY) return
|
|
22
|
-
memoryValue = null
|
|
23
|
-
listener()
|
|
24
|
-
}
|
|
25
|
-
window.addEventListener(CHANGE_EVENT, listener)
|
|
26
|
-
window.addEventListener('storage', handleStorage)
|
|
27
|
-
return () => {
|
|
28
|
-
window.removeEventListener(CHANGE_EVENT, listener)
|
|
29
|
-
window.removeEventListener('storage', handleStorage)
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
export function useL4PowerSaving(): boolean {
|
|
34
|
-
return useSyncExternalStore(subscribePowerSaving, readPowerSaving, () => false)
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
export function saveL4PowerSaving(enabled: boolean): void {
|
|
38
|
-
memoryValue = enabled
|
|
39
|
-
try {
|
|
40
|
-
window.localStorage.setItem(STORAGE_KEY, String(enabled))
|
|
41
|
-
} catch (error) {
|
|
42
|
-
console.warn('[Pi Desk][Appearance] 省电模式保存失败,仅当前页面生效', error)
|
|
43
|
-
}
|
|
44
|
-
window.dispatchEvent(new Event(CHANGE_EVENT))
|
|
45
|
-
}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
'use client'
|
|
2
|
-
|
|
3
|
-
import { useLayoutEffect, useRef, type RefObject } from 'react'
|
|
4
|
-
import { useReducedMotion } from 'motion/react'
|
|
5
|
-
import { useL4PowerSaving } from './l4-power-saving'
|
|
6
|
-
|
|
7
|
-
export function useL4WindowReveal(
|
|
8
|
-
elementRef: RefObject<HTMLElement | null>,
|
|
9
|
-
identity: string | null
|
|
10
|
-
): void {
|
|
11
|
-
const reducedMotion = useReducedMotion()
|
|
12
|
-
const powerSaving = useL4PowerSaving()
|
|
13
|
-
const previousIdentity = useRef<string | null>(null)
|
|
14
|
-
|
|
15
|
-
useLayoutEffect(() => {
|
|
16
|
-
const element = elementRef.current
|
|
17
|
-
const changed = previousIdentity.current !== identity
|
|
18
|
-
previousIdentity.current = identity
|
|
19
|
-
if (!element || !identity || !changed || reducedMotion || powerSaving) return
|
|
20
|
-
|
|
21
|
-
const animation = element.animate(
|
|
22
|
-
[
|
|
23
|
-
{ opacity: 0, transform: 'translateY(5px)' },
|
|
24
|
-
{ opacity: 1, transform: 'translateY(0)' }
|
|
25
|
-
],
|
|
26
|
-
{ duration: 200, easing: 'cubic-bezier(0.22, 1, 0.36, 1)' }
|
|
27
|
-
)
|
|
28
|
-
return () => animation.cancel()
|
|
29
|
-
}, [elementRef, identity, powerSaving, reducedMotion])
|
|
30
|
-
}
|