@jmfederico/pi-web 1.202606.0 → 1.202606.2

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 (95) hide show
  1. package/README.md +23 -7
  2. package/dist/client/assets/{CodeViewer-N88Bx8F6.js → CodeViewer-iYSv2-dg.js} +1 -1
  3. package/dist/client/assets/{TerminalPanel-DKiL51Xi.js → TerminalPanel-BpFW6j27.js} +4 -4
  4. package/dist/client/assets/index-D4dbiKXF.js +2210 -0
  5. package/dist/client/index.html +1 -1
  6. package/dist/config.js +63 -1
  7. package/dist/config.js.map +1 -1
  8. package/dist/pi-web-plugins/info/pi-web-plugin.js +8 -1
  9. package/dist/pi-web-plugins/updates/package.json +9 -0
  10. package/dist/pi-web-plugins/{pi-web → updates}/pi-web-plugin.js +38 -30
  11. package/dist/pi-web-plugins/workspace-tasks/config.js +91 -0
  12. package/dist/pi-web-plugins/workspace-tasks/package.json +9 -0
  13. package/dist/pi-web-plugins/workspace-tasks/pi-web-plugin.js +48 -0
  14. package/dist/pi-web-plugins/workspace-tasks/taskRunner.js +12 -0
  15. package/dist/pi-web-plugins/workspace-tasks/tasksPanelElement.js +292 -0
  16. package/dist/pi-web-plugins/workspace-tasks/workspaceTasksClient.js +47 -0
  17. package/dist/plugin-api/unstable.d.ts +22 -0
  18. package/dist/plugin-api.d.ts +169 -0
  19. package/dist/server/app.js +63 -26
  20. package/dist/server/app.js.map +1 -1
  21. package/dist/server/configRoutes.js +123 -0
  22. package/dist/server/configRoutes.js.map +1 -0
  23. package/dist/server/git/gitEnv.js +15 -0
  24. package/dist/server/git/gitEnv.js.map +1 -0
  25. package/dist/server/git/gitService.js +2 -1
  26. package/dist/server/git/gitService.js.map +1 -1
  27. package/dist/server/gitRoutes.js +3 -3
  28. package/dist/server/gitRoutes.js.map +1 -1
  29. package/dist/server/machines/machineClient.js +134 -0
  30. package/dist/server/machines/machineClient.js.map +1 -0
  31. package/dist/server/machines/machinePluginProxyRoutes.js +187 -0
  32. package/dist/server/machines/machinePluginProxyRoutes.js.map +1 -0
  33. package/dist/server/machines/machineProxyRoutes.js +92 -0
  34. package/dist/server/machines/machineProxyRoutes.js.map +1 -0
  35. package/dist/server/machines/machineRoutes.js +56 -0
  36. package/dist/server/machines/machineRoutes.js.map +1 -0
  37. package/dist/server/machines/machineService.js +260 -0
  38. package/dist/server/machines/machineService.js.map +1 -0
  39. package/dist/server/machines/machineStore.js +128 -0
  40. package/dist/server/machines/machineStore.js.map +1 -0
  41. package/dist/server/piWebPluginService.js +45 -15
  42. package/dist/server/piWebPluginService.js.map +1 -1
  43. package/dist/server/piWebStatus.js +127 -36
  44. package/dist/server/piWebStatus.js.map +1 -1
  45. package/dist/server/piWebStatusCache.js +32 -0
  46. package/dist/server/piWebStatusCache.js.map +1 -0
  47. package/dist/server/sessiond/sessionProxyRoutes.js +17 -14
  48. package/dist/server/sessiond/sessionProxyRoutes.js.map +1 -1
  49. package/dist/server/sessiond.js +18 -7
  50. package/dist/server/sessiond.js.map +1 -1
  51. package/dist/server/sessions/piSessionManagerGateway.js +87 -0
  52. package/dist/server/sessions/piSessionManagerGateway.js.map +1 -0
  53. package/dist/server/sessions/piSessionService.js +147 -66
  54. package/dist/server/sessions/piSessionService.js.map +1 -1
  55. package/dist/server/sessions/sessionArchiveStore.js +12 -0
  56. package/dist/server/sessions/sessionArchiveStore.js.map +1 -1
  57. package/dist/server/sessions/sessionNameGenerator.js +2 -0
  58. package/dist/server/sessions/sessionNameGenerator.js.map +1 -1
  59. package/dist/server/sessions/sessionRoutes.js +126 -43
  60. package/dist/server/sessions/sessionRoutes.js.map +1 -1
  61. package/dist/server/terminalProxyRoutes.js +20 -10
  62. package/dist/server/terminalProxyRoutes.js.map +1 -1
  63. package/dist/server/terminals/terminalRoutes.js +11 -0
  64. package/dist/server/terminals/terminalRoutes.js.map +1 -1
  65. package/dist/server/terminals/terminalService.js +6 -0
  66. package/dist/server/terminals/terminalService.js.map +1 -1
  67. package/dist/server/workspaceExplorerRoutes.js +4 -4
  68. package/dist/server/workspaceExplorerRoutes.js.map +1 -1
  69. package/dist/server/workspaces/fileSuggestions.js +98 -17
  70. package/dist/server/workspaces/fileSuggestions.js.map +1 -1
  71. package/dist/server/workspaces/gitWorktreeDiscovery.js +3 -2
  72. package/dist/server/workspaces/gitWorktreeDiscovery.js.map +1 -1
  73. package/dist/server/workspaces/workspaceDeletionRoutes.js +113 -0
  74. package/dist/server/workspaces/workspaceDeletionRoutes.js.map +1 -0
  75. package/dist/shared/apiTypes.d.ts +498 -0
  76. package/dist/shared/apiTypes.js +3 -1
  77. package/dist/shared/apiTypes.js.map +1 -1
  78. package/dist/shared/capabilities.js +25 -0
  79. package/dist/shared/capabilities.js.map +1 -0
  80. package/dist/shared/federatedRoutes.js +61 -0
  81. package/dist/shared/federatedRoutes.js.map +1 -0
  82. package/dist/shared/machinePluginIds.js +41 -0
  83. package/dist/shared/machinePluginIds.js.map +1 -0
  84. package/dist/shared/piWebStatusParsing.js +43 -0
  85. package/dist/shared/piWebStatusParsing.js.map +1 -1
  86. package/dist/shared/pluginIds.js +5 -0
  87. package/dist/shared/pluginIds.js.map +1 -0
  88. package/dist/shared/workspaceDeletion.js +12 -0
  89. package/dist/shared/workspaceDeletion.js.map +1 -0
  90. package/docs/plugins.md +278 -71
  91. package/package.json +8 -12
  92. package/plugin-api/unstable.d.ts +1 -0
  93. package/plugin-api.d.ts +1 -148
  94. package/dist/client/assets/index-DeSR1RUE.js +0 -1446
  95. package/dist/pi-web-plugins/pi-web/package.json +0 -9
package/plugin-api.d.ts CHANGED
@@ -1,148 +1 @@
1
- import type { TemplateResult } from "lit";
2
-
3
- export type PluginId = string;
4
- export type LocalContributionId = string;
5
- export type QualifiedContributionId = string;
6
- export type HtmlTemplateTag = (strings: TemplateStringsArray, ...values: unknown[]) => TemplateResult;
7
-
8
- export interface PiWebPlugin {
9
- apiVersion: 1;
10
- name: string;
11
- activate: (context: PluginActivationContext) => PluginActivationResult;
12
- }
13
-
14
- export interface PluginActivationContext {
15
- apiVersion: 1;
16
- pluginId: PluginId;
17
- html: HtmlTemplateTag;
18
- }
19
-
20
- export interface PluginActivationResult {
21
- contributions: PluginContributions;
22
- }
23
-
24
- export interface PluginContributions {
25
- actions?: PluginAction[];
26
- workspacePanels?: WorkspacePanelContribution[];
27
- workspaceLabels?: WorkspaceLabelContribution[];
28
- themes?: ThemeContribution[];
29
- themePairs?: ThemePairContribution[];
30
- }
31
-
32
- export interface PluginRuntimeState {
33
- selectedWorkspace?: Workspace;
34
- selectedSession?: unknown;
35
- workspaceTool?: string;
36
- mainView?: string;
37
- piWebStatus?: unknown;
38
- }
39
-
40
- export interface PluginRuntimeContext {
41
- state: PluginRuntimeState;
42
- openActionPalette: () => void;
43
- focusPrompt: () => void;
44
- addProject: () => void | Promise<void>;
45
- configureAuth: () => void | Promise<void>;
46
- logoutAuth: () => void | Promise<void>;
47
- openThemePicker: () => void;
48
- selectMainView: (view: string) => void;
49
- selectWorkspaceTool: (tool: QualifiedContributionId) => void;
50
- openTerminal: (options?: { terminalId?: string | undefined }) => void;
51
- refreshFiles: () => void | Promise<void>;
52
- refreshGit: () => void | Promise<void>;
53
- refreshAppData: () => void | Promise<void>;
54
- reloadPage: () => void;
55
- startSession: () => void | Promise<void>;
56
- archiveSession: () => void | Promise<void>;
57
- stopActiveWork: () => void | Promise<void>;
58
- }
59
-
60
- export interface PluginAction {
61
- id: LocalContributionId;
62
- title: string;
63
- description?: string;
64
- shortcut?: string;
65
- group?: string;
66
- enabled?: (context: PluginRuntimeContext) => boolean;
67
- run: (context: PluginRuntimeContext) => void | Promise<void>;
68
- }
69
-
70
- export interface Workspace {
71
- id: string;
72
- projectId: string;
73
- path: string;
74
- label: string;
75
- branch?: string;
76
- isMain: boolean;
77
- isGitRepo: boolean;
78
- isGitWorktree: boolean;
79
- }
80
-
81
- export interface WorkspacePanelContext {
82
- workspace: Workspace;
83
- state?: PluginRuntimeState;
84
- openTerminal: (options?: { terminalId?: string | undefined }) => void;
85
- }
86
-
87
- export interface WorkspacePanelContribution {
88
- id: LocalContributionId;
89
- title: string;
90
- order?: number;
91
- visible?: (context: WorkspacePanelContext) => boolean;
92
- badge?: (context: WorkspacePanelContext) => string | number | TemplateResult | undefined;
93
- render: (context: WorkspacePanelContext) => TemplateResult;
94
- }
95
-
96
- export interface WorkspaceLabelContext {
97
- workspace: Workspace;
98
- state?: PluginRuntimeState;
99
- }
100
-
101
- export type WorkspaceLabelItem = WorkspaceLabelTextItem | WorkspaceLabelLinkItem | WorkspaceLabelRenderItem;
102
-
103
- export interface WorkspaceLabelTextItem {
104
- type: "text";
105
- text: string;
106
- title?: string;
107
- }
108
-
109
- export interface WorkspaceLabelLinkItem {
110
- type: "link";
111
- text: string;
112
- href: string;
113
- title?: string;
114
- target?: "_blank" | "_self";
115
- }
116
-
117
- export interface WorkspaceLabelRenderItem {
118
- type: "render";
119
- render: () => TemplateResult;
120
- }
121
-
122
- export interface WorkspaceLabelContribution {
123
- id: LocalContributionId;
124
- order?: number;
125
- visible?: (context: WorkspaceLabelContext) => boolean;
126
- items: (context: WorkspaceLabelContext) => WorkspaceLabelItem[];
127
- }
128
-
129
- export type ThemeColorScheme = "dark" | "light";
130
- export type ThemeTokens = Record<string, string>;
131
-
132
- export interface ThemeContribution {
133
- id: LocalContributionId;
134
- name: string;
135
- description?: string;
136
- order?: number;
137
- colorScheme: ThemeColorScheme;
138
- tokens: ThemeTokens;
139
- }
140
-
141
- export interface ThemePairContribution {
142
- id: LocalContributionId;
143
- name: string;
144
- description?: string;
145
- order?: number;
146
- light: LocalContributionId;
147
- dark: LocalContributionId;
148
- }
1
+ export * from "./dist/plugin-api.js";