spine-framework 0.3.124 → 0.3.126

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 (319) hide show
  1. package/.framework/cli/commands/agents.ts +35 -37
  2. package/.framework/cli/commands/auth.ts +35 -34
  3. package/.framework/cli/commands/create-app.ts +104 -40
  4. package/.framework/cli/commands/dev.ts +104 -69
  5. package/.framework/cli/commands/doctor.ts +179 -69
  6. package/.framework/cli/commands/generate.ts +83 -143
  7. package/.framework/cli/commands/init.ts +72 -34
  8. package/.framework/cli/commands/install-app.ts +260 -125
  9. package/.framework/cli/commands/items.ts +33 -44
  10. package/.framework/cli/commands/migrate.ts +122 -40
  11. package/.framework/cli/commands/migrations.ts +33 -40
  12. package/.framework/cli/commands/pipelines.ts +31 -39
  13. package/.framework/cli/commands/status.ts +47 -23
  14. package/.framework/cli/commands/system.ts +47 -37
  15. package/.framework/cli/commands/test.ts +112 -68
  16. package/.framework/cli/commands/validate-app.ts +215 -121
  17. package/.framework/cli/context.ts +112 -130
  18. package/.framework/cli/env-loader.ts +47 -18
  19. package/.framework/cli/index.ts +81 -42
  20. package/.framework/docs/runtime-types.md +1024 -0
  21. package/.framework/functions/_shared/agent-runner.ts +1296 -961
  22. package/.framework/functions/_shared/app-manifest.ts +82 -68
  23. package/.framework/functions/_shared/audit.ts +135 -83
  24. package/.framework/functions/_shared/{cil-state.ts → cil.ts} +158 -56
  25. package/.framework/functions/_shared/db.ts +80 -126
  26. package/.framework/functions/_shared/hash-api-key.ts +63 -0
  27. package/.framework/functions/_shared/index.ts +224 -335
  28. package/.framework/functions/_shared/kb.ts +319 -0
  29. package/.framework/functions/_shared/llm.ts +92 -0
  30. package/.framework/functions/_shared/logging.ts +288 -0
  31. package/.framework/functions/_shared/middleware.ts +329 -365
  32. package/.framework/functions/_shared/outcomes.ts +36 -0
  33. package/.framework/functions/_shared/permissions.ts +359 -643
  34. package/.framework/functions/_shared/pipeline-runner.ts +243 -316
  35. package/.framework/functions/_shared/principal.ts +376 -468
  36. package/.framework/functions/_shared/resolve-credentials.ts +102 -0
  37. package/.framework/functions/_shared/resolve-ids.ts +188 -16
  38. package/.framework/functions/_shared/retry-deliveries.ts +104 -0
  39. package/.framework/functions/_shared/schema-utils.ts +611 -373
  40. package/.framework/functions/_shared/testing.ts +207 -137
  41. package/.framework/functions/_shared/tracing.ts +276 -0
  42. package/.framework/functions/_shared/trigger-engine.ts +159 -211
  43. package/.framework/functions/_shared/webhook-registration.ts +95 -81
  44. package/.framework/functions/_shared/webhook-registry.ts +153 -75
  45. package/.framework/functions/account-nodes.ts +31 -53
  46. package/.framework/functions/adapters/generic-webhook-inbound.ts +56 -0
  47. package/.framework/functions/adapters/generic-webhook-outbound.ts +43 -0
  48. package/.framework/functions/adapters/openai-outbound.ts +40 -0
  49. package/.framework/functions/admin-data.ts +685 -537
  50. package/.framework/functions/admin-funnel.ts +31 -20
  51. package/.framework/functions/admin-install-funnel.ts +47 -28
  52. package/.framework/functions/admin-signals.ts +47 -29
  53. package/.framework/functions/ai-agents.ts +122 -147
  54. package/.framework/functions/ai-interactions.ts +180 -90
  55. package/.framework/functions/api-keys.ts +250 -192
  56. package/.framework/functions/apps.ts +203 -197
  57. package/.framework/functions/auth.ts +98 -91
  58. package/.framework/functions/cil-agent-ingest.ts +773 -0
  59. package/.framework/functions/cil-agent.ts +592 -0
  60. package/.framework/functions/cil-callmap.ts +1227 -0
  61. package/.framework/functions/cil-config.ts +583 -0
  62. package/.framework/functions/cil-context.ts +445 -0
  63. package/.framework/functions/cil-doc.ts +1752 -0
  64. package/.framework/functions/cil-embeddings.ts +1202 -0
  65. package/.framework/functions/cil-graph.ts +585 -0
  66. package/.framework/functions/cil-ingest.ts +2416 -0
  67. package/.framework/functions/cil-pipeline.ts +318 -0
  68. package/.framework/functions/cil-project.ts +499 -0
  69. package/.framework/functions/cil-validate.ts +469 -0
  70. package/.framework/functions/debug-auth.ts +73 -53
  71. package/.framework/functions/deliveries.ts +117 -0
  72. package/.framework/functions/embeddings.ts +528 -516
  73. package/.framework/functions/eval-harness.ts +158 -106
  74. package/.framework/functions/integration-outbound.ts +311 -0
  75. package/.framework/functions/integration-routes.ts +240 -466
  76. package/.framework/functions/integrations.ts +132 -140
  77. package/.framework/functions/invites.ts +401 -201
  78. package/.framework/functions/item-progress.ts +113 -53
  79. package/.framework/functions/kb.ts +28 -0
  80. package/.framework/functions/logs.ts +239 -222
  81. package/.framework/functions/observability.ts +308 -259
  82. package/.framework/functions/pipeline-executions.ts +179 -235
  83. package/.framework/functions/pipelines.ts +163 -205
  84. package/.framework/functions/prompt-configs.ts +109 -156
  85. package/.framework/functions/roles.ts +97 -147
  86. package/.framework/functions/system-cron.ts +132 -218
  87. package/.framework/functions/system.ts +112 -52
  88. package/.framework/functions/tests.ts +32 -28
  89. package/.framework/functions/timers.ts +162 -210
  90. package/.framework/functions/triggers.ts +282 -346
  91. package/.framework/functions/types.ts +283 -400
  92. package/.framework/migrations/001_core_schema.sql +630 -0
  93. package/.framework/migrations/002_core_rls_and_functions.sql +532 -0
  94. package/.framework/migrations/{003_system_data.sql → 003_core_system_data.sql} +26 -153
  95. package/.framework/migrations/004_core_rpc_and_broker.sql +421 -0
  96. package/.framework/migrations/005_core_observability.sql +598 -0
  97. package/.framework/migrations/006_security_hardening_rls.sql +97 -0
  98. package/.framework/migrations/007_kb_article_list.sql +237 -0
  99. package/.framework/migrations/008_items_target.sql +8 -0
  100. package/.framework/migrations/009_roles_slug_unique.sql +11 -0
  101. package/.framework/public/spine.config.json +91 -0
  102. package/.framework/scripts/app-install-cli.ts +112 -98
  103. package/.framework/src/App.tsx +67 -20
  104. package/.framework/src/apps/admin/index.tsx +97 -27
  105. package/.framework/src/components/AppWrapper.tsx +50 -11
  106. package/.framework/src/components/CustomAppLoader.tsx +131 -22
  107. package/.framework/src/components/admin/AdminListPage.tsx +75 -8
  108. package/.framework/src/components/admin/AdminSidebar.tsx +148 -36
  109. package/.framework/src/components/admin/AdminStatsCard.tsx +48 -29
  110. package/.framework/src/components/admin/PageInstructions.tsx +49 -0
  111. package/.framework/src/components/admin/SortableTableHeader.tsx +49 -2
  112. package/.framework/src/components/app-shell/GenericAppShell.tsx +69 -11
  113. package/.framework/src/components/app-shell/GenericDetailPage.tsx +55 -10
  114. package/.framework/src/components/app-shell/GenericListPage.tsx +76 -9
  115. package/.framework/src/components/app-sidebar.tsx +50 -3
  116. package/.framework/src/components/auth/ProtectedRoute.tsx +53 -45
  117. package/.framework/src/components/kb/KBArticleEditor.tsx +409 -0
  118. package/.framework/src/components/kb/KBArticleList.tsx +557 -0
  119. package/.framework/src/components/layout/AppShell.tsx +54 -16
  120. package/.framework/src/components/layout/Header.tsx +50 -38
  121. package/.framework/src/components/layout/Layout.tsx +48 -32
  122. package/.framework/src/components/layout/Sidebar.tsx +167 -16
  123. package/.framework/src/components/runtime/DataDetailHeader.tsx +33 -1
  124. package/.framework/src/components/runtime/DataDetailPage.tsx +289 -4
  125. package/.framework/src/components/runtime/DataFilters.tsx +78 -1
  126. package/.framework/src/components/runtime/DataHeader.tsx +32 -29
  127. package/.framework/src/components/runtime/DataListPage.tsx +161 -2
  128. package/.framework/src/components/runtime/DataStats.tsx +48 -1
  129. package/.framework/src/components/runtime/DataTable.tsx +153 -1
  130. package/.framework/src/components/runtime/SchemaDetailForm.tsx +77 -46
  131. package/.framework/src/components/runtime/index.ts +16 -9
  132. package/.framework/src/components/search-form.tsx +33 -1
  133. package/.framework/src/components/shared/AgentView.tsx +48 -51
  134. package/.framework/src/components/shared/FieldRenderer.tsx +84 -67
  135. package/.framework/src/components/shared/InviteManager.tsx +113 -52
  136. package/.framework/src/components/shared/MemberList.tsx +182 -0
  137. package/.framework/src/components/shared/SchemaFields.tsx +96 -78
  138. package/.framework/src/components/ui/DataTable.tsx +86 -56
  139. package/.framework/src/components/ui/Form.tsx +188 -109
  140. package/.framework/src/components/ui/ItemCard.tsx +86 -58
  141. package/.framework/src/components/ui/ItemListView.tsx +88 -61
  142. package/.framework/src/components/ui/LoadingSpinner.tsx +52 -27
  143. package/.framework/src/components/ui/Modal.tsx +81 -4
  144. package/.framework/src/components/ui/RichTextEditor.tsx +101 -9
  145. package/.framework/src/components/ui/accordion.tsx +97 -5
  146. package/.framework/src/components/ui/alert-dialog.tsx +225 -13
  147. package/.framework/src/components/ui/alert.tsx +113 -6
  148. package/.framework/src/components/ui/aspect-ratio.tsx +49 -2
  149. package/.framework/src/components/ui/avatar.tsx +129 -7
  150. package/.framework/src/components/ui/badge.tsx +65 -3
  151. package/.framework/src/components/ui/breadcrumb.tsx +145 -8
  152. package/.framework/src/components/ui/button-group.tsx +81 -4
  153. package/.framework/src/components/ui/button.tsx +49 -2
  154. package/.framework/src/components/ui/calendar.tsx +65 -3
  155. package/.framework/src/components/ui/card.tsx +145 -8
  156. package/.framework/src/components/ui/carousel.tsx +129 -7
  157. package/.framework/src/components/ui/chart.tsx +161 -10
  158. package/.framework/src/components/ui/checkbox.tsx +49 -2
  159. package/.framework/src/components/ui/collapsible.tsx +81 -5
  160. package/.framework/src/components/ui/combobox.tsx +305 -20
  161. package/.framework/src/components/ui/command.tsx +177 -11
  162. package/.framework/src/components/ui/context-menu.tsx +273 -17
  163. package/.framework/src/components/ui/dialog.tsx +209 -27
  164. package/.framework/src/components/ui/direction.tsx +64 -4
  165. package/.framework/src/components/ui/drawer.tsx +193 -12
  166. package/.framework/src/components/ui/dropdown-menu.tsx +273 -18
  167. package/.framework/src/components/ui/empty.tsx +145 -9
  168. package/.framework/src/components/ui/field.tsx +209 -14
  169. package/.framework/src/components/ui/hover-card.tsx +81 -4
  170. package/.framework/src/components/ui/input-group.tsx +162 -10
  171. package/.framework/src/components/ui/input-otp.tsx +98 -5
  172. package/.framework/src/components/ui/input.tsx +49 -2
  173. package/.framework/src/components/ui/item.tsx +225 -13
  174. package/.framework/src/components/ui/kbd.tsx +65 -3
  175. package/.framework/src/components/ui/label.tsx +49 -2
  176. package/.framework/src/components/ui/menubar.tsx +289 -17
  177. package/.framework/src/components/ui/native-select.tsx +97 -5
  178. package/.framework/src/components/ui/navigation-menu.tsx +177 -10
  179. package/.framework/src/components/ui/pagination.tsx +161 -9
  180. package/.framework/src/components/ui/popover.tsx +145 -8
  181. package/.framework/src/components/ui/progress.tsx +49 -2
  182. package/.framework/src/components/ui/radio-group.tsx +65 -3
  183. package/.framework/src/components/ui/resizable.tsx +82 -4
  184. package/.framework/src/components/ui/scroll-area.tsx +65 -3
  185. package/.framework/src/components/ui/select.tsx +193 -11
  186. package/.framework/src/components/ui/separator.tsx +49 -2
  187. package/.framework/src/components/ui/sheet.tsx +193 -11
  188. package/.framework/src/components/ui/sidebar.tsx +481 -38
  189. package/.framework/src/components/ui/skeleton.tsx +49 -2
  190. package/.framework/src/components/ui/slider.tsx +49 -2
  191. package/.framework/src/components/ui/sonner.tsx +49 -2
  192. package/.framework/src/components/ui/spinner.tsx +49 -2
  193. package/.framework/src/components/ui/switch.tsx +49 -2
  194. package/.framework/src/components/ui/table-primitives.tsx +160 -33
  195. package/.framework/src/components/ui/table.tsx +161 -9
  196. package/.framework/src/components/ui/tabs.tsx +113 -6
  197. package/.framework/src/components/ui/textarea.tsx +49 -2
  198. package/.framework/src/components/ui/toggle-group.tsx +81 -4
  199. package/.framework/src/components/ui/toggle.tsx +65 -3
  200. package/.framework/src/components/ui/tooltip.tsx +97 -5
  201. package/.framework/src/contexts/AppContext.tsx +129 -45
  202. package/.framework/src/contexts/AuthContext.tsx +187 -144
  203. package/.framework/src/hooks/use-mobile.ts +48 -2
  204. package/.framework/src/hooks/useApi.ts +208 -159
  205. package/.framework/src/hooks/useAppPath.ts +32 -23
  206. package/.framework/src/hooks/useApps.ts +51 -20
  207. package/.framework/src/hooks/useEntityList.ts +32 -78
  208. package/.framework/src/hooks/useEntityRecord.ts +35 -96
  209. package/.framework/src/hooks/useForm.ts +32 -92
  210. package/.framework/src/hooks/useListSchema.ts +49 -78
  211. package/.framework/src/hooks/useSchemaRecord.ts +114 -105
  212. package/.framework/src/lib/api.ts +195 -116
  213. package/.framework/src/lib/supabase.ts +98 -64
  214. package/.framework/src/lib/utils.ts +287 -151
  215. package/.framework/src/main.tsx +49 -3
  216. package/.framework/src/pages/DashboardPage.tsx +52 -29
  217. package/.framework/src/pages/NotFoundPage.tsx +32 -10
  218. package/.framework/src/pages/SetupPage.tsx +32 -12
  219. package/.framework/src/pages/admin/AIAgentDetailPage.tsx +119 -10
  220. package/.framework/src/pages/admin/AIAgentsPage.tsx +48 -19
  221. package/.framework/src/pages/admin/APIKeyDetailPage.tsx +187 -17
  222. package/.framework/src/pages/admin/APIKeysPage.tsx +98 -22
  223. package/.framework/src/pages/admin/AlertsConfigPage.tsx +113 -26
  224. package/.framework/src/pages/admin/AppDetailPage.tsx +125 -8
  225. package/.framework/src/pages/admin/AppsPage.tsx +49 -2
  226. package/.framework/src/pages/admin/DeliveriesPage.tsx +196 -0
  227. package/.framework/src/pages/admin/DesignedPage.tsx +32 -18
  228. package/.framework/src/pages/admin/EmbeddingDetailPage.tsx +215 -484
  229. package/.framework/src/pages/admin/EmbeddingsPage.tsx +116 -319
  230. package/.framework/src/pages/admin/ExtendedShadcnTestPage.tsx +34 -9
  231. package/.framework/src/pages/admin/IncrementalShadcnTestPage.tsx +34 -9
  232. package/.framework/src/pages/admin/IntegratedDashboard.tsx +32 -16
  233. package/.framework/src/pages/admin/IntegrationDetailPage.tsx +183 -26
  234. package/.framework/src/pages/admin/IntegrationsPage.tsx +48 -19
  235. package/.framework/src/pages/admin/InvitesPage.tsx +48 -14
  236. package/.framework/src/pages/admin/LogsPage.tsx +422 -75
  237. package/.framework/src/pages/admin/MinimalShadcnTestPage.tsx +34 -9
  238. package/.framework/src/pages/admin/ObservabilityDashboard.tsx +113 -24
  239. package/.framework/src/pages/admin/PipelineDetailPage.tsx +206 -34
  240. package/.framework/src/pages/admin/PipelineExecutionsPage.tsx +50 -17
  241. package/.framework/src/pages/admin/PipelinesPage.tsx +160 -21
  242. package/.framework/src/pages/admin/PromptConfigDetailPage.tsx +378 -88
  243. package/.framework/src/pages/admin/PromptConfigsPage.tsx +125 -16
  244. package/.framework/src/pages/admin/ProperlyDesignedPage.tsx +49 -10
  245. package/.framework/src/pages/admin/RoleDetailPage.tsx +130 -10
  246. package/.framework/src/pages/admin/RolesPage.tsx +171 -18
  247. package/.framework/src/pages/admin/SelectTestPage.tsx +34 -9
  248. package/.framework/src/pages/admin/ShadcnTestPage.tsx +49 -11
  249. package/.framework/src/pages/admin/SimpleDashboard.tsx +49 -10
  250. package/.framework/src/pages/admin/TestRunDetailPage.tsx +49 -4
  251. package/.framework/src/pages/admin/TestingDashboard.tsx +98 -28
  252. package/.framework/src/pages/admin/TimerDetailPage.tsx +143 -33
  253. package/.framework/src/pages/admin/TimersPage.tsx +48 -20
  254. package/.framework/src/pages/admin/TriggerDetailPage.tsx +118 -30
  255. package/.framework/src/pages/admin/TriggersPage.tsx +64 -19
  256. package/.framework/src/pages/admin/TypeDetailPage.tsx +138 -15
  257. package/.framework/src/pages/admin/TypesPage.tsx +48 -20
  258. package/.framework/src/pages/admin/cil/CILAgentPage.tsx +465 -0
  259. package/.framework/src/pages/admin/cil/CILChunkDetailPage.tsx +787 -0
  260. package/.framework/src/pages/admin/cil/CILDashboardPage.tsx +699 -0
  261. package/.framework/src/pages/admin/cil/CILFileListPage.tsx +647 -0
  262. package/.framework/src/pages/admin/cil/CILGraphPage.tsx +616 -0
  263. package/.framework/src/pages/admin/cil/CILIngestionPage.tsx +1402 -0
  264. package/.framework/src/pages/admin/cil/CILProjectsPage.tsx +614 -0
  265. package/.framework/src/pages/admin/cil/CILSearchPage.tsx +571 -0
  266. package/.framework/src/pages/admin/cil/FlexiblePipelinePage.tsx +731 -0
  267. package/.framework/src/pages/admin/kb/KBAdminPage.tsx +64 -0
  268. package/.framework/src/pages/auth/AuthConfirmPage.tsx +52 -51
  269. package/.framework/src/pages/auth/ForgotPasswordPage.tsx +31 -22
  270. package/.framework/src/pages/auth/LoginPage.tsx +50 -23
  271. package/.framework/src/pages/auth/PendingApprovalPage.tsx +31 -15
  272. package/.framework/src/pages/auth/RegisterPage.tsx +281 -317
  273. package/.framework/src/pages/spine-framework/APIPage.tsx +33 -0
  274. package/.framework/src/pages/spine-framework/CLIPage.tsx +33 -0
  275. package/.framework/src/types/auth.ts +128 -71
  276. package/.framework/src/types/types.ts +373 -157
  277. package/custom/.devin/skills/spine-workbench-discovery/SKILL.md +39 -0
  278. package/custom/.devin/skills/spine-workbench-idea/SKILL.md +36 -0
  279. package/custom/.devin/skills/spine-workbench-implement/SKILL.md +46 -0
  280. package/custom/.devin/skills/spine-workbench-initiative/SKILL.md +28 -0
  281. package/custom/.devin/skills/spine-workbench-plan/SKILL.md +38 -0
  282. package/docs/README.md +9 -130
  283. package/netlify.toml +5 -2
  284. package/package.json +13 -25
  285. package/scripts/kb-ingest-docs.ts +203 -0
  286. package/spine.config.json +65 -4
  287. package/.framework/migrations/001_schema.sql +0 -425
  288. package/.framework/migrations/002_rls_and_functions.sql +0 -763
  289. package/.framework/migrations/004_enhancements.sql +0 -43
  290. package/.framework/migrations/005_auth_user_trigger.sql +0 -105
  291. package/.framework/migrations/006_fix_current_actor_id.sql +0 -21
  292. package/.framework/migrations/016_invites.sql +0 -27
  293. package/.framework/migrations/017_fix_get_account_apps.sql +0 -78
  294. package/.framework/migrations/018_apps_required_roles.sql +0 -17
  295. package/.framework/migrations/019_triggers_unique_constraint.sql +0 -13
  296. package/.framework/migrations/020_get_account_apps_role_filter.sql +0 -117
  297. package/.framework/migrations/021_app_domains.sql +0 -112
  298. package/.framework/migrations/022_route_prefix_domain_unique.sql +0 -21
  299. package/.framework/migrations/023_match_embeddings_rpc.sql +0 -78
  300. package/.framework/migrations/024_messages_account_id.sql +0 -9
  301. package/.framework/migrations/025_retype_threads_messages.sql +0 -240
  302. package/.framework/migrations/026_fix_rls_policies.sql +0 -47
  303. package/.framework/migrations/027_embedding_lifecycle.sql +0 -176
  304. package/.framework/migrations/028_fix_message_data_permissions.sql +0 -49
  305. package/.framework/migrations/029_tighten_support_triage_prompt.sql +0 -41
  306. package/.framework/migrations/030_messages_updated_by.sql +0 -6
  307. package/.framework/migrations/031_seed_upsert_constraints.sql +0 -35
  308. package/docs/APPS.md +0 -232
  309. package/docs/ARCHITECTURE.md +0 -246
  310. package/docs/INSTALL.md +0 -155
  311. package/docs/design-schema-spec.md +0 -1837
  312. package/docs/dev-guides/01-create-an-app.md +0 -183
  313. package/docs/dev-guides/02-create-a-function.md +0 -178
  314. package/docs/dev-guides/03-create-a-component.md +0 -178
  315. package/docs/dev-guides/04-webhook-handlers.md +0 -129
  316. package/docs/dev-guides/05-testing.md +0 -168
  317. package/docs/dev-guides/README.md +0 -40
  318. package/docs/npm-packages-plan.md +0 -288
  319. package/docs/spine-core--api-reference.md +0 -822
@@ -1,3 +1,36 @@
1
+
2
+
3
+
4
+
5
+
6
+
7
+
8
+
9
+
10
+
11
+
12
+
13
+
14
+
15
+
16
+
17
+
18
+
19
+ // CIL[BEGIN chunk_id="menubar_module_header_1783796064" type="module_header" identity="imports" parent="none"]
20
+ // CIL[DOC-MACRO purpose="Import dependencies for menubar components"]
21
+ // CIL[DOC-RESPONSIBILITY responsibility="Import React, Radix UI, utilities, and icons"]
22
+ // CIL[DOC-CONTEXT module="menubar" layer="ui_components" related_files="[\"custom/apps/cortex/pages/operations/OperationsDashboard.tsx\",\".framework/src/components/layout/Sidebar.tsx\",\".framework/src/components/ui/dialog.tsx\",\".framework/src/pages/admin/TypeDetailPage.tsx\",\".framework/functions/_shared/principal.ts\",\"\\\"]"]
23
+ // CIL[DOC-CONTRACT inputs="none" outputs="imported modules" errors="none" side_effects="module imports"]
24
+ // CIL[DOC-MICRO logic_summary="Imports all dependencies for menubar component system" notable_decisions="[]"]
25
+ // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
26
+ // CIL[DOC-STABILITY stability="stable"]
27
+ // CIL[DOC-AUDIENCE audience="developer"]
28
+ // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: custom/apps/cortex/pages/operations/OperationsDashboard.tsx, .framework/src/components/layout/Sidebar.tsx, .framework/src/components/ui/dialog.tsx, .framework/src/pages/admin/TypeDetailPage.tsx, .framework/functions/_shared/principal.ts, \."]
29
+ // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
30
+ // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
31
+ // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
32
+ // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
33
+ // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
1
34
  "use client"
2
35
 
3
36
  import * as React from "react"
@@ -5,7 +38,21 @@ import { Menubar as MenubarPrimitive } from "radix-ui"
5
38
 
6
39
  import { cn } from "@/lib/utils"
7
40
  import { CheckIcon, ChevronRightIcon } from "lucide-react"
8
-
41
+ // CIL[END chunk_id="menubar_module_header_1783796064"]
42
+ // CIL[BEGIN chunk_id="menubar_menubar_1783796064" type="function" identity="menubar" parent="none"]
43
+ // CIL[DOC-MACRO purpose="Render main menubar container"]
44
+ // CIL[DOC-RESPONSIBILITY responsibility="Create styled menubar root element"]
45
+ // CIL[DOC-CONTEXT module="menubar" layer="ui_components" related_files="[\"custom/apps/portal/pages/ContentPage.tsx\",\"custom/apps/portal/pages/CoursesPage.tsx\",\".framework/src/pages/admin/RolesPage.tsx\",\"\\\"]"]
46
+ // CIL[DOC-CONTRACT inputs="none" outputs="styled menubar container" errors="none" side_effects="renders DOM element"]
47
+ // CIL[DOC-MICRO logic_summary="Creates horizontal menubar container with border and padding" notable_decisions="[]"]
48
+ // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
49
+ // CIL[DOC-STABILITY stability="stable"]
50
+ // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: custom/apps/portal/pages/ContentPage.tsx, custom/apps/portal/pages/CoursesPage.tsx, .framework/src/pages/admin/RolesPage.tsx, \."]
51
+ // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
52
+ // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
53
+ // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
54
+ // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
55
+ // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
9
56
  function Menubar({
10
57
  className,
11
58
  ...props
@@ -18,25 +65,81 @@ function Menubar({
18
65
  />
19
66
  )
20
67
  }
21
-
68
+ // CIL[END chunk_id="menubar_menubar_1783796064"]
69
+ // CIL[BEGIN chunk_id="menubar_menubarmenu_1783796064" type="function" identity="menubarmenu" parent="none"]
70
+ // CIL[DOC-MACRO purpose="Render menubar menu container"]
71
+ // CIL[DOC-RESPONSIBILITY responsibility="Create menu wrapper for menubar items"]
72
+ // CIL[DOC-CONTEXT module="menubar" layer="ui_components" related_files="[\"custom/apps/portal/pages/ContentPage.tsx\",\"custom/apps/portal/pages/CoursesPage.tsx\",\".framework/src/pages/admin/RolesPage.tsx\",\"\\\"]"]
73
+ // CIL[DOC-CONTRACT inputs="none" outputs="menu container" errors="none" side_effects="renders DOM element"]
74
+ // CIL[DOC-MICRO logic_summary="Creates menu container for organizing menubar items" notable_decisions="[]"]
75
+ // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
76
+ // CIL[DOC-STABILITY stability="stable"]
77
+ // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: custom/apps/portal/pages/ContentPage.tsx, custom/apps/portal/pages/CoursesPage.tsx, .framework/src/pages/admin/RolesPage.tsx, \."]
78
+ // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
79
+ // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
80
+ // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
81
+ // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
82
+ // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
22
83
  function MenubarMenu({
23
84
  ...props
24
85
  }: React.ComponentProps<typeof MenubarPrimitive.Menu>) {
25
86
  return <MenubarPrimitive.Menu data-slot="menubar-menu" {...props} />
26
87
  }
27
-
88
+ // CIL[END chunk_id="menubar_menubarmenu_1783796064"]
89
+ // CIL[BEGIN chunk_id="menubar_menubargroup_1783796064" type="function" identity="menubargroup" parent="none"]
90
+ // CIL[DOC-MACRO purpose="Render menubar group container"]
91
+ // CIL[DOC-RESPONSIBILITY responsibility="Create grouping container for menu items"]
92
+ // CIL[DOC-CONTEXT module="menubar" layer="ui_components" related_files="[\"custom/apps/portal/pages/ContentPage.tsx\",\"custom/apps/portal/pages/CoursesPage.tsx\",\".framework/src/pages/admin/RolesPage.tsx\",\"\\\"]"]
93
+ // CIL[DOC-CONTRACT inputs="none" outputs="group container" errors="none" side_effects="renders DOM element"]
94
+ // CIL[DOC-MICRO logic_summary="Creates semantic grouping for related menu items" notable_decisions="[]"]
95
+ // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
96
+ // CIL[DOC-STABILITY stability="stable"]
97
+ // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: custom/apps/portal/pages/ContentPage.tsx, custom/apps/portal/pages/CoursesPage.tsx, .framework/src/pages/admin/RolesPage.tsx, \."]
98
+ // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
99
+ // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
100
+ // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
101
+ // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
102
+ // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
28
103
  function MenubarGroup({
29
104
  ...props
30
105
  }: React.ComponentProps<typeof MenubarPrimitive.Group>) {
31
106
  return <MenubarPrimitive.Group data-slot="menubar-group" {...props} />
32
107
  }
33
-
108
+ // CIL[END chunk_id="menubar_menubargroup_1783796064"]
109
+ // CIL[BEGIN chunk_id="menubar_menubarportal_1783796064" type="function" identity="menubarportal" parent="none"]
110
+ // CIL[DOC-MACRO purpose="Render portal for menubar content"]
111
+ // CIL[DOC-RESPONSIBILITY responsibility="Create portal container for dropdown content"]
112
+ // CIL[DOC-CONTEXT module="menubar" layer="ui_components" related_files="[\"custom/apps/portal/pages/ContentPage.tsx\",\"custom/apps/portal/pages/CoursesPage.tsx\",\".framework/src/components/layout/Sidebar.tsx\",\".framework/src/pages/admin/TypeDetailPage.tsx\",\".framework/functions/_shared/principal.ts\",\"\\\"]"]
113
+ // CIL[DOC-CONTRACT inputs="none" outputs="portal container" errors="none" side_effects="renders DOM element"]
114
+ // CIL[DOC-MICRO logic_summary="Creates portal for rendering content outside DOM hierarchy" notable_decisions="[]"]
115
+ // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
116
+ // CIL[DOC-STABILITY stability="stable"]
117
+ // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: custom/apps/portal/pages/ContentPage.tsx, custom/apps/portal/pages/CoursesPage.tsx, .framework/src/components/layout/Sidebar.tsx, .framework/src/pages/admin/TypeDetailPage.tsx, .framework/functions/_shared/principal.ts, \."]
118
+ // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
119
+ // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
120
+ // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
121
+ // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
122
+ // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
34
123
  function MenubarPortal({
35
124
  ...props
36
125
  }: React.ComponentProps<typeof MenubarPrimitive.Portal>) {
37
126
  return <MenubarPrimitive.Portal data-slot="menubar-portal" {...props} />
38
127
  }
39
-
128
+ // CIL[END chunk_id="menubar_menubarportal_1783796064"]
129
+ // CIL[BEGIN chunk_id="menubar_menubarradiogroup_1783796064" type="function" identity="menubarradiogroup" parent="none"]
130
+ // CIL[DOC-MACRO purpose="Render radio group for menubar items"]
131
+ // CIL[DOC-RESPONSIBILITY responsibility="Create radio button group container"]
132
+ // CIL[DOC-CONTEXT module="menubar" layer="ui_components" related_files="[]"]
133
+ // CIL[DOC-CONTRACT inputs="none" outputs="radio group container" errors="none" side_effects="renders DOM element"]
134
+ // CIL[DOC-MICRO logic_summary="Creates radio group for mutually exclusive menu options" notable_decisions="[]"]
135
+ // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
136
+ // CIL[DOC-STABILITY stability="stable"]
137
+ // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: none."]
138
+ // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
139
+ // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
140
+ // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
141
+ // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
142
+ // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
40
143
  function MenubarRadioGroup({
41
144
  ...props
42
145
  }: React.ComponentProps<typeof MenubarPrimitive.RadioGroup>) {
@@ -44,7 +147,21 @@ function MenubarRadioGroup({
44
147
  <MenubarPrimitive.RadioGroup data-slot="menubar-radio-group" {...props} />
45
148
  )
46
149
  }
47
-
150
+ // CIL[END chunk_id="menubar_menubarradiogroup_1783796064"]
151
+ // CIL[BEGIN chunk_id="menubar_menubartrigger_1783796064" type="function" identity="menubartrigger" parent="none"]
152
+ // CIL[DOC-MACRO purpose="Render trigger button for menubar menu"]
153
+ // CIL[DOC-RESPONSIBILITY responsibility="Create clickable trigger for dropdown menu"]
154
+ // CIL[DOC-CONTEXT module="menubar" layer="ui_components" related_files="[]"]
155
+ // CIL[DOC-CONTRACT inputs="none" outputs="styled trigger button" errors="none" side_effects="renders DOM element"]
156
+ // CIL[DOC-MICRO logic_summary="Creates trigger button with hover and active states" notable_decisions="[]"]
157
+ // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
158
+ // CIL[DOC-STABILITY stability="stable"]
159
+ // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: none."]
160
+ // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
161
+ // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
162
+ // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
163
+ // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
164
+ // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
48
165
  function MenubarTrigger({
49
166
  className,
50
167
  ...props
@@ -60,7 +177,21 @@ function MenubarTrigger({
60
177
  />
61
178
  )
62
179
  }
63
-
180
+ // CIL[END chunk_id="menubar_menubartrigger_1783796064"]
181
+ // CIL[BEGIN chunk_id="menubar_menubarcontent_1783796064" type="function" identity="menubarcontent" parent="none"]
182
+ // CIL[DOC-MACRO purpose="Render dropdown content for menubar"]
183
+ // CIL[DOC-RESPONSIBILITY responsibility="Create styled dropdown container with animations"]
184
+ // CIL[DOC-CONTEXT module="menubar" layer="ui_components" related_files="[]"]
185
+ // CIL[DOC-CONTRACT inputs="none" outputs="styled dropdown content" errors="none" side_effects="renders DOM element"]
186
+ // CIL[DOC-MICRO logic_summary="Creates dropdown content with positioning and slide animations" notable_decisions="[]"]
187
+ // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
188
+ // CIL[DOC-STABILITY stability="stable"]
189
+ // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: none."]
190
+ // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
191
+ // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
192
+ // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
193
+ // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
194
+ // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
64
195
  function MenubarContent({
65
196
  className,
66
197
  align = "start",
@@ -81,7 +212,21 @@ function MenubarContent({
81
212
  </MenubarPortal>
82
213
  )
83
214
  }
84
-
215
+ // CIL[END chunk_id="menubar_menubarcontent_1783796064"]
216
+ // CIL[BEGIN chunk_id="menubar_menubaritem_1783796064" type="function" identity="menubaritem" parent="none"]
217
+ // CIL[DOC-MACRO purpose="Render menu item with variants"]
218
+ // CIL[DOC-RESPONSIBILITY responsibility="Create flexible menu item with styling options"]
219
+ // CIL[DOC-CONTEXT module="menubar" layer="ui_components" related_files="[]"]
220
+ // CIL[DOC-CONTRACT inputs="none" outputs="styled menu item" errors="none" side_effects="renders DOM element"]
221
+ // CIL[DOC-MICRO logic_summary="Creates menu item with inset and destructive variant support" notable_decisions="[]"]
222
+ // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
223
+ // CIL[DOC-STABILITY stability="stable"]
224
+ // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: none."]
225
+ // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
226
+ // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
227
+ // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
228
+ // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
229
+ // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
85
230
  function MenubarItem({
86
231
  className,
87
232
  inset,
@@ -104,7 +249,21 @@ function MenubarItem({
104
249
  />
105
250
  )
106
251
  }
107
-
252
+ // CIL[END chunk_id="menubar_menubaritem_1783796064"]
253
+ // CIL[BEGIN chunk_id="menubar_menubarcheckboxitem_1783796064" type="function" identity="menubarcheckboxitem" parent="none"]
254
+ // CIL[DOC-MACRO purpose="Render checkbox menu item"]
255
+ // CIL[DOC-RESPONSIBILITY responsibility="Create menu item with checkbox functionality"]
256
+ // CIL[DOC-CONTEXT module="menubar" layer="ui_components" related_files="[]"]
257
+ // CIL[DOC-CONTRACT inputs="none" outputs="checkbox menu item" errors="none" side_effects="renders DOM element"]
258
+ // CIL[DOC-MICRO logic_summary="Creates checkbox menu item with check icon indicator" notable_decisions="[]"]
259
+ // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
260
+ // CIL[DOC-STABILITY stability="stable"]
261
+ // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: none."]
262
+ // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
263
+ // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
264
+ // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
265
+ // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
266
+ // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
108
267
  function MenubarCheckboxItem({
109
268
  className,
110
269
  children,
@@ -135,7 +294,21 @@ function MenubarCheckboxItem({
135
294
  </MenubarPrimitive.CheckboxItem>
136
295
  )
137
296
  }
138
-
297
+ // CIL[END chunk_id="menubar_menubarcheckboxitem_1783796064"]
298
+ // CIL[BEGIN chunk_id="menubar_menubarradioitem_1783796064" type="function" identity="menubarradioitem" parent="none"]
299
+ // CIL[DOC-MACRO purpose="Render radio menu item"]
300
+ // CIL[DOC-RESPONSIBILITY responsibility="Create menu item with radio button functionality"]
301
+ // CIL[DOC-CONTEXT module="menubar" layer="ui_components" related_files="[]"]
302
+ // CIL[DOC-CONTRACT inputs="none" outputs="radio menu item" errors="none" side_effects="renders DOM element"]
303
+ // CIL[DOC-MICRO logic_summary="Creates radio menu item with check icon indicator" notable_decisions="[]"]
304
+ // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
305
+ // CIL[DOC-STABILITY stability="stable"]
306
+ // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: none."]
307
+ // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
308
+ // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
309
+ // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
310
+ // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
311
+ // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
139
312
  function MenubarRadioItem({
140
313
  className,
141
314
  children,
@@ -164,7 +337,21 @@ function MenubarRadioItem({
164
337
  </MenubarPrimitive.RadioItem>
165
338
  )
166
339
  }
167
-
340
+ // CIL[END chunk_id="menubar_menubarradioitem_1783796064"]
341
+ // CIL[BEGIN chunk_id="menubar_menubarlabel_1783796064" type="function" identity="menubarlabel" parent="none"]
342
+ // CIL[DOC-MACRO purpose="Render label for menu items"]
343
+ // CIL[DOC-RESPONSIBILITY responsibility="Create non-interactive label text for menus"]
344
+ // CIL[DOC-CONTEXT module="menubar" layer="ui_components" related_files="[]"]
345
+ // CIL[DOC-CONTRACT inputs="none" outputs="styled label element" errors="none" side_effects="renders DOM element"]
346
+ // CIL[DOC-MICRO logic_summary="Creates non-interactive label with inset support" notable_decisions="[]"]
347
+ // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
348
+ // CIL[DOC-STABILITY stability="stable"]
349
+ // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: none."]
350
+ // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
351
+ // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
352
+ // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
353
+ // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
354
+ // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
168
355
  function MenubarLabel({
169
356
  className,
170
357
  inset,
@@ -184,7 +371,21 @@ function MenubarLabel({
184
371
  />
185
372
  )
186
373
  }
187
-
374
+ // CIL[END chunk_id="menubar_menubarlabel_1783796064"]
375
+ // CIL[BEGIN chunk_id="menubar_menubarseparator_1783796064" type="function" identity="menubarseparator" parent="none"]
376
+ // CIL[DOC-MACRO purpose="Render separator between menu items"]
377
+ // CIL[DOC-RESPONSIBILITY responsibility="Create visual divider for menu sections"]
378
+ // CIL[DOC-CONTEXT module="menubar" layer="ui_components" related_files="[]"]
379
+ // CIL[DOC-CONTRACT inputs="none" outputs="styled separator" errors="none" side_effects="renders DOM element"]
380
+ // CIL[DOC-MICRO logic_summary="Creates horizontal separator with margin and styling" notable_decisions="[]"]
381
+ // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
382
+ // CIL[DOC-STABILITY stability="stable"]
383
+ // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: none."]
384
+ // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
385
+ // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
386
+ // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
387
+ // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
388
+ // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
188
389
  function MenubarSeparator({
189
390
  className,
190
391
  ...props
@@ -197,7 +398,21 @@ function MenubarSeparator({
197
398
  />
198
399
  )
199
400
  }
200
-
401
+ // CIL[END chunk_id="menubar_menubarseparator_1783796064"]
402
+ // CIL[BEGIN chunk_id="menubar_menubarshortcut_1783796064" type="function" identity="menubarshortcut" parent="none"]
403
+ // CIL[DOC-MACRO purpose="Render keyboard shortcut text"]
404
+ // CIL[DOC-RESPONSIBILITY responsibility="Create styled shortcut display for menu items"]
405
+ // CIL[DOC-CONTEXT module="menubar" layer="ui_components" related_files="[]"]
406
+ // CIL[DOC-CONTRACT inputs="none" outputs="styled shortcut text" errors="none" side_effects="renders DOM element"]
407
+ // CIL[DOC-MICRO logic_summary="Creates small text for keyboard shortcuts with focus styling" notable_decisions="[]"]
408
+ // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
409
+ // CIL[DOC-STABILITY stability="stable"]
410
+ // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: none."]
411
+ // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
412
+ // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
413
+ // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
414
+ // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
415
+ // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
201
416
  function MenubarShortcut({
202
417
  className,
203
418
  ...props
@@ -213,13 +428,41 @@ function MenubarShortcut({
213
428
  />
214
429
  )
215
430
  }
216
-
431
+ // CIL[END chunk_id="menubar_menubarshortcut_1783796064"]
432
+ // CIL[BEGIN chunk_id="menubar_menubarsub_1783796064" type="function" identity="menubarsub" parent="none"]
433
+ // CIL[DOC-MACRO purpose="Render submenu container"]
434
+ // CIL[DOC-RESPONSIBILITY responsibility="Create container for nested menu structure"]
435
+ // CIL[DOC-CONTEXT module="menubar" layer="ui_components" related_files="[]"]
436
+ // CIL[DOC-CONTRACT inputs="none" outputs="submenu container" errors="none" side_effects="renders DOM element"]
437
+ // CIL[DOC-MICRO logic_summary="Creates submenu container for hierarchical menu structure" notable_decisions="[]"]
438
+ // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
439
+ // CIL[DOC-STABILITY stability="stable"]
440
+ // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: none."]
441
+ // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
442
+ // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
443
+ // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
444
+ // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
445
+ // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
217
446
  function MenubarSub({
218
447
  ...props
219
448
  }: React.ComponentProps<typeof MenubarPrimitive.Sub>) {
220
449
  return <MenubarPrimitive.Sub data-slot="menubar-sub" {...props} />
221
450
  }
222
-
451
+ // CIL[END chunk_id="menubar_menubarsub_1783796064"]
452
+ // CIL[BEGIN chunk_id="menubar_menubarsubtrigger_1783796064" type="function" identity="menubarsubtrigger" parent="none"]
453
+ // CIL[DOC-MACRO purpose="Render submenu trigger button"]
454
+ // CIL[DOC-RESPONSIBILITY responsibility="Create trigger for nested menu with chevron"]
455
+ // CIL[DOC-CONTEXT module="menubar" layer="ui_components" related_files="[]"]
456
+ // CIL[DOC-CONTRACT inputs="none" outputs="styled submenu trigger" errors="none" side_effects="renders DOM element"]
457
+ // CIL[DOC-MICRO logic_summary="Creates submenu trigger with chevron icon and focus states" notable_decisions="[]"]
458
+ // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
459
+ // CIL[DOC-STABILITY stability="stable"]
460
+ // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: none."]
461
+ // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
462
+ // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
463
+ // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
464
+ // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
465
+ // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
223
466
  function MenubarSubTrigger({
224
467
  className,
225
468
  inset,
@@ -243,7 +486,21 @@ function MenubarSubTrigger({
243
486
  </MenubarPrimitive.SubTrigger>
244
487
  )
245
488
  }
246
-
489
+ // CIL[END chunk_id="menubar_menubarsubtrigger_1783796064"]
490
+ // CIL[BEGIN chunk_id="menubar_menubarsubcontent_1783796064" type="function" identity="menubarsubcontent" parent="none"]
491
+ // CIL[DOC-MACRO purpose="Render submenu dropdown content"]
492
+ // CIL[DOC-RESPONSIBILITY responsibility="Create styled dropdown for nested menu items"]
493
+ // CIL[DOC-CONTEXT module="menubar" layer="ui_components" related_files="[]"]
494
+ // CIL[DOC-CONTRACT inputs="none" outputs="styled submenu content" errors="none" side_effects="renders DOM element"]
495
+ // CIL[DOC-MICRO logic_summary="Creates submenu dropdown with animations and positioning" notable_decisions="[]"]
496
+ // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
497
+ // CIL[DOC-STABILITY stability="stable"]
498
+ // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: none."]
499
+ // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
500
+ // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
501
+ // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
502
+ // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
503
+ // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
247
504
  function MenubarSubContent({
248
505
  className,
249
506
  ...props
@@ -256,7 +513,21 @@ function MenubarSubContent({
256
513
  />
257
514
  )
258
515
  }
259
-
516
+ // CIL[END chunk_id="menubar_menubarsubcontent_1783796064"]
517
+ // CIL[BEGIN chunk_id="menubar_exports_1783796064" type="exports" identity="exports" parent="none"]
518
+ // CIL[DOC-MACRO purpose="Export menubar components for public use"]
519
+ // CIL[DOC-RESPONSIBILITY responsibility="Export all menubar-related components"]
520
+ // CIL[DOC-CONTEXT module="menubar" layer="ui_components" related_files="[]"]
521
+ // CIL[DOC-CONTRACT inputs="none" outputs="exported components" errors="none" side_effects="module exports"]
522
+ // CIL[DOC-MICRO logic_summary="Exports comprehensive menubar component system for consumption" notable_decisions="[]"]
523
+ // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
524
+ // CIL[DOC-STABILITY stability="stable"]
525
+ // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: none."]
526
+ // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
527
+ // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
528
+ // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
529
+ // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
530
+ // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
260
531
  export {
261
532
  Menubar,
262
533
  MenubarPortal,
@@ -275,3 +546,4 @@ export {
275
546
  MenubarSubTrigger,
276
547
  MenubarSubContent,
277
548
  }
549
+ // CIL[END chunk_id="menubar_exports_1783796064"]
@@ -1,12 +1,61 @@
1
+
2
+
3
+
4
+
5
+
6
+
7
+ // CIL[BEGIN chunk_id="native_select_module_header_1783796064" type="module_header" identity="module_header" parent="none"]
8
+ // CIL[DOC-MACRO purpose="Import dependencies for native select components"]
9
+ // CIL[DOC-RESPONSIBILITY responsibility="Import React, utilities, and icons"]
10
+ // CIL[DOC-CONTEXT module="native-select" layer="ui_components" related_files="[\"custom/apps/cortex/pages/operations/OperationsDashboard.tsx\",\".framework/src/components/ui/dialog.tsx\",\".framework/src/pages/admin/TypeDetailPage.tsx\",\".framework/functions/_shared/principal.ts\",\".framework/functions/_shared/schema-utils.ts\",\"\\\"]"]
11
+ // CIL[DOC-CONTRACT inputs="none" outputs="imported modules" errors="none" side_effects="module imports"]
12
+ // CIL[DOC-MICRO logic_summary="Imports React, cn utility, and ChevronDownIcon" notable_decisions="[]"]
13
+ // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
14
+ // CIL[DOC-STABILITY stability="stable"]
15
+ // CIL[DOC-AUDIENCE audience="developer"]
16
+ // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: custom/apps/cortex/pages/operations/OperationsDashboard.tsx, .framework/src/components/ui/dialog.tsx, .framework/src/pages/admin/TypeDetailPage.tsx, .framework/functions/_shared/principal.ts, .framework/functions/_shared/schema-utils.ts, \."]
17
+ // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
18
+ // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
19
+ // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
20
+ // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
21
+ // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
1
22
  import * as React from "react"
2
23
 
3
24
  import { cn } from "@/lib/utils"
4
25
  import { ChevronDownIcon } from "lucide-react"
5
-
26
+ // CIL[END chunk_id="native_select_module_header_1783796064"]
27
+ // CIL[BEGIN chunk_id="native_select_types_1783796064" type="type_definition" identity="NativeSelectProps" parent="none"]
28
+ // CIL[DOC-MACRO purpose="Define TypeScript type for native select props"]
29
+ // CIL[DOC-RESPONSIBILITY responsibility="Create type definition with size variant support"]
30
+ // CIL[DOC-CONTEXT module="native-select" layer="ui_components" related_files="[\".framework/src/pages/admin/TypeDetailPage.tsx\",\".framework/functions/_shared/schema-utils.ts\",\".framework/functions/_shared/principal.ts\",\".framework/migrations/025_retype_threads_messages.sql\",\"custom/apps/cortex/pages/operations/OperationsDashboard.tsx\",\"\\\"]"]
31
+ // CIL[DOC-CONTRACT inputs="none" outputs="TypeScript type definition" errors="none" side_effects="type definition"]
32
+ // CIL[DOC-MICRO logic_summary="Defines props type with size variant and standard select props" notable_decisions="[]"]
33
+ // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
34
+ // CIL[DOC-STABILITY stability="stable"]
35
+ // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: .framework/src/pages/admin/TypeDetailPage.tsx, .framework/functions/_shared/schema-utils.ts, .framework/functions/_shared/principal.ts, .framework/migrations/025_retype_threads_messages.sql, custom/apps/cortex/pages/operations/OperationsDashboard.tsx, \."]
36
+ // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
37
+ // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
38
+ // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
39
+ // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
40
+ // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
6
41
  type NativeSelectProps = Omit<React.ComponentProps<"select">, "size"> & {
7
42
  size?: "sm" | "default"
8
43
  }
9
-
44
+ // CIL[END chunk_id="native_select_types_1783796064"]
45
+ // CIL[BEGIN chunk_id="native_select_nativeselect_1783796064" type="function" identity="NativeSelect" parent="none"]
46
+ // CIL[DOC-MACRO purpose="Render native select dropdown with styling"]
47
+ // CIL[DOC-RESPONSIBILITY responsibility="Create styled native select with chevron icon"]
48
+ // CIL[DOC-CONTEXT module="native-select" layer="ui_components" related_files="[\"custom/apps/portal/pages/ContentPage.tsx\",\".framework/functions/_shared/schema-utils.ts\",\".framework/src/pages/admin/RolesPage.tsx\",\".framework/src/components/ui/dialog.tsx\",\"\\\"]"]
49
+ // CIL[DOC-CONTRACT inputs="none" outputs="styled select element" errors="none" side_effects="renders DOM element"]
50
+ // CIL[DOC-MICRO logic_summary="Creates native select with custom styling and dropdown icon" notable_decisions="[]"]
51
+ // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
52
+ // CIL[DOC-STABILITY stability="stable"]
53
+ // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: custom/apps/portal/pages/ContentPage.tsx, .framework/functions/_shared/schema-utils.ts, .framework/src/pages/admin/RolesPage.tsx, .framework/src/components/ui/dialog.tsx, \."]
54
+ // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
55
+ // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
56
+ // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
57
+ // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
58
+ // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
10
59
  function NativeSelect({
11
60
  className,
12
61
  size = "default",
@@ -31,7 +80,21 @@ function NativeSelect({
31
80
  </div>
32
81
  )
33
82
  }
34
-
83
+ // CIL[END chunk_id="native_select_nativeselect_1783796064"]
84
+ // CIL[BEGIN chunk_id="native_select_nativeselectoption_1783796064" type="function" identity="NativeSelectOption" parent="none"]
85
+ // CIL[DOC-MACRO purpose="Render option element for native select"]
86
+ // CIL[DOC-RESPONSIBILITY responsibility="Create styled option component for select dropdown"]
87
+ // CIL[DOC-CONTEXT module="native-select" layer="ui_components" related_files="[\"custom/apps/portal/pages/ContentPage.tsx\",\".framework/src/pages/admin/TypeDetailPage.tsx\",\".framework/functions/_shared/principal.ts\",\"custom/apps/cortex/pages/operations/OperationsDashboard.tsx\",\".framework/functions/_shared/schema-utils.ts\",\"\\\"]"]
88
+ // CIL[DOC-CONTRACT inputs="none" outputs="styled option element" errors="none" side_effects="renders DOM element"]
89
+ // CIL[DOC-MICRO logic_summary="Creates option element with system color styling" notable_decisions="[]"]
90
+ // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
91
+ // CIL[DOC-STABILITY stability="stable"]
92
+ // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: custom/apps/portal/pages/ContentPage.tsx, .framework/src/pages/admin/TypeDetailPage.tsx, .framework/functions/_shared/principal.ts, custom/apps/cortex/pages/operations/OperationsDashboard.tsx, .framework/functions/_shared/schema-utils.ts, \."]
93
+ // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
94
+ // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
95
+ // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
96
+ // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
97
+ // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
35
98
  function NativeSelectOption({
36
99
  className,
37
100
  ...props
@@ -44,7 +107,21 @@ function NativeSelectOption({
44
107
  />
45
108
  )
46
109
  }
47
-
110
+ // CIL[END chunk_id="native_select_nativeselectoption_1783796064"]
111
+ // CIL[BEGIN chunk_id="native_select_nativeselectoptgroup_1783796064" type="function" identity="NativeSelectOptGroup" parent="none"]
112
+ // CIL[DOC-MACRO purpose="Render optgroup element for native select"]
113
+ // CIL[DOC-RESPONSIBILITY responsibility="Create styled optgroup component for option grouping"]
114
+ // CIL[DOC-CONTEXT module="native-select" layer="ui_components" related_files="[\"custom/apps/portal/pages/ContentPage.tsx\",\".framework/src/pages/admin/TypeDetailPage.tsx\",\".framework/functions/_shared/principal.ts\",\"custom/apps/cortex/pages/operations/OperationsDashboard.tsx\",\".framework/functions/_shared/schema-utils.ts\",\"\\\"]"]
115
+ // CIL[DOC-CONTRACT inputs="none" outputs="styled optgroup element" errors="none" side_effects="renders DOM element"]
116
+ // CIL[DOC-MICRO logic_summary="Creates optgroup element with system color styling" notable_decisions="[]"]
117
+ // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
118
+ // CIL[DOC-STABILITY stability="stable"]
119
+ // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: custom/apps/portal/pages/ContentPage.tsx, .framework/src/pages/admin/TypeDetailPage.tsx, .framework/functions/_shared/principal.ts, custom/apps/cortex/pages/operations/OperationsDashboard.tsx, .framework/functions/_shared/schema-utils.ts, \."]
120
+ // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
121
+ // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
122
+ // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
123
+ // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
124
+ // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
48
125
  function NativeSelectOptGroup({
49
126
  className,
50
127
  ...props
@@ -57,5 +134,20 @@ function NativeSelectOptGroup({
57
134
  />
58
135
  )
59
136
  }
60
-
137
+ // CIL[END chunk_id="native_select_nativeselectoptgroup_1783796064"]
138
+ // CIL[BEGIN chunk_id="native_select_exports_1783796064" type="exports" identity="exports" parent="none"]
139
+ // CIL[DOC-MACRO purpose="Export native select components for public use"]
140
+ // CIL[DOC-RESPONSIBILITY responsibility="Export all native select-related components"]
141
+ // CIL[DOC-CONTEXT module="native-select" layer="ui_components" related_files="[]"]
142
+ // CIL[DOC-CONTRACT inputs="none" outputs="exported components" errors="none" side_effects="module exports"]
143
+ // CIL[DOC-MICRO logic_summary="Exports native select component system for consumption" notable_decisions="[]"]
144
+ // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
145
+ // CIL[DOC-STABILITY stability="stable"]
146
+ // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: none."]
147
+ // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
148
+ // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
149
+ // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
150
+ // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
151
+ // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
61
152
  export { NativeSelect, NativeSelectOptGroup, NativeSelectOption }
153
+ // CIL[END chunk_id="native_select_exports_1783796064"]