datalayer-reactor 1.0.3__tar.gz

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 (606) hide show
  1. datalayer_reactor-1.0.3/.github/FUNDING.yml +1 -0
  2. datalayer_reactor-1.0.3/.github/workflows/ci.yaml +64 -0
  3. datalayer_reactor-1.0.3/.github/workflows/fix-license-header.yaml +60 -0
  4. datalayer_reactor-1.0.3/.github/workflows/release.yaml +241 -0
  5. datalayer_reactor-1.0.3/.gitignore +34 -0
  6. datalayer_reactor-1.0.3/.licenserc.yaml +51 -0
  7. datalayer_reactor-1.0.3/.prettierrc +17 -0
  8. datalayer_reactor-1.0.3/Makefile +299 -0
  9. datalayer_reactor-1.0.3/PKG-INFO +101 -0
  10. datalayer_reactor-1.0.3/REACTOR.md +660 -0
  11. datalayer_reactor-1.0.3/README.md +83 -0
  12. datalayer_reactor-1.0.3/RELEASE.md +103 -0
  13. datalayer_reactor-1.0.3/decks/about-reactor.yaml +164 -0
  14. datalayer_reactor-1.0.3/dist-npm/datalayer-reactor-1.0.3.tgz +0 -0
  15. datalayer_reactor-1.0.3/dist-npm/datalayer-reactor-commands-1.0.3.tgz +0 -0
  16. datalayer_reactor-1.0.3/dist-npm/datalayer-reactor-graph-1.0.3.tgz +0 -0
  17. datalayer_reactor-1.0.3/dist-npm/datalayer-reactor-manager-1.0.3.tgz +0 -0
  18. datalayer_reactor-1.0.3/dist-npm/datalayer-reactor-shell-1.0.3.tgz +0 -0
  19. datalayer_reactor-1.0.3/docs/.gitignore +23 -0
  20. datalayer_reactor-1.0.3/docs/LICENSE +21 -0
  21. datalayer_reactor-1.0.3/docs/Makefile +69 -0
  22. datalayer_reactor-1.0.3/docs/README.md +77 -0
  23. datalayer_reactor-1.0.3/docs/babel.config.js +14 -0
  24. datalayer_reactor-1.0.3/docs/docs/agent-tools/_category_.json +8 -0
  25. datalayer_reactor-1.0.3/docs/docs/agent-tools/index.md +242 -0
  26. datalayer_reactor-1.0.3/docs/docs/commands-registry/_category_.json +8 -0
  27. datalayer_reactor-1.0.3/docs/docs/commands-registry/index.md +163 -0
  28. datalayer_reactor-1.0.3/docs/docs/core-plugins/_category_.json +8 -0
  29. datalayer_reactor-1.0.3/docs/docs/core-plugins/commands.md +98 -0
  30. datalayer_reactor-1.0.3/docs/docs/core-plugins/graph.md +55 -0
  31. datalayer_reactor-1.0.3/docs/docs/core-plugins/index.md +24 -0
  32. datalayer_reactor-1.0.3/docs/docs/core-plugins/manager.md +55 -0
  33. datalayer_reactor-1.0.3/docs/docs/core-plugins/shell.md +72 -0
  34. datalayer_reactor-1.0.3/docs/docs/cross-tier-dependencies/_category_.json +8 -0
  35. datalayer_reactor-1.0.3/docs/docs/cross-tier-dependencies/index.md +120 -0
  36. datalayer_reactor-1.0.3/docs/docs/examples/_category_.json +8 -0
  37. datalayer_reactor-1.0.3/docs/docs/examples/cli.md +32 -0
  38. datalayer_reactor-1.0.3/docs/docs/examples/cms/_category_.json +8 -0
  39. datalayer_reactor-1.0.3/docs/docs/examples/cms/demo.mdx +170 -0
  40. datalayer_reactor-1.0.3/docs/docs/examples/cms/index.md +169 -0
  41. datalayer_reactor-1.0.3/docs/docs/examples/cms-astro/_category_.json +8 -0
  42. datalayer_reactor-1.0.3/docs/docs/examples/cms-astro/ai-authoring.md +83 -0
  43. datalayer_reactor-1.0.3/docs/docs/examples/cms-astro/architecture.md +149 -0
  44. datalayer_reactor-1.0.3/docs/docs/examples/cms-astro/extensions.md +90 -0
  45. datalayer_reactor-1.0.3/docs/docs/examples/cms-astro/getting-started.md +113 -0
  46. datalayer_reactor-1.0.3/docs/docs/examples/cms-astro/index.md +65 -0
  47. datalayer_reactor-1.0.3/docs/docs/examples/cms-astro/users-and-authoring.md +107 -0
  48. datalayer_reactor-1.0.3/docs/docs/examples/federation.md +30 -0
  49. datalayer_reactor-1.0.3/docs/docs/examples/frontend-backend.md +25 -0
  50. datalayer_reactor-1.0.3/docs/docs/examples/frontend.md +27 -0
  51. datalayer_reactor-1.0.3/docs/docs/examples/index.md +25 -0
  52. datalayer_reactor-1.0.3/docs/docs/examples/music/_category_.json +8 -0
  53. datalayer_reactor-1.0.3/docs/docs/examples/music/architecture.md +140 -0
  54. datalayer_reactor-1.0.3/docs/docs/examples/music/backend.md +84 -0
  55. datalayer_reactor-1.0.3/docs/docs/examples/music/demo.mdx +84 -0
  56. datalayer_reactor-1.0.3/docs/docs/examples/music/index.md +119 -0
  57. datalayer_reactor-1.0.3/docs/docs/examples/music/switching-plugins.md +53 -0
  58. datalayer_reactor-1.0.3/docs/docs/examples/repl.md +38 -0
  59. datalayer_reactor-1.0.3/docs/docs/federation/_category_.json +8 -0
  60. datalayer_reactor-1.0.3/docs/docs/federation/index.md +133 -0
  61. datalayer_reactor-1.0.3/docs/docs/getting-started/_category_.json +8 -0
  62. datalayer_reactor-1.0.3/docs/docs/getting-started/index.mdx +15 -0
  63. datalayer_reactor-1.0.3/docs/docs/getting-started/python.md +71 -0
  64. datalayer_reactor-1.0.3/docs/docs/getting-started/typescript.md +66 -0
  65. datalayer_reactor-1.0.3/docs/docs/index.mdx +66 -0
  66. datalayer_reactor-1.0.3/docs/docs/mcp-server/_category_.json +8 -0
  67. datalayer_reactor-1.0.3/docs/docs/mcp-server/extending-a-tool.md +115 -0
  68. datalayer_reactor-1.0.3/docs/docs/mcp-server/host.md +130 -0
  69. datalayer_reactor-1.0.3/docs/docs/mcp-server/index.md +112 -0
  70. datalayer_reactor-1.0.3/docs/docs/mcp-server/serving.md +116 -0
  71. datalayer_reactor-1.0.3/docs/docs/mcp-server/tools.md +114 -0
  72. datalayer_reactor-1.0.3/docs/docs/mcp-server/toolsets.md +132 -0
  73. datalayer_reactor-1.0.3/docs/docs/mcp-server/writing-an-extension.md +149 -0
  74. datalayer_reactor-1.0.3/docs/docs/overview/_category_.json +8 -0
  75. datalayer_reactor-1.0.3/docs/docs/overview/architecture.md +211 -0
  76. datalayer_reactor-1.0.3/docs/docs/overview/index.mdx +19 -0
  77. datalayer_reactor-1.0.3/docs/docs/overview/slots-vs-contribution-points.md +39 -0
  78. datalayer_reactor-1.0.3/docs/docs/overview/why.md +49 -0
  79. datalayer_reactor-1.0.3/docs/docs/python-packaged-extensions/_category_.json +8 -0
  80. datalayer_reactor-1.0.3/docs/docs/python-packaged-extensions/containers.md +88 -0
  81. datalayer_reactor-1.0.3/docs/docs/python-packaged-extensions/design.md +49 -0
  82. datalayer_reactor-1.0.3/docs/docs/python-packaged-extensions/index.md +211 -0
  83. datalayer_reactor-1.0.3/docs/docs/python-plugins/_category_.json +8 -0
  84. datalayer_reactor-1.0.3/docs/docs/python-plugins/cli.md +191 -0
  85. datalayer_reactor-1.0.3/docs/docs/python-plugins/contribution-points.md +71 -0
  86. datalayer_reactor-1.0.3/docs/docs/python-plugins/extensions-and-events.md +85 -0
  87. datalayer_reactor-1.0.3/docs/docs/python-plugins/host.md +161 -0
  88. datalayer_reactor-1.0.3/docs/docs/python-plugins/http-api.md +56 -0
  89. datalayer_reactor-1.0.3/docs/docs/python-plugins/index.md +44 -0
  90. datalayer_reactor-1.0.3/docs/docs/python-plugins/plugins.md +74 -0
  91. datalayer_reactor-1.0.3/docs/docs/python-plugins/repl.md +105 -0
  92. datalayer_reactor-1.0.3/docs/docs/python-plugins/tenants-and-marketplace.md +43 -0
  93. datalayer_reactor-1.0.3/docs/docs/typescript-plugins/_category_.json +8 -0
  94. datalayer_reactor-1.0.3/docs/docs/typescript-plugins/activation-events.md +71 -0
  95. datalayer_reactor-1.0.3/docs/docs/typescript-plugins/allowed-origins.md +199 -0
  96. datalayer_reactor-1.0.3/docs/docs/typescript-plugins/contribution-points.md +92 -0
  97. datalayer_reactor-1.0.3/docs/docs/typescript-plugins/deactivation.md +72 -0
  98. datalayer_reactor-1.0.3/docs/docs/typescript-plugins/extensions.md +55 -0
  99. datalayer_reactor-1.0.3/docs/docs/typescript-plugins/federation.md +213 -0
  100. datalayer_reactor-1.0.3/docs/docs/typescript-plugins/index.md +31 -0
  101. datalayer_reactor-1.0.3/docs/docs/typescript-plugins/lazy-loading.md +121 -0
  102. datalayer_reactor-1.0.3/docs/docs/typescript-plugins/lifecycle.md +139 -0
  103. datalayer_reactor-1.0.3/docs/docs/typescript-plugins/plugins.md +115 -0
  104. datalayer_reactor-1.0.3/docs/docs/typescript-plugins/react.md +80 -0
  105. datalayer_reactor-1.0.3/docs/docs/typescript-plugins/signals.md +52 -0
  106. datalayer_reactor-1.0.3/docs/docusaurus.config.js +334 -0
  107. datalayer_reactor-1.0.3/docs/package.json +67 -0
  108. datalayer_reactor-1.0.3/docs/sidebars.js +42 -0
  109. datalayer_reactor-1.0.3/docs/src/components/CmsDemo/CmsApp.tsx +196 -0
  110. datalayer_reactor-1.0.3/docs/src/components/CmsDemo/backend.ts +318 -0
  111. datalayer_reactor-1.0.3/docs/src/components/CmsDemo/cms-theme.css +118 -0
  112. datalayer_reactor-1.0.3/docs/src/components/CmsDemo/index.tsx +43 -0
  113. datalayer_reactor-1.0.3/docs/src/components/HomepageRow1.js +72 -0
  114. datalayer_reactor-1.0.3/docs/src/components/HomepageRow1.module.css +24 -0
  115. datalayer_reactor-1.0.3/docs/src/components/HomepageRow2.js +72 -0
  116. datalayer_reactor-1.0.3/docs/src/components/HomepageRow2.module.css +24 -0
  117. datalayer_reactor-1.0.3/docs/src/components/HomepageRow3.js +73 -0
  118. datalayer_reactor-1.0.3/docs/src/components/HomepageRow3.module.css +24 -0
  119. datalayer_reactor-1.0.3/docs/src/components/MusicDemo/MusicApp.tsx +405 -0
  120. datalayer_reactor-1.0.3/docs/src/components/MusicDemo/backend.ts +339 -0
  121. datalayer_reactor-1.0.3/docs/src/components/MusicDemo/index.tsx +56 -0
  122. datalayer_reactor-1.0.3/docs/src/css/custom.css +212 -0
  123. datalayer_reactor-1.0.3/docs/src/pages/index.module.css +45 -0
  124. datalayer_reactor-1.0.3/docs/src/shims/datalayer-core-avatars.tsx +79 -0
  125. datalayer_reactor-1.0.3/docs/src/theme/CustomDocItem.tsx +28 -0
  126. datalayer_reactor-1.0.3/docs/src/theme/IconsTitle.tsx +42 -0
  127. datalayer_reactor-1.0.3/docs/static/img/bricks.svg +32 -0
  128. datalayer_reactor-1.0.3/docs/static/img/building-construction.svg +22 -0
  129. datalayer_reactor-1.0.3/docs/static/img/cloud-sun.svg +14 -0
  130. datalayer_reactor-1.0.3/docs/static/img/cloud.svg +125 -0
  131. datalayer_reactor-1.0.3/docs/static/img/collaboration.svg +1676 -0
  132. datalayer_reactor-1.0.3/docs/static/img/copy-left.svg +9 -0
  133. datalayer_reactor-1.0.3/docs/static/img/datalayer/logo.png +0 -0
  134. datalayer_reactor-1.0.3/docs/static/img/datalayer/logo.svg +158 -0
  135. datalayer_reactor-1.0.3/docs/static/img/datalayer/personas/business.svg +527 -0
  136. datalayer_reactor-1.0.3/docs/static/img/datalayer/personas/data-scientist.svg +486 -0
  137. datalayer_reactor-1.0.3/docs/static/img/datalayer/personas/devops.svg +463 -0
  138. datalayer_reactor-1.0.3/docs/static/img/datalayer/project/project-line.svg +564 -0
  139. datalayer_reactor-1.0.3/docs/static/img/favicon.ico +0 -0
  140. datalayer_reactor-1.0.3/docs/static/img/jupyter.svg +260 -0
  141. datalayer_reactor-1.0.3/docs/static/img/open-source.svg +1 -0
  142. datalayer_reactor-1.0.3/docs/static/img/react-js.svg +4 -0
  143. datalayer_reactor-1.0.3/docs/static/img/react-js2.svg +46 -0
  144. datalayer_reactor-1.0.3/docs/static/img/ringed-planet.svg +13 -0
  145. datalayer_reactor-1.0.3/docs/static/img/robot.svg +28 -0
  146. datalayer_reactor-1.0.3/docs/static/img/rocket.svg +20 -0
  147. datalayer_reactor-1.0.3/docs/static/img/shield.svg +14 -0
  148. datalayer_reactor-1.0.3/docs/static/img/sparkles.svg +18 -0
  149. datalayer_reactor-1.0.3/docs/static/img/streamlit.gif +0 -0
  150. datalayer_reactor-1.0.3/docs/static/img/super-hero.svg +32 -0
  151. datalayer_reactor-1.0.3/docs/static/img/target.svg +134 -0
  152. datalayer_reactor-1.0.3/docs/static/img/thumbs-up.svg +17 -0
  153. datalayer_reactor-1.0.3/examples/README.md +57 -0
  154. datalayer_reactor-1.0.3/examples/cli/README.md +55 -0
  155. datalayer_reactor-1.0.3/examples/cli/host.py +82 -0
  156. datalayer_reactor-1.0.3/examples/cli/weather_plugin.py +69 -0
  157. datalayer_reactor-1.0.3/examples/cms/README.md +126 -0
  158. datalayer_reactor-1.0.3/examples/cms/app/package.json +32 -0
  159. datalayer_reactor-1.0.3/examples/cms/app/postcss.config.mjs +11 -0
  160. datalayer_reactor-1.0.3/examples/cms/app/rsbuild.config.ts +67 -0
  161. datalayer_reactor-1.0.3/examples/cms/app/src/App.tsx +359 -0
  162. datalayer_reactor-1.0.3/examples/cms/app/src/commands.ts +71 -0
  163. datalayer_reactor-1.0.3/examples/cms/app/src/docStore.ts +51 -0
  164. datalayer_reactor-1.0.3/examples/cms/app/src/main.tsx +55 -0
  165. datalayer_reactor-1.0.3/examples/cms/app/src/points.ts +66 -0
  166. datalayer_reactor-1.0.3/examples/cms/app/src/styles.css +46 -0
  167. datalayer_reactor-1.0.3/examples/cms/app/src/ui/index.tsx +148 -0
  168. datalayer_reactor-1.0.3/examples/cms/app/tsconfig.json +16 -0
  169. datalayer_reactor-1.0.3/examples/cms/cms/cms/__init__.py +89 -0
  170. datalayer_reactor-1.0.3/examples/cms/cms/cms/app.py +9 -0
  171. datalayer_reactor-1.0.3/examples/cms/cms/cms/host.py +56 -0
  172. datalayer_reactor-1.0.3/examples/cms/cms/cms/plugins.py +176 -0
  173. datalayer_reactor-1.0.3/examples/cms/cms/pyproject.toml +37 -0
  174. datalayer_reactor-1.0.3/examples/cms/cms/share/datalayer/reactor/extensions/cms-core/index.js +117 -0
  175. datalayer_reactor-1.0.3/examples/cms/cms-pro/cms_pro/__init__.py +87 -0
  176. datalayer_reactor-1.0.3/examples/cms/cms-pro/cms_pro/plugins.py +140 -0
  177. datalayer_reactor-1.0.3/examples/cms/cms-pro/pyproject.toml +29 -0
  178. datalayer_reactor-1.0.3/examples/cms/cms-pro/share/datalayer/reactor/extensions/cms-pro/index.js +160 -0
  179. datalayer_reactor-1.0.3/examples/cms-astro/.gitignore +12 -0
  180. datalayer_reactor-1.0.3/examples/cms-astro/README.md +153 -0
  181. datalayer_reactor-1.0.3/examples/cms-astro/ai-agents/cms_astro_ai_agents/__init__.py +250 -0
  182. datalayer_reactor-1.0.3/examples/cms-astro/ai-agents/frontend/package.json +25 -0
  183. datalayer_reactor-1.0.3/examples/cms-astro/ai-agents/frontend/src/AgentRuntime.tsx +146 -0
  184. datalayer_reactor-1.0.3/examples/cms-astro/ai-agents/frontend/src/index.tsx +449 -0
  185. datalayer_reactor-1.0.3/examples/cms-astro/ai-agents/frontend/src/tools.ts +501 -0
  186. datalayer_reactor-1.0.3/examples/cms-astro/ai-agents/frontend/tsconfig.json +19 -0
  187. datalayer_reactor-1.0.3/examples/cms-astro/ai-agents/frontend/vite.config.ts +95 -0
  188. datalayer_reactor-1.0.3/examples/cms-astro/ai-agents/pyproject.toml +23 -0
  189. datalayer_reactor-1.0.3/examples/cms-astro/core/cms_astro_core/__init__.py +25 -0
  190. datalayer_reactor-1.0.3/examples/cms-astro/core/cms_astro_core/api.py +755 -0
  191. datalayer_reactor-1.0.3/examples/cms-astro/core/cms_astro_core/app.py +8 -0
  192. datalayer_reactor-1.0.3/examples/cms-astro/core/cms_astro_core/crawler.py +566 -0
  193. datalayer_reactor-1.0.3/examples/cms-astro/core/cms_astro_core/host.py +64 -0
  194. datalayer_reactor-1.0.3/examples/cms-astro/core/cms_astro_core/plugin.py +32 -0
  195. datalayer_reactor-1.0.3/examples/cms-astro/core/cms_astro_core/seed.py +53 -0
  196. datalayer_reactor-1.0.3/examples/cms-astro/core/cms_astro_core/site.py +35 -0
  197. datalayer_reactor-1.0.3/examples/cms-astro/core/cms_astro_core/store.py +429 -0
  198. datalayer_reactor-1.0.3/examples/cms-astro/core/frontend/astro.config.mjs +169 -0
  199. datalayer_reactor-1.0.3/examples/cms-astro/core/frontend/package.json +35 -0
  200. datalayer_reactor-1.0.3/examples/cms-astro/core/frontend/src/components/AdminApp.tsx +1509 -0
  201. datalayer_reactor-1.0.3/examples/cms-astro/core/frontend/src/components/AppearanceSettings.tsx +244 -0
  202. datalayer_reactor-1.0.3/examples/cms-astro/core/frontend/src/components/CmsSlashCommandPlugin.tsx +256 -0
  203. datalayer_reactor-1.0.3/examples/cms-astro/core/frontend/src/components/PublicExtensionHost.astro +156 -0
  204. datalayer_reactor-1.0.3/examples/cms-astro/core/frontend/src/components/PublishedContent.tsx +28 -0
  205. datalayer_reactor-1.0.3/examples/cms-astro/core/frontend/src/components/PublishedLexicalEditor.tsx +55 -0
  206. datalayer_reactor-1.0.3/examples/cms-astro/core/frontend/src/components/cmsLexical.ts +53 -0
  207. datalayer_reactor-1.0.3/examples/cms-astro/core/frontend/src/components/cmsLexicalState.ts +39 -0
  208. datalayer_reactor-1.0.3/examples/cms-astro/core/frontend/src/env.d.ts +19 -0
  209. datalayer_reactor-1.0.3/examples/cms-astro/core/frontend/src/layouts/Base.astro +151 -0
  210. datalayer_reactor-1.0.3/examples/cms-astro/core/frontend/src/lib/cms.ts +50 -0
  211. datalayer_reactor-1.0.3/examples/cms-astro/core/frontend/src/lib/loader.ts +59 -0
  212. datalayer_reactor-1.0.3/examples/cms-astro/core/frontend/src/lib/renderLexical.ts +179 -0
  213. datalayer_reactor-1.0.3/examples/cms-astro/core/frontend/src/lib/x402.ts +43 -0
  214. datalayer_reactor-1.0.3/examples/cms-astro/core/frontend/src/live.config.ts +17 -0
  215. datalayer_reactor-1.0.3/examples/cms-astro/core/frontend/src/middleware.ts +14 -0
  216. datalayer_reactor-1.0.3/examples/cms-astro/core/frontend/src/pages/[cms]/[section].astro +21 -0
  217. datalayer_reactor-1.0.3/examples/cms-astro/core/frontend/src/pages/[cms]/admin.astro +17 -0
  218. datalayer_reactor-1.0.3/examples/cms-astro/core/frontend/src/pages/blog.astro +22 -0
  219. datalayer_reactor-1.0.3/examples/cms-astro/core/frontend/src/pages/index.astro +26 -0
  220. datalayer_reactor-1.0.3/examples/cms-astro/core/frontend/src/pages/pages/[slug].astro +38 -0
  221. datalayer_reactor-1.0.3/examples/cms-astro/core/frontend/src/pages/posts/[slug].astro +27 -0
  222. datalayer_reactor-1.0.3/examples/cms-astro/core/frontend/src/pages/premium/[slug].astro +33 -0
  223. datalayer_reactor-1.0.3/examples/cms-astro/core/frontend/src/styles.css +56 -0
  224. datalayer_reactor-1.0.3/examples/cms-astro/core/frontend/tsconfig.json +5 -0
  225. datalayer_reactor-1.0.3/examples/cms-astro/core/pyproject.toml +28 -0
  226. datalayer_reactor-1.0.3/examples/cms-astro/core/share/datalayer/reactor/extensions/cms-astro-core/index.js +26 -0
  227. datalayer_reactor-1.0.3/examples/cms-astro/pro/cms_astro_pro/__init__.py +46 -0
  228. datalayer_reactor-1.0.3/examples/cms-astro/pro/pyproject.toml +24 -0
  229. datalayer_reactor-1.0.3/examples/cms-astro/pro/share/datalayer/reactor/extensions/cms-astro-pro/index.js +26 -0
  230. datalayer_reactor-1.0.3/examples/cms-astro/tests/test_ai_agents.py +42 -0
  231. datalayer_reactor-1.0.3/examples/cms-astro/tests/test_cms.py +476 -0
  232. datalayer_reactor-1.0.3/examples/cms-astro/tests/test_x402.py +55 -0
  233. datalayer_reactor-1.0.3/examples/cms-astro/x402/cms_astro_x402/__init__.py +152 -0
  234. datalayer_reactor-1.0.3/examples/cms-astro/x402/pyproject.toml +23 -0
  235. datalayer_reactor-1.0.3/examples/cms-astro/x402/share/datalayer/reactor/extensions/cms-astro-x402/index.js +28 -0
  236. datalayer_reactor-1.0.3/examples/extension/README.md +76 -0
  237. datalayer_reactor-1.0.3/examples/extension/hello_extension/__init__.py +83 -0
  238. datalayer_reactor-1.0.3/examples/extension/hello_extension/plugin.py +45 -0
  239. datalayer_reactor-1.0.3/examples/extension/pyproject.toml +27 -0
  240. datalayer_reactor-1.0.3/examples/extension/share/datalayer/reactor/extensions/hello/index.js +128 -0
  241. datalayer_reactor-1.0.3/examples/extension-federated/README.md +57 -0
  242. datalayer_reactor-1.0.3/examples/extension-federated/frontend/package.json +24 -0
  243. datalayer_reactor-1.0.3/examples/extension-federated/frontend/rsbuild.config.ts +46 -0
  244. datalayer_reactor-1.0.3/examples/extension-federated/frontend/src/plugin.tsx +25 -0
  245. datalayer_reactor-1.0.3/examples/extension-federated/frontend/tsconfig.json +14 -0
  246. datalayer_reactor-1.0.3/examples/extension-federated/hello_federated/__init__.py +70 -0
  247. datalayer_reactor-1.0.3/examples/extension-federated/hello_federated/plugin.py +23 -0
  248. datalayer_reactor-1.0.3/examples/extension-federated/pyproject.toml +27 -0
  249. datalayer_reactor-1.0.3/examples/extension-federated/share/datalayer/reactor/extensions/hello-federated/remoteEntry.js +53 -0
  250. datalayer_reactor-1.0.3/examples/extension-template/README.md +52 -0
  251. datalayer_reactor-1.0.3/examples/extension-template/new-extension.py +75 -0
  252. datalayer_reactor-1.0.3/examples/extension-template/template/__PACKAGE__/__init__.py +58 -0
  253. datalayer_reactor-1.0.3/examples/extension-template/template/__PACKAGE__/plugin.py +23 -0
  254. datalayer_reactor-1.0.3/examples/extension-template/template/frontend/package.json +23 -0
  255. datalayer_reactor-1.0.3/examples/extension-template/template/frontend/rsbuild.config.ts +39 -0
  256. datalayer_reactor-1.0.3/examples/extension-template/template/frontend/src/plugin.tsx +23 -0
  257. datalayer_reactor-1.0.3/examples/extension-template/template/frontend/tsconfig.json +14 -0
  258. datalayer_reactor-1.0.3/examples/extension-template/template/pyproject.toml +27 -0
  259. datalayer_reactor-1.0.3/examples/extension-template/template/share/datalayer/reactor/extensions/__NAME__/.gitkeep +1 -0
  260. datalayer_reactor-1.0.3/examples/federation/README.md +73 -0
  261. datalayer_reactor-1.0.3/examples/federation/package.json +24 -0
  262. datalayer_reactor-1.0.3/examples/federation/public/remotes/broken.js +18 -0
  263. datalayer_reactor-1.0.3/examples/federation/public/remotes/charts/remoteEntry.js +91 -0
  264. datalayer_reactor-1.0.3/examples/federation/public/remotes/greeting.js +46 -0
  265. datalayer_reactor-1.0.3/examples/federation/public/remotes/late.js +37 -0
  266. datalayer_reactor-1.0.3/examples/federation/remote-charts/README.md +31 -0
  267. datalayer_reactor-1.0.3/examples/federation/remote-charts/package.json +25 -0
  268. datalayer_reactor-1.0.3/examples/federation/remote-charts/rsbuild.config.ts +56 -0
  269. datalayer_reactor-1.0.3/examples/federation/remote-charts/src/plugin.tsx +50 -0
  270. datalayer_reactor-1.0.3/examples/federation/remote-charts/tsconfig.json +14 -0
  271. datalayer_reactor-1.0.3/examples/federation/rsbuild.config.ts +27 -0
  272. datalayer_reactor-1.0.3/examples/federation/src/App.tsx +298 -0
  273. datalayer_reactor-1.0.3/examples/federation/src/main.tsx +49 -0
  274. datalayer_reactor-1.0.3/examples/federation/src/styles.css +70 -0
  275. datalayer_reactor-1.0.3/examples/federation/tsconfig.json +14 -0
  276. datalayer_reactor-1.0.3/examples/frontend/package.json +30 -0
  277. datalayer_reactor-1.0.3/examples/frontend/rsbuild.config.ts +52 -0
  278. datalayer_reactor-1.0.3/examples/frontend/src/App.tsx +116 -0
  279. datalayer_reactor-1.0.3/examples/frontend/src/main.tsx +20 -0
  280. datalayer_reactor-1.0.3/examples/frontend/src/plugins/statusBannerPlugin.tsx +94 -0
  281. datalayer_reactor-1.0.3/examples/frontend/src/plugins/welcomeCardPlugin.tsx +90 -0
  282. datalayer_reactor-1.0.3/examples/frontend/tsconfig.json +7 -0
  283. datalayer_reactor-1.0.3/examples/frontend-backend/package.json +30 -0
  284. datalayer_reactor-1.0.3/examples/frontend-backend/reactor_demo.py +97 -0
  285. datalayer_reactor-1.0.3/examples/frontend-backend/rsbuild.config.ts +52 -0
  286. datalayer_reactor-1.0.3/examples/frontend-backend/src/App.tsx +148 -0
  287. datalayer_reactor-1.0.3/examples/frontend-backend/src/main.tsx +20 -0
  288. datalayer_reactor-1.0.3/examples/frontend-backend/src/plugins/statusBannerPlugin.tsx +106 -0
  289. datalayer_reactor-1.0.3/examples/frontend-backend/src/plugins/welcomeCardPlugin.tsx +88 -0
  290. datalayer_reactor-1.0.3/examples/frontend-backend/tsconfig.json +7 -0
  291. datalayer_reactor-1.0.3/examples/music/README.md +248 -0
  292. datalayer_reactor-1.0.3/examples/music/app/package.json +37 -0
  293. datalayer_reactor-1.0.3/examples/music/app/rsbuild.config.ts +161 -0
  294. datalayer_reactor-1.0.3/examples/music/app/src/App.tsx +386 -0
  295. datalayer_reactor-1.0.3/examples/music/app/src/main.tsx +65 -0
  296. datalayer_reactor-1.0.3/examples/music/app/src/styles.css +19 -0
  297. datalayer_reactor-1.0.3/examples/music/app/tsconfig.json +17 -0
  298. datalayer_reactor-1.0.3/examples/music/backend/datalayer_music_example/__init__.py +9 -0
  299. datalayer_reactor-1.0.3/examples/music/backend/datalayer_music_example/__main__.py +10 -0
  300. datalayer_reactor-1.0.3/examples/music/backend/datalayer_music_example/app.py +14 -0
  301. datalayer_reactor-1.0.3/examples/music/backend/datalayer_music_example/host.py +100 -0
  302. datalayer_reactor-1.0.3/examples/music/backend/pyproject.toml +39 -0
  303. datalayer_reactor-1.0.3/examples/music/catalog-core/package.json +15 -0
  304. datalayer_reactor-1.0.3/examples/music/catalog-core/src/index.ts +121 -0
  305. datalayer_reactor-1.0.3/examples/music/catalog-core/tsconfig.json +13 -0
  306. datalayer_reactor-1.0.3/examples/music/catalog-plugin/catalog_plugin/__init__.py +29 -0
  307. datalayer_reactor-1.0.3/examples/music/catalog-plugin/catalog_plugin/app.py +12 -0
  308. datalayer_reactor-1.0.3/examples/music/catalog-plugin/catalog_plugin/catalog.py +185 -0
  309. datalayer_reactor-1.0.3/examples/music/catalog-plugin/package.json +22 -0
  310. datalayer_reactor-1.0.3/examples/music/catalog-plugin/pyproject.toml +28 -0
  311. datalayer_reactor-1.0.3/examples/music/catalog-plugin/src/index.tsx +97 -0
  312. datalayer_reactor-1.0.3/examples/music/catalog-plugin/tsconfig.json +16 -0
  313. datalayer_reactor-1.0.3/examples/music/checkout-plugin/checkout_plugin/__init__.py +25 -0
  314. datalayer_reactor-1.0.3/examples/music/checkout-plugin/checkout_plugin/app.py +12 -0
  315. datalayer_reactor-1.0.3/examples/music/checkout-plugin/checkout_plugin/checkout.py +182 -0
  316. datalayer_reactor-1.0.3/examples/music/checkout-plugin/package.json +23 -0
  317. datalayer_reactor-1.0.3/examples/music/checkout-plugin/pyproject.toml +23 -0
  318. datalayer_reactor-1.0.3/examples/music/checkout-plugin/src/index.tsx +309 -0
  319. datalayer_reactor-1.0.3/examples/music/checkout-plugin/tsconfig.json +16 -0
  320. datalayer_reactor-1.0.3/examples/music/header-plugin/package.json +24 -0
  321. datalayer_reactor-1.0.3/examples/music/header-plugin/src/index.tsx +200 -0
  322. datalayer_reactor-1.0.3/examples/music/header-plugin/tsconfig.json +16 -0
  323. datalayer_reactor-1.0.3/examples/music/mood-plugin/mood_plugin/__init__.py +23 -0
  324. datalayer_reactor-1.0.3/examples/music/mood-plugin/mood_plugin/mood.py +104 -0
  325. datalayer_reactor-1.0.3/examples/music/mood-plugin/package.json +23 -0
  326. datalayer_reactor-1.0.3/examples/music/mood-plugin/pyproject.toml +23 -0
  327. datalayer_reactor-1.0.3/examples/music/mood-plugin/src/index.tsx +81 -0
  328. datalayer_reactor-1.0.3/examples/music/mood-plugin/tsconfig.json +16 -0
  329. datalayer_reactor-1.0.3/examples/music/package.json +40 -0
  330. datalayer_reactor-1.0.3/examples/music/playlist-plugin/package.json +22 -0
  331. datalayer_reactor-1.0.3/examples/music/playlist-plugin/playlist_plugin/__init__.py +27 -0
  332. datalayer_reactor-1.0.3/examples/music/playlist-plugin/playlist_plugin/app.py +12 -0
  333. datalayer_reactor-1.0.3/examples/music/playlist-plugin/playlist_plugin/playlist.py +167 -0
  334. datalayer_reactor-1.0.3/examples/music/playlist-plugin/pyproject.toml +23 -0
  335. datalayer_reactor-1.0.3/examples/music/playlist-plugin/src/index.tsx +207 -0
  336. datalayer_reactor-1.0.3/examples/music/playlist-plugin/tsconfig.json +16 -0
  337. datalayer_reactor-1.0.3/examples/music/plugins-panel-plugin/package.json +24 -0
  338. datalayer_reactor-1.0.3/examples/music/plugins-panel-plugin/src/index.tsx +264 -0
  339. datalayer_reactor-1.0.3/examples/music/plugins-panel-plugin/tsconfig.json +16 -0
  340. datalayer_reactor-1.0.3/examples/music/shop-plugin/package.json +24 -0
  341. datalayer_reactor-1.0.3/examples/music/shop-plugin/src/index.tsx +182 -0
  342. datalayer_reactor-1.0.3/examples/music/shop-plugin/tsconfig.json +16 -0
  343. datalayer_reactor-1.0.3/examples/repl/README.md +43 -0
  344. datalayer_reactor-1.0.3/examples/repl/clock_plugin.py +86 -0
  345. datalayer_reactor-1.0.3/examples/repl/host.py +109 -0
  346. datalayer_reactor-1.0.3/gulpfile.cjs +102 -0
  347. datalayer_reactor-1.0.3/node_modules/array-initial/.jshintrc +17 -0
  348. datalayer_reactor-1.0.3/node_modules/array-initial/.npmignore +59 -0
  349. datalayer_reactor-1.0.3/node_modules/balanced-match/.github/FUNDING.yml +2 -0
  350. datalayer_reactor-1.0.3/node_modules/buffer-equal/.eslintrc +19 -0
  351. datalayer_reactor-1.0.3/node_modules/buffer-equal/.github/FUNDING.yml +12 -0
  352. datalayer_reactor-1.0.3/node_modules/call-bind/.eslintignore +1 -0
  353. datalayer_reactor-1.0.3/node_modules/call-bind/.eslintrc +16 -0
  354. datalayer_reactor-1.0.3/node_modules/call-bind/.github/FUNDING.yml +12 -0
  355. datalayer_reactor-1.0.3/node_modules/call-bind/.nycrc +9 -0
  356. datalayer_reactor-1.0.3/node_modules/call-bind-apply-helpers/.eslintrc +17 -0
  357. datalayer_reactor-1.0.3/node_modules/call-bind-apply-helpers/.github/FUNDING.yml +12 -0
  358. datalayer_reactor-1.0.3/node_modules/call-bind-apply-helpers/.nycrc +9 -0
  359. datalayer_reactor-1.0.3/node_modules/call-bound/.eslintrc +13 -0
  360. datalayer_reactor-1.0.3/node_modules/call-bound/.github/FUNDING.yml +12 -0
  361. datalayer_reactor-1.0.3/node_modules/call-bound/.nycrc +9 -0
  362. datalayer_reactor-1.0.3/node_modules/camelize/.eslintrc +24 -0
  363. datalayer_reactor-1.0.3/node_modules/camelize/.github/FUNDING.yml +12 -0
  364. datalayer_reactor-1.0.3/node_modules/class-utils/node_modules/is-descriptor/.editorconfig +14 -0
  365. datalayer_reactor-1.0.3/node_modules/class-utils/node_modules/is-descriptor/.eslintrc +16 -0
  366. datalayer_reactor-1.0.3/node_modules/class-utils/node_modules/is-descriptor/.github/FUNDING.yml +12 -0
  367. datalayer_reactor-1.0.3/node_modules/class-utils/node_modules/is-descriptor/.nycrc +9 -0
  368. datalayer_reactor-1.0.3/node_modules/clone/.npmignore +4 -0
  369. datalayer_reactor-1.0.3/node_modules/deepmerge/.editorconfig +7 -0
  370. datalayer_reactor-1.0.3/node_modules/define-data-property/.eslintrc +24 -0
  371. datalayer_reactor-1.0.3/node_modules/define-data-property/.github/FUNDING.yml +12 -0
  372. datalayer_reactor-1.0.3/node_modules/define-data-property/.nycrc +13 -0
  373. datalayer_reactor-1.0.3/node_modules/define-properties/.editorconfig +13 -0
  374. datalayer_reactor-1.0.3/node_modules/define-properties/.eslintrc +19 -0
  375. datalayer_reactor-1.0.3/node_modules/define-properties/.github/FUNDING.yml +12 -0
  376. datalayer_reactor-1.0.3/node_modules/define-properties/.nycrc +9 -0
  377. datalayer_reactor-1.0.3/node_modules/delayed-stream/.npmignore +1 -0
  378. datalayer_reactor-1.0.3/node_modules/dunder-proto/.eslintrc +5 -0
  379. datalayer_reactor-1.0.3/node_modules/dunder-proto/.github/FUNDING.yml +12 -0
  380. datalayer_reactor-1.0.3/node_modules/dunder-proto/.nycrc +13 -0
  381. datalayer_reactor-1.0.3/node_modules/entities/src/generated/.eslintrc.json +10 -0
  382. datalayer_reactor-1.0.3/node_modules/es-define-property/.eslintrc +13 -0
  383. datalayer_reactor-1.0.3/node_modules/es-define-property/.github/FUNDING.yml +12 -0
  384. datalayer_reactor-1.0.3/node_modules/es-define-property/.nycrc +9 -0
  385. datalayer_reactor-1.0.3/node_modules/es-errors/.eslintrc +5 -0
  386. datalayer_reactor-1.0.3/node_modules/es-errors/.github/FUNDING.yml +12 -0
  387. datalayer_reactor-1.0.3/node_modules/es-object-atoms/.eslintrc +16 -0
  388. datalayer_reactor-1.0.3/node_modules/es-object-atoms/.github/FUNDING.yml +12 -0
  389. datalayer_reactor-1.0.3/node_modules/es-set-tostringtag/.eslintrc +13 -0
  390. datalayer_reactor-1.0.3/node_modules/es-set-tostringtag/.nycrc +9 -0
  391. datalayer_reactor-1.0.3/node_modules/es5-ext/promise/.eslintrc.json +1 -0
  392. datalayer_reactor-1.0.3/node_modules/es6-iterator/.editorconfig +14 -0
  393. datalayer_reactor-1.0.3/node_modules/es6-iterator/.npmignore +12 -0
  394. datalayer_reactor-1.0.3/node_modules/es6-iterator/test/.eslintrc.json +5 -0
  395. datalayer_reactor-1.0.3/node_modules/es6-symbol/.testignore +1 -0
  396. datalayer_reactor-1.0.3/node_modules/es6-weak-map/.editorconfig +14 -0
  397. datalayer_reactor-1.0.3/node_modules/esniff/.prettierignore +2 -0
  398. datalayer_reactor-1.0.3/node_modules/esniff/.testignore +3 -0
  399. datalayer_reactor-1.0.3/node_modules/event-emitter/.npmignore +3 -0
  400. datalayer_reactor-1.0.3/node_modules/event-emitter/.testignore +1 -0
  401. datalayer_reactor-1.0.3/node_modules/expand-brackets/node_modules/debug/.eslintrc +11 -0
  402. datalayer_reactor-1.0.3/node_modules/expand-brackets/node_modules/debug/.npmignore +9 -0
  403. datalayer_reactor-1.0.3/node_modules/expand-brackets/node_modules/is-descriptor/.editorconfig +14 -0
  404. datalayer_reactor-1.0.3/node_modules/expand-brackets/node_modules/is-descriptor/.eslintrc +16 -0
  405. datalayer_reactor-1.0.3/node_modules/expand-brackets/node_modules/is-descriptor/.github/FUNDING.yml +12 -0
  406. datalayer_reactor-1.0.3/node_modules/expand-brackets/node_modules/is-descriptor/.nycrc +9 -0
  407. datalayer_reactor-1.0.3/node_modules/extend/.editorconfig +20 -0
  408. datalayer_reactor-1.0.3/node_modules/extend/.eslintrc +17 -0
  409. datalayer_reactor-1.0.3/node_modules/focus-visible/.eslintignore +2 -0
  410. datalayer_reactor-1.0.3/node_modules/focus-visible/.eslintrc.js +11 -0
  411. datalayer_reactor-1.0.3/node_modules/focus-visible/.prettierrc +3 -0
  412. datalayer_reactor-1.0.3/node_modules/function-bind/.eslintrc +21 -0
  413. datalayer_reactor-1.0.3/node_modules/function-bind/.github/FUNDING.yml +12 -0
  414. datalayer_reactor-1.0.3/node_modules/function-bind/.github/SECURITY.md +3 -0
  415. datalayer_reactor-1.0.3/node_modules/function-bind/.nycrc +13 -0
  416. datalayer_reactor-1.0.3/node_modules/function-bind/test/.eslintrc +9 -0
  417. datalayer_reactor-1.0.3/node_modules/gensync/test/.babelrc +5 -0
  418. datalayer_reactor-1.0.3/node_modules/get-intrinsic/.eslintrc +42 -0
  419. datalayer_reactor-1.0.3/node_modules/get-intrinsic/.github/FUNDING.yml +12 -0
  420. datalayer_reactor-1.0.3/node_modules/get-intrinsic/.nycrc +9 -0
  421. datalayer_reactor-1.0.3/node_modules/get-proto/.eslintrc +10 -0
  422. datalayer_reactor-1.0.3/node_modules/get-proto/.github/FUNDING.yml +12 -0
  423. datalayer_reactor-1.0.3/node_modules/get-proto/.nycrc +9 -0
  424. datalayer_reactor-1.0.3/node_modules/glob-base/node_modules/glob-parent/.npmignore +4 -0
  425. datalayer_reactor-1.0.3/node_modules/gopd/.eslintrc +16 -0
  426. datalayer_reactor-1.0.3/node_modules/gopd/.github/FUNDING.yml +12 -0
  427. datalayer_reactor-1.0.3/node_modules/has-property-descriptors/.eslintrc +13 -0
  428. datalayer_reactor-1.0.3/node_modules/has-property-descriptors/.github/FUNDING.yml +12 -0
  429. datalayer_reactor-1.0.3/node_modules/has-property-descriptors/.nycrc +9 -0
  430. datalayer_reactor-1.0.3/node_modules/has-symbols/.eslintrc +11 -0
  431. datalayer_reactor-1.0.3/node_modules/has-symbols/.github/FUNDING.yml +12 -0
  432. datalayer_reactor-1.0.3/node_modules/has-symbols/.nycrc +9 -0
  433. datalayer_reactor-1.0.3/node_modules/has-tostringtag/.eslintrc +5 -0
  434. datalayer_reactor-1.0.3/node_modules/has-tostringtag/.github/FUNDING.yml +12 -0
  435. datalayer_reactor-1.0.3/node_modules/has-tostringtag/.nycrc +13 -0
  436. datalayer_reactor-1.0.3/node_modules/hasown/.github/FUNDING.yml +12 -0
  437. datalayer_reactor-1.0.3/node_modules/hasown/.nycrc +13 -0
  438. datalayer_reactor-1.0.3/node_modules/iconv-lite/.github/dependabot.yml +11 -0
  439. datalayer_reactor-1.0.3/node_modules/is-accessor-descriptor/.editorconfig +14 -0
  440. datalayer_reactor-1.0.3/node_modules/is-accessor-descriptor/.eslintrc +23 -0
  441. datalayer_reactor-1.0.3/node_modules/is-accessor-descriptor/.github/FUNDING.yml +12 -0
  442. datalayer_reactor-1.0.3/node_modules/is-accessor-descriptor/.nycrc +9 -0
  443. datalayer_reactor-1.0.3/node_modules/is-arrayish/.editorconfig +18 -0
  444. datalayer_reactor-1.0.3/node_modules/is-arrayish/.npmignore +5 -0
  445. datalayer_reactor-1.0.3/node_modules/is-data-descriptor/.editorconfig +14 -0
  446. datalayer_reactor-1.0.3/node_modules/is-data-descriptor/.eslintrc +15 -0
  447. datalayer_reactor-1.0.3/node_modules/is-data-descriptor/.github/FUNDING.yml +12 -0
  448. datalayer_reactor-1.0.3/node_modules/is-data-descriptor/.nycrc +9 -0
  449. datalayer_reactor-1.0.3/node_modules/is-descriptor/.editorconfig +14 -0
  450. datalayer_reactor-1.0.3/node_modules/is-descriptor/.eslintrc +16 -0
  451. datalayer_reactor-1.0.3/node_modules/is-descriptor/.github/FUNDING.yml +12 -0
  452. datalayer_reactor-1.0.3/node_modules/is-descriptor/.nycrc +9 -0
  453. datalayer_reactor-1.0.3/node_modules/isarray/.npmignore +1 -0
  454. datalayer_reactor-1.0.3/node_modules/isexe/.npmignore +2 -0
  455. datalayer_reactor-1.0.3/node_modules/json-stable-stringify-without-jsonify/.npmignore +1 -0
  456. datalayer_reactor-1.0.3/node_modules/just-debounce/.eslintrc +6 -0
  457. datalayer_reactor-1.0.3/node_modules/matchdep/.jshintrc +15 -0
  458. datalayer_reactor-1.0.3/node_modules/matchdep/.npmignore +2 -0
  459. datalayer_reactor-1.0.3/node_modules/math-intrinsics/.eslintrc +16 -0
  460. datalayer_reactor-1.0.3/node_modules/math-intrinsics/.github/FUNDING.yml +12 -0
  461. datalayer_reactor-1.0.3/node_modules/next-tick/.editorconfig +16 -0
  462. datalayer_reactor-1.0.3/node_modules/next-tick/.github/FUNDING.yml +1 -0
  463. datalayer_reactor-1.0.3/node_modules/object-copy/node_modules/is-descriptor/.editorconfig +14 -0
  464. datalayer_reactor-1.0.3/node_modules/object-copy/node_modules/is-descriptor/.eslintrc +16 -0
  465. datalayer_reactor-1.0.3/node_modules/object-copy/node_modules/is-descriptor/.github/FUNDING.yml +12 -0
  466. datalayer_reactor-1.0.3/node_modules/object-copy/node_modules/is-descriptor/.nycrc +9 -0
  467. datalayer_reactor-1.0.3/node_modules/object-keys/.editorconfig +13 -0
  468. datalayer_reactor-1.0.3/node_modules/object-keys/.eslintrc +17 -0
  469. datalayer_reactor-1.0.3/node_modules/object.assign/.editorconfig +20 -0
  470. datalayer_reactor-1.0.3/node_modules/object.assign/.eslintrc +28 -0
  471. datalayer_reactor-1.0.3/node_modules/object.assign/.github/FUNDING.yml +12 -0
  472. datalayer_reactor-1.0.3/node_modules/object.assign/.nycrc +9 -0
  473. datalayer_reactor-1.0.3/node_modules/preserve/.jshintrc +24 -0
  474. datalayer_reactor-1.0.3/node_modules/preserve/.npmignore +53 -0
  475. datalayer_reactor-1.0.3/node_modules/pretty-hrtime/.jshintignore +1 -0
  476. datalayer_reactor-1.0.3/node_modules/pretty-hrtime/.npmignore +10 -0
  477. datalayer_reactor-1.0.3/node_modules/rechoir/.npmignore +1 -0
  478. datalayer_reactor-1.0.3/node_modules/require-directory/.jshintrc +67 -0
  479. datalayer_reactor-1.0.3/node_modules/require-directory/.npmignore +1 -0
  480. datalayer_reactor-1.0.3/node_modules/require-main-filename/.npmignore +3 -0
  481. datalayer_reactor-1.0.3/node_modules/requires-port/.npmignore +2 -0
  482. datalayer_reactor-1.0.3/node_modules/resolve/.editorconfig +38 -0
  483. datalayer_reactor-1.0.3/node_modules/resolve/.eslintrc +65 -0
  484. datalayer_reactor-1.0.3/node_modules/resolve/.github/FUNDING.yml +12 -0
  485. datalayer_reactor-1.0.3/node_modules/resolve/.github/INCIDENT_RESPONSE_PROCESS.md +119 -0
  486. datalayer_reactor-1.0.3/node_modules/resolve/.github/THREAT_MODEL.md +74 -0
  487. datalayer_reactor-1.0.3/node_modules/resolve-url/.jshintrc +44 -0
  488. datalayer_reactor-1.0.3/node_modules/set-function-length/.eslintrc +27 -0
  489. datalayer_reactor-1.0.3/node_modules/set-function-length/.github/FUNDING.yml +12 -0
  490. datalayer_reactor-1.0.3/node_modules/set-function-length/.nycrc +13 -0
  491. datalayer_reactor-1.0.3/node_modules/snapdragon/node_modules/debug/.eslintrc +11 -0
  492. datalayer_reactor-1.0.3/node_modules/snapdragon/node_modules/debug/.npmignore +9 -0
  493. datalayer_reactor-1.0.3/node_modules/snapdragon/node_modules/is-descriptor/.editorconfig +14 -0
  494. datalayer_reactor-1.0.3/node_modules/snapdragon/node_modules/is-descriptor/.eslintrc +16 -0
  495. datalayer_reactor-1.0.3/node_modules/snapdragon/node_modules/is-descriptor/.github/FUNDING.yml +12 -0
  496. datalayer_reactor-1.0.3/node_modules/snapdragon/node_modules/is-descriptor/.nycrc +9 -0
  497. datalayer_reactor-1.0.3/node_modules/stack-trace/.npmignore +1 -0
  498. datalayer_reactor-1.0.3/node_modules/stackback/.npmignore +1 -0
  499. datalayer_reactor-1.0.3/node_modules/static-extend/node_modules/is-descriptor/.editorconfig +14 -0
  500. datalayer_reactor-1.0.3/node_modules/static-extend/node_modules/is-descriptor/.eslintrc +16 -0
  501. datalayer_reactor-1.0.3/node_modules/static-extend/node_modules/is-descriptor/.github/FUNDING.yml +12 -0
  502. datalayer_reactor-1.0.3/node_modules/static-extend/node_modules/is-descriptor/.nycrc +9 -0
  503. datalayer_reactor-1.0.3/node_modules/stream-shift/.github/workflows/test.yml +23 -0
  504. datalayer_reactor-1.0.3/node_modules/supports-preserve-symlinks-flag/.eslintrc +14 -0
  505. datalayer_reactor-1.0.3/node_modules/supports-preserve-symlinks-flag/.github/FUNDING.yml +12 -0
  506. datalayer_reactor-1.0.3/node_modules/supports-preserve-symlinks-flag/.nycrc +9 -0
  507. datalayer_reactor-1.0.3/node_modules/sver-compat/.npmignore +2 -0
  508. datalayer_reactor-1.0.3/node_modules/urix/.jshintrc +42 -0
  509. datalayer_reactor-1.0.3/node_modules/vinyl-file/node_modules/clone/.npmignore +4 -0
  510. datalayer_reactor-1.0.3/node_modules/vinyl-file/node_modules/replace-ext/.npmignore +6 -0
  511. datalayer_reactor-1.0.3/node_modules/why-is-node-running/.github/FUNDING.yml +1 -0
  512. datalayer_reactor-1.0.3/node_modules/xtend/.jshintrc +30 -0
  513. datalayer_reactor-1.0.3/package.json +77 -0
  514. datalayer_reactor-1.0.3/plugins/README.md +159 -0
  515. datalayer_reactor-1.0.3/plugins/mcp-server/.gitignore +1 -0
  516. datalayer_reactor-1.0.3/plugins/mcp-server/README.md +125 -0
  517. datalayer_reactor-1.0.3/plugins/mcp-server/pyproject.toml +51 -0
  518. datalayer_reactor-1.0.3/plugins/mcp-server/reactor_mcp_server/__init__.py +98 -0
  519. datalayer_reactor-1.0.3/plugins/mcp-server/reactor_mcp_server/__main__.py +71 -0
  520. datalayer_reactor-1.0.3/plugins/mcp-server/reactor_mcp_server/app.py +270 -0
  521. datalayer_reactor-1.0.3/plugins/mcp-server/reactor_mcp_server/extension.py +229 -0
  522. datalayer_reactor-1.0.3/plugins/mcp-server/reactor_mcp_server/points.py +53 -0
  523. datalayer_reactor-1.0.3/plugins/mcp-server/reactor_mcp_server/server.py +341 -0
  524. datalayer_reactor-1.0.3/plugins/mcp-server/reactor_mcp_server/tools.py +186 -0
  525. datalayer_reactor-1.0.3/plugins/mcp-server/reactor_mcp_server/toolsets.py +160 -0
  526. datalayer_reactor-1.0.3/plugins/mcp-server/tests/test_activation_by_url.py +272 -0
  527. datalayer_reactor-1.0.3/plugins/mcp-server/tests/test_review_follow_ups.py +244 -0
  528. datalayer_reactor-1.0.3/plugins/mcp-server/tests/test_served_over_http.py +287 -0
  529. datalayer_reactor-1.0.3/plugins/mcp-server/tests/test_tools_are_contributions.py +334 -0
  530. datalayer_reactor-1.0.3/pyproject.toml +57 -0
  531. datalayer_reactor-1.0.3/reactor/__init__.py +88 -0
  532. datalayer_reactor-1.0.3/reactor/__main__.py +15 -0
  533. datalayer_reactor-1.0.3/reactor/cli.py +354 -0
  534. datalayer_reactor-1.0.3/reactor/commands.py +274 -0
  535. datalayer_reactor-1.0.3/reactor/contributions.py +262 -0
  536. datalayer_reactor-1.0.3/reactor/examples/__init__.py +7 -0
  537. datalayer_reactor-1.0.3/reactor/examples/greeting_plugin.py +71 -0
  538. datalayer_reactor-1.0.3/reactor/extensions.py +215 -0
  539. datalayer_reactor-1.0.3/reactor/hooks.py +81 -0
  540. datalayer_reactor-1.0.3/reactor/host.py +290 -0
  541. datalayer_reactor-1.0.3/reactor/marketplace.py +35 -0
  542. datalayer_reactor-1.0.3/reactor/reactor.py +1150 -0
  543. datalayer_reactor-1.0.3/reactor/repl.py +378 -0
  544. datalayer_reactor-1.0.3/reactor/sandbox.py +25 -0
  545. datalayer_reactor-1.0.3/reactor/slash.py +186 -0
  546. datalayer_reactor-1.0.3/reactor/types.py +186 -0
  547. datalayer_reactor-1.0.3/reactor/web.py +314 -0
  548. datalayer_reactor-1.0.3/scripts/build-plugins.mjs +69 -0
  549. datalayer_reactor-1.0.3/src/core/__tests__/activation.test.ts +303 -0
  550. datalayer_reactor-1.0.3/src/core/__tests__/agentTools.test.ts +64 -0
  551. datalayer_reactor-1.0.3/src/core/__tests__/backendPlugins.test.ts +151 -0
  552. datalayer_reactor-1.0.3/src/core/__tests__/commands.test.ts +254 -0
  553. datalayer_reactor-1.0.3/src/core/__tests__/contributions.test.ts +304 -0
  554. datalayer_reactor-1.0.3/src/core/__tests__/deactivation.test.ts +319 -0
  555. datalayer_reactor-1.0.3/src/core/__tests__/dependantSwitching.test.ts +119 -0
  556. datalayer_reactor-1.0.3/src/core/__tests__/extension.test.ts +216 -0
  557. datalayer_reactor-1.0.3/src/core/__tests__/federation.test.ts +271 -0
  558. datalayer_reactor-1.0.3/src/core/__tests__/gates.test.ts +123 -0
  559. datalayer_reactor-1.0.3/src/core/__tests__/graph.test.ts +231 -0
  560. datalayer_reactor-1.0.3/src/core/__tests__/install.test.ts +126 -0
  561. datalayer_reactor-1.0.3/src/core/__tests__/keys.test.ts +144 -0
  562. datalayer_reactor-1.0.3/src/core/__tests__/lazy.test.ts +237 -0
  563. datalayer_reactor-1.0.3/src/core/__tests__/origins.test.ts +194 -0
  564. datalayer_reactor-1.0.3/src/core/__tests__/remote.test.ts +418 -0
  565. datalayer_reactor-1.0.3/src/core/__tests__/signals.test.ts +49 -0
  566. datalayer_reactor-1.0.3/src/core/activation.ts +158 -0
  567. datalayer_reactor-1.0.3/src/core/agentTools.ts +101 -0
  568. datalayer_reactor-1.0.3/src/core/commands.ts +258 -0
  569. datalayer_reactor-1.0.3/src/core/contributions.ts +223 -0
  570. datalayer_reactor-1.0.3/src/core/extension.ts +92 -0
  571. datalayer_reactor-1.0.3/src/core/federation.ts +372 -0
  572. datalayer_reactor-1.0.3/src/core/gates.ts +138 -0
  573. datalayer_reactor-1.0.3/src/core/graph.ts +379 -0
  574. datalayer_reactor-1.0.3/src/core/keys.ts +237 -0
  575. datalayer_reactor-1.0.3/src/core/origins.ts +312 -0
  576. datalayer_reactor-1.0.3/src/core/plugin.ts +430 -0
  577. datalayer_reactor-1.0.3/src/core/reactor.ts +1303 -0
  578. datalayer_reactor-1.0.3/src/core/remote.ts +439 -0
  579. datalayer_reactor-1.0.3/src/core/signals.ts +168 -0
  580. datalayer_reactor-1.0.3/src/index.ts +20 -0
  581. datalayer_reactor-1.0.3/src/react/__tests__/host.test.tsx +337 -0
  582. datalayer_reactor-1.0.3/src/react/__tests__/reactor.test.tsx +58 -0
  583. datalayer_reactor-1.0.3/src/react/__tests__/slot-order.test.tsx +58 -0
  584. datalayer_reactor-1.0.3/src/react/agentTools.ts +21 -0
  585. datalayer_reactor-1.0.3/src/react/host.tsx +273 -0
  586. datalayer_reactor-1.0.3/src/react/index.ts +9 -0
  587. datalayer_reactor-1.0.3/src/react/reactor.tsx +537 -0
  588. datalayer_reactor-1.0.3/style/index.css +11 -0
  589. datalayer_reactor-1.0.3/tests/test_activation_and_extensions.py +380 -0
  590. datalayer_reactor-1.0.3/tests/test_agent_tools.py +61 -0
  591. datalayer_reactor-1.0.3/tests/test_checkout_dependency.py +93 -0
  592. datalayer_reactor-1.0.3/tests/test_cli_extension.py +92 -0
  593. datalayer_reactor-1.0.3/tests/test_commands.py +194 -0
  594. datalayer_reactor-1.0.3/tests/test_contribution_extensions.py +144 -0
  595. datalayer_reactor-1.0.3/tests/test_contributions.py +183 -0
  596. datalayer_reactor-1.0.3/tests/test_dependant_switching.py +112 -0
  597. datalayer_reactor-1.0.3/tests/test_extension_discovery.py +414 -0
  598. datalayer_reactor-1.0.3/tests/test_plugin_presentation.py +109 -0
  599. datalayer_reactor-1.0.3/tests/test_reactor_host.py +217 -0
  600. datalayer_reactor-1.0.3/tests/test_repl.py +108 -0
  601. datalayer_reactor-1.0.3/tests/test_start_hooks.py +53 -0
  602. datalayer_reactor-1.0.3/tests/test_two_packages_one_point.py +211 -0
  603. datalayer_reactor-1.0.3/tests/vitest.setup.ts +9 -0
  604. datalayer_reactor-1.0.3/tsconfig.base.json +15 -0
  605. datalayer_reactor-1.0.3/tsconfig.json +9 -0
  606. datalayer_reactor-1.0.3/vitest.config.ts +54 -0
@@ -0,0 +1 @@
1
+ github: [datalayer]
@@ -0,0 +1,64 @@
1
+ name: CI
2
+
3
+ on:
4
+ pull_request:
5
+ push:
6
+ branches:
7
+ - main
8
+
9
+ concurrency:
10
+ group: ${{ github.workflow }}-${{ github.ref }}
11
+ cancel-in-progress: true
12
+
13
+ jobs:
14
+ typescript:
15
+ name: TypeScript Build and Test
16
+ runs-on: ubuntu-latest
17
+
18
+ steps:
19
+ - name: Checkout
20
+ uses: actions/checkout@v4
21
+
22
+ - name: Setup Node.js
23
+ uses: actions/setup-node@v4
24
+ with:
25
+ node-version: '24'
26
+ package-manager-cache: false
27
+
28
+ - name: Install dependencies
29
+ run: npm install
30
+
31
+ - name: Type check
32
+ run: npm run typecheck
33
+
34
+ - name: Build
35
+ run: npm run build
36
+
37
+ - name: Test
38
+ run: npm run test:ts
39
+
40
+ python:
41
+ name: Python Test (py${{ matrix.python-version }})
42
+ runs-on: ubuntu-latest
43
+ strategy:
44
+ fail-fast: false
45
+ matrix:
46
+ python-version: ['3.10', '3.11', '3.12']
47
+
48
+ steps:
49
+ - name: Checkout
50
+ uses: actions/checkout@v4
51
+
52
+ - name: Setup Python
53
+ uses: actions/setup-python@v5
54
+ with:
55
+ python-version: ${{ matrix.python-version }}
56
+
57
+ - name: Install package and test deps
58
+ run: |
59
+ python -m pip install --upgrade pip
60
+ python -m pip install -e .[dev]
61
+ python -m pip install -e "plugins/mcp-server[test]"
62
+
63
+ - name: Run tests
64
+ run: pytest -q
@@ -0,0 +1,60 @@
1
+ name: Fix License Headers
2
+
3
+ on:
4
+ pull_request_target:
5
+
6
+ concurrency:
7
+ group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
8
+ cancel-in-progress: true
9
+
10
+ jobs:
11
+ header-license-fix:
12
+ if: github.event.pull_request.head.repo.full_name == github.repository
13
+ runs-on: ubuntu-latest
14
+
15
+ permissions:
16
+ contents: write
17
+ pull-requests: write
18
+
19
+ steps:
20
+ - name: Checkout
21
+ uses: actions/checkout@v4
22
+ with:
23
+ token: ${{ secrets.GITHUB_TOKEN }}
24
+ ref: ${{ github.event.pull_request.head.ref }}
25
+ fetch-depth: 0
26
+
27
+ - name: Fix License Header
28
+ # pin to include https://github.com/apache/skywalking-eyes/pull/168
29
+ uses: apache/skywalking-eyes/header@e19b828cea6a6027cceae78f05d81317347d21be
30
+ with:
31
+ mode: fix
32
+
33
+ - name: List files changed
34
+ id: files-changed
35
+ shell: bash -l {0}
36
+ run: |
37
+ set -ex
38
+ export CHANGES=$(git status --porcelain | tee /tmp/modified.log | wc -l)
39
+ cat /tmp/modified.log
40
+
41
+ echo "N_CHANGES=${CHANGES}" >> $GITHUB_OUTPUT
42
+
43
+ git diff
44
+
45
+ - name: Commit any changes
46
+ if: steps.files-changed.outputs.N_CHANGES != '0'
47
+ shell: bash -l {0}
48
+ run: |
49
+ git config user.name "github-actions[bot]"
50
+ git config user.email "github-actions[bot]@users.noreply.github.com"
51
+
52
+ git pull --no-tags
53
+
54
+ git add -A
55
+ git commit -m "Automatic application of license header"
56
+
57
+ git config push.default upstream
58
+ git push
59
+ env:
60
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
@@ -0,0 +1,241 @@
1
+ # Copyright (c) 2024- Datalayer, Inc.
2
+ #
3
+ # BSD 3-Clause License
4
+
5
+ # Publishes a release to npm and PyPI when a `v*` tag is pushed, with no
6
+ # stored token: both registries trust this workflow file (OIDC trusted
7
+ # publishing, through the `npm` and `pypi` GitHub environments). Every package
8
+ # in this repository carries the same version, which the tag must name; a
9
+ # package whose exact version is already published is skipped, so a re-run
10
+ # after a partial upload publishes the rest. See RELEASE.md.
11
+
12
+ name: Release
13
+
14
+ on:
15
+ push:
16
+ tags:
17
+ - 'v*'
18
+
19
+ concurrency:
20
+ group: release-${{ github.ref }}
21
+ cancel-in-progress: false
22
+
23
+ permissions:
24
+ contents: read
25
+
26
+ env:
27
+ # The npm packages this workflow releases: the root package, then the
28
+ # plugins (published in that order; the plugins depend on the root).
29
+ NPM_PACKAGES: . plugins/commands plugins/graph plugins/manager plugins/shell
30
+ # The Python packages this workflow releases (directories with a pyproject).
31
+ # The root package takes its version from package.json (hatch-nodejs-version).
32
+ PY_PACKAGES: . plugins/mcp-server
33
+
34
+ jobs:
35
+ build:
36
+ runs-on: ubuntu-latest
37
+ outputs:
38
+ npm: ${{ steps.plan.outputs.npm }}
39
+ python: ${{ steps.plan.outputs.python }}
40
+ steps:
41
+ - uses: actions/checkout@v4
42
+
43
+ - uses: actions/setup-node@v4
44
+ with:
45
+ node-version: '24'
46
+
47
+ - uses: actions/setup-python@v5
48
+ with:
49
+ python-version: '3.12'
50
+
51
+ - name: Check the tag names the version every package carries
52
+ run: |
53
+ set -euo pipefail
54
+ tag="${GITHUB_REF_NAME#v}"
55
+ for pkg in $NPM_PACKAGES; do
56
+ name="$(node -p "require('./$pkg/package.json').name")"
57
+ version="$(node -p "require('./$pkg/package.json').version")"
58
+ echo "tag=$tag $name=$version"
59
+ if [ "$tag" != "$version" ]; then
60
+ echo "::error::Tag v$tag does not match $name $version"
61
+ exit 1
62
+ fi
63
+ done
64
+ for pkg in $PY_PACKAGES; do
65
+ read -r name version < <(python - "$pkg" <<'EOF'
66
+ import json, sys, tomllib
67
+ pkg = sys.argv[1]
68
+ meta = tomllib.load(open(f'{pkg}/pyproject.toml', 'rb'))
69
+ project = meta['project']
70
+ version = project.get('version') or json.load(open(f'{pkg}/package.json'))['version']
71
+ print(project['name'], version)
72
+ EOF
73
+ )
74
+ echo "tag=$tag $name=$version"
75
+ if [ "$tag" != "$version" ]; then
76
+ echo "::error::Tag v$tag does not match $name $version"
77
+ exit 1
78
+ fi
79
+ done
80
+
81
+ - name: Find what is not published yet
82
+ id: plan
83
+ run: |
84
+ set -euo pipefail
85
+ npm_todo=""
86
+ for pkg in $NPM_PACKAGES; do
87
+ name="$(node -p "require('./$pkg/package.json').name")"
88
+ version="$(node -p "require('./$pkg/package.json').version")"
89
+ if npm view "$name@$version" version >/dev/null 2>&1; then
90
+ echo "npm: $name@$version is already published, skipping"
91
+ else
92
+ echo "npm: $name@$version will be published"
93
+ npm_todo="$npm_todo $pkg"
94
+ fi
95
+ done
96
+ py_todo=""
97
+ for pkg in $PY_PACKAGES; do
98
+ read -r name version < <(python - "$pkg" <<'EOF'
99
+ import json, sys, tomllib
100
+ pkg = sys.argv[1]
101
+ meta = tomllib.load(open(f'{pkg}/pyproject.toml', 'rb'))
102
+ project = meta['project']
103
+ version = project.get('version') or json.load(open(f'{pkg}/package.json'))['version']
104
+ print(project['name'].replace('_', '-'), version)
105
+ EOF
106
+ )
107
+ status="$(curl -sL -o /dev/null -w '%{http_code}' "https://pypi.org/pypi/$name/$version/json")"
108
+ if [ "$status" = "200" ]; then
109
+ echo "PyPI: $name $version is already published, skipping"
110
+ else
111
+ echo "PyPI: $name $version will be published"
112
+ py_todo="$py_todo $pkg"
113
+ fi
114
+ done
115
+ echo "npm=${npm_todo# }" >> "$GITHUB_OUTPUT"
116
+ echo "python=${py_todo# }" >> "$GITHUB_OUTPUT"
117
+
118
+ - name: Install
119
+ if: steps.plan.outputs.npm != '' || steps.plan.outputs.python != ''
120
+ run: |
121
+ npm install
122
+ python -m pip install --upgrade pip build
123
+ python -m pip install -e .[dev]
124
+ python -m pip install -e "plugins/mcp-server[test]"
125
+
126
+ - name: Build and test
127
+ if: steps.plan.outputs.npm != '' || steps.plan.outputs.python != ''
128
+ run: |
129
+ npm run typecheck
130
+ npm run build
131
+ npm run test:ts
132
+ pytest -q
133
+
134
+ - name: Pack the npm packages
135
+ if: steps.plan.outputs.npm != ''
136
+ run: |
137
+ set -euo pipefail
138
+ mkdir -p dist-npm
139
+ for pkg in ${{ steps.plan.outputs.npm }}; do
140
+ (cd "$pkg" && npm pack --pack-destination "$GITHUB_WORKSPACE/dist-npm")
141
+ done
142
+ ls -la dist-npm
143
+
144
+ - name: Build the Python packages
145
+ if: steps.plan.outputs.python != ''
146
+ run: |
147
+ set -euo pipefail
148
+ mkdir -p dist-py
149
+ for pkg in ${{ steps.plan.outputs.python }}; do
150
+ python -m build --sdist --wheel --outdir dist-py "$pkg"
151
+ done
152
+ ls -la dist-py
153
+
154
+ - uses: actions/upload-artifact@v4
155
+ if: steps.plan.outputs.npm != ''
156
+ with:
157
+ name: npm
158
+ path: dist-npm/*.tgz
159
+
160
+ - uses: actions/upload-artifact@v4
161
+ if: steps.plan.outputs.python != ''
162
+ with:
163
+ name: python
164
+ path: dist-py/*
165
+
166
+ pypi:
167
+ needs: build
168
+ if: needs.build.outputs.python != ''
169
+ runs-on: ubuntu-latest
170
+ environment: pypi
171
+ permissions:
172
+ id-token: write
173
+ steps:
174
+ - uses: actions/download-artifact@v4
175
+ with:
176
+ name: python
177
+ path: dist
178
+ - uses: pypa/gh-action-pypi-publish@release/v1
179
+ with:
180
+ # The build job already skipped published versions; this covers a
181
+ # re-run after a partial upload.
182
+ skip-existing: true
183
+
184
+ npm:
185
+ needs: build
186
+ if: needs.build.outputs.npm != ''
187
+ runs-on: ubuntu-latest
188
+ environment: npm
189
+ permissions:
190
+ id-token: write
191
+ steps:
192
+ - uses: actions/setup-node@v4
193
+ with:
194
+ node-version: '24'
195
+ registry-url: 'https://registry.npmjs.org'
196
+ # Trusted publishing needs npm 11.5.1 or later.
197
+ - run: npm install -g npm@^11.5.1 && npm --version
198
+ - uses: actions/download-artifact@v4
199
+ with:
200
+ name: npm
201
+ path: dist
202
+ - name: Publish
203
+ run: |
204
+ set -euo pipefail
205
+ # @datalayer/reactor first: the plugins depend on it.
206
+ for tarball in $(ls dist/datalayer-reactor-[0-9]*.tgz 2>/dev/null) $(ls dist/*.tgz | grep -v '/datalayer-reactor-[0-9]'); do
207
+ name="$(tar -xOzf "$tarball" package/package.json | node -p "JSON.parse(require('fs').readFileSync(0)).name")"
208
+ version="$(tar -xOzf "$tarball" package/package.json | node -p "JSON.parse(require('fs').readFileSync(0)).version")"
209
+ if npm view "$name@$version" version >/dev/null 2>&1; then
210
+ echo "$name@$version is already published, skipping"
211
+ continue
212
+ fi
213
+ # "./": npm reads a bare "dist/x.tgz" as the GitHub shorthand
214
+ # github:dist/x.tgz and refuses to fetch it (EALLOWGIT).
215
+ npm publish "./$tarball" --provenance --access public
216
+ done
217
+
218
+ release:
219
+ name: GitHub release
220
+ needs: [build, pypi, npm]
221
+ if: always() && needs.build.result == 'success' && needs.pypi.result != 'failure' && needs.npm.result != 'failure'
222
+ runs-on: ubuntu-latest
223
+ permissions:
224
+ contents: write
225
+ steps:
226
+ - uses: actions/checkout@v4
227
+ with:
228
+ fetch-depth: 0
229
+ - name: Create the release with generated notes
230
+ run: |
231
+ version="${GITHUB_REF_NAME#v}"
232
+ gh release view "$GITHUB_REF_NAME" >/dev/null 2>&1 && exit 0
233
+ gh release create "$GITHUB_REF_NAME" \
234
+ --title "Release $version" \
235
+ --generate-notes \
236
+ --notes "## Release $version
237
+
238
+ - [PyPI datalayer-reactor](https://pypi.org/project/datalayer-reactor/$version/) · [reactor-mcp-server](https://pypi.org/project/reactor-mcp-server/$version/)
239
+ - [npm @datalayer/reactor](https://www.npmjs.com/package/@datalayer/reactor/v/$version) · reactor-commands · reactor-graph · reactor-manager · reactor-shell"
240
+ env:
241
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
@@ -0,0 +1,34 @@
1
+ **/__pycache__
2
+ **/*.egg-info
3
+ **/node_modules
4
+ **/*-lock.json
5
+ dist
6
+ lib
7
+
8
+ # Authored Astro integration modules; the generic lib rule above is for build
9
+ # output and must not exclude these source files from standalone checkouts.
10
+ !examples/cms-astro/core/frontend/src/lib/
11
+ !examples/cms-astro/core/frontend/src/lib/*.ts
12
+
13
+ # Include
14
+ !**/.*ignore
15
+ !**/.*rc
16
+ !**/.*rc.js
17
+ !**/.*rc.json
18
+ !**/.*rc.yml
19
+ !**/.*rc.yaml
20
+ !**/.*config
21
+ !*.*rc.json
22
+ !**/.env
23
+ !.github
24
+ !.devcontainer
25
+
26
+ # The music host's built interface: `npm run build` output, staged into the
27
+ # wheel's share/ directory. Built, not authored.
28
+ examples/music/backend/share/
29
+
30
+ # The CMS host's built interface: `npm run build` output staged for the wheel.
31
+ examples/cms/cms/share/datalayer/reactor/apps/
32
+
33
+ # Python build artefacts from a wheel build in an example directory.
34
+ examples/**/build/
@@ -0,0 +1,51 @@
1
+ header:
2
+ license:
3
+ spdx-id: Datalayer
4
+ copyright-owner: Datalayer, Inc.
5
+ copyright-year: 2026-Present
6
+ content: |
7
+ Copyright (c) [year] [owner]
8
+
9
+ Datalayer License
10
+
11
+ paths-ignore:
12
+ - '**/*.ipynb'
13
+ - '**/*.json'
14
+ - '**/*.md'
15
+ - '**/*.svg'
16
+ - '**/*.tsbuildinfo'
17
+ - '**/*.yml'
18
+ - '**/*.yaml'
19
+ - '**/build'
20
+ - '**/lib'
21
+ - '**/node_modules'
22
+ - '**/MANIFEST.in'
23
+ - '**/static'
24
+ - '**/typings'
25
+ - '**/schemas'
26
+ - '**/themes'
27
+ - '*.map.js'
28
+ - '*.bundle.js'
29
+ - '**/.*'
30
+ - 'LICENSE'
31
+ - '.devcontainer/resources/'
32
+ - 'dev/notebooks/example1.dash'
33
+ - 'dev/notebooks/subfolder-2/untitled.txt'
34
+ - 'examples/cra/public/robots.txt'
35
+ - '**/LICENSE.txt'
36
+ - '**/*.nblink'
37
+ - 'docs/docs'
38
+ - 'packages/lexical/src/ui/PrettierButton.tsx_tmp'
39
+ - 'packages/react/third-party-license.txt'
40
+ - 'patches/'
41
+
42
+ comment: on-failure
43
+
44
+ # Astro components mix frontmatter, HTML and scripts. HTML comments are
45
+ # valid before the frontmatter fence and keep the generated header valid for
46
+ # every kind of .astro component.
47
+ language:
48
+ Astro:
49
+ extensions:
50
+ - '.astro'
51
+ comment_style_id: AngleBracket
@@ -0,0 +1,17 @@
1
+ {
2
+ "singleQuote": true,
3
+ "printWidth": 100,
4
+ "trailingComma": "all",
5
+ "arrowParens": "always",
6
+ "overrides": [
7
+ {
8
+ "files": [
9
+ "plugins/shell/**"
10
+ ],
11
+ "options": {
12
+ "singleQuote": false,
13
+ "printWidth": 80
14
+ }
15
+ }
16
+ ]
17
+ }