specrails-desktop 2.32.0 → 2.34.0
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/client/dist/assets/{ActivityFeedPage-DvnFkjVG.js → ActivityFeedPage-DIDxNsDj.js} +1 -1
- package/client/dist/assets/{AgentBrowserCapture-CBjcliD7.js → AgentBrowserCapture-7pJ2G5VY.js} +1 -1
- package/client/dist/assets/AgentModeAnalyticsPane-BSSyTnTM.js +2 -0
- package/client/dist/assets/{AgentModeCodePane-CokuFVdV.js → AgentModeCodePane-DzW6gvDw.js} +2 -2
- package/client/dist/assets/{AgentModeJobsPane-rf_DlWNo.js → AgentModeJobsPane-9wJff15f.js} +1 -1
- package/client/dist/assets/AgentsPage-CIA67psb.js +87 -0
- package/client/dist/assets/AnalyticsPage-C0LwYELz.js +1 -0
- package/client/dist/assets/CodePage-RtKvHmAO.js +2 -0
- package/client/dist/assets/{DesktopAnalyticsPage-gBRVqiw6.js → DesktopAnalyticsPage-BU8Y_Ts1.js} +1 -1
- package/client/dist/assets/{DocsDialog-BzO5dg2B.js → DocsDialog-DIpoaGlQ.js} +1 -1
- package/client/dist/assets/{DocsPage-Db_uxr1j.js → DocsPage-ME47KZpK.js} +1 -1
- package/client/dist/assets/InteractiveJobComposer-BGjIe9R6.js +19 -0
- package/client/dist/assets/{JobDetailModal-DPHh2WOS.js → JobDetailModal-1UZkqH4I.js} +1 -1
- package/client/dist/assets/JobDetailPage-CN65sAf1.js +1 -0
- package/client/dist/assets/JobsPage-f-4dqys7.js +1 -0
- package/client/dist/assets/LoopBuilderPage-WeiofeL6.js +7 -0
- package/client/dist/assets/LoopPreviewModal-DDTnTyH0.js +1 -0
- package/client/dist/assets/LoopsPage-BVNchIex.js +1 -0
- package/client/dist/assets/MinimizedChatsContext-CHsu3NCX.js +1 -0
- package/client/dist/assets/PluginsPage-CdFzGEfQ.js +2 -0
- package/client/dist/assets/ProjectSettingsDialog-BkCXBQWk.js +1 -0
- package/client/dist/assets/TemplatePreviewModal-RDi0khFG.js +1 -0
- package/client/dist/assets/TicketDetailModal-MhJzrqbi.js +14 -0
- package/client/dist/assets/{Trans-B2i5HVcM.js → Trans-CTqw6rr9.js} +1 -1
- package/client/dist/assets/{addspec-DhmnXER8.js → addspec-A1lDQa4M.js} +1 -1
- package/client/dist/assets/{addspec-BRlk8jON.js → addspec-BHZd0N5F.js} +1 -1
- package/client/dist/assets/{addspec-CHW9xf_X.js → addspec-BPpZ_olp.js} +1 -1
- package/client/dist/assets/{addspec-Di41DpYV.js → addspec-B_TPJt-R.js} +1 -1
- package/client/dist/assets/{addspec-4WmLJmBG.js → addspec-CLYLvaVP.js} +1 -1
- package/client/dist/assets/{addspec-C7XRejU4.js → addspec-CQBjzt24.js} +1 -1
- package/client/dist/assets/{addspec-x3mizDxc.js → addspec-D2YIQ0GU.js} +1 -1
- package/client/dist/assets/{addspec-DTmRrWrF.js → addspec-iFdQ6D99.js} +1 -1
- package/client/dist/assets/agent-Bd-q3Wqp.js +1 -0
- package/client/dist/assets/agent-BlvdW4Hv.js +1 -0
- package/client/dist/assets/agent-C-KQhxeM.js +1 -0
- package/client/dist/assets/agent-Ca15w5eu.js +1 -0
- package/client/dist/assets/agent-D6fKaoMd.js +1 -0
- package/client/dist/assets/agent-HFMYMTbB.js +1 -0
- package/client/dist/assets/agent-QIEbkBjg.js +1 -0
- package/client/dist/assets/agent-mTCsAbCl.js +1 -0
- package/client/dist/assets/agentstudio-BNUth0uj.js +1 -0
- package/client/dist/assets/agentstudio-BNdB5hkr.js +1 -0
- package/client/dist/assets/agentstudio-C7-bt8FO.js +1 -0
- package/client/dist/assets/agentstudio-C8uNchpV.js +1 -0
- package/client/dist/assets/agentstudio-CKabyMlg.js +1 -0
- package/client/dist/assets/agentstudio-CN2pokQu.js +1 -0
- package/client/dist/assets/agentstudio-DR7doNBV.js +1 -0
- package/client/dist/assets/agentstudio-y2dVDXeM.js +1 -0
- package/client/dist/assets/{analytics-C9RaQcE3.js → analytics-47pYygtV.js} +1 -1
- package/client/dist/assets/{analytics-B8Qtptbl.js → analytics-B0vt1g5U.js} +1 -1
- package/client/dist/assets/analytics-BMzCvrCU.js +1 -0
- package/client/dist/assets/{analytics-BPptRY4f.js → analytics-BlFN3Zwx.js} +1 -1
- package/client/dist/assets/{analytics-BxDGOIwf.js → analytics-CZYzL-nR.js} +1 -1
- package/client/dist/assets/{analytics-D_OZdQ9O.js → analytics-DAsb9MJ8.js} +1 -1
- package/client/dist/assets/{analytics-CJIwqrEl.js → analytics-FXQlQ2Yt.js} +1 -1
- package/client/dist/assets/{analytics-We6lUMI8.js → analytics-RnFCNkah.js} +1 -1
- package/client/dist/assets/{builder-CWYPw7Cw.js → builder-0IWtosUm.js} +1 -1
- package/client/dist/assets/{builder-CX1437hF.js → builder-Bf2N6XWn.js} +1 -1
- package/client/dist/assets/{builder-BiUG9Z5K.js → builder-BnqaaBkT.js} +1 -1
- package/client/dist/assets/{builder-CGRz_-zP.js → builder-BxxfGgAO.js} +1 -1
- package/client/dist/assets/{builder-DwDexYRE.js → builder-C5IIgWsq.js} +1 -1
- package/client/dist/assets/builder-CHuahItu.js +1 -0
- package/client/dist/assets/{builder-Cowk9jtL.js → builder-CjWosXL_.js} +1 -1
- package/client/dist/assets/{builder-3bygQtZi.js → builder-CpCIOoKj.js} +1 -1
- package/client/dist/assets/dashboard-BHRqsGCV.js +1 -0
- package/client/dist/assets/dashboard-Bfr90vOl.js +1 -0
- package/client/dist/assets/dashboard-CTsM8x3m.js +1 -0
- package/client/dist/assets/dashboard-CqC6wX0h.js +1 -0
- package/client/dist/assets/dashboard-CuZtAszc.js +1 -0
- package/client/dist/assets/dashboard-DAcqIc-n.js +1 -0
- package/client/dist/assets/dashboard-DekiV-86.js +1 -0
- package/client/dist/assets/dashboard-DoDczc5S.js +1 -0
- package/client/dist/assets/{dist-js-CkTZKBF9.js → dist-js-BmsFWRly.js} +1 -1
- package/client/dist/assets/{dist-js-ClShHcGa.js → dist-js-J5W_N5ng.js} +1 -1
- package/client/dist/assets/{formatDistanceToNow-BjGwPf6I.js → formatDistanceToNow-BOuXgebD.js} +1 -1
- package/client/dist/assets/{getTimezoneOffsetInMilliseconds-CSCbUI4W.js → getTimezoneOffsetInMilliseconds-EjGOpn4b.js} +1 -1
- package/client/dist/assets/{i18n-Ch-Db_x2.js → i18n-nJQvD5zJ.js} +2 -2
- package/client/dist/assets/index-C_sdsSZt.js +63 -0
- package/client/dist/assets/index-DCN5QbDm.css +2 -0
- package/client/dist/assets/{jira-BySfUuQZ.js → jira-BNZu8f9O.js} +1 -1
- package/client/dist/assets/{jira-gAvOyije.js → jira-BOoaUXbb.js} +1 -1
- package/client/dist/assets/{jira-pRaL7JQo.js → jira-BYVN4L2u.js} +1 -1
- package/client/dist/assets/jira-CKJg3HZd.js +1 -0
- package/client/dist/assets/{jira-Byw2C0F8.js → jira-DDDsZ4ub.js} +1 -1
- package/client/dist/assets/{jira-D38Gj7AT.js → jira-DXwYjVE4.js} +1 -1
- package/client/dist/assets/{jira-D11gPhxz.js → jira-Dn6U2nRW.js} +1 -1
- package/client/dist/assets/{jira-api-BgFIr8eD.js → jira-api-Bhixwn-d.js} +1 -1
- package/client/dist/assets/{jira-CNeYi06w.js → jira-j7hVolR5.js} +1 -1
- package/client/dist/assets/nav-ApJVg3xu.js +1 -0
- package/client/dist/assets/nav-BKNky1Bg.js +1 -0
- package/client/dist/assets/nav-C6vWWKYx.js +1 -0
- package/client/dist/assets/nav-CXJ6Aw89.js +1 -0
- package/client/dist/assets/nav-CsmFBIDf.js +1 -0
- package/client/dist/assets/nav-DjkmQJjd.js +1 -0
- package/client/dist/assets/nav-iwjCg5FR.js +1 -0
- package/client/dist/assets/nav-pYuXq7sf.js +1 -0
- package/client/dist/assets/{provider-capabilities-BvoExILy.js → provider-capabilities-Doej9lfa.js} +1 -1
- package/client/dist/assets/setup-3jWaoVUO.js +1 -0
- package/client/dist/assets/setup-BjgRneb2.js +1 -0
- package/client/dist/assets/setup-BzFIjv-f.js +1 -0
- package/client/dist/assets/setup-C4VfQsxE.js +1 -0
- package/client/dist/assets/setup-DfUkpDbN.js +1 -0
- package/client/dist/assets/setup-ECe90Pmu.js +1 -0
- package/client/dist/assets/setup-dlqC4Jmm.js +1 -0
- package/client/dist/assets/setup-jwfLMiM2.js +1 -0
- package/client/dist/assets/{spending-Dq43JYmD.js → spending-BpYPsevQ.js} +1 -1
- package/client/dist/assets/tickets-B4rjuSYi.js +1 -0
- package/client/dist/assets/tickets-Bc71ce1C.js +1 -0
- package/client/dist/assets/tickets-CLg7VTJ8.js +1 -0
- package/client/dist/assets/tickets-CP9U1GJt.js +1 -0
- package/client/dist/assets/tickets-CZNBiHbq.js +1 -0
- package/client/dist/assets/tickets-DlX2mEkD.js +1 -0
- package/client/dist/assets/tickets-W6pBmbrX.js +1 -0
- package/client/dist/assets/tickets-_yKvCt4Y.js +1 -0
- package/client/dist/assets/{useBrowserCaptureSession-TTO8vHtd.js → useBrowserCaptureSession-BBXBN0Na.js} +1 -1
- package/client/dist/assets/useDesktop-B6Du2N83.js +1 -0
- package/client/dist/assets/{useSharedWebSocket-DaPh7QBL.js → useSharedWebSocket-DK96ctb7.js} +1 -1
- package/client/dist/index.html +24 -24
- package/docs/guide/de/getting-started/3-adding-your-first-project.md +13 -32
- package/docs/guide/de/integrations/1-ai-providers.md +27 -16
- package/docs/guide/en/getting-started/3-adding-your-first-project.md +8 -27
- package/docs/guide/en/integrations/1-ai-providers.md +21 -18
- package/docs/guide/es/getting-started/3-adding-your-first-project.md +12 -31
- package/docs/guide/es/integrations/1-ai-providers.md +24 -16
- package/docs/guide/fr/getting-started/3-adding-your-first-project.md +15 -34
- package/docs/guide/fr/integrations/1-ai-providers.md +25 -16
- package/docs/guide/it/getting-started/3-adding-your-first-project.md +16 -35
- package/docs/guide/it/integrations/1-ai-providers.md +25 -16
- package/docs/guide/ja/getting-started/3-adding-your-first-project.md +16 -35
- package/docs/guide/ja/integrations/1-ai-providers.md +7 -12
- package/docs/guide/pt/getting-started/3-adding-your-first-project.md +15 -34
- package/docs/guide/pt/integrations/1-ai-providers.md +24 -16
- package/docs/guide/zh/getting-started/3-adding-your-first-project.md +18 -37
- package/docs/guide/zh/integrations/1-ai-providers.md +7 -12
- package/docs/internals/project-builder.md +11 -6
- package/package.json +1 -1
- package/server/dist/ai-invocations.js +35 -0
- package/server/dist/blueprint-commit.js +1 -1
- package/server/dist/desktop-db.js +22 -1
- package/server/dist/desktop-router.js +132 -43
- package/server/dist/framework-reseed.js +144 -0
- package/server/dist/index.js +41 -2
- package/server/dist/jira/jira-sync-manager.js +49 -2
- package/server/dist/jira-router.js +21 -0
- package/server/dist/job-phase-breakdown.js +132 -0
- package/server/dist/legacy-migration.js +395 -0
- package/server/dist/loop-executors.js +5 -1
- package/server/dist/offline-assemble.js +32 -4
- package/server/dist/pr-body.js +13 -0
- package/server/dist/project-router-jobs.js +16 -0
- package/server/dist/project-router-spending.js +11 -1
- package/server/dist/provider-detection.js +222 -0
- package/server/dist/provider-selection.js +71 -19
- package/server/dist/queue-manager.js +4 -0
- package/server/dist/rail-pr-decision.js +10 -0
- package/server/dist/rails-router.js +11 -0
- package/server/dist/rails-store.js +5 -1
- package/server/dist/repo-map.js +293 -0
- package/server/dist/setup-manager.js +57 -0
- package/server/dist/spending.js +45 -0
- package/client/dist/assets/AgentsPage-B648IzGI.js +0 -87
- package/client/dist/assets/AnalyticsPage-0rBoULPX.js +0 -1
- package/client/dist/assets/CodePage-ju302Vl7.js +0 -2
- package/client/dist/assets/InteractiveJobComposer-_jmsE_Az.js +0 -19
- package/client/dist/assets/JobDetailPage-7nwHyHGV.js +0 -1
- package/client/dist/assets/JobsPage-C_6YrcmE.js +0 -1
- package/client/dist/assets/LoopBuilderPage-DJ1UPDwL.js +0 -7
- package/client/dist/assets/LoopPreviewModal-12cUnljK.js +0 -1
- package/client/dist/assets/LoopsPage-CHYK0Xjr.js +0 -1
- package/client/dist/assets/MinimizedChatsContext-Gt6KQySM.js +0 -1
- package/client/dist/assets/PluginsPage-E59oQmwc.js +0 -2
- package/client/dist/assets/ProjectSettingsDialog-DQTLQ7ie.js +0 -1
- package/client/dist/assets/TemplatePreviewModal-nXUcDgfk.js +0 -1
- package/client/dist/assets/TicketDetailModal-C-tHW-2s.js +0 -14
- package/client/dist/assets/agent-BKsuIgIT.js +0 -1
- package/client/dist/assets/agent-Bs9NilfI.js +0 -1
- package/client/dist/assets/agent-C23h684q.js +0 -1
- package/client/dist/assets/agent-CqEjy3Z2.js +0 -1
- package/client/dist/assets/agent-D5DZTks1.js +0 -1
- package/client/dist/assets/agent-DE8hUYPl.js +0 -1
- package/client/dist/assets/agent-DsTuJGSc.js +0 -1
- package/client/dist/assets/agent-DwZM05-x.js +0 -1
- package/client/dist/assets/agentstudio-8TQqBenW.js +0 -1
- package/client/dist/assets/agentstudio-B8Z_mmEX.js +0 -1
- package/client/dist/assets/agentstudio-BZR9YmLs.js +0 -1
- package/client/dist/assets/agentstudio-Bge9pAWb.js +0 -1
- package/client/dist/assets/agentstudio-Bz169Vzt.js +0 -1
- package/client/dist/assets/agentstudio-D6L2jpNi.js +0 -1
- package/client/dist/assets/agentstudio-K2-Z7CL0.js +0 -1
- package/client/dist/assets/agentstudio-Zmgzthv8.js +0 -1
- package/client/dist/assets/analytics-BHqUazhP.js +0 -1
- package/client/dist/assets/builder-skfnZ1uC.js +0 -1
- package/client/dist/assets/dashboard-BVq6kRJe.js +0 -1
- package/client/dist/assets/dashboard-BaKPPmLH.js +0 -1
- package/client/dist/assets/dashboard-Bm8e4zYG.js +0 -1
- package/client/dist/assets/dashboard-Bt6IesnM.js +0 -1
- package/client/dist/assets/dashboard-C_NQZle_.js +0 -1
- package/client/dist/assets/dashboard-CyZKoGoI.js +0 -1
- package/client/dist/assets/dashboard-HIUdUBQ0.js +0 -1
- package/client/dist/assets/dashboard-pm4Mr229.js +0 -1
- package/client/dist/assets/index-Bz0TeGRs.css +0 -2
- package/client/dist/assets/index-kCUcnT8G.js +0 -77
- package/client/dist/assets/jira-CmKWERE0.js +0 -1
- package/client/dist/assets/nav-BHDiSIVu.js +0 -1
- package/client/dist/assets/nav-CMiYAq4i.js +0 -1
- package/client/dist/assets/nav-CqS7NrDW.js +0 -1
- package/client/dist/assets/nav-D-0M7xfv.js +0 -1
- package/client/dist/assets/nav-D65O6u9I.js +0 -1
- package/client/dist/assets/nav-D_LKYvBr.js +0 -1
- package/client/dist/assets/nav-FDTJmU79.js +0 -1
- package/client/dist/assets/nav-VaB-C4k5.js +0 -1
- package/client/dist/assets/setup-BBiHEO7h.js +0 -1
- package/client/dist/assets/setup-BlTWhNIQ.js +0 -1
- package/client/dist/assets/setup-Bp2L_oiP.js +0 -1
- package/client/dist/assets/setup-CInYXp1-.js +0 -1
- package/client/dist/assets/setup-CYH3bP6K.js +0 -1
- package/client/dist/assets/setup-DwcQ921P.js +0 -1
- package/client/dist/assets/setup-PBLjuDSs.js +0 -1
- package/client/dist/assets/setup-bx6FtoBp.js +0 -1
- package/client/dist/assets/tickets-BL9r1G0e.js +0 -1
- package/client/dist/assets/tickets-B_NyHJ8f.js +0 -1
- package/client/dist/assets/tickets-BarF1wuG.js +0 -1
- package/client/dist/assets/tickets-CclVhpQA.js +0 -1
- package/client/dist/assets/tickets-CqqOHbli.js +0 -1
- package/client/dist/assets/tickets-DCkFSiqt.js +0 -1
- package/client/dist/assets/tickets-Djn3ccfT.js +0 -1
- package/client/dist/assets/tickets-MiHBPsy_.js +0 -1
- package/client/dist/assets/useDesktop-DUvS4fuP.js +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={critical:`Critica`,high:`Alta`,medium:`Media`,low:`Bassa`},t={todo:`Da fare`,inProgress:`In corso`,done:`Completato`,cancelled:`Annullato`},n={manual:`Creato manualmente`,productBacklog:`Dal product backlog`,proposeSpec:`Da proposta di spec`,getBacklogSpecs:`Dalle spec del backlog`,freePrompt:`Da prompt Raw`},r={title:`Titolo`,description:`Descrizione`,status:`Stato`,priority:`Priorità`,labels:`Etichette`,markdownPlaceholder:`Descrizione in Markdown...`,supportsMarkdown:`Supporta Markdown`},i={createdAgo:`Creato {{time}}`,updatedAgo:`Aggiornato {{time}}`},a=`Senza titolo`,o={title:`Elimina ticket`,body:`Vuoi davvero eliminare <strong>#{{id}} {{title}}</strong>? Questa azione è irreversibile.`},s={toast:{updated:`Ticket aggiornato`,updateFailed:`Impossibile aggiornare il ticket`,deleteFailed:`Impossibile eliminare il ticket`},compare:`Confronta`,compareTooltip:`Confronta con un'altra spec`,doneEditing:`Fine modifica`,addDescription:`Aggiungi una descrizione...`,prerequisites:`Prerequisiti`,addLabel:`Aggiungi etichetta`,addLabelPlaceholder:`Aggiungi etichetta...`,effort:`Effort`,assignee:`Assegnatario`,continueEditing:`Continua a modificare`,ticketFallbackLabel:`Ticket #{{id}}`},c={title:`Contract Layer`,populated:`{{n}}/5 compilate`},l={moveToRail:`Sposta su un rail`,removeFromRail:`Rimuovi dal rail`,currentlyOn:`Attualmente su {{rail}}`,popoverTitle:`Sposta su un rail`,noRails:`Nessun rail disponibile.`},u={ariaLabel:`Azioni ticket`,deleteTicket:`Elimina ticket`,changeStatus:`Cambia stato`,statusOptions:`Opzioni di stato`,setPriority:`Imposta priorità`,priorityOptions:`Opzioni di priorità`},d={list:`Vista elenco`,grid:`Vista griglia (Kanban)`,postit:`Vista post-it`},f={title:`Crea ticket`,titlePlaceholder:`Titolo del ticket...`,labelsPlaceholder:`Digita per aggiungere etichette...`,create:`Crea`,creating:`Creazione...`,toast:{created:`Ticket creato`,createFailed:`Impossibile creare il ticket`}},p={title:`Confronta con…`,count:`({{n}} spec)`,searchPlaceholder:`Cerca tra le spec…`,noMatches:`Nessuna spec corrispondente`,empty:`Nessun'altra spec da confrontare`},m={ariaLabel:`Vedi la spesa del ticket in Analytics`,turns_one:`{{count}} turno`,turns_other:`{{count}} turni`,active:`{{duration}} di attività`,breakdownItem:`{{n}} {{label}}`,estimatedTooltip:`Stimato dalla tabella prezzi locale — questo provider non riporta il costo in modo nativo.`,costUnavailableTooltip:`Nessuna invocazione di questo ticket ha esposto telemetria dei costi.`,costPartiallyUnavailableTooltip:`Solo subtotale dei costi noti; alcune invocazioni non hanno esposto il costo.`,turnsUnavailableTooltip:`La telemetria dei turn non è disponibile per questo ticket.`,turnsPartiallyUnavailableTooltip:`Solo subtotale dei turn noti; alcune invocazioni non hanno esposto la telemetria dei turn.`},h={newTicket:`Nuovo ticket: {{title}}`,newTicketsAdded_one:`{{count}} nuovo ticket aggiunto dalla product discovery`,newTicketsAdded_other:`{{count}} nuovi ticket aggiunti dalla product discovery`},g={priority:e,ticketStatus:t,source:n,fields:r,meta:i,untitled:a,deleteDialog:o,detailModal:s,contractLayer:c,rail:l,contextMenu:u,viewMode:d,createModal:f,comparePicker:p,spendingLine:m,toasts:h};export{p as comparePicker,u as contextMenu,c as contractLayer,f as createModal,g as default,o as deleteDialog,s as detailModal,r as fields,i as meta,e as priority,l as rail,n as source,m as spendingLine,t as ticketStatus,h as toasts,a as untitled,d as viewMode};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={critical:`Crítica`,high:`Alta`,medium:`Media`,low:`Baja`},t={todo:`Por hacer`,inProgress:`En curso`,done:`Hecho`,cancelled:`Cancelado`},n={manual:`Creado manualmente`,productBacklog:`Desde el product backlog`,proposeSpec:`Desde una propuesta de spec`,getBacklogSpecs:`Desde specs del backlog`,freePrompt:`Desde un prompt Raw`},r={title:`Título`,description:`Descripción`,status:`Estado`,priority:`Prioridad`,labels:`Etiquetas`,markdownPlaceholder:`Descripción en Markdown...`,supportsMarkdown:`Admite Markdown`},i={createdAgo:`Creado {{time}}`,updatedAgo:`Actualizado {{time}}`},a=`Sin título`,o={title:`Eliminar ticket`,body:`¿Seguro que quieres eliminar <strong>#{{id}} {{title}}</strong>? Esta acción no se puede deshacer.`},s={toast:{updated:`Ticket actualizado`,updateFailed:`No se pudo actualizar el ticket`,deleteFailed:`No se pudo eliminar el ticket`},compare:`Comparar`,compareTooltip:`Comparar con otra spec`,doneEditing:`Terminar edición`,addDescription:`Añadir una descripción...`,prerequisites:`Requisitos previos`,addLabel:`Añadir etiqueta`,addLabelPlaceholder:`Añadir etiqueta...`,effort:`Esfuerzo`,assignee:`Asignado a`,continueEditing:`Seguir editando`,ticketFallbackLabel:`Ticket #{{id}}`},c={title:`Contract Layer`,populated:`{{n}}/5 con contenido`},l={moveToRail:`Mover a un rail`,removeFromRail:`Quitar del rail`,currentlyOn:`Actualmente en {{rail}}`,popoverTitle:`Mover a un rail`,noRails:`No hay rails disponibles.`},u={ariaLabel:`Acciones del ticket`,deleteTicket:`Eliminar ticket`,changeStatus:`Cambiar estado`,statusOptions:`Opciones de estado`,setPriority:`Establecer prioridad`,priorityOptions:`Opciones de prioridad`},d={list:`Vista de lista`,grid:`Vista de cuadrícula (Kanban)`,postit:`Vista post-it`},f={title:`Crear ticket`,titlePlaceholder:`Título del ticket...`,labelsPlaceholder:`Escribe para añadir etiquetas...`,create:`Crear`,creating:`Creando...`,toast:{created:`Ticket creado`,createFailed:`No se pudo crear el ticket`}},p={title:`Comparar con…`,count:`({{n}} specs)`,searchPlaceholder:`Buscar specs…`,noMatches:`Ninguna spec coincide`,empty:`No hay otras specs para comparar`},m={ariaLabel:`Ver el gasto del ticket en Analíticas`,turns_one:`{{count}} turno`,turns_other:`{{count}} turnos`,active:`{{duration}} activo`,breakdownItem:`{{n}} {{label}}`,estimatedTooltip:`Estimado a partir de la tabla de precios local — este proveedor no informa el coste de forma nativa.`,costUnavailableTooltip:`Ninguna invocación de este ticket expuso telemetría de coste.`,costPartiallyUnavailableTooltip:`Solo subtotal de coste conocido; algunas invocaciones no expusieron telemetría.`,turnsUnavailableTooltip:`La telemetría de turnos no está disponible para este ticket.`,turnsPartiallyUnavailableTooltip:`Solo subtotal de turnos conocido; algunas invocaciones no expusieron telemetría.`},h={newTicket:`Nuevo ticket: {{title}}`,newTicketsAdded_one:`{{count}} ticket nuevo añadido desde product discovery`,newTicketsAdded_other:`{{count}} tickets nuevos añadidos desde product discovery`},g={priority:e,ticketStatus:t,source:n,fields:r,meta:i,untitled:a,deleteDialog:o,detailModal:s,contractLayer:c,rail:l,contextMenu:u,viewMode:d,createModal:f,comparePicker:p,spendingLine:m,toasts:h};export{p as comparePicker,u as contextMenu,c as contractLayer,f as createModal,g as default,o as deleteDialog,s as detailModal,r as fields,i as meta,e as priority,l as rail,n as source,m as spendingLine,t as ticketStatus,h as toasts,a as untitled,d as viewMode};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={critical:`Kritisch`,high:`Hoch`,medium:`Mittel`,low:`Niedrig`},t={todo:`To-do`,inProgress:`In Arbeit`,done:`Fertig`,cancelled:`Abgebrochen`},n={manual:`Manuell erstellt`,productBacklog:`Aus dem Product-Backlog`,proposeSpec:`Aus einem Spec-Vorschlag`,getBacklogSpecs:`Aus Backlog-Specs`,freePrompt:`Aus Raw-Prompt`},r={title:`Titel`,description:`Beschreibung`,status:`Status`,priority:`Priorität`,labels:`Labels`,markdownPlaceholder:`Markdown-Beschreibung…`,supportsMarkdown:`Unterstützt Markdown`},i={createdAgo:`Erstellt {{time}}`,updatedAgo:`Aktualisiert {{time}}`},a=`Unbenannt`,o={title:`Ticket löschen`,body:`Möchtest du <strong>#{{id}} {{title}}</strong> wirklich löschen? Diese Aktion kann nicht rückgängig gemacht werden.`},s={toast:{updated:`Ticket aktualisiert`,updateFailed:`Ticket konnte nicht aktualisiert werden`,deleteFailed:`Ticket konnte nicht gelöscht werden`},compare:`Vergleichen`,compareTooltip:`Mit einer anderen Spec vergleichen`,doneEditing:`Bearbeitung abschließen`,addDescription:`Beschreibung hinzufügen…`,prerequisites:`Voraussetzungen`,addLabel:`Label hinzufügen`,addLabelPlaceholder:`Label hinzufügen…`,effort:`Aufwand`,assignee:`Zugewiesen an`,continueEditing:`Weiter bearbeiten`,ticketFallbackLabel:`Ticket #{{id}}`},c={title:`Contract Layer`,populated:`{{n}}/5 befüllt`},l={moveToRail:`Auf Rail verschieben`,removeFromRail:`Von Rail entfernen`,currentlyOn:`Aktuell auf {{rail}}`,popoverTitle:`Auf Rail verschieben`,noRails:`Keine Rails verfügbar.`},u={ariaLabel:`Ticket-Aktionen`,deleteTicket:`Ticket löschen`,changeStatus:`Status ändern`,statusOptions:`Statusoptionen`,setPriority:`Priorität festlegen`,priorityOptions:`Prioritätsoptionen`},d={list:`Listenansicht`,grid:`Rasteransicht (Kanban)`,postit:`Post-it-Ansicht`},f={title:`Ticket erstellen`,titlePlaceholder:`Ticket-Titel…`,labelsPlaceholder:`Tippen, um Labels hinzuzufügen…`,create:`Erstellen`,creating:`Wird erstellt…`,toast:{created:`Ticket erstellt`,createFailed:`Ticket konnte nicht erstellt werden`}},p={title:`Vergleichen mit…`,count:`({{n}} Specs)`,searchPlaceholder:`Specs durchsuchen…`,noMatches:`Keine passenden Specs`,empty:`Keine anderen Specs zum Vergleichen`},m={ariaLabel:`Ticket-Ausgaben in Analytics anzeigen`,turns_one:`{{count}} Turn`,turns_other:`{{count}} Turns`,active:`{{duration}} aktiv`,breakdownItem:`{{n}} {{label}}`,estimatedTooltip:`Geschätzt aus der lokalen Preistabelle — dieser Anbieter meldet die Kosten nicht nativ.`,costUnavailableTooltip:`Keiner der Aufrufe dieses Tickets hat Kostentelemetrie bereitgestellt.`,costPartiallyUnavailableTooltip:`Nur bekannte Kosten-Zwischensumme; einige Aufrufe haben keine Kostentelemetrie bereitgestellt.`,turnsUnavailableTooltip:`Die Turn-Telemetrie ist für dieses Ticket nicht verfügbar.`,turnsPartiallyUnavailableTooltip:`Nur bekannte Turn-Zwischensumme; einige Aufrufe haben keine Turn-Telemetrie bereitgestellt.`},h={newTicket:`Neues Ticket: {{title}}`,newTicketsAdded_one:`{{count}} neues Ticket aus der Produkt-Discovery hinzugefügt`,newTicketsAdded_other:`{{count}} neue Tickets aus der Produkt-Discovery hinzugefügt`},g={priority:e,ticketStatus:t,source:n,fields:r,meta:i,untitled:a,deleteDialog:o,detailModal:s,contractLayer:c,rail:l,contextMenu:u,viewMode:d,createModal:f,comparePicker:p,spendingLine:m,toasts:h};export{p as comparePicker,u as contextMenu,c as contractLayer,f as createModal,g as default,o as deleteDialog,s as detailModal,r as fields,i as meta,e as priority,l as rail,n as source,m as spendingLine,t as ticketStatus,h as toasts,a as untitled,d as viewMode};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={critical:`Crítica`,high:`Alta`,medium:`Média`,low:`Baixa`},t={todo:`Por fazer`,inProgress:`Em curso`,done:`Concluído`,cancelled:`Cancelado`},n={manual:`Criado manualmente`,productBacklog:`Do product backlog`,proposeSpec:`De proposta de spec`,getBacklogSpecs:`De specs do backlog`,freePrompt:`De prompt Raw`},r={title:`Título`,description:`Descrição`,status:`Estado`,priority:`Prioridade`,labels:`Etiquetas`,markdownPlaceholder:`Descrição em Markdown...`,supportsMarkdown:`Suporta Markdown`},i={createdAgo:`Criado {{time}}`,updatedAgo:`Atualizado {{time}}`},a=`Sem título`,o={title:`Eliminar ticket`,body:`Tem a certeza de que quer eliminar <strong>#{{id}} {{title}}</strong>? Esta ação não pode ser anulada.`},s={toast:{updated:`Ticket atualizado`,updateFailed:`Falha ao atualizar o ticket`,deleteFailed:`Falha ao eliminar o ticket`},compare:`Comparar`,compareTooltip:`Comparar com outra spec`,doneEditing:`Terminar edição`,addDescription:`Adicionar uma descrição...`,prerequisites:`Pré-requisitos`,addLabel:`Adicionar etiqueta`,addLabelPlaceholder:`Adicionar etiqueta...`,effort:`Esforço`,assignee:`Responsável`,continueEditing:`Continuar a editar`,ticketFallbackLabel:`Ticket #{{id}}`},c={title:`Contract Layer`,populated:`{{n}}/5 preenchidas`},l={moveToRail:`Mover para um rail`,removeFromRail:`Remover do rail`,currentlyOn:`Atualmente em {{rail}}`,popoverTitle:`Mover para um rail`,noRails:`Nenhum rail disponível.`},u={ariaLabel:`Ações do ticket`,deleteTicket:`Eliminar ticket`,changeStatus:`Alterar estado`,statusOptions:`Opções de estado`,setPriority:`Definir prioridade`,priorityOptions:`Opções de prioridade`},d={list:`Vista de lista`,grid:`Vista de grelha (Kanban)`,postit:`Vista de post-its`},f={title:`Criar ticket`,titlePlaceholder:`Título do ticket...`,labelsPlaceholder:`Escreva para adicionar etiquetas...`,create:`Criar`,creating:`A criar...`,toast:{created:`Ticket criado`,createFailed:`Falha ao criar o ticket`}},p={title:`Comparar com…`,count:`({{n}} specs)`,searchPlaceholder:`Pesquisar specs…`,noMatches:`Nenhuma spec corresponde`,empty:`Não há outras specs para comparar`},m={ariaLabel:`Ver os gastos do ticket em Analytics`,turns_one:`{{count}} turno`,turns_other:`{{count}} turnos`,active:`{{duration}} ativo`,breakdownItem:`{{n}} {{label}}`,estimatedTooltip:`Estimado a partir da tabela de preços local — este provedor não informa o custo nativamente.`,costUnavailableTooltip:`Nenhuma invocação deste ticket forneceu telemetria de custo.`,costPartiallyUnavailableTooltip:`Apenas o subtotal conhecido de custo; algumas invocações não forneceram telemetria de custo.`,turnsUnavailableTooltip:`A telemetria de turnos está indisponível para este ticket.`,turnsPartiallyUnavailableTooltip:`Apenas o subtotal conhecido de turnos; algumas invocações não forneceram telemetria de turnos.`},h={newTicket:`Novo ticket: {{title}}`,newTicketsAdded_one:`{{count}} novo ticket adicionado a partir da descoberta de produto`,newTicketsAdded_other:`{{count}} novos tickets adicionados a partir da descoberta de produto`},g={priority:e,ticketStatus:t,source:n,fields:r,meta:i,untitled:a,deleteDialog:o,detailModal:s,contractLayer:c,rail:l,contextMenu:u,viewMode:d,createModal:f,comparePicker:p,spendingLine:m,toasts:h};export{p as comparePicker,u as contextMenu,c as contractLayer,f as createModal,g as default,o as deleteDialog,s as detailModal,r as fields,i as meta,e as priority,l as rail,n as source,m as spendingLine,t as ticketStatus,h as toasts,a as untitled,d as viewMode};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as e}from"./rolldown-runtime-CNC7AqOf.js";var t=e({comparePicker:()=>h,contextMenu:()=>f,contractLayer:()=>u,createModal:()=>m,default:()=>v,deleteDialog:()=>c,detailModal:()=>l,fields:()=>a,meta:()=>o,priority:()=>n,rail:()=>d,source:()=>i,spendingLine:()=>g,ticketStatus:()=>r,toasts:()=>_,untitled:()=>s,viewMode:()=>p}),n={critical:`Critical`,high:`High`,medium:`Medium`,low:`Low`},r={todo:`Todo`,inProgress:`In Progress`,done:`Done`,cancelled:`Cancelled`},i={manual:`Created manually`,productBacklog:`From product backlog`,proposeSpec:`From spec proposal`,getBacklogSpecs:`From backlog specs`,freePrompt:`From Raw prompt`},a={title:`Title`,description:`Description`,status:`Status`,priority:`Priority`,labels:`Labels`,markdownPlaceholder:`Markdown description...`,supportsMarkdown:`Supports markdown`},o={createdAgo:`Created {{time}}`,updatedAgo:`Updated {{time}}`},s=`Untitled`,c={title:`Delete ticket`,body:`Are you sure you want to delete <strong>#{{id}} {{title}}</strong>? This action cannot be undone.`},l={toast:{updated:`Ticket updated`,updateFailed:`Failed to update ticket`,deleteFailed:`Failed to delete ticket`},compare:`Compare`,compareTooltip:`Compare with another spec`,doneEditing:`Done editing`,addDescription:`Add a description...`,prerequisites:`Prerequisites`,addLabel:`Add label`,addLabelPlaceholder:`Add label...`,effort:`Effort`,assignee:`Assignee`,continueEditing:`Continue Editing`,ticketFallbackLabel:`Ticket #{{id}}`},u={title:`Contract Layer`,populated:`{{n}}/5 populated`},d={moveToRail:`Move to Rail`,removeFromRail:`Remove from Rail`,currentlyOn:`Currently on {{rail}}`,popoverTitle:`Move to rail`,noRails:`No rails available.`},f={ariaLabel:`Ticket actions`,deleteTicket:`Delete ticket`,changeStatus:`Change status`,statusOptions:`Status options`,setPriority:`Set priority`,priorityOptions:`Priority options`},p={list:`List view`,grid:`Grid view (Kanban)`,postit:`Post-it view`},m={title:`Create Ticket`,titlePlaceholder:`Ticket title...`,labelsPlaceholder:`Type to add labels...`,create:`Create`,creating:`Creating...`,toast:{created:`Ticket created`,createFailed:`Failed to create ticket`}},h={title:`Compare with…`,count:`({{n}} specs)`,searchPlaceholder:`Search specs…`,noMatches:`No matching specs`,empty:`No other specs to compare`},g={ariaLabel:`View ticket spending in Analytics`,turns_one:`{{count}} turn`,turns_other:`{{count}} turns`,active:`{{duration}} active`,breakdownItem:`{{n}} {{label}}`,estimatedTooltip:`Estimated from the local pricing table — this provider does not report cost natively.`,costUnavailableTooltip:`None of this ticket's invocations exposed cost telemetry.`,costPartiallyUnavailableTooltip:`Known cost subtotal only; some invocations did not expose cost telemetry.`,turnsUnavailableTooltip:`Turn telemetry is unavailable for this ticket.`,turnsPartiallyUnavailableTooltip:`Known turn subtotal only; some invocations did not expose turn telemetry.`},_={newTicket:`New ticket: {{title}}`,newTicketsAdded_one:`{{count}} new ticket added from product discovery`,newTicketsAdded_other:`{{count}} new tickets added from product discovery`},v={priority:n,ticketStatus:r,source:i,fields:a,meta:o,untitled:s,deleteDialog:c,detailModal:l,contractLayer:u,rail:d,contextMenu:f,viewMode:p,createModal:m,comparePicker:h,spendingLine:g,toasts:_};export{t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={critical:`Critique`,high:`Haute`,medium:`Moyenne`,low:`Basse`},t={todo:`À faire`,inProgress:`En cours`,done:`Terminé`,cancelled:`Annulé`},n={manual:`Créé manuellement`,productBacklog:`Depuis le product backlog`,proposeSpec:`Depuis une proposition de spec`,getBacklogSpecs:`Depuis les specs du backlog`,freePrompt:`Depuis un prompt Raw`},r={title:`Titre`,description:`Description`,status:`Statut`,priority:`Priorité`,labels:`Labels`,markdownPlaceholder:`Description en Markdown…`,supportsMarkdown:`Markdown pris en charge`},i={createdAgo:`Créé {{time}}`,updatedAgo:`Mis à jour {{time}}`},a=`Sans titre`,o={title:`Supprimer le ticket`,body:`Voulez-vous vraiment supprimer <strong>#{{id}} {{title}}</strong> ? Cette action est irréversible.`},s={toast:{updated:`Ticket mis à jour`,updateFailed:`Échec de la mise à jour du ticket`,deleteFailed:`Échec de la suppression du ticket`},compare:`Comparer`,compareTooltip:`Comparer avec une autre spec`,doneEditing:`Terminer l'édition`,addDescription:`Ajouter une description…`,prerequisites:`Prérequis`,addLabel:`Ajouter un label`,addLabelPlaceholder:`Ajouter un label…`,effort:`Effort`,assignee:`Assigné à`,continueEditing:`Continuer l'édition`,ticketFallbackLabel:`Ticket #{{id}}`},c={title:`Contract Layer`,populated:`{{n}}/5 renseignés`},l={moveToRail:`Déplacer vers un rail`,removeFromRail:`Retirer du rail`,currentlyOn:`Actuellement sur {{rail}}`,popoverTitle:`Déplacer vers un rail`,noRails:`Aucun rail disponible.`},u={ariaLabel:`Actions du ticket`,deleteTicket:`Supprimer le ticket`,changeStatus:`Changer le statut`,statusOptions:`Options de statut`,setPriority:`Définir la priorité`,priorityOptions:`Options de priorité`},d={list:`Vue liste`,grid:`Vue grille (Kanban)`,postit:`Vue post-it`},f={title:`Créer un ticket`,titlePlaceholder:`Titre du ticket…`,labelsPlaceholder:`Saisissez pour ajouter des labels…`,create:`Créer`,creating:`Création…`,toast:{created:`Ticket créé`,createFailed:`Échec de la création du ticket`}},p={title:`Comparer avec…`,count:`({{n}} specs)`,searchPlaceholder:`Rechercher des specs…`,noMatches:`Aucune spec correspondante`,empty:`Aucune autre spec à comparer`},m={ariaLabel:`Voir les dépenses du ticket dans Analytics`,turns_one:`{{count}} tour`,turns_other:`{{count}} tours`,active:`{{duration}} actif`,breakdownItem:`{{n}} {{label}}`,estimatedTooltip:`Estimé à partir de la table de tarifs locale — ce fournisseur ne signale pas le coût de manière native.`,costUnavailableTooltip:`Aucune invocation de ce ticket n'a exposé de télémétrie de coût.`,costPartiallyUnavailableTooltip:`Sous-total des coûts connus uniquement ; certaines invocations n'ont pas exposé leur coût.`,turnsUnavailableTooltip:`La télémétrie des tours est indisponible pour ce ticket.`,turnsPartiallyUnavailableTooltip:`Sous-total des tours connus uniquement ; certaines invocations n'ont pas exposé leur télémétrie des tours.`},h={newTicket:`Nouveau ticket : {{title}}`,newTicketsAdded_one:`{{count}} nouveau ticket ajouté depuis la product discovery`,newTicketsAdded_other:`{{count}} nouveaux tickets ajoutés depuis la product discovery`},g={priority:e,ticketStatus:t,source:n,fields:r,meta:i,untitled:a,deleteDialog:o,detailModal:s,contractLayer:c,rail:l,contextMenu:u,viewMode:d,createModal:f,comparePicker:p,spendingLine:m,toasts:h};export{p as comparePicker,u as contextMenu,c as contractLayer,f as createModal,g as default,o as deleteDialog,s as detailModal,r as fields,i as meta,e as priority,l as rail,n as source,m as spendingLine,t as ticketStatus,h as toasts,a as untitled,d as viewMode};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={critical:`紧急`,high:`高`,medium:`中`,low:`低`},t={todo:`待办`,inProgress:`进行中`,done:`完成`,cancelled:`已取消`},n={manual:`手动创建`,productBacklog:`来自产品 backlog`,proposeSpec:`来自 spec 提案`,getBacklogSpecs:`来自 backlog spec`,freePrompt:`来自 Raw prompt`},r={title:`标题`,description:`描述`,status:`状态`,priority:`优先级`,labels:`标签`,markdownPlaceholder:`Markdown 描述…`,supportsMarkdown:`支持 Markdown`},i={createdAgo:`创建于 {{time}}`,updatedAgo:`更新于 {{time}}`},a=`未命名`,o={title:`删除工单`,body:`确定要删除 <strong>#{{id}} {{title}}</strong> 吗?此操作无法撤销。`},s={toast:{updated:`工单已更新`,updateFailed:`更新工单失败`,deleteFailed:`删除工单失败`},compare:`对比`,compareTooltip:`与另一个 spec 对比`,doneEditing:`完成编辑`,addDescription:`添加描述…`,prerequisites:`前置条件`,addLabel:`添加标签`,addLabelPlaceholder:`添加标签…`,effort:`工作量`,assignee:`负责人`,continueEditing:`继续编辑`,ticketFallbackLabel:`工单 #{{id}}`},c={title:`Contract Layer`,populated:`已填充 {{n}}/5`},l={moveToRail:`放入 Rail`,removeFromRail:`从 Rail 移除`,currentlyOn:`当前位于 {{rail}}`,popoverTitle:`放入 rail`,noRails:`没有可用的 rail。`},u={ariaLabel:`工单操作`,deleteTicket:`删除工单`,changeStatus:`更改状态`,statusOptions:`状态选项`,setPriority:`设置优先级`,priorityOptions:`优先级选项`},d={list:`列表视图`,grid:`网格视图(看板)`,postit:`便签视图`},f={title:`创建工单`,titlePlaceholder:`工单标题…`,labelsPlaceholder:`输入以添加标签…`,create:`创建`,creating:`正在创建…`,toast:{created:`工单已创建`,createFailed:`创建工单失败`}},p={title:`选择对比对象…`,count:`({{n}} 个 spec)`,searchPlaceholder:`搜索 spec…`,noMatches:`没有匹配的 spec`,empty:`没有其他可对比的 spec`},m={ariaLabel:`在分析页查看此工单的支出`,turns_one:`{{count}} 轮`,turns_other:`{{count}} 轮`,active:`活跃 {{duration}}`,breakdownItem:`{{n}} {{label}}`,estimatedTooltip:`根据本地价格表估算 — 此提供商不原生报告成本。`,costUnavailableTooltip:`此工单的所有调用均未提供成本遥测数据。`,costPartiallyUnavailableTooltip:`仅显示已知成本小计;部分调用未提供成本遥测数据。`,turnsUnavailableTooltip:`此工单的轮次遥测数据不可用。`,turnsPartiallyUnavailableTooltip:`仅显示已知轮次小计;部分调用未提供轮次遥测数据。`},h={newTicket:`新工单:{{title}}`,newTicketsAdded_one:`已从产品发现新增 {{count}} 个工单`,newTicketsAdded_other:`已从产品发现新增 {{count}} 个工单`},g={priority:e,ticketStatus:t,source:n,fields:r,meta:i,untitled:a,deleteDialog:o,detailModal:s,contractLayer:c,rail:l,contextMenu:u,viewMode:d,createModal:f,comparePicker:p,spendingLine:m,toasts:h};export{p as comparePicker,u as contextMenu,c as contractLayer,f as createModal,g as default,o as deleteDialog,s as detailModal,r as fields,i as meta,e as priority,l as rail,n as source,m as spendingLine,t as ticketStatus,h as toasts,a as untitled,d as viewMode};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={critical:`クリティカル`,high:`高`,medium:`中`,low:`低`},t={todo:`Todo`,inProgress:`進行中`,done:`完了`,cancelled:`キャンセル`},n={manual:`手動で作成`,productBacklog:`プロダクトバックログから`,proposeSpec:`スペック提案から`,getBacklogSpecs:`バックログスペックから`,freePrompt:`Raw プロンプトから`},r={title:`タイトル`,description:`説明`,status:`ステータス`,priority:`優先度`,labels:`ラベル`,markdownPlaceholder:`Markdown で説明...`,supportsMarkdown:`Markdown 対応`},i={createdAgo:`{{time}}に作成`,updatedAgo:`{{time}}に更新`},a=`無題`,o={title:`チケットを削除`,body:`<strong>#{{id}} {{title}}</strong> を削除してもよろしいですか?この操作は元に戻せません。`},s={toast:{updated:`チケットを更新しました`,updateFailed:`チケットの更新に失敗しました`,deleteFailed:`チケットの削除に失敗しました`},compare:`比較`,compareTooltip:`別のスペックと比較`,doneEditing:`編集を終了`,addDescription:`説明を追加...`,prerequisites:`前提条件`,addLabel:`ラベルを追加`,addLabelPlaceholder:`ラベルを追加...`,effort:`工数`,assignee:`担当者`,continueEditing:`編集を続ける`,ticketFallbackLabel:`チケット #{{id}}`},c={title:`Contract Layer`,populated:`{{n}}/5 件入力済み`},l={moveToRail:`レールに移動`,removeFromRail:`レールから削除`,currentlyOn:`現在 {{rail}} 上にあります`,popoverTitle:`レールに移動`,noRails:`利用可能なレールがありません。`},u={ariaLabel:`チケット操作`,deleteTicket:`チケットを削除`,changeStatus:`ステータスを変更`,statusOptions:`ステータスオプション`,setPriority:`優先度を設定`,priorityOptions:`優先度オプション`},d={list:`リスト表示`,grid:`グリッド表示(カンバン)`,postit:`付箋表示`},f={title:`チケットを作成`,titlePlaceholder:`チケットのタイトル...`,labelsPlaceholder:`入力してラベルを追加...`,create:`作成`,creating:`作成中...`,toast:{created:`チケットを作成しました`,createFailed:`チケットの作成に失敗しました`}},p={title:`比較対象を選択…`,count:`(スペック {{n}} 件)`,searchPlaceholder:`スペックを検索…`,noMatches:`一致するスペックはありません`,empty:`比較できる他のスペックはありません`},m={ariaLabel:`アナリティクスでチケットの支出を表示`,turns_one:`{{count}} ターン`,turns_other:`{{count}} ターン`,active:`アクティブ {{duration}}`,breakdownItem:`{{n}} {{label}}`,estimatedTooltip:`ローカルの料金表からの推定値 — このプロバイダーはコストをネイティブに報告しません。`,costUnavailableTooltip:`このチケットの呼び出しではコストのテレメトリが提供されませんでした。`,costPartiallyUnavailableTooltip:`既知のコスト小計のみです。一部の呼び出しではコストのテレメトリが提供されませんでした。`,turnsUnavailableTooltip:`このチケットではターンのテレメトリを利用できません。`,turnsPartiallyUnavailableTooltip:`既知のターン小計のみです。一部の呼び出しではターンのテレメトリが提供されませんでした。`},h={newTicket:`新しいチケット: {{title}}`,newTicketsAdded_one:`プロダクトディスカバリーから {{count}} 件の新しいチケットを追加しました`,newTicketsAdded_other:`プロダクトディスカバリーから {{count}} 件の新しいチケットを追加しました`},g={priority:e,ticketStatus:t,source:n,fields:r,meta:i,untitled:a,deleteDialog:o,detailModal:s,contractLayer:c,rail:l,contextMenu:u,viewMode:d,createModal:f,comparePicker:p,spendingLine:m,toasts:h};export{p as comparePicker,u as contextMenu,c as contractLayer,f as createModal,g as default,o as deleteDialog,s as detailModal,r as fields,i as meta,e as priority,l as rail,n as source,m as spendingLine,t as ticketStatus,h as toasts,a as untitled,d as viewMode};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as e}from"./rolldown-runtime-CNC7AqOf.js";import{n as t,t as n}from"./jsx-runtime-zu2_FqZY.js";import{o as r}from"./i18n-Ch-Db_x2.js";import{n as i}from"./dist-bVqfYmby.js";import{a}from"./auth-D_5bQv5W.js";import{n as o}from"./useSharedWebSocket-DaPh7QBL.js";import{n as s}from"./api-B2M7CtDw.js";var c=e(t(),1),l=new Map;function u(e,t){return`${e}:${t}`}function d(e){return(e instanceof Error?e.message:e==null?``:String(e)).trim()||`Request failed`}function f(e){if(!e)return;let t=`${e}:`;for(let e of l.keys())e.startsWith(t)&&l.delete(e)}function p({namespace:e,projectId:t,initialValue:n,fetcher:r,pollInterval:i=0}){let a=t?u(t,e):null,[o,s]=(0,c.useState)(()=>a&&l.has(a)?l.get(a):n),[f,p]=(0,c.useState)(()=>!a||!l.has(a)),[m,h]=(0,c.useState)(f),[g,_]=(0,c.useState)(null),v=(0,c.useRef)(r);v.current=r;let y=(0,c.useRef)(n);y.current=n;let b=(0,c.useRef)(a);b.current=a;let x=(0,c.useRef)(0),S=(0,c.useRef)(null),C=(0,c.useCallback)(async(e,t,n)=>{let r=++x.current;S.current?.abort();let i=new AbortController;S.current=i,n&&b.current===e&&(h(!0),_(null));try{let n=await v.current({projectId:t,signal:i.signal});if(i.signal.aborted||r!==x.current)return;l.set(e,n),b.current===e&&(s(n),_(null))}catch(t){if(i.signal.aborted||r!==x.current)return;b.current===e&&_(d(t))}finally{r===x.current&&(S.current===i&&(S.current=null),b.current===e&&(h(!1),p(!1)))}},[]);return(0,c.useEffect)(()=>{if(x.current+=1,S.current?.abort(),S.current=null,_(null),!a||!t){s(y.current),p(!0),h(!1);return}let e=l.has(a);e?(s(l.get(a)),p(!1),h(!1)):(s(y.current),p(!0),h(!0)),C(a,t,!e);let n;return i>0&&(n=setInterval(()=>{C(a,t,!1)},i)),()=>{x.current+=1,S.current?.abort(),S.current=null,n&&clearInterval(n)}},[a,t,i,C]),{data:o,isLoading:m,isFirstLoad:f,error:g,refresh:(0,c.useCallback)(async()=>{!a||!t||await C(a,t,!0)},[a,t,C])}}var m=n();function h(e){return e.providers&&e.providers.length>0?e.providers:[e.provider]}var g=(0,c.createContext)(null),_=`specrails-desktop:activeProjectId`;function v(e){try{e?localStorage.setItem(_,e):localStorage.removeItem(_)}catch{}}function y(){try{return localStorage.getItem(_)}catch{return null}}function b({children:e}){let[t,n]=(0,c.useState)([]),[l,u]=(0,c.useState)(null),[d,p]=(0,c.useState)(!0),[h,_]=(0,c.useState)(!1),[b,x]=(0,c.useState)(new Set),S=(0,c.useRef)(null),C=(0,c.useRef)(new Set),w=(0,c.useCallback)(e=>{v(e),s(e),u(t=>(t!==null&&t!==e&&(S.current&&clearTimeout(S.current),_(!0),S.current=setTimeout(()=>_(!1),400)),e))},[]),{registerHandler:T,unregisterHandler:E}=o();(0,c.useEffect)(()=>{async function e(){try{let e=await fetch(`${a}/api/projects`);if(!e.ok)return;let t=await e.json();n(t.projects),t.setupProjectIds&&t.setupProjectIds.length>0&&x(new Set(t.setupProjectIds))}catch{}finally{p(!1)}}e()},[]);let D=(0,c.useCallback)(e=>{let t=e;if(typeof t.type==`string`){if(t.type===`desktop.projects`){if(!Array.isArray(t.projects))return;let e=t.projects;n(e),u(t=>{let n;if(t&&e.find(e=>e.id===t))n=t;else{let t=y();n=t&&e.find(e=>e.id===t)?t:e.length>0?e[0].id:null}return v(n),s(n),n}),p(!1)}else if(t.type===`desktop.project_added`){let e=t.project;n(t=>t.find(t=>t.id===e.id)?t:[...t,e]),C.current.has(e.id)?C.current.delete(e.id):(i.success(r.t(`nav:projects.added`,{name:e.name})),w(e.id))}else if(t.type===`desktop.project_removed`){let e=t.projectId;i.success(r.t(`nav:projects.removed`)),f(e),n(t=>t.filter(t=>t.id!==e)),u(t=>t===e?(v(null),s(null),null):t)}}},[]);(0,c.useLayoutEffect)(()=>(T(`desktop`,D),()=>E(`desktop`)),[D,T,E]);let O=(0,c.useCallback)(async(e,t,r=[`claude`])=>{try{let i={path:e,providers:r.length>0?r:[`claude`]};t&&(i.name=t);let a=await fetch(`/api/projects`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(i)});if(!a.ok){let e=await a.json();throw Error(e.error??`HTTP ${a.status}`)}let o=await a.json();return C.current.add(o.project.id),n(e=>e.find(e=>e.id===o.project.id)?e:[...e,o.project]),w(o.project.id),o}catch(e){throw console.error(`[useDesktop] addProject error:`,e),e}},[w]),k=(0,c.useCallback)(async e=>{try{let t=await fetch(`${a}/api/projects/${e}`,{method:`DELETE`});if(!t.ok){let e=await t.json();throw Error(e.error??`HTTP ${t.status}`)}f(e),n(t=>t.filter(t=>t.id!==e)),x(t=>{if(!t.has(e))return t;let n=new Set(t);return n.delete(e),n}),u(t=>t===e?(v(null),s(null),null):t)}catch(e){throw console.error(`[useDesktop] removeProject error:`,e),e}},[]),A=(0,c.useCallback)(e=>{x(t=>new Set([...t,e]))},[]),j=(0,c.useCallback)(e=>{x(t=>{let n=new Set(t);return n.delete(e),n})},[]),M=(0,c.useMemo)(()=>({projects:t,activeProjectId:l,setActiveProjectId:w,addProject:O,removeProject:k,isLoading:d,isSwitchingProject:h,setupProjectIds:b,startSetupWizard:A,completeSetupWizard:j}),[t,l,w,O,k,d,h,b,A,j]);return(0,m.jsx)(g.Provider,{value:M,children:e})}var x={projects:[],activeProjectId:null,setActiveProjectId:()=>{},addProject:async()=>null,removeProject:async()=>{},isLoading:!1,isSwitchingProject:!1,setupProjectIds:new Set,startSetupWizard:()=>{},completeSetupWizard:()=>{}};function S(){return(0,c.useContext)(g)??x}export{p as i,h as n,S as r,b as t};
|