@openforge-app/plugin-sdk 0.1.0 → 0.2.3

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 (97) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +32 -0
  3. package/dist/browserSurfaces.d.ts +78 -0
  4. package/dist/browserSurfaces.js +17 -0
  5. package/dist/browserSurfacesTesting.d.ts +60 -0
  6. package/dist/browserSurfacesTesting.js +240 -0
  7. package/dist/domain.d.ts +74 -15
  8. package/dist/domain.js +5 -1
  9. package/dist/fileIcons.d.ts +6 -0
  10. package/dist/fileIcons.js +84 -0
  11. package/dist/frontend.d.ts +5 -2
  12. package/dist/frontend.js +1 -0
  13. package/dist/index.d.ts +5 -3
  14. package/dist/index.js +2 -1
  15. package/dist/manifest.d.ts +29 -0
  16. package/dist/manifest.js +37 -0
  17. package/dist/markdown.d.ts +5 -1
  18. package/dist/markdown.js +67 -18
  19. package/dist/openforgePackageMetadataSchema.json +40 -1
  20. package/dist/pluginIcons.d.ts +7 -0
  21. package/dist/pluginIcons.js +104 -0
  22. package/dist/publicUiExports.d.mts +16 -0
  23. package/dist/publicUiExports.mjs +59 -0
  24. package/dist/svelteHostRuntimeContract.d.mts +1 -0
  25. package/dist/svelteHostRuntimeContract.mjs +16 -0
  26. package/dist/testing/backendServicesFake.d.ts +19 -0
  27. package/dist/testing/backendServicesFake.js +87 -0
  28. package/dist/testing/commonApiFake.d.ts +22 -0
  29. package/dist/testing/commonApiFake.js +274 -0
  30. package/dist/testing/contracts.d.ts +231 -0
  31. package/dist/testing/contracts.js +1 -0
  32. package/dist/testing/frontendContributionFake.d.ts +36 -0
  33. package/dist/testing/frontendContributionFake.js +195 -0
  34. package/dist/testing/registryFake.d.ts +40 -0
  35. package/dist/testing/registryFake.js +124 -0
  36. package/dist/testing/support.d.ts +40 -0
  37. package/dist/testing/support.js +242 -0
  38. package/dist/testing.d.ts +3 -223
  39. package/dist/testing.js +2 -625
  40. package/dist/types.d.ts +193 -7
  41. package/dist/types.js +8 -0
  42. package/dist/ui/Button.svelte +49 -0
  43. package/dist/ui/Checkbox.svelte +137 -0
  44. package/dist/ui/FileTypeIcon.svelte +37 -0
  45. package/dist/ui/MarkdownContent.svelte +71 -11
  46. package/dist/ui/Modal.svelte +157 -0
  47. package/dist/ui/PluginPageHeader.svelte +26 -0
  48. package/dist/ui/PluginViewState.svelte +76 -0
  49. package/dist/ui/ResizablePanel.svelte +10 -0
  50. package/dist/ui/icons/README.md +9 -0
  51. package/dist/ui/icons/c.svg +1 -0
  52. package/dist/ui/icons/console.svg +1 -0
  53. package/dist/ui/icons/cpp.svg +1 -0
  54. package/dist/ui/icons/csharp.svg +1 -0
  55. package/dist/ui/icons/css.svg +3 -0
  56. package/dist/ui/icons/database.svg +1 -0
  57. package/dist/ui/icons/docker.svg +1 -0
  58. package/dist/ui/icons/document.svg +4 -0
  59. package/dist/ui/icons/file.svg +1 -0
  60. package/dist/ui/icons/folder-open.svg +1 -0
  61. package/dist/ui/icons/folder.svg +1 -0
  62. package/dist/ui/icons/git.svg +3 -0
  63. package/dist/ui/icons/go.svg +1 -0
  64. package/dist/ui/icons/graphql.svg +20 -0
  65. package/dist/ui/icons/h.svg +3 -0
  66. package/dist/ui/icons/html.svg +3 -0
  67. package/dist/ui/icons/image.svg +3 -0
  68. package/dist/ui/icons/java.svg +6 -0
  69. package/dist/ui/icons/javascript.svg +3 -0
  70. package/dist/ui/icons/json.svg +3 -0
  71. package/dist/ui/icons/kotlin.svg +1 -0
  72. package/dist/ui/icons/lock.svg +3 -0
  73. package/dist/ui/icons/markdown.svg +6 -0
  74. package/dist/ui/icons/nodejs.svg +6 -0
  75. package/dist/ui/icons/npm.svg +3 -0
  76. package/dist/ui/icons/pdf.svg +1 -0
  77. package/dist/ui/icons/php.svg +1 -0
  78. package/dist/ui/icons/python.svg +1 -0
  79. package/dist/ui/icons/react.svg +8 -0
  80. package/dist/ui/icons/react_ts.svg +8 -0
  81. package/dist/ui/icons/readme.svg +4 -0
  82. package/dist/ui/icons/ruby.svg +1 -0
  83. package/dist/ui/icons/rust.svg +1 -0
  84. package/dist/ui/icons/sass.svg +3 -0
  85. package/dist/ui/icons/settings.svg +4 -0
  86. package/dist/ui/icons/svelte.svg +1 -0
  87. package/dist/ui/icons/svg.svg +3 -0
  88. package/dist/ui/icons/swift.svg +1 -0
  89. package/dist/ui/icons/tune.svg +11 -0
  90. package/dist/ui/icons/typescript-def.svg +6 -0
  91. package/dist/ui/icons/typescript.svg +3 -0
  92. package/dist/ui/icons/vue.svg +1 -0
  93. package/dist/ui/icons/xml.svg +1 -0
  94. package/dist/ui/icons/yaml.svg +3 -0
  95. package/dist/ui/icons/zip.svg +3 -0
  96. package/dist/vite.js +5 -2
  97. package/package.json +34 -7
package/dist/vite.js CHANGED
@@ -4,6 +4,7 @@
4
4
  * plugin://host-runtime assets are derived from the same host-runtime contract.
5
5
  */
6
6
  import { fileURLToPath, pathToFileURL } from 'node:url';
7
+ import { OPENFORGE_PLUGIN_SDK_PUBLIC_UI_EXPORTS } from './publicUiExports.mjs';
7
8
  import { OPENFORGE_HOST_RUNTIME_SVELTE_SPECIFIERS as HOST_RUNTIME_SVELTE_SPECIFIERS } from './svelteHostRuntimeContract.mjs';
8
9
  export const OPENFORGE_HOST_RUNTIME_SVELTE_SPECIFIERS = HOST_RUNTIME_SVELTE_SPECIFIERS;
9
10
  export const OPENFORGE_HOST_SHARED_SVELTE_IMPORTS = OPENFORGE_HOST_RUNTIME_SVELTE_SPECIFIERS;
@@ -29,14 +30,16 @@ const OPENFORGE_PLUGIN_SDK_SOURCE_ENTRYPOINTS = Object.freeze([
29
30
  ['@openforge-app/plugin-sdk/backend', 'packages/plugin-sdk/src/backend.ts'],
30
31
  ['@openforge-app/plugin-sdk/testing', 'packages/plugin-sdk/src/testing.ts'],
31
32
  ['@openforge-app/plugin-sdk/vite', 'packages/plugin-sdk/src/vite.ts'],
33
+ ['@openforge-app/plugin-sdk/package-metadata-schema.json', 'packages/plugin-sdk/src/openforgePackageMetadataSchema.json'],
32
34
  ['@openforge-app/plugin-sdk/domain', 'packages/plugin-sdk/src/domain.ts'],
33
35
  ['@openforge-app/plugin-sdk/prStatusPresentation', 'packages/plugin-sdk/src/prStatusPresentation.ts'],
34
36
  ['@openforge-app/plugin-sdk/markdown', 'packages/plugin-sdk/src/markdown.ts'],
35
37
  ['@openforge-app/plugin-sdk/numberParsing', 'packages/plugin-sdk/src/numberParsing.ts'],
36
38
  ['@openforge-app/plugin-sdk/projectFileTree', 'packages/plugin-sdk/src/projectFileTree.ts'],
37
39
  ['@openforge-app/plugin-sdk/sanitize', 'packages/plugin-sdk/src/sanitize.ts'],
38
- ['@openforge-app/plugin-sdk/ui/MarkdownContent.svelte', 'packages/plugin-sdk/src/ui/MarkdownContent.svelte'],
39
- ['@openforge-app/plugin-sdk/ui/ResizablePanel.svelte', 'packages/plugin-sdk/src/ui/ResizablePanel.svelte'],
40
+ ['@openforge-app/plugin-sdk/pluginIcons', 'packages/plugin-sdk/src/pluginIcons.ts'],
41
+ ['@openforge-app/plugin-sdk/fileIcons', 'packages/plugin-sdk/src/fileIcons.ts'],
42
+ ...OPENFORGE_PLUGIN_SDK_PUBLIC_UI_EXPORTS.map(({ importSpecifier, workspaceSourcePath }) => [importSpecifier, workspaceSourcePath]),
40
43
  ['@openforge-app/plugin-sdk', 'packages/plugin-sdk/src/index.ts'],
41
44
  ]);
42
45
  function repoRootUrl(repoRoot) {
package/package.json CHANGED
@@ -1,6 +1,12 @@
1
1
  {
2
2
  "name": "@openforge-app/plugin-sdk",
3
- "version": "0.1.0",
3
+ "version": "0.2.3",
4
+ "license": "MIT",
5
+ "repository": {
6
+ "type": "git",
7
+ "url": "https://github.com/koenvg/openforge.git",
8
+ "directory": "packages/plugin-sdk"
9
+ },
4
10
  "type": "module",
5
11
  "main": "./dist/index.js",
6
12
  "types": "./dist/index.d.ts",
@@ -50,11 +56,27 @@
50
56
  "types": "./dist/sanitize.d.ts",
51
57
  "default": "./dist/sanitize.js"
52
58
  },
59
+ "./pluginIcons": {
60
+ "types": "./dist/pluginIcons.d.ts",
61
+ "default": "./dist/pluginIcons.js"
62
+ },
63
+ "./fileIcons": {
64
+ "types": "./dist/fileIcons.d.ts",
65
+ "default": "./dist/fileIcons.js"
66
+ },
67
+ "./ui/Button.svelte": "./dist/ui/Button.svelte",
68
+ "./ui/Checkbox.svelte": "./dist/ui/Checkbox.svelte",
53
69
  "./ui/MarkdownContent.svelte": "./dist/ui/MarkdownContent.svelte",
54
- "./ui/ResizablePanel.svelte": "./dist/ui/ResizablePanel.svelte"
70
+ "./ui/ResizablePanel.svelte": "./dist/ui/ResizablePanel.svelte",
71
+ "./ui/Modal.svelte": "./dist/ui/Modal.svelte",
72
+ "./ui/PluginPageHeader.svelte": "./dist/ui/PluginPageHeader.svelte",
73
+ "./ui/PluginViewState.svelte": "./dist/ui/PluginViewState.svelte",
74
+ "./ui/FileTypeIcon.svelte": "./dist/ui/FileTypeIcon.svelte"
55
75
  },
56
76
  "files": [
57
- "dist"
77
+ "dist",
78
+ "README.md",
79
+ "LICENSE"
58
80
  ],
59
81
  "publishConfig": {
60
82
  "access": "public"
@@ -63,19 +85,24 @@
63
85
  "clean": "node -e \"import('node:fs').then(({ rmSync }) => rmSync('dist', { recursive: true, force: true }))\"",
64
86
  "build": "pnpm run clean && tsc && pnpm run build:assets",
65
87
  "build:assets": "node ./scripts/copy-package-assets.mjs",
88
+ "check:contract": "node ./scripts/check-published-contract.mjs",
89
+ "icons:generate": "node ./scripts/generate-file-type-icons.mjs",
66
90
  "prepack": "pnpm run build",
91
+ "prepublishOnly": "pnpm run check:contract",
67
92
  "test": "vitest run"
68
93
  },
69
94
  "dependencies": {
70
- "dompurify": "^3.4.11",
71
- "marked": "^18.0.5"
95
+ "dompurify": "^3.4.13",
96
+ "marked": "^18.0.9"
72
97
  },
73
98
  "peerDependencies": {
74
99
  "svelte": "^5.0.0"
75
100
  },
76
101
  "devDependencies": {
77
- "@types/node": "26.0.0",
102
+ "@types/node": "26.2.0",
103
+ "svelte": "5.56.8",
78
104
  "typescript": "^6.0.3",
79
- "vitest": "^4.1.9"
105
+ "vitest": "^4.1.10",
106
+ "vscode-material-icons": "^0.1.1"
80
107
  }
81
108
  }