@hienlh/ppm 0.12.7 → 0.12.9

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.
Files changed (70) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/dist/web/assets/{ai-settings-section-BHdBBJtS.js → ai-settings-section-QE6nBNgN.js} +1 -1
  3. package/dist/web/assets/api-client-Dvzcc_EO.js +1 -0
  4. package/dist/web/assets/{api-settings-ByUGHhTB.js → api-settings-DAk7D-NP.js} +1 -1
  5. package/dist/web/assets/{audio-preview-A6ScJemm.js → audio-preview-DnQmf9fu.js} +1 -1
  6. package/dist/web/assets/chat-tab-Cf6T3mGO.js +12 -0
  7. package/dist/web/assets/code-editor-B-lU1fz3.js +8 -0
  8. package/dist/web/assets/{conflict-editor-DQt8Bap3.js → conflict-editor-BYzf3LuW.js} +1 -1
  9. package/dist/web/assets/{database-viewer-C1k-aq-e.js → database-viewer-DjvnIn8p.js} +2 -2
  10. package/dist/web/assets/{diff-viewer-TowzH722.js → diff-viewer-CP2jcR5J.js} +1 -1
  11. package/dist/web/assets/{extension-webview-Cn1x5C5F.js → extension-webview-4xMREn_x.js} +1 -1
  12. package/dist/web/assets/file-store-BrbCNyLm.js +1 -0
  13. package/dist/web/assets/{image-preview-MGnGKiYs.js → image-preview-CkS2PVdQ.js} +1 -1
  14. package/dist/web/assets/index-BTjuH4fn.css +2 -0
  15. package/dist/web/assets/index-FGlF8IWZ.js +23 -0
  16. package/dist/web/assets/{keybindings-store-CThBg3hS.js → keybindings-store-B-zET-0o.js} +1 -1
  17. package/dist/web/assets/keybindings-store-DaBV6qhz.js +1 -0
  18. package/dist/web/assets/{markdown-renderer-DSINJjCx.js → markdown-renderer-Bj2B05Km.js} +1 -1
  19. package/dist/web/assets/{pdf-preview-BiI5Qihn.js → pdf-preview-CCyw5cuH.js} +1 -1
  20. package/dist/web/assets/{port-forwarding-tab-jjdgxhoi.js → port-forwarding-tab-Cebb5Eix.js} +1 -1
  21. package/dist/web/assets/{postgres-viewer-BwXJ-fGk.js → postgres-viewer-BrOiliEv.js} +2 -2
  22. package/dist/web/assets/{settings-store-BMZgnYTp.js → settings-store-BLLR7ed8.js} +2 -2
  23. package/dist/web/assets/settings-tab-D0XjupJm.js +1 -0
  24. package/dist/web/assets/{sql-query-editor-BSHd21AE.js → sql-query-editor-CVAnRFbi.js} +1 -1
  25. package/dist/web/assets/{sqlite-viewer-BPywcOES.js → sqlite-viewer-OEVq_-Po.js} +1 -1
  26. package/dist/web/assets/{terminal-tab-Civ2Yhce.js → terminal-tab-MjmJaQyA.js} +1 -1
  27. package/dist/web/assets/{use-blob-url-BU9hYOj9.js → use-blob-url-e9uTXjv5.js} +1 -1
  28. package/dist/web/assets/{use-monaco-theme-CXs7t0_G.js → use-monaco-theme-BkZDwoVd.js} +1 -1
  29. package/dist/web/assets/{video-preview-Db5TkPSt.js → video-preview-B819qvlp.js} +1 -1
  30. package/dist/web/index.html +8 -8
  31. package/dist/web/sw.js +1 -1
  32. package/docs/journals/260421-lazy-load-file-tree-palette-index.md +125 -0
  33. package/docs/project-changelog.md +13 -1
  34. package/docs/system-architecture.md +79 -1
  35. package/package.json +1 -1
  36. package/src/providers/claude-agent-sdk.ts +23 -0
  37. package/src/server/index.ts +1 -1
  38. package/src/server/routes/files.ts +40 -2
  39. package/src/server/routes/projects.ts +53 -0
  40. package/src/server/routes/settings.ts +50 -1
  41. package/src/services/config.service.ts +41 -0
  42. package/src/services/db.service.ts +57 -1
  43. package/src/services/file-filter.service.ts +121 -0
  44. package/src/services/file-list-index.service.ts +170 -0
  45. package/src/services/file-watcher.service.ts +8 -4
  46. package/src/services/file.service.ts +55 -53
  47. package/src/services/upgrade.service.ts +2 -2
  48. package/src/types/chat.ts +2 -1
  49. package/src/types/project.ts +31 -0
  50. package/src/web/components/chat/file-picker.tsx +0 -13
  51. package/src/web/components/chat/message-input.tsx +11 -14
  52. package/src/web/components/chat/tool-cards.tsx +4 -2
  53. package/src/web/components/explorer/file-tree.tsx +91 -26
  54. package/src/web/components/layout/command-palette.tsx +26 -3
  55. package/src/web/components/settings/files-settings-section.tsx +230 -0
  56. package/src/web/components/settings/glob-list-editor.tsx +121 -0
  57. package/src/web/components/settings/settings-tab.tsx +5 -2
  58. package/src/web/lib/api-client.ts +2 -1
  59. package/src/web/lib/api-files-settings.ts +42 -0
  60. package/src/web/stores/file-store.ts +139 -14
  61. package/src/web/stores/file-tree-merge-helpers.ts +44 -0
  62. package/src/web/stores/jira-store.ts +1 -1
  63. package/dist/web/assets/api-client-CwbMRXYl.js +0 -1
  64. package/dist/web/assets/chat-tab--Rc7WIJp.js +0 -12
  65. package/dist/web/assets/code-editor-DZSUYMBx.js +0 -8
  66. package/dist/web/assets/index-BrAupjGV.css +0 -2
  67. package/dist/web/assets/index-gxtJiPiW.js +0 -23
  68. package/dist/web/assets/keybindings-store-BIQHClUy.js +0 -1
  69. package/dist/web/assets/project-store-IB6pAGQh.js +0 -1
  70. package/dist/web/assets/settings-tab-USIB-LOd.js +0 -1
@@ -1 +0,0 @@
1
- import"./vendor-markdown-0Mxgxy0L.js";import"./api-client-CwbMRXYl.js";import{o as e}from"./keybindings-store-CThBg3hS.js";export{e as useKeybindingsStore};
@@ -1 +0,0 @@
1
- import{t as e}from"./react-GqWghJ-L.js";import{t}from"./api-client-CwbMRXYl.js";var n=`ppm-custom-order`;function r(){try{let e=localStorage.getItem(n);return e?JSON.parse(e):null}catch{return null}}function i(e){try{localStorage.setItem(n,JSON.stringify(e))}catch{}}function a(e,t){if(!t)return[...e];let n=new Map(t.map((e,t)=>[e,t]));return[...e].sort((e,t)=>(n.get(e.name)??1/0)-(n.get(t.name)??1/0))}var o=e((e,n)=>({projects:[],activeProject:null,customOrder:r(),loading:!1,error:null,fetchProjects:async()=>{e({loading:!0,error:null});try{e({projects:await t.get(`/api/projects`),loading:!1})}catch(t){e({error:t instanceof Error?t.message:`Failed to fetch projects`,loading:!1})}},setActiveProject:t=>{e({activeProject:t})},addProject:async(r,i)=>{let a=await t.post(`/api/projects`,{path:r,name:i});await n().fetchProjects();let o=n().projects.find(e=>e.name===(i??a.name)||e.path===r);return o&&e({activeProject:o}),a},setProjectColor:async(e,r)=>{await t.patch(`/api/projects/${encodeURIComponent(e)}/color`,{color:r}),await n().fetchProjects()},moveProject:async(r,o)=>{let{projects:s,customOrder:c}=n(),l=a(s,c),u=l.findIndex(e=>e.name===r);if(u===-1)return;let d=o===`up`?u-1:u+1;if(d<0||d>=l.length)return;let f=l.map(e=>e.name);[f[u],f[d]]=[f[d],f[u]],i(f),await t.patch(`/api/projects/reorder`,{order:f}),e({customOrder:f})},reorderProjects:async n=>{i(n),e({customOrder:n}),await t.patch(`/api/projects/reorder`,{order:n}).catch(()=>{})},renameProject:async(e,r)=>{await t.patch(`/api/projects/${encodeURIComponent(e)}`,{name:r}),await n().fetchProjects()},deleteProject:async n=>{await t.del(`/api/projects/${encodeURIComponent(n)}`),e(e=>{let t=e.projects.filter(e=>e.name!==n),r=e.customOrder?e.customOrder.filter(e=>e!==n):null;return r&&i(r),{projects:t,customOrder:r,activeProject:e.activeProject?.name===n?t[0]??null:e.activeProject}})}}));export{o as n,a as t};
@@ -1 +0,0 @@
1
- import"./vendor-markdown-0Mxgxy0L.js";import"./vendor-ui-B-89Uj8i.js";import"./scroll-area-BEllam7_.js";import"./ai-settings-section-BHdBBJtS.js";import"./dist-D7KGU7Vl.js";import"./input-Dk49gO8E.js";import"./api-client-CwbMRXYl.js";import"./settings-store-BMZgnYTp.js";import"./vendor-mermaid-Dx86tuVP.js";import"./keybindings-store-CThBg3hS.js";import"./extension-store-3yZYn07W.js";import"./api-settings-ByUGHhTB.js";import{s as e}from"./index-gxtJiPiW.js";export{e as SettingsTab};