spine-framework 0.1.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.
Files changed (385) hide show
  1. package/.framework/README.md +129 -0
  2. package/.framework/cli/bin.cjs +14 -0
  3. package/.framework/cli/commands/agents.ts +153 -0
  4. package/.framework/cli/commands/auth.ts +94 -0
  5. package/.framework/cli/commands/create-app.ts +185 -0
  6. package/.framework/cli/commands/dev.ts +295 -0
  7. package/.framework/cli/commands/doctor.ts +442 -0
  8. package/.framework/cli/commands/generate.ts +332 -0
  9. package/.framework/cli/commands/init.ts +272 -0
  10. package/.framework/cli/commands/install-app.ts +391 -0
  11. package/.framework/cli/commands/items.ts +253 -0
  12. package/.framework/cli/commands/migrations.ts +141 -0
  13. package/.framework/cli/commands/pipelines.ts +166 -0
  14. package/.framework/cli/commands/status.ts +197 -0
  15. package/.framework/cli/commands/system.ts +184 -0
  16. package/.framework/cli/commands/test.ts +227 -0
  17. package/.framework/cli/commands/uninstall-app.ts +166 -0
  18. package/.framework/cli/context.ts +268 -0
  19. package/.framework/cli/env-loader.ts +36 -0
  20. package/.framework/cli/index.ts +106 -0
  21. package/.framework/cli/welcome.cjs +45 -0
  22. package/.framework/docs/API.md +384 -0
  23. package/.framework/docs/STABILITY.md +52 -0
  24. package/.framework/docs/admin-routes.md +76 -0
  25. package/.framework/docs/api-docs-progress.md +38 -0
  26. package/.framework/docs/api-governance.md +146 -0
  27. package/.framework/docs/api-testing-results.md +212 -0
  28. package/.framework/docs/apis/admin-configs.md +567 -0
  29. package/.framework/docs/apis/admin-data.md +272 -0
  30. package/.framework/docs/apis/index.md +231 -0
  31. package/.framework/docs/apis/internal.md +295 -0
  32. package/.framework/docs/apis/runtime.md +537 -0
  33. package/.framework/docs/assembly-launch-guide.md +138 -0
  34. package/.framework/docs/audit-results.md +590 -0
  35. package/.framework/docs/authorization-model.md +170 -0
  36. package/.framework/docs/db-api-inventory.md +95 -0
  37. package/.framework/docs/examples/custom-app/README.md +77 -0
  38. package/.framework/docs/examples/custom-function/README.md +27 -0
  39. package/.framework/docs/examples/custom-function/handler.ts +48 -0
  40. package/.framework/docs/examples/custom-webhook/README.md +68 -0
  41. package/.framework/docs/gap-remediation-backlog.md +103 -0
  42. package/.framework/docs/guides/cli-guide.md +224 -0
  43. package/.framework/docs/guides/getting-started.md +103 -0
  44. package/.framework/docs/guides/import-guide.md +193 -0
  45. package/.framework/docs/guides/testing-guide.md +229 -0
  46. package/.framework/docs/permission-examples.md +326 -0
  47. package/.framework/docs/ui-adoption-verification.md +111 -0
  48. package/.framework/docs/ui-api-coverage.md +84 -0
  49. package/.framework/docs/v2-compatibility-audit.md +228 -0
  50. package/.framework/functions/.gitkeep +1 -0
  51. package/.framework/functions/_shared/agent-runner.ts +1097 -0
  52. package/.framework/functions/_shared/app-manifest.ts +184 -0
  53. package/.framework/functions/_shared/audit.ts +150 -0
  54. package/.framework/functions/_shared/db.ts +174 -0
  55. package/.framework/functions/_shared/index.ts +382 -0
  56. package/.framework/functions/_shared/middleware.ts +490 -0
  57. package/.framework/functions/_shared/permissions.ts +1325 -0
  58. package/.framework/functions/_shared/pipeline-runner.ts +731 -0
  59. package/.framework/functions/_shared/principal.ts +760 -0
  60. package/.framework/functions/_shared/schema-utils.ts +967 -0
  61. package/.framework/functions/_shared/testing.ts +258 -0
  62. package/.framework/functions/_shared/trigger-engine.ts +425 -0
  63. package/.framework/functions/_shared/webhook-registration.ts +168 -0
  64. package/.framework/functions/_shared/webhook-registry.ts +129 -0
  65. package/.framework/functions/account-nodes.ts +111 -0
  66. package/.framework/functions/admin-data.ts +606 -0
  67. package/.framework/functions/ai-agents.ts +323 -0
  68. package/.framework/functions/api-keys.ts +376 -0
  69. package/.framework/functions/apps.ts +483 -0
  70. package/.framework/functions/auth.ts +196 -0
  71. package/.framework/functions/debug-auth.ts +107 -0
  72. package/.framework/functions/embeddings.ts +556 -0
  73. package/.framework/functions/integration-routes.ts +523 -0
  74. package/.framework/functions/integrations.ts +319 -0
  75. package/.framework/functions/item-progress.ts +272 -0
  76. package/.framework/functions/logs.ts +438 -0
  77. package/.framework/functions/observability.ts +275 -0
  78. package/.framework/functions/pipeline-executions.ts +494 -0
  79. package/.framework/functions/pipelines.ts +485 -0
  80. package/.framework/functions/prompt-configs.ts +339 -0
  81. package/.framework/functions/roles.ts +387 -0
  82. package/.framework/functions/system-cron.ts +742 -0
  83. package/.framework/functions/system.ts +323 -0
  84. package/.framework/functions/tests.ts +119 -0
  85. package/.framework/functions/timers.ts +357 -0
  86. package/.framework/functions/triggers.ts +563 -0
  87. package/.framework/functions/types.ts +604 -0
  88. package/.framework/migrations/000_foundation.sql +1256 -0
  89. package/.framework/migrations/001_seed.sql +92 -0
  90. package/.framework/migrations/002_seed_constraints.sql +13 -0
  91. package/.framework/migrations/003_auth_user_trigger.sql +59 -0
  92. package/.framework/src/App.tsx +126 -0
  93. package/.framework/src/apps/admin/index.tsx +173 -0
  94. package/.framework/src/components/AppWrapper.tsx +56 -0
  95. package/.framework/src/components/CustomAppLoader.tsx +116 -0
  96. package/.framework/src/components/admin/AdminListPage.tsx +151 -0
  97. package/.framework/src/components/admin/AdminSidebar.tsx +166 -0
  98. package/.framework/src/components/admin/AdminStatsCard.tsx +62 -0
  99. package/.framework/src/components/admin/SortableTableHeader.tsx +42 -0
  100. package/.framework/src/components/app-shell/GenericAppShell.tsx +181 -0
  101. package/.framework/src/components/app-shell/GenericDetailPage.tsx +200 -0
  102. package/.framework/src/components/app-shell/GenericListPage.tsx +116 -0
  103. package/.framework/src/components/app-sidebar.tsx +228 -0
  104. package/.framework/src/components/auth/ProtectedRoute.tsx +88 -0
  105. package/.framework/src/components/layout/AppShell.tsx +91 -0
  106. package/.framework/src/components/layout/Header.tsx +88 -0
  107. package/.framework/src/components/layout/Layout.tsx +95 -0
  108. package/.framework/src/components/layout/Sidebar.tsx +329 -0
  109. package/.framework/src/components/runtime/DataDetailHeader.tsx +77 -0
  110. package/.framework/src/components/runtime/DataDetailPage.tsx +171 -0
  111. package/.framework/src/components/runtime/DataFilters.tsx +91 -0
  112. package/.framework/src/components/runtime/DataHeader.tsx +68 -0
  113. package/.framework/src/components/runtime/DataListPage.tsx +124 -0
  114. package/.framework/src/components/runtime/DataStats.tsx +70 -0
  115. package/.framework/src/components/runtime/DataTable.tsx +174 -0
  116. package/.framework/src/components/runtime/SchemaDetailForm.tsx +134 -0
  117. package/.framework/src/components/runtime/index.ts +18 -0
  118. package/.framework/src/components/search-form.tsx +29 -0
  119. package/.framework/src/components/shared/AgentView.tsx +213 -0
  120. package/.framework/src/components/shared/FieldRenderer.tsx +478 -0
  121. package/.framework/src/components/shared/SchemaFields.tsx +226 -0
  122. package/.framework/src/components/ui/DataTable.tsx +343 -0
  123. package/.framework/src/components/ui/Form.tsx +281 -0
  124. package/.framework/src/components/ui/ItemCard.tsx +296 -0
  125. package/.framework/src/components/ui/ItemListView.tsx +308 -0
  126. package/.framework/src/components/ui/LoadingSpinner.tsx +52 -0
  127. package/.framework/src/components/ui/Modal.tsx +61 -0
  128. package/.framework/src/components/ui/RichTextEditor.tsx +210 -0
  129. package/.framework/src/components/ui/accordion.tsx +82 -0
  130. package/.framework/src/components/ui/alert-dialog.tsx +197 -0
  131. package/.framework/src/components/ui/alert.tsx +76 -0
  132. package/.framework/src/components/ui/aspect-ratio.tsx +11 -0
  133. package/.framework/src/components/ui/avatar.tsx +110 -0
  134. package/.framework/src/components/ui/badge.tsx +49 -0
  135. package/.framework/src/components/ui/breadcrumb.tsx +122 -0
  136. package/.framework/src/components/ui/button-group.tsx +83 -0
  137. package/.framework/src/components/ui/button.tsx +65 -0
  138. package/.framework/src/components/ui/calendar.tsx +222 -0
  139. package/.framework/src/components/ui/card.tsx +100 -0
  140. package/.framework/src/components/ui/carousel.tsx +240 -0
  141. package/.framework/src/components/ui/chart.tsx +373 -0
  142. package/.framework/src/components/ui/checkbox.tsx +31 -0
  143. package/.framework/src/components/ui/collapsible.tsx +33 -0
  144. package/.framework/src/components/ui/combobox.tsx +299 -0
  145. package/.framework/src/components/ui/command.tsx +193 -0
  146. package/.framework/src/components/ui/context-menu.tsx +261 -0
  147. package/.framework/src/components/ui/dialog.tsx +165 -0
  148. package/.framework/src/components/ui/direction.tsx +22 -0
  149. package/.framework/src/components/ui/drawer.tsx +132 -0
  150. package/.framework/src/components/ui/dropdown-menu.tsx +269 -0
  151. package/.framework/src/components/ui/empty.tsx +104 -0
  152. package/.framework/src/components/ui/field.tsx +238 -0
  153. package/.framework/src/components/ui/hover-card.tsx +42 -0
  154. package/.framework/src/components/ui/input-group.tsx +153 -0
  155. package/.framework/src/components/ui/input-otp.tsx +87 -0
  156. package/.framework/src/components/ui/input.tsx +19 -0
  157. package/.framework/src/components/ui/item.tsx +196 -0
  158. package/.framework/src/components/ui/kbd.tsx +26 -0
  159. package/.framework/src/components/ui/label.tsx +22 -0
  160. package/.framework/src/components/ui/menubar.tsx +277 -0
  161. package/.framework/src/components/ui/native-select.tsx +61 -0
  162. package/.framework/src/components/ui/navigation-menu.tsx +164 -0
  163. package/.framework/src/components/ui/pagination.tsx +129 -0
  164. package/.framework/src/components/ui/popover.tsx +87 -0
  165. package/.framework/src/components/ui/progress.tsx +31 -0
  166. package/.framework/src/components/ui/radio-group.tsx +42 -0
  167. package/.framework/src/components/ui/resizable.tsx +50 -0
  168. package/.framework/src/components/ui/scroll-area.tsx +53 -0
  169. package/.framework/src/components/ui/select.tsx +195 -0
  170. package/.framework/src/components/ui/separator.tsx +26 -0
  171. package/.framework/src/components/ui/sheet.tsx +145 -0
  172. package/.framework/src/components/ui/sidebar.tsx +706 -0
  173. package/.framework/src/components/ui/skeleton.tsx +13 -0
  174. package/.framework/src/components/ui/slider.tsx +59 -0
  175. package/.framework/src/components/ui/sonner.tsx +47 -0
  176. package/.framework/src/components/ui/spinner.tsx +10 -0
  177. package/.framework/src/components/ui/switch.tsx +33 -0
  178. package/.framework/src/components/ui/table-primitives.tsx +141 -0
  179. package/.framework/src/components/ui/table.tsx +114 -0
  180. package/.framework/src/components/ui/tabs.tsx +90 -0
  181. package/.framework/src/components/ui/textarea.tsx +18 -0
  182. package/.framework/src/components/ui/toggle-group.tsx +89 -0
  183. package/.framework/src/components/ui/toggle.tsx +45 -0
  184. package/.framework/src/components/ui/tooltip.tsx +57 -0
  185. package/.framework/src/contexts/AppContext.tsx +133 -0
  186. package/.framework/src/contexts/AuthContext.tsx +371 -0
  187. package/.framework/src/hooks/use-mobile.ts +19 -0
  188. package/.framework/src/hooks/useApi.ts +526 -0
  189. package/.framework/src/hooks/useApps.ts +114 -0
  190. package/.framework/src/hooks/useEntityList.ts +190 -0
  191. package/.framework/src/hooks/useEntityRecord.ts +308 -0
  192. package/.framework/src/hooks/useForm.ts +307 -0
  193. package/.framework/src/hooks/useListSchema.ts +264 -0
  194. package/.framework/src/hooks/useSchemaRecord.ts +223 -0
  195. package/.framework/src/index.css +128 -0
  196. package/.framework/src/lib/api.ts +156 -0
  197. package/.framework/src/lib/supabase.ts +94 -0
  198. package/.framework/src/lib/utils.ts +317 -0
  199. package/.framework/src/main.tsx +27 -0
  200. package/.framework/src/pages/DashboardPage.tsx +181 -0
  201. package/.framework/src/pages/NotFoundPage.tsx +39 -0
  202. package/.framework/src/pages/admin/AIAgentDetailPage.tsx +161 -0
  203. package/.framework/src/pages/admin/AIAgentsPage.tsx +318 -0
  204. package/.framework/src/pages/admin/APIKeyDetailPage.tsx +199 -0
  205. package/.framework/src/pages/admin/APIKeysPage.tsx +303 -0
  206. package/.framework/src/pages/admin/AlertsConfigPage.tsx +523 -0
  207. package/.framework/src/pages/admin/AppDetailPage.tsx +493 -0
  208. package/.framework/src/pages/admin/AppsPage.tsx +355 -0
  209. package/.framework/src/pages/admin/DesignedPage.tsx +491 -0
  210. package/.framework/src/pages/admin/EmbeddingDetailPage.tsx +534 -0
  211. package/.framework/src/pages/admin/EmbeddingsPage.tsx +424 -0
  212. package/.framework/src/pages/admin/ExtendedShadcnTestPage.tsx +176 -0
  213. package/.framework/src/pages/admin/IncrementalShadcnTestPage.tsx +109 -0
  214. package/.framework/src/pages/admin/IntegratedDashboard.tsx +402 -0
  215. package/.framework/src/pages/admin/IntegrationDetailPage.tsx +187 -0
  216. package/.framework/src/pages/admin/IntegrationsPage.tsx +301 -0
  217. package/.framework/src/pages/admin/LogsPage.tsx +283 -0
  218. package/.framework/src/pages/admin/MinimalShadcnTestPage.tsx +85 -0
  219. package/.framework/src/pages/admin/ObservabilityDashboard.tsx +470 -0
  220. package/.framework/src/pages/admin/PipelineDetailPage.tsx +183 -0
  221. package/.framework/src/pages/admin/PipelineExecutionsPage.tsx +279 -0
  222. package/.framework/src/pages/admin/PipelinesPage.tsx +390 -0
  223. package/.framework/src/pages/admin/PromptConfigDetailPage.tsx +299 -0
  224. package/.framework/src/pages/admin/PromptConfigsPage.tsx +292 -0
  225. package/.framework/src/pages/admin/ProperlyDesignedPage.tsx +434 -0
  226. package/.framework/src/pages/admin/RoleDetailPage.tsx +273 -0
  227. package/.framework/src/pages/admin/RolesPage.tsx +292 -0
  228. package/.framework/src/pages/admin/SelectTestPage.tsx +61 -0
  229. package/.framework/src/pages/admin/ShadcnTestPage.tsx +588 -0
  230. package/.framework/src/pages/admin/SimpleDashboard.tsx +387 -0
  231. package/.framework/src/pages/admin/TestRunDetailPage.tsx +172 -0
  232. package/.framework/src/pages/admin/TestingDashboard.tsx +257 -0
  233. package/.framework/src/pages/admin/TimerDetailPage.tsx +151 -0
  234. package/.framework/src/pages/admin/TimersPage.tsx +376 -0
  235. package/.framework/src/pages/admin/TriggerDetailPage.tsx +149 -0
  236. package/.framework/src/pages/admin/TriggersPage.tsx +381 -0
  237. package/.framework/src/pages/admin/TypeDetailPage.tsx +694 -0
  238. package/.framework/src/pages/admin/TypesPage.tsx +295 -0
  239. package/.framework/src/pages/auth/LoginPage.tsx +188 -0
  240. package/.framework/src/pages/auth/RegisterPage.tsx +163 -0
  241. package/.framework/src/pages/spine-framework/APIPage.tsx +17 -0
  242. package/.framework/src/pages/spine-framework/CLIPage.tsx +25 -0
  243. package/.framework/src/types/auth.ts +125 -0
  244. package/.framework/src/types/types.ts +407 -0
  245. package/STRUCTURE.md +150 -0
  246. package/config/components.json +25 -0
  247. package/config/deno.lock +108 -0
  248. package/config/package-lock.json +17183 -0
  249. package/config/postcss.config.cjs +10 -0
  250. package/config/tailwind.config.cjs +78 -0
  251. package/config/tsconfig.build.json +32 -0
  252. package/config/tsconfig.cli.json +18 -0
  253. package/config/tsconfig.json +41 -0
  254. package/config/tsconfig.node.json +17 -0
  255. package/config/tsconfig.node.tsbuildinfo +1 -0
  256. package/config/tsconfig.tsbuildinfo +1 -0
  257. package/config/typedoc.json +16 -0
  258. package/config/vite.config.d.ts +2 -0
  259. package/config/vite.config.ts +72 -0
  260. package/dist/cli/commands/agents.d.ts +39 -0
  261. package/dist/cli/commands/agents.d.ts.map +1 -0
  262. package/dist/cli/commands/auth.d.ts +36 -0
  263. package/dist/cli/commands/auth.d.ts.map +1 -0
  264. package/dist/cli/commands/create-app.d.ts +23 -0
  265. package/dist/cli/commands/create-app.d.ts.map +1 -0
  266. package/dist/cli/commands/dev.d.ts +39 -0
  267. package/dist/cli/commands/dev.d.ts.map +1 -0
  268. package/dist/cli/commands/doctor.d.ts +42 -0
  269. package/dist/cli/commands/doctor.d.ts.map +1 -0
  270. package/dist/cli/commands/generate.d.ts +36 -0
  271. package/dist/cli/commands/generate.d.ts.map +1 -0
  272. package/dist/cli/commands/init.d.ts +30 -0
  273. package/dist/cli/commands/init.d.ts.map +1 -0
  274. package/dist/cli/commands/install-app.d.ts +30 -0
  275. package/dist/cli/commands/install-app.d.ts.map +1 -0
  276. package/dist/cli/commands/items.d.ts +45 -0
  277. package/dist/cli/commands/items.d.ts.map +1 -0
  278. package/dist/cli/commands/migrations.d.ts +41 -0
  279. package/dist/cli/commands/migrations.d.ts.map +1 -0
  280. package/dist/cli/commands/pipelines.d.ts +40 -0
  281. package/dist/cli/commands/pipelines.d.ts.map +1 -0
  282. package/dist/cli/commands/status.d.ts +23 -0
  283. package/dist/cli/commands/status.d.ts.map +1 -0
  284. package/dist/cli/commands/system.d.ts +29 -0
  285. package/dist/cli/commands/system.d.ts.map +1 -0
  286. package/dist/cli/commands/test.d.ts +46 -0
  287. package/dist/cli/commands/test.d.ts.map +1 -0
  288. package/dist/cli/commands/uninstall-app.d.ts +23 -0
  289. package/dist/cli/commands/uninstall-app.d.ts.map +1 -0
  290. package/dist/cli/context.d.ts +88 -0
  291. package/dist/cli/context.d.ts.map +1 -0
  292. package/dist/cli/env-loader.d.ts +14 -0
  293. package/dist/cli/env-loader.d.ts.map +1 -0
  294. package/dist/cli/index.d.ts +41 -0
  295. package/dist/cli/index.d.ts.map +1 -0
  296. package/dist/functions/_shared/agent-runner.d.ts +156 -0
  297. package/dist/functions/_shared/agent-runner.d.ts.map +1 -0
  298. package/dist/functions/_shared/app-manifest.d.ts +68 -0
  299. package/dist/functions/_shared/app-manifest.d.ts.map +1 -0
  300. package/dist/functions/_shared/audit.d.ts +91 -0
  301. package/dist/functions/_shared/audit.d.ts.map +1 -0
  302. package/dist/functions/_shared/db.d.ts +125 -0
  303. package/dist/functions/_shared/db.d.ts.map +1 -0
  304. package/dist/functions/_shared/index.d.ts +298 -0
  305. package/dist/functions/_shared/index.d.ts.map +1 -0
  306. package/dist/functions/_shared/middleware.d.ts +315 -0
  307. package/dist/functions/_shared/middleware.d.ts.map +1 -0
  308. package/dist/functions/_shared/permissions.d.ts +626 -0
  309. package/dist/functions/_shared/permissions.d.ts.map +1 -0
  310. package/dist/functions/_shared/pipeline-runner.d.ts +124 -0
  311. package/dist/functions/_shared/pipeline-runner.d.ts.map +1 -0
  312. package/dist/functions/_shared/principal.d.ts +284 -0
  313. package/dist/functions/_shared/principal.d.ts.map +1 -0
  314. package/dist/functions/_shared/schema-utils.d.ts +181 -0
  315. package/dist/functions/_shared/schema-utils.d.ts.map +1 -0
  316. package/dist/functions/_shared/testing.d.ts +172 -0
  317. package/dist/functions/_shared/testing.d.ts.map +1 -0
  318. package/dist/functions/_shared/trigger-engine.d.ts +140 -0
  319. package/dist/functions/_shared/trigger-engine.d.ts.map +1 -0
  320. package/dist/functions/_shared/webhook-registration.d.ts +81 -0
  321. package/dist/functions/_shared/webhook-registration.d.ts.map +1 -0
  322. package/dist/functions/_shared/webhook-registry.d.ts +57 -0
  323. package/dist/functions/_shared/webhook-registry.d.ts.map +1 -0
  324. package/dist/functions/account-nodes.d.ts +48 -0
  325. package/dist/functions/account-nodes.d.ts.map +1 -0
  326. package/dist/functions/admin-data.d.ts +178 -0
  327. package/dist/functions/admin-data.d.ts.map +1 -0
  328. package/dist/functions/ai-agents.d.ts +125 -0
  329. package/dist/functions/ai-agents.d.ts.map +1 -0
  330. package/dist/functions/api-keys.d.ts +140 -0
  331. package/dist/functions/api-keys.d.ts.map +1 -0
  332. package/dist/functions/apps.d.ts +163 -0
  333. package/dist/functions/apps.d.ts.map +1 -0
  334. package/dist/functions/auth.d.ts +74 -0
  335. package/dist/functions/auth.d.ts.map +1 -0
  336. package/dist/functions/debug-auth.d.ts +33 -0
  337. package/dist/functions/debug-auth.d.ts.map +1 -0
  338. package/dist/functions/embeddings.d.ts +205 -0
  339. package/dist/functions/embeddings.d.ts.map +1 -0
  340. package/dist/functions/integration-routes.d.ts +45 -0
  341. package/dist/functions/integration-routes.d.ts.map +1 -0
  342. package/dist/functions/integrations.d.ts +124 -0
  343. package/dist/functions/integrations.d.ts.map +1 -0
  344. package/dist/functions/item-progress.d.ts +41 -0
  345. package/dist/functions/item-progress.d.ts.map +1 -0
  346. package/dist/functions/logs.d.ts +162 -0
  347. package/dist/functions/logs.d.ts.map +1 -0
  348. package/dist/functions/observability.d.ts +123 -0
  349. package/dist/functions/observability.d.ts.map +1 -0
  350. package/dist/functions/pipeline-executions.d.ts +190 -0
  351. package/dist/functions/pipeline-executions.d.ts.map +1 -0
  352. package/dist/functions/pipelines.d.ts +171 -0
  353. package/dist/functions/pipelines.d.ts.map +1 -0
  354. package/dist/functions/prompt-configs.d.ts +125 -0
  355. package/dist/functions/prompt-configs.d.ts.map +1 -0
  356. package/dist/functions/roles.d.ts +118 -0
  357. package/dist/functions/roles.d.ts.map +1 -0
  358. package/dist/functions/system-cron.d.ts +65 -0
  359. package/dist/functions/system-cron.d.ts.map +1 -0
  360. package/dist/functions/system.d.ts +29 -0
  361. package/dist/functions/system.d.ts.map +1 -0
  362. package/dist/functions/tests.d.ts +28 -0
  363. package/dist/functions/tests.d.ts.map +1 -0
  364. package/dist/functions/timers.d.ts +139 -0
  365. package/dist/functions/timers.d.ts.map +1 -0
  366. package/dist/functions/triggers.d.ts +203 -0
  367. package/dist/functions/triggers.d.ts.map +1 -0
  368. package/dist/functions/types.d.ts +151 -0
  369. package/dist/functions/types.d.ts.map +1 -0
  370. package/dist/src/types/types.d.ts +364 -0
  371. package/dist/src/types/types.d.ts.map +1 -0
  372. package/package.json +192 -0
  373. package/scripts/app-install-cli.ts +286 -0
  374. package/scripts/assemble-frontend.sh +79 -0
  375. package/scripts/assemble-functions.sh +62 -0
  376. package/scripts/assemble.sh +35 -0
  377. package/scripts/boundary-check.sh +106 -0
  378. package/scripts/build-manifest.sh +80 -0
  379. package/scripts/check-core-integrity.sh +82 -0
  380. package/scripts/ingest-chunks.cjs +202 -0
  381. package/scripts/kb-chunk-parser.cjs +312 -0
  382. package/scripts/kb-chunk-parser.ts +330 -0
  383. package/scripts/load-test-app-install.ts +484 -0
  384. package/scripts/netlify-dev-wrapper.sh +22 -0
  385. package/scripts/verify-integrity.sh +69 -0
@@ -0,0 +1,109 @@
1
+ /**
2
+ * @module src/pages/admin/IncrementalShadcnTestPage
3
+ * @audience installer
4
+ * @layer frontend-page
5
+ * @stability testing
6
+ *
7
+ * Incremental test page to identify problematic shadcn component imports.
8
+ */
9
+
10
+ import { useState } from 'react'
11
+ import { Card, CardContent, CardDescription, CardHeader, CardTitle } from '../../components/ui/card'
12
+ import { Button } from '../../components/ui/button'
13
+ import { Badge } from '../../components/ui/badge'
14
+ import { Input } from '../../components/ui/input'
15
+ import { Label } from '../../components/ui/label'
16
+
17
+ export function IncrementalShadcnTestPage() {
18
+ const [count, setCount] = useState(0)
19
+ const [text, setText] = useState('')
20
+
21
+ return (
22
+ <div className="flex-1 space-y-6 p-8 pt-6">
23
+ <div className="space-y-2">
24
+ <h1 className="text-3xl font-bold tracking-tight">Incremental shadcn Test</h1>
25
+ <p className="text-muted-foreground">
26
+ Testing 4 shadcn components: Card, Button, Badge, Input, Label
27
+ </p>
28
+ </div>
29
+
30
+ <div className="grid gap-6 md:grid-cols-2">
31
+ <Card>
32
+ <CardHeader>
33
+ <CardTitle>Form Components</CardTitle>
34
+ <CardDescription>Testing Input and Label</CardDescription>
35
+ </CardHeader>
36
+ <CardContent className="space-y-4">
37
+ <div className="space-y-2">
38
+ <Label htmlFor="text-input">Text Input</Label>
39
+ <Input
40
+ id="text-input"
41
+ placeholder="Type something..."
42
+ value={text}
43
+ onChange={(e) => setText(e.target.value)}
44
+ />
45
+ </div>
46
+ <p className="text-sm text-muted-foreground">
47
+ You typed: {text || 'nothing'}
48
+ </p>
49
+ </CardContent>
50
+ </Card>
51
+
52
+ <Card>
53
+ <CardHeader>
54
+ <CardTitle>Interactive Components</CardTitle>
55
+ <CardDescription>Testing Button and Badge interaction</CardDescription>
56
+ </CardHeader>
57
+ <CardContent className="space-y-4">
58
+ <div className="flex gap-2">
59
+ <Button onClick={() => setCount(count + 1)}>
60
+ Increment
61
+ </Button>
62
+ <Button variant="outline" onClick={() => setCount(0)}>
63
+ Reset
64
+ </Button>
65
+ </div>
66
+ <div className="flex gap-2">
67
+ <Badge>Count: {count}</Badge>
68
+ <Badge variant={count > 5 ? "destructive" : "default"}>
69
+ {count > 5 ? "High" : "Low"}
70
+ </Badge>
71
+ </div>
72
+ </CardContent>
73
+ </Card>
74
+ </div>
75
+
76
+ <Card>
77
+ <CardHeader>
78
+ <CardTitle>Combined Test</CardTitle>
79
+ <CardDescription>All components working together</CardDescription>
80
+ </CardHeader>
81
+ <CardContent className="space-y-4">
82
+ <div className="grid gap-4 md:grid-cols-2">
83
+ <div className="space-y-2">
84
+ <Label htmlFor="combined-input">Enter a number</Label>
85
+ <Input
86
+ id="combined-input"
87
+ type="number"
88
+ placeholder="Enter count"
89
+ value={text}
90
+ onChange={(e) => {
91
+ const val = e.target.value
92
+ setText(val)
93
+ const num = parseInt(val) || 0
94
+ if (num >= 0) setCount(num)
95
+ }}
96
+ />
97
+ </div>
98
+ <div className="flex items-center gap-2">
99
+ <Button onClick={() => setCount(count + 10)}>
100
+ Add 10
101
+ </Button>
102
+ <Badge variant="outline">Current: {count}</Badge>
103
+ </div>
104
+ </div>
105
+ </CardContent>
106
+ </Card>
107
+ </div>
108
+ )
109
+ }
@@ -0,0 +1,402 @@
1
+ /**
2
+ * @module src/pages/admin/IntegratedDashboard
3
+ * @audience installer
4
+ * @layer frontend-page
5
+ * @stability testing
6
+ *
7
+ * A dashboard page that properly integrates with the Spine admin layout.
8
+ * Uses the existing sidebar and content structure.
9
+ */
10
+
11
+ import { useState } from 'react'
12
+ import { Card, CardContent, CardDescription, CardHeader, CardTitle } from '../../components/ui/card'
13
+ import { Button } from '../../components/ui/button'
14
+ import { Input } from '../../components/ui/input'
15
+ import { Label } from '../../components/ui/label'
16
+ import { Badge } from '../../components/ui/badge'
17
+ import {
18
+ Select,
19
+ SelectContent,
20
+ SelectItem,
21
+ SelectTrigger,
22
+ SelectValue,
23
+ } from '../../components/ui/select'
24
+ import { Switch } from '../../components/ui/switch'
25
+ import { Separator } from '../../components/ui/separator'
26
+ import {
27
+ Tabs,
28
+ TabsContent,
29
+ TabsList,
30
+ TabsTrigger,
31
+ } from '../../components/ui/tabs'
32
+ import { Alert, AlertDescription, AlertTitle } from '../../components/ui/alert'
33
+ import {
34
+ DropdownMenu,
35
+ DropdownMenuContent,
36
+ DropdownMenuItem,
37
+ DropdownMenuLabel,
38
+ DropdownMenuSeparator,
39
+ DropdownMenuTrigger,
40
+ } from '../../components/ui/dropdown-menu'
41
+ import {
42
+ Plus,
43
+ Settings,
44
+ Users,
45
+ FileText,
46
+ BarChart3,
47
+ Search,
48
+ Filter,
49
+ Download,
50
+ Edit,
51
+ Eye,
52
+ ChevronRight,
53
+ Database,
54
+ Shield,
55
+ CheckCircle,
56
+ AlertTriangle,
57
+ TrendingUp,
58
+ Activity,
59
+ MoreHorizontal,
60
+ Calendar,
61
+ Clock
62
+ } from 'lucide-react'
63
+
64
+ export function IntegratedDashboard() {
65
+ const [selectedTab, setSelectedTab] = useState('overview')
66
+ const [searchQuery, setSearchQuery] = useState('')
67
+ const [notifications, setNotifications] = useState(true)
68
+
69
+ return (
70
+ <div className="flex-1 space-y-6">
71
+ {/* Page Header */}
72
+ <div className="flex items-center justify-between">
73
+ <div>
74
+ <h2 className="text-3xl font-bold tracking-tight">Dashboard</h2>
75
+ <p className="text-muted-foreground">
76
+ Monitor your system performance and key metrics
77
+ </p>
78
+ </div>
79
+ <div className="flex items-center gap-2">
80
+ <Badge variant="outline" className="bg-green-50 text-green-700 border-green-200 dark:bg-green-900/20 dark:text-green-400 dark:border-green-800">
81
+ <CheckCircle className="w-3 h-3 mr-1" />
82
+ System Healthy
83
+ </Badge>
84
+ <Button>
85
+ <Plus className="w-4 h-4 mr-2" />
86
+ New Project
87
+ </Button>
88
+ </div>
89
+ </div>
90
+
91
+ {/* Search and Filter Bar */}
92
+ <Card>
93
+ <CardContent className="pt-6">
94
+ <div className="flex flex-col gap-4 sm:flex-row sm:items-center">
95
+ <div className="relative flex-1">
96
+ <Search className="absolute left-3 top-1/2 transform -translate-y-1/2 h-4 w-4 text-muted-foreground" />
97
+ <Input
98
+ placeholder="Search projects, users, or data..."
99
+ value={searchQuery}
100
+ onChange={(e) => setSearchQuery(e.target.value)}
101
+ className="pl-10"
102
+ />
103
+ </div>
104
+ <div className="flex gap-2">
105
+ <Button variant="outline" size="sm">
106
+ <Filter className="h-4 w-4 mr-2" />
107
+ Filter
108
+ </Button>
109
+ <Button variant="outline" size="sm">
110
+ <Download className="h-4 w-4 mr-2" />
111
+ Export
112
+ </Button>
113
+ </div>
114
+ </div>
115
+ </CardContent>
116
+ </Card>
117
+
118
+ {/* Stats Cards */}
119
+ <div className="grid gap-4 md:grid-cols-2 lg:grid-cols-4">
120
+ <Card className="relative overflow-hidden">
121
+ <CardHeader className="flex flex-row items-center justify-between space-y-0 pb-2">
122
+ <CardTitle className="text-sm font-medium">Total Users</CardTitle>
123
+ <Users className="h-4 w-4 text-muted-foreground" />
124
+ </CardHeader>
125
+ <CardContent>
126
+ <div className="text-2xl font-bold">2,847</div>
127
+ <p className="text-xs text-muted-foreground flex items-center">
128
+ <TrendingUp className="w-3 h-3 mr-1 text-green-600" />
129
+ +12% from last month
130
+ </p>
131
+ </CardContent>
132
+ <div className="absolute top-0 right-0 h-16 w-16 bg-gradient-to-br from-blue-500/10 to-transparent rounded-bl-2xl"></div>
133
+ </Card>
134
+
135
+ <Card className="relative overflow-hidden">
136
+ <CardHeader className="flex flex-row items-center justify-between space-y-0 pb-2">
137
+ <CardTitle className="text-sm font-medium">Active Projects</CardTitle>
138
+ <FileText className="h-4 w-4 text-muted-foreground" />
139
+ </CardHeader>
140
+ <CardContent>
141
+ <div className="text-2xl font-bold">142</div>
142
+ <p className="text-xs text-muted-foreground flex items-center">
143
+ <TrendingUp className="w-3 h-3 mr-1 text-green-600" />
144
+ +5% from last month
145
+ </p>
146
+ </CardContent>
147
+ <div className="absolute top-0 right-0 h-16 w-16 bg-gradient-to-br from-green-500/10 to-transparent rounded-bl-2xl"></div>
148
+ </Card>
149
+
150
+ <Card className="relative overflow-hidden">
151
+ <CardHeader className="flex flex-row items-center justify-between space-y-0 pb-2">
152
+ <CardTitle className="text-sm font-medium">Data Processed</CardTitle>
153
+ <Database className="h-4 w-4 text-muted-foreground" />
154
+ </CardHeader>
155
+ <CardContent>
156
+ <div className="text-2xl font-bold">1.2M</div>
157
+ <p className="text-xs text-muted-foreground flex items-center">
158
+ <TrendingUp className="w-3 h-3 mr-1 text-green-600" />
159
+ +18% from last month
160
+ </p>
161
+ </CardContent>
162
+ <div className="absolute top-0 right-0 h-16 w-16 bg-gradient-to-br from-purple-500/10 to-transparent rounded-bl-2xl"></div>
163
+ </Card>
164
+
165
+ <Card className="relative overflow-hidden">
166
+ <CardHeader className="flex flex-row items-center justify-between space-y-0 pb-2">
167
+ <CardTitle className="text-sm font-medium">System Health</CardTitle>
168
+ <Activity className="h-4 w-4 text-muted-foreground" />
169
+ </CardHeader>
170
+ <CardContent>
171
+ <div className="text-2xl font-bold">98.5%</div>
172
+ <p className="text-xs text-muted-foreground flex items-center">
173
+ <AlertTriangle className="w-3 h-3 mr-1 text-yellow-600" />
174
+ -0.5% from last month
175
+ </p>
176
+ </CardContent>
177
+ <div className="absolute top-0 right-0 h-16 w-16 bg-gradient-to-br from-orange-500/10 to-transparent rounded-bl-2xl"></div>
178
+ </Card>
179
+ </div>
180
+
181
+ {/* Main Content Tabs */}
182
+ <Tabs value={selectedTab} onValueChange={setSelectedTab} className="space-y-4">
183
+ <TabsList className="grid w-full grid-cols-4">
184
+ <TabsTrigger value="overview">Overview</TabsTrigger>
185
+ <TabsTrigger value="analytics">Analytics</TabsTrigger>
186
+ <TabsTrigger value="reports">Reports</TabsTrigger>
187
+ <TabsTrigger value="settings">Settings</TabsTrigger>
188
+ </TabsList>
189
+
190
+ <TabsContent value="overview" className="space-y-4">
191
+ <div className="grid gap-6 lg:grid-cols-3">
192
+ {/* Recent Activity */}
193
+ <Card className="lg:col-span-2">
194
+ <CardHeader>
195
+ <CardTitle>Recent Activity</CardTitle>
196
+ <CardDescription>
197
+ Latest system events and user actions
198
+ </CardDescription>
199
+ </CardHeader>
200
+ <CardContent>
201
+ <div className="space-y-4">
202
+ <div className="flex items-center gap-4 p-4 rounded-lg border border-border/50 bg-card/50 hover:bg-card transition-colors">
203
+ <div className="h-10 w-10 rounded-full bg-primary/10 flex items-center justify-center">
204
+ <Users className="h-5 w-5 text-primary" />
205
+ </div>
206
+ <div className="flex-1 min-w-0">
207
+ <p className="font-medium truncate">New user registration</p>
208
+ <p className="text-sm text-muted-foreground">John Doe joined 2 minutes ago</p>
209
+ </div>
210
+ <ChevronRight className="h-4 w-4 text-muted-foreground flex-shrink-0" />
211
+ </div>
212
+
213
+ <div className="flex items-center gap-4 p-4 rounded-lg border border-border/50 bg-card/50 hover:bg-card transition-colors">
214
+ <div className="h-10 w-10 rounded-full bg-secondary/10 flex items-center justify-center">
215
+ <FileText className="h-5 w-5 text-secondary-foreground" />
216
+ </div>
217
+ <div className="flex-1 min-w-0">
218
+ <p className="font-medium truncate">Report generated</p>
219
+ <p className="text-sm text-muted-foreground">Monthly analytics report completed</p>
220
+ </div>
221
+ <ChevronRight className="h-4 w-4 text-muted-foreground flex-shrink-0" />
222
+ </div>
223
+
224
+ <div className="flex items-center gap-4 p-4 rounded-lg border border-border/50 bg-card/50 hover:bg-card transition-colors">
225
+ <div className="h-10 w-10 rounded-full bg-destructive/10 flex items-center justify-center">
226
+ <AlertTriangle className="h-5 w-5 text-destructive" />
227
+ </div>
228
+ <div className="flex-1 min-w-0">
229
+ <p className="font-medium truncate">System alert</p>
230
+ <p className="text-sm text-muted-foreground">High memory usage detected</p>
231
+ </div>
232
+ <ChevronRight className="h-4 w-4 text-muted-foreground flex-shrink-0" />
233
+ </div>
234
+ </div>
235
+ </CardContent>
236
+ </Card>
237
+
238
+ {/* Quick Actions */}
239
+ <Card>
240
+ <CardHeader>
241
+ <CardTitle>Quick Actions</CardTitle>
242
+ <CardDescription>
243
+ Common tasks and shortcuts
244
+ </CardDescription>
245
+ </CardHeader>
246
+ <CardContent className="space-y-3">
247
+ <Button className="w-full justify-start gap-2">
248
+ <Plus className="h-4 w-4" />
249
+ Create New Project
250
+ </Button>
251
+ <Button variant="outline" className="w-full justify-start gap-2">
252
+ <Users className="h-4 w-4" />
253
+ Invite Team Member
254
+ </Button>
255
+ <Button variant="outline" className="w-full justify-start gap-2">
256
+ <Download className="h-4 w-4" />
257
+ Export Report
258
+ </Button>
259
+ <Button variant="outline" className="w-full justify-start gap-2">
260
+ <Settings className="h-4 w-4" />
261
+ System Settings
262
+ </Button>
263
+ </CardContent>
264
+ </Card>
265
+ </div>
266
+ </TabsContent>
267
+
268
+ <TabsContent value="analytics" className="space-y-4">
269
+ <Card>
270
+ <CardHeader>
271
+ <CardTitle>Analytics Dashboard</CardTitle>
272
+ <CardDescription>
273
+ System performance and usage metrics
274
+ </CardDescription>
275
+ </CardHeader>
276
+ <CardContent>
277
+ <div className="h-64 flex items-center justify-center border-2 border-dashed border-border rounded-lg bg-muted/20">
278
+ <div className="text-center">
279
+ <BarChart3 className="h-12 w-12 text-muted-foreground mx-auto mb-4" />
280
+ <p className="text-muted-foreground">Analytics charts would be displayed here</p>
281
+ <p className="text-sm text-muted-foreground mt-2">Integration with charting library needed</p>
282
+ </div>
283
+ </div>
284
+ </CardContent>
285
+ </Card>
286
+ </TabsContent>
287
+
288
+ <TabsContent value="reports" className="space-y-4">
289
+ <Card>
290
+ <CardHeader>
291
+ <CardTitle>Reports</CardTitle>
292
+ <CardDescription>
293
+ Generated reports and documentation
294
+ </CardDescription>
295
+ </CardHeader>
296
+ <CardContent>
297
+ <div className="space-y-4">
298
+ {[
299
+ { name: 'Monthly Analytics', date: '2024-01-15', status: 'completed' },
300
+ { name: 'User Activity Report', date: '2024-01-14', status: 'completed' },
301
+ { name: 'System Performance', date: '2024-01-13', status: 'processing' },
302
+ ].map((report, index) => (
303
+ <div key={index} className="flex items-center justify-between p-4 border border-border/50 rounded-lg bg-card/50">
304
+ <div className="flex items-center gap-3">
305
+ <FileText className="h-5 w-5 text-muted-foreground" />
306
+ <div className="min-w-0 flex-1">
307
+ <p className="font-medium truncate">{report.name}</p>
308
+ <p className="text-sm text-muted-foreground">{report.date}</p>
309
+ </div>
310
+ </div>
311
+ <div className="flex items-center gap-2">
312
+ <Badge variant={report.status === 'completed' ? 'default' : 'secondary'}>
313
+ {report.status}
314
+ </Badge>
315
+ <Button variant="ghost" size="sm">
316
+ <Eye className="h-4 w-4" />
317
+ </Button>
318
+ </div>
319
+ </div>
320
+ ))}
321
+ </div>
322
+ </CardContent>
323
+ </Card>
324
+ </TabsContent>
325
+
326
+ <TabsContent value="settings" className="space-y-4">
327
+ <div className="grid gap-6 lg:grid-cols-2">
328
+ <Card>
329
+ <CardHeader>
330
+ <CardTitle>Preferences</CardTitle>
331
+ <CardDescription>
332
+ Customize your experience
333
+ </CardDescription>
334
+ </CardHeader>
335
+ <CardContent className="space-y-6">
336
+ <div className="flex items-center justify-between">
337
+ <div className="space-y-0.5">
338
+ <Label htmlFor="notifications">Notifications</Label>
339
+ <p className="text-sm text-muted-foreground">
340
+ Receive system notifications
341
+ </p>
342
+ </div>
343
+ <Switch
344
+ id="notifications"
345
+ checked={notifications}
346
+ onCheckedChange={setNotifications}
347
+ />
348
+ </div>
349
+
350
+ <div className="space-y-2">
351
+ <Label htmlFor="theme">Theme</Label>
352
+ <Select>
353
+ <SelectTrigger id="theme">
354
+ <SelectValue placeholder="Select theme" />
355
+ </SelectTrigger>
356
+ <SelectContent>
357
+ <SelectItem value="light">Light</SelectItem>
358
+ <SelectItem value="dark">Dark</SelectItem>
359
+ <SelectItem value="system">System</SelectItem>
360
+ </SelectContent>
361
+ </Select>
362
+ </div>
363
+ </CardContent>
364
+ </Card>
365
+
366
+ <Card>
367
+ <CardHeader>
368
+ <CardTitle>Security</CardTitle>
369
+ <CardDescription>
370
+ Manage your security settings
371
+ </CardDescription>
372
+ </CardHeader>
373
+ <CardContent className="space-y-6">
374
+ <Alert>
375
+ <Shield className="h-4 w-4" />
376
+ <AlertTitle>Two-factor authentication</AlertTitle>
377
+ <AlertDescription>
378
+ Add an extra layer of security to your account
379
+ </AlertDescription>
380
+ </Alert>
381
+
382
+ <div className="space-y-4">
383
+ <div className="space-y-2">
384
+ <Label htmlFor="current-password">Current Password</Label>
385
+ <Input id="current-password" type="password" />
386
+ </div>
387
+
388
+ <div className="space-y-2">
389
+ <Label htmlFor="new-password">New Password</Label>
390
+ <Input id="new-password" type="password" />
391
+ </div>
392
+
393
+ <Button className="w-full">Update Password</Button>
394
+ </div>
395
+ </CardContent>
396
+ </Card>
397
+ </div>
398
+ </TabsContent>
399
+ </Tabs>
400
+ </div>
401
+ )
402
+ }