@almadar/orb-shell-typescript-linux-x64 18.0.0 → 19.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3185) hide show
  1. package/bin/orb-shell-typescript +0 -0
  2. package/package.json +1 -1
  3. package/templates/almadar-renderers-typescript/bundling.d.mts +18 -0
  4. package/templates/almadar-renderers-typescript/bundling.mjs +28 -0
  5. package/templates/almadar-renderers-typescript/eslint.config.cjs +30 -0
  6. package/templates/almadar-renderers-typescript/index.css +199 -0
  7. package/templates/almadar-renderers-typescript/package.json +274 -0
  8. package/templates/almadar-renderers-typescript/pnpm-lock.yaml +8409 -0
  9. package/templates/almadar-renderers-typescript/postcss.config.js +6 -0
  10. package/templates/almadar-renderers-typescript/scripts/audit-tailwind-safelist.ts +234 -0
  11. package/templates/almadar-renderers-typescript/scripts/component-contrast-audit.mjs +106 -0
  12. package/templates/almadar-renderers-typescript/scripts/export-static.js +61 -0
  13. package/templates/almadar-renderers-typescript/scripts/gates/h5.sh +72 -0
  14. package/templates/almadar-renderers-typescript/scripts/gates/known-failures/audit.txt +3 -0
  15. package/templates/almadar-renderers-typescript/scripts/gates/known-failures/component-contrast.txt +16 -0
  16. package/templates/almadar-renderers-typescript/scripts/gates/known-failures/dist.txt +1 -0
  17. package/templates/almadar-renderers-typescript/scripts/gates/known-failures/eslint.txt +1 -0
  18. package/templates/almadar-renderers-typescript/scripts/gates/known-failures/themes.txt +1 -0
  19. package/templates/almadar-renderers-typescript/scripts/gates/known-failures/tsc.txt +1 -0
  20. package/templates/almadar-renderers-typescript/scripts/gates/known-failures/vitest.txt +1 -0
  21. package/templates/almadar-renderers-typescript/scripts/generate-design-system.ts +344 -0
  22. package/templates/almadar-renderers-typescript/scripts/generate-theme-from-schema.ts +480 -0
  23. package/templates/almadar-renderers-typescript/scripts/generate.ts +835 -0
  24. package/templates/almadar-renderers-typescript/scripts/lib/ensure-use-client.d.mts +3 -0
  25. package/templates/almadar-renderers-typescript/scripts/lib/ensure-use-client.mjs +18 -0
  26. package/templates/almadar-renderers-typescript/scripts/lib/theme-colors.d.mts +19 -0
  27. package/templates/almadar-renderers-typescript/scripts/lib/theme-colors.mjs +88 -0
  28. package/templates/almadar-renderers-typescript/scripts/strip-base-tokens-from-themes.mjs +179 -0
  29. package/templates/almadar-renderers-typescript/scripts/suggest-components.ts +508 -0
  30. package/templates/almadar-renderers-typescript/scripts/theme-contrast-audit.mjs +86 -0
  31. package/templates/almadar-renderers-typescript/scripts/theme-distinctness-audit.mjs +126 -0
  32. package/templates/almadar-renderers-typescript/scripts/types.ts +282 -0
  33. package/templates/almadar-renderers-typescript/scripts/verify-dist-esm.mjs +38 -0
  34. package/templates/almadar-renderers-typescript/shell-role.json +3 -0
  35. package/templates/almadar-renderers-typescript/src/auth/browser/index.ts +1 -0
  36. package/templates/almadar-renderers-typescript/src/auth/react/index.tsx +221 -0
  37. package/templates/almadar-renderers-typescript/src/avl/index.ts +200 -0
  38. package/templates/almadar-renderers-typescript/src/components/avl/atoms/Avl3DLabel.tsx +72 -0
  39. package/templates/almadar-renderers-typescript/src/components/avl/atoms/Avl3DTooltip.tsx +117 -0
  40. package/templates/almadar-renderers-typescript/src/components/avl/atoms/AvlApplication.tsx +66 -0
  41. package/templates/almadar-renderers-typescript/src/components/avl/atoms/AvlBinding.tsx +71 -0
  42. package/templates/almadar-renderers-typescript/src/components/avl/atoms/AvlBindingRef.tsx +52 -0
  43. package/templates/almadar-renderers-typescript/src/components/avl/atoms/AvlEffect.tsx +238 -0
  44. package/templates/almadar-renderers-typescript/src/components/avl/atoms/AvlEntity.tsx +94 -0
  45. package/templates/almadar-renderers-typescript/src/components/avl/atoms/AvlEvent.tsx +52 -0
  46. package/templates/almadar-renderers-typescript/src/components/avl/atoms/AvlField.tsx +59 -0
  47. package/templates/almadar-renderers-typescript/src/components/avl/atoms/AvlFieldType.tsx +106 -0
  48. package/templates/almadar-renderers-typescript/src/components/avl/atoms/AvlGuard.tsx +49 -0
  49. package/templates/almadar-renderers-typescript/src/components/avl/atoms/AvlLiteral.tsx +47 -0
  50. package/templates/almadar-renderers-typescript/src/components/avl/atoms/AvlOperator.tsx +56 -0
  51. package/templates/almadar-renderers-typescript/src/components/avl/atoms/AvlOrbital.tsx +63 -0
  52. package/templates/almadar-renderers-typescript/src/components/avl/atoms/AvlPage.tsx +53 -0
  53. package/templates/almadar-renderers-typescript/src/components/avl/atoms/AvlPersistence.tsx +64 -0
  54. package/templates/almadar-renderers-typescript/src/components/avl/atoms/AvlSExpr.tsx +61 -0
  55. package/templates/almadar-renderers-typescript/src/components/avl/atoms/AvlState.tsx +108 -0
  56. package/templates/almadar-renderers-typescript/src/components/avl/atoms/AvlTrait.tsx +62 -0
  57. package/templates/almadar-renderers-typescript/src/components/avl/atoms/AvlTransition.tsx +110 -0
  58. package/templates/almadar-renderers-typescript/src/components/avl/atoms/index.ts +41 -0
  59. package/templates/almadar-renderers-typescript/src/components/avl/molecules/Avl3DCrossWire.tsx +84 -0
  60. package/templates/almadar-renderers-typescript/src/components/avl/molecules/Avl3DEntityCore.tsx +242 -0
  61. package/templates/almadar-renderers-typescript/src/components/avl/molecules/Avl3DExprTree.tsx +222 -0
  62. package/templates/almadar-renderers-typescript/src/components/avl/molecules/Avl3DOrbitalNode.tsx +204 -0
  63. package/templates/almadar-renderers-typescript/src/components/avl/molecules/Avl3DStateNode.tsx +210 -0
  64. package/templates/almadar-renderers-typescript/src/components/avl/molecules/Avl3DTransitionArc.tsx +229 -0
  65. package/templates/almadar-renderers-typescript/src/components/avl/molecules/AvlBackwardEdge.tsx +43 -0
  66. package/templates/almadar-renderers-typescript/src/components/avl/molecules/AvlBehaviorGlyph.tsx +493 -0
  67. package/templates/almadar-renderers-typescript/src/components/avl/molecules/AvlBindingEdge.tsx +60 -0
  68. package/templates/almadar-renderers-typescript/src/components/avl/molecules/AvlCircuit.tsx +397 -0
  69. package/templates/almadar-renderers-typescript/src/components/avl/molecules/AvlClosedCircuit.tsx +206 -0
  70. package/templates/almadar-renderers-typescript/src/components/avl/molecules/AvlEffectChip.tsx +48 -0
  71. package/templates/almadar-renderers-typescript/src/components/avl/molecules/AvlEmitListen.tsx +126 -0
  72. package/templates/almadar-renderers-typescript/src/components/avl/molecules/AvlEventWireEdge.tsx +76 -0
  73. package/templates/almadar-renderers-typescript/src/components/avl/molecules/AvlExplain.tsx +77 -0
  74. package/templates/almadar-renderers-typescript/src/components/avl/molecules/AvlExprTree.tsx +150 -0
  75. package/templates/almadar-renderers-typescript/src/components/avl/molecules/AvlGlyph.tsx +123 -0
  76. package/templates/almadar-renderers-typescript/src/components/avl/molecules/AvlOrbitalMachine.tsx +618 -0
  77. package/templates/almadar-renderers-typescript/src/components/avl/molecules/AvlOrbitalUnit.tsx +142 -0
  78. package/templates/almadar-renderers-typescript/src/components/avl/molecules/AvlPageEdge.tsx +43 -0
  79. package/templates/almadar-renderers-typescript/src/components/avl/molecules/AvlSlotMap.tsx +182 -0
  80. package/templates/almadar-renderers-typescript/src/components/avl/molecules/AvlStateMachine.tsx +448 -0
  81. package/templates/almadar-renderers-typescript/src/components/avl/molecules/AvlSwimLane.tsx +176 -0
  82. package/templates/almadar-renderers-typescript/src/components/avl/molecules/AvlTransitionDetail.tsx +199 -0
  83. package/templates/almadar-renderers-typescript/src/components/avl/molecules/AvlTransitionEdge.tsx +78 -0
  84. package/templates/almadar-renderers-typescript/src/components/avl/molecules/AvlTransitionExplainer.tsx +59 -0
  85. package/templates/almadar-renderers-typescript/src/components/avl/molecules/AvlTransitionLane.tsx +154 -0
  86. package/templates/almadar-renderers-typescript/src/components/avl/molecules/BehaviorView.tsx +50 -0
  87. package/templates/almadar-renderers-typescript/src/components/avl/molecules/DesignGuidesOverlay.tsx +63 -0
  88. package/templates/almadar-renderers-typescript/src/components/avl/molecules/DesignSelectionOverlay.tsx +400 -0
  89. package/templates/almadar-renderers-typescript/src/components/avl/molecules/DetailView.tsx +124 -0
  90. package/templates/almadar-renderers-typescript/src/components/avl/molecules/EventFlowEdge.tsx +140 -0
  91. package/templates/almadar-renderers-typescript/src/components/avl/molecules/KnobField.tsx +735 -0
  92. package/templates/almadar-renderers-typescript/src/components/avl/molecules/KnobSettingRow.tsx +64 -0
  93. package/templates/almadar-renderers-typescript/src/components/avl/molecules/MiniStateMachine.tsx +167 -0
  94. package/templates/almadar-renderers-typescript/src/components/avl/molecules/ModuleCard.tsx +195 -0
  95. package/templates/almadar-renderers-typescript/src/components/avl/molecules/OrbPreviewNode.tsx +1994 -0
  96. package/templates/almadar-renderers-typescript/src/components/avl/molecules/SystemNode.tsx +234 -0
  97. package/templates/almadar-renderers-typescript/src/components/avl/molecules/TraitCardNode.tsx +135 -0
  98. package/templates/almadar-renderers-typescript/src/components/avl/molecules/__tests__/AvlCircuit.test.tsx +73 -0
  99. package/templates/almadar-renderers-typescript/src/components/avl/molecules/__tests__/AvlExplain.test.tsx +192 -0
  100. package/templates/almadar-renderers-typescript/src/components/avl/molecules/__tests__/AvlGlyph.test.tsx +36 -0
  101. package/templates/almadar-renderers-typescript/src/components/avl/molecules/__tests__/AvlStateMachine.a11y.test.tsx +72 -0
  102. package/templates/almadar-renderers-typescript/src/components/avl/molecules/__tests__/AvlStateMachine.follow.test.tsx +75 -0
  103. package/templates/almadar-renderers-typescript/src/components/avl/molecules/__tests__/AvlStateMachine.layout-failure.test.tsx +51 -0
  104. package/templates/almadar-renderers-typescript/src/components/avl/molecules/__tests__/AvlStateMachine.rtl-guard.test.tsx +87 -0
  105. package/templates/almadar-renderers-typescript/src/components/avl/molecules/__tests__/AvlStateMachine.test.tsx +177 -0
  106. package/templates/almadar-renderers-typescript/src/components/avl/molecules/__tests__/AvlTransitionDetail.explain.test.tsx +97 -0
  107. package/templates/almadar-renderers-typescript/src/components/avl/molecules/__tests__/AvlTransitionDetail.raw.test.tsx +82 -0
  108. package/templates/almadar-renderers-typescript/src/components/avl/molecules/__tests__/AvlTransitionDetail.test.tsx +104 -0
  109. package/templates/almadar-renderers-typescript/src/components/avl/molecules/__tests__/BehaviorView.test.tsx +43 -0
  110. package/templates/almadar-renderers-typescript/src/components/avl/molecules/__tests__/DesignGuidesOverlay.test.tsx +50 -0
  111. package/templates/almadar-renderers-typescript/src/components/avl/molecules/__tests__/DesignSelectionOverlay.test.tsx +344 -0
  112. package/templates/almadar-renderers-typescript/src/components/avl/molecules/__tests__/MiniStateMachine.layout.test.tsx +84 -0
  113. package/templates/almadar-renderers-typescript/src/components/avl/molecules/__tests__/OrbPreviewNode.pause.test.tsx +854 -0
  114. package/templates/almadar-renderers-typescript/src/components/avl/molecules/index.ts +49 -0
  115. package/templates/almadar-renderers-typescript/src/components/avl/organisms/Avl3DApplicationScene.tsx +127 -0
  116. package/templates/almadar-renderers-typescript/src/components/avl/organisms/Avl3DEffects.tsx +158 -0
  117. package/templates/almadar-renderers-typescript/src/components/avl/organisms/Avl3DOrbitalScene.tsx +297 -0
  118. package/templates/almadar-renderers-typescript/src/components/avl/organisms/Avl3DTraitScene.tsx +137 -0
  119. package/templates/almadar-renderers-typescript/src/components/avl/organisms/Avl3DTransitionScene.tsx +150 -0
  120. package/templates/almadar-renderers-typescript/src/components/avl/organisms/Avl3DViewer.tsx +462 -0
  121. package/templates/almadar-renderers-typescript/src/components/avl/organisms/AvlClickTarget.tsx +106 -0
  122. package/templates/almadar-renderers-typescript/src/components/avl/organisms/AvlCosmicZoom.tsx +61 -0
  123. package/templates/almadar-renderers-typescript/src/components/avl/organisms/AvlGraphCanvas.tsx +51 -0
  124. package/templates/almadar-renderers-typescript/src/components/avl/organisms/AvlLegend.tsx +206 -0
  125. package/templates/almadar-renderers-typescript/src/components/avl/organisms/AvlOrbitalsCosmicZoom.tsx +370 -0
  126. package/templates/almadar-renderers-typescript/src/components/avl/organisms/AvlTraitScene.tsx +180 -0
  127. package/templates/almadar-renderers-typescript/src/components/avl/organisms/AvlTransitionScene.tsx +285 -0
  128. package/templates/almadar-renderers-typescript/src/components/avl/organisms/FlowCanvas.tsx +1253 -0
  129. package/templates/almadar-renderers-typescript/src/components/avl/organisms/LayersPanel.tsx +297 -0
  130. package/templates/almadar-renderers-typescript/src/components/avl/organisms/OrbInspector.tsx +1431 -0
  131. package/templates/almadar-renderers-typescript/src/components/avl/organisms/ZoomBreadcrumb.tsx +75 -0
  132. package/templates/almadar-renderers-typescript/src/components/avl/organisms/ZoomLegend.tsx +88 -0
  133. package/templates/almadar-renderers-typescript/src/components/avl/organisms/__tests__/AvlGraphCanvas.test.tsx +58 -0
  134. package/templates/almadar-renderers-typescript/src/components/avl/organisms/__tests__/AvlOrbitalsCosmicZoom.test.tsx +226 -0
  135. package/templates/almadar-renderers-typescript/src/components/avl/organisms/__tests__/FlowCanvas.card-width.test.tsx +84 -0
  136. package/templates/almadar-renderers-typescript/src/components/avl/organisms/__tests__/FlowCanvas.reduced-motion.test.tsx +84 -0
  137. package/templates/almadar-renderers-typescript/src/components/avl/organisms/__tests__/FlowCanvas.system-map.test.tsx +128 -0
  138. package/templates/almadar-renderers-typescript/src/components/avl/organisms/__tests__/FlowCanvas.test.tsx +401 -0
  139. package/templates/almadar-renderers-typescript/src/components/avl/organisms/__tests__/FlowCanvas.verify.test.tsx +102 -0
  140. package/templates/almadar-renderers-typescript/src/components/avl/organisms/__tests__/LayersPanel.test.tsx +359 -0
  141. package/templates/almadar-renderers-typescript/src/components/avl/organisms/__tests__/OrbInspector.test.tsx +716 -0
  142. package/templates/almadar-renderers-typescript/src/components/avl/organisms/index.ts +60 -0
  143. package/templates/almadar-renderers-typescript/src/components/avl/patterns.ts +19 -0
  144. package/templates/almadar-renderers-typescript/src/components/core/atoms/TraitFrame.tsx +153 -0
  145. package/templates/almadar-renderers-typescript/src/components/core/atoms/__tests__/AnimatedGraphic.a11y.test.tsx +27 -0
  146. package/templates/almadar-renderers-typescript/src/components/core/atoms/__tests__/AnimatedReveal.offscreen.test.tsx +144 -0
  147. package/templates/almadar-renderers-typescript/src/components/core/atoms/__tests__/AtlasImage.a11y.test.tsx +21 -0
  148. package/templates/almadar-renderers-typescript/src/components/core/atoms/__tests__/Avatar.a11y.test.tsx +19 -0
  149. package/templates/almadar-renderers-typescript/src/components/core/atoms/__tests__/Badge.a11y.test.tsx +44 -0
  150. package/templates/almadar-renderers-typescript/src/components/core/atoms/__tests__/Box.theme.test.tsx +50 -0
  151. package/templates/almadar-renderers-typescript/src/components/core/atoms/__tests__/Button.alignment.test.tsx +64 -0
  152. package/templates/almadar-renderers-typescript/src/components/core/atoms/__tests__/FilterPill.a11y.test.tsx +30 -0
  153. package/templates/almadar-renderers-typescript/src/components/core/atoms/__tests__/FormAtoms.a11y.test.tsx +184 -0
  154. package/templates/almadar-renderers-typescript/src/components/core/atoms/__tests__/ProgressBar.a11y.test.tsx +27 -0
  155. package/templates/almadar-renderers-typescript/src/components/core/atoms/__tests__/Select.a11y.test.tsx +215 -0
  156. package/templates/almadar-renderers-typescript/src/components/core/atoms/__tests__/Spinner.a11y.test.tsx +33 -0
  157. package/templates/almadar-renderers-typescript/src/components/core/atoms/__tests__/TextHighlight.a11y.test.tsx +38 -0
  158. package/templates/almadar-renderers-typescript/src/components/core/atoms/index.ts +83 -0
  159. package/templates/almadar-renderers-typescript/src/components/core/molecules/Accordion.tsx +242 -0
  160. package/templates/almadar-renderers-typescript/src/components/core/molecules/ActivationBlock.tsx +104 -0
  161. package/templates/almadar-renderers-typescript/src/components/core/molecules/ActivityRail.tsx +104 -0
  162. package/templates/almadar-renderers-typescript/src/components/core/molecules/AgentActivityFeed.tsx +440 -0
  163. package/templates/almadar-renderers-typescript/src/components/core/molecules/AgentChatFeed.tsx +297 -0
  164. package/templates/almadar-renderers-typescript/src/components/core/molecules/Alert.tsx +139 -0
  165. package/templates/almadar-renderers-typescript/src/components/core/molecules/AnimatedCounter.tsx +161 -0
  166. package/templates/almadar-renderers-typescript/src/components/core/molecules/AssetPicker.tsx +110 -0
  167. package/templates/almadar-renderers-typescript/src/components/core/molecules/BloomQuizBlock.tsx +143 -0
  168. package/templates/almadar-renderers-typescript/src/components/core/molecules/BranchingLogicBuilder.tsx +628 -0
  169. package/templates/almadar-renderers-typescript/src/components/core/molecules/Breadcrumb.tsx +201 -0
  170. package/templates/almadar-renderers-typescript/src/components/core/molecules/ButtonGroup.tsx +214 -0
  171. package/templates/almadar-renderers-typescript/src/components/core/molecules/CalendarGrid.tsx +599 -0
  172. package/templates/almadar-renderers-typescript/src/components/core/molecules/Card.tsx +163 -0
  173. package/templates/almadar-renderers-typescript/src/components/core/molecules/Carousel.tsx +409 -0
  174. package/templates/almadar-renderers-typescript/src/components/core/molecules/ChangeList.tsx +128 -0
  175. package/templates/almadar-renderers-typescript/src/components/core/molecules/Chart.tsx +1084 -0
  176. package/templates/almadar-renderers-typescript/src/components/core/molecules/ChartLegend.tsx +58 -0
  177. package/templates/almadar-renderers-typescript/src/components/core/molecules/Coachmark.tsx +279 -0
  178. package/templates/almadar-renderers-typescript/src/components/core/molecules/CommandPalette.tsx +291 -0
  179. package/templates/almadar-renderers-typescript/src/components/core/molecules/CommitRow.tsx +138 -0
  180. package/templates/almadar-renderers-typescript/src/components/core/molecules/ConfirmDialog.tsx +190 -0
  181. package/templates/almadar-renderers-typescript/src/components/core/molecules/ConnectionBlock.tsx +48 -0
  182. package/templates/almadar-renderers-typescript/src/components/core/molecules/Container.tsx +86 -0
  183. package/templates/almadar-renderers-typescript/src/components/core/molecules/ContentRenderer.tsx +133 -0
  184. package/templates/almadar-renderers-typescript/src/components/core/molecules/DataGrid.tsx +816 -0
  185. package/templates/almadar-renderers-typescript/src/components/core/molecules/DataList.tsx +919 -0
  186. package/templates/almadar-renderers-typescript/src/components/core/molecules/DateRangePicker.tsx +227 -0
  187. package/templates/almadar-renderers-typescript/src/components/core/molecules/DateRangeSelector.tsx +60 -0
  188. package/templates/almadar-renderers-typescript/src/components/core/molecules/DocBreadcrumb.tsx +96 -0
  189. package/templates/almadar-renderers-typescript/src/components/core/molecules/DocPagination.tsx +126 -0
  190. package/templates/almadar-renderers-typescript/src/components/core/molecules/DocSearch.tsx +232 -0
  191. package/templates/almadar-renderers-typescript/src/components/core/molecules/DocSidebar.tsx +149 -0
  192. package/templates/almadar-renderers-typescript/src/components/core/molecules/DocTOC.tsx +90 -0
  193. package/templates/almadar-renderers-typescript/src/components/core/molecules/DocumentDetails.tsx +309 -0
  194. package/templates/almadar-renderers-typescript/src/components/core/molecules/DocumentPanel.tsx +305 -0
  195. package/templates/almadar-renderers-typescript/src/components/core/molecules/DocumentViewer.tsx +319 -0
  196. package/templates/almadar-renderers-typescript/src/components/core/molecules/Drawer.tsx +262 -0
  197. package/templates/almadar-renderers-typescript/src/components/core/molecules/EdgeDecoration.tsx +309 -0
  198. package/templates/almadar-renderers-typescript/src/components/core/molecules/EmojiPicker.tsx +132 -0
  199. package/templates/almadar-renderers-typescript/src/components/core/molecules/EmptyState.tsx +184 -0
  200. package/templates/almadar-renderers-typescript/src/components/core/molecules/ErrorBoundary.tsx +103 -0
  201. package/templates/almadar-renderers-typescript/src/components/core/molecules/ErrorState.tsx +72 -0
  202. package/templates/almadar-renderers-typescript/src/components/core/molecules/FeatureCard.tsx +121 -0
  203. package/templates/almadar-renderers-typescript/src/components/core/molecules/FeatureGrid.tsx +48 -0
  204. package/templates/almadar-renderers-typescript/src/components/core/molecules/FileTree.tsx +753 -0
  205. package/templates/almadar-renderers-typescript/src/components/core/molecules/FilterGroup.tsx +814 -0
  206. package/templates/almadar-renderers-typescript/src/components/core/molecules/Flex.tsx +134 -0
  207. package/templates/almadar-renderers-typescript/src/components/core/molecules/FlipCard.tsx +70 -0
  208. package/templates/almadar-renderers-typescript/src/components/core/molecules/FloatingActionButton.tsx +283 -0
  209. package/templates/almadar-renderers-typescript/src/components/core/molecules/FloatingToolbar.tsx +139 -0
  210. package/templates/almadar-renderers-typescript/src/components/core/molecules/FormField.tsx +76 -0
  211. package/templates/almadar-renderers-typescript/src/components/core/molecules/FormSection.tsx +191 -0
  212. package/templates/almadar-renderers-typescript/src/components/core/molecules/FormSectionHeader.tsx +139 -0
  213. package/templates/almadar-renderers-typescript/src/components/core/molecules/FxOverlay.tsx +246 -0
  214. package/templates/almadar-renderers-typescript/src/components/core/molecules/Gantt.tsx +396 -0
  215. package/templates/almadar-renderers-typescript/src/components/core/molecules/GeometricPattern.tsx +441 -0
  216. package/templates/almadar-renderers-typescript/src/components/core/molecules/GradientDivider.tsx +54 -0
  217. package/templates/almadar-renderers-typescript/src/components/core/molecules/GraphCanvas.tsx +1130 -0
  218. package/templates/almadar-renderers-typescript/src/components/core/molecules/GraphView.tsx +518 -0
  219. package/templates/almadar-renderers-typescript/src/components/core/molecules/Grid.tsx +265 -0
  220. package/templates/almadar-renderers-typescript/src/components/core/molecules/GridPicker.tsx +249 -0
  221. package/templates/almadar-renderers-typescript/src/components/core/molecules/GuestView.tsx +129 -0
  222. package/templates/almadar-renderers-typescript/src/components/core/molecules/Header.tsx +337 -0
  223. package/templates/almadar-renderers-typescript/src/components/core/molecules/IconButton.tsx +42 -0
  224. package/templates/almadar-renderers-typescript/src/components/core/molecules/IconPicker.tsx +87 -0
  225. package/templates/almadar-renderers-typescript/src/components/core/molecules/InputGroup.tsx +110 -0
  226. package/templates/almadar-renderers-typescript/src/components/core/molecules/JazariStateMachine.tsx +111 -0
  227. package/templates/almadar-renderers-typescript/src/components/core/molecules/JsonTreeEditor.tsx +373 -0
  228. package/templates/almadar-renderers-typescript/src/components/core/molecules/Lightbox.tsx +231 -0
  229. package/templates/almadar-renderers-typescript/src/components/core/molecules/LikertScale.tsx +217 -0
  230. package/templates/almadar-renderers-typescript/src/components/core/molecules/LineChart.tsx +232 -0
  231. package/templates/almadar-renderers-typescript/src/components/core/molecules/LoadingState.tsx +62 -0
  232. package/templates/almadar-renderers-typescript/src/components/core/molecules/MapView.tsx +303 -0
  233. package/templates/almadar-renderers-typescript/src/components/core/molecules/MatrixQuestion.tsx +191 -0
  234. package/templates/almadar-renderers-typescript/src/components/core/molecules/Menu.tsx +666 -0
  235. package/templates/almadar-renderers-typescript/src/components/core/molecules/Meter.tsx +352 -0
  236. package/templates/almadar-renderers-typescript/src/components/core/molecules/Modal.tsx +295 -0
  237. package/templates/almadar-renderers-typescript/src/components/core/molecules/Navigation.tsx +178 -0
  238. package/templates/almadar-renderers-typescript/src/components/core/molecules/NodeSlotEditor.tsx +107 -0
  239. package/templates/almadar-renderers-typescript/src/components/core/molecules/NumberStepper.tsx +228 -0
  240. package/templates/almadar-renderers-typescript/src/components/core/molecules/OnboardingSpotlight.tsx +108 -0
  241. package/templates/almadar-renderers-typescript/src/components/core/molecules/OptionConstraintGroup.tsx +240 -0
  242. package/templates/almadar-renderers-typescript/src/components/core/molecules/OrbitalVisualization.tsx +521 -0
  243. package/templates/almadar-renderers-typescript/src/components/core/molecules/PageHeader.tsx +249 -0
  244. package/templates/almadar-renderers-typescript/src/components/core/molecules/PageTransition.tsx +75 -0
  245. package/templates/almadar-renderers-typescript/src/components/core/molecules/Pagination.tsx +285 -0
  246. package/templates/almadar-renderers-typescript/src/components/core/molecules/Popover.tsx +416 -0
  247. package/templates/almadar-renderers-typescript/src/components/core/molecules/PositionedCanvas.tsx +302 -0
  248. package/templates/almadar-renderers-typescript/src/components/core/molecules/ProgressDots.tsx +103 -0
  249. package/templates/almadar-renderers-typescript/src/components/core/molecules/PropertyInspector.tsx +289 -0
  250. package/templates/almadar-renderers-typescript/src/components/core/molecules/PullToRefresh.tsx +145 -0
  251. package/templates/almadar-renderers-typescript/src/components/core/molecules/QrScanner.tsx +257 -0
  252. package/templates/almadar-renderers-typescript/src/components/core/molecules/QuizBlock.tsx +85 -0
  253. package/templates/almadar-renderers-typescript/src/components/core/molecules/ReflectionBlock.tsx +95 -0
  254. package/templates/almadar-renderers-typescript/src/components/core/molecules/RelationSelect.tsx +406 -0
  255. package/templates/almadar-renderers-typescript/src/components/core/molecules/RepeatableFormSection.tsx +278 -0
  256. package/templates/almadar-renderers-typescript/src/components/core/molecules/ReplyTree.tsx +365 -0
  257. package/templates/almadar-renderers-typescript/src/components/core/molecules/RichTextEditor.tsx +636 -0
  258. package/templates/almadar-renderers-typescript/src/components/core/molecules/ScaledDiagram.tsx +153 -0
  259. package/templates/almadar-renderers-typescript/src/components/core/molecules/SearchInput.tsx +203 -0
  260. package/templates/almadar-renderers-typescript/src/components/core/molecules/Section.tsx +144 -0
  261. package/templates/almadar-renderers-typescript/src/components/core/molecules/SidePanel.tsx +153 -0
  262. package/templates/almadar-renderers-typescript/src/components/core/molecules/Sidebar.tsx +320 -0
  263. package/templates/almadar-renderers-typescript/src/components/core/molecules/SignaturePad.tsx +272 -0
  264. package/templates/almadar-renderers-typescript/src/components/core/molecules/SimpleGrid.tsx +123 -0
  265. package/templates/almadar-renderers-typescript/src/components/core/molecules/Skeleton.tsx +336 -0
  266. package/templates/almadar-renderers-typescript/src/components/core/molecules/SocialProof.tsx +116 -0
  267. package/templates/almadar-renderers-typescript/src/components/core/molecules/SortableList.tsx +147 -0
  268. package/templates/almadar-renderers-typescript/src/components/core/molecules/Split.tsx +142 -0
  269. package/templates/almadar-renderers-typescript/src/components/core/molecules/StarRating.tsx +201 -0
  270. package/templates/almadar-renderers-typescript/src/components/core/molecules/StatDisplay.tsx +256 -0
  271. package/templates/almadar-renderers-typescript/src/components/core/molecules/SwipeableRow.tsx +249 -0
  272. package/templates/almadar-renderers-typescript/src/components/core/molecules/TableView.tsx +705 -0
  273. package/templates/almadar-renderers-typescript/src/components/core/molecules/Tabs.tsx +347 -0
  274. package/templates/almadar-renderers-typescript/src/components/core/molecules/TagInput.tsx +162 -0
  275. package/templates/almadar-renderers-typescript/src/components/core/molecules/Toast.tsx +214 -0
  276. package/templates/almadar-renderers-typescript/src/components/core/molecules/Tooltip.tsx +242 -0
  277. package/templates/almadar-renderers-typescript/src/components/core/molecules/TopNavItem.tsx +160 -0
  278. package/templates/almadar-renderers-typescript/src/components/core/molecules/UploadDropZone.tsx +272 -0
  279. package/templates/almadar-renderers-typescript/src/components/core/molecules/VersionDiff.tsx +449 -0
  280. package/templates/almadar-renderers-typescript/src/components/core/molecules/ViolationAlert.tsx +148 -0
  281. package/templates/almadar-renderers-typescript/src/components/core/molecules/VoteStack.tsx +176 -0
  282. package/templates/almadar-renderers-typescript/src/components/core/molecules/WizardContainer.tsx +344 -0
  283. package/templates/almadar-renderers-typescript/src/components/core/molecules/WizardNavigation.tsx +178 -0
  284. package/templates/almadar-renderers-typescript/src/components/core/molecules/WizardProgress.tsx +147 -0
  285. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/ActionCard.test.tsx +39 -0
  286. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/ActivityRail.test.tsx +77 -0
  287. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/AgentActivityFeed.test.tsx +334 -0
  288. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/Alert.test.tsx +47 -0
  289. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/AnimatedCounter.test.tsx +102 -0
  290. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/Breadcrumb.test.tsx +55 -0
  291. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/ButtonGroup.test.tsx +187 -0
  292. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/CalendarGrid.longpress.test.tsx +78 -0
  293. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/Chart.a11y.test.tsx +73 -0
  294. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/Chart.bar-color.test.tsx +48 -0
  295. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/Chart.empty.test.tsx +16 -0
  296. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/Chart.itemMove.test.tsx +55 -0
  297. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/Chart.line-axis.test.tsx +44 -0
  298. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/Chart.time-label.test.ts +47 -0
  299. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/CommandPalette.test.tsx +352 -0
  300. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/CommitRow.test.tsx +110 -0
  301. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/ConfirmDialog.busy.test.tsx +57 -0
  302. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/ConfirmDialog.test.tsx +46 -0
  303. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/DataGrid.containerCols.test.tsx +32 -0
  304. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/DataGrid.declared.test.tsx +76 -0
  305. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/DataGrid.media-slot.test.tsx +39 -0
  306. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/DataGrid.progress.test.tsx +32 -0
  307. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/DataGrid.rows.test.tsx +107 -0
  308. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/DataGrid.scrollx.test.tsx +36 -0
  309. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/DataGrid.test.tsx +40 -0
  310. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/DataGrid.title-clamp.test.tsx +28 -0
  311. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/DataList.anatomy.test.tsx +156 -0
  312. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/DataList.badge-labels.test.tsx +31 -0
  313. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/DataList.declared.test.tsx +125 -0
  314. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/DataList.dnd-reorder.test.tsx +123 -0
  315. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/DataList.group-format.test.tsx +40 -0
  316. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/DataList.item-enter.test.tsx +25 -0
  317. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/DataList.itemMove.test.tsx +223 -0
  318. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/DataList.message-footer.test.tsx +30 -0
  319. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/DataList.navigates-to.test.tsx +66 -0
  320. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/DataList.primary-action.test.tsx +76 -0
  321. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/DataList.test.tsx +40 -0
  322. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/DateRangePicker.test.tsx +104 -0
  323. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/DocNav.a11y.test.tsx +123 -0
  324. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/DocNav.states.test.tsx +87 -0
  325. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/Drawer.layer.test.tsx +47 -0
  326. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/EmojiPicker.lazy.test.tsx +22 -0
  327. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/EmojiPicker.test.tsx +110 -0
  328. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/EmptyContract.test.tsx +70 -0
  329. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/FileTree.a11y.test.tsx +118 -0
  330. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/FileTree.test.tsx +238 -0
  331. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/FilterGroup.responsive.test.tsx +73 -0
  332. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/FilterGroup.test.tsx +312 -0
  333. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/FloatingToolbar.test.tsx +150 -0
  334. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/FormField.label.test.tsx +48 -0
  335. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/FormSectionHeader.test.tsx +20 -0
  336. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/Gantt.bars.test.tsx +71 -0
  337. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/GraphCanvas.a11y.test.tsx +91 -0
  338. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/GraphCanvas.colors.test.ts +31 -0
  339. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/GraphCanvas.edgeStroke.test.ts +29 -0
  340. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/GraphView.a11y.test.tsx +38 -0
  341. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/GraphView.colors.test.ts +18 -0
  342. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/GraphView.edgeEndpoints.test.ts +30 -0
  343. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/Grid.responsive-classes.test.tsx +36 -0
  344. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/GuestView.test.tsx +201 -0
  345. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/Header.brand-href.test.tsx +51 -0
  346. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/Header.nav-href.test.tsx +65 -0
  347. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/IconButton.test.tsx +75 -0
  348. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/IconControls.a11y.test.tsx +103 -0
  349. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/ImportPreviewTree.test.tsx +115 -0
  350. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/ImportProgress.a11y.test.tsx +32 -0
  351. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/ImportProgress.test.tsx +76 -0
  352. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/ImportSourcePicker.test.tsx +111 -0
  353. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/JazariStateMachine.test.tsx +51 -0
  354. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/Lightbox.test.tsx +66 -0
  355. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/LineChart.test.tsx +85 -0
  356. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/ListRows.no-nested-controls.test.tsx +84 -0
  357. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/Menu.keyboard.test.tsx +124 -0
  358. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/Menu.test.tsx +76 -0
  359. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/MermaidDiagram.test.tsx +168 -0
  360. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/Meter.a11y.test.tsx +37 -0
  361. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/Modal.test.tsx +132 -0
  362. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/Navigation.test.tsx +29 -0
  363. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/PageHeader.busy.test.tsx +33 -0
  364. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/PageHeader.converge.test.tsx +35 -0
  365. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/PageHeader.layout.test.tsx +106 -0
  366. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/PageTransition.test.tsx +62 -0
  367. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/Pagination.responsive.test.tsx +46 -0
  368. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/Popover.dialog.test.tsx +58 -0
  369. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/Popover.edge-size.test.tsx +90 -0
  370. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/Popover.hover-close.test.tsx +28 -0
  371. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/Popover.hover-sticky.test.tsx +50 -0
  372. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/Popover.placement.test.ts +39 -0
  373. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/PositionedCanvas.a11y.test.tsx +39 -0
  374. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/RelationSelect.combobox.test.tsx +87 -0
  375. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/RepeatableFormSection.reorder.test.tsx +66 -0
  376. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/ScaledDiagram.contents.test.tsx +45 -0
  377. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/ScaledDiagram.measure.test.tsx +68 -0
  378. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/ScaledDiagram.rtl.test.tsx +61 -0
  379. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/SearchInput.test.tsx +182 -0
  380. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/SignaturePad.a11y.test.tsx +26 -0
  381. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/SimpleGrid.cols.test.tsx +34 -0
  382. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/SimpleGrid.maxCols.test.tsx +40 -0
  383. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/Skeleton.variants.test.tsx +30 -0
  384. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/Split.container.test.tsx +27 -0
  385. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/StarRating.a11y.test.tsx +39 -0
  386. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/TableView.badge-boolean.test.tsx +32 -0
  387. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/TableView.declared.test.tsx +99 -0
  388. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/TableView.header-tracks.test.tsx +43 -0
  389. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/TableView.test.tsx +131 -0
  390. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/Tabs.aria.test.tsx +84 -0
  391. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/Tabs.overflow.test.tsx +84 -0
  392. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/Tabs.test.tsx +76 -0
  393. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/TagInput.test.tsx +107 -0
  394. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/Toast.a11y.test.tsx +85 -0
  395. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/Tooltip.a11y.test.tsx +56 -0
  396. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/TopNavItem.test.tsx +110 -0
  397. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/UploadDropZone.readAs.test.tsx +50 -0
  398. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/VersionDiff.pane-scroll.test.tsx +29 -0
  399. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/VersionDiff.test.tsx +184 -0
  400. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/ViolationAlert.test.tsx +44 -0
  401. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/WizardProgress.test.tsx +56 -0
  402. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/focus-rings.test.tsx +23 -0
  403. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/mermaidGrammar.test.ts +104 -0
  404. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/mermaidSource.test.ts +58 -0
  405. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/nav-item-links.test.tsx +56 -0
  406. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/selectionState.a11y.test.tsx +151 -0
  407. package/templates/almadar-renderers-typescript/src/components/core/molecules/__tests__/state-markers.test.tsx +29 -0
  408. package/templates/almadar-renderers-typescript/src/components/core/molecules/emojiItems.ts +24 -0
  409. package/templates/almadar-renderers-typescript/src/components/core/molecules/import/ImportPreviewTree.tsx +197 -0
  410. package/templates/almadar-renderers-typescript/src/components/core/molecules/import/ImportProgress.tsx +140 -0
  411. package/templates/almadar-renderers-typescript/src/components/core/molecules/import/ImportSourcePicker.tsx +157 -0
  412. package/templates/almadar-renderers-typescript/src/components/core/molecules/import/index.ts +18 -0
  413. package/templates/almadar-renderers-typescript/src/components/core/molecules/index.ts +352 -0
  414. package/templates/almadar-renderers-typescript/src/components/core/molecules/markdown/CodeBlock.tsx +2456 -0
  415. package/templates/almadar-renderers-typescript/src/components/core/molecules/markdown/MarkdownContent.tsx +315 -0
  416. package/templates/almadar-renderers-typescript/src/components/core/molecules/markdown/MermaidDiagram.tsx +133 -0
  417. package/templates/almadar-renderers-typescript/src/components/core/molecules/markdown/SelectionAnnotator.tsx +142 -0
  418. package/templates/almadar-renderers-typescript/src/components/core/molecules/markdown/__tests__/CodeBlock.assist.test.tsx +195 -0
  419. package/templates/almadar-renderers-typescript/src/components/core/molecules/markdown/__tests__/CodeBlock.capacity.test.tsx +60 -0
  420. package/templates/almadar-renderers-typescript/src/components/core/molecules/markdown/__tests__/CodeBlock.caret.test.tsx +114 -0
  421. package/templates/almadar-renderers-typescript/src/components/core/molecules/markdown/__tests__/CodeBlock.color-scheme.test.tsx +55 -0
  422. package/templates/almadar-renderers-typescript/src/components/core/molecules/markdown/__tests__/CodeBlock.completions.test.tsx +188 -0
  423. package/templates/almadar-renderers-typescript/src/components/core/molecules/markdown/__tests__/CodeBlock.copy-only-header.test.tsx +39 -0
  424. package/templates/almadar-renderers-typescript/src/components/core/molecules/markdown/__tests__/CodeBlock.definition.test.tsx +75 -0
  425. package/templates/almadar-renderers-typescript/src/components/core/molecules/markdown/__tests__/CodeBlock.diagnostics.test.tsx +88 -0
  426. package/templates/almadar-renderers-typescript/src/components/core/molecules/markdown/__tests__/CodeBlock.empty-collections.test.tsx +34 -0
  427. package/templates/almadar-renderers-typescript/src/components/core/molecules/markdown/__tests__/CodeBlock.highlight-lines.test.tsx +50 -0
  428. package/templates/almadar-renderers-typescript/src/components/core/molecules/markdown/__tests__/CodeBlock.lazy-highlighter.test.tsx +30 -0
  429. package/templates/almadar-renderers-typescript/src/components/core/molecules/markdown/__tests__/CodeBlock.overlay-lines.test.tsx +39 -0
  430. package/templates/almadar-renderers-typescript/src/components/core/molecules/markdown/__tests__/CodeBlock.rtl-code.test.tsx +86 -0
  431. package/templates/almadar-renderers-typescript/src/components/core/molecules/markdown/__tests__/CodeBlock.test.tsx +355 -0
  432. package/templates/almadar-renderers-typescript/src/components/core/molecules/markdown/__tests__/MarkdownContent.math.test.tsx +24 -0
  433. package/templates/almadar-renderers-typescript/src/components/core/molecules/markdown/__tests__/MarkdownContent.stream.test.tsx +31 -0
  434. package/templates/almadar-renderers-typescript/src/components/core/molecules/markdown/__tests__/annotations.test.tsx +235 -0
  435. package/templates/almadar-renderers-typescript/src/components/core/molecules/markdown/index.ts +20 -0
  436. package/templates/almadar-renderers-typescript/src/components/core/molecules/markdown/katexPlugin.ts +4 -0
  437. package/templates/almadar-renderers-typescript/src/components/core/molecules/markdown/mermaidSource.ts +154 -0
  438. package/templates/almadar-renderers-typescript/src/components/core/molecules/markdown/prism.ts +159 -0
  439. package/templates/almadar-renderers-typescript/src/components/core/molecules/markdown/useEditorCapabilities.ts +336 -0
  440. package/templates/almadar-renderers-typescript/src/components/core/molecules/useDataDnd.tsx +674 -0
  441. package/templates/almadar-renderers-typescript/src/components/core/organisms/ChatBar.tsx +287 -0
  442. package/templates/almadar-renderers-typescript/src/components/core/organisms/CodeRunnerPanel.tsx +248 -0
  443. package/templates/almadar-renderers-typescript/src/components/core/organisms/ComponentPatterns.tsx +370 -0
  444. package/templates/almadar-renderers-typescript/src/components/core/organisms/CustomPattern.tsx +500 -0
  445. package/templates/almadar-renderers-typescript/src/components/core/organisms/DetailPanel.tsx +1130 -0
  446. package/templates/almadar-renderers-typescript/src/components/core/organisms/DrawerSlot.tsx +109 -0
  447. package/templates/almadar-renderers-typescript/src/components/core/organisms/Form.tsx +1512 -0
  448. package/templates/almadar-renderers-typescript/src/components/core/organisms/LayoutPatterns.tsx +199 -0
  449. package/templates/almadar-renderers-typescript/src/components/core/organisms/MediaGallery.tsx +347 -0
  450. package/templates/almadar-renderers-typescript/src/components/core/organisms/ModalSlot.tsx +100 -0
  451. package/templates/almadar-renderers-typescript/src/components/core/organisms/SegmentRenderer.tsx +271 -0
  452. package/templates/almadar-renderers-typescript/src/components/core/organisms/StatCard.tsx +338 -0
  453. package/templates/almadar-renderers-typescript/src/components/core/organisms/StateMachineView.tsx +79 -0
  454. package/templates/almadar-renderers-typescript/src/components/core/organisms/SubagentTracePanel.tsx +1186 -0
  455. package/templates/almadar-renderers-typescript/src/components/core/organisms/Timeline.tsx +321 -0
  456. package/templates/almadar-renderers-typescript/src/components/core/organisms/ToastSlot.tsx +141 -0
  457. package/templates/almadar-renderers-typescript/src/components/core/organisms/UISlotRenderer.tsx +2316 -0
  458. package/templates/almadar-renderers-typescript/src/components/core/organisms/__tests__/ChatBar.focus.test.tsx +84 -0
  459. package/templates/almadar-renderers-typescript/src/components/core/organisms/__tests__/ChatBar.running.test.tsx +36 -0
  460. package/templates/almadar-renderers-typescript/src/components/core/organisms/__tests__/ChatBar.sendEvent.test.tsx +81 -0
  461. package/templates/almadar-renderers-typescript/src/components/core/organisms/__tests__/CodeRunnerPanel.busy.test.tsx +71 -0
  462. package/templates/almadar-renderers-typescript/src/components/core/organisms/__tests__/ComponentPatterns.a11y.test.tsx +39 -0
  463. package/templates/almadar-renderers-typescript/src/components/core/organisms/__tests__/DetailPanel.a11y.test.tsx +48 -0
  464. package/templates/almadar-renderers-typescript/src/components/core/organisms/__tests__/DetailPanel.anatomy.test.tsx +230 -0
  465. package/templates/almadar-renderers-typescript/src/components/core/organisms/__tests__/DetailPanel.declared.test.tsx +116 -0
  466. package/templates/almadar-renderers-typescript/src/components/core/organisms/__tests__/DetailPanel.looks.test.tsx +224 -0
  467. package/templates/almadar-renderers-typescript/src/components/core/organisms/__tests__/DetailPanel.test.tsx +116 -0
  468. package/templates/almadar-renderers-typescript/src/components/core/organisms/__tests__/DrawerSlot.test.tsx +229 -0
  469. package/templates/almadar-renderers-typescript/src/components/core/organisms/__tests__/Form.a11y.test.tsx +36 -0
  470. package/templates/almadar-renderers-typescript/src/components/core/organisms/__tests__/Form.research.test.tsx +120 -0
  471. package/templates/almadar-renderers-typescript/src/components/core/organisms/__tests__/LayoutPatterns.test.tsx +366 -0
  472. package/templates/almadar-renderers-typescript/src/components/core/organisms/__tests__/MediaGallery.lightbox.test.tsx +61 -0
  473. package/templates/almadar-renderers-typescript/src/components/core/organisms/__tests__/SegmentRenderer.runCode.test.tsx +46 -0
  474. package/templates/almadar-renderers-typescript/src/components/core/organisms/__tests__/StatCard.declared.test.tsx +44 -0
  475. package/templates/almadar-renderers-typescript/src/components/core/organisms/__tests__/StatCard.format.test.tsx +32 -0
  476. package/templates/almadar-renderers-typescript/src/components/core/organisms/__tests__/StatCard.test.tsx +326 -0
  477. package/templates/almadar-renderers-typescript/src/components/core/organisms/__tests__/StateMachineView.test.tsx +78 -0
  478. package/templates/almadar-renderers-typescript/src/components/core/organisms/__tests__/StateMachineViewOrbital.test.tsx +449 -0
  479. package/templates/almadar-renderers-typescript/src/components/core/organisms/__tests__/Timeline.actions.test.tsx +58 -0
  480. package/templates/almadar-renderers-typescript/src/components/core/organisms/__tests__/Timeline.declared.test.tsx +44 -0
  481. package/templates/almadar-renderers-typescript/src/components/core/organisms/__tests__/Timeline.entity.test.tsx +38 -0
  482. package/templates/almadar-renderers-typescript/src/components/core/organisms/__tests__/Timeline.itemMove.test.tsx +56 -0
  483. package/templates/almadar-renderers-typescript/src/components/core/organisms/__tests__/Timeline.single-row.test.tsx +31 -0
  484. package/templates/almadar-renderers-typescript/src/components/core/organisms/__tests__/ToastSlot.portal.test.tsx +29 -0
  485. package/templates/almadar-renderers-typescript/src/components/core/organisms/__tests__/UISlotRenderer.modal-a11y.test.tsx +75 -0
  486. package/templates/almadar-renderers-typescript/src/components/core/organisms/__tests__/UISlotRenderer.nested-trait-refs.test.tsx +77 -0
  487. package/templates/almadar-renderers-typescript/src/components/core/organisms/__tests__/UISlotRenderer.sexpr-props.test.tsx +31 -0
  488. package/templates/almadar-renderers-typescript/src/components/core/organisms/__tests__/UISlotRenderer.systemSlot.test.tsx +33 -0
  489. package/templates/almadar-renderers-typescript/src/components/core/organisms/__tests__/UISlotRenderer.test.tsx +338 -0
  490. package/templates/almadar-renderers-typescript/src/components/core/organisms/__tests__/UISlotRenderer.toastStack.test.tsx +69 -0
  491. package/templates/almadar-renderers-typescript/src/components/core/organisms/__tests__/component-registry.lazy-avl.test.tsx +20 -0
  492. package/templates/almadar-renderers-typescript/src/components/core/organisms/__tests__/verification-contract.test.tsx +33 -0
  493. package/templates/almadar-renderers-typescript/src/components/core/organisms/component-registry.generated.ts +516 -0
  494. package/templates/almadar-renderers-typescript/src/components/core/organisms/debug/MachinePanel.tsx +217 -0
  495. package/templates/almadar-renderers-typescript/src/components/core/organisms/debug/RuntimeDebugger.css +116 -0
  496. package/templates/almadar-renderers-typescript/src/components/core/organisms/debug/RuntimeDebugger.tsx +434 -0
  497. package/templates/almadar-renderers-typescript/src/components/core/organisms/debug/__tests__/MachinePanel.test.tsx +171 -0
  498. package/templates/almadar-renderers-typescript/src/components/core/organisms/debug/__tests__/RuntimeDebugger.test.tsx +142 -0
  499. package/templates/almadar-renderers-typescript/src/components/core/organisms/debug/hooks/useDebugData.ts +133 -0
  500. package/templates/almadar-renderers-typescript/src/components/core/organisms/debug/index.ts +15 -0
  501. package/templates/almadar-renderers-typescript/src/components/core/organisms/debug/tabs/EntitiesTab.tsx +132 -0
  502. package/templates/almadar-renderers-typescript/src/components/core/organisms/debug/tabs/EventDispatcherTab.tsx +261 -0
  503. package/templates/almadar-renderers-typescript/src/components/core/organisms/debug/tabs/EventFlowTab.tsx +138 -0
  504. package/templates/almadar-renderers-typescript/src/components/core/organisms/debug/tabs/GuardsPanel.tsx +127 -0
  505. package/templates/almadar-renderers-typescript/src/components/core/organisms/debug/tabs/ServerBridgeTab.tsx +128 -0
  506. package/templates/almadar-renderers-typescript/src/components/core/organisms/debug/tabs/TicksTab.tsx +103 -0
  507. package/templates/almadar-renderers-typescript/src/components/core/organisms/debug/tabs/TraitsTab.tsx +104 -0
  508. package/templates/almadar-renderers-typescript/src/components/core/organisms/debug/tabs/TransitionTimeline.tsx +183 -0
  509. package/templates/almadar-renderers-typescript/src/components/core/organisms/debug/tabs/VerificationTab.tsx +106 -0
  510. package/templates/almadar-renderers-typescript/src/components/core/organisms/detail-looks/DetailLookLayout.tsx +331 -0
  511. package/templates/almadar-renderers-typescript/src/components/core/organisms/index.ts +104 -0
  512. package/templates/almadar-renderers-typescript/src/components/core/organisms/layout/DashboardGrid.tsx +109 -0
  513. package/templates/almadar-renderers-typescript/src/components/core/organisms/layout/DockLayout.tsx +508 -0
  514. package/templates/almadar-renderers-typescript/src/components/core/organisms/layout/MasterDetailLayout.tsx +100 -0
  515. package/templates/almadar-renderers-typescript/src/components/core/organisms/layout/SplitPane.tsx +162 -0
  516. package/templates/almadar-renderers-typescript/src/components/core/organisms/layout/TabbedContainer.tsx +81 -0
  517. package/templates/almadar-renderers-typescript/src/components/core/organisms/layout/__tests__/DashboardGrid.responsive.test.tsx +48 -0
  518. package/templates/almadar-renderers-typescript/src/components/core/organisms/layout/__tests__/DockLayout.compact.test.tsx +145 -0
  519. package/templates/almadar-renderers-typescript/src/components/core/organisms/layout/__tests__/DockLayout.test.tsx +207 -0
  520. package/templates/almadar-renderers-typescript/src/components/core/organisms/layout/__tests__/MasterDetailLayout.test.tsx +27 -0
  521. package/templates/almadar-renderers-typescript/src/components/core/organisms/layout/__tests__/SplitPane.test.tsx +149 -0
  522. package/templates/almadar-renderers-typescript/src/components/core/organisms/layout/__tests__/TabbedContainer.test.tsx +46 -0
  523. package/templates/almadar-renderers-typescript/src/components/core/organisms/layout/index.ts +11 -0
  524. package/templates/almadar-renderers-typescript/src/components/core/organisms/trace-edit-focus.ts +77 -0
  525. package/templates/almadar-renderers-typescript/src/components/core/organisms/types.ts +101 -0
  526. package/templates/almadar-renderers-typescript/src/components/core/templates/AuthLayout.tsx +144 -0
  527. package/templates/almadar-renderers-typescript/src/components/core/templates/CounterTemplate.tsx +285 -0
  528. package/templates/almadar-renderers-typescript/src/components/core/templates/DashboardLayout.tsx +1042 -0
  529. package/templates/almadar-renderers-typescript/src/components/core/templates/GenericAppTemplate.tsx +88 -0
  530. package/templates/almadar-renderers-typescript/src/components/core/templates/__tests__/AuthLayout.contrast.test.tsx +40 -0
  531. package/templates/almadar-renderers-typescript/src/components/core/templates/__tests__/CounterTemplate.test.tsx +138 -0
  532. package/templates/almadar-renderers-typescript/src/components/core/templates/__tests__/DashboardLayout.a11y.test.tsx +111 -0
  533. package/templates/almadar-renderers-typescript/src/components/core/templates/__tests__/DashboardLayout.compact.test.tsx +77 -0
  534. package/templates/almadar-renderers-typescript/src/components/core/templates/__tests__/DashboardLayout.drawer.test.tsx +101 -0
  535. package/templates/almadar-renderers-typescript/src/components/core/templates/__tests__/DashboardLayout.fullBleed.test.tsx +52 -0
  536. package/templates/almadar-renderers-typescript/src/components/core/templates/__tests__/DashboardLayout.sameHref.test.tsx +40 -0
  537. package/templates/almadar-renderers-typescript/src/components/core/templates/__tests__/DashboardLayout.search.test.tsx +52 -0
  538. package/templates/almadar-renderers-typescript/src/components/core/templates/__tests__/DashboardLayout.theme.test.tsx +60 -0
  539. package/templates/almadar-renderers-typescript/src/components/core/templates/__tests__/DashboardLayout.userMenu.test.tsx +87 -0
  540. package/templates/almadar-renderers-typescript/src/components/core/templates/index.ts +31 -0
  541. package/templates/almadar-renderers-typescript/src/components/core/templates/types.ts +35 -0
  542. package/templates/almadar-renderers-typescript/src/components/game/atoms/ChoiceButton.tsx +94 -0
  543. package/templates/almadar-renderers-typescript/src/components/game/atoms/ControlButton.tsx +153 -0
  544. package/templates/almadar-renderers-typescript/src/components/game/atoms/DialogueBubble.tsx +84 -0
  545. package/templates/almadar-renderers-typescript/src/components/game/atoms/DrawGroup.tsx +68 -0
  546. package/templates/almadar-renderers-typescript/src/components/game/atoms/DrawMesh.tsx +280 -0
  547. package/templates/almadar-renderers-typescript/src/components/game/atoms/DrawShape.tsx +449 -0
  548. package/templates/almadar-renderers-typescript/src/components/game/atoms/DrawSkinnedMesh.tsx +219 -0
  549. package/templates/almadar-renderers-typescript/src/components/game/atoms/DrawSprite.tsx +192 -0
  550. package/templates/almadar-renderers-typescript/src/components/game/atoms/DrawText.tsx +60 -0
  551. package/templates/almadar-renderers-typescript/src/components/game/atoms/GameAudioCue.tsx +74 -0
  552. package/templates/almadar-renderers-typescript/src/components/game/atoms/GameAudioToggle.tsx +108 -0
  553. package/templates/almadar-renderers-typescript/src/components/game/atoms/HealthBar.tsx +174 -0
  554. package/templates/almadar-renderers-typescript/src/components/game/atoms/MiniMap.tsx +198 -0
  555. package/templates/almadar-renderers-typescript/src/components/game/atoms/ScoreDisplay.tsx +84 -0
  556. package/templates/almadar-renderers-typescript/src/components/game/atoms/StateIndicator.tsx +122 -0
  557. package/templates/almadar-renderers-typescript/src/components/game/atoms/TimerDisplay.tsx +88 -0
  558. package/templates/almadar-renderers-typescript/src/components/game/atoms/__tests__/ChoiceButton.a11y.test.tsx +42 -0
  559. package/templates/almadar-renderers-typescript/src/components/game/atoms/__tests__/ControlButton.empty-payload.test.tsx +40 -0
  560. package/templates/almadar-renderers-typescript/src/components/game/atoms/__tests__/DialogueBubble.portrait.test.tsx +18 -0
  561. package/templates/almadar-renderers-typescript/src/components/game/atoms/__tests__/DrawSprite.unset-asset.test.ts +86 -0
  562. package/templates/almadar-renderers-typescript/src/components/game/atoms/__tests__/GameAudioToggle.loading.test.tsx +16 -0
  563. package/templates/almadar-renderers-typescript/src/components/game/atoms/__tests__/MiniMap.a11y.test.tsx +23 -0
  564. package/templates/almadar-renderers-typescript/src/components/game/molecules/ActionPalette.tsx +70 -0
  565. package/templates/almadar-renderers-typescript/src/components/game/molecules/ActionTile.tsx +97 -0
  566. package/templates/almadar-renderers-typescript/src/components/game/molecules/Canvas.tsx +300 -0
  567. package/templates/almadar-renderers-typescript/src/components/game/molecules/Canvas2D.tsx +1049 -0
  568. package/templates/almadar-renderers-typescript/src/components/game/molecules/ControlGrid.tsx +238 -0
  569. package/templates/almadar-renderers-typescript/src/components/game/molecules/DrawFxLayer.tsx +61 -0
  570. package/templates/almadar-renderers-typescript/src/components/game/molecules/DrawShapeLayer.tsx +30 -0
  571. package/templates/almadar-renderers-typescript/src/components/game/molecules/DrawSpriteLayer.tsx +32 -0
  572. package/templates/almadar-renderers-typescript/src/components/game/molecules/DrawTextLayer.tsx +33 -0
  573. package/templates/almadar-renderers-typescript/src/components/game/molecules/GameHud.tsx +209 -0
  574. package/templates/almadar-renderers-typescript/src/components/game/molecules/GameMenu.tsx +166 -0
  575. package/templates/almadar-renderers-typescript/src/components/game/molecules/SequenceBar.tsx +122 -0
  576. package/templates/almadar-renderers-typescript/src/components/game/molecules/StatBadge.tsx +135 -0
  577. package/templates/almadar-renderers-typescript/src/components/game/molecules/StateGraph.tsx +95 -0
  578. package/templates/almadar-renderers-typescript/src/components/game/molecules/StateJsonView.tsx +90 -0
  579. package/templates/almadar-renderers-typescript/src/components/game/molecules/TraitSlot.tsx +388 -0
  580. package/templates/almadar-renderers-typescript/src/components/game/molecules/TraitStateViewer.tsx +379 -0
  581. package/templates/almadar-renderers-typescript/src/components/game/molecules/__tests__/ActionTile.contract.test.tsx +52 -0
  582. package/templates/almadar-renderers-typescript/src/components/game/molecules/__tests__/Canvas.cameraControls.test.tsx +42 -0
  583. package/templates/almadar-renderers-typescript/src/components/game/molecules/__tests__/Canvas2D.a11y.test.tsx +40 -0
  584. package/templates/almadar-renderers-typescript/src/components/game/molecules/__tests__/Canvas2D.background.test.tsx +52 -0
  585. package/templates/almadar-renderers-typescript/src/components/game/molecules/__tests__/Canvas2D.editable.test.tsx +297 -0
  586. package/templates/almadar-renderers-typescript/src/components/game/molecules/__tests__/Canvas2D.keymap.test.tsx +92 -0
  587. package/templates/almadar-renderers-typescript/src/components/game/molecules/__tests__/Canvas2D.offscreen.test.tsx +88 -0
  588. package/templates/almadar-renderers-typescript/src/components/game/molecules/__tests__/Canvas2D.reduced-motion.test.tsx +68 -0
  589. package/templates/almadar-renderers-typescript/src/components/game/molecules/__tests__/Canvas2D.shrink.test.tsx +46 -0
  590. package/templates/almadar-renderers-typescript/src/components/game/molecules/__tests__/ControlGrid.diagonals.test.tsx +34 -0
  591. package/templates/almadar-renderers-typescript/src/components/game/molecules/__tests__/GameMenu.overlay.test.tsx +47 -0
  592. package/templates/almadar-renderers-typescript/src/components/game/molecules/__tests__/StateGraph.test.tsx +55 -0
  593. package/templates/almadar-renderers-typescript/src/components/game/molecules/__tests__/TraitSlot.events.test.tsx +30 -0
  594. package/templates/almadar-renderers-typescript/src/components/game/molecules/__tests__/TraitStateViewer.a11y.test.tsx +52 -0
  595. package/templates/almadar-renderers-typescript/src/components/game/molecules/index.ts +138 -0
  596. package/templates/almadar-renderers-typescript/src/components/game/patterns.ts +25 -0
  597. package/templates/almadar-renderers-typescript/src/components/game/templates/GameShell.tsx +224 -0
  598. package/templates/almadar-renderers-typescript/src/components/game/templates/__tests__/GameShell.width.test.tsx +51 -0
  599. package/templates/almadar-renderers-typescript/src/components/index.ts +17 -0
  600. package/templates/almadar-renderers-typescript/src/components/learning/atoms/LearningCanvas.tsx +780 -0
  601. package/templates/almadar-renderers-typescript/src/components/learning/atoms/__tests__/LearningCanvas.a11y.test.tsx +29 -0
  602. package/templates/almadar-renderers-typescript/src/components/learning/atoms/__tests__/LearningCanvas.colors.test.ts +11 -0
  603. package/templates/almadar-renderers-typescript/src/components/learning/atoms/__tests__/LearningCanvas.responsive.test.tsx +82 -0
  604. package/templates/almadar-renderers-typescript/src/components/learning/atoms/__tests__/LearningCanvas.trace-panel.test.ts +68 -0
  605. package/templates/almadar-renderers-typescript/src/components/learning/molecules/AlgoGraphCanvas.tsx +503 -0
  606. package/templates/almadar-renderers-typescript/src/components/learning/molecules/AlgorithmCanvas.tsx +849 -0
  607. package/templates/almadar-renderers-typescript/src/components/learning/molecules/BiologyCanvas.tsx +722 -0
  608. package/templates/almadar-renderers-typescript/src/components/learning/molecules/ChemistryCanvas.tsx +666 -0
  609. package/templates/almadar-renderers-typescript/src/components/learning/molecules/MathCanvas.tsx +642 -0
  610. package/templates/almadar-renderers-typescript/src/components/learning/molecules/PhysicsCanvas.tsx +1000 -0
  611. package/templates/almadar-renderers-typescript/src/components/learning/molecules/__tests__/AlgoGraphCanvas.colors.test.ts +40 -0
  612. package/templates/almadar-renderers-typescript/src/components/learning/molecules/__tests__/AlgorithmCanvas.colors.test.ts +49 -0
  613. package/templates/almadar-renderers-typescript/src/components/learning/molecules/__tests__/BiologyCanvas.theme.test.ts +17 -0
  614. package/templates/almadar-renderers-typescript/src/components/learning/molecules/__tests__/ChemistryCanvas.theme.test.ts +25 -0
  615. package/templates/almadar-renderers-typescript/src/components/learning/molecules/__tests__/MathCanvas.aspect.test.ts +40 -0
  616. package/templates/almadar-renderers-typescript/src/components/learning/molecules/__tests__/PhysicsCanvas.theme.test.ts +25 -0
  617. package/templates/almadar-renderers-typescript/src/components/learning/molecules/__tests__/canvas-label-placement.test.tsx +153 -0
  618. package/templates/almadar-renderers-typescript/src/components/learning/molecules/__tests__/learningScene3D.a11y.test.tsx +32 -0
  619. package/templates/almadar-renderers-typescript/src/components/learning/molecules/learningScene3D.tsx +703 -0
  620. package/templates/almadar-renderers-typescript/src/context/index.ts +60 -0
  621. package/templates/almadar-renderers-typescript/src/core/atoms/AnimatedGraphic.tsx +262 -0
  622. package/templates/almadar-renderers-typescript/src/core/atoms/AnimatedReveal.tsx +236 -0
  623. package/templates/almadar-renderers-typescript/src/core/atoms/Aside.tsx +34 -0
  624. package/templates/almadar-renderers-typescript/src/core/atoms/AtlasImage.tsx +207 -0
  625. package/templates/almadar-renderers-typescript/src/core/atoms/Avatar.tsx +271 -0
  626. package/templates/almadar-renderers-typescript/src/core/atoms/Badge.tsx +166 -0
  627. package/templates/almadar-renderers-typescript/src/core/atoms/Box.tsx +425 -0
  628. package/templates/almadar-renderers-typescript/src/core/atoms/Button.tsx +351 -0
  629. package/templates/almadar-renderers-typescript/src/core/atoms/Card.tsx +221 -0
  630. package/templates/almadar-renderers-typescript/src/core/atoms/Center.tsx +67 -0
  631. package/templates/almadar-renderers-typescript/src/core/atoms/Checkbox.tsx +90 -0
  632. package/templates/almadar-renderers-typescript/src/core/atoms/ConditionalWrapper.tsx +133 -0
  633. package/templates/almadar-renderers-typescript/src/core/atoms/ConfettiEffect.tsx +103 -0
  634. package/templates/almadar-renderers-typescript/src/core/atoms/DayCell.tsx +84 -0
  635. package/templates/almadar-renderers-typescript/src/core/atoms/Dialog.tsx +46 -0
  636. package/templates/almadar-renderers-typescript/src/core/atoms/Divider.tsx +113 -0
  637. package/templates/almadar-renderers-typescript/src/core/atoms/FilterPill.tsx +167 -0
  638. package/templates/almadar-renderers-typescript/src/core/atoms/FlipContainer.tsx +53 -0
  639. package/templates/almadar-renderers-typescript/src/core/atoms/GameIcon.tsx +51 -0
  640. package/templates/almadar-renderers-typescript/src/core/atoms/Icon.tsx +189 -0
  641. package/templates/almadar-renderers-typescript/src/core/atoms/Image.tsx +118 -0
  642. package/templates/almadar-renderers-typescript/src/core/atoms/InfiniteScrollSentinel.tsx +67 -0
  643. package/templates/almadar-renderers-typescript/src/core/atoms/Input.tsx +331 -0
  644. package/templates/almadar-renderers-typescript/src/core/atoms/Label.tsx +34 -0
  645. package/templates/almadar-renderers-typescript/src/core/atoms/LawReferenceTooltip.tsx +201 -0
  646. package/templates/almadar-renderers-typescript/src/core/atoms/Overlay.tsx +59 -0
  647. package/templates/almadar-renderers-typescript/src/core/atoms/PatternTile.tsx +60 -0
  648. package/templates/almadar-renderers-typescript/src/core/atoms/Presence.tsx +171 -0
  649. package/templates/almadar-renderers-typescript/src/core/atoms/ProgressBar.tsx +282 -0
  650. package/templates/almadar-renderers-typescript/src/core/atoms/Radio.tsx +247 -0
  651. package/templates/almadar-renderers-typescript/src/core/atoms/RangeSlider.tsx +250 -0
  652. package/templates/almadar-renderers-typescript/src/core/atoms/SectionHeader.tsx +64 -0
  653. package/templates/almadar-renderers-typescript/src/core/atoms/Select.tsx +524 -0
  654. package/templates/almadar-renderers-typescript/src/core/atoms/Spacer.tsx +72 -0
  655. package/templates/almadar-renderers-typescript/src/core/atoms/Sparkline.tsx +111 -0
  656. package/templates/almadar-renderers-typescript/src/core/atoms/Spinner.tsx +83 -0
  657. package/templates/almadar-renderers-typescript/src/core/atoms/Stack.tsx +183 -0
  658. package/templates/almadar-renderers-typescript/src/core/atoms/StatusDot.tsx +77 -0
  659. package/templates/almadar-renderers-typescript/src/core/atoms/Switch.tsx +117 -0
  660. package/templates/almadar-renderers-typescript/src/core/atoms/TextHighlight.tsx +148 -0
  661. package/templates/almadar-renderers-typescript/src/core/atoms/Textarea.tsx +106 -0
  662. package/templates/almadar-renderers-typescript/src/core/atoms/ThemeToggle.tsx +115 -0
  663. package/templates/almadar-renderers-typescript/src/core/atoms/TimeSlotCell.tsx +73 -0
  664. package/templates/almadar-renderers-typescript/src/core/atoms/TrendIndicator.tsx +111 -0
  665. package/templates/almadar-renderers-typescript/src/core/atoms/TypewriterText.tsx +114 -0
  666. package/templates/almadar-renderers-typescript/src/core/atoms/Typography.tsx +227 -0
  667. package/templates/almadar-renderers-typescript/src/core/atoms/VideoEmbed.tsx +223 -0
  668. package/templates/almadar-renderers-typescript/src/core/atoms/__tests__/Box.animateChanges.test.tsx +119 -0
  669. package/templates/almadar-renderers-typescript/src/core/atoms/__tests__/Box.animateHeight.test.tsx +113 -0
  670. package/templates/almadar-renderers-typescript/src/core/atoms/__tests__/Box.animateLayout.test.tsx +82 -0
  671. package/templates/almadar-renderers-typescript/src/core/atoms/__tests__/Box.band.test.tsx +73 -0
  672. package/templates/almadar-renderers-typescript/src/core/atoms/__tests__/Box.dir.test.tsx +16 -0
  673. package/templates/almadar-renderers-typescript/src/core/atoms/__tests__/Button.href.test.tsx +153 -0
  674. package/templates/almadar-renderers-typescript/src/core/atoms/__tests__/Button.secondary-contrast.test.tsx +26 -0
  675. package/templates/almadar-renderers-typescript/src/core/atoms/__tests__/Icon.theme-stroke.test.tsx +123 -0
  676. package/templates/almadar-renderers-typescript/src/core/atoms/__tests__/Image.test.tsx +52 -0
  677. package/templates/almadar-renderers-typescript/src/core/atoms/__tests__/Input.label.test.tsx +38 -0
  678. package/templates/almadar-renderers-typescript/src/core/atoms/__tests__/PatternTile.geometry.test.tsx +36 -0
  679. package/templates/almadar-renderers-typescript/src/core/atoms/__tests__/Presence.onexited.test.tsx +34 -0
  680. package/templates/almadar-renderers-typescript/src/core/atoms/__tests__/Spinner.loader-mark.test.tsx +30 -0
  681. package/templates/almadar-renderers-typescript/src/core/atoms/__tests__/Switch.action.test.tsx +43 -0
  682. package/templates/almadar-renderers-typescript/src/core/atoms/__tests__/Switch.label.test.tsx +41 -0
  683. package/templates/almadar-renderers-typescript/src/core/atoms/__tests__/Textarea.test.tsx +63 -0
  684. package/templates/almadar-renderers-typescript/src/core/atoms/__tests__/Typography.test.tsx +73 -0
  685. package/templates/almadar-renderers-typescript/src/core/atoms/__tests__/VideoEmbed.events.test.tsx +126 -0
  686. package/templates/almadar-renderers-typescript/src/core/atoms/__tests__/passthrough.test.tsx +63 -0
  687. package/templates/almadar-renderers-typescript/src/core/atoms/__tests__/reduced-motion.test.tsx +217 -0
  688. package/templates/almadar-renderers-typescript/src/core/atoms/fx.ts +261 -0
  689. package/templates/almadar-renderers-typescript/src/core/atoms/svg/SvgBranch.tsx +149 -0
  690. package/templates/almadar-renderers-typescript/src/core/atoms/svg/SvgConnection.tsx +80 -0
  691. package/templates/almadar-renderers-typescript/src/core/atoms/svg/SvgFlow.tsx +91 -0
  692. package/templates/almadar-renderers-typescript/src/core/atoms/svg/SvgGrid.tsx +78 -0
  693. package/templates/almadar-renderers-typescript/src/core/atoms/svg/SvgLobe.tsx +92 -0
  694. package/templates/almadar-renderers-typescript/src/core/atoms/svg/SvgMesh.tsx +109 -0
  695. package/templates/almadar-renderers-typescript/src/core/atoms/svg/SvgMorph.tsx +242 -0
  696. package/templates/almadar-renderers-typescript/src/core/atoms/svg/SvgNode.tsx +86 -0
  697. package/templates/almadar-renderers-typescript/src/core/atoms/svg/SvgPulse.tsx +76 -0
  698. package/templates/almadar-renderers-typescript/src/core/atoms/svg/SvgRing.tsx +94 -0
  699. package/templates/almadar-renderers-typescript/src/core/atoms/svg/SvgShield.tsx +77 -0
  700. package/templates/almadar-renderers-typescript/src/core/atoms/svg/SvgStack.tsx +97 -0
  701. package/templates/almadar-renderers-typescript/src/core/atoms/svg/index.ts +12 -0
  702. package/templates/almadar-renderers-typescript/src/core/atoms/types.ts +94 -0
  703. package/templates/almadar-renderers-typescript/src/core/hooks/__tests__/create-translate-locale.test.ts +34 -0
  704. package/templates/almadar-renderers-typescript/src/core/hooks/__tests__/useFieldDraft.test.tsx +38 -0
  705. package/templates/almadar-renderers-typescript/src/core/hooks/useDialogBehavior.ts +115 -0
  706. package/templates/almadar-renderers-typescript/src/core/hooks/useEventBus.ts +358 -0
  707. package/templates/almadar-renderers-typescript/src/core/hooks/useFieldDraft.ts +32 -0
  708. package/templates/almadar-renderers-typescript/src/core/hooks/useInfiniteScroll.ts +68 -0
  709. package/templates/almadar-renderers-typescript/src/core/hooks/useMediaQuery.ts +33 -0
  710. package/templates/almadar-renderers-typescript/src/core/hooks/usePrefersReducedMotion.ts +8 -0
  711. package/templates/almadar-renderers-typescript/src/core/hooks/useTapReveal.ts +84 -0
  712. package/templates/almadar-renderers-typescript/src/core/hooks/useTranslate.ts +158 -0
  713. package/templates/almadar-renderers-typescript/src/core/index.ts +95 -0
  714. package/templates/almadar-renderers-typescript/src/core/lib/animate-changes.ts +231 -0
  715. package/templates/almadar-renderers-typescript/src/core/lib/atlasSlice.ts +142 -0
  716. package/templates/almadar-renderers-typescript/src/core/lib/band-shapes.json +7 -0
  717. package/templates/almadar-renderers-typescript/src/core/lib/bandShapes.ts +67 -0
  718. package/templates/almadar-renderers-typescript/src/core/lib/cn.ts +33 -0
  719. package/templates/almadar-renderers-typescript/src/core/lib/domPassthrough.ts +22 -0
  720. package/templates/almadar-renderers-typescript/src/core/lib/followHref.ts +20 -0
  721. package/templates/almadar-renderers-typescript/src/core/lib/format.ts +193 -0
  722. package/templates/almadar-renderers-typescript/src/core/lib/iconFamily.tsx +234 -0
  723. package/templates/almadar-renderers-typescript/src/core/lib/inlineText.ts +6 -0
  724. package/templates/almadar-renderers-typescript/src/core/lib/lucide-dynamic-icon-imports.d.ts +4 -0
  725. package/templates/almadar-renderers-typescript/src/core/lib/lucideIcons.tsx +102 -0
  726. package/templates/almadar-renderers-typescript/src/core/lib/motion-tokens.ts +42 -0
  727. package/templates/almadar-renderers-typescript/src/core/lib/navStack.ts +226 -0
  728. package/templates/almadar-renderers-typescript/src/core/lib/pendingDispatch.ts +163 -0
  729. package/templates/almadar-renderers-typescript/src/core/lib/pressable.ts +101 -0
  730. package/templates/almadar-renderers-typescript/src/core/lib/render-eval.ts +41 -0
  731. package/templates/almadar-renderers-typescript/src/core/lib/svgMotion.ts +19 -0
  732. package/templates/almadar-renderers-typescript/src/core/lib/theme-scale.ts +15 -0
  733. package/templates/almadar-renderers-typescript/src/core/lib/traitPresence.ts +125 -0
  734. package/templates/almadar-renderers-typescript/src/core/locales/ar.json +1276 -0
  735. package/templates/almadar-renderers-typescript/src/core/locales/en.json +1276 -0
  736. package/templates/almadar-renderers-typescript/src/core/locales/index.ts +54 -0
  737. package/templates/almadar-renderers-typescript/src/core/locales/sl.json +1276 -0
  738. package/templates/almadar-renderers-typescript/src/core/providers/EventBusProvider.tsx +344 -0
  739. package/templates/almadar-renderers-typescript/src/core/providers/NavStackContext.tsx +245 -0
  740. package/templates/almadar-renderers-typescript/src/core/providers/SurfaceContext.tsx +43 -0
  741. package/templates/almadar-renderers-typescript/src/core/providers/ThemeContext.tsx +404 -0
  742. package/templates/almadar-renderers-typescript/src/core/providers/TraitScopeProvider.tsx +134 -0
  743. package/templates/almadar-renderers-typescript/src/core/providers/builtInThemes.ts +70 -0
  744. package/templates/almadar-renderers-typescript/src/core/providers/navigation.tsx +431 -0
  745. package/templates/almadar-renderers-typescript/src/core/tokens/native-tokens.json +369 -0
  746. package/templates/almadar-renderers-typescript/src/core/types/event-bus-types.ts +77 -0
  747. package/templates/almadar-renderers-typescript/src/effects/on-device-handlers.ts +11 -0
  748. package/templates/almadar-renderers-typescript/src/effects/page-facts.ts +1 -0
  749. package/templates/almadar-renderers-typescript/src/hooks/__tests__/I18nProvider.document.test.tsx +33 -0
  750. package/templates/almadar-renderers-typescript/src/hooks/__tests__/useCanvasDnd.test.tsx +195 -0
  751. package/templates/almadar-renderers-typescript/src/hooks/__tests__/useCanvasDraggable.role.test.tsx +28 -0
  752. package/templates/almadar-renderers-typescript/src/hooks/__tests__/useDialogBehavior.test.tsx +202 -0
  753. package/templates/almadar-renderers-typescript/src/hooks/__tests__/useInlineTextEdit.test.tsx +152 -0
  754. package/templates/almadar-renderers-typescript/src/hooks/__tests__/useMediaQuery.test.ts +23 -0
  755. package/templates/almadar-renderers-typescript/src/hooks/__tests__/useOnScreen.test.tsx +50 -0
  756. package/templates/almadar-renderers-typescript/src/hooks/__tests__/usePageHead.test.tsx +98 -0
  757. package/templates/almadar-renderers-typescript/src/hooks/__tests__/useTickVisibility.test.tsx +25 -0
  758. package/templates/almadar-renderers-typescript/src/hooks/__tests__/useUIEvents.claim.test.tsx +66 -0
  759. package/templates/almadar-renderers-typescript/src/hooks/circuit/useAwaitingSkeletonSource.ts +40 -0
  760. package/templates/almadar-renderers-typescript/src/hooks/circuit/useBrowserStore.ts +54 -0
  761. package/templates/almadar-renderers-typescript/src/hooks/circuit/useBusIngress.ts +153 -0
  762. package/templates/almadar-renderers-typescript/src/hooks/circuit/useCircuitKernel.ts +321 -0
  763. package/templates/almadar-renderers-typescript/src/hooks/circuit/useClientTicks.ts +35 -0
  764. package/templates/almadar-renderers-typescript/src/hooks/circuit/useEntityBindingSource.ts +75 -0
  765. package/templates/almadar-renderers-typescript/src/hooks/circuit/useSlotFlush.ts +235 -0
  766. package/templates/almadar-renderers-typescript/src/hooks/index.ts +210 -0
  767. package/templates/almadar-renderers-typescript/src/hooks/useAgentChat.ts +215 -0
  768. package/templates/almadar-renderers-typescript/src/hooks/useAlmadarDndCollision.ts +87 -0
  769. package/templates/almadar-renderers-typescript/src/hooks/useAuthContext.ts +36 -0
  770. package/templates/almadar-renderers-typescript/src/hooks/useCamera.ts +209 -0
  771. package/templates/almadar-renderers-typescript/src/hooks/useCanvasDnd.tsx +422 -0
  772. package/templates/almadar-renderers-typescript/src/hooks/useCanvasGestures.ts +181 -0
  773. package/templates/almadar-renderers-typescript/src/hooks/useCanvasTheme.ts +25 -0
  774. package/templates/almadar-renderers-typescript/src/hooks/useClientEffects.ts +240 -0
  775. package/templates/almadar-renderers-typescript/src/hooks/useCodeAssist.ts +165 -0
  776. package/templates/almadar-renderers-typescript/src/hooks/useCodeCompletion.ts +134 -0
  777. package/templates/almadar-renderers-typescript/src/hooks/useCompile.ts +80 -0
  778. package/templates/almadar-renderers-typescript/src/hooks/useContainerWidth.ts +16 -0
  779. package/templates/almadar-renderers-typescript/src/hooks/useDeepAgentGeneration.ts +166 -0
  780. package/templates/almadar-renderers-typescript/src/hooks/useDragReorder.ts +128 -0
  781. package/templates/almadar-renderers-typescript/src/hooks/useDraggable.ts +87 -0
  782. package/templates/almadar-renderers-typescript/src/hooks/useDropZone.ts +123 -0
  783. package/templates/almadar-renderers-typescript/src/hooks/useExtensions.ts +159 -0
  784. package/templates/almadar-renderers-typescript/src/hooks/useFileEditor.ts +201 -0
  785. package/templates/almadar-renderers-typescript/src/hooks/useFileSystem.ts +261 -0
  786. package/templates/almadar-renderers-typescript/src/hooks/useGameAudio.ts +411 -0
  787. package/templates/almadar-renderers-typescript/src/hooks/useGitHub.ts +152 -0
  788. package/templates/almadar-renderers-typescript/src/hooks/useImageCache.ts +78 -0
  789. package/templates/almadar-renderers-typescript/src/hooks/useInlineTextEdit.ts +102 -0
  790. package/templates/almadar-renderers-typescript/src/hooks/useKeyMapEvents.ts +40 -0
  791. package/templates/almadar-renderers-typescript/src/hooks/useKeyboardRouter.ts +138 -0
  792. package/templates/almadar-renderers-typescript/src/hooks/useLongPress.ts +83 -0
  793. package/templates/almadar-renderers-typescript/src/hooks/useOnScreen.ts +28 -0
  794. package/templates/almadar-renderers-typescript/src/hooks/usePageHead.ts +93 -0
  795. package/templates/almadar-renderers-typescript/src/hooks/usePreview.ts +186 -0
  796. package/templates/almadar-renderers-typescript/src/hooks/usePullToRefresh.ts +110 -0
  797. package/templates/almadar-renderers-typescript/src/hooks/useQuerySingleton.ts +181 -0
  798. package/templates/almadar-renderers-typescript/src/hooks/useRenderInterpolation.ts +123 -0
  799. package/templates/almadar-renderers-typescript/src/hooks/useRowActions.ts +67 -0
  800. package/templates/almadar-renderers-typescript/src/hooks/useSharedEntityStore.ts +180 -0
  801. package/templates/almadar-renderers-typescript/src/hooks/useSwipeGesture.ts +122 -0
  802. package/templates/almadar-renderers-typescript/src/hooks/useThemeColors.ts +30 -0
  803. package/templates/almadar-renderers-typescript/src/hooks/useTickVisibility.ts +12 -0
  804. package/templates/almadar-renderers-typescript/src/hooks/useTraitInspector.ts +109 -0
  805. package/templates/almadar-renderers-typescript/src/hooks/useTraitStateMachine.ts +481 -0
  806. package/templates/almadar-renderers-typescript/src/hooks/useUIEvents.ts +156 -0
  807. package/templates/almadar-renderers-typescript/src/hooks/useUISlots.ts +777 -0
  808. package/templates/almadar-renderers-typescript/src/hooks/useUnitSpriteAtlas.ts +157 -0
  809. package/templates/almadar-renderers-typescript/src/hooks/useValidation.ts +136 -0
  810. package/templates/almadar-renderers-typescript/src/index.ts +39 -0
  811. package/templates/almadar-renderers-typescript/src/kernel/engine.ts +17 -0
  812. package/templates/almadar-renderers-typescript/src/kernel/host.ts +9 -0
  813. package/templates/almadar-renderers-typescript/src/kernel/kv-web.ts +1 -0
  814. package/templates/almadar-renderers-typescript/src/kernel/os-fetch-port.ts +1 -0
  815. package/templates/almadar-renderers-typescript/src/kernel/tick-driver.ts +110 -0
  816. package/templates/almadar-renderers-typescript/src/lib/ThemedPortal.tsx +29 -0
  817. package/templates/almadar-renderers-typescript/src/lib/__tests__/__snapshots__/iconNativeMap.test.ts.snap +239 -0
  818. package/templates/almadar-renderers-typescript/src/lib/__tests__/atlasSlice.empty-atlas.test.ts +27 -0
  819. package/templates/almadar-renderers-typescript/src/lib/__tests__/avl-3d-layout.test.ts +59 -0
  820. package/templates/almadar-renderers-typescript/src/lib/__tests__/avl-circuit-layout.test.ts +87 -0
  821. package/templates/almadar-renderers-typescript/src/lib/__tests__/avl-dependency-graph.test.ts +55 -0
  822. package/templates/almadar-renderers-typescript/src/lib/__tests__/avl-deployment-graph.test.ts +36 -0
  823. package/templates/almadar-renderers-typescript/src/lib/__tests__/avl-elk-layout-lazy.test.ts +44 -0
  824. package/templates/almadar-renderers-typescript/src/lib/__tests__/avl-elk-layout.test.ts +71 -0
  825. package/templates/almadar-renderers-typescript/src/lib/__tests__/avl-event-wires.test.ts +129 -0
  826. package/templates/almadar-renderers-typescript/src/lib/__tests__/avl-layered-graph.test.ts +66 -0
  827. package/templates/almadar-renderers-typescript/src/lib/__tests__/avl-play.test.ts +146 -0
  828. package/templates/almadar-renderers-typescript/src/lib/__tests__/avl-played-state.test.ts +37 -0
  829. package/templates/almadar-renderers-typescript/src/lib/__tests__/avl-system-graph.test.ts +70 -0
  830. package/templates/almadar-renderers-typescript/src/lib/__tests__/avl-theme.test.ts +86 -0
  831. package/templates/almadar-renderers-typescript/src/lib/__tests__/avl-trait-description.test.ts +106 -0
  832. package/templates/almadar-renderers-typescript/src/lib/__tests__/avl-trait-flow.test.ts +100 -0
  833. package/templates/almadar-renderers-typescript/src/lib/__tests__/bandShapes.test.ts +45 -0
  834. package/templates/almadar-renderers-typescript/src/lib/__tests__/bundling.test.ts +45 -0
  835. package/templates/almadar-renderers-typescript/src/lib/__tests__/canvas-view.test.ts +236 -0
  836. package/templates/almadar-renderers-typescript/src/lib/__tests__/canvasTheme.test.ts +221 -0
  837. package/templates/almadar-renderers-typescript/src/lib/__tests__/cn.test.ts +84 -0
  838. package/templates/almadar-renderers-typescript/src/lib/__tests__/codeAssist.test.ts +74 -0
  839. package/templates/almadar-renderers-typescript/src/lib/__tests__/codeDiagnostics.test.ts +100 -0
  840. package/templates/almadar-renderers-typescript/src/lib/__tests__/codeIdentifiers.test.ts +33 -0
  841. package/templates/almadar-renderers-typescript/src/lib/__tests__/compute-insertion-index.test.ts +54 -0
  842. package/templates/almadar-renderers-typescript/src/lib/__tests__/consent-popup.test.ts +101 -0
  843. package/templates/almadar-renderers-typescript/src/lib/__tests__/displayField.test.ts +40 -0
  844. package/templates/almadar-renderers-typescript/src/lib/__tests__/entityRows.test.ts +17 -0
  845. package/templates/almadar-renderers-typescript/src/lib/__tests__/event-sources.test.ts +51 -0
  846. package/templates/almadar-renderers-typescript/src/lib/__tests__/followHref.focus.test.ts +41 -0
  847. package/templates/almadar-renderers-typescript/src/lib/__tests__/followHref.test.ts +27 -0
  848. package/templates/almadar-renderers-typescript/src/lib/__tests__/format.local-date.test.ts +55 -0
  849. package/templates/almadar-renderers-typescript/src/lib/__tests__/format.locale-number.test.ts +45 -0
  850. package/templates/almadar-renderers-typescript/src/lib/__tests__/gameFonts.test.ts +11 -0
  851. package/templates/almadar-renderers-typescript/src/lib/__tests__/host-actions.test.ts +29 -0
  852. package/templates/almadar-renderers-typescript/src/lib/__tests__/hostDispatchInView.test.ts +50 -0
  853. package/templates/almadar-renderers-typescript/src/lib/__tests__/iconNativeMap.test.ts +77 -0
  854. package/templates/almadar-renderers-typescript/src/lib/__tests__/inAppLinks.test.tsx +79 -0
  855. package/templates/almadar-renderers-typescript/src/lib/__tests__/keyMapEvent.test.ts +103 -0
  856. package/templates/almadar-renderers-typescript/src/lib/__tests__/lineDiff.test.ts +77 -0
  857. package/templates/almadar-renderers-typescript/src/lib/__tests__/lucideIcons.test.tsx +44 -0
  858. package/templates/almadar-renderers-typescript/src/lib/__tests__/mermaidTheme.test.ts +65 -0
  859. package/templates/almadar-renderers-typescript/src/lib/__tests__/navStack.label.test.ts +64 -0
  860. package/templates/almadar-renderers-typescript/src/lib/__tests__/pressable.test.tsx +100 -0
  861. package/templates/almadar-renderers-typescript/src/lib/__tests__/propTypeMismatch.test.ts +70 -0
  862. package/templates/almadar-renderers-typescript/src/lib/__tests__/recordDispatchVerdict.test.ts +109 -0
  863. package/templates/almadar-renderers-typescript/src/lib/__tests__/render-ui-agreement.test.ts +56 -0
  864. package/templates/almadar-renderers-typescript/src/lib/__tests__/selection-geometry.test.ts +290 -0
  865. package/templates/almadar-renderers-typescript/src/lib/__tests__/skinning.test.ts +147 -0
  866. package/templates/almadar-renderers-typescript/src/lib/__tests__/theme-color.test.ts +68 -0
  867. package/templates/almadar-renderers-typescript/src/lib/__tests__/traitPresence.test.ts +107 -0
  868. package/templates/almadar-renderers-typescript/src/lib/__tests__/verification-config-binding.test.ts +27 -0
  869. package/templates/almadar-renderers-typescript/src/lib/__tests__/verificationRegistry.event-source.test.ts +59 -0
  870. package/templates/almadar-renderers-typescript/src/lib/api-client.ts +136 -0
  871. package/templates/almadar-renderers-typescript/src/lib/avl-3d-layout.ts +425 -0
  872. package/templates/almadar-renderers-typescript/src/lib/avl-annotations.ts +20 -0
  873. package/templates/almadar-renderers-typescript/src/lib/avl-circuit-layout.ts +227 -0
  874. package/templates/almadar-renderers-typescript/src/lib/avl-dependency-graph.ts +72 -0
  875. package/templates/almadar-renderers-typescript/src/lib/avl-deployment-graph.ts +22 -0
  876. package/templates/almadar-renderers-typescript/src/lib/avl-elk-layout.ts +694 -0
  877. package/templates/almadar-renderers-typescript/src/lib/avl-event-wires.ts +19 -0
  878. package/templates/almadar-renderers-typescript/src/lib/avl-flow-converter.ts +123 -0
  879. package/templates/almadar-renderers-typescript/src/lib/avl-layered-graph.ts +121 -0
  880. package/templates/almadar-renderers-typescript/src/lib/avl-layout.ts +110 -0
  881. package/templates/almadar-renderers-typescript/src/lib/avl-play.ts +146 -0
  882. package/templates/almadar-renderers-typescript/src/lib/avl-preview-converter.ts +1248 -0
  883. package/templates/almadar-renderers-typescript/src/lib/avl-prop-decoders.ts +202 -0
  884. package/templates/almadar-renderers-typescript/src/lib/avl-schema-parser.ts +532 -0
  885. package/templates/almadar-renderers-typescript/src/lib/avl-theme.ts +226 -0
  886. package/templates/almadar-renderers-typescript/src/lib/avl-trait-flow.ts +108 -0
  887. package/templates/almadar-renderers-typescript/src/lib/avl-zoom-band.ts +56 -0
  888. package/templates/almadar-renderers-typescript/src/lib/avl-zoom-state.ts +234 -0
  889. package/templates/almadar-renderers-typescript/src/lib/boardEntity.ts +81 -0
  890. package/templates/almadar-renderers-typescript/src/lib/browser-row-sets.ts +39 -0
  891. package/templates/almadar-renderers-typescript/src/lib/bus-claim.ts +34 -0
  892. package/templates/almadar-renderers-typescript/src/lib/canvas-tools.ts +32 -0
  893. package/templates/almadar-renderers-typescript/src/lib/canvasTheme.ts +445 -0
  894. package/templates/almadar-renderers-typescript/src/lib/circuit-surface.ts +74 -0
  895. package/templates/almadar-renderers-typescript/src/lib/circuitVerificationObserver.ts +93 -0
  896. package/templates/almadar-renderers-typescript/src/lib/client-effect-executor.ts +223 -0
  897. package/templates/almadar-renderers-typescript/src/lib/codeAssist.ts +94 -0
  898. package/templates/almadar-renderers-typescript/src/lib/codeCompletion.ts +20 -0
  899. package/templates/almadar-renderers-typescript/src/lib/codeDiagnostics.ts +124 -0
  900. package/templates/almadar-renderers-typescript/src/lib/codeIdentifiers.ts +40 -0
  901. package/templates/almadar-renderers-typescript/src/lib/command-send-pump.ts +42 -0
  902. package/templates/almadar-renderers-typescript/src/lib/compute-insertion-index.ts +61 -0
  903. package/templates/almadar-renderers-typescript/src/lib/consent-popup.ts +45 -0
  904. package/templates/almadar-renderers-typescript/src/lib/content-annotations.ts +64 -0
  905. package/templates/almadar-renderers-typescript/src/lib/data-resolver.ts +199 -0
  906. package/templates/almadar-renderers-typescript/src/lib/debug.ts +157 -0
  907. package/templates/almadar-renderers-typescript/src/lib/debugRegistry.ts +110 -0
  908. package/templates/almadar-renderers-typescript/src/lib/debugUtils.ts +62 -0
  909. package/templates/almadar-renderers-typescript/src/lib/derive-edit-focus.ts +61 -0
  910. package/templates/almadar-renderers-typescript/src/lib/design-classes.ts +520 -0
  911. package/templates/almadar-renderers-typescript/src/lib/displayField.ts +50 -0
  912. package/templates/almadar-renderers-typescript/src/lib/doc-nav-classes.ts +21 -0
  913. package/templates/almadar-renderers-typescript/src/lib/drawable/__tests__/hitTest.test.ts +102 -0
  914. package/templates/almadar-renderers-typescript/src/lib/drawable/__tests__/themeDrawables.test.ts +76 -0
  915. package/templates/almadar-renderers-typescript/src/lib/drawable/contract.ts +151 -0
  916. package/templates/almadar-renderers-typescript/src/lib/drawable/hitTest.ts +188 -0
  917. package/templates/almadar-renderers-typescript/src/lib/drawable/paintDispatch.ts +118 -0
  918. package/templates/almadar-renderers-typescript/src/lib/drawable/projector.ts +78 -0
  919. package/templates/almadar-renderers-typescript/src/lib/drawable/projector3d.ts +31 -0
  920. package/templates/almadar-renderers-typescript/src/lib/drawable/registry.ts +18 -0
  921. package/templates/almadar-renderers-typescript/src/lib/drawable/themeDrawables.ts +134 -0
  922. package/templates/almadar-renderers-typescript/src/lib/drawable/three/BoneRegistry.tsx +43 -0
  923. package/templates/almadar-renderers-typescript/src/lib/drawable/three/Camera3D.tsx +186 -0
  924. package/templates/almadar-renderers-typescript/src/lib/drawable/three/Canvas3DErrorBoundary.css +166 -0
  925. package/templates/almadar-renderers-typescript/src/lib/drawable/three/Canvas3DErrorBoundary.tsx +161 -0
  926. package/templates/almadar-renderers-typescript/src/lib/drawable/three/Canvas3DHost.css +225 -0
  927. package/templates/almadar-renderers-typescript/src/lib/drawable/three/Canvas3DHost.tsx +953 -0
  928. package/templates/almadar-renderers-typescript/src/lib/drawable/three/Canvas3DLoadingState.css +168 -0
  929. package/templates/almadar-renderers-typescript/src/lib/drawable/three/Canvas3DLoadingState.tsx +102 -0
  930. package/templates/almadar-renderers-typescript/src/lib/drawable/three/DrawMesh3D.tsx +401 -0
  931. package/templates/almadar-renderers-typescript/src/lib/drawable/three/Drawable3D.tsx +196 -0
  932. package/templates/almadar-renderers-typescript/src/lib/drawable/three/Effects3D.tsx +49 -0
  933. package/templates/almadar-renderers-typescript/src/lib/drawable/three/GameCamera3D.tsx +61 -0
  934. package/templates/almadar-renderers-typescript/src/lib/drawable/three/Lighting3D.tsx +142 -0
  935. package/templates/almadar-renderers-typescript/src/lib/drawable/three/ModelLoader.tsx +348 -0
  936. package/templates/almadar-renderers-typescript/src/lib/drawable/three/Scene3D.tsx +74 -0
  937. package/templates/almadar-renderers-typescript/src/lib/drawable/three/hooks/useAssetLoader.ts +264 -0
  938. package/templates/almadar-renderers-typescript/src/lib/drawable/three/hooks/useGameCanvas3DEvents.ts +252 -0
  939. package/templates/almadar-renderers-typescript/src/lib/drawable/three/hooks/useRaycaster.ts +269 -0
  940. package/templates/almadar-renderers-typescript/src/lib/drawable/three/hooks/useSceneGraph.ts +172 -0
  941. package/templates/almadar-renderers-typescript/src/lib/drawable/three/hooks/useThree.ts +325 -0
  942. package/templates/almadar-renderers-typescript/src/lib/drawable/three/index.ts +136 -0
  943. package/templates/almadar-renderers-typescript/src/lib/drawable/three/lib/AssetLoader.ts +273 -0
  944. package/templates/almadar-renderers-typescript/src/lib/drawable/three/lib/culling.ts +346 -0
  945. package/templates/almadar-renderers-typescript/src/lib/drawable/three/lib/grid3D.ts +286 -0
  946. package/templates/almadar-renderers-typescript/src/lib/drawable/three/mesh3d.tsx +358 -0
  947. package/templates/almadar-renderers-typescript/src/lib/editorMotions.ts +544 -0
  948. package/templates/almadar-renderers-typescript/src/lib/editorUtils.tsx +335 -0
  949. package/templates/almadar-renderers-typescript/src/lib/element-edit-access.ts +50 -0
  950. package/templates/almadar-renderers-typescript/src/lib/embedded-traits.ts +9 -0
  951. package/templates/almadar-renderers-typescript/src/lib/enter.ts +58 -0
  952. package/templates/almadar-renderers-typescript/src/lib/entityDebug.ts +81 -0
  953. package/templates/almadar-renderers-typescript/src/lib/entityRows.ts +16 -0
  954. package/templates/almadar-renderers-typescript/src/lib/fn-form-lambda.ts +390 -0
  955. package/templates/almadar-renderers-typescript/src/lib/game.ts +185 -0
  956. package/templates/almadar-renderers-typescript/src/lib/gameFonts.ts +16 -0
  957. package/templates/almadar-renderers-typescript/src/lib/gameShared.ts +84 -0
  958. package/templates/almadar-renderers-typescript/src/lib/getNestedValue.ts +36 -0
  959. package/templates/almadar-renderers-typescript/src/lib/graphViewLayouts.ts +315 -0
  960. package/templates/almadar-renderers-typescript/src/lib/groupRows.ts +25 -0
  961. package/templates/almadar-renderers-typescript/src/lib/guardRegistry.ts +81 -0
  962. package/templates/almadar-renderers-typescript/src/lib/host-actions.ts +117 -0
  963. package/templates/almadar-renderers-typescript/src/lib/hostDispatchInView.ts +18 -0
  964. package/templates/almadar-renderers-typescript/src/lib/iconNativeMap.json +1182 -0
  965. package/templates/almadar-renderers-typescript/src/lib/iconNativeMap.ts +58 -0
  966. package/templates/almadar-renderers-typescript/src/lib/imageCache.ts +93 -0
  967. package/templates/almadar-renderers-typescript/src/lib/inAppLinks.tsx +81 -0
  968. package/templates/almadar-renderers-typescript/src/lib/index.ts +74 -0
  969. package/templates/almadar-renderers-typescript/src/lib/init.ts +80 -0
  970. package/templates/almadar-renderers-typescript/src/lib/isometric.ts +254 -0
  971. package/templates/almadar-renderers-typescript/src/lib/isometricTypes.ts +157 -0
  972. package/templates/almadar-renderers-typescript/src/lib/item-move.ts +141 -0
  973. package/templates/almadar-renderers-typescript/src/lib/jazari/index.ts +18 -0
  974. package/templates/almadar-renderers-typescript/src/lib/jazari/layout.ts +297 -0
  975. package/templates/almadar-renderers-typescript/src/lib/jazari/svg-paths.ts +200 -0
  976. package/templates/almadar-renderers-typescript/src/lib/jazari/types.ts +97 -0
  977. package/templates/almadar-renderers-typescript/src/lib/kernel-client-lazy.ts +46 -0
  978. package/templates/almadar-renderers-typescript/src/lib/kernel-client.ts +721 -0
  979. package/templates/almadar-renderers-typescript/src/lib/kernel-frames.ts +2 -0
  980. package/templates/almadar-renderers-typescript/src/lib/kernel-schema.ts +12 -0
  981. package/templates/almadar-renderers-typescript/src/lib/kernel-wire.ts +89 -0
  982. package/templates/almadar-renderers-typescript/src/lib/keyMapEvent.ts +29 -0
  983. package/templates/almadar-renderers-typescript/src/lib/lessonSegmentUtils.ts +47 -0
  984. package/templates/almadar-renderers-typescript/src/lib/lineDiff.ts +108 -0
  985. package/templates/almadar-renderers-typescript/src/lib/makeAsset.ts +39 -0
  986. package/templates/almadar-renderers-typescript/src/lib/mechanics.ts +55 -0
  987. package/templates/almadar-renderers-typescript/src/lib/mermaidTheme.ts +103 -0
  988. package/templates/almadar-renderers-typescript/src/lib/orbitalsByTrait.ts +10 -0
  989. package/templates/almadar-renderers-typescript/src/lib/painter2d.ts +138 -0
  990. package/templates/almadar-renderers-typescript/src/lib/parseContentSegments.ts +127 -0
  991. package/templates/almadar-renderers-typescript/src/lib/parseLessonSegments.ts +135 -0
  992. package/templates/almadar-renderers-typescript/src/lib/pattern-resolver.ts +212 -0
  993. package/templates/almadar-renderers-typescript/src/lib/perf.ts +59 -0
  994. package/templates/almadar-renderers-typescript/src/lib/physicsPresets.ts +11 -0
  995. package/templates/almadar-renderers-typescript/src/lib/physicsTypes.ts +39 -0
  996. package/templates/almadar-renderers-typescript/src/lib/portalRoot.ts +19 -0
  997. package/templates/almadar-renderers-typescript/src/lib/propTypeMismatch.ts +77 -0
  998. package/templates/almadar-renderers-typescript/src/lib/puzzleObject.ts +72 -0
  999. package/templates/almadar-renderers-typescript/src/lib/reconcile-slot-content.ts +150 -0
  1000. package/templates/almadar-renderers-typescript/src/lib/relationLabel.ts +69 -0
  1001. package/templates/almadar-renderers-typescript/src/lib/resolve-direct-children.ts +45 -0
  1002. package/templates/almadar-renderers-typescript/src/lib/resolve-pattern-config.ts +150 -0
  1003. package/templates/almadar-renderers-typescript/src/lib/resolve-render-bindings.ts +312 -0
  1004. package/templates/almadar-renderers-typescript/src/lib/row-action-when.ts +203 -0
  1005. package/templates/almadar-renderers-typescript/src/lib/row-set-resolver.ts +104 -0
  1006. package/templates/almadar-renderers-typescript/src/lib/rows-changed.ts +36 -0
  1007. package/templates/almadar-renderers-typescript/src/lib/selection-geometry.ts +320 -0
  1008. package/templates/almadar-renderers-typescript/src/lib/skinning.ts +154 -0
  1009. package/templates/almadar-renderers-typescript/src/lib/slot-definitions.ts +156 -0
  1010. package/templates/almadar-renderers-typescript/src/lib/slotContained.ts +12 -0
  1011. package/templates/almadar-renderers-typescript/src/lib/spriteAnimation.ts +261 -0
  1012. package/templates/almadar-renderers-typescript/src/lib/spriteAnimationTypes.ts +88 -0
  1013. package/templates/almadar-renderers-typescript/src/lib/spriteSheetConstants.ts +27 -0
  1014. package/templates/almadar-renderers-typescript/src/lib/store-row-set-resolver.ts +30 -0
  1015. package/templates/almadar-renderers-typescript/src/lib/theme-color.ts +132 -0
  1016. package/templates/almadar-renderers-typescript/src/lib/themeTokens.ts +507 -0
  1017. package/templates/almadar-renderers-typescript/src/lib/tickRegistry.ts +86 -0
  1018. package/templates/almadar-renderers-typescript/src/lib/trait-binding-resolver.ts +119 -0
  1019. package/templates/almadar-renderers-typescript/src/lib/traitRegistry.ts +84 -0
  1020. package/templates/almadar-renderers-typescript/src/lib/verificationRegistry.ts +738 -0
  1021. package/templates/almadar-renderers-typescript/src/lib/webPainter2d.ts +234 -0
  1022. package/templates/almadar-renderers-typescript/src/lib/wire-validation.ts +79 -0
  1023. package/templates/almadar-renderers-typescript/src/lib/wrapCallbackForEvent.ts +7 -0
  1024. package/templates/almadar-renderers-typescript/src/preview/OrbPreview.tsx +1048 -0
  1025. package/templates/almadar-renderers-typescript/src/preview/__tests__/OrbPreview.arbitrary-classes.test.tsx +45 -0
  1026. package/templates/almadar-renderers-typescript/src/preview/__tests__/OrbPreview.browser-stored-entity.test.tsx +99 -0
  1027. package/templates/almadar-renderers-typescript/src/preview/__tests__/OrbPreview.embedded-scope.test.tsx +48 -0
  1028. package/templates/almadar-renderers-typescript/src/preview/__tests__/OrbPreview.fit-content.test.tsx +46 -0
  1029. package/templates/almadar-renderers-typescript/src/preview/__tests__/OrbPreview.host-runs-program.test.tsx +186 -0
  1030. package/templates/almadar-renderers-typescript/src/preview/__tests__/OrbPreview.kernel-loader.test.tsx +160 -0
  1031. package/templates/almadar-renderers-typescript/src/preview/__tests__/OrbPreview.mount-error.test.tsx +61 -0
  1032. package/templates/almadar-renderers-typescript/src/preview/__tests__/OrbPreview.navigates-to.test.tsx +77 -0
  1033. package/templates/almadar-renderers-typescript/src/preview/__tests__/OrbPreview.notify-toast.test.tsx +61 -0
  1034. package/templates/almadar-renderers-typescript/src/preview/__tests__/OrbPreview.page-access.test.tsx +128 -0
  1035. package/templates/almadar-renderers-typescript/src/preview/__tests__/OrbPreview.page-alternates.test.tsx +67 -0
  1036. package/templates/almadar-renderers-typescript/src/preview/__tests__/OrbPreview.page-circuit.test.tsx +66 -0
  1037. package/templates/almadar-renderers-typescript/src/preview/__tests__/OrbPreview.page-frame.test.tsx +65 -0
  1038. package/templates/almadar-renderers-typescript/src/preview/__tests__/OrbPreview.paused-ticks.test.tsx +59 -0
  1039. package/templates/almadar-renderers-typescript/src/preview/__tests__/OrbPreview.preview-theme.test.ts +32 -0
  1040. package/templates/almadar-renderers-typescript/src/preview/__tests__/OrbPreview.prop-type-error.test.tsx +49 -0
  1041. package/templates/almadar-renderers-typescript/src/preview/__tests__/OrbPreview.sign-out.test.tsx +69 -0
  1042. package/templates/almadar-renderers-typescript/src/preview/__tests__/OrbPreview.stateless-cross-orbital-fanout.test.tsx +127 -0
  1043. package/templates/almadar-renderers-typescript/src/preview/__tests__/OrbPreview.tick-browser-store.test.tsx +110 -0
  1044. package/templates/almadar-renderers-typescript/src/preview/__tests__/OrbPreview.tick-visible.test.tsx +95 -0
  1045. package/templates/almadar-renderers-typescript/src/preview/__tests__/OrbPreview.topology-before-dispatch.test.tsx +77 -0
  1046. package/templates/almadar-renderers-typescript/src/preview/__tests__/fitContent.test.ts +58 -0
  1047. package/templates/almadar-renderers-typescript/src/preview/__tests__/fixtures/std-calendar.website-catalog.json +2438 -0
  1048. package/templates/almadar-renderers-typescript/src/preview/fitContent.ts +65 -0
  1049. package/templates/almadar-renderers-typescript/src/preview/index.ts +58 -0
  1050. package/templates/almadar-renderers-typescript/src/providers/ArbitraryClassCompiler.tsx +76 -0
  1051. package/templates/almadar-renderers-typescript/src/providers/AwaitingSkeletonContext.tsx +37 -0
  1052. package/templates/almadar-renderers-typescript/src/providers/CurrentPagePathContext.tsx +25 -0
  1053. package/templates/almadar-renderers-typescript/src/providers/DesignThemeContext.tsx +36 -0
  1054. package/templates/almadar-renderers-typescript/src/providers/EditorFocusContext.tsx +38 -0
  1055. package/templates/almadar-renderers-typescript/src/providers/EntityBindingContext.tsx +70 -0
  1056. package/templates/almadar-renderers-typescript/src/providers/EntitySchemaContext.tsx +51 -0
  1057. package/templates/almadar-renderers-typescript/src/providers/GameAudioProvider.tsx +111 -0
  1058. package/templates/almadar-renderers-typescript/src/providers/KernelEngineContext.tsx +65 -0
  1059. package/templates/almadar-renderers-typescript/src/providers/OrbitalProvider.tsx +188 -0
  1060. package/templates/almadar-renderers-typescript/src/providers/OrbitalThemeProvider.tsx +119 -0
  1061. package/templates/almadar-renderers-typescript/src/providers/PageAccessHost.tsx +55 -0
  1062. package/templates/almadar-renderers-typescript/src/providers/RenderSlotContext.tsx +34 -0
  1063. package/templates/almadar-renderers-typescript/src/providers/RowSetResolverContext.tsx +32 -0
  1064. package/templates/almadar-renderers-typescript/src/providers/SelectionProvider.tsx +239 -0
  1065. package/templates/almadar-renderers-typescript/src/providers/ServerBridge.tsx +188 -0
  1066. package/templates/almadar-renderers-typescript/src/providers/UISlotContext.tsx +148 -0
  1067. package/templates/almadar-renderers-typescript/src/providers/UserContext.tsx +238 -0
  1068. package/templates/almadar-renderers-typescript/src/providers/VerificationProvider.tsx +330 -0
  1069. package/templates/almadar-renderers-typescript/src/providers/__tests__/ArbitraryClassCompiler.test.tsx +109 -0
  1070. package/templates/almadar-renderers-typescript/src/providers/__tests__/NavStackContext.navItems.test.tsx +50 -0
  1071. package/templates/almadar-renderers-typescript/src/providers/__tests__/OrbitalThemeProvider.override.test.tsx +97 -0
  1072. package/templates/almadar-renderers-typescript/src/providers/__tests__/OrbitalThemeProvider.test.tsx +67 -0
  1073. package/templates/almadar-renderers-typescript/src/providers/__tests__/PageAccessHost.test.tsx +103 -0
  1074. package/templates/almadar-renderers-typescript/src/providers/__tests__/SystemNavigate.test.tsx +73 -0
  1075. package/templates/almadar-renderers-typescript/src/providers/__tests__/ThemedPortal.test.tsx +87 -0
  1076. package/templates/almadar-renderers-typescript/src/providers/__tests__/TraitScopeProvider.presence.test.tsx +47 -0
  1077. package/templates/almadar-renderers-typescript/src/providers/__tests__/VerificationProvider.mapServerEffectResults.test.ts +60 -0
  1078. package/templates/almadar-renderers-typescript/src/providers/__tests__/avl-3d-context.test.tsx +38 -0
  1079. package/templates/almadar-renderers-typescript/src/providers/__tests__/barrel-completeness.test.ts +36 -0
  1080. package/templates/almadar-renderers-typescript/src/providers/avl-3d-context.ts +68 -0
  1081. package/templates/almadar-renderers-typescript/src/providers/index.ts +134 -0
  1082. package/templates/almadar-renderers-typescript/src/renderer/index.ts +122 -0
  1083. package/templates/almadar-renderers-typescript/src/runtime/evaluation/browser-store-transport.ts +250 -0
  1084. package/templates/almadar-renderers-typescript/src/runtime/evaluation/local-store-transport.ts +8 -0
  1085. package/templates/almadar-renderers-typescript/src/runtime/evaluation/native-memory.ts +13 -0
  1086. package/templates/almadar-renderers-typescript/src/runtime/evaluation/persisted-memory.ts +76 -0
  1087. package/templates/almadar-renderers-typescript/src/runtime/index.ts +27 -0
  1088. package/templates/almadar-renderers-typescript/src/runtime/ui/contract-errors.ts +28 -0
  1089. package/templates/almadar-renderers-typescript/src/runtime/ui/embedded-traits.ts +110 -0
  1090. package/templates/almadar-renderers-typescript/src/runtime/ui/index.ts +72 -0
  1091. package/templates/almadar-renderers-typescript/src/runtime/ui/orbitalsByTrait.ts +83 -0
  1092. package/templates/almadar-renderers-typescript/src/runtime/ui/perf.ts +222 -0
  1093. package/templates/almadar-renderers-typescript/src/runtime/ui/slots.ts +266 -0
  1094. package/templates/almadar-renderers-typescript/src/runtime/ui/verification.ts +169 -0
  1095. package/templates/almadar-renderers-typescript/src/runtime/ui/wrapCallbackForEvent.ts +33 -0
  1096. package/templates/almadar-renderers-typescript/src/ssr/index.ts +49 -0
  1097. package/templates/almadar-renderers-typescript/src/storage/browser/index.ts +1 -0
  1098. package/templates/almadar-renderers-typescript/src/test-support/circuit.ts +14 -0
  1099. package/templates/almadar-renderers-typescript/src/test-support/index.ts +4 -0
  1100. package/templates/almadar-renderers-typescript/src/test-support/kernel-engine.ts +86 -0
  1101. package/templates/almadar-renderers-typescript/src/test-support/lolo-program.ts +68 -0
  1102. package/templates/almadar-renderers-typescript/src/test-support/stateless-kernel.ts +22 -0
  1103. package/templates/almadar-renderers-typescript/src/test-support/stub-kernel-module.ts +47 -0
  1104. package/templates/almadar-renderers-typescript/src/types/assets.d.ts +19 -0
  1105. package/templates/almadar-renderers-typescript/src/types/emojilib.d.ts +16 -0
  1106. package/templates/almadar-renderers-typescript/src/types/index.ts +11 -0
  1107. package/templates/almadar-renderers-typescript/src/types/jsx-global.d.ts +14 -0
  1108. package/templates/almadar-renderers-typescript/src/types/react-syntax-highlighter.d.ts +204 -0
  1109. package/templates/almadar-renderers-typescript/src/types/renderer-types.ts +178 -0
  1110. package/templates/almadar-renderers-typescript/src/types/slot-host.ts +62 -0
  1111. package/templates/almadar-renderers-typescript/src/types/slot-types.ts +67 -0
  1112. package/templates/almadar-renderers-typescript/src/types/testing.d.ts +9 -0
  1113. package/templates/almadar-renderers-typescript/src/types/vite-env.d.ts +12 -0
  1114. package/templates/almadar-renderers-typescript/tailwind-compile.cjs +29 -0
  1115. package/templates/almadar-renderers-typescript/tailwind-preset.cjs +1020 -0
  1116. package/templates/almadar-renderers-typescript/tailwind.config.js +27 -0
  1117. package/templates/almadar-renderers-typescript/test/bundled-browser-store.test.ts +21 -0
  1118. package/templates/almadar-renderers-typescript/test/channel-transport.test.ts +163 -0
  1119. package/templates/almadar-renderers-typescript/test/circuit-store.test.ts +120 -0
  1120. package/templates/almadar-renderers-typescript/test/declared-input-dispatch.test.ts +65 -0
  1121. package/templates/almadar-renderers-typescript/test/ensure-use-client.test.ts +46 -0
  1122. package/templates/almadar-renderers-typescript/test/event-transport.resolve-rows.test.ts +29 -0
  1123. package/templates/almadar-renderers-typescript/test/event-transport.test.ts +455 -0
  1124. package/templates/almadar-renderers-typescript/test/fixtures/credentials-source.json +82 -0
  1125. package/templates/almadar-renderers-typescript/test/fixtures/kv-trace.json +47 -0
  1126. package/templates/almadar-renderers-typescript/test/fixtures/programs/canvas-guarded.lolo +26 -0
  1127. package/templates/almadar-renderers-typescript/test/fixtures/programs/canvas-guarded.orb.json +546 -0
  1128. package/templates/almadar-renderers-typescript/test/fixtures/programs/canvas-opening.lolo +41 -0
  1129. package/templates/almadar-renderers-typescript/test/fixtures/programs/canvas-opening.orb.json +703 -0
  1130. package/templates/almadar-renderers-typescript/test/fixtures/programs/canvas-view.lolo +71 -0
  1131. package/templates/almadar-renderers-typescript/test/fixtures/programs/canvas-view.orb.json +1019 -0
  1132. package/templates/almadar-renderers-typescript/test/fixtures/programs/event-wires.lolo +33 -0
  1133. package/templates/almadar-renderers-typescript/test/fixtures/programs/event-wires.orb.json +684 -0
  1134. package/templates/almadar-renderers-typescript/test/fixtures/programs/stat-card.lolo +23 -0
  1135. package/templates/almadar-renderers-typescript/test/fixtures/programs/wire-emitter.lolo +24 -0
  1136. package/templates/almadar-renderers-typescript/test/frame-applier.test.ts +148 -0
  1137. package/templates/almadar-renderers-typescript/test/helpers/persistence.ts +70 -0
  1138. package/templates/almadar-renderers-typescript/test/http-transport-behavior.test.ts +48 -0
  1139. package/templates/almadar-renderers-typescript/test/http-transport-compression.test.ts +76 -0
  1140. package/templates/almadar-renderers-typescript/test/in-flight-calls.test.ts +43 -0
  1141. package/templates/almadar-renderers-typescript/test/kernel-client-reseed.test.ts +235 -0
  1142. package/templates/almadar-renderers-typescript/test/kernel-decode-progress.test.ts +76 -0
  1143. package/templates/almadar-renderers-typescript/test/kernel-decode-request.test.ts +81 -0
  1144. package/templates/almadar-renderers-typescript/test/kernel-engine-resolve-rows.test.ts +179 -0
  1145. package/templates/almadar-renderers-typescript/test/kernel-host-substrate.test.ts +164 -0
  1146. package/templates/almadar-renderers-typescript/test/kernel-host-tabs.test.ts +166 -0
  1147. package/templates/almadar-renderers-typescript/test/kernel-host-write-declined.test.ts +21 -0
  1148. package/templates/almadar-renderers-typescript/test/kernel-native-host-parity.test.ts +74 -0
  1149. package/templates/almadar-renderers-typescript/test/lazy-page-loader.test.ts +62 -0
  1150. package/templates/almadar-renderers-typescript/test/local-fold.test.ts +110 -0
  1151. package/templates/almadar-renderers-typescript/test/nav-items-label.test.ts +41 -0
  1152. package/templates/almadar-renderers-typescript/test/page-facts-runtime-boundary.test.ts +40 -0
  1153. package/templates/almadar-renderers-typescript/test/relation-label.test.ts +32 -0
  1154. package/templates/almadar-renderers-typescript/test/runtime/persisted-memory.test.ts +65 -0
  1155. package/templates/almadar-renderers-typescript/test/runtime/routed-persistence.test.ts +61 -0
  1156. package/templates/almadar-renderers-typescript/test/runtime/ui/contract.test.ts +91 -0
  1157. package/templates/almadar-renderers-typescript/test/runtime/ui/orbitalsByTrait.test.ts +50 -0
  1158. package/templates/almadar-renderers-typescript/test/runtime/ui/slots.test.ts +30 -0
  1159. package/templates/almadar-renderers-typescript/test/runtime/ui/wrapCallbackForEvent.test.ts +29 -0
  1160. package/templates/almadar-renderers-typescript/test/runtime-emit-stamp-parity.test.ts +60 -0
  1161. package/templates/almadar-renderers-typescript/test/tab-client-id.test.ts +24 -0
  1162. package/templates/almadar-renderers-typescript/test/tick-driver.test.ts +126 -0
  1163. package/templates/almadar-renderers-typescript/test/ui/CodeBlock.editable.test.tsx +178 -0
  1164. package/templates/almadar-renderers-typescript/test/ui/CodeBlock.modal-keys.test.tsx +90 -0
  1165. package/templates/almadar-renderers-typescript/test/ui/CodeBlock.scoped-mode.test.tsx +54 -0
  1166. package/templates/almadar-renderers-typescript/test/ui/a11y-optin-A1.test.tsx +83 -0
  1167. package/templates/almadar-renderers-typescript/test/ui/a11y-optin-A2.test.tsx +90 -0
  1168. package/templates/almadar-renderers-typescript/test/ui/a11y-optin-B.test.tsx +57 -0
  1169. package/templates/almadar-renderers-typescript/test/ui/a11y-optin-C.test.tsx +80 -0
  1170. package/templates/almadar-renderers-typescript/test/ui/accent-text-contrast.test.tsx +60 -0
  1171. package/templates/almadar-renderers-typescript/test/ui/agent-chat-feed.test.tsx +85 -0
  1172. package/templates/almadar-renderers-typescript/test/ui/arbitrary-classes.test.ts +95 -0
  1173. package/templates/almadar-renderers-typescript/test/ui/avl-prop-decoders.test.ts +48 -0
  1174. package/templates/almadar-renderers-typescript/test/ui/awaiting-skeleton-slot.test.tsx +190 -0
  1175. package/templates/almadar-renderers-typescript/test/ui/axe-helper.test.tsx +19 -0
  1176. package/templates/almadar-renderers-typescript/test/ui/axe.ts +19 -0
  1177. package/templates/almadar-renderers-typescript/test/ui/bus-ingress-embedded-route.test.tsx +105 -0
  1178. package/templates/almadar-renderers-typescript/test/ui/bus-ingress-settle.test.ts +163 -0
  1179. package/templates/almadar-renderers-typescript/test/ui/button-focused-disabled.test.tsx +67 -0
  1180. package/templates/almadar-renderers-typescript/test/ui/calendar-grid-slot-coverage.test.ts +170 -0
  1181. package/templates/almadar-renderers-typescript/test/ui/callsite-capture-keeps-state.test.ts +116 -0
  1182. package/templates/almadar-renderers-typescript/test/ui/callsite-capture-server-frame-wins.test.ts +130 -0
  1183. package/templates/almadar-renderers-typescript/test/ui/callsite-capture-walk-through.test.ts +85 -0
  1184. package/templates/almadar-renderers-typescript/test/ui/callsite-child-deferred-mount.test.ts +130 -0
  1185. package/templates/almadar-renderers-typescript/test/ui/camera-zoom-clamp.test.ts +43 -0
  1186. package/templates/almadar-renderers-typescript/test/ui/carousel-feed.test.tsx +207 -0
  1187. package/templates/almadar-renderers-typescript/test/ui/chat-bar-autogrow.test.tsx +40 -0
  1188. package/templates/almadar-renderers-typescript/test/ui/circuit-kernel-fanout.test.ts +99 -0
  1189. package/templates/almadar-renderers-typescript/test/ui/circuit-kernel-forwards-hooks.test.ts +86 -0
  1190. package/templates/almadar-renderers-typescript/test/ui/circuit-kernel-local-leg-messages.test.tsx +81 -0
  1191. package/templates/almadar-renderers-typescript/test/ui/circuit-kernel-records-server-response.test.ts +68 -0
  1192. package/templates/almadar-renderers-typescript/test/ui/circuit-kernel-unmount.test.ts +143 -0
  1193. package/templates/almadar-renderers-typescript/test/ui/command-send-pump.test.ts +96 -0
  1194. package/templates/almadar-renderers-typescript/test/ui/component-contrast-page-ground.test.ts +41 -0
  1195. package/templates/almadar-renderers-typescript/test/ui/components-barrel-exports-patterns.test.ts +20 -0
  1196. package/templates/almadar-renderers-typescript/test/ui/compute-insertion-index.test.ts +77 -0
  1197. package/templates/almadar-renderers-typescript/test/ui/content-surface-contract.test.ts +65 -0
  1198. package/templates/almadar-renderers-typescript/test/ui/content-surface.test.tsx +79 -0
  1199. package/templates/almadar-renderers-typescript/test/ui/dashboard-cross-trait.test.ts +162 -0
  1200. package/templates/almadar-renderers-typescript/test/ui/data-grid-list-render-item-prop.test.tsx +54 -0
  1201. package/templates/almadar-renderers-typescript/test/ui/default-names.test.tsx +48 -0
  1202. package/templates/almadar-renderers-typescript/test/ui/derive-edit-focus.test.ts +92 -0
  1203. package/templates/almadar-renderers-typescript/test/ui/design-classes.test.ts +322 -0
  1204. package/templates/almadar-renderers-typescript/test/ui/dialogue-bubble-slot.test.tsx +180 -0
  1205. package/templates/almadar-renderers-typescript/test/ui/dnd-collision-innermost.test.ts +53 -0
  1206. package/templates/almadar-renderers-typescript/test/ui/dock-slot.test.tsx +164 -0
  1207. package/templates/almadar-renderers-typescript/test/ui/drawing-surfaces.literal-ban.test.ts +93 -0
  1208. package/templates/almadar-renderers-typescript/test/ui/editorMotions.test.ts +657 -0
  1209. package/templates/almadar-renderers-typescript/test/ui/element-enter.test.tsx +95 -0
  1210. package/templates/almadar-renderers-typescript/test/ui/embedded-emit-bubble.test.ts +140 -0
  1211. package/templates/almadar-renderers-typescript/test/ui/embedded-trait-null-clears.test.ts +49 -0
  1212. package/templates/almadar-renderers-typescript/test/ui/entity-binding-source-snapshot.test.ts +89 -0
  1213. package/templates/almadar-renderers-typescript/test/ui/event-bus-cross-chunk.test.ts +95 -0
  1214. package/templates/almadar-renderers-typescript/test/ui/fn-form-lambda-marker.test.ts +84 -0
  1215. package/templates/almadar-renderers-typescript/test/ui/fn-form-lambda-row-data.test.ts +35 -0
  1216. package/templates/almadar-renderers-typescript/test/ui/form-conditions.test.tsx +116 -0
  1217. package/templates/almadar-renderers-typescript/test/ui/game-keyboard-routing.test.ts +146 -0
  1218. package/templates/almadar-renderers-typescript/test/ui/graphViewLayouts.test.ts +165 -0
  1219. package/templates/almadar-renderers-typescript/test/ui/hardcoded-text.test.ts +67 -0
  1220. package/templates/almadar-renderers-typescript/test/ui/header-logo.test.tsx +36 -0
  1221. package/templates/almadar-renderers-typescript/test/ui/heading-voice-discipline.test.ts +80 -0
  1222. package/templates/almadar-renderers-typescript/test/ui/helpers/composed-program.ts +8 -0
  1223. package/templates/almadar-renderers-typescript/test/ui/helpers/kernel-engine-default.setup.ts +10 -0
  1224. package/templates/almadar-renderers-typescript/test/ui/helpers/kernel-evaluator.setup.ts +14 -0
  1225. package/templates/almadar-renderers-typescript/test/ui/helpers/package-root.ts +29 -0
  1226. package/templates/almadar-renderers-typescript/test/ui/helpers/r3f-frames.tsx +103 -0
  1227. package/templates/almadar-renderers-typescript/test/ui/helpers/traced.ts +17 -0
  1228. package/templates/almadar-renderers-typescript/test/ui/inline-text-markers.test.tsx +38 -0
  1229. package/templates/almadar-renderers-typescript/test/ui/kernel-engine-parity.test.tsx +43 -0
  1230. package/templates/almadar-renderers-typescript/test/ui/kernel-engine.test.tsx +497 -0
  1231. package/templates/almadar-renderers-typescript/test/ui/listen-source-routing.test.ts +202 -0
  1232. package/templates/almadar-renderers-typescript/test/ui/locale-keys.test.ts +65 -0
  1233. package/templates/almadar-renderers-typescript/test/ui/map-view-token.test.ts +31 -0
  1234. package/templates/almadar-renderers-typescript/test/ui/markdown-data-image.test.tsx +41 -0
  1235. package/templates/almadar-renderers-typescript/test/ui/menu-trigger-single-control.test.tsx +70 -0
  1236. package/templates/almadar-renderers-typescript/test/ui/motion-tokens.scoped.test.ts +31 -0
  1237. package/templates/almadar-renderers-typescript/test/ui/mount-lifecycle-once.test.ts +240 -0
  1238. package/templates/almadar-renderers-typescript/test/ui/multi-source-slot-scope.test.ts +88 -0
  1239. package/templates/almadar-renderers-typescript/test/ui/navigation.route-precedence.test.ts +148 -0
  1240. package/templates/almadar-renderers-typescript/test/ui/no-runtime-require.test.ts +35 -0
  1241. package/templates/almadar-renderers-typescript/test/ui/off-page-trait-effects.test.ts +154 -0
  1242. package/templates/almadar-renderers-typescript/test/ui/orbitalsByTrait.test.ts +61 -0
  1243. package/templates/almadar-renderers-typescript/test/ui/package/index-css-react-flow.test.ts +28 -0
  1244. package/templates/almadar-renderers-typescript/test/ui/package/size-containers.test.ts +49 -0
  1245. package/templates/almadar-renderers-typescript/test/ui/pattern-conformance.test.tsx +230 -0
  1246. package/templates/almadar-renderers-typescript/test/ui/pending-action.test.tsx +182 -0
  1247. package/templates/almadar-renderers-typescript/test/ui/pressable-surfaces.test.tsx +69 -0
  1248. package/templates/almadar-renderers-typescript/test/ui/pressable-sweep.test.tsx +152 -0
  1249. package/templates/almadar-renderers-typescript/test/ui/program-stamp.test.ts +22 -0
  1250. package/templates/almadar-renderers-typescript/test/ui/r3f-reduced-motion.test.tsx +245 -0
  1251. package/templates/almadar-renderers-typescript/test/ui/reconcile-slot-content.test.ts +103 -0
  1252. package/templates/almadar-renderers-typescript/test/ui/render-eval-no-kernel.test.tsx +36 -0
  1253. package/templates/almadar-renderers-typescript/test/ui/resolve-direct-children.test.ts +111 -0
  1254. package/templates/almadar-renderers-typescript/test/ui/resolve-render-bindings.config-trait-ref.test.ts +30 -0
  1255. package/templates/almadar-renderers-typescript/test/ui/resolve-render-bindings.render-nodes.test.ts +43 -0
  1256. package/templates/almadar-renderers-typescript/test/ui/resolve-render-bindings.row-set.test.ts +155 -0
  1257. package/templates/almadar-renderers-typescript/test/ui/resolve-render-bindings.test.ts +188 -0
  1258. package/templates/almadar-renderers-typescript/test/ui/row-action-payload.test.ts +51 -0
  1259. package/templates/almadar-renderers-typescript/test/ui/row-action-route.test.ts +54 -0
  1260. package/templates/almadar-renderers-typescript/test/ui/row-action-when-components.test.tsx +188 -0
  1261. package/templates/almadar-renderers-typescript/test/ui/row-action-when.test.ts +180 -0
  1262. package/templates/almadar-renderers-typescript/test/ui/row-set-remote.test.ts +73 -0
  1263. package/templates/almadar-renderers-typescript/test/ui/row-set-wiring.test.ts +108 -0
  1264. package/templates/almadar-renderers-typescript/test/ui/scroll-region-keyboard.test.tsx +40 -0
  1265. package/templates/almadar-renderers-typescript/test/ui/server-bridge-auth.test.tsx +121 -0
  1266. package/templates/almadar-renderers-typescript/test/ui/server-bridge-event-transport.test.tsx +80 -0
  1267. package/templates/almadar-renderers-typescript/test/ui/server-push-paints.test.ts +223 -0
  1268. package/templates/almadar-renderers-typescript/test/ui/sharedEntityStore.test.ts +88 -0
  1269. package/templates/almadar-renderers-typescript/test/ui/slot-flush-embedded-portal.test.ts +85 -0
  1270. package/templates/almadar-renderers-typescript/test/ui/slot-flush-host-ask.test.ts +78 -0
  1271. package/templates/almadar-renderers-typescript/test/ui/slot-flush-identity.test.tsx +87 -0
  1272. package/templates/almadar-renderers-typescript/test/ui/slot-flush-render-provenance.test.ts +83 -0
  1273. package/templates/almadar-renderers-typescript/test/ui/slot-flush-rollback.test.tsx +81 -0
  1274. package/templates/almadar-renderers-typescript/test/ui/slot-flush-rows-changed.test.tsx +42 -0
  1275. package/templates/almadar-renderers-typescript/test/ui/slot-flush-sexpr-props.test.ts +56 -0
  1276. package/templates/almadar-renderers-typescript/test/ui/slot-host-manifest.test.ts +54 -0
  1277. package/templates/almadar-renderers-typescript/test/ui/slot-motion.test.tsx +188 -0
  1278. package/templates/almadar-renderers-typescript/test/ui/slot-no-field-enrichment.test.tsx +52 -0
  1279. package/templates/almadar-renderers-typescript/test/ui/slot-vocabulary-coverage.test.ts +57 -0
  1280. package/templates/almadar-renderers-typescript/test/ui/sortRows.test.ts +65 -0
  1281. package/templates/almadar-renderers-typescript/test/ui/sprite-hit-test.test.ts +64 -0
  1282. package/templates/almadar-renderers-typescript/test/ui/svg-motion-classes.test.ts +63 -0
  1283. package/templates/almadar-renderers-typescript/test/ui/table-sort-a11y.test.tsx +42 -0
  1284. package/templates/almadar-renderers-typescript/test/ui/tailwind-compile.test.ts +45 -0
  1285. package/templates/almadar-renderers-typescript/test/ui/tailwind-preset-band-children.test.ts +37 -0
  1286. package/templates/almadar-renderers-typescript/test/ui/tailwind-preset-design-classes.test.ts +17 -0
  1287. package/templates/almadar-renderers-typescript/test/ui/tailwind-preset-interactive-border.test.ts +32 -0
  1288. package/templates/almadar-renderers-typescript/test/ui/tailwind-preset-marquee-rtl.test.ts +40 -0
  1289. package/templates/almadar-renderers-typescript/test/ui/tailwind-preset-split.test.tsx +55 -0
  1290. package/templates/almadar-renderers-typescript/test/ui/tests-never-climb-to-siblings.test.ts +34 -0
  1291. package/templates/almadar-renderers-typescript/test/ui/theme-head.test.ts +33 -0
  1292. package/templates/almadar-renderers-typescript/test/ui/theme-root-color-alias.test.ts +31 -0
  1293. package/templates/almadar-renderers-typescript/test/ui/theme-scope-mode.test.tsx +82 -0
  1294. package/templates/almadar-renderers-typescript/test/ui/themeTokens.band-axes.test.ts +38 -0
  1295. package/templates/almadar-renderers-typescript/test/ui/themeTokens.diagram-axes.test.ts +114 -0
  1296. package/templates/almadar-renderers-typescript/test/ui/themeTokens.illustration-axis.test.ts +34 -0
  1297. package/templates/almadar-renderers-typescript/test/ui/themeTokens.range-axes.test.ts +133 -0
  1298. package/templates/almadar-renderers-typescript/test/ui/themeTokens.skin-axes.test.ts +302 -0
  1299. package/templates/almadar-renderers-typescript/test/ui/themeTokens.test.ts +116 -0
  1300. package/templates/almadar-renderers-typescript/test/ui/trait-binding-slot-cleanup.test.ts +225 -0
  1301. package/templates/almadar-renderers-typescript/test/ui/ui-slot-component-fallback.test.tsx +171 -0
  1302. package/templates/almadar-renderers-typescript/test/ui/ui-slots-trait-frame-portal.test.ts +55 -0
  1303. package/templates/almadar-renderers-typescript/test/ui/useEditorCapabilities.test.tsx +401 -0
  1304. package/templates/almadar-renderers-typescript/test/ui/useKeyboardRouter.test.tsx +228 -0
  1305. package/templates/almadar-renderers-typescript/test/ui/web-parity-defects.test.tsx +75 -0
  1306. package/templates/almadar-renderers-typescript/themes/_base.css +451 -0
  1307. package/templates/almadar-renderers-typescript/themes/_contract.md +307 -0
  1308. package/templates/almadar-renderers-typescript/themes/_fonts-kenney.css +11 -0
  1309. package/templates/almadar-renderers-typescript/themes/_fonts.css +12 -0
  1310. package/templates/almadar-renderers-typescript/themes/_foundation.css +105 -0
  1311. package/templates/almadar-renderers-typescript/themes/_head.css +22 -0
  1312. package/templates/almadar-renderers-typescript/themes/_presets.css +67 -0
  1313. package/templates/almadar-renderers-typescript/themes/almadar-heritage.css +455 -0
  1314. package/templates/almadar-renderers-typescript/themes/almadar-website.css +269 -0
  1315. package/templates/almadar-renderers-typescript/themes/almadar.css +269 -0
  1316. package/templates/almadar-renderers-typescript/themes/aqua.css +455 -0
  1317. package/templates/almadar-renderers-typescript/themes/arabesque.css +459 -0
  1318. package/templates/almadar-renderers-typescript/themes/art-deco.css +457 -0
  1319. package/templates/almadar-renderers-typescript/themes/art-nouveau.css +459 -0
  1320. package/templates/almadar-renderers-typescript/themes/atelier.css +463 -0
  1321. package/templates/almadar-renderers-typescript/themes/bauhaus.css +461 -0
  1322. package/templates/almadar-renderers-typescript/themes/bloomberg-dense.css +463 -0
  1323. package/templates/almadar-renderers-typescript/themes/blueprint.css +457 -0
  1324. package/templates/almadar-renderers-typescript/themes/clay.css +449 -0
  1325. package/templates/almadar-renderers-typescript/themes/comic.css +453 -0
  1326. package/templates/almadar-renderers-typescript/themes/constructivist.css +457 -0
  1327. package/templates/almadar-renderers-typescript/themes/corporate.css +449 -0
  1328. package/templates/almadar-renderers-typescript/themes/cyberpunk.css +453 -0
  1329. package/templates/almadar-renderers-typescript/themes/frutiger-aero.css +458 -0
  1330. package/templates/almadar-renderers-typescript/themes/game-adventure.css +201 -0
  1331. package/templates/almadar-renderers-typescript/themes/game-rpg.css +203 -0
  1332. package/templates/almadar-renderers-typescript/themes/game-sci-fi.css +201 -0
  1333. package/templates/almadar-renderers-typescript/themes/game-ui-pack.css +200 -0
  1334. package/templates/almadar-renderers-typescript/themes/gazette.css +449 -0
  1335. package/templates/almadar-renderers-typescript/themes/glass.css +457 -0
  1336. package/templates/almadar-renderers-typescript/themes/gothic.css +453 -0
  1337. package/templates/almadar-renderers-typescript/themes/index.css +21 -0
  1338. package/templates/almadar-renderers-typescript/themes/ink-wash.css +459 -0
  1339. package/templates/almadar-renderers-typescript/themes/kawaii.css +459 -0
  1340. package/templates/almadar-renderers-typescript/themes/kflow.css +310 -0
  1341. package/templates/almadar-renderers-typescript/themes/kiosk.css +449 -0
  1342. package/templates/almadar-renderers-typescript/themes/linear-clean.css +463 -0
  1343. package/templates/almadar-renderers-typescript/themes/luxury.css +451 -0
  1344. package/templates/almadar-renderers-typescript/themes/mac-classic.css +455 -0
  1345. package/templates/almadar-renderers-typescript/themes/material.css +463 -0
  1346. package/templates/almadar-renderers-typescript/themes/memphis.css +453 -0
  1347. package/templates/almadar-renderers-typescript/themes/mid-century.css +455 -0
  1348. package/templates/almadar-renderers-typescript/themes/minimalist.css +449 -0
  1349. package/templates/almadar-renderers-typescript/themes/mudcloth.css +459 -0
  1350. package/templates/almadar-renderers-typescript/themes/nata.css +310 -0
  1351. package/templates/almadar-renderers-typescript/themes/neon.css +453 -0
  1352. package/templates/almadar-renderers-typescript/themes/neumorphic.css +451 -0
  1353. package/templates/almadar-renderers-typescript/themes/newsprint.css +455 -0
  1354. package/templates/almadar-renderers-typescript/themes/notion-editorial.css +463 -0
  1355. package/templates/almadar-renderers-typescript/themes/orb.css +465 -0
  1356. package/templates/almadar-renderers-typescript/themes/pixel.css +449 -0
  1357. package/templates/almadar-renderers-typescript/themes/prism.css +309 -0
  1358. package/templates/almadar-renderers-typescript/themes/rawi.css +310 -0
  1359. package/templates/almadar-renderers-typescript/themes/retro.css +452 -0
  1360. package/templates/almadar-renderers-typescript/themes/risograph.css +463 -0
  1361. package/templates/almadar-renderers-typescript/themes/scandi.css +469 -0
  1362. package/templates/almadar-renderers-typescript/themes/sketch.css +455 -0
  1363. package/templates/almadar-renderers-typescript/themes/solarpunk.css +469 -0
  1364. package/templates/almadar-renderers-typescript/themes/steampunk.css +451 -0
  1365. package/templates/almadar-renderers-typescript/themes/swiss.css +455 -0
  1366. package/templates/almadar-renderers-typescript/themes/terminal.css +466 -0
  1367. package/templates/almadar-renderers-typescript/themes/trait-wars.css +487 -0
  1368. package/templates/almadar-renderers-typescript/themes/ukiyo-e.css +459 -0
  1369. package/templates/almadar-renderers-typescript/themes/vaporwave.css +455 -0
  1370. package/templates/almadar-renderers-typescript/themes/victorian.css +453 -0
  1371. package/templates/almadar-renderers-typescript/themes/wabi-sabi.css +459 -0
  1372. package/templates/almadar-renderers-typescript/themes/win95.css +455 -0
  1373. package/templates/almadar-renderers-typescript/themes/wireframe.css +439 -0
  1374. package/templates/almadar-renderers-typescript/themes/zine.css +455 -0
  1375. package/templates/almadar-renderers-typescript/tsconfig.json +22 -0
  1376. package/templates/almadar-renderers-typescript/tsup.config.ts +69 -0
  1377. package/templates/almadar-renderers-typescript/vitest.config.ts +55 -0
  1378. package/templates/almadar-renderers-typescript/vitest.setup.ts +13 -0
  1379. package/templates/almadar-shell/package.json +1 -1
  1380. package/templates/almadar-shell/packages/client/eslint.config.cjs +2 -1
  1381. package/templates/almadar-shell/packages/client/package.json +10 -12
  1382. package/templates/almadar-shell/packages/client/src/App.tsx +87 -89
  1383. package/templates/almadar-shell/packages/client/src/client-program.ts +26 -0
  1384. package/templates/almadar-shell/packages/client/src/config/auth.ts +31 -9
  1385. package/templates/almadar-shell/packages/client/src/features/auth/AuthContext.tsx +2 -2
  1386. package/templates/almadar-shell/packages/client/src/features/auth/components/PersonaSwitcher.tsx +12 -7
  1387. package/templates/almadar-shell/packages/client/src/features/auth/index.ts +0 -1
  1388. package/templates/almadar-shell/packages/client/src/features/auth/types.ts +1 -1
  1389. package/templates/almadar-shell/packages/client/src/index.css +4 -3
  1390. package/templates/almadar-shell/packages/client/src/kernel-host.ts +28 -0
  1391. package/templates/almadar-shell/packages/client/src/locale.tsx +32 -0
  1392. package/templates/almadar-shell/packages/client/src/main.tsx +62 -4
  1393. package/templates/almadar-shell/packages/client/tailwind-content.txt +352 -0
  1394. package/templates/almadar-shell/packages/client/tailwind-preset.cjs +5 -5
  1395. package/templates/almadar-shell/packages/client/tailwind.config.js +9 -6
  1396. package/templates/almadar-shell/packages/client/vite.config.ts +24 -3
  1397. package/templates/almadar-shell/packages/server/eslint.config.cjs +1 -0
  1398. package/templates/almadar-shell/packages/server/package.json +6 -17
  1399. package/templates/almadar-shell/packages/server/pnpm-lock.yaml +610 -3273
  1400. package/templates/almadar-shell/packages/server/src/index.ts +27 -66
  1401. package/templates/almadar-shell/packages/shared/package.json +2 -2
  1402. package/templates/almadar-shell/packages/shared/pnpm-lock.yaml +23 -5
  1403. package/templates/almadar-shell/pnpm-lock.yaml +1103 -5552
  1404. package/templates/almadar-web-client/assets/AvlTransitionDetail-63SD6GZF-C3Yi_AVP.js +1 -0
  1405. package/templates/almadar-web-client/assets/AvlTransitionExplainer-ZBTLOM3T-C6f3bBY3.js +1 -0
  1406. package/templates/almadar-web-client/assets/BehaviorView-YS5G4GNB-CtxHHnj-.js +1 -0
  1407. package/templates/almadar-web-client/assets/LayersPanel-M2LHWUFF-De_giL37.js +1 -0
  1408. package/templates/almadar-web-client/assets/ModuleCard-QHDGK5XK-BFngl29Q.js +1 -0
  1409. package/templates/almadar-web-client/assets/a-arrow-down-C2HmOu_1.js +6 -0
  1410. package/templates/almadar-web-client/assets/a-arrow-up-dWgddQWi.js +6 -0
  1411. package/templates/almadar-web-client/assets/a-large-small-CNmSaEt3.js +6 -0
  1412. package/templates/almadar-web-client/assets/abnfDiagram-VCTEODGH-B3W4Yoyz.js +1 -0
  1413. package/templates/almadar-web-client/assets/accessibility-B6YELWfs.js +6 -0
  1414. package/templates/almadar-web-client/assets/activity-Dse5FyZd.js +6 -0
  1415. package/templates/almadar-web-client/assets/air-vent-Cki2qyUJ.js +6 -0
  1416. package/templates/almadar-web-client/assets/airplay-D_O6MwrU.js +6 -0
  1417. package/templates/almadar-web-client/assets/alarm-clock-BbZBwIr-.js +6 -0
  1418. package/templates/almadar-web-client/assets/alarm-clock-check-Bb40xTdR.js +6 -0
  1419. package/templates/almadar-web-client/assets/alarm-clock-minus-CSBlXo_o.js +6 -0
  1420. package/templates/almadar-web-client/assets/alarm-clock-off-CcNYxfI6.js +6 -0
  1421. package/templates/almadar-web-client/assets/alarm-clock-plus-C4KO9SBC.js +6 -0
  1422. package/templates/almadar-web-client/assets/alarm-smoke-CB_KqS9_.js +6 -0
  1423. package/templates/almadar-web-client/assets/album-BHUhs1HQ.js +6 -0
  1424. package/templates/almadar-web-client/assets/align-center-horizontal-CKL7BTbe.js +6 -0
  1425. package/templates/almadar-web-client/assets/align-center-vertical-PJtSB6G9.js +6 -0
  1426. package/templates/almadar-web-client/assets/align-end-horizontal-DTsZaaF5.js +6 -0
  1427. package/templates/almadar-web-client/assets/align-end-vertical-Bq5yFOi3.js +6 -0
  1428. package/templates/almadar-web-client/assets/align-horizontal-distribute-center-tbRH0_yd.js +6 -0
  1429. package/templates/almadar-web-client/assets/align-horizontal-distribute-end-BJUp6pts.js +6 -0
  1430. package/templates/almadar-web-client/assets/align-horizontal-distribute-start-BmuJS5CL.js +6 -0
  1431. package/templates/almadar-web-client/assets/align-horizontal-justify-center-Ca_xzPGI.js +6 -0
  1432. package/templates/almadar-web-client/assets/align-horizontal-justify-end-De7D_l1l.js +6 -0
  1433. package/templates/almadar-web-client/assets/align-horizontal-justify-start-DCtmSPYg.js +6 -0
  1434. package/templates/almadar-web-client/assets/align-horizontal-space-around-Cc5H_0oq.js +6 -0
  1435. package/templates/almadar-web-client/assets/align-horizontal-space-between-B-jQ1ODu.js +6 -0
  1436. package/templates/almadar-web-client/assets/align-start-horizontal-Br2GLC-M.js +6 -0
  1437. package/templates/almadar-web-client/assets/align-start-vertical-CadUJWtO.js +6 -0
  1438. package/templates/almadar-web-client/assets/align-vertical-distribute-center-Cm14kYto.js +6 -0
  1439. package/templates/almadar-web-client/assets/align-vertical-distribute-end-DZ5lEON6.js +6 -0
  1440. package/templates/almadar-web-client/assets/align-vertical-distribute-start-DJA2eEpJ.js +6 -0
  1441. package/templates/almadar-web-client/assets/align-vertical-justify-center-BndR2b3S.js +6 -0
  1442. package/templates/almadar-web-client/assets/align-vertical-justify-end-Hobg2ENj.js +6 -0
  1443. package/templates/almadar-web-client/assets/align-vertical-justify-start-ujcjcwz8.js +6 -0
  1444. package/templates/almadar-web-client/assets/align-vertical-space-around-DPpI4HXJ.js +6 -0
  1445. package/templates/almadar-web-client/assets/align-vertical-space-between-BxuyWumx.js +6 -0
  1446. package/templates/almadar-web-client/assets/ambulance-B0PDb7yo.js +6 -0
  1447. package/templates/almadar-web-client/assets/ampersand-B1f7gcMQ.js +6 -0
  1448. package/templates/almadar-web-client/assets/ampersands-BRDaL3Mw.js +6 -0
  1449. package/templates/almadar-web-client/assets/amphora-q2DpC1vi.js +6 -0
  1450. package/templates/almadar-web-client/assets/anchor-QJGxSvCV.js +6 -0
  1451. package/templates/almadar-web-client/assets/angry-CkoYK4Iu.js +6 -0
  1452. package/templates/almadar-web-client/assets/annoyed-DbjnFvvZ.js +6 -0
  1453. package/templates/almadar-web-client/assets/antenna-FJ1IO3iu.js +6 -0
  1454. package/templates/almadar-web-client/assets/anvil-POoxSTG8.js +6 -0
  1455. package/templates/almadar-web-client/assets/aperture-XTdKlfnw.js +6 -0
  1456. package/templates/almadar-web-client/assets/app-window-D9tlgnYJ.js +6 -0
  1457. package/templates/almadar-web-client/assets/app-window-mac-D7TjI51L.js +6 -0
  1458. package/templates/almadar-web-client/assets/apple-z8la9eOn.js +6 -0
  1459. package/templates/almadar-web-client/assets/arc-DCIq9Ght.js +1 -0
  1460. package/templates/almadar-web-client/assets/architectureDiagram-5GKGNRK7-ylNm3a8E.js +36 -0
  1461. package/templates/almadar-web-client/assets/archive-lLWSgZ7N.js +6 -0
  1462. package/templates/almadar-web-client/assets/archive-restore-piwCXCKi.js +6 -0
  1463. package/templates/almadar-web-client/assets/archive-x-BptecPQz.js +6 -0
  1464. package/templates/almadar-web-client/assets/armchair-4DYvS1pu.js +6 -0
  1465. package/templates/almadar-web-client/assets/arrow-big-down-He1AI4cz.js +6 -0
  1466. package/templates/almadar-web-client/assets/arrow-big-down-dash-CEZ2ieFI.js +6 -0
  1467. package/templates/almadar-web-client/assets/arrow-big-left-2zBK6hEa.js +6 -0
  1468. package/templates/almadar-web-client/assets/arrow-big-left-dash-zbNIk-1k.js +6 -0
  1469. package/templates/almadar-web-client/assets/arrow-big-right-dash-d7oLUDqp.js +6 -0
  1470. package/templates/almadar-web-client/assets/arrow-big-right-qyZucwGp.js +6 -0
  1471. package/templates/almadar-web-client/assets/arrow-big-up-DWohhYj6.js +6 -0
  1472. package/templates/almadar-web-client/assets/arrow-big-up-dash-DUu8ofUo.js +6 -0
  1473. package/templates/almadar-web-client/assets/arrow-down-0-1-BRYhhVYx.js +6 -0
  1474. package/templates/almadar-web-client/assets/arrow-down-1-0-ClrbLWTf.js +6 -0
  1475. package/templates/almadar-web-client/assets/arrow-down-B9huyAOF.js +6 -0
  1476. package/templates/almadar-web-client/assets/arrow-down-a-z-_ixBHxbF.js +6 -0
  1477. package/templates/almadar-web-client/assets/arrow-down-from-line-B2tm4kbd.js +6 -0
  1478. package/templates/almadar-web-client/assets/arrow-down-left-C3xnT1sT.js +6 -0
  1479. package/templates/almadar-web-client/assets/arrow-down-right-DIIly1d9.js +6 -0
  1480. package/templates/almadar-web-client/assets/arrow-down-to-dot-Bpx7hhaY.js +6 -0
  1481. package/templates/almadar-web-client/assets/arrow-down-to-line-CRxbjQRG.js +6 -0
  1482. package/templates/almadar-web-client/assets/arrow-down-up-CRKbTDqj.js +6 -0
  1483. package/templates/almadar-web-client/assets/arrow-down-wide-narrow-Di88dmIr.js +6 -0
  1484. package/templates/almadar-web-client/assets/arrow-down-z-a-CRoMyabr.js +6 -0
  1485. package/templates/almadar-web-client/assets/arrow-left-from-line-D-mVt3z3.js +6 -0
  1486. package/templates/almadar-web-client/assets/arrow-left-right-84jMcJ5J.js +6 -0
  1487. package/templates/almadar-web-client/assets/arrow-left-to-line-CboOwJvt.js +6 -0
  1488. package/templates/almadar-web-client/assets/arrow-right-from-line-C12RH_zA.js +6 -0
  1489. package/templates/almadar-web-client/assets/arrow-right-left-COHVaoCi.js +6 -0
  1490. package/templates/almadar-web-client/assets/arrow-right-to-line-BUgtgQ85.js +6 -0
  1491. package/templates/almadar-web-client/assets/arrow-up-0-1-Bp67WTwa.js +6 -0
  1492. package/templates/almadar-web-client/assets/arrow-up-1-0-DShe3iZt.js +6 -0
  1493. package/templates/almadar-web-client/assets/arrow-up-DkQ0qwsF.js +6 -0
  1494. package/templates/almadar-web-client/assets/arrow-up-a-z-C6L578lJ.js +6 -0
  1495. package/templates/almadar-web-client/assets/arrow-up-down-C0FOQC4c.js +6 -0
  1496. package/templates/almadar-web-client/assets/arrow-up-from-dot-SPeQm62l.js +6 -0
  1497. package/templates/almadar-web-client/assets/arrow-up-from-line-C1n0gt2r.js +6 -0
  1498. package/templates/almadar-web-client/assets/arrow-up-left-4z4-uHDH.js +6 -0
  1499. package/templates/almadar-web-client/assets/arrow-up-right-CDGgZ22_.js +6 -0
  1500. package/templates/almadar-web-client/assets/arrow-up-to-line-UBMVgNCu.js +6 -0
  1501. package/templates/almadar-web-client/assets/arrow-up-wide-narrow-D1KJHxah.js +6 -0
  1502. package/templates/almadar-web-client/assets/arrow-up-z-a-bFUAITvo.js +6 -0
  1503. package/templates/almadar-web-client/assets/arrows-up-from-line-COeQeMVe.js +6 -0
  1504. package/templates/almadar-web-client/assets/asterisk-Ddy4dHjf.js +6 -0
  1505. package/templates/almadar-web-client/assets/at-sign-DVBLL5sB.js +6 -0
  1506. package/templates/almadar-web-client/assets/atom-BeRZUFio.js +6 -0
  1507. package/templates/almadar-web-client/assets/audio-lines-ZVaUIKpp.js +6 -0
  1508. package/templates/almadar-web-client/assets/audio-waveform-Drd9eKsK.js +6 -0
  1509. package/templates/almadar-web-client/assets/award-BvLYY3kB.js +6 -0
  1510. package/templates/almadar-web-client/assets/axe-D84YpIod.js +6 -0
  1511. package/templates/almadar-web-client/assets/axis-3d-DrDVIzDb.js +6 -0
  1512. package/templates/almadar-web-client/assets/baby-BeS2A0RO.js +6 -0
  1513. package/templates/almadar-web-client/assets/backpack-BB835hf4.js +6 -0
  1514. package/templates/almadar-web-client/assets/badge-alert-B5TPUbK_.js +6 -0
  1515. package/templates/almadar-web-client/assets/badge-cent-B4Cl2rPu.js +6 -0
  1516. package/templates/almadar-web-client/assets/badge-check-BTk9hiA_.js +6 -0
  1517. package/templates/almadar-web-client/assets/badge-dollar-sign-Dwn6r-1T.js +6 -0
  1518. package/templates/almadar-web-client/assets/badge-euro-YMHV2lNa.js +6 -0
  1519. package/templates/almadar-web-client/assets/badge-indian-rupee-CZQNClvc.js +6 -0
  1520. package/templates/almadar-web-client/assets/badge-info-DcnFWdS4.js +6 -0
  1521. package/templates/almadar-web-client/assets/badge-japanese-yen-BvrOOlJp.js +6 -0
  1522. package/templates/almadar-web-client/assets/badge-minus-DMlNzMBY.js +6 -0
  1523. package/templates/almadar-web-client/assets/badge-percent-nQu85FYT.js +6 -0
  1524. package/templates/almadar-web-client/assets/badge-plus-C7cqYvDi.js +6 -0
  1525. package/templates/almadar-web-client/assets/badge-pound-sterling-D2hjSl_d.js +6 -0
  1526. package/templates/almadar-web-client/assets/badge-q3vn2I-E.js +6 -0
  1527. package/templates/almadar-web-client/assets/badge-question-mark-CPsVEQRV.js +6 -0
  1528. package/templates/almadar-web-client/assets/badge-russian-ruble-3YEVwzGr.js +6 -0
  1529. package/templates/almadar-web-client/assets/badge-swiss-franc-m_fiEAVb.js +6 -0
  1530. package/templates/almadar-web-client/assets/badge-turkish-lira-B_491ckE.js +6 -0
  1531. package/templates/almadar-web-client/assets/badge-x-Php7_ZoF.js +6 -0
  1532. package/templates/almadar-web-client/assets/baggage-claim-Uilyvz1k.js +6 -0
  1533. package/templates/almadar-web-client/assets/balloon-LAQI4Cpn.js +6 -0
  1534. package/templates/almadar-web-client/assets/ban-B3IirzKQ.js +6 -0
  1535. package/templates/almadar-web-client/assets/banana-CAUrjVgb.js +6 -0
  1536. package/templates/almadar-web-client/assets/bandage-DsE3lgGu.js +6 -0
  1537. package/templates/almadar-web-client/assets/banknote-1BRzJs5v.js +6 -0
  1538. package/templates/almadar-web-client/assets/banknote-arrow-down-SGjzAdiA.js +6 -0
  1539. package/templates/almadar-web-client/assets/banknote-arrow-up-DvOs-qIO.js +6 -0
  1540. package/templates/almadar-web-client/assets/banknote-x-D9SF1Syd.js +6 -0
  1541. package/templates/almadar-web-client/assets/barcode-C6LPU1JT.js +6 -0
  1542. package/templates/almadar-web-client/assets/barrel-B1DkCQGe.js +6 -0
  1543. package/templates/almadar-web-client/assets/baseline-BGuaiTAE.js +6 -0
  1544. package/templates/almadar-web-client/assets/bath-BEmJhBE1.js +6 -0
  1545. package/templates/almadar-web-client/assets/battery-charging-D9DqTcXL.js +6 -0
  1546. package/templates/almadar-web-client/assets/battery-full-BZyal20q.js +6 -0
  1547. package/templates/almadar-web-client/assets/battery-kQypnb3z.js +6 -0
  1548. package/templates/almadar-web-client/assets/battery-low-DQ_oFZh2.js +6 -0
  1549. package/templates/almadar-web-client/assets/battery-medium-C3G-IU8k.js +6 -0
  1550. package/templates/almadar-web-client/assets/battery-plus-B1tKKKkC.js +6 -0
  1551. package/templates/almadar-web-client/assets/battery-warning-CX7H0SbD.js +6 -0
  1552. package/templates/almadar-web-client/assets/beaker-Cca5Y-PP.js +6 -0
  1553. package/templates/almadar-web-client/assets/bean-B3JTEhWK.js +6 -0
  1554. package/templates/almadar-web-client/assets/bean-off-CjfC4Xg2.js +6 -0
  1555. package/templates/almadar-web-client/assets/bed-D1NMukEO.js +6 -0
  1556. package/templates/almadar-web-client/assets/bed-double-GGZp8uM_.js +6 -0
  1557. package/templates/almadar-web-client/assets/bed-single-BZwzBfOl.js +6 -0
  1558. package/templates/almadar-web-client/assets/beef-B4-yaAg7.js +6 -0
  1559. package/templates/almadar-web-client/assets/beer-DRoFSK7b.js +6 -0
  1560. package/templates/almadar-web-client/assets/beer-off-DdLyaaIp.js +6 -0
  1561. package/templates/almadar-web-client/assets/bell-B_QACE62.js +6 -0
  1562. package/templates/almadar-web-client/assets/bell-dot-C0ppGx5r.js +6 -0
  1563. package/templates/almadar-web-client/assets/bell-electric-pvp-_S26.js +6 -0
  1564. package/templates/almadar-web-client/assets/bell-minus-CWJmD-iQ.js +6 -0
  1565. package/templates/almadar-web-client/assets/bell-off-DsoqHSvN.js +6 -0
  1566. package/templates/almadar-web-client/assets/bell-plus-CAo601qW.js +6 -0
  1567. package/templates/almadar-web-client/assets/bell-ring-DrDVzscV.js +6 -0
  1568. package/templates/almadar-web-client/assets/between-horizontal-end-DFCZSSs6.js +6 -0
  1569. package/templates/almadar-web-client/assets/between-horizontal-start-Ca8w0lB3.js +6 -0
  1570. package/templates/almadar-web-client/assets/between-vertical-end-B_XU4W9b.js +6 -0
  1571. package/templates/almadar-web-client/assets/between-vertical-start-Dc4EN_nn.js +6 -0
  1572. package/templates/almadar-web-client/assets/biceps-flexed-ZqDXXPDm.js +6 -0
  1573. package/templates/almadar-web-client/assets/bike-DHCE01SR.js +6 -0
  1574. package/templates/almadar-web-client/assets/binary-ChzHAP66.js +6 -0
  1575. package/templates/almadar-web-client/assets/binoculars-BGRySK-F.js +6 -0
  1576. package/templates/almadar-web-client/assets/biohazard-BxCKMqOF.js +6 -0
  1577. package/templates/almadar-web-client/assets/bird-Ct7twn63.js +6 -0
  1578. package/templates/almadar-web-client/assets/birdhouse-COzd9D32.js +6 -0
  1579. package/templates/almadar-web-client/assets/bitcoin-BHhjHqr3.js +6 -0
  1580. package/templates/almadar-web-client/assets/blend-CTpczQ3E.js +6 -0
  1581. package/templates/almadar-web-client/assets/blinds-CojKDh-C.js +6 -0
  1582. package/templates/almadar-web-client/assets/blockDiagram-I7D4REHJ-DdnfzDUN.js +129 -0
  1583. package/templates/almadar-web-client/assets/blocks-zbgpjXio.js +6 -0
  1584. package/templates/almadar-web-client/assets/bluetooth-DgAZ1KXg.js +6 -0
  1585. package/templates/almadar-web-client/assets/bluetooth-connected-BpA9ApBd.js +6 -0
  1586. package/templates/almadar-web-client/assets/bluetooth-off-CIfN7yFI.js +6 -0
  1587. package/templates/almadar-web-client/assets/bluetooth-searching-CFfIM3du.js +6 -0
  1588. package/templates/almadar-web-client/assets/bolt-BF9PORnu.js +6 -0
  1589. package/templates/almadar-web-client/assets/bomb-BvkGP2Sr.js +6 -0
  1590. package/templates/almadar-web-client/assets/bone-BZsfEUNu.js +6 -0
  1591. package/templates/almadar-web-client/assets/book-a-DOq-2YYH.js +6 -0
  1592. package/templates/almadar-web-client/assets/book-alert-BDxa3pPc.js +6 -0
  1593. package/templates/almadar-web-client/assets/book-audio-gEOhJXmk.js +6 -0
  1594. package/templates/almadar-web-client/assets/book-check-oXtVo6rj.js +6 -0
  1595. package/templates/almadar-web-client/assets/book-copy-BbIrPAix.js +6 -0
  1596. package/templates/almadar-web-client/assets/book-dashed-CwvFWjsY.js +6 -0
  1597. package/templates/almadar-web-client/assets/book-down-BH2ZvI-D.js +6 -0
  1598. package/templates/almadar-web-client/assets/book-headphones-DKd7Way0.js +6 -0
  1599. package/templates/almadar-web-client/assets/book-heart-Bf9RZy31.js +6 -0
  1600. package/templates/almadar-web-client/assets/book-image-BRgG6l8T.js +6 -0
  1601. package/templates/almadar-web-client/assets/book-key-B8ghgVEB.js +6 -0
  1602. package/templates/almadar-web-client/assets/book-lock-D1G3m2sE.js +6 -0
  1603. package/templates/almadar-web-client/assets/book-m8OkXFXz.js +6 -0
  1604. package/templates/almadar-web-client/assets/book-marked-B70FuaM4.js +6 -0
  1605. package/templates/almadar-web-client/assets/book-minus-B9fpaG1B.js +6 -0
  1606. package/templates/almadar-web-client/assets/book-open-DDoGlHt0.js +6 -0
  1607. package/templates/almadar-web-client/assets/book-open-check-SElMMQqA.js +6 -0
  1608. package/templates/almadar-web-client/assets/book-open-text-2kVNDuTf.js +6 -0
  1609. package/templates/almadar-web-client/assets/book-plus-eantJmvU.js +6 -0
  1610. package/templates/almadar-web-client/assets/book-search-BPop6-nW.js +6 -0
  1611. package/templates/almadar-web-client/assets/book-text-BwanrvMH.js +6 -0
  1612. package/templates/almadar-web-client/assets/book-type-B6YnNNgU.js +6 -0
  1613. package/templates/almadar-web-client/assets/book-up-2-DeH-KM-C.js +6 -0
  1614. package/templates/almadar-web-client/assets/book-up-D-euhVLz.js +6 -0
  1615. package/templates/almadar-web-client/assets/book-user-akg4u0PQ.js +6 -0
  1616. package/templates/almadar-web-client/assets/book-x-D1s7FWMq.js +6 -0
  1617. package/templates/almadar-web-client/assets/bookmark-B9A0slhJ.js +6 -0
  1618. package/templates/almadar-web-client/assets/bookmark-check-B9hyZSIV.js +6 -0
  1619. package/templates/almadar-web-client/assets/bookmark-minus-D4PjhFqD.js +6 -0
  1620. package/templates/almadar-web-client/assets/bookmark-plus-B6IkThUa.js +6 -0
  1621. package/templates/almadar-web-client/assets/bookmark-x-BNqMl30j.js +6 -0
  1622. package/templates/almadar-web-client/assets/boom-box-8uaJUFCI.js +6 -0
  1623. package/templates/almadar-web-client/assets/bot-C1AiARe9.js +6 -0
  1624. package/templates/almadar-web-client/assets/bot-message-square-CsTlLLB6.js +6 -0
  1625. package/templates/almadar-web-client/assets/bot-off-DrVtIm9W.js +6 -0
  1626. package/templates/almadar-web-client/assets/bottle-wine-B5SAFgxD.js +6 -0
  1627. package/templates/almadar-web-client/assets/bow-arrow-DHB9b86p.js +6 -0
  1628. package/templates/almadar-web-client/assets/box-BhPfGACd.js +6 -0
  1629. package/templates/almadar-web-client/assets/boxes-DBXoddXQ.js +6 -0
  1630. package/templates/almadar-web-client/assets/braces-By6psbBE.js +6 -0
  1631. package/templates/almadar-web-client/assets/brackets-BeNjo5JP.js +6 -0
  1632. package/templates/almadar-web-client/assets/brain-DrZCXNqi.js +6 -0
  1633. package/templates/almadar-web-client/assets/brain-circuit-DBIz27la.js +6 -0
  1634. package/templates/almadar-web-client/assets/brain-cog-BWhz9BMb.js +6 -0
  1635. package/templates/almadar-web-client/assets/brick-wall-BCJlyI-d.js +6 -0
  1636. package/templates/almadar-web-client/assets/brick-wall-fire-mcEfmnUg.js +6 -0
  1637. package/templates/almadar-web-client/assets/brick-wall-shield-DdwD5v5T.js +6 -0
  1638. package/templates/almadar-web-client/assets/briefcase-D96cK3Ym.js +6 -0
  1639. package/templates/almadar-web-client/assets/briefcase-business-zhUZar1Y.js +6 -0
  1640. package/templates/almadar-web-client/assets/briefcase-conveyor-belt-C1KzJW1f.js +6 -0
  1641. package/templates/almadar-web-client/assets/briefcase-medical-CcPg5QAP.js +6 -0
  1642. package/templates/almadar-web-client/assets/bring-to-front-CZadqSE7.js +6 -0
  1643. package/templates/almadar-web-client/assets/brush-B8ipWYY4.js +6 -0
  1644. package/templates/almadar-web-client/assets/brush-cleaning-B8Ffgw74.js +6 -0
  1645. package/templates/almadar-web-client/assets/bubbles-Gr6MHSUB.js +6 -0
  1646. package/templates/almadar-web-client/assets/bug-CSVr4Una.js +6 -0
  1647. package/templates/almadar-web-client/assets/bug-off-CgmH1LbY.js +6 -0
  1648. package/templates/almadar-web-client/assets/bug-play-BPDlr0ue.js +6 -0
  1649. package/templates/almadar-web-client/assets/building-2-DNx_Is5T.js +6 -0
  1650. package/templates/almadar-web-client/assets/building-Di3fPKU6.js +6 -0
  1651. package/templates/almadar-web-client/assets/bus-CZaBPQKT.js +6 -0
  1652. package/templates/almadar-web-client/assets/bus-front-BhNa6h2X.js +6 -0
  1653. package/templates/almadar-web-client/assets/c4Diagram-7LVT6UL2-DfkE3HpC.js +38 -0
  1654. package/templates/almadar-web-client/assets/cable-Bju098rL.js +6 -0
  1655. package/templates/almadar-web-client/assets/cable-car-DIv8iDAt.js +6 -0
  1656. package/templates/almadar-web-client/assets/cake-Cc1Qd9K7.js +6 -0
  1657. package/templates/almadar-web-client/assets/cake-slice-pGw0uytM.js +6 -0
  1658. package/templates/almadar-web-client/assets/calculator-BwSdyMwi.js +6 -0
  1659. package/templates/almadar-web-client/assets/calendar-1-D7nW27iM.js +6 -0
  1660. package/templates/almadar-web-client/assets/calendar-BHehFdzN.js +6 -0
  1661. package/templates/almadar-web-client/assets/calendar-arrow-down-BYm51Hra.js +6 -0
  1662. package/templates/almadar-web-client/assets/calendar-arrow-up-BmGEBlzh.js +6 -0
  1663. package/templates/almadar-web-client/assets/calendar-check-2-DH6TcaVM.js +6 -0
  1664. package/templates/almadar-web-client/assets/calendar-check-CIwje-fy.js +6 -0
  1665. package/templates/almadar-web-client/assets/calendar-clock-D0wdgFFA.js +6 -0
  1666. package/templates/almadar-web-client/assets/calendar-cog-DnM4KKPi.js +6 -0
  1667. package/templates/almadar-web-client/assets/calendar-days-DdGMBAgv.js +6 -0
  1668. package/templates/almadar-web-client/assets/calendar-fold-Bz0CB9Fn.js +6 -0
  1669. package/templates/almadar-web-client/assets/calendar-heart-Cjmsq4fz.js +6 -0
  1670. package/templates/almadar-web-client/assets/calendar-minus-0YkpwDtx.js +6 -0
  1671. package/templates/almadar-web-client/assets/calendar-minus-2-QVDe77UD.js +6 -0
  1672. package/templates/almadar-web-client/assets/calendar-off-DmRwq1u9.js +6 -0
  1673. package/templates/almadar-web-client/assets/calendar-plus-2-pe4Xomfk.js +6 -0
  1674. package/templates/almadar-web-client/assets/calendar-plus-BbaEsjmu.js +6 -0
  1675. package/templates/almadar-web-client/assets/calendar-range-C0Cw619e.js +6 -0
  1676. package/templates/almadar-web-client/assets/calendar-search-Bvgaw3ln.js +6 -0
  1677. package/templates/almadar-web-client/assets/calendar-sync-BGAdCf1l.js +6 -0
  1678. package/templates/almadar-web-client/assets/calendar-x-2-VAQSwOSk.js +6 -0
  1679. package/templates/almadar-web-client/assets/calendar-x-BLHYiAA1.js +6 -0
  1680. package/templates/almadar-web-client/assets/calendars-D3RwgzBG.js +6 -0
  1681. package/templates/almadar-web-client/assets/camera-CLmPjbuF.js +6 -0
  1682. package/templates/almadar-web-client/assets/camera-off-cXH8GwV5.js +6 -0
  1683. package/templates/almadar-web-client/assets/candy-DcReTC5J.js +6 -0
  1684. package/templates/almadar-web-client/assets/candy-cane-CiPE7GeC.js +6 -0
  1685. package/templates/almadar-web-client/assets/candy-off-B86pA0Gc.js +6 -0
  1686. package/templates/almadar-web-client/assets/cannabis-BMT648o4.js +6 -0
  1687. package/templates/almadar-web-client/assets/cannabis-off-CQ1-ySkU.js +6 -0
  1688. package/templates/almadar-web-client/assets/captions-CKt4Ru7D.js +6 -0
  1689. package/templates/almadar-web-client/assets/captions-off-Cc9dq0Ys.js +6 -0
  1690. package/templates/almadar-web-client/assets/car-front-BOPNhmiu.js +6 -0
  1691. package/templates/almadar-web-client/assets/car-taxi-front-BbR2aasR.js +6 -0
  1692. package/templates/almadar-web-client/assets/car-ztF1t8YZ.js +6 -0
  1693. package/templates/almadar-web-client/assets/caravan-wJNwjHyC.js +6 -0
  1694. package/templates/almadar-web-client/assets/card-sim-BxWmIzwG.js +6 -0
  1695. package/templates/almadar-web-client/assets/carrot-BLmztzhu.js +6 -0
  1696. package/templates/almadar-web-client/assets/case-lower-ByD8Kg4w.js +6 -0
  1697. package/templates/almadar-web-client/assets/case-sensitive-9_50Gv3d.js +6 -0
  1698. package/templates/almadar-web-client/assets/case-upper-DpKvttIq.js +6 -0
  1699. package/templates/almadar-web-client/assets/cassette-tape-BvE2h8_K.js +6 -0
  1700. package/templates/almadar-web-client/assets/cast-xSrM41zF.js +6 -0
  1701. package/templates/almadar-web-client/assets/castle-iaP2lTa5.js +6 -0
  1702. package/templates/almadar-web-client/assets/cat-B026CINd.js +6 -0
  1703. package/templates/almadar-web-client/assets/cctv-DZ_DtoO-.js +6 -0
  1704. package/templates/almadar-web-client/assets/channel-BdsK16W9.js +1 -0
  1705. package/templates/almadar-web-client/assets/chart-area-aNcYm49F.js +6 -0
  1706. package/templates/almadar-web-client/assets/chart-bar-a3bB5gjd.js +6 -0
  1707. package/templates/almadar-web-client/assets/chart-bar-big-BSAG1btC.js +6 -0
  1708. package/templates/almadar-web-client/assets/chart-bar-decreasing-Bktce32i.js +6 -0
  1709. package/templates/almadar-web-client/assets/chart-bar-increasing-a45oSw3w.js +6 -0
  1710. package/templates/almadar-web-client/assets/chart-bar-stacked-CINSlldz.js +6 -0
  1711. package/templates/almadar-web-client/assets/chart-candlestick-Dc5B9okE.js +6 -0
  1712. package/templates/almadar-web-client/assets/chart-column-BbIIvgcS.js +6 -0
  1713. package/templates/almadar-web-client/assets/chart-column-big-Cu4VAomP.js +6 -0
  1714. package/templates/almadar-web-client/assets/chart-column-decreasing-D0JGP388.js +6 -0
  1715. package/templates/almadar-web-client/assets/chart-column-increasing-BuywjYof.js +6 -0
  1716. package/templates/almadar-web-client/assets/chart-column-stacked-D38m-nu8.js +6 -0
  1717. package/templates/almadar-web-client/assets/chart-gantt-C7_TN2Qn.js +6 -0
  1718. package/templates/almadar-web-client/assets/chart-line-CpOqSb1O.js +6 -0
  1719. package/templates/almadar-web-client/assets/chart-network-fY-A9mkt.js +6 -0
  1720. package/templates/almadar-web-client/assets/chart-no-axes-column-C8JSnVZ9.js +6 -0
  1721. package/templates/almadar-web-client/assets/chart-no-axes-column-decreasing-RLTkl8tr.js +6 -0
  1722. package/templates/almadar-web-client/assets/chart-no-axes-column-increasing-68_Y4x0o.js +6 -0
  1723. package/templates/almadar-web-client/assets/chart-no-axes-combined-BbRh8Dbl.js +6 -0
  1724. package/templates/almadar-web-client/assets/chart-no-axes-gantt-D7PUWaBH.js +6 -0
  1725. package/templates/almadar-web-client/assets/chart-pie-D4q5oUWS.js +6 -0
  1726. package/templates/almadar-web-client/assets/chart-scatter-DveGXn21.js +6 -0
  1727. package/templates/almadar-web-client/assets/chart-spline-DIMbKSxa.js +6 -0
  1728. package/templates/almadar-web-client/assets/check-check-CobzbSLL.js +6 -0
  1729. package/templates/almadar-web-client/assets/check-line-CS4QKOFK.js +6 -0
  1730. package/templates/almadar-web-client/assets/chef-hat-DPbXS9dn.js +6 -0
  1731. package/templates/almadar-web-client/assets/cherry-DxXXUxKh.js +6 -0
  1732. package/templates/almadar-web-client/assets/chess-bishop-Dvam33JT.js +6 -0
  1733. package/templates/almadar-web-client/assets/chess-king-B8kIya_N.js +6 -0
  1734. package/templates/almadar-web-client/assets/chess-knight-DQ2R8YAN.js +6 -0
  1735. package/templates/almadar-web-client/assets/chess-pawn-Dd_Hs3uf.js +6 -0
  1736. package/templates/almadar-web-client/assets/chess-queen-Dy5sm3Wf.js +6 -0
  1737. package/templates/almadar-web-client/assets/chess-rook-CVAQVH1T.js +6 -0
  1738. package/templates/almadar-web-client/assets/chevron-first-Cpcndfq_.js +6 -0
  1739. package/templates/almadar-web-client/assets/chevron-last-D3pkCjny.js +6 -0
  1740. package/templates/almadar-web-client/assets/chevrons-down-CGRwnHKz.js +6 -0
  1741. package/templates/almadar-web-client/assets/chevrons-down-up-BdWc8bsq.js +6 -0
  1742. package/templates/almadar-web-client/assets/chevrons-left-D7KHhQOx.js +6 -0
  1743. package/templates/almadar-web-client/assets/chevrons-left-right-ellipsis-BS2FTs4H.js +6 -0
  1744. package/templates/almadar-web-client/assets/chevrons-left-right-qNSWrdbV.js +6 -0
  1745. package/templates/almadar-web-client/assets/chevrons-right-Cugmm7mN.js +6 -0
  1746. package/templates/almadar-web-client/assets/chevrons-right-left-CzFu_lvD.js +6 -0
  1747. package/templates/almadar-web-client/assets/chevrons-up-B1pNM11M.js +6 -0
  1748. package/templates/almadar-web-client/assets/chevrons-up-down-BvufaM4T.js +6 -0
  1749. package/templates/almadar-web-client/assets/chromium-DJe_Fvnl.js +6 -0
  1750. package/templates/almadar-web-client/assets/chunk-2Q5K7J3B-B8dEBIdC.js +1 -0
  1751. package/templates/almadar-web-client/assets/chunk-5VM5RSS4-krF4fBlN.js +15 -0
  1752. package/templates/almadar-web-client/assets/chunk-F27PBJKO-DPQ0te9q.js +1 -0
  1753. package/templates/almadar-web-client/assets/chunk-IMKFNOWR-K_FW8RcW.js +231 -0
  1754. package/templates/almadar-web-client/assets/chunk-JWPE2WC7-2Drvd5ez.js +1 -0
  1755. package/templates/almadar-web-client/assets/chunk-POPQ4Y6H-BKhJJhJE.js +1 -0
  1756. package/templates/almadar-web-client/assets/chunk-SVP7TREG-CyZwGmfL.js +88 -0
  1757. package/templates/almadar-web-client/assets/chunk-TICWLB2K-CnTibVjM.js +206 -0
  1758. package/templates/almadar-web-client/assets/chunk-XXDRQBXY-BHJjjZU_.js +1 -0
  1759. package/templates/almadar-web-client/assets/church-aI7eDUNy.js +6 -0
  1760. package/templates/almadar-web-client/assets/cigarette-cMt9VM15.js +6 -0
  1761. package/templates/almadar-web-client/assets/cigarette-off-CS1RnJun.js +6 -0
  1762. package/templates/almadar-web-client/assets/circle-arrow-down-Bk8e886y.js +6 -0
  1763. package/templates/almadar-web-client/assets/circle-arrow-left-CFO4Gdwy.js +6 -0
  1764. package/templates/almadar-web-client/assets/circle-arrow-out-down-left-BHAR3Mv0.js +6 -0
  1765. package/templates/almadar-web-client/assets/circle-arrow-out-down-right-Ba7R4eI_.js +6 -0
  1766. package/templates/almadar-web-client/assets/circle-arrow-out-up-left-B-mUH5PL.js +6 -0
  1767. package/templates/almadar-web-client/assets/circle-arrow-out-up-right-B1rX8ceO.js +6 -0
  1768. package/templates/almadar-web-client/assets/circle-arrow-right-xUQVjjPX.js +6 -0
  1769. package/templates/almadar-web-client/assets/circle-arrow-up-RmTijA5g.js +6 -0
  1770. package/templates/almadar-web-client/assets/circle-chevron-down-CNN6qLUl.js +6 -0
  1771. package/templates/almadar-web-client/assets/circle-chevron-left-Dt1fBR-F.js +6 -0
  1772. package/templates/almadar-web-client/assets/circle-chevron-right-DqZQk2yL.js +6 -0
  1773. package/templates/almadar-web-client/assets/circle-chevron-up-2_ZIN0WN.js +6 -0
  1774. package/templates/almadar-web-client/assets/circle-dashed-CNkM4RQN.js +6 -0
  1775. package/templates/almadar-web-client/assets/circle-divide-9_zxWmu4.js +6 -0
  1776. package/templates/almadar-web-client/assets/circle-dollar-sign-C4Huo7nd.js +6 -0
  1777. package/templates/almadar-web-client/assets/circle-dot-C5m69gTn.js +6 -0
  1778. package/templates/almadar-web-client/assets/circle-dot-dashed-C_tuQPGN.js +6 -0
  1779. package/templates/almadar-web-client/assets/circle-ellipsis-vsVvgmoV.js +6 -0
  1780. package/templates/almadar-web-client/assets/circle-equal-DfEqVKC5.js +6 -0
  1781. package/templates/almadar-web-client/assets/circle-fading-arrow-up-rnnja2ls.js +6 -0
  1782. package/templates/almadar-web-client/assets/circle-fading-plus-D2rZKsgt.js +6 -0
  1783. package/templates/almadar-web-client/assets/circle-gauge-gTRqwBkW.js +6 -0
  1784. package/templates/almadar-web-client/assets/circle-minus-CY0W9-z_.js +6 -0
  1785. package/templates/almadar-web-client/assets/circle-off-BA_caMh9.js +6 -0
  1786. package/templates/almadar-web-client/assets/circle-parking-oBXMzN0K.js +6 -0
  1787. package/templates/almadar-web-client/assets/circle-parking-off-BuExJRRb.js +6 -0
  1788. package/templates/almadar-web-client/assets/circle-percent-BL8nz6yP.js +6 -0
  1789. package/templates/almadar-web-client/assets/circle-pile-BVsNE6_X.js +6 -0
  1790. package/templates/almadar-web-client/assets/circle-play-CjsQsb6i.js +6 -0
  1791. package/templates/almadar-web-client/assets/circle-plus-fVmc2kgW.js +6 -0
  1792. package/templates/almadar-web-client/assets/circle-pound-sterling-CNLzn4Y2.js +6 -0
  1793. package/templates/almadar-web-client/assets/circle-power-CYuy2EGj.js +6 -0
  1794. package/templates/almadar-web-client/assets/circle-slash-2-DvS0Af38.js +6 -0
  1795. package/templates/almadar-web-client/assets/circle-slash-DxynROy7.js +6 -0
  1796. package/templates/almadar-web-client/assets/circle-small-CWyIzrR3.js +6 -0
  1797. package/templates/almadar-web-client/assets/circle-star-Bj4G1-PV.js +6 -0
  1798. package/templates/almadar-web-client/assets/circle-stop-QBs61nYN.js +6 -0
  1799. package/templates/almadar-web-client/assets/circle-user-qUM2J30L.js +6 -0
  1800. package/templates/almadar-web-client/assets/circle-user-round-BA7OYw77.js +6 -0
  1801. package/templates/almadar-web-client/assets/circuit-board-CsHjO_F-.js +6 -0
  1802. package/templates/almadar-web-client/assets/citrus-Dj4pKOJC.js +6 -0
  1803. package/templates/almadar-web-client/assets/clapperboard-CxyQjCzW.js +6 -0
  1804. package/templates/almadar-web-client/assets/classDiagram-ZZMXUADV-5AAdbdV_.js +1 -0
  1805. package/templates/almadar-web-client/assets/classDiagram-v2-VYDZK3BY-5AAdbdV_.js +1 -0
  1806. package/templates/almadar-web-client/assets/clipboard-DgOcMUSB.js +6 -0
  1807. package/templates/almadar-web-client/assets/clipboard-check-D1hZH2ya.js +6 -0
  1808. package/templates/almadar-web-client/assets/clipboard-clock-WsTlfM-z.js +6 -0
  1809. package/templates/almadar-web-client/assets/clipboard-copy-DsyO2q_d.js +6 -0
  1810. package/templates/almadar-web-client/assets/clipboard-list-xFGtOjNm.js +6 -0
  1811. package/templates/almadar-web-client/assets/clipboard-minus-fsKBCYdX.js +6 -0
  1812. package/templates/almadar-web-client/assets/clipboard-paste-B6b8_WdS.js +6 -0
  1813. package/templates/almadar-web-client/assets/clipboard-pen-CutrF5uE.js +6 -0
  1814. package/templates/almadar-web-client/assets/clipboard-pen-line-PRSfwFak.js +6 -0
  1815. package/templates/almadar-web-client/assets/clipboard-plus-Chb7D_8Z.js +6 -0
  1816. package/templates/almadar-web-client/assets/clipboard-type-CHxhufbs.js +6 -0
  1817. package/templates/almadar-web-client/assets/clipboard-x-BJ4r2D79.js +6 -0
  1818. package/templates/almadar-web-client/assets/clock-1-MXoe62FX.js +6 -0
  1819. package/templates/almadar-web-client/assets/clock-10-DU1yECu8.js +6 -0
  1820. package/templates/almadar-web-client/assets/clock-11-BnkXZwL0.js +6 -0
  1821. package/templates/almadar-web-client/assets/clock-12-DJ2a4S2-.js +6 -0
  1822. package/templates/almadar-web-client/assets/clock-2-BMR14HOQ.js +6 -0
  1823. package/templates/almadar-web-client/assets/clock-3-BPQVYMv2.js +6 -0
  1824. package/templates/almadar-web-client/assets/clock-4-Dp7jITjY.js +6 -0
  1825. package/templates/almadar-web-client/assets/clock-5-Blqye7zR.js +6 -0
  1826. package/templates/almadar-web-client/assets/clock-6-CwsJezrb.js +6 -0
  1827. package/templates/almadar-web-client/assets/clock-7-D5Q1GFnG.js +6 -0
  1828. package/templates/almadar-web-client/assets/clock-8-jjcYoBuL.js +6 -0
  1829. package/templates/almadar-web-client/assets/clock-9-DwwA5QDW.js +6 -0
  1830. package/templates/almadar-web-client/assets/clock-alert-DA5y6cN3.js +6 -0
  1831. package/templates/almadar-web-client/assets/clock-arrow-down-ChaZ3D8g.js +6 -0
  1832. package/templates/almadar-web-client/assets/clock-arrow-up-DrGYfZpG.js +6 -0
  1833. package/templates/almadar-web-client/assets/clock-check-DBz5qsgg.js +6 -0
  1834. package/templates/almadar-web-client/assets/clock-fading-DDzd9KAF.js +6 -0
  1835. package/templates/almadar-web-client/assets/clock-plus-DUHMkMD5.js +6 -0
  1836. package/templates/almadar-web-client/assets/closed-caption-1o3R5D4O.js +6 -0
  1837. package/templates/almadar-web-client/assets/cloud-CjnGqxsB.js +6 -0
  1838. package/templates/almadar-web-client/assets/cloud-alert-Chg7XEdd.js +6 -0
  1839. package/templates/almadar-web-client/assets/cloud-backup-DgW9xuao.js +6 -0
  1840. package/templates/almadar-web-client/assets/cloud-check-Dq6Fxh1a.js +6 -0
  1841. package/templates/almadar-web-client/assets/cloud-cog-9eNM-O58.js +6 -0
  1842. package/templates/almadar-web-client/assets/cloud-download-BzntmCCE.js +6 -0
  1843. package/templates/almadar-web-client/assets/cloud-drizzle-q43WIz-R.js +6 -0
  1844. package/templates/almadar-web-client/assets/cloud-fog-Dh0DCBR5.js +6 -0
  1845. package/templates/almadar-web-client/assets/cloud-hail-DIz3zq0n.js +6 -0
  1846. package/templates/almadar-web-client/assets/cloud-lightning-C_IGr5vb.js +6 -0
  1847. package/templates/almadar-web-client/assets/cloud-moon-8q694G3H.js +6 -0
  1848. package/templates/almadar-web-client/assets/cloud-moon-rain-BV1d7eSh.js +6 -0
  1849. package/templates/almadar-web-client/assets/cloud-off-CldQvcfp.js +6 -0
  1850. package/templates/almadar-web-client/assets/cloud-rain-C7UiDkqx.js +6 -0
  1851. package/templates/almadar-web-client/assets/cloud-rain-wind-vwZRB38M.js +6 -0
  1852. package/templates/almadar-web-client/assets/cloud-snow-CQaJfxvC.js +6 -0
  1853. package/templates/almadar-web-client/assets/cloud-sun-rain-BK_H-JjX.js +6 -0
  1854. package/templates/almadar-web-client/assets/cloud-sun-v5CDAGXE.js +6 -0
  1855. package/templates/almadar-web-client/assets/cloud-sync-DS9b8rNw.js +6 -0
  1856. package/templates/almadar-web-client/assets/cloud-upload-CpH8mKcC.js +6 -0
  1857. package/templates/almadar-web-client/assets/cloudy-BEN_47Y6.js +6 -0
  1858. package/templates/almadar-web-client/assets/clover-BCmAynmA.js +6 -0
  1859. package/templates/almadar-web-client/assets/club-CUzEkIOV.js +6 -0
  1860. package/templates/almadar-web-client/assets/code-xml-DG0u-4Oe.js +6 -0
  1861. package/templates/almadar-web-client/assets/codepen-BLu6EeF_.js +6 -0
  1862. package/templates/almadar-web-client/assets/codesandbox-DRk2FxVx.js +6 -0
  1863. package/templates/almadar-web-client/assets/coffee-CAIUMcQe.js +6 -0
  1864. package/templates/almadar-web-client/assets/cog-GqmW2siP.js +6 -0
  1865. package/templates/almadar-web-client/assets/coins-CK5G2dey.js +6 -0
  1866. package/templates/almadar-web-client/assets/columns-2-CEU1tUfs.js +6 -0
  1867. package/templates/almadar-web-client/assets/columns-3-BexqIinW.js +6 -0
  1868. package/templates/almadar-web-client/assets/columns-3-cog-DmXFaRpY.js +6 -0
  1869. package/templates/almadar-web-client/assets/columns-4-Da0ace-R.js +6 -0
  1870. package/templates/almadar-web-client/assets/combine-CIZQP2kx.js +6 -0
  1871. package/templates/almadar-web-client/assets/command-BciNn5cf.js +6 -0
  1872. package/templates/almadar-web-client/assets/compass-4pTVGkvb.js +6 -0
  1873. package/templates/almadar-web-client/assets/component-B07CkWp6.js +6 -0
  1874. package/templates/almadar-web-client/assets/computer-Cr0GJ21A.js +6 -0
  1875. package/templates/almadar-web-client/assets/concierge-bell-BFwCyOH1.js +6 -0
  1876. package/templates/almadar-web-client/assets/cone-DZBSAnc6.js +6 -0
  1877. package/templates/almadar-web-client/assets/construction-DBgyIVNl.js +6 -0
  1878. package/templates/almadar-web-client/assets/contact-CsSABqI2.js +6 -0
  1879. package/templates/almadar-web-client/assets/contact-round-bQGAS2QB.js +6 -0
  1880. package/templates/almadar-web-client/assets/container-oOkHc4aP.js +6 -0
  1881. package/templates/almadar-web-client/assets/contrast-CWDeYx0D.js +6 -0
  1882. package/templates/almadar-web-client/assets/cookie-BK1wAbqB.js +6 -0
  1883. package/templates/almadar-web-client/assets/cooking-pot-Br5tZARK.js +6 -0
  1884. package/templates/almadar-web-client/assets/copy-check-DsLV9PfK.js +6 -0
  1885. package/templates/almadar-web-client/assets/copy-minus-CSY8jsus.js +6 -0
  1886. package/templates/almadar-web-client/assets/copy-plus-CDUgsQbq.js +6 -0
  1887. package/templates/almadar-web-client/assets/copy-slash-jZydniG9.js +6 -0
  1888. package/templates/almadar-web-client/assets/copy-x-COPpn8nH.js +6 -0
  1889. package/templates/almadar-web-client/assets/copyleft-BKre8Ek-.js +6 -0
  1890. package/templates/almadar-web-client/assets/copyright-DfPLzxQ9.js +6 -0
  1891. package/templates/almadar-web-client/assets/corner-down-left-B6mfCbWY.js +6 -0
  1892. package/templates/almadar-web-client/assets/corner-down-right-lnjoikMY.js +6 -0
  1893. package/templates/almadar-web-client/assets/corner-left-down-Cmv-_9EQ.js +6 -0
  1894. package/templates/almadar-web-client/assets/corner-left-up-CaBt0PuF.js +6 -0
  1895. package/templates/almadar-web-client/assets/corner-right-down-Df-MvTGE.js +6 -0
  1896. package/templates/almadar-web-client/assets/corner-right-up-B4ME-NTY.js +6 -0
  1897. package/templates/almadar-web-client/assets/corner-up-left-C0qWgSX9.js +6 -0
  1898. package/templates/almadar-web-client/assets/corner-up-right-CZzx0lTx.js +6 -0
  1899. package/templates/almadar-web-client/assets/cose-bilkent-JH36ORCC-BDBYR42Z.js +1 -0
  1900. package/templates/almadar-web-client/assets/cpu-DYHQ5_e1.js +6 -0
  1901. package/templates/almadar-web-client/assets/creative-commons-o7GyHzi8.js +6 -0
  1902. package/templates/almadar-web-client/assets/credit-card-BT3-DrkP.js +6 -0
  1903. package/templates/almadar-web-client/assets/croissant-CHcASCxP.js +6 -0
  1904. package/templates/almadar-web-client/assets/crop-BMu4nAu7.js +6 -0
  1905. package/templates/almadar-web-client/assets/cross-BRrbzLlA.js +6 -0
  1906. package/templates/almadar-web-client/assets/crosshair-DB1mbDxp.js +6 -0
  1907. package/templates/almadar-web-client/assets/crown-B0zKc8mP.js +6 -0
  1908. package/templates/almadar-web-client/assets/cuboid-D8dhSt2n.js +6 -0
  1909. package/templates/almadar-web-client/assets/cup-soda-CXPSsFsK.js +6 -0
  1910. package/templates/almadar-web-client/assets/currency-hLmCtAXd.js +6 -0
  1911. package/templates/almadar-web-client/assets/cylinder-DhE3uquZ.js +6 -0
  1912. package/templates/almadar-web-client/assets/cynefin-OW5HDTMX-D98YWuB7.js +178 -0
  1913. package/templates/almadar-web-client/assets/cynefinDiagram-5FMLGOSQ--ZUA3WPf.js +62 -0
  1914. package/templates/almadar-web-client/assets/cytoscape.esm-BLAcgzS2.js +331 -0
  1915. package/templates/almadar-web-client/assets/dagre-GXQ25YYZ-LF1Inb0p.js +4 -0
  1916. package/templates/almadar-web-client/assets/dam-CDJKDIvg.js +6 -0
  1917. package/templates/almadar-web-client/assets/database-DyqDxjJp.js +6 -0
  1918. package/templates/almadar-web-client/assets/database-backup-CG5WnGvA.js +6 -0
  1919. package/templates/almadar-web-client/assets/database-search-2Ks3OMfI.js +6 -0
  1920. package/templates/almadar-web-client/assets/database-zap-DES1kycc.js +6 -0
  1921. package/templates/almadar-web-client/assets/decimals-arrow-left-D3PCq2b6.js +6 -0
  1922. package/templates/almadar-web-client/assets/decimals-arrow-right-5VV0gS_K.js +6 -0
  1923. package/templates/almadar-web-client/assets/defaultLocale-DX6XiGOO.js +1 -0
  1924. package/templates/almadar-web-client/assets/delete-DwkPPa5E.js +6 -0
  1925. package/templates/almadar-web-client/assets/dessert-DY702XLl.js +6 -0
  1926. package/templates/almadar-web-client/assets/diagram-S7CK7UJ4-JKlJK80g.js +30 -0
  1927. package/templates/almadar-web-client/assets/diagram-UQ7AKVKN-De8dlw-U.js +41 -0
  1928. package/templates/almadar-web-client/assets/diagram-VSXAHHWV-DbQcNTWe.js +3 -0
  1929. package/templates/almadar-web-client/assets/diagram-VX7I27RA-DjP7sHf3.js +24 -0
  1930. package/templates/almadar-web-client/assets/diagram-Z3DM3KII-DFO6qkor.js +24 -0
  1931. package/templates/almadar-web-client/assets/diameter-Bdou67Q1.js +6 -0
  1932. package/templates/almadar-web-client/assets/diamond-BUlNiwQG.js +6 -0
  1933. package/templates/almadar-web-client/assets/diamond-minus-WrsPrmxG.js +6 -0
  1934. package/templates/almadar-web-client/assets/diamond-percent-nycFmMxz.js +6 -0
  1935. package/templates/almadar-web-client/assets/diamond-plus-BdTr6Mq4.js +6 -0
  1936. package/templates/almadar-web-client/assets/dice-1-CupvpnQy.js +6 -0
  1937. package/templates/almadar-web-client/assets/dice-2-C5PdsDdC.js +6 -0
  1938. package/templates/almadar-web-client/assets/dice-3-CMF7AHGn.js +6 -0
  1939. package/templates/almadar-web-client/assets/dice-4-BPM1Hw9_.js +6 -0
  1940. package/templates/almadar-web-client/assets/dice-5-BRGaELS-.js +6 -0
  1941. package/templates/almadar-web-client/assets/dice-6-zGDeWEXs.js +6 -0
  1942. package/templates/almadar-web-client/assets/dices-CYdhuQJj.js +6 -0
  1943. package/templates/almadar-web-client/assets/diff-BJIW6rFM.js +6 -0
  1944. package/templates/almadar-web-client/assets/disc-2-DL3AQko6.js +6 -0
  1945. package/templates/almadar-web-client/assets/disc-3-CJCZJhBQ.js +6 -0
  1946. package/templates/almadar-web-client/assets/disc-BYdS7zx0.js +6 -0
  1947. package/templates/almadar-web-client/assets/disc-album-B5F-tofN.js +6 -0
  1948. package/templates/almadar-web-client/assets/divide-CwJ5cMKM.js +6 -0
  1949. package/templates/almadar-web-client/assets/dna-Ov2GTswf.js +6 -0
  1950. package/templates/almadar-web-client/assets/dna-off-ByX3m9sM.js +6 -0
  1951. package/templates/almadar-web-client/assets/dock-yzg-LQNd.js +6 -0
  1952. package/templates/almadar-web-client/assets/dog-xyHKVLLu.js +6 -0
  1953. package/templates/almadar-web-client/assets/donut-CePtxMtz.js +6 -0
  1954. package/templates/almadar-web-client/assets/door-closed-DYzt87P6.js +6 -0
  1955. package/templates/almadar-web-client/assets/door-closed-locked-ClFLZNsG.js +6 -0
  1956. package/templates/almadar-web-client/assets/door-open-CLSDLJ-n.js +6 -0
  1957. package/templates/almadar-web-client/assets/dot-DfHtlp_U.js +6 -0
  1958. package/templates/almadar-web-client/assets/drafting-compass-BdwB3uJ0.js +6 -0
  1959. package/templates/almadar-web-client/assets/drama-D4awlqp0.js +6 -0
  1960. package/templates/almadar-web-client/assets/dribbble-BQXmymqS.js +6 -0
  1961. package/templates/almadar-web-client/assets/drill-AciKYg0h.js +6 -0
  1962. package/templates/almadar-web-client/assets/drone-CRy1J54S.js +6 -0
  1963. package/templates/almadar-web-client/assets/droplet-CZkUcfdy.js +6 -0
  1964. package/templates/almadar-web-client/assets/droplet-off-BMAojD0j.js +6 -0
  1965. package/templates/almadar-web-client/assets/droplets-Cc6A8JgD.js +6 -0
  1966. package/templates/almadar-web-client/assets/drum-IlzU1Qso.js +6 -0
  1967. package/templates/almadar-web-client/assets/drumstick-Dcb6hFqB.js +6 -0
  1968. package/templates/almadar-web-client/assets/dumbbell-JUOTupMh.js +6 -0
  1969. package/templates/almadar-web-client/assets/ear-CPJBNQB6.js +6 -0
  1970. package/templates/almadar-web-client/assets/ear-off-CSjPvxwE.js +6 -0
  1971. package/templates/almadar-web-client/assets/earth-Biy5Oc51.js +6 -0
  1972. package/templates/almadar-web-client/assets/earth-lock-zoD-n_Hv.js +6 -0
  1973. package/templates/almadar-web-client/assets/ebnfDiagram-PWID7BFC-BaZmVleU.js +1 -0
  1974. package/templates/almadar-web-client/assets/eclipse-BDTSHGj-.js +6 -0
  1975. package/templates/almadar-web-client/assets/egg-Bw_S9JH5.js +6 -0
  1976. package/templates/almadar-web-client/assets/egg-fried-CLsqZVu6.js +6 -0
  1977. package/templates/almadar-web-client/assets/egg-off-DWflaO07.js +6 -0
  1978. package/templates/almadar-web-client/assets/elk.bundled-BzGEP8ae.js +24 -0
  1979. package/templates/almadar-web-client/assets/ellipsis-C-bX4seJ.js +6 -0
  1980. package/templates/almadar-web-client/assets/ellipsis-vertical-gZ_MVGvf.js +6 -0
  1981. package/templates/almadar-web-client/assets/emojiItems-QGSNAABW-DKlQAfUo.js +1 -0
  1982. package/templates/almadar-web-client/assets/equal-BnlcuEuC.js +6 -0
  1983. package/templates/almadar-web-client/assets/equal-approximately-BRXZKjpZ.js +6 -0
  1984. package/templates/almadar-web-client/assets/equal-not-a4SkdAAL.js +6 -0
  1985. package/templates/almadar-web-client/assets/erDiagram-RLTQ6QDP-CWRsQqbH.js +99 -0
  1986. package/templates/almadar-web-client/assets/ethernet-port-CV-IteHt.js +6 -0
  1987. package/templates/almadar-web-client/assets/euro-VYy5vUH0.js +6 -0
  1988. package/templates/almadar-web-client/assets/ev-charger-zTTq9Mm5.js +6 -0
  1989. package/templates/almadar-web-client/assets/expand-Dol7NBqm.js +6 -0
  1990. package/templates/almadar-web-client/assets/extends-CF3RwP-h.js +1 -0
  1991. package/templates/almadar-web-client/assets/external-link-DhOZpTUL.js +6 -0
  1992. package/templates/almadar-web-client/assets/eye-closed-D814IIho.js +6 -0
  1993. package/templates/almadar-web-client/assets/eye-off-BA6GdlVK.js +6 -0
  1994. package/templates/almadar-web-client/assets/facebook-DeB2hFxu.js +6 -0
  1995. package/templates/almadar-web-client/assets/factory-N94By298.js +6 -0
  1996. package/templates/almadar-web-client/assets/fan-DfVl776P.js +6 -0
  1997. package/templates/almadar-web-client/assets/fast-forward-BtHLuSg2.js +6 -0
  1998. package/templates/almadar-web-client/assets/feather-Bj4MkVyA.js +6 -0
  1999. package/templates/almadar-web-client/assets/fence-J9KTOPUe.js +6 -0
  2000. package/templates/almadar-web-client/assets/ferris-wheel-V-11SxLd.js +6 -0
  2001. package/templates/almadar-web-client/assets/figma-gzfyPvn5.js +6 -0
  2002. package/templates/almadar-web-client/assets/file-archive-BuMJt1uP.js +6 -0
  2003. package/templates/almadar-web-client/assets/file-axis-3d-Dz10prjp.js +6 -0
  2004. package/templates/almadar-web-client/assets/file-badge-YyvmPEl5.js +6 -0
  2005. package/templates/almadar-web-client/assets/file-box-2FMtrsnT.js +6 -0
  2006. package/templates/almadar-web-client/assets/file-braces-BuOC9EUo.js +6 -0
  2007. package/templates/almadar-web-client/assets/file-braces-corner-D-UfH70h.js +6 -0
  2008. package/templates/almadar-web-client/assets/file-chart-column-D4-mgiPY.js +6 -0
  2009. package/templates/almadar-web-client/assets/file-chart-column-increasing-C7TjB3uz.js +6 -0
  2010. package/templates/almadar-web-client/assets/file-chart-line-DMq_TXQE.js +6 -0
  2011. package/templates/almadar-web-client/assets/file-chart-pie-DKqPjBjF.js +6 -0
  2012. package/templates/almadar-web-client/assets/file-check-BJhrWWMq.js +6 -0
  2013. package/templates/almadar-web-client/assets/file-check-corner-BUr8s-WD.js +6 -0
  2014. package/templates/almadar-web-client/assets/file-clock-BpJ5G53r.js +6 -0
  2015. package/templates/almadar-web-client/assets/file-code-Dv_zP76d.js +6 -0
  2016. package/templates/almadar-web-client/assets/file-code-corner-C_gAN29F.js +6 -0
  2017. package/templates/almadar-web-client/assets/file-cog-BgCVKduI.js +6 -0
  2018. package/templates/almadar-web-client/assets/file-diff-__3SSbcw.js +6 -0
  2019. package/templates/almadar-web-client/assets/file-digit-B9r7SY6Z.js +6 -0
  2020. package/templates/almadar-web-client/assets/file-down-Zpj85aOZ.js +6 -0
  2021. package/templates/almadar-web-client/assets/file-eHRpes2d.js +6 -0
  2022. package/templates/almadar-web-client/assets/file-exclamation-point-CLqGqCJ6.js +6 -0
  2023. package/templates/almadar-web-client/assets/file-headphone-DhEF7CFq.js +6 -0
  2024. package/templates/almadar-web-client/assets/file-heart-DIr4BR2u.js +6 -0
  2025. package/templates/almadar-web-client/assets/file-image-DAWtsEFR.js +6 -0
  2026. package/templates/almadar-web-client/assets/file-input-DUUtTGmr.js +6 -0
  2027. package/templates/almadar-web-client/assets/file-key-m_u5nBMQ.js +6 -0
  2028. package/templates/almadar-web-client/assets/file-lock-C0k9MI5J.js +6 -0
  2029. package/templates/almadar-web-client/assets/file-minus-D_4uIRCz.js +6 -0
  2030. package/templates/almadar-web-client/assets/file-minus-corner-BGfjxOsX.js +6 -0
  2031. package/templates/almadar-web-client/assets/file-music-DjTi6qIS.js +6 -0
  2032. package/templates/almadar-web-client/assets/file-output-B929By9K.js +6 -0
  2033. package/templates/almadar-web-client/assets/file-pen-line-BAy0wjkz.js +6 -0
  2034. package/templates/almadar-web-client/assets/file-pen-tY7vwThd.js +6 -0
  2035. package/templates/almadar-web-client/assets/file-play-Da6xfa8d.js +6 -0
  2036. package/templates/almadar-web-client/assets/file-plus-CvYv9uvd.js +6 -0
  2037. package/templates/almadar-web-client/assets/file-plus-corner-D-UHBVcz.js +6 -0
  2038. package/templates/almadar-web-client/assets/file-question-mark-BC_zJj89.js +6 -0
  2039. package/templates/almadar-web-client/assets/file-scan-Cg6ePBPO.js +6 -0
  2040. package/templates/almadar-web-client/assets/file-search-D29WJ2f-.js +6 -0
  2041. package/templates/almadar-web-client/assets/file-search-corner-xTqhXIcO.js +6 -0
  2042. package/templates/almadar-web-client/assets/file-signal-CRvyy4sU.js +6 -0
  2043. package/templates/almadar-web-client/assets/file-sliders-Cyp35p_9.js +6 -0
  2044. package/templates/almadar-web-client/assets/file-spreadsheet-o4EWV5Nx.js +6 -0
  2045. package/templates/almadar-web-client/assets/file-stack-CgugzhdM.js +6 -0
  2046. package/templates/almadar-web-client/assets/file-symlink-CIaZ7Ba8.js +6 -0
  2047. package/templates/almadar-web-client/assets/file-terminal-PrhbZdUI.js +6 -0
  2048. package/templates/almadar-web-client/assets/file-type-X-yb4m0u.js +6 -0
  2049. package/templates/almadar-web-client/assets/file-type-corner-DEeNUQuV.js +6 -0
  2050. package/templates/almadar-web-client/assets/file-up-BB30vl92.js +6 -0
  2051. package/templates/almadar-web-client/assets/file-user-C81esUEJ.js +6 -0
  2052. package/templates/almadar-web-client/assets/file-video-camera-wAcm2Nwk.js +6 -0
  2053. package/templates/almadar-web-client/assets/file-volume-NtfLhF_8.js +6 -0
  2054. package/templates/almadar-web-client/assets/file-x-BYZdwUEl.js +6 -0
  2055. package/templates/almadar-web-client/assets/file-x-corner-Bcm332um.js +6 -0
  2056. package/templates/almadar-web-client/assets/files-C-1yplXd.js +6 -0
  2057. package/templates/almadar-web-client/assets/film-Dxa0exlZ.js +6 -0
  2058. package/templates/almadar-web-client/assets/fingerprint-pattern-BF1w_-Fg.js +6 -0
  2059. package/templates/almadar-web-client/assets/fire-extinguisher-DN52vdGX.js +6 -0
  2060. package/templates/almadar-web-client/assets/firebase-CwzUh0XR.js +1620 -0
  2061. package/templates/almadar-web-client/assets/fish-DBwrg092.js +6 -0
  2062. package/templates/almadar-web-client/assets/fish-off-CenFuXCj.js +6 -0
  2063. package/templates/almadar-web-client/assets/fish-symbol-CZP0zbwl.js +6 -0
  2064. package/templates/almadar-web-client/assets/fishing-hook-BL3qdXVZ.js +6 -0
  2065. package/templates/almadar-web-client/assets/flag-C3wrUAjU.js +6 -0
  2066. package/templates/almadar-web-client/assets/flag-off-CPo3NhzU.js +6 -0
  2067. package/templates/almadar-web-client/assets/flag-triangle-left-8u5F4VGW.js +6 -0
  2068. package/templates/almadar-web-client/assets/flag-triangle-right-DGZCNFxR.js +6 -0
  2069. package/templates/almadar-web-client/assets/flame-Bo2nx4ez.js +6 -0
  2070. package/templates/almadar-web-client/assets/flame-kindling-D4-95f95.js +6 -0
  2071. package/templates/almadar-web-client/assets/flashlight-Cnp2aoIK.js +6 -0
  2072. package/templates/almadar-web-client/assets/flashlight-off-BhotI7cG.js +6 -0
  2073. package/templates/almadar-web-client/assets/flask-conical-DVvY3CJE.js +6 -0
  2074. package/templates/almadar-web-client/assets/flask-conical-off-DK326Ipl.js +6 -0
  2075. package/templates/almadar-web-client/assets/flask-round-9vPobVO7.js +6 -0
  2076. package/templates/almadar-web-client/assets/flip-horizontal-2-BbYzcXwh.js +6 -0
  2077. package/templates/almadar-web-client/assets/flip-horizontal-Pf3KyCrR.js +6 -0
  2078. package/templates/almadar-web-client/assets/flip-vertical-2-Bhwppf0c.js +6 -0
  2079. package/templates/almadar-web-client/assets/flip-vertical-O2FG2gyT.js +6 -0
  2080. package/templates/almadar-web-client/assets/flowDiagram-HODETNUW-uMQ8rlKE.js +168 -0
  2081. package/templates/almadar-web-client/assets/flower-2-DCp_KvdY.js +6 -0
  2082. package/templates/almadar-web-client/assets/flower-DLItH4iF.js +6 -0
  2083. package/templates/almadar-web-client/assets/focus-BWiJntmc.js +6 -0
  2084. package/templates/almadar-web-client/assets/fold-horizontal-CXsz0eBO.js +6 -0
  2085. package/templates/almadar-web-client/assets/fold-vertical-BSPUE4_C.js +6 -0
  2086. package/templates/almadar-web-client/assets/folder-DCWGOtqu.js +6 -0
  2087. package/templates/almadar-web-client/assets/folder-archive-kheWckT-.js +6 -0
  2088. package/templates/almadar-web-client/assets/folder-check-Db3UsfBh.js +6 -0
  2089. package/templates/almadar-web-client/assets/folder-clock-DtFhVZui.js +6 -0
  2090. package/templates/almadar-web-client/assets/folder-closed-Bj-yLk1A.js +6 -0
  2091. package/templates/almadar-web-client/assets/folder-code-C--CHazo.js +6 -0
  2092. package/templates/almadar-web-client/assets/folder-cog-CUjhDHTY.js +6 -0
  2093. package/templates/almadar-web-client/assets/folder-dot-C0JzCwf3.js +6 -0
  2094. package/templates/almadar-web-client/assets/folder-down-019-G7tG.js +6 -0
  2095. package/templates/almadar-web-client/assets/folder-git-2-LZIzSTpn.js +6 -0
  2096. package/templates/almadar-web-client/assets/folder-git-BFYmNsRJ.js +6 -0
  2097. package/templates/almadar-web-client/assets/folder-heart-DCHCd-XB.js +6 -0
  2098. package/templates/almadar-web-client/assets/folder-input-BMUc7_2B.js +6 -0
  2099. package/templates/almadar-web-client/assets/folder-kanban-BLy9dlv3.js +6 -0
  2100. package/templates/almadar-web-client/assets/folder-key-eakzxQyQ.js +6 -0
  2101. package/templates/almadar-web-client/assets/folder-lock-DAPtijy_.js +6 -0
  2102. package/templates/almadar-web-client/assets/folder-minus-DALIKBr4.js +6 -0
  2103. package/templates/almadar-web-client/assets/folder-open-SJJIUYki.js +6 -0
  2104. package/templates/almadar-web-client/assets/folder-open-dot-VWRFxtO2.js +6 -0
  2105. package/templates/almadar-web-client/assets/folder-output-7qgp4yMV.js +6 -0
  2106. package/templates/almadar-web-client/assets/folder-pen-DdOOlgXh.js +6 -0
  2107. package/templates/almadar-web-client/assets/folder-plus-z8RJI81U.js +6 -0
  2108. package/templates/almadar-web-client/assets/folder-root-CH1w0E_F.js +6 -0
  2109. package/templates/almadar-web-client/assets/folder-search-2-CAPx0Ic3.js +6 -0
  2110. package/templates/almadar-web-client/assets/folder-search-DxF66-on.js +6 -0
  2111. package/templates/almadar-web-client/assets/folder-symlink-BVUPrGZm.js +6 -0
  2112. package/templates/almadar-web-client/assets/folder-sync-TO5TbRI_.js +6 -0
  2113. package/templates/almadar-web-client/assets/folder-tree-BaYniPXK.js +6 -0
  2114. package/templates/almadar-web-client/assets/folder-up-BS_vK4k_.js +6 -0
  2115. package/templates/almadar-web-client/assets/folder-x-Dgt7FX2B.js +6 -0
  2116. package/templates/almadar-web-client/assets/folders-C7KMS61S.js +6 -0
  2117. package/templates/almadar-web-client/assets/footprints-DvrYzxz6.js +6 -0
  2118. package/templates/almadar-web-client/assets/forklift-B9W-CgTI.js +6 -0
  2119. package/templates/almadar-web-client/assets/form-DBO5btYR.js +6 -0
  2120. package/templates/almadar-web-client/assets/forward-DD75KMC2.js +6 -0
  2121. package/templates/almadar-web-client/assets/frame-BF_cfGIt.js +6 -0
  2122. package/templates/almadar-web-client/assets/framer-DKhP8WiG.js +6 -0
  2123. package/templates/almadar-web-client/assets/frown-DJtOhmFt.js +6 -0
  2124. package/templates/almadar-web-client/assets/fuel-CmeFJMtT.js +6 -0
  2125. package/templates/almadar-web-client/assets/fullscreen-B0vz4Xlg.js +6 -0
  2126. package/templates/almadar-web-client/assets/funnel-CRmfuiLn.js +6 -0
  2127. package/templates/almadar-web-client/assets/funnel-plus-DEckQgFQ.js +6 -0
  2128. package/templates/almadar-web-client/assets/funnel-x-ClOLoPyN.js +6 -0
  2129. package/templates/almadar-web-client/assets/gallery-horizontal-C5QYHl5W.js +6 -0
  2130. package/templates/almadar-web-client/assets/gallery-horizontal-end-DQeJWSb5.js +6 -0
  2131. package/templates/almadar-web-client/assets/gallery-thumbnails-BuJGXmzq.js +6 -0
  2132. package/templates/almadar-web-client/assets/gallery-vertical-CcpPzNFN.js +6 -0
  2133. package/templates/almadar-web-client/assets/gallery-vertical-end-C25GhSry.js +6 -0
  2134. package/templates/almadar-web-client/assets/gamepad-2-B2SHLiNv.js +6 -0
  2135. package/templates/almadar-web-client/assets/gamepad-CT1bOxTd.js +6 -0
  2136. package/templates/almadar-web-client/assets/gamepad-directional-C6lb3_tO.js +6 -0
  2137. package/templates/almadar-web-client/assets/ganttDiagram-EL5Y4UJY-DvXgHuvZ.js +292 -0
  2138. package/templates/almadar-web-client/assets/gauge-BAYCXWQM.js +6 -0
  2139. package/templates/almadar-web-client/assets/gavel-CbvyDMcn.js +6 -0
  2140. package/templates/almadar-web-client/assets/gem-C3PZGpao.js +6 -0
  2141. package/templates/almadar-web-client/assets/georgian-lari-CV7flv3m.js +6 -0
  2142. package/templates/almadar-web-client/assets/ghost-C8RH6BbL.js +6 -0
  2143. package/templates/almadar-web-client/assets/gift-CteDtg63.js +6 -0
  2144. package/templates/almadar-web-client/assets/git-branch-minus-B3BhglU9.js +6 -0
  2145. package/templates/almadar-web-client/assets/git-branch-plus-D5HMSumv.js +6 -0
  2146. package/templates/almadar-web-client/assets/git-commit-horizontal-CsG9l4Fe.js +6 -0
  2147. package/templates/almadar-web-client/assets/git-commit-vertical-Dvf4Bkxi.js +6 -0
  2148. package/templates/almadar-web-client/assets/git-compare-arrows-BFN1kHze.js +6 -0
  2149. package/templates/almadar-web-client/assets/git-compare-l2TzjIb8.js +6 -0
  2150. package/templates/almadar-web-client/assets/git-fork-5PQVQH6k.js +6 -0
  2151. package/templates/almadar-web-client/assets/git-graph-D_R6FDai.js +6 -0
  2152. package/templates/almadar-web-client/assets/git-merge-D8kAhf-p.js +6 -0
  2153. package/templates/almadar-web-client/assets/git-merge-conflict-mZjXh7Ja.js +6 -0
  2154. package/templates/almadar-web-client/assets/git-pull-request-DEpKRRvr.js +6 -0
  2155. package/templates/almadar-web-client/assets/git-pull-request-arrow-BIASTAW1.js +6 -0
  2156. package/templates/almadar-web-client/assets/git-pull-request-closed-B-mkXTnm.js +6 -0
  2157. package/templates/almadar-web-client/assets/git-pull-request-create-arrow-DWiO3f7N.js +6 -0
  2158. package/templates/almadar-web-client/assets/git-pull-request-create-sdbwpOGM.js +6 -0
  2159. package/templates/almadar-web-client/assets/git-pull-request-draft-DQAZuACl.js +6 -0
  2160. package/templates/almadar-web-client/assets/gitGraphDiagram-WWUBYQGX-Cj4ahHDq.js +106 -0
  2161. package/templates/almadar-web-client/assets/github-GN8L7snd.js +6 -0
  2162. package/templates/almadar-web-client/assets/gitlab-B0HfdImd.js +6 -0
  2163. package/templates/almadar-web-client/assets/glass-water-p01V-F8j.js +6 -0
  2164. package/templates/almadar-web-client/assets/glasses-Dm4QJYjT.js +6 -0
  2165. package/templates/almadar-web-client/assets/globe-Cx3nDxZc.js +6 -0
  2166. package/templates/almadar-web-client/assets/globe-lock-DQqOoTSJ.js +6 -0
  2167. package/templates/almadar-web-client/assets/globe-off-DK7_LFJp.js +6 -0
  2168. package/templates/almadar-web-client/assets/globe-x-CMMy2vSU.js +6 -0
  2169. package/templates/almadar-web-client/assets/goal-CTxQV4lT.js +6 -0
  2170. package/templates/almadar-web-client/assets/gpu-C51LjLVE.js +6 -0
  2171. package/templates/almadar-web-client/assets/graduation-cap-ufcPfw8E.js +6 -0
  2172. package/templates/almadar-web-client/assets/grape-DnjChkPf.js +6 -0
  2173. package/templates/almadar-web-client/assets/grid-2x2-CMZA7U38.js +6 -0
  2174. package/templates/almadar-web-client/assets/grid-2x2-check-CaUTb90o.js +6 -0
  2175. package/templates/almadar-web-client/assets/grid-2x2-plus-BMUse76R.js +6 -0
  2176. package/templates/almadar-web-client/assets/grid-2x2-x-Bj0ONg6D.js +6 -0
  2177. package/templates/almadar-web-client/assets/grid-3x2-dhc7ItOa.js +6 -0
  2178. package/templates/almadar-web-client/assets/grid-3x3-BMOs3f1S.js +6 -0
  2179. package/templates/almadar-web-client/assets/grip-Dgvk7tUH.js +6 -0
  2180. package/templates/almadar-web-client/assets/grip-horizontal-DQsqxYeq.js +6 -0
  2181. package/templates/almadar-web-client/assets/grip-vertical-CHItE9o9.js +6 -0
  2182. package/templates/almadar-web-client/assets/group-Cr9_A2nA.js +6 -0
  2183. package/templates/almadar-web-client/assets/guitar-xStP_E_A.js +6 -0
  2184. package/templates/almadar-web-client/assets/ham-CCraiWrD.js +6 -0
  2185. package/templates/almadar-web-client/assets/hamburger-Bm8fj9je.js +6 -0
  2186. package/templates/almadar-web-client/assets/hammer-B22ChWSq.js +6 -0
  2187. package/templates/almadar-web-client/assets/hand-Bwjxfnk1.js +6 -0
  2188. package/templates/almadar-web-client/assets/hand-coins-BQ94o_9t.js +6 -0
  2189. package/templates/almadar-web-client/assets/hand-fist-DJd9WRMa.js +6 -0
  2190. package/templates/almadar-web-client/assets/hand-grab-BUv917Qa.js +6 -0
  2191. package/templates/almadar-web-client/assets/hand-heart-9mj8fXcB.js +6 -0
  2192. package/templates/almadar-web-client/assets/hand-helping-BDjypTQr.js +6 -0
  2193. package/templates/almadar-web-client/assets/hand-metal-DH8el7-l.js +6 -0
  2194. package/templates/almadar-web-client/assets/hand-platter-Dam-MwLI.js +6 -0
  2195. package/templates/almadar-web-client/assets/handbag-cJbKH_cj.js +6 -0
  2196. package/templates/almadar-web-client/assets/handshake-Dkn4Rxa_.js +6 -0
  2197. package/templates/almadar-web-client/assets/hard-drive-CZGC1CRY.js +6 -0
  2198. package/templates/almadar-web-client/assets/hard-drive-download-BRANEwsK.js +6 -0
  2199. package/templates/almadar-web-client/assets/hard-drive-upload-BK8xuEey.js +6 -0
  2200. package/templates/almadar-web-client/assets/hard-hat-e5lkRC78.js +6 -0
  2201. package/templates/almadar-web-client/assets/hash-sB2wTZxQ.js +6 -0
  2202. package/templates/almadar-web-client/assets/hat-glasses-rxRXVDtV.js +6 -0
  2203. package/templates/almadar-web-client/assets/haze-DMlf7b31.js +6 -0
  2204. package/templates/almadar-web-client/assets/hd-B5QAn_NG.js +6 -0
  2205. package/templates/almadar-web-client/assets/hdmi-port-JVqsOGWn.js +6 -0
  2206. package/templates/almadar-web-client/assets/heading-4-L0xJIpRD.js +6 -0
  2207. package/templates/almadar-web-client/assets/heading-5-BhsHK43z.js +6 -0
  2208. package/templates/almadar-web-client/assets/heading-6-BVsdwouj.js +6 -0
  2209. package/templates/almadar-web-client/assets/heading-DphETSjK.js +6 -0
  2210. package/templates/almadar-web-client/assets/headphone-off-DtlWgUaZ.js +6 -0
  2211. package/templates/almadar-web-client/assets/headphones-CZ_eb8bg.js +6 -0
  2212. package/templates/almadar-web-client/assets/headset-aqbC6ZKb.js +6 -0
  2213. package/templates/almadar-web-client/assets/heart-D-s2IU35.js +6 -0
  2214. package/templates/almadar-web-client/assets/heart-crack-Udt8G4ll.js +6 -0
  2215. package/templates/almadar-web-client/assets/heart-handshake-CX2SBZ0z.js +6 -0
  2216. package/templates/almadar-web-client/assets/heart-minus-mvkuUx2w.js +6 -0
  2217. package/templates/almadar-web-client/assets/heart-off-scTGXCLR.js +6 -0
  2218. package/templates/almadar-web-client/assets/heart-plus-DHEmcWKo.js +6 -0
  2219. package/templates/almadar-web-client/assets/heart-pulse-BzBuTpSg.js +6 -0
  2220. package/templates/almadar-web-client/assets/heater-BGpmG3a4.js +6 -0
  2221. package/templates/almadar-web-client/assets/helicopter-rW_hgFz3.js +6 -0
  2222. package/templates/almadar-web-client/assets/hexagon-DS5D7ebU.js +6 -0
  2223. package/templates/almadar-web-client/assets/highlighter-MqsMcVVH.js +6 -0
  2224. package/templates/almadar-web-client/assets/history-DZqrzt4q.js +6 -0
  2225. package/templates/almadar-web-client/assets/hop-CGTviH99.js +6 -0
  2226. package/templates/almadar-web-client/assets/hop-off-CA0iAO2r.js +6 -0
  2227. package/templates/almadar-web-client/assets/hospital-zY1JXwX5.js +6 -0
  2228. package/templates/almadar-web-client/assets/hotel-Y1sDt9m3.js +6 -0
  2229. package/templates/almadar-web-client/assets/hourglass-CdJcxCq0.js +6 -0
  2230. package/templates/almadar-web-client/assets/house-DJLrIk5o.js +6 -0
  2231. package/templates/almadar-web-client/assets/house-heart-BUIqojHR.js +6 -0
  2232. package/templates/almadar-web-client/assets/house-plug-Cg8L1aT8.js +6 -0
  2233. package/templates/almadar-web-client/assets/house-plus-B8sGDzxM.js +6 -0
  2234. package/templates/almadar-web-client/assets/house-wifi-DL7BGC_w.js +6 -0
  2235. package/templates/almadar-web-client/assets/ice-cream-bowl-BFJfBmI_.js +6 -0
  2236. package/templates/almadar-web-client/assets/ice-cream-cone--uI54pKs.js +6 -0
  2237. package/templates/almadar-web-client/assets/id-card-Vy45ipn8.js +6 -0
  2238. package/templates/almadar-web-client/assets/id-card-lanyard-DE6KVJqZ.js +6 -0
  2239. package/templates/almadar-web-client/assets/image-down-DrkQdz_-.js +6 -0
  2240. package/templates/almadar-web-client/assets/image-minus-BhNx1JT0.js +6 -0
  2241. package/templates/almadar-web-client/assets/image-off-DgFXl7LR.js +6 -0
  2242. package/templates/almadar-web-client/assets/image-play-ifT2hd0X.js +6 -0
  2243. package/templates/almadar-web-client/assets/image-plus-DRUo4nOa.js +6 -0
  2244. package/templates/almadar-web-client/assets/image-up-Debh_Ia-.js +6 -0
  2245. package/templates/almadar-web-client/assets/image-upscale-RyfLnAbN.js +6 -0
  2246. package/templates/almadar-web-client/assets/images-DjV4qxqP.js +6 -0
  2247. package/templates/almadar-web-client/assets/import-DIg1ofFh.js +6 -0
  2248. package/templates/almadar-web-client/assets/inbox-C9QWpiqw.js +6 -0
  2249. package/templates/almadar-web-client/assets/index-BYiBv-Pz.js +4428 -0
  2250. package/templates/almadar-web-client/assets/index-D6Br9jZp.js +1 -0
  2251. package/templates/almadar-web-client/assets/index-DMUQy--j.css +1 -0
  2252. package/templates/almadar-web-client/assets/index-L7C6e4ND.js +1 -0
  2253. package/templates/almadar-web-client/assets/index-btUrBdGC.js +637 -0
  2254. package/templates/almadar-web-client/assets/indian-rupee-mjQbC7Pz.js +6 -0
  2255. package/templates/almadar-web-client/assets/infinity-CSZtWN6o.js +6 -0
  2256. package/templates/almadar-web-client/assets/info-DscsABwD.js +6 -0
  2257. package/templates/almadar-web-client/assets/infoDiagram-27XIBGKW-Daph3gcD.js +2 -0
  2258. package/templates/almadar-web-client/assets/init-Gi6I4Gst.js +1 -0
  2259. package/templates/almadar-web-client/assets/inspection-panel-WvZ6-znO.js +6 -0
  2260. package/templates/almadar-web-client/assets/instagram-CTMXZHSZ.js +6 -0
  2261. package/templates/almadar-web-client/assets/ishikawaDiagram-5VMMS53U-EYIP2FtZ.js +70 -0
  2262. package/templates/almadar-web-client/assets/iteration-ccw-C8EtbG-q.js +6 -0
  2263. package/templates/almadar-web-client/assets/iteration-cw-DBsdEHdn.js +6 -0
  2264. package/templates/almadar-web-client/assets/japanese-yen-0Z2vNLO1.js +6 -0
  2265. package/templates/almadar-web-client/assets/journeyDiagram-3NMN7TZE-Cha6ymQL.js +139 -0
  2266. package/templates/almadar-web-client/assets/joystick-jDuL2ZTh.js +6 -0
  2267. package/templates/almadar-web-client/assets/kanban-BvH8a5uZ.js +6 -0
  2268. package/templates/almadar-web-client/assets/kanban-definition-UXKFOSKX-C92GucLd.js +89 -0
  2269. package/templates/almadar-web-client/assets/katex-C5jXJg4s.js +257 -0
  2270. package/templates/almadar-web-client/assets/katexPlugin-NCDKOOQY-CuVG9w9A.js +3 -0
  2271. package/templates/almadar-web-client/assets/kayak-RHOGrWV3.js +6 -0
  2272. package/templates/almadar-web-client/assets/kernel-C1fB0PXe.js +2 -0
  2273. package/templates/almadar-web-client/assets/kernel-client-TZKGHJRY-DLUq6aeg.js +1 -0
  2274. package/templates/almadar-web-client/assets/key-D7z7rpSn.js +6 -0
  2275. package/templates/almadar-web-client/assets/key-round-CvQkbnku.js +6 -0
  2276. package/templates/almadar-web-client/assets/key-square-BZTrcvBD.js +6 -0
  2277. package/templates/almadar-web-client/assets/keyboard-98tfPyOG.js +6 -0
  2278. package/templates/almadar-web-client/assets/keyboard-music-ML32RR2S.js +6 -0
  2279. package/templates/almadar-web-client/assets/keyboard-off-0x6MZ05i.js +6 -0
  2280. package/templates/almadar-web-client/assets/lamp-Br1PoXDJ.js +6 -0
  2281. package/templates/almadar-web-client/assets/lamp-ceiling-DX5OX8rV.js +6 -0
  2282. package/templates/almadar-web-client/assets/lamp-desk--n3-byQA.js +6 -0
  2283. package/templates/almadar-web-client/assets/lamp-floor-CIoT8bEF.js +6 -0
  2284. package/templates/almadar-web-client/assets/lamp-wall-down-BqYzoBxr.js +6 -0
  2285. package/templates/almadar-web-client/assets/lamp-wall-up-Qhcr__Or.js +6 -0
  2286. package/templates/almadar-web-client/assets/land-plot-ldvqdv7v.js +6 -0
  2287. package/templates/almadar-web-client/assets/landmark-CwDu9BYL.js +6 -0
  2288. package/templates/almadar-web-client/assets/languages-CPyH7ouM.js +6 -0
  2289. package/templates/almadar-web-client/assets/laptop-minimal-BKhd6E1a.js +6 -0
  2290. package/templates/almadar-web-client/assets/laptop-minimal-check-DPdV_HSR.js +6 -0
  2291. package/templates/almadar-web-client/assets/laptop-x3Zz0Lwz.js +6 -0
  2292. package/templates/almadar-web-client/assets/lasso-CSyaRC8e.js +6 -0
  2293. package/templates/almadar-web-client/assets/lasso-select-CEAVqxdA.js +6 -0
  2294. package/templates/almadar-web-client/assets/laugh-BMX5-Pdi.js +6 -0
  2295. package/templates/almadar-web-client/assets/layers-2-BTi7ij1D.js +6 -0
  2296. package/templates/almadar-web-client/assets/layers-DVV05Ct8.js +6 -0
  2297. package/templates/almadar-web-client/assets/layers-plus-Czf1j9x8.js +6 -0
  2298. package/templates/almadar-web-client/assets/layout-CB6ppnbh.js +1 -0
  2299. package/templates/almadar-web-client/assets/layout-dashboard-B8xWlNnI.js +6 -0
  2300. package/templates/almadar-web-client/assets/layout-grid-CggU-l6_.js +6 -0
  2301. package/templates/almadar-web-client/assets/layout-list-CiDgeUT3.js +6 -0
  2302. package/templates/almadar-web-client/assets/layout-panel-left-7Q_a4lS_.js +6 -0
  2303. package/templates/almadar-web-client/assets/layout-panel-top-BlUHpv-v.js +6 -0
  2304. package/templates/almadar-web-client/assets/layout-template-DyRSg9kJ.js +6 -0
  2305. package/templates/almadar-web-client/assets/leaf-DnOUZJgp.js +6 -0
  2306. package/templates/almadar-web-client/assets/leaflet-Dgihpmma.css +1 -0
  2307. package/templates/almadar-web-client/assets/leaflet-src-SiV2a6g5.js +4 -0
  2308. package/templates/almadar-web-client/assets/leafy-green-BRucksjv.js +6 -0
  2309. package/templates/almadar-web-client/assets/lectern-BnFmU9WJ.js +6 -0
  2310. package/templates/almadar-web-client/assets/lens-concave-ZsEkdJSo.js +6 -0
  2311. package/templates/almadar-web-client/assets/lens-convex-DG1mkFrv.js +6 -0
  2312. package/templates/almadar-web-client/assets/library-CPb_uYht.js +6 -0
  2313. package/templates/almadar-web-client/assets/library-big-DZePmIOm.js +6 -0
  2314. package/templates/almadar-web-client/assets/life-buoy-ByNeelX2.js +6 -0
  2315. package/templates/almadar-web-client/assets/ligature-4osuMPKN.js +6 -0
  2316. package/templates/almadar-web-client/assets/lightbulb-off-CuHMmG7U.js +6 -0
  2317. package/templates/almadar-web-client/assets/line-dot-right-horizontal-B3_oFd5j.js +6 -0
  2318. package/templates/almadar-web-client/assets/line-squiggle-BexNyMZ3.js +6 -0
  2319. package/templates/almadar-web-client/assets/linear-DUe9UwqR.js +1 -0
  2320. package/templates/almadar-web-client/assets/link-2-off-Dk-pwKwW.js +6 -0
  2321. package/templates/almadar-web-client/assets/linkedin-zEGPv5hl.js +6 -0
  2322. package/templates/almadar-web-client/assets/list-check-CTQnRSXE.js +6 -0
  2323. package/templates/almadar-web-client/assets/list-checks-BT4obRcF.js +6 -0
  2324. package/templates/almadar-web-client/assets/list-chevrons-down-up-DPI0nam-.js +6 -0
  2325. package/templates/almadar-web-client/assets/list-chevrons-up-down-B0dpnkGC.js +6 -0
  2326. package/templates/almadar-web-client/assets/list-collapse-Ds_IcqP4.js +6 -0
  2327. package/templates/almadar-web-client/assets/list-end-CaDDDrMc.js +6 -0
  2328. package/templates/almadar-web-client/assets/list-filter-RQfBcn2R.js +6 -0
  2329. package/templates/almadar-web-client/assets/list-filter-plus-BMHoswtE.js +6 -0
  2330. package/templates/almadar-web-client/assets/list-indent-decrease-DpKQHvs2.js +6 -0
  2331. package/templates/almadar-web-client/assets/list-indent-increase-CPdLXsCP.js +6 -0
  2332. package/templates/almadar-web-client/assets/list-minus-zg0x53c5.js +6 -0
  2333. package/templates/almadar-web-client/assets/list-music-BXrHa0zk.js +6 -0
  2334. package/templates/almadar-web-client/assets/list-plus-DjNFDYae.js +6 -0
  2335. package/templates/almadar-web-client/assets/list-restart-DIdtSh7V.js +6 -0
  2336. package/templates/almadar-web-client/assets/list-start-NA4RmiSY.js +6 -0
  2337. package/templates/almadar-web-client/assets/list-todo-3-_dPRgi.js +6 -0
  2338. package/templates/almadar-web-client/assets/list-tree-CwdJn21w.js +6 -0
  2339. package/templates/almadar-web-client/assets/list-video-BcLnuiPr.js +6 -0
  2340. package/templates/almadar-web-client/assets/list-x-CCP4Ae1s.js +6 -0
  2341. package/templates/almadar-web-client/assets/loader-CCIGwi6S.js +6 -0
  2342. package/templates/almadar-web-client/assets/loader-pinwheel-Ct_TZpTn.js +6 -0
  2343. package/templates/almadar-web-client/assets/locate-DiFVZI_g.js +6 -0
  2344. package/templates/almadar-web-client/assets/locate-fixed-B615z1ZG.js +6 -0
  2345. package/templates/almadar-web-client/assets/locate-off-B2opNAhO.js +6 -0
  2346. package/templates/almadar-web-client/assets/lock-DBcrv1LG.js +6 -0
  2347. package/templates/almadar-web-client/assets/lock-keyhole-PRLr07gc.js +6 -0
  2348. package/templates/almadar-web-client/assets/lock-keyhole-open-C7Na0Ild.js +6 -0
  2349. package/templates/almadar-web-client/assets/lock-open-DE8OF57W.js +6 -0
  2350. package/templates/almadar-web-client/assets/log-in-CKSVCiJy.js +6 -0
  2351. package/templates/almadar-web-client/assets/log-out-jq58gbNK.js +6 -0
  2352. package/templates/almadar-web-client/assets/logs-BjO5hXO9.js +6 -0
  2353. package/templates/almadar-web-client/assets/lollipop-Rudsc6Dd.js +6 -0
  2354. package/templates/almadar-web-client/assets/luggage-D41bRl-g.js +6 -0
  2355. package/templates/almadar-web-client/assets/magnet-DFIxx_7M.js +6 -0
  2356. package/templates/almadar-web-client/assets/mail-CN_F-HCs.js +6 -0
  2357. package/templates/almadar-web-client/assets/mail-check-Bzpv6rYR.js +6 -0
  2358. package/templates/almadar-web-client/assets/mail-minus-Orq2BKmr.js +6 -0
  2359. package/templates/almadar-web-client/assets/mail-open-C_cgIVwj.js +6 -0
  2360. package/templates/almadar-web-client/assets/mail-plus-C4G5PJJE.js +6 -0
  2361. package/templates/almadar-web-client/assets/mail-question-mark-Cml2q8IJ.js +6 -0
  2362. package/templates/almadar-web-client/assets/mail-search-DGh-Mahy.js +6 -0
  2363. package/templates/almadar-web-client/assets/mail-warning-kXK3gqjm.js +6 -0
  2364. package/templates/almadar-web-client/assets/mail-x-DRosUnc2.js +6 -0
  2365. package/templates/almadar-web-client/assets/mailbox-DEL1ycl_.js +6 -0
  2366. package/templates/almadar-web-client/assets/mails-DoEHF_ex.js +6 -0
  2367. package/templates/almadar-web-client/assets/map-BkU-hOAx.js +6 -0
  2368. package/templates/almadar-web-client/assets/map-minus-C1lNZPxQ.js +6 -0
  2369. package/templates/almadar-web-client/assets/map-pin-B0W7HqF0.js +6 -0
  2370. package/templates/almadar-web-client/assets/map-pin-check-inside-BuFVcLQ2.js +6 -0
  2371. package/templates/almadar-web-client/assets/map-pin-check-lZw59adZ.js +6 -0
  2372. package/templates/almadar-web-client/assets/map-pin-house-BWQnocne.js +6 -0
  2373. package/templates/almadar-web-client/assets/map-pin-minus-Bj5iCCgb.js +6 -0
  2374. package/templates/almadar-web-client/assets/map-pin-minus-inside-r-sm_WnK.js +6 -0
  2375. package/templates/almadar-web-client/assets/map-pin-off-Bg0tp5jn.js +6 -0
  2376. package/templates/almadar-web-client/assets/map-pin-pen-DnoSGObN.js +6 -0
  2377. package/templates/almadar-web-client/assets/map-pin-plus-D8hV30tE.js +6 -0
  2378. package/templates/almadar-web-client/assets/map-pin-plus-inside-jCL5XSop.js +6 -0
  2379. package/templates/almadar-web-client/assets/map-pin-x-DSPNDXJh.js +6 -0
  2380. package/templates/almadar-web-client/assets/map-pin-x-inside--bCi1XJi.js +6 -0
  2381. package/templates/almadar-web-client/assets/map-pinned-uDimVfAQ.js +6 -0
  2382. package/templates/almadar-web-client/assets/map-plus-BNcwOlrj.js +6 -0
  2383. package/templates/almadar-web-client/assets/mars-lcnTapFm.js +6 -0
  2384. package/templates/almadar-web-client/assets/mars-stroke-DzsYtF49.js +6 -0
  2385. package/templates/almadar-web-client/assets/martini-DHTYPaTe.js +6 -0
  2386. package/templates/almadar-web-client/assets/maximize-2-CSX1wsci.js +6 -0
  2387. package/templates/almadar-web-client/assets/maximize-Bjip2En1.js +6 -0
  2388. package/templates/almadar-web-client/assets/medal-gx0lWn5F.js +6 -0
  2389. package/templates/almadar-web-client/assets/megaphone-DgBR26aX.js +6 -0
  2390. package/templates/almadar-web-client/assets/megaphone-off-DtAnZ1Nd.js +6 -0
  2391. package/templates/almadar-web-client/assets/meh-H3QZ2CDu.js +6 -0
  2392. package/templates/almadar-web-client/assets/memory-stick-D-Xg0MlQ.js +6 -0
  2393. package/templates/almadar-web-client/assets/merge-B7b0L6Yb.js +6 -0
  2394. package/templates/almadar-web-client/assets/mermaid.core-9cJ5MPJt.js +312 -0
  2395. package/templates/almadar-web-client/assets/message-circle-5comx6OR.js +6 -0
  2396. package/templates/almadar-web-client/assets/message-circle-code-B1WC0-BH.js +6 -0
  2397. package/templates/almadar-web-client/assets/message-circle-dashed-CauTO8S9.js +6 -0
  2398. package/templates/almadar-web-client/assets/message-circle-heart-DmU7acML.js +6 -0
  2399. package/templates/almadar-web-client/assets/message-circle-more-DQt4WrZ5.js +6 -0
  2400. package/templates/almadar-web-client/assets/message-circle-off-Dras1TuU.js +6 -0
  2401. package/templates/almadar-web-client/assets/message-circle-plus-BBGO43k4.js +6 -0
  2402. package/templates/almadar-web-client/assets/message-circle-question-mark-EZ0_mCtm.js +6 -0
  2403. package/templates/almadar-web-client/assets/message-circle-reply-DwkHuagY.js +6 -0
  2404. package/templates/almadar-web-client/assets/message-circle-warning-B8X5QPki.js +6 -0
  2405. package/templates/almadar-web-client/assets/message-circle-x-CTARwk9G.js +6 -0
  2406. package/templates/almadar-web-client/assets/message-square-Dnk8NACw.js +6 -0
  2407. package/templates/almadar-web-client/assets/message-square-code-p8tLB2EI.js +6 -0
  2408. package/templates/almadar-web-client/assets/message-square-dashed-CwxqtAHU.js +6 -0
  2409. package/templates/almadar-web-client/assets/message-square-diff-Dul-FaWT.js +6 -0
  2410. package/templates/almadar-web-client/assets/message-square-dot--3fp4l1O.js +6 -0
  2411. package/templates/almadar-web-client/assets/message-square-heart-mAbpff5p.js +6 -0
  2412. package/templates/almadar-web-client/assets/message-square-lock-C4GqVXaQ.js +6 -0
  2413. package/templates/almadar-web-client/assets/message-square-more-DOBcDVZg.js +6 -0
  2414. package/templates/almadar-web-client/assets/message-square-off-CHgD0-zQ.js +6 -0
  2415. package/templates/almadar-web-client/assets/message-square-plus-BPAvIuZl.js +6 -0
  2416. package/templates/almadar-web-client/assets/message-square-quote-Chiw6aV-.js +6 -0
  2417. package/templates/almadar-web-client/assets/message-square-reply-Ct_ZhzXU.js +6 -0
  2418. package/templates/almadar-web-client/assets/message-square-share-qXsjDV4V.js +6 -0
  2419. package/templates/almadar-web-client/assets/message-square-text-DHBHtALE.js +6 -0
  2420. package/templates/almadar-web-client/assets/message-square-warning-BJLAFY_d.js +6 -0
  2421. package/templates/almadar-web-client/assets/message-square-x-DmDfB0Hb.js +6 -0
  2422. package/templates/almadar-web-client/assets/messages-square-D2pBJep0.js +6 -0
  2423. package/templates/almadar-web-client/assets/mic-BsQ-44_z.js +6 -0
  2424. package/templates/almadar-web-client/assets/mic-off-DAnlzlOu.js +6 -0
  2425. package/templates/almadar-web-client/assets/mic-vocal-CFV0B7io.js +6 -0
  2426. package/templates/almadar-web-client/assets/microchip-DSXfcCv3.js +6 -0
  2427. package/templates/almadar-web-client/assets/microscope-C4kWjpAB.js +6 -0
  2428. package/templates/almadar-web-client/assets/microwave-BAZJX0Xp.js +6 -0
  2429. package/templates/almadar-web-client/assets/milestone-B0omJ-J9.js +6 -0
  2430. package/templates/almadar-web-client/assets/milk-BGVGJLuO.js +6 -0
  2431. package/templates/almadar-web-client/assets/milk-off-D9ik33s-.js +6 -0
  2432. package/templates/almadar-web-client/assets/mindmap-definition-YA3MSWOX-HqpEuwOl.js +96 -0
  2433. package/templates/almadar-web-client/assets/minimize-2-mnZNczUy.js +6 -0
  2434. package/templates/almadar-web-client/assets/minimize-C2AqUMLB.js +6 -0
  2435. package/templates/almadar-web-client/assets/mirror-rectangular-DctemDOL.js +6 -0
  2436. package/templates/almadar-web-client/assets/mirror-round-Dw4Lvx0H.js +6 -0
  2437. package/templates/almadar-web-client/assets/monitor-CdNNl5Vb.js +6 -0
  2438. package/templates/almadar-web-client/assets/monitor-check-CV3oW5GQ.js +6 -0
  2439. package/templates/almadar-web-client/assets/monitor-cloud-BJcg2beM.js +6 -0
  2440. package/templates/almadar-web-client/assets/monitor-cog-rPd6fvh3.js +6 -0
  2441. package/templates/almadar-web-client/assets/monitor-dot-CmaQMSk4.js +6 -0
  2442. package/templates/almadar-web-client/assets/monitor-down-koxpHIJm.js +6 -0
  2443. package/templates/almadar-web-client/assets/monitor-off-B6dUBVig.js +6 -0
  2444. package/templates/almadar-web-client/assets/monitor-pause-BlPHYRB6.js +6 -0
  2445. package/templates/almadar-web-client/assets/monitor-play-DDyiDN6G.js +6 -0
  2446. package/templates/almadar-web-client/assets/monitor-smartphone-EN2QZp_B.js +6 -0
  2447. package/templates/almadar-web-client/assets/monitor-speaker-PdVTNPLx.js +6 -0
  2448. package/templates/almadar-web-client/assets/monitor-stop-fCIhhVhS.js +6 -0
  2449. package/templates/almadar-web-client/assets/monitor-up-BsuPl5pb.js +6 -0
  2450. package/templates/almadar-web-client/assets/monitor-x-lkMnTJpX.js +6 -0
  2451. package/templates/almadar-web-client/assets/moon-BMjUnxlM.js +6 -0
  2452. package/templates/almadar-web-client/assets/moon-star-CMmF3KI5.js +6 -0
  2453. package/templates/almadar-web-client/assets/motorbike-CbhKdPkW.js +6 -0
  2454. package/templates/almadar-web-client/assets/mountain-C1cFeml5.js +6 -0
  2455. package/templates/almadar-web-client/assets/mountain-snow-CUFqRfUG.js +6 -0
  2456. package/templates/almadar-web-client/assets/mouse-D6tymXCJ.js +6 -0
  2457. package/templates/almadar-web-client/assets/mouse-off-B5-XWmle.js +6 -0
  2458. package/templates/almadar-web-client/assets/mouse-pointer-2-BDG4U7FT.js +6 -0
  2459. package/templates/almadar-web-client/assets/mouse-pointer-2-off-CBZOjeex.js +6 -0
  2460. package/templates/almadar-web-client/assets/mouse-pointer-BqlIm3wB.js +6 -0
  2461. package/templates/almadar-web-client/assets/mouse-pointer-ban-DSbLOJrK.js +6 -0
  2462. package/templates/almadar-web-client/assets/mouse-pointer-click-DFbJlReX.js +6 -0
  2463. package/templates/almadar-web-client/assets/move-3d-DfIXqZV3.js +6 -0
  2464. package/templates/almadar-web-client/assets/move-DRGeVrna.js +6 -0
  2465. package/templates/almadar-web-client/assets/move-diagonal-2-OvJhhikY.js +6 -0
  2466. package/templates/almadar-web-client/assets/move-diagonal-h9vdbDvy.js +6 -0
  2467. package/templates/almadar-web-client/assets/move-down-BXijO31q.js +6 -0
  2468. package/templates/almadar-web-client/assets/move-down-left-D-VOIQFN.js +6 -0
  2469. package/templates/almadar-web-client/assets/move-down-right-NNipTToU.js +6 -0
  2470. package/templates/almadar-web-client/assets/move-horizontal-DFtVdjY_.js +6 -0
  2471. package/templates/almadar-web-client/assets/move-left-Ddd_4eXl.js +6 -0
  2472. package/templates/almadar-web-client/assets/move-right-lXYCXfvc.js +6 -0
  2473. package/templates/almadar-web-client/assets/move-up-DH_wUJPg.js +6 -0
  2474. package/templates/almadar-web-client/assets/move-up-left-dhCzmskf.js +6 -0
  2475. package/templates/almadar-web-client/assets/move-up-right-CT9nqIB0.js +6 -0
  2476. package/templates/almadar-web-client/assets/move-vertical-CCnqLkS_.js +6 -0
  2477. package/templates/almadar-web-client/assets/music-2-DX6kDGFm.js +6 -0
  2478. package/templates/almadar-web-client/assets/music-3-CpIL-n64.js +6 -0
  2479. package/templates/almadar-web-client/assets/music-4-CaKBKu36.js +6 -0
  2480. package/templates/almadar-web-client/assets/music-DiY1XQEt.js +6 -0
  2481. package/templates/almadar-web-client/assets/navigation-2-BWZ8ZrOa.js +6 -0
  2482. package/templates/almadar-web-client/assets/navigation-2-off-DmGYtp5p.js +6 -0
  2483. package/templates/almadar-web-client/assets/navigation-5V_WRwhE.js +6 -0
  2484. package/templates/almadar-web-client/assets/navigation-off-BBlIKKy5.js +6 -0
  2485. package/templates/almadar-web-client/assets/network-ClL1ul4u.js +6 -0
  2486. package/templates/almadar-web-client/assets/newspaper-6NtVF0lr.js +6 -0
  2487. package/templates/almadar-web-client/assets/nfc-CRVOWCJS.js +6 -0
  2488. package/templates/almadar-web-client/assets/non-binary-BuV7gZNr.js +6 -0
  2489. package/templates/almadar-web-client/assets/notebook-R-kofc9u.js +6 -0
  2490. package/templates/almadar-web-client/assets/notebook-pen-Dw3wQ5_S.js +6 -0
  2491. package/templates/almadar-web-client/assets/notebook-tabs-C_snWv1r.js +6 -0
  2492. package/templates/almadar-web-client/assets/notebook-text-DEiexEBH.js +6 -0
  2493. package/templates/almadar-web-client/assets/notepad-text-Dddk7cy8.js +6 -0
  2494. package/templates/almadar-web-client/assets/notepad-text-dashed-S4QxVgoa.js +6 -0
  2495. package/templates/almadar-web-client/assets/nut-B1vkVEdq.js +6 -0
  2496. package/templates/almadar-web-client/assets/nut-off-Cwh27M_d.js +6 -0
  2497. package/templates/almadar-web-client/assets/octagon-DperaOu9.js +6 -0
  2498. package/templates/almadar-web-client/assets/octagon-alert-CSEiDw_a.js +6 -0
  2499. package/templates/almadar-web-client/assets/octagon-minus-DZqehY3N.js +6 -0
  2500. package/templates/almadar-web-client/assets/octagon-pause-B9rhmoQ7.js +6 -0
  2501. package/templates/almadar-web-client/assets/octagon-x-CUHBKIof.js +6 -0
  2502. package/templates/almadar-web-client/assets/omega-CPzxS1ne.js +6 -0
  2503. package/templates/almadar-web-client/assets/option-CF8lPPNZ.js +6 -0
  2504. package/templates/almadar-web-client/assets/orbit-D8eygc0z.js +6 -0
  2505. package/templates/almadar-web-client/assets/orbital_wasm_bg-DiPJht2Y.wasm +0 -0
  2506. package/templates/almadar-web-client/assets/ordinal-Cboi1Yqb.js +1 -0
  2507. package/templates/almadar-web-client/assets/origami-Dtm_BNOR.js +6 -0
  2508. package/templates/almadar-web-client/assets/package-2-2QhwgKem.js +6 -0
  2509. package/templates/almadar-web-client/assets/package-DFYvDPIA.js +6 -0
  2510. package/templates/almadar-web-client/assets/package-check-gJ2ozmOx.js +6 -0
  2511. package/templates/almadar-web-client/assets/package-minus-BFuCnLmu.js +6 -0
  2512. package/templates/almadar-web-client/assets/package-open-o7z9GG15.js +6 -0
  2513. package/templates/almadar-web-client/assets/package-plus-Bc3p-g0s.js +6 -0
  2514. package/templates/almadar-web-client/assets/package-search-B09BKL5y.js +6 -0
  2515. package/templates/almadar-web-client/assets/package-x-C2mQG5MI.js +6 -0
  2516. package/templates/almadar-web-client/assets/paint-bucket-DVXpbzpQ.js +6 -0
  2517. package/templates/almadar-web-client/assets/paint-roller-Df43K8We.js +6 -0
  2518. package/templates/almadar-web-client/assets/paintbrush-vertical-DxzI1WkE.js +6 -0
  2519. package/templates/almadar-web-client/assets/paintbrush-yt4picc9.js +6 -0
  2520. package/templates/almadar-web-client/assets/palette-CKCJaCEH.js +6 -0
  2521. package/templates/almadar-web-client/assets/panda-B_GyQApA.js +6 -0
  2522. package/templates/almadar-web-client/assets/panel-bottom-Bjh02OKW.js +6 -0
  2523. package/templates/almadar-web-client/assets/panel-bottom-close-BdDiIjKG.js +6 -0
  2524. package/templates/almadar-web-client/assets/panel-bottom-dashed-CRSvtOBn.js +6 -0
  2525. package/templates/almadar-web-client/assets/panel-bottom-open-J6KdRm9A.js +6 -0
  2526. package/templates/almadar-web-client/assets/panel-left-close--TupJk68.js +6 -0
  2527. package/templates/almadar-web-client/assets/panel-left-dashed-2PDU22dR.js +6 -0
  2528. package/templates/almadar-web-client/assets/panel-left-kTX2Pq9V.js +6 -0
  2529. package/templates/almadar-web-client/assets/panel-left-open-Bv1K91Yx.js +6 -0
  2530. package/templates/almadar-web-client/assets/panel-left-right-dashed-vcsWZqrI.js +6 -0
  2531. package/templates/almadar-web-client/assets/panel-right-BBcYww5t.js +6 -0
  2532. package/templates/almadar-web-client/assets/panel-right-close-CRzbNyjt.js +6 -0
  2533. package/templates/almadar-web-client/assets/panel-right-dashed-hpGSNyFo.js +6 -0
  2534. package/templates/almadar-web-client/assets/panel-right-open-MQ_dJ8LQ.js +6 -0
  2535. package/templates/almadar-web-client/assets/panel-top-BbBFHZEa.js +6 -0
  2536. package/templates/almadar-web-client/assets/panel-top-bottom-dashed-XbMxxXtp.js +6 -0
  2537. package/templates/almadar-web-client/assets/panel-top-close-C08nujsl.js +6 -0
  2538. package/templates/almadar-web-client/assets/panel-top-dashed-DDZF0jvn.js +6 -0
  2539. package/templates/almadar-web-client/assets/panel-top-open-DcfnT1gT.js +6 -0
  2540. package/templates/almadar-web-client/assets/panels-left-bottom-BuVl10zX.js +6 -0
  2541. package/templates/almadar-web-client/assets/panels-right-bottom-Cx01Yo_h.js +6 -0
  2542. package/templates/almadar-web-client/assets/panels-top-left-CMdmqDvj.js +6 -0
  2543. package/templates/almadar-web-client/assets/paperclip-CJmd1wvz.js +6 -0
  2544. package/templates/almadar-web-client/assets/parentheses-mKQv4vPS.js +6 -0
  2545. package/templates/almadar-web-client/assets/parking-meter-BWSnVn_C.js +6 -0
  2546. package/templates/almadar-web-client/assets/party-popper-YLq9IHiH.js +6 -0
  2547. package/templates/almadar-web-client/assets/pause-D-gyR_bk.js +6 -0
  2548. package/templates/almadar-web-client/assets/paw-print-CFAawHto.js +6 -0
  2549. package/templates/almadar-web-client/assets/pc-case-DezTXhVG.js +6 -0
  2550. package/templates/almadar-web-client/assets/pegDiagram-XKGWAZYB-kFgnKtQ4.js +1 -0
  2551. package/templates/almadar-web-client/assets/pen-CZqQ469S.js +6 -0
  2552. package/templates/almadar-web-client/assets/pen-line-BpRrcm61.js +6 -0
  2553. package/templates/almadar-web-client/assets/pen-off-ysBLzyqd.js +6 -0
  2554. package/templates/almadar-web-client/assets/pen-tool-Dwh5dlOA.js +6 -0
  2555. package/templates/almadar-web-client/assets/pencil-line-DGm504zK.js +6 -0
  2556. package/templates/almadar-web-client/assets/pencil-off-B2gXwt-4.js +6 -0
  2557. package/templates/almadar-web-client/assets/pencil-ruler-CrLZHjGN.js +6 -0
  2558. package/templates/almadar-web-client/assets/pentagon-BuIV5j-2.js +6 -0
  2559. package/templates/almadar-web-client/assets/percent-e-JRlyM4.js +6 -0
  2560. package/templates/almadar-web-client/assets/person-standing-DRgMOLPE.js +6 -0
  2561. package/templates/almadar-web-client/assets/philippine-peso-jUyaNz2S.js +6 -0
  2562. package/templates/almadar-web-client/assets/phone-BKAQ5CxT.js +6 -0
  2563. package/templates/almadar-web-client/assets/phone-call-CUDfXNfJ.js +6 -0
  2564. package/templates/almadar-web-client/assets/phone-forwarded-CaIiBnvo.js +6 -0
  2565. package/templates/almadar-web-client/assets/phone-incoming-Dk8uRwan.js +6 -0
  2566. package/templates/almadar-web-client/assets/phone-missed-BCDXb6rG.js +6 -0
  2567. package/templates/almadar-web-client/assets/phone-off-C0Cy1J0b.js +6 -0
  2568. package/templates/almadar-web-client/assets/phone-outgoing-zKj6Dp0e.js +6 -0
  2569. package/templates/almadar-web-client/assets/pi-BoGagiP8.js +6 -0
  2570. package/templates/almadar-web-client/assets/piano-DyNRaAKD.js +6 -0
  2571. package/templates/almadar-web-client/assets/pickaxe-CERuta-D.js +6 -0
  2572. package/templates/almadar-web-client/assets/picture-in-picture-2-C8dVxnrU.js +6 -0
  2573. package/templates/almadar-web-client/assets/picture-in-picture-a7qvSSrf.js +6 -0
  2574. package/templates/almadar-web-client/assets/pieDiagram-E7YTZNPT-CdvulMvM.js +39 -0
  2575. package/templates/almadar-web-client/assets/piggy-bank-DC1F4Uhu.js +6 -0
  2576. package/templates/almadar-web-client/assets/pilcrow-CeXsJ6uG.js +6 -0
  2577. package/templates/almadar-web-client/assets/pilcrow-left-Bo8ckgBS.js +6 -0
  2578. package/templates/almadar-web-client/assets/pilcrow-right-CD1uuffJ.js +6 -0
  2579. package/templates/almadar-web-client/assets/pill-agcdNoEX.js +6 -0
  2580. package/templates/almadar-web-client/assets/pill-bottle-BTe-YgKp.js +6 -0
  2581. package/templates/almadar-web-client/assets/pin-off-BDXqr10n.js +6 -0
  2582. package/templates/almadar-web-client/assets/pin-tAeAB3_G.js +6 -0
  2583. package/templates/almadar-web-client/assets/pipette-DmeSwoPL.js +6 -0
  2584. package/templates/almadar-web-client/assets/pizza-DYNMxrgU.js +6 -0
  2585. package/templates/almadar-web-client/assets/plane-Dzv2r8Si.js +6 -0
  2586. package/templates/almadar-web-client/assets/plane-landing-DpWrvJKi.js +6 -0
  2587. package/templates/almadar-web-client/assets/plane-takeoff-BvInZKnd.js +6 -0
  2588. package/templates/almadar-web-client/assets/plug-2-CB7LGBcr.js +6 -0
  2589. package/templates/almadar-web-client/assets/plug-Dy5nLr4h.js +6 -0
  2590. package/templates/almadar-web-client/assets/plug-zap-DFicvWYN.js +6 -0
  2591. package/templates/almadar-web-client/assets/pocket-DwTRBGjD.js +6 -0
  2592. package/templates/almadar-web-client/assets/pocket-knife-Cn4F-1TI.js +6 -0
  2593. package/templates/almadar-web-client/assets/podcast-BQPv47Z8.js +6 -0
  2594. package/templates/almadar-web-client/assets/pointer-Bmh6ZVO0.js +6 -0
  2595. package/templates/almadar-web-client/assets/pointer-off-B1y1Fdys.js +6 -0
  2596. package/templates/almadar-web-client/assets/popcorn-DKJPhPPa.js +6 -0
  2597. package/templates/almadar-web-client/assets/popsicle-HzuhaJiz.js +6 -0
  2598. package/templates/almadar-web-client/assets/pound-sterling-74DMm62L.js +6 -0
  2599. package/templates/almadar-web-client/assets/power-off-CoMdGiwk.js +6 -0
  2600. package/templates/almadar-web-client/assets/power-qb1BrZ9B.js +6 -0
  2601. package/templates/almadar-web-client/assets/presentation-n4N68a0W.js +6 -0
  2602. package/templates/almadar-web-client/assets/printer-check-DdzfXR2c.js +6 -0
  2603. package/templates/almadar-web-client/assets/printer-x-C4iP4Enj.js +6 -0
  2604. package/templates/almadar-web-client/assets/prism-X5YWKXO5-DpLrwz2h.js +8 -0
  2605. package/templates/almadar-web-client/assets/projector-BGDWhbt0.js +6 -0
  2606. package/templates/almadar-web-client/assets/proportions-CnIk2kq2.js +6 -0
  2607. package/templates/almadar-web-client/assets/puzzle-CLlovinT.js +6 -0
  2608. package/templates/almadar-web-client/assets/pyramid-CyIcbyZq.js +6 -0
  2609. package/templates/almadar-web-client/assets/qr-code-CSPFJr7E.js +6 -0
  2610. package/templates/almadar-web-client/assets/quadrantDiagram-AXDQQJYC-BRGkeKXr.js +7 -0
  2611. package/templates/almadar-web-client/assets/rabbit-CiYHwyBF.js +6 -0
  2612. package/templates/almadar-web-client/assets/radar-kJVm4Nk-.js +6 -0
  2613. package/templates/almadar-web-client/assets/radiation-oKoNBSwR.js +6 -0
  2614. package/templates/almadar-web-client/assets/radical-CkX3h5Er.js +6 -0
  2615. package/templates/almadar-web-client/assets/radio-C3hcx8Q7.js +6 -0
  2616. package/templates/almadar-web-client/assets/radio-receiver-DjwOVWwd.js +6 -0
  2617. package/templates/almadar-web-client/assets/radio-tower-DA5Caqyg.js +6 -0
  2618. package/templates/almadar-web-client/assets/radius-CJ2S2hCg.js +6 -0
  2619. package/templates/almadar-web-client/assets/rail-symbol-lFxiq0mk.js +6 -0
  2620. package/templates/almadar-web-client/assets/railroadDiagram-O6MQD6OU-DEub9DiW.js +1 -0
  2621. package/templates/almadar-web-client/assets/rainbow-DX7NzJ6a.js +6 -0
  2622. package/templates/almadar-web-client/assets/rat-DqLfVN4v.js +6 -0
  2623. package/templates/almadar-web-client/assets/ratio-BuDe274a.js +6 -0
  2624. package/templates/almadar-web-client/assets/react-xPT-2fRZ.js +49 -0
  2625. package/templates/almadar-web-client/assets/receipt-H0Zk22Fg.js +6 -0
  2626. package/templates/almadar-web-client/assets/receipt-cent-CGBwvGYH.js +6 -0
  2627. package/templates/almadar-web-client/assets/receipt-euro-NpT7VUw-.js +6 -0
  2628. package/templates/almadar-web-client/assets/receipt-indian-rupee-DS1H1Vq1.js +6 -0
  2629. package/templates/almadar-web-client/assets/receipt-japanese-yen-FeB74FBA.js +6 -0
  2630. package/templates/almadar-web-client/assets/receipt-pound-sterling-C7yy8zIr.js +6 -0
  2631. package/templates/almadar-web-client/assets/receipt-russian-ruble-BhbhM0sT.js +6 -0
  2632. package/templates/almadar-web-client/assets/receipt-swiss-franc-DvVVjok2.js +6 -0
  2633. package/templates/almadar-web-client/assets/receipt-text-DBd0GiVx.js +6 -0
  2634. package/templates/almadar-web-client/assets/receipt-turkish-lira-BvDLdPQX.js +6 -0
  2635. package/templates/almadar-web-client/assets/rectangle-circle-Ge5JdHwn.js +6 -0
  2636. package/templates/almadar-web-client/assets/rectangle-ellipsis-SkvmXa6P.js +6 -0
  2637. package/templates/almadar-web-client/assets/rectangle-goggles-XIlW64P_.js +6 -0
  2638. package/templates/almadar-web-client/assets/rectangle-horizontal-Bx0zIBGM.js +6 -0
  2639. package/templates/almadar-web-client/assets/rectangle-vertical-Wc2oGfCI.js +6 -0
  2640. package/templates/almadar-web-client/assets/recycle-CZ14GVX0.js +6 -0
  2641. package/templates/almadar-web-client/assets/redo-2-B-sfHrVF.js +6 -0
  2642. package/templates/almadar-web-client/assets/redo-dot-BGFbYbpq.js +6 -0
  2643. package/templates/almadar-web-client/assets/redo-h9rkyPxe.js +6 -0
  2644. package/templates/almadar-web-client/assets/refresh-ccw-DKxt39Vx.js +6 -0
  2645. package/templates/almadar-web-client/assets/refresh-ccw-dot-CZwav70x.js +6 -0
  2646. package/templates/almadar-web-client/assets/refresh-cw-off-BIAQLDKY.js +6 -0
  2647. package/templates/almadar-web-client/assets/refrigerator-s_66ab-T.js +6 -0
  2648. package/templates/almadar-web-client/assets/regex-CpXJFVNu.js +6 -0
  2649. package/templates/almadar-web-client/assets/remove-formatting-Ci3kDMAC.js +6 -0
  2650. package/templates/almadar-web-client/assets/repeat-1-DHd47EPJ.js +6 -0
  2651. package/templates/almadar-web-client/assets/repeat-2-BWcvKn2K.js +6 -0
  2652. package/templates/almadar-web-client/assets/repeat-DKE5PzIG.js +6 -0
  2653. package/templates/almadar-web-client/assets/replace-D78IP9rn.js +6 -0
  2654. package/templates/almadar-web-client/assets/replace-all-C1cHvlhQ.js +6 -0
  2655. package/templates/almadar-web-client/assets/reply-CCFr-fu9.js +6 -0
  2656. package/templates/almadar-web-client/assets/reply-all-B6rO_DkH.js +6 -0
  2657. package/templates/almadar-web-client/assets/requirementDiagram-BXWQKSXE-B6HmX1fF.js +84 -0
  2658. package/templates/almadar-web-client/assets/rewind-BWr_l9e6.js +6 -0
  2659. package/templates/almadar-web-client/assets/ribbon-CRngjpM8.js +6 -0
  2660. package/templates/almadar-web-client/assets/rocket-1H4ViBZV.js +6 -0
  2661. package/templates/almadar-web-client/assets/rocking-chair-CPdEHd4X.js +6 -0
  2662. package/templates/almadar-web-client/assets/roller-coaster-CKWqv---.js +6 -0
  2663. package/templates/almadar-web-client/assets/rose-ClQyreCr.js +6 -0
  2664. package/templates/almadar-web-client/assets/rotate-3d-BUNK93Gf.js +6 -0
  2665. package/templates/almadar-web-client/assets/rotate-ccw-key-CYBd56kz.js +6 -0
  2666. package/templates/almadar-web-client/assets/rotate-ccw-square-C7eVbLnI.js +6 -0
  2667. package/templates/almadar-web-client/assets/rotate-cw-DK3eJyk7.js +6 -0
  2668. package/templates/almadar-web-client/assets/rotate-cw-square-D7Gb341K.js +6 -0
  2669. package/templates/almadar-web-client/assets/route-D1eeq2A2.js +6 -0
  2670. package/templates/almadar-web-client/assets/route-off-BOkM7Rpe.js +6 -0
  2671. package/templates/almadar-web-client/assets/router-eMMMtW7Q.js +6 -0
  2672. package/templates/almadar-web-client/assets/rows-2-B-XCcuSR.js +6 -0
  2673. package/templates/almadar-web-client/assets/rows-3-BY3UYHbh.js +6 -0
  2674. package/templates/almadar-web-client/assets/rows-4-Opmmjgcq.js +6 -0
  2675. package/templates/almadar-web-client/assets/rss-CxkvlJ0C.js +6 -0
  2676. package/templates/almadar-web-client/assets/ruler-DRzo_AHx.js +6 -0
  2677. package/templates/almadar-web-client/assets/ruler-dimension-line-UTVMooee.js +6 -0
  2678. package/templates/almadar-web-client/assets/russian-ruble-CP8cjQlp.js +6 -0
  2679. package/templates/almadar-web-client/assets/sailboat-DcPEoncG.js +6 -0
  2680. package/templates/almadar-web-client/assets/salad-DeHvGuuW.js +6 -0
  2681. package/templates/almadar-web-client/assets/sandwich-BdYyfkEW.js +6 -0
  2682. package/templates/almadar-web-client/assets/sankeyDiagram-P5KCCOFB-b3CBmrw8.js +40 -0
  2683. package/templates/almadar-web-client/assets/satellite-dish-BwTSyMQo.js +6 -0
  2684. package/templates/almadar-web-client/assets/satellite-sTPdxNBc.js +6 -0
  2685. package/templates/almadar-web-client/assets/saudi-riyal-CequWSn_.js +6 -0
  2686. package/templates/almadar-web-client/assets/save-CvbcNyGB.js +6 -0
  2687. package/templates/almadar-web-client/assets/save-all-CKtsG8TF.js +6 -0
  2688. package/templates/almadar-web-client/assets/save-off-B59MxPdv.js +6 -0
  2689. package/templates/almadar-web-client/assets/scale-3d-Dz5_gyVi.js +6 -0
  2690. package/templates/almadar-web-client/assets/scale-DXRah5VV.js +6 -0
  2691. package/templates/almadar-web-client/assets/scaling-C61KEBop.js +6 -0
  2692. package/templates/almadar-web-client/assets/scan-W4dYrXBv.js +6 -0
  2693. package/templates/almadar-web-client/assets/scan-barcode-DsYOKLLQ.js +6 -0
  2694. package/templates/almadar-web-client/assets/scan-eye-CK7_Apsb.js +6 -0
  2695. package/templates/almadar-web-client/assets/scan-face-VEl8uucn.js +6 -0
  2696. package/templates/almadar-web-client/assets/scan-heart-Db3gFcXv.js +6 -0
  2697. package/templates/almadar-web-client/assets/scan-line-CU-6NTEI.js +6 -0
  2698. package/templates/almadar-web-client/assets/scan-qr-code-ChI83kR2.js +6 -0
  2699. package/templates/almadar-web-client/assets/scan-search-BtLBsDN2.js +6 -0
  2700. package/templates/almadar-web-client/assets/scan-text-BHsAZjBb.js +6 -0
  2701. package/templates/almadar-web-client/assets/school-BCmt8tcY.js +6 -0
  2702. package/templates/almadar-web-client/assets/scissors-C6oi6n_u.js +6 -0
  2703. package/templates/almadar-web-client/assets/scissors-line-dashed-CXMT-7N8.js +6 -0
  2704. package/templates/almadar-web-client/assets/scooter-B1c-7WvF.js +6 -0
  2705. package/templates/almadar-web-client/assets/screen-share-Bd2bQTac.js +6 -0
  2706. package/templates/almadar-web-client/assets/screen-share-off-DTbYUYns.js +6 -0
  2707. package/templates/almadar-web-client/assets/scroll-CnLfV9su.js +6 -0
  2708. package/templates/almadar-web-client/assets/scroll-text-Cv_MfGQX.js +6 -0
  2709. package/templates/almadar-web-client/assets/search-alert-CzSSZNWp.js +6 -0
  2710. package/templates/almadar-web-client/assets/search-check-CPu6_EKz.js +6 -0
  2711. package/templates/almadar-web-client/assets/search-code-DuVXK5sL.js +6 -0
  2712. package/templates/almadar-web-client/assets/search-slash-CwabAG_W.js +6 -0
  2713. package/templates/almadar-web-client/assets/search-x-DaXYr5bl.js +6 -0
  2714. package/templates/almadar-web-client/assets/section-FkVe3gHw.js +6 -0
  2715. package/templates/almadar-web-client/assets/send-D822uN1V.js +6 -0
  2716. package/templates/almadar-web-client/assets/send-horizontal-BVXKAsPO.js +6 -0
  2717. package/templates/almadar-web-client/assets/send-to-back-DrwGSpk4.js +6 -0
  2718. package/templates/almadar-web-client/assets/separator-horizontal-CwW3CG1-.js +6 -0
  2719. package/templates/almadar-web-client/assets/separator-vertical-REYmrS4s.js +6 -0
  2720. package/templates/almadar-web-client/assets/sequenceDiagram-WJ2MYXX4-DbAAtryd.js +162 -0
  2721. package/templates/almadar-web-client/assets/server-Cm5KJ-HN.js +6 -0
  2722. package/templates/almadar-web-client/assets/server-cog-DWhQq6BJ.js +6 -0
  2723. package/templates/almadar-web-client/assets/server-crash-CRbTnmEG.js +6 -0
  2724. package/templates/almadar-web-client/assets/server-off-Ca8hS6Sw.js +6 -0
  2725. package/templates/almadar-web-client/assets/settings-2-DJQwcCCb.js +6 -0
  2726. package/templates/almadar-web-client/assets/settings-C56VgRaS.js +6 -0
  2727. package/templates/almadar-web-client/assets/shapes-B37BxlCC.js +6 -0
  2728. package/templates/almadar-web-client/assets/share-DoxJ4D__.js +6 -0
  2729. package/templates/almadar-web-client/assets/sheet-CSJyO6gk.js +6 -0
  2730. package/templates/almadar-web-client/assets/shell-Bj-InXof.js +6 -0
  2731. package/templates/almadar-web-client/assets/shield-alert-D0UyA4H_.js +6 -0
  2732. package/templates/almadar-web-client/assets/shield-ban-B_2sMkNv.js +6 -0
  2733. package/templates/almadar-web-client/assets/shield-check-CUl2Y4zi.js +6 -0
  2734. package/templates/almadar-web-client/assets/shield-dadL772-.js +6 -0
  2735. package/templates/almadar-web-client/assets/shield-ellipsis-jZOsAI52.js +6 -0
  2736. package/templates/almadar-web-client/assets/shield-half-C6LDUMRg.js +6 -0
  2737. package/templates/almadar-web-client/assets/shield-minus-WRtdUegL.js +6 -0
  2738. package/templates/almadar-web-client/assets/shield-off-B0bydz5h.js +6 -0
  2739. package/templates/almadar-web-client/assets/shield-plus-BpYu3_QC.js +6 -0
  2740. package/templates/almadar-web-client/assets/shield-question-mark-BByTlUdP.js +6 -0
  2741. package/templates/almadar-web-client/assets/shield-user-DMZuY2S6.js +6 -0
  2742. package/templates/almadar-web-client/assets/shield-x-D-wDL27f.js +6 -0
  2743. package/templates/almadar-web-client/assets/ship-CnmKvRW-.js +6 -0
  2744. package/templates/almadar-web-client/assets/ship-wheel-B1ZAfD9O.js +6 -0
  2745. package/templates/almadar-web-client/assets/shirt-DhGDLt-U.js +6 -0
  2746. package/templates/almadar-web-client/assets/shopping-bag-CoG2vWJi.js +6 -0
  2747. package/templates/almadar-web-client/assets/shopping-basket-DoOK4Nz4.js +6 -0
  2748. package/templates/almadar-web-client/assets/shopping-cart-DXpsYVTI.js +6 -0
  2749. package/templates/almadar-web-client/assets/shovel-DfkapJ4a.js +6 -0
  2750. package/templates/almadar-web-client/assets/shower-head-6AR9ykIh.js +6 -0
  2751. package/templates/almadar-web-client/assets/shredder-a2ihsYbW.js +6 -0
  2752. package/templates/almadar-web-client/assets/shrimp-BfNlOk87.js +6 -0
  2753. package/templates/almadar-web-client/assets/shrink-Drn1XHVh.js +6 -0
  2754. package/templates/almadar-web-client/assets/shrub-K0Akb9Go.js +6 -0
  2755. package/templates/almadar-web-client/assets/shuffle-CjWeL4Vh.js +6 -0
  2756. package/templates/almadar-web-client/assets/sigma-DFt1lPCM.js +6 -0
  2757. package/templates/almadar-web-client/assets/signal-D1BffqQM.js +6 -0
  2758. package/templates/almadar-web-client/assets/signal-high-CRYKZvi5.js +6 -0
  2759. package/templates/almadar-web-client/assets/signal-low-CIgu8Lu6.js +6 -0
  2760. package/templates/almadar-web-client/assets/signal-medium-DUInPK3O.js +6 -0
  2761. package/templates/almadar-web-client/assets/signal-zero-CKC54Dt6.js +6 -0
  2762. package/templates/almadar-web-client/assets/signature-C5Z31gvM.js +6 -0
  2763. package/templates/almadar-web-client/assets/signpost-DrLgI2o4.js +6 -0
  2764. package/templates/almadar-web-client/assets/signpost-big-aPKUk4PI.js +6 -0
  2765. package/templates/almadar-web-client/assets/siren-GRV47IAC.js +6 -0
  2766. package/templates/almadar-web-client/assets/sizeCapture-INFHLROL-CHv3SmO2.js +1 -0
  2767. package/templates/almadar-web-client/assets/skip-back-DZDsO5g_.js +6 -0
  2768. package/templates/almadar-web-client/assets/skip-forward-eMvx1Kym.js +6 -0
  2769. package/templates/almadar-web-client/assets/skull-B8ACaaB2.js +6 -0
  2770. package/templates/almadar-web-client/assets/slack-IkYA1VCp.js +6 -0
  2771. package/templates/almadar-web-client/assets/slash-sdrTGqjH.js +6 -0
  2772. package/templates/almadar-web-client/assets/slice-B3Hp31Lb.js +6 -0
  2773. package/templates/almadar-web-client/assets/sliders-horizontal-Nz2LsdXW.js +6 -0
  2774. package/templates/almadar-web-client/assets/sliders-vertical-Cs6Om7IS.js +6 -0
  2775. package/templates/almadar-web-client/assets/smartphone-CWD6PIH_.js +6 -0
  2776. package/templates/almadar-web-client/assets/smartphone-charging-ldMb-sxf.js +6 -0
  2777. package/templates/almadar-web-client/assets/smartphone-nfc-DpCmi43f.js +6 -0
  2778. package/templates/almadar-web-client/assets/smile-Zh9AuXUG.js +6 -0
  2779. package/templates/almadar-web-client/assets/smile-plus-DcaDU3A3.js +6 -0
  2780. package/templates/almadar-web-client/assets/snail-CCgB4qBE.js +6 -0
  2781. package/templates/almadar-web-client/assets/snowflake-F5lHywbC.js +6 -0
  2782. package/templates/almadar-web-client/assets/soap-dispenser-droplet-BmO369zB.js +6 -0
  2783. package/templates/almadar-web-client/assets/sofa-Db_6TULv.js +6 -0
  2784. package/templates/almadar-web-client/assets/solar-panel-DT9HfsV8.js +6 -0
  2785. package/templates/almadar-web-client/assets/soup-BnLICmZB.js +6 -0
  2786. package/templates/almadar-web-client/assets/space-Bul0ydvV.js +6 -0
  2787. package/templates/almadar-web-client/assets/spade-1k4JwmaU.js +6 -0
  2788. package/templates/almadar-web-client/assets/sparkle-D_3j5N0n.js +6 -0
  2789. package/templates/almadar-web-client/assets/sparkles-CMgv3jM2.js +6 -0
  2790. package/templates/almadar-web-client/assets/speaker-C2-8nVl0.js +6 -0
  2791. package/templates/almadar-web-client/assets/speech-DZVsltF7.js +6 -0
  2792. package/templates/almadar-web-client/assets/spell-check-2-BJa3oGwI.js +6 -0
  2793. package/templates/almadar-web-client/assets/spell-check-Bx5PXVJ6.js +6 -0
  2794. package/templates/almadar-web-client/assets/spline-B8V57kyY.js +6 -0
  2795. package/templates/almadar-web-client/assets/spline-pointer-D43v9FSF.js +6 -0
  2796. package/templates/almadar-web-client/assets/split-BbCYJHqA.js +6 -0
  2797. package/templates/almadar-web-client/assets/spool-DPsFeGUe.js +6 -0
  2798. package/templates/almadar-web-client/assets/spotlight-DNmpqkED.js +6 -0
  2799. package/templates/almadar-web-client/assets/spray-can-CObHJrJF.js +6 -0
  2800. package/templates/almadar-web-client/assets/sprout-DOn-5GOI.js +6 -0
  2801. package/templates/almadar-web-client/assets/square-activity-CUK44vWv.js +6 -0
  2802. package/templates/almadar-web-client/assets/square-arrow-down-dmhhO03q.js +6 -0
  2803. package/templates/almadar-web-client/assets/square-arrow-down-left-BC_oplMu.js +6 -0
  2804. package/templates/almadar-web-client/assets/square-arrow-down-right-CnfoOkk0.js +6 -0
  2805. package/templates/almadar-web-client/assets/square-arrow-left-D2M81KiP.js +6 -0
  2806. package/templates/almadar-web-client/assets/square-arrow-out-down-left-DpNeLw6i.js +6 -0
  2807. package/templates/almadar-web-client/assets/square-arrow-out-down-right-CKprMFmM.js +6 -0
  2808. package/templates/almadar-web-client/assets/square-arrow-out-up-left-Dedfr1_l.js +6 -0
  2809. package/templates/almadar-web-client/assets/square-arrow-out-up-right-M-Qeo6FV.js +6 -0
  2810. package/templates/almadar-web-client/assets/square-arrow-right-Bv_5nFbw.js +6 -0
  2811. package/templates/almadar-web-client/assets/square-arrow-up-Bn74VfmZ.js +6 -0
  2812. package/templates/almadar-web-client/assets/square-arrow-up-left-DpGeacVZ.js +6 -0
  2813. package/templates/almadar-web-client/assets/square-arrow-up-right-BpkqggA_.js +6 -0
  2814. package/templates/almadar-web-client/assets/square-asterisk-CFiYSGh9.js +6 -0
  2815. package/templates/almadar-web-client/assets/square-bottom-dashed-scissors-p0CpTAie.js +6 -0
  2816. package/templates/almadar-web-client/assets/square-chart-gantt-CIDNbK3S.js +6 -0
  2817. package/templates/almadar-web-client/assets/square-check--mdEd_Uw.js +6 -0
  2818. package/templates/almadar-web-client/assets/square-check-big-Cc9AUXhP.js +6 -0
  2819. package/templates/almadar-web-client/assets/square-chevron-down-CS8UClci.js +6 -0
  2820. package/templates/almadar-web-client/assets/square-chevron-left-CNpV5GXe.js +6 -0
  2821. package/templates/almadar-web-client/assets/square-chevron-right-B5BG0D6g.js +6 -0
  2822. package/templates/almadar-web-client/assets/square-chevron-up-mWTyQmYk.js +6 -0
  2823. package/templates/almadar-web-client/assets/square-code-BVVsk31T.js +6 -0
  2824. package/templates/almadar-web-client/assets/square-dashed-CWkPYhAm.js +6 -0
  2825. package/templates/almadar-web-client/assets/square-dashed-bottom-BBK2eZGu.js +6 -0
  2826. package/templates/almadar-web-client/assets/square-dashed-bottom-code-TUDqpcpA.js +6 -0
  2827. package/templates/almadar-web-client/assets/square-dashed-kanban-C99gfJW8.js +6 -0
  2828. package/templates/almadar-web-client/assets/square-dashed-mouse-pointer-Bmd293cI.js +6 -0
  2829. package/templates/almadar-web-client/assets/square-dashed-top-solid-DLYD6ZQ9.js +6 -0
  2830. package/templates/almadar-web-client/assets/square-divide-CSthhIVF.js +6 -0
  2831. package/templates/almadar-web-client/assets/square-dot-Oz7wfniq.js +6 -0
  2832. package/templates/almadar-web-client/assets/square-equal-UTXcztkT.js +6 -0
  2833. package/templates/almadar-web-client/assets/square-function-jn8HJArj.js +6 -0
  2834. package/templates/almadar-web-client/assets/square-kanban-CTOTiext.js +6 -0
  2835. package/templates/almadar-web-client/assets/square-library-CFHEKtXy.js +6 -0
  2836. package/templates/almadar-web-client/assets/square-m-BbYbYx8H.js +6 -0
  2837. package/templates/almadar-web-client/assets/square-menu-DPEYjdUc.js +6 -0
  2838. package/templates/almadar-web-client/assets/square-minus-BiGMsF6r.js +6 -0
  2839. package/templates/almadar-web-client/assets/square-mouse-pointer-BdQhSEX6.js +6 -0
  2840. package/templates/almadar-web-client/assets/square-parking-CwzW9i0-.js +6 -0
  2841. package/templates/almadar-web-client/assets/square-parking-off-C41CjwOv.js +6 -0
  2842. package/templates/almadar-web-client/assets/square-pause-CR15xb7C.js +6 -0
  2843. package/templates/almadar-web-client/assets/square-pen-a_DYHhHn.js +6 -0
  2844. package/templates/almadar-web-client/assets/square-percent-DL_Yex57.js +6 -0
  2845. package/templates/almadar-web-client/assets/square-pi-BCvdfc6S.js +6 -0
  2846. package/templates/almadar-web-client/assets/square-pilcrow-CibX-dV7.js +6 -0
  2847. package/templates/almadar-web-client/assets/square-play-Cr9DIPbE.js +6 -0
  2848. package/templates/almadar-web-client/assets/square-plus-DktFnrtD.js +6 -0
  2849. package/templates/almadar-web-client/assets/square-power-CxeKM8iS.js +6 -0
  2850. package/templates/almadar-web-client/assets/square-radical-e4tuXVVg.js +6 -0
  2851. package/templates/almadar-web-client/assets/square-round-corner-DyHgsDdR.js +6 -0
  2852. package/templates/almadar-web-client/assets/square-scissors-Db5d8IyF.js +6 -0
  2853. package/templates/almadar-web-client/assets/square-sigma-dgHoIp-4.js +6 -0
  2854. package/templates/almadar-web-client/assets/square-slash-CYY6zYK5.js +6 -0
  2855. package/templates/almadar-web-client/assets/square-split-horizontal-Bzyn6euG.js +6 -0
  2856. package/templates/almadar-web-client/assets/square-split-vertical-D0sks1-I.js +6 -0
  2857. package/templates/almadar-web-client/assets/square-square-CgjuWXnY.js +6 -0
  2858. package/templates/almadar-web-client/assets/square-stack-DVQVxWvi.js +6 -0
  2859. package/templates/almadar-web-client/assets/square-star-jebmUvAg.js +6 -0
  2860. package/templates/almadar-web-client/assets/square-stop-D9DCpr4Z.js +6 -0
  2861. package/templates/almadar-web-client/assets/square-terminal-CA_gbuvc.js +6 -0
  2862. package/templates/almadar-web-client/assets/square-user-gsoUrieG.js +6 -0
  2863. package/templates/almadar-web-client/assets/square-user-round-Oz4TIVB8.js +6 -0
  2864. package/templates/almadar-web-client/assets/square-x-B1NXSMU4.js +6 -0
  2865. package/templates/almadar-web-client/assets/squares-exclude-DCpSUD_2.js +6 -0
  2866. package/templates/almadar-web-client/assets/squares-intersect-B00JnM8n.js +6 -0
  2867. package/templates/almadar-web-client/assets/squares-subtract-aLJHQbMo.js +6 -0
  2868. package/templates/almadar-web-client/assets/squares-unite-BMcNSiZ5.js +6 -0
  2869. package/templates/almadar-web-client/assets/squircle-IOMv5tOE.js +6 -0
  2870. package/templates/almadar-web-client/assets/squircle-dashed-bstdQDyM.js +6 -0
  2871. package/templates/almadar-web-client/assets/squirrel-BrfdlSKq.js +6 -0
  2872. package/templates/almadar-web-client/assets/stamp-COwKvpIq.js +6 -0
  2873. package/templates/almadar-web-client/assets/star-Dv0G6LDw.js +6 -0
  2874. package/templates/almadar-web-client/assets/star-half-SyN7ZJoT.js +6 -0
  2875. package/templates/almadar-web-client/assets/star-off-wmpkaZAo.js +6 -0
  2876. package/templates/almadar-web-client/assets/stateDiagram-D77RDMKH-BnZCWZlI.js +1 -0
  2877. package/templates/almadar-web-client/assets/stateDiagram-v2-MP3YSRHH-B_KB-ZLw.js +1 -0
  2878. package/templates/almadar-web-client/assets/step-back-BOK_JUoz.js +6 -0
  2879. package/templates/almadar-web-client/assets/step-forward-BHcxw-5S.js +6 -0
  2880. package/templates/almadar-web-client/assets/stethoscope-D-eofb1A.js +6 -0
  2881. package/templates/almadar-web-client/assets/sticker-Bh-g1m84.js +6 -0
  2882. package/templates/almadar-web-client/assets/sticky-note-BMyZYT26.js +6 -0
  2883. package/templates/almadar-web-client/assets/stone-a6C6oH-z.js +6 -0
  2884. package/templates/almadar-web-client/assets/store-PdxxGFah.js +6 -0
  2885. package/templates/almadar-web-client/assets/stretch-horizontal-BnQLCMqm.js +6 -0
  2886. package/templates/almadar-web-client/assets/stretch-vertical-xMg8lYad.js +6 -0
  2887. package/templates/almadar-web-client/assets/subscript-DRmnPNrI.js +6 -0
  2888. package/templates/almadar-web-client/assets/sun-BGAOSoUE.js +6 -0
  2889. package/templates/almadar-web-client/assets/sun-dim-BpJmcbCi.js +6 -0
  2890. package/templates/almadar-web-client/assets/sun-medium-BfpV7Vmf.js +6 -0
  2891. package/templates/almadar-web-client/assets/sun-moon-jgF66SJc.js +6 -0
  2892. package/templates/almadar-web-client/assets/sun-snow-Bef50nQD.js +6 -0
  2893. package/templates/almadar-web-client/assets/sunrise-K46fWqsf.js +6 -0
  2894. package/templates/almadar-web-client/assets/sunset-PreWrEjj.js +6 -0
  2895. package/templates/almadar-web-client/assets/superscript-BnrmtfF6.js +6 -0
  2896. package/templates/almadar-web-client/assets/swatch-book-m9Rq7SHt.js +6 -0
  2897. package/templates/almadar-web-client/assets/swimlanes-42K2YHIH-DyGp5DV4.js +1 -0
  2898. package/templates/almadar-web-client/assets/swimlanesDiagram-VR7AAH4N-DvEnke5G.js +8 -0
  2899. package/templates/almadar-web-client/assets/swiss-franc-CDmRER-r.js +6 -0
  2900. package/templates/almadar-web-client/assets/switch-camera-DaC79ZW8.js +6 -0
  2901. package/templates/almadar-web-client/assets/sword-C03jUtxD.js +6 -0
  2902. package/templates/almadar-web-client/assets/swords-DuO3OjDc.js +6 -0
  2903. package/templates/almadar-web-client/assets/syringe-Cazbi8Pd.js +6 -0
  2904. package/templates/almadar-web-client/assets/table-2-UyJEGtRc.js +6 -0
  2905. package/templates/almadar-web-client/assets/table-BWmMmn6F.js +6 -0
  2906. package/templates/almadar-web-client/assets/table-cells-merge-CiECWisR.js +6 -0
  2907. package/templates/almadar-web-client/assets/table-cells-split-DALAyx0R.js +6 -0
  2908. package/templates/almadar-web-client/assets/table-columns-split-CUChzmkC.js +6 -0
  2909. package/templates/almadar-web-client/assets/table-of-contents-DMsKi1xR.js +6 -0
  2910. package/templates/almadar-web-client/assets/table-properties-BFj756ir.js +6 -0
  2911. package/templates/almadar-web-client/assets/table-rows-split-BeqXZ2Qu.js +6 -0
  2912. package/templates/almadar-web-client/assets/tablet-BXIk_UaQ.js +6 -0
  2913. package/templates/almadar-web-client/assets/tablet-smartphone-aauXf0_y.js +6 -0
  2914. package/templates/almadar-web-client/assets/tablets-Cez6qH7p.js +6 -0
  2915. package/templates/almadar-web-client/assets/tag-Be979WKz.js +6 -0
  2916. package/templates/almadar-web-client/assets/tags-CRTfE3ag.js +6 -0
  2917. package/templates/almadar-web-client/assets/tally-1-Cfn79mzP.js +6 -0
  2918. package/templates/almadar-web-client/assets/tally-2-cypzSQd1.js +6 -0
  2919. package/templates/almadar-web-client/assets/tally-3-DYKlyWFP.js +6 -0
  2920. package/templates/almadar-web-client/assets/tally-4-BJus1Rw6.js +6 -0
  2921. package/templates/almadar-web-client/assets/tally-5-Bh5oz3-h.js +6 -0
  2922. package/templates/almadar-web-client/assets/tangent-DrnIm7XM.js +6 -0
  2923. package/templates/almadar-web-client/assets/target-rFwYA1sS.js +6 -0
  2924. package/templates/almadar-web-client/assets/telescope-BPC24QDn.js +6 -0
  2925. package/templates/almadar-web-client/assets/tent-Cw1SyHLb.js +6 -0
  2926. package/templates/almadar-web-client/assets/tent-tree-Bme5wGwk.js +6 -0
  2927. package/templates/almadar-web-client/assets/test-tube-DXJmCzcB.js +6 -0
  2928. package/templates/almadar-web-client/assets/test-tube-diagonal-DjtkDeBR.js +6 -0
  2929. package/templates/almadar-web-client/assets/test-tubes-DVvAG7vU.js +6 -0
  2930. package/templates/almadar-web-client/assets/text-align-center-BXCtSMs3.js +6 -0
  2931. package/templates/almadar-web-client/assets/text-align-end-js3T1sgO.js +6 -0
  2932. package/templates/almadar-web-client/assets/text-align-justify-CsihxUUD.js +6 -0
  2933. package/templates/almadar-web-client/assets/text-align-start-CfEOvqF-.js +6 -0
  2934. package/templates/almadar-web-client/assets/text-cursor-BArGQjCx.js +6 -0
  2935. package/templates/almadar-web-client/assets/text-cursor-input-D5Wx-yQO.js +6 -0
  2936. package/templates/almadar-web-client/assets/text-initial-8C9B3d6D.js +6 -0
  2937. package/templates/almadar-web-client/assets/text-quote-CEOm-1fA.js +6 -0
  2938. package/templates/almadar-web-client/assets/text-search-BIaBI_lx.js +6 -0
  2939. package/templates/almadar-web-client/assets/text-select-DV_xPLro.js +6 -0
  2940. package/templates/almadar-web-client/assets/theater-x_Wp1ntK.js +6 -0
  2941. package/templates/almadar-web-client/assets/thermometer-Bsju_Ne_.js +6 -0
  2942. package/templates/almadar-web-client/assets/thermometer-snowflake-W8wifNQ-.js +6 -0
  2943. package/templates/almadar-web-client/assets/thermometer-sun-3TC_XQm6.js +6 -0
  2944. package/templates/almadar-web-client/assets/thumbs-down-CcV9JBDg.js +6 -0
  2945. package/templates/almadar-web-client/assets/thumbs-up-DszxUYWe.js +6 -0
  2946. package/templates/almadar-web-client/assets/ticket-C-5C3KDU.js +6 -0
  2947. package/templates/almadar-web-client/assets/ticket-check-hn-ojOP-.js +6 -0
  2948. package/templates/almadar-web-client/assets/ticket-minus-CpGv86wb.js +6 -0
  2949. package/templates/almadar-web-client/assets/ticket-percent-BW91mhgC.js +6 -0
  2950. package/templates/almadar-web-client/assets/ticket-plus-Bo1KlZiO.js +6 -0
  2951. package/templates/almadar-web-client/assets/ticket-slash-B7n3r8Qo.js +6 -0
  2952. package/templates/almadar-web-client/assets/ticket-x-Brp9i4aq.js +6 -0
  2953. package/templates/almadar-web-client/assets/tickets-Ca83Kxhc.js +6 -0
  2954. package/templates/almadar-web-client/assets/tickets-plane-DasVPR0R.js +6 -0
  2955. package/templates/almadar-web-client/assets/timeline-definition-24CTP7MA-BOQwy2Vi.js +120 -0
  2956. package/templates/almadar-web-client/assets/timer-BiRIkwW-.js +6 -0
  2957. package/templates/almadar-web-client/assets/timer-off-DuzX2gEg.js +6 -0
  2958. package/templates/almadar-web-client/assets/timer-reset-DSWnpE4Z.js +6 -0
  2959. package/templates/almadar-web-client/assets/toggle-left-Bmb7VTur.js +6 -0
  2960. package/templates/almadar-web-client/assets/toggle-right-DoXDVUoc.js +6 -0
  2961. package/templates/almadar-web-client/assets/toilet-BDnn-gqp.js +6 -0
  2962. package/templates/almadar-web-client/assets/tool-case-DhXZXeCy.js +6 -0
  2963. package/templates/almadar-web-client/assets/toolbox-DKqiH6z5.js +6 -0
  2964. package/templates/almadar-web-client/assets/tornado-C0KomvdL.js +6 -0
  2965. package/templates/almadar-web-client/assets/torus-CWxadjjU.js +6 -0
  2966. package/templates/almadar-web-client/assets/touchpad-DTc3p-7O.js +6 -0
  2967. package/templates/almadar-web-client/assets/touchpad-off-Ta6mONtY.js +6 -0
  2968. package/templates/almadar-web-client/assets/towel-rack-DyjPwA4z.js +6 -0
  2969. package/templates/almadar-web-client/assets/tower-control-yQUk2alz.js +6 -0
  2970. package/templates/almadar-web-client/assets/toy-brick-DAc4IJ8X.js +6 -0
  2971. package/templates/almadar-web-client/assets/tractor-BhLkC49A.js +6 -0
  2972. package/templates/almadar-web-client/assets/traffic-cone-B-GW0zm1.js +6 -0
  2973. package/templates/almadar-web-client/assets/train-front-HxxUxAum.js +6 -0
  2974. package/templates/almadar-web-client/assets/train-front-tunnel-iyJX2M2o.js +6 -0
  2975. package/templates/almadar-web-client/assets/train-track-TPVqUqF9.js +6 -0
  2976. package/templates/almadar-web-client/assets/tram-front-CeV_lGTr.js +6 -0
  2977. package/templates/almadar-web-client/assets/transgender-DX2vB9hP.js +6 -0
  2978. package/templates/almadar-web-client/assets/tree-deciduous-BvkA-gqL.js +6 -0
  2979. package/templates/almadar-web-client/assets/tree-palm-D6ARAeKz.js +6 -0
  2980. package/templates/almadar-web-client/assets/tree-pine-xkuK1RQP.js +6 -0
  2981. package/templates/almadar-web-client/assets/trees-CheaByZG.js +6 -0
  2982. package/templates/almadar-web-client/assets/trello-Cda-nsdC.js +6 -0
  2983. package/templates/almadar-web-client/assets/trending-up-down-CJfyw_fC.js +6 -0
  2984. package/templates/almadar-web-client/assets/triangle-LXAtvlv1.js +6 -0
  2985. package/templates/almadar-web-client/assets/triangle-dashed-CmVeoDo0.js +6 -0
  2986. package/templates/almadar-web-client/assets/triangle-right-Bqf9PSIV.js +6 -0
  2987. package/templates/almadar-web-client/assets/trophy-BeA9zghY.js +6 -0
  2988. package/templates/almadar-web-client/assets/truck-LEMHzWLi.js +6 -0
  2989. package/templates/almadar-web-client/assets/truck-electric-Da4rz5Kh.js +6 -0
  2990. package/templates/almadar-web-client/assets/turkish-lira-Bywz_BhM.js +6 -0
  2991. package/templates/almadar-web-client/assets/turntable-Dlm2AIGZ.js +6 -0
  2992. package/templates/almadar-web-client/assets/turtle-DaR_-0bO.js +6 -0
  2993. package/templates/almadar-web-client/assets/tv-CpSsb1qV.js +6 -0
  2994. package/templates/almadar-web-client/assets/tv-minimal-Cq3iiQjF.js +6 -0
  2995. package/templates/almadar-web-client/assets/tv-minimal-play-DaEhhAwh.js +6 -0
  2996. package/templates/almadar-web-client/assets/twitch-TFW9cft2.js +6 -0
  2997. package/templates/almadar-web-client/assets/twitter-BO35j-RZ.js +6 -0
  2998. package/templates/almadar-web-client/assets/type-CWv5-acN.js +6 -0
  2999. package/templates/almadar-web-client/assets/type-outline-DVk5RwhS.js +6 -0
  3000. package/templates/almadar-web-client/assets/umbrella-DWfd-9DS.js +6 -0
  3001. package/templates/almadar-web-client/assets/umbrella-off-CWp4LMUT.js +6 -0
  3002. package/templates/almadar-web-client/assets/undo-2-C7-Z8ZTW.js +6 -0
  3003. package/templates/almadar-web-client/assets/undo-De5i0Rpx.js +6 -0
  3004. package/templates/almadar-web-client/assets/undo-dot-Bedkuolf.js +6 -0
  3005. package/templates/almadar-web-client/assets/unfold-horizontal-1x_OlDbR.js +6 -0
  3006. package/templates/almadar-web-client/assets/unfold-vertical-C43q6RNk.js +6 -0
  3007. package/templates/almadar-web-client/assets/ungroup-DYM2KPlZ.js +6 -0
  3008. package/templates/almadar-web-client/assets/university-CmQCOyqz.js +6 -0
  3009. package/templates/almadar-web-client/assets/unlink-2-lP657OQP.js +6 -0
  3010. package/templates/almadar-web-client/assets/unlink-CQboh8VF.js +6 -0
  3011. package/templates/almadar-web-client/assets/unplug-Buspd5BF.js +6 -0
  3012. package/templates/almadar-web-client/assets/usb-BlkzsjMY.js +6 -0
  3013. package/templates/almadar-web-client/assets/user-2Gz-6UIb.js +6 -0
  3014. package/templates/almadar-web-client/assets/user-check-CcIPgo4m.js +6 -0
  3015. package/templates/almadar-web-client/assets/user-cog-BH2ZWMiR.js +6 -0
  3016. package/templates/almadar-web-client/assets/user-key-DhwjFrQm.js +6 -0
  3017. package/templates/almadar-web-client/assets/user-lock-CvPaKNxe.js +6 -0
  3018. package/templates/almadar-web-client/assets/user-minus-DK9J24ay.js +6 -0
  3019. package/templates/almadar-web-client/assets/user-pen-CRosDXnD.js +6 -0
  3020. package/templates/almadar-web-client/assets/user-plus-CAeAgACD.js +6 -0
  3021. package/templates/almadar-web-client/assets/user-round-X32RhV4I.js +6 -0
  3022. package/templates/almadar-web-client/assets/user-round-check-Zcl-5y3i.js +6 -0
  3023. package/templates/almadar-web-client/assets/user-round-cog-DyGFg2zv.js +6 -0
  3024. package/templates/almadar-web-client/assets/user-round-key-BpklecN_.js +6 -0
  3025. package/templates/almadar-web-client/assets/user-round-minus-Dbj0fX8m.js +6 -0
  3026. package/templates/almadar-web-client/assets/user-round-pen-DzLjqJkU.js +6 -0
  3027. package/templates/almadar-web-client/assets/user-round-plus-Bt9pyk-1.js +6 -0
  3028. package/templates/almadar-web-client/assets/user-round-search-Dx7RlX2-.js +6 -0
  3029. package/templates/almadar-web-client/assets/user-round-x-DXnY7beo.js +6 -0
  3030. package/templates/almadar-web-client/assets/user-search-BSp11YO5.js +6 -0
  3031. package/templates/almadar-web-client/assets/user-star-Dp12vqxA.js +6 -0
  3032. package/templates/almadar-web-client/assets/user-x-sLB7qmFI.js +6 -0
  3033. package/templates/almadar-web-client/assets/users-X4O1LOKL.js +6 -0
  3034. package/templates/almadar-web-client/assets/users-round-CKtGRx4s.js +6 -0
  3035. package/templates/almadar-web-client/assets/utensils-Cx3CTBfV.js +6 -0
  3036. package/templates/almadar-web-client/assets/utensils-crossed-CbL1yAKZ.js +6 -0
  3037. package/templates/almadar-web-client/assets/utility-pole-By3zFRXb.js +6 -0
  3038. package/templates/almadar-web-client/assets/van-DwyCvktd.js +6 -0
  3039. package/templates/almadar-web-client/assets/variable-h47cSOV1.js +6 -0
  3040. package/templates/almadar-web-client/assets/vault-BjL2bSZa.js +6 -0
  3041. package/templates/almadar-web-client/assets/vector-square-DV5IbrUI.js +6 -0
  3042. package/templates/almadar-web-client/assets/vegan-BtKuGlFs.js +6 -0
  3043. package/templates/almadar-web-client/assets/venetian-mask-BdeavNHB.js +6 -0
  3044. package/templates/almadar-web-client/assets/vennDiagram-4TSXK5OY-PoWVUn5x.js +34 -0
  3045. package/templates/almadar-web-client/assets/venus-CnzJG4b3.js +6 -0
  3046. package/templates/almadar-web-client/assets/venus-and-mars-Dhs35xI0.js +6 -0
  3047. package/templates/almadar-web-client/assets/vibrate-CnadAyV7.js +6 -0
  3048. package/templates/almadar-web-client/assets/vibrate-off-rQMnxtX_.js +6 -0
  3049. package/templates/almadar-web-client/assets/video-DqxB_PAo.js +6 -0
  3050. package/templates/almadar-web-client/assets/video-off-CknRhpKm.js +6 -0
  3051. package/templates/almadar-web-client/assets/videotape-BvBP99hb.js +6 -0
  3052. package/templates/almadar-web-client/assets/view-CQ9eWW8Z.js +6 -0
  3053. package/templates/almadar-web-client/assets/voicemail-BNoy9z_G.js +6 -0
  3054. package/templates/almadar-web-client/assets/volleyball-vYhB3NBv.js +6 -0
  3055. package/templates/almadar-web-client/assets/volume-1-BPsplBjm.js +6 -0
  3056. package/templates/almadar-web-client/assets/volume-DUU0uhS1.js +6 -0
  3057. package/templates/almadar-web-client/assets/volume-off-Bh1aucVA.js +6 -0
  3058. package/templates/almadar-web-client/assets/vote-C2X1mUay.js +6 -0
  3059. package/templates/almadar-web-client/assets/wallet-axv-b7nU.js +6 -0
  3060. package/templates/almadar-web-client/assets/wallet-cards-0VU3LEoh.js +6 -0
  3061. package/templates/almadar-web-client/assets/wallet-minimal-NR4WiW9s.js +6 -0
  3062. package/templates/almadar-web-client/assets/wallpaper-CoUePf6A.js +6 -0
  3063. package/templates/almadar-web-client/assets/wand-CK8G6n4y.js +6 -0
  3064. package/templates/almadar-web-client/assets/wand-sparkles-KFMTEpQG.js +6 -0
  3065. package/templates/almadar-web-client/assets/wardleyDiagram-VM6X3IG4-GbKtiEnD.js +78 -0
  3066. package/templates/almadar-web-client/assets/warehouse--SoKUfWa.js +6 -0
  3067. package/templates/almadar-web-client/assets/washing-machine-D9MdepwD.js +6 -0
  3068. package/templates/almadar-web-client/assets/watch-CCipHViu.js +6 -0
  3069. package/templates/almadar-web-client/assets/waves-5CjrLIg-.js +6 -0
  3070. package/templates/almadar-web-client/assets/waves-arrow-down-BTP7E_wL.js +6 -0
  3071. package/templates/almadar-web-client/assets/waves-arrow-up-SEESLOrj.js +6 -0
  3072. package/templates/almadar-web-client/assets/waves-ladder-BohTWffX.js +6 -0
  3073. package/templates/almadar-web-client/assets/waypoints-D_867zHZ.js +6 -0
  3074. package/templates/almadar-web-client/assets/webcam-BAsILWQV.js +6 -0
  3075. package/templates/almadar-web-client/assets/webhook-Cm5szfW7.js +6 -0
  3076. package/templates/almadar-web-client/assets/webhook-off-Cq8uG9Xj.js +6 -0
  3077. package/templates/almadar-web-client/assets/weight-B2rqaCT2.js +6 -0
  3078. package/templates/almadar-web-client/assets/weight-tilde-CSPaqlgB.js +6 -0
  3079. package/templates/almadar-web-client/assets/wheat-CSacc6Ip.js +6 -0
  3080. package/templates/almadar-web-client/assets/wheat-off-DbPrq4rQ.js +6 -0
  3081. package/templates/almadar-web-client/assets/whole-word-s62Pym71.js +6 -0
  3082. package/templates/almadar-web-client/assets/wifi-CuStWJcF.js +6 -0
  3083. package/templates/almadar-web-client/assets/wifi-cog-JjECB2yS.js +6 -0
  3084. package/templates/almadar-web-client/assets/wifi-high-BfTom_zz.js +6 -0
  3085. package/templates/almadar-web-client/assets/wifi-low-BRTqOJlz.js +6 -0
  3086. package/templates/almadar-web-client/assets/wifi-off-Ciafir7l.js +6 -0
  3087. package/templates/almadar-web-client/assets/wifi-pen-683Gm4O2.js +6 -0
  3088. package/templates/almadar-web-client/assets/wifi-sync-DmhWbhLj.js +6 -0
  3089. package/templates/almadar-web-client/assets/wifi-zero-K-cEswnC.js +6 -0
  3090. package/templates/almadar-web-client/assets/wind-BjzMkJW8.js +6 -0
  3091. package/templates/almadar-web-client/assets/wind-arrow-down-BySJm48Q.js +6 -0
  3092. package/templates/almadar-web-client/assets/wine-B0IIXy3Y.js +6 -0
  3093. package/templates/almadar-web-client/assets/wine-off-D1gH5BUT.js +6 -0
  3094. package/templates/almadar-web-client/assets/workflow-BVXcnftj.js +6 -0
  3095. package/templates/almadar-web-client/assets/worm-JZv9Ympr.js +6 -0
  3096. package/templates/almadar-web-client/assets/wrench-DJJX7h-z.js +6 -0
  3097. package/templates/almadar-web-client/assets/xychartDiagram-S5SC5T6Z-CJFddrjZ.js +7 -0
  3098. package/templates/almadar-web-client/assets/youtube-5WyGR8CT.js +6 -0
  3099. package/templates/almadar-web-client/assets/zap-BVsXpN7_.js +6 -0
  3100. package/templates/almadar-web-client/assets/zap-off-DhvRVurF.js +6 -0
  3101. package/templates/almadar-web-client/index.html +17 -0
  3102. package/templates/chrome-shell/package.json +41 -0
  3103. package/templates/chrome-shell/panel.html +12 -0
  3104. package/templates/chrome-shell/pnpm-workspace.yaml +12 -0
  3105. package/templates/chrome-shell/postcss.config.js +6 -0
  3106. package/templates/chrome-shell/scripts/finalize.mjs +9 -0
  3107. package/templates/chrome-shell/src/channel.ts +26 -0
  3108. package/templates/chrome-shell/src/config.ts +35 -0
  3109. package/templates/chrome-shell/src/content.ts +4 -0
  3110. package/templates/chrome-shell/src/generated/assets.json +1 -0
  3111. package/templates/chrome-shell/src/generated/embedder.ts +3 -0
  3112. package/templates/chrome-shell/src/generated/manifest.json +1 -0
  3113. package/templates/chrome-shell/src/generated/secret-ports.ts +3 -0
  3114. package/templates/chrome-shell/src/generated/themes.css +0 -0
  3115. package/templates/chrome-shell/src/index.css +19 -0
  3116. package/templates/chrome-shell/src/panel.tsx +36 -0
  3117. package/templates/chrome-shell/src/worker.ts +71 -0
  3118. package/templates/chrome-shell/tailwind.config.js +12 -0
  3119. package/templates/chrome-shell/tsconfig.json +15 -0
  3120. package/templates/chrome-shell/vite.config.ts +21 -0
  3121. package/templates/chrome-shell/vite.content.config.ts +10 -0
  3122. package/templates/almadar-shell/packages/client/src/features/auth/SignOutListener.tsx +0 -11
  3123. package/templates/almadar-shell/packages/client/src/features/auth/__tests__/SignOutListener.test.tsx +0 -44
  3124. package/templates/almadar-shell/packages/client/src/navigation/index.ts +0 -55
  3125. package/templates/almadar-shell/packages/server/src/app.ts +0 -94
  3126. package/templates/almadar-shell/packages/server/src/hooks-providers.ts +0 -11
  3127. package/templates/almadar-shell/packages/server/src/routes.ts +0 -11
  3128. package/templates/almadar-shell/packages/server/src/services/clients.ts +0 -17
  3129. package/templates/almadar-shell/packages/server/src/sse.ts +0 -20
  3130. package/templates/almadar-shell/packages/server/src/types/express.d.ts +0 -11
  3131. package/templates/almadar-shell/packages/server/src/viewer.ts +0 -22
  3132. package/templates/almadar-shell-hono/LICENSE +0 -72
  3133. package/templates/almadar-shell-hono/README.md +0 -25
  3134. package/templates/almadar-shell-hono/locales/en.json +0 -120
  3135. package/templates/almadar-shell-hono/package.json +0 -38
  3136. package/templates/almadar-shell-hono/packages/client/eslint.config.cjs +0 -23
  3137. package/templates/almadar-shell-hono/packages/client/index.html +0 -13
  3138. package/templates/almadar-shell-hono/packages/client/package-lock.json +0 -9750
  3139. package/templates/almadar-shell-hono/packages/client/package.json +0 -65
  3140. package/templates/almadar-shell-hono/packages/client/postcss.config.js +0 -6
  3141. package/templates/almadar-shell-hono/packages/client/scripts/route-documents.mjs +0 -141
  3142. package/templates/almadar-shell-hono/packages/client/src/App.tsx +0 -104
  3143. package/templates/almadar-shell-hono/packages/client/src/config/auth.ts +0 -68
  3144. package/templates/almadar-shell-hono/packages/client/src/features/auth/AuthContext.tsx +0 -10
  3145. package/templates/almadar-shell-hono/packages/client/src/features/auth/SignOutListener.tsx +0 -11
  3146. package/templates/almadar-shell-hono/packages/client/src/features/auth/__tests__/SignOutListener.test.tsx +0 -44
  3147. package/templates/almadar-shell-hono/packages/client/src/features/auth/components/Login.tsx +0 -222
  3148. package/templates/almadar-shell-hono/packages/client/src/features/auth/components/PersonaSwitcher.tsx +0 -48
  3149. package/templates/almadar-shell-hono/packages/client/src/features/auth/components/UserProfile.tsx +0 -68
  3150. package/templates/almadar-shell-hono/packages/client/src/features/auth/components/index.ts +0 -2
  3151. package/templates/almadar-shell-hono/packages/client/src/features/auth/index.ts +0 -11
  3152. package/templates/almadar-shell-hono/packages/client/src/features/auth/types.ts +0 -10
  3153. package/templates/almadar-shell-hono/packages/client/src/generated/index.ts +0 -13
  3154. package/templates/almadar-shell-hono/packages/client/src/index.css +0 -36
  3155. package/templates/almadar-shell-hono/packages/client/src/main.tsx +0 -8
  3156. package/templates/almadar-shell-hono/packages/client/src/navigation/index.ts +0 -55
  3157. package/templates/almadar-shell-hono/packages/client/src/pages/index.ts +0 -12
  3158. package/templates/almadar-shell-hono/packages/client/tailwind-preset.cjs +0 -259
  3159. package/templates/almadar-shell-hono/packages/client/tailwind.config.js +0 -24
  3160. package/templates/almadar-shell-hono/packages/client/tsconfig.json +0 -33
  3161. package/templates/almadar-shell-hono/packages/client/vite.config.ts +0 -50
  3162. package/templates/almadar-shell-hono/packages/server/eslint.config.cjs +0 -19
  3163. package/templates/almadar-shell-hono/packages/server/package.json +0 -38
  3164. package/templates/almadar-shell-hono/packages/server/pnpm-lock.yaml +0 -4665
  3165. package/templates/almadar-shell-hono/packages/server/scripts/emulators.mjs +0 -10
  3166. package/templates/almadar-shell-hono/packages/server/src/app.ts +0 -79
  3167. package/templates/almadar-shell-hono/packages/server/src/hooks-providers.ts +0 -11
  3168. package/templates/almadar-shell-hono/packages/server/src/index.ts +0 -72
  3169. package/templates/almadar-shell-hono/packages/server/src/routes.ts +0 -12
  3170. package/templates/almadar-shell-hono/packages/server/src/serve.ts +0 -49
  3171. package/templates/almadar-shell-hono/packages/server/src/services/clients.ts +0 -17
  3172. package/templates/almadar-shell-hono/packages/server/src/sse.ts +0 -20
  3173. package/templates/almadar-shell-hono/packages/server/src/viewer.ts +0 -22
  3174. package/templates/almadar-shell-hono/packages/server/tsconfig.json +0 -23
  3175. package/templates/almadar-shell-hono/packages/shared/package.json +0 -25
  3176. package/templates/almadar-shell-hono/packages/shared/pnpm-lock.yaml +0 -919
  3177. package/templates/almadar-shell-hono/packages/shared/src/index.ts +0 -2
  3178. package/templates/almadar-shell-hono/packages/shared/tsconfig.json +0 -17
  3179. package/templates/almadar-shell-hono/packages/shared/tsup.config.ts +0 -10
  3180. package/templates/almadar-shell-hono/pnpm-lock.yaml +0 -12931
  3181. package/templates/almadar-shell-hono/pnpm-workspace.yaml +0 -2
  3182. package/templates/almadar-shell-hono/routes.json +0 -4
  3183. package/templates/almadar-shell-hono/tsup.config.ts +0 -13
  3184. package/templates/almadar-shell-hono/turbo.json +0 -17
  3185. package/templates/almadar-shell-hono/vitest.config.ts +0 -8
@@ -0,0 +1,2456 @@
1
+ /**
2
+ * CodeBlock Molecule Component
3
+ *
4
+ * A syntax-highlighted code block with copy-to-clipboard functionality.
5
+ * Preserves scroll position during re-renders.
6
+ *
7
+ * Event Contract:
8
+ * - Emits: UI:COPY_CODE { language, success }
9
+ * - Emits: UI:EDITOR_FOCUS { editorId }, UI:EDITOR_BLUR { editorId } (the declared `onEditorFocus` / `onEditorBlur`)
10
+ * - Reports focus and blur to EditorFocusContext, which the keyboard router reads
11
+ *
12
+ * The editor capability props (`onMotion` / `onOperate` / `onInsertText` /
13
+ * `onSetMode`) are declarative bus LISTENS (`EventListen<P>`), not emits —
14
+ * `extractEventsFromJSDoc` (tools/almadar-pattern-sync/parser.ts) only parses
15
+ * "Emits:" lines, so they are omitted here; the registry extractor picks them
16
+ * up structurally via the `EventListen<P>` brand on each prop instead.
17
+ */
18
+
19
+ import React, { useState, useRef, useLayoutEffect, useEffect, useMemo, useCallback } from 'react';
20
+ import { cn } from '../../../../core';
21
+ import type { EditorMotion, EditorOperator } from '../../../../lib/editorMotions';
22
+ import { Card, Typography } from '../../../../core';
23
+ import { Tabs, type TabItem } from '../Tabs';
24
+ import { LoadingState } from '../LoadingState';
25
+ import { ErrorState } from '../ErrorState';
26
+ import { EmptyState } from '../EmptyState';
27
+ import { Copy, Check, FileText, Code as CodeIcon, WrapText } from 'lucide-react';
28
+ import type { UiError } from '../../../../core';
29
+ import type { SyntaxHighlighterProps } from 'react-syntax-highlighter';
30
+ import { ORB_COLORS, translateLolo, translateOrb } from '@almadar/syntax';
31
+ import { hasKernelEvaluator } from '@almadar/core';
32
+ import { useKernelEngine } from '../../../../providers/KernelEngineContext';
33
+ import { getVocabulary, type LanguageCode } from '@almadar/core/i18n';
34
+
35
+ // ── The highlighter, loaded on demand ────────────────────────────────────────
36
+ // PrismLight, its grammars and schemes live in `./prism` and load the first time a block mounts (G-UI-105); until
37
+ // then a block shows its code as plain monospace text.
38
+ type PrismModule = typeof import('./prism.js');
39
+ type Prism = PrismModule['prism'];
40
+ let loadedPrism: Prism | undefined;
41
+ let prismLoad: Promise<PrismModule> | undefined;
42
+ let programLanguagesRegistered = false;
43
+
44
+ function loadPrismModule(): Promise<PrismModule> {
45
+ prismLoad ??= import('./prism.js').then((module) => {
46
+ loadedPrism = module.prism;
47
+ return module;
48
+ });
49
+ return prismLoad;
50
+ }
51
+
52
+ // The orb and lolo grammars read the native language packs, which install with the kernel.
53
+ function registerProgramLanguagesOnce(module: PrismModule): void {
54
+ if (programLanguagesRegistered || !hasKernelEvaluator()) return;
55
+ module.registerProgramLanguages();
56
+ programLanguagesRegistered = true;
57
+ }
58
+
59
+ /** Load the highlighter ahead of the first block (an app that shows code at once, a test): blocks then paint highlighted. */
60
+ export async function preloadCodeHighlighter(): Promise<void> {
61
+ registerProgramLanguagesOnce(await loadPrismModule());
62
+ }
63
+
64
+ /** The highlighter, once loaded, with the program grammars registered once the provider's kernel is in; a block re-renders on each. */
65
+ function usePrism(): Prism | undefined {
66
+ const engine = useKernelEngine();
67
+ const [prism, setPrism] = useState(loadedPrism);
68
+ const [programReady, setProgramReady] = useState(programLanguagesRegistered);
69
+ useEffect(() => {
70
+ if (prism !== undefined && programReady) return;
71
+ let active = true;
72
+ void loadPrismModule().then(async (module) => {
73
+ registerProgramLanguagesOnce(module);
74
+ if (active) setPrism(module.prism);
75
+ if (!programLanguagesRegistered && engine !== null) {
76
+ await engine.loadModule();
77
+ registerProgramLanguagesOnce(module);
78
+ }
79
+ if (active) setProgramReady(programLanguagesRegistered);
80
+ });
81
+ return () => { active = false; };
82
+ }, [prism, programReady, engine]);
83
+ return prism;
84
+ }
85
+
86
+ /** The highlighter a renderer callback runs with: it only runs inside a highlighter, which is loaded. */
87
+ function prismOrThrow(): Prism {
88
+ if (loadedPrism === undefined) throw new Error('CodeBlock: the highlighter renderer ran before the highlighter loaded');
89
+ return loadedPrism;
90
+ }
91
+
92
+ // ── Dynamic Prism language loading ───────────────────────────────────────────
93
+ // Any language outside the static set above is fetched on demand. Because
94
+ // `@almadar/ui` is pre-bundled by the consumer's bundler, a template-literal
95
+ // dynamic import here would not be code-split — so the loader is injected from
96
+ // app source (where the bundler can split each grammar into its own lazy chunk)
97
+ // via `registerCodeLanguageLoader`. Apps call it once at bootstrap.
98
+ const dynamicallyLoaded = new Set<string>();
99
+
100
+ /** A PrismLight grammar module's default export: a function that registers
101
+ * token definitions on the Prism/refractor instance passed to it. */
102
+ export type PrismLanguageGrammar = (prism: object) => void;
103
+
104
+ /** A consumer-supplied async grammar fetcher. Returns the language module
105
+ * default (registered with PrismLight), or `null` if no grammar exists. */
106
+ export type CodeLanguageLoader = (lang: string) => Promise<PrismLanguageGrammar | null>;
107
+
108
+ export type ErrorLineSeverity = 'error' | 'warning';
109
+
110
+ function errorLineMap(
111
+ lines: ReadonlyMap<number, ErrorLineSeverity> | Readonly<Record<string, ErrorLineSeverity>> | undefined,
112
+ ): ReadonlyMap<number, ErrorLineSeverity> | undefined {
113
+ if (lines === undefined || lines instanceof Map) return lines;
114
+ return new Map(Object.entries(lines).map(([line, severity]): [number, ErrorLineSeverity] => [Number(line), severity]));
115
+ }
116
+
117
+ let codeLanguageLoader: CodeLanguageLoader | null = null;
118
+
119
+ /** Wire up a dynamic language-grammar loader. Must be called from app source
120
+ * (not a pre-bundled dependency) so the bundler can split grammars into chunks. */
121
+ export function registerCodeLanguageLoader(loader: CodeLanguageLoader | null): void {
122
+ codeLanguageLoader = loader;
123
+ }
124
+
125
+ function isLanguageRegistered(lang: string): boolean {
126
+ return loadedPrism !== undefined && (CODE_LANGUAGE_SET.has(lang) || dynamicallyLoaded.has(lang));
127
+ }
128
+
129
+ async function loadPrismLanguage(lang: string): Promise<void> {
130
+ await loadPrismModule();
131
+ if (isLanguageRegistered(lang)) return;
132
+ try {
133
+ const grammar = codeLanguageLoader ? await codeLanguageLoader(lang) : null;
134
+ // Fallback: no dedicated grammar → register the generic C-like base grammar
135
+ // under this language id so obscure code still gets basic token coloring
136
+ // (comments, strings, numbers, keywords) instead of plain text.
137
+ const { prism } = await loadPrismModule();
138
+ prism.SyntaxHighlighter.registerLanguage(lang, grammar ?? prism.clike);
139
+ dynamicallyLoaded.add(lang);
140
+ } catch {
141
+ dynamicallyLoaded.add(lang);
142
+ }
143
+ }
144
+
145
+ type SyntaxScheme = 'light' | 'dark';
146
+ type SyntaxPalette = (typeof ORB_COLORS)[SyntaxScheme];
147
+
148
+ // AVL-aligned style overrides for .orb token classes
149
+ const orbStyleOverrides = (c: SyntaxPalette): Record<string, React.CSSProperties> => ({
150
+ 'orb-binding': { color: c.binding, fontWeight: 'bold' },
151
+ 'orb-effect': { color: c.effect, fontWeight: 'bold' },
152
+ 'orb-event': { color: c.event },
153
+ 'orb-slot': { color: c.uiSlot },
154
+ 'orb-structural': { color: c.structural },
155
+ 'orb-field-type': { color: c.fieldType },
156
+ 'orb-persistence': { color: c.persistence },
157
+ 'orb-pattern': { color: c.pattern },
158
+ 'orb-behavior': { color: c.behavior },
159
+ 'orb-unknown-op': { color: c.error, textDecoration: 'wavy underline' },
160
+ 'orb-op-arithmetic': { color: c.arithmetic, fontWeight: 'bold' },
161
+ 'orb-op-comparison': { color: c.comparison },
162
+ 'orb-op-logic': { color: c.logic },
163
+ 'orb-op-string': { color: c.string },
164
+ 'orb-op-collection': { color: c.collection },
165
+ 'orb-op-time': { color: c.time },
166
+ 'orb-op-control': { color: c.control },
167
+ 'orb-op-async': { color: c.async },
168
+ });
169
+
170
+ // AVL-aligned style overrides for .lolo token classes (Haskell-inspired palette)
171
+ const loloStyleOverrides = (c: SyntaxPalette): Record<string, React.CSSProperties> => ({
172
+ 'lolo-binding': { color: c.binding, fontWeight: 'bold' },
173
+ 'lolo-event': { color: c.event },
174
+ 'lolo-effect': { color: c.effect, fontWeight: 'bold' },
175
+ 'keyword': { color: c.loloKeyword },
176
+ 'lolo-constructor': { color: c.loloConstructor },
177
+ 'lolo-arrow': { color: c.loloArrow },
178
+ 'lolo-reference': { color: c.loloReference },
179
+ 'lolo-type': { color: c.fieldType },
180
+ 'lolo-persistence': { color: c.persistence },
181
+ 'lolo-unknown-op': { color: c.error },
182
+ 'lolo-op-arithmetic': { color: c.arithmetic, fontWeight: 'bold' },
183
+ 'lolo-op-comparison': { color: c.comparison },
184
+ 'lolo-op-logic': { color: c.logic },
185
+ 'lolo-op-string': { color: c.string },
186
+ 'lolo-op-collection': { color: c.collection },
187
+ 'lolo-op-time': { color: c.time },
188
+ 'lolo-op-control': { color: c.control },
189
+ 'lolo-op-async': { color: c.async },
190
+ });
191
+
192
+ type SchemeStyles = { base: Record<string, React.CSSProperties>; orb: Record<string, React.CSSProperties>; lolo: Record<string, React.CSSProperties> };
193
+ const HIGHLIGHT_STYLES = new Map<SyntaxScheme, SchemeStyles>();
194
+
195
+ /** A scheme's style sheets, built once from the loaded highlighter's base scheme. */
196
+ function schemeStyles(prism: Prism, scheme: SyntaxScheme): SchemeStyles {
197
+ const held = HIGHLIGHT_STYLES.get(scheme);
198
+ if (held !== undefined) return held;
199
+ const base = scheme === 'dark' ? prism.dark : prism.light;
200
+ const colors = scheme === 'dark' ? ORB_COLORS.dark : ORB_COLORS.light;
201
+ const built = { base, orb: { ...base, ...orbStyleOverrides(colors) }, lolo: { ...base, ...loloStyleOverrides(colors) } };
202
+ HIGHLIGHT_STYLES.set(scheme, built);
203
+ return built;
204
+ }
205
+
206
+ /** Before the highlighter loads, a block's plain text takes the scheme's foreground. */
207
+ const PLAIN_STYLES: Record<SyntaxScheme, Record<string, React.CSSProperties>> = {
208
+ dark: { 'code[class*="language-"]': { color: '#d4d4d4' } },
209
+ light: { 'code[class*="language-"]': { color: '#383a42' } },
210
+ };
211
+
212
+ // ── Fold region computation ──────────────────────────────────────────
213
+
214
+ interface FoldRegion {
215
+ start: number;
216
+ end: number;
217
+ closeBracket: string;
218
+ }
219
+
220
+ /** Find matching bracket pairs that span multiple lines (respects JSON strings). */
221
+ function computeFoldRegions(code: string): FoldRegion[] {
222
+ const lines = code.split('\n');
223
+ const regions: FoldRegion[] = [];
224
+ const stack: { line: number; bracket: string }[] = [];
225
+
226
+ for (let i = 0; i < lines.length; i++) {
227
+ const line = lines[i];
228
+ let inString = false;
229
+ for (let j = 0; j < line.length; j++) {
230
+ const ch = line[j];
231
+ if (ch === '\\' && inString) { j++; continue; }
232
+ if (ch === '"') { inString = !inString; continue; }
233
+ if (inString) continue;
234
+ if (ch === '{' || ch === '[') {
235
+ stack.push({ line: i, bracket: ch });
236
+ } else if (ch === '}' || ch === ']') {
237
+ const open = stack.pop();
238
+ if (open && open.line < i) {
239
+ regions.push({
240
+ start: open.line,
241
+ end: i,
242
+ closeBracket: ch,
243
+ });
244
+ }
245
+ }
246
+ }
247
+ }
248
+ return regions.sort((a, b) => a.start - b.start);
249
+ }
250
+
251
+ import { Box } from '../../../../core';
252
+ import { Button } from '../../../../core';
253
+ import { Badge } from '../../../../core';
254
+ import { HStack } from '../../../../core';
255
+ import { useCodeCompletion, type CodeCompletionProvider } from '../../../../hooks/useCodeCompletion';
256
+ import { useCodeAssist, type CodeAssistProvider } from '../../../../hooks/useCodeAssist';
257
+ export { type CodeAssistProvider, type CodeAssistRequest, type CodeAssistResult } from '../../../../hooks/useCodeAssist';
258
+ export { applySuggestions, type CodeSuggestion } from '../../../../lib/codeAssist';
259
+ import { identifierAt, type CodeIdentifier } from '../../../../lib/codeIdentifiers';
260
+ import { diagnosticAt, diagnosticRanges, remapRanges, underlineSegments, type CodeDiagnostic, type DiagnosticRange } from '../../../../lib/codeDiagnostics';
261
+ export { type CodeDiagnostic } from '../../../../lib/codeDiagnostics';
262
+ export { applyCompletion, type CodeCompletion, type CodeCompletionProvider, type CodeCompletionResult } from '../../../../hooks/useCodeCompletion';
263
+ import { Textarea } from '../../../../core';
264
+
265
+ const MONO_EDITOR_FONT = 'ui-monospace, SFMono-Regular, Menlo, Monaco, "Cascadia Mono", "Courier New", monospace';
266
+ const GHOST_COLOR = '#7f848e';
267
+ const GUTTER_COLOR = '#858585';
268
+ /** A selection's moving end — where the caret is drawn. */
269
+ const caretOf = (ta: HTMLTextAreaElement): number => (ta.selectionDirection === 'backward' ? ta.selectionStart : ta.selectionEnd);
270
+
271
+ type HighlightRows = Parameters<NonNullable<SyntaxHighlighterProps['renderer']>>[0];
272
+ type HighlightNode = HighlightRows['rows'][number];
273
+
274
+ /** A highlighted node with its token classes kept as `data-token` (inline styles drop them from `className`). */
275
+ function withTokenTypes(node: HighlightNode): HighlightNode {
276
+ if (node.type !== 'element') return node;
277
+ const classes = node.properties?.className;
278
+ return {
279
+ ...node,
280
+ ...(node.properties
281
+ ? { properties: { ...node.properties, ...(Array.isArray(classes) && classes.length > 0 ? { 'data-token': classes.join(' ') } : {}) } }
282
+ : {}),
283
+ ...(node.children ? { children: node.children.map(withTokenTypes) } : {}),
284
+ };
285
+ }
286
+
287
+ /** The editor's highlighter renderer: the stock element builder over token-typed nodes. */
288
+ function renderWithTokenTypes({ rows, stylesheet, useInlineStyles }: HighlightRows): React.ReactNode {
289
+ return rows.map((node, i) => prismOrThrow().createHighlightElement({ node: withTokenTypes(node), stylesheet, useInlineStyles, key: `code-segment-${i}` }));
290
+ }
291
+
292
+ /** A run of English letters/digits, read as one LTR word inside RTL code (identifiers, `@entity.total`, `?amount`, numbers). */
293
+ const LTR_WORD = /[A-Za-z0-9_$@?][A-Za-z0-9_$@?.!-]*/g;
294
+ const LTR_ISLAND_STYLE: React.CSSProperties = { unicodeBidi: 'isolate', direction: 'ltr' };
295
+ /** A string literal keeps its own first-strong direction, so an English sentence reads whole and an Arabic one reads RTL. */
296
+ const STRING_ISLAND_STYLE: React.CSSProperties = { unicodeBidi: 'plaintext' };
297
+
298
+ function island(value: string, style: React.CSSProperties): HighlightNode {
299
+ return { type: 'element', tagName: 'span', properties: { className: [], 'data-bidi-island': '', style }, children: [{ type: 'text', value }] };
300
+ }
301
+
302
+ function splitLtrWords(value: string): HighlightNode[] {
303
+ const out: HighlightNode[] = [];
304
+ let last = 0;
305
+ for (const match of value.matchAll(LTR_WORD)) {
306
+ const start = match.index ?? 0;
307
+ if (start > last) out.push({ type: 'text', value: value.slice(last, start) });
308
+ out.push(island(match[0], LTR_ISLAND_STYLE));
309
+ last = start + match[0].length;
310
+ }
311
+ if (last < value.length) out.push({ type: 'text', value: value.slice(last) });
312
+ return out;
313
+ }
314
+
315
+ /** RTL code: brackets, arrows and spaces stay in the RTL flow (so they mirror); each English word or string is an isolated island. */
316
+ function withBidiIslands(node: HighlightNode): HighlightNode[] {
317
+ if (node.type === 'text') return splitLtrWords(String(node.value ?? ''));
318
+ if (node.type !== 'element') return [node];
319
+ const classes = node.properties?.className;
320
+ if (Array.isArray(classes) && classes.includes('string')) {
321
+ return [{ ...node, properties: { ...node.properties, className: classes, 'data-bidi-island': '', style: STRING_ISLAND_STYLE } }];
322
+ }
323
+ return [{ ...node, ...(node.children ? { children: node.children.flatMap(withBidiIslands) } : {}) }];
324
+ }
325
+
326
+ function renderRtlCode({ rows, stylesheet, useInlineStyles }: HighlightRows): React.ReactNode {
327
+ return rows.map((node, i) =>
328
+ withBidiIslands(node).map((n, j) => prismOrThrow().createHighlightElement({ node: n, stylesheet, useInlineStyles, key: `code-rtl-${i}-${j}` })),
329
+ );
330
+ }
331
+
332
+ /** The token types of the highlighted text at `offset` (`comment`, `string`, …); empty when unstyled. */
333
+ function tokenClassAt(layer: HTMLElement, offset: number): string {
334
+ const walker = document.createTreeWalker(layer, NodeFilter.SHOW_TEXT);
335
+ let pos = 0;
336
+ for (let node = walker.nextNode(); node; node = walker.nextNode()) {
337
+ const length = node.textContent?.length ?? 0;
338
+ if (offset < pos + length) return node.parentElement?.closest('[data-token]')?.getAttribute('data-token') ?? '';
339
+ pos += length;
340
+ }
341
+ return '';
342
+ }
343
+
344
+ /**
345
+ * The text offset under a point: the textarea is lifted out of hit-testing for one
346
+ * lookup, so the point lands in the highlighted text beneath it, which holds the same
347
+ * characters at the same places.
348
+ */
349
+ function offsetUnderPointer(ta: HTMLTextAreaElement, layer: HTMLElement | null, x: number, y: number): number | null {
350
+ if (!layer || typeof document.caretRangeFromPoint !== 'function') return null;
351
+ const previous = ta.style.pointerEvents;
352
+ ta.style.pointerEvents = 'none';
353
+ const range = document.caretRangeFromPoint(x, y);
354
+ ta.style.pointerEvents = previous;
355
+ if (!range || !layer.contains(range.startContainer)) return null;
356
+ const walker = document.createTreeWalker(layer, NodeFilter.SHOW_TEXT);
357
+ let pos = 0;
358
+ for (let node = walker.nextNode(); node; node = walker.nextNode()) {
359
+ if (node === range.startContainer) return pos + range.startOffset;
360
+ pos += node.textContent?.length ?? 0;
361
+ }
362
+ return null;
363
+ }
364
+ const DIAGNOSTIC_ERROR_COLOR = '#f14c4c';
365
+ const DIAGNOSTIC_WARNING_COLOR = '#cca700';
366
+ /** 13px × 1.5 — the editable textarea's line box. */
367
+ const EDITOR_LINE_PX = 19.5;
368
+ import { Icon } from '../../../../core';
369
+ import { useEventBus } from '../../../../core';
370
+ import { keyChord, type EditorKeyEvent } from '../../../../hooks/useKeyboardRouter';
371
+ import { useEditorFocus } from '../../../../providers/EditorFocusContext';
372
+ import { useTranslate } from '../../../../core';
373
+ import { useMediaQuery } from '../../../../core';
374
+ import { useScopedMode } from '../../../../core';
375
+ import { createLogger } from '@almadar/logger';
376
+ import type { A11yProps, EventEmit, EventKey, EventListen } from "@almadar/core";
377
+ import { domPassthrough } from '../../../../core';
378
+ import { useEditorCapabilities } from './useEditorCapabilities';
379
+ import { SelectionAnnotator } from './SelectionAnnotator';
380
+ import { computeLineDiff } from '../../../../lib/lineDiff';
381
+
382
+ const log = createLogger('almadar:ui:markdown-code');
383
+
384
+ /**
385
+ * The set of languages with a registered PrismLight grammar (above) plus the
386
+ * `.orb`/`.lolo` grammars from `@almadar/syntax`. Authoritative: an unregistered
387
+ * value renders as plain text, so this union mirrors the `registerLanguage`
388
+ * calls exactly.
389
+ */
390
+ export const CODE_LANGUAGES = [
391
+ 'text',
392
+ 'json',
393
+ 'javascript',
394
+ 'js',
395
+ 'typescript',
396
+ 'ts',
397
+ 'jsx',
398
+ 'tsx',
399
+ 'css',
400
+ 'markdown',
401
+ 'md',
402
+ 'bash',
403
+ 'shell',
404
+ 'sh',
405
+ 'yaml',
406
+ 'yml',
407
+ 'rust',
408
+ 'python',
409
+ 'py',
410
+ 'sql',
411
+ 'diff',
412
+ 'toml',
413
+ 'go',
414
+ 'graphql',
415
+ 'html',
416
+ 'xml',
417
+ 'clojure',
418
+ 'clj',
419
+ 'edn',
420
+ 'haskell',
421
+ 'hs',
422
+ 'lisp',
423
+ 'scheme',
424
+ 'scala',
425
+ 'elixir',
426
+ 'ex',
427
+ 'exs',
428
+ 'erlang',
429
+ 'erl',
430
+ 'elm',
431
+ 'fsharp',
432
+ 'fs',
433
+ 'fsx',
434
+ 'ocaml',
435
+ 'ml',
436
+ 'java',
437
+ 'c',
438
+ 'cpp',
439
+ 'c++',
440
+ 'cc',
441
+ 'cxx',
442
+ 'hpp',
443
+ 'h',
444
+ 'csharp',
445
+ 'cs',
446
+ 'objectivec',
447
+ 'objc',
448
+ 'php',
449
+ 'ruby',
450
+ 'rb',
451
+ 'swift',
452
+ 'kotlin',
453
+ 'kt',
454
+ 'lua',
455
+ 'r',
456
+ 'dart',
457
+ 'julia',
458
+ 'fortran',
459
+ 'f90',
460
+ 'f95',
461
+ 'perl',
462
+ 'pl',
463
+ 'powershell',
464
+ 'ps1',
465
+ 'makefile',
466
+ 'make',
467
+ 'nginx',
468
+ 'ini',
469
+ 'orb',
470
+ 'lolo',
471
+ ] as const;
472
+
473
+ export type CodeLanguage = (typeof CODE_LANGUAGES)[number];
474
+
475
+ const CODE_LANGUAGE_SET = new Set<string>(CODE_LANGUAGES);
476
+
477
+ /**
478
+ * Normalize a fence info-string to a language id. Known languages pass through
479
+ * as-is; unknown ids also pass through so they can be dynamically loaded by
480
+ * `CodeBlock` (falling back to plain text if no Prism grammar exists).
481
+ */
482
+ export function toCodeLanguage(value: string | undefined): string {
483
+ if (!value) return 'text';
484
+ return value.toLowerCase();
485
+ }
486
+
487
+ // ── Viewer types (absorbed from CodeViewer) ──────────────────────────────────
488
+
489
+ export type CodeViewerMode = 'code' | 'diff';
490
+
491
+ // ── Editor capability vocabulary (declaration-only in this wave; P1 wires
492
+ // the runtime behaviour) ──────────────────────────────────────────────────
493
+
494
+ export type { EditorMotion, EditorOperator } from '../../../../lib/editorMotions';
495
+ // Single source of truth for the closed vocabularies lives in `lib/editorMotions.ts`
496
+ // (it also builds `isEditorMotion`/`isEditorOperator` from these). Re-exported here
497
+ // since consumers historically import them from `CodeBlock`. The `motions`/
498
+ // `operators` prop DEFAULTS below must list the same members as JSON literals
499
+ // (the registry parser reads those literals) — `test/CodeBlock.editable.test.tsx`
500
+ // asserts the two stay in sync.
501
+ export { EDITOR_MOTIONS, EDITOR_OPERATORS, isEditorMotion, isEditorOperator } from '../../../../lib/editorMotions';
502
+
503
+ /** Closed-list caret render styles for editor mode. */
504
+ export type EditorCaret = 'bar' | 'block' | 'underline';
505
+
506
+ export interface DiffLine {
507
+ type: 'add' | 'added' | 'remove' | 'removed' | 'context' | 'unchanged';
508
+ content: string;
509
+ lineNumber?: number;
510
+ }
511
+
512
+ export interface CodeViewerAction {
513
+ label: string;
514
+ event?: EventKey;
515
+ navigatesTo?: string;
516
+ variant?: 'primary' | 'secondary' | 'ghost';
517
+ }
518
+
519
+ export interface CodeViewerFile {
520
+ label: string;
521
+ code: string;
522
+ language?: CodeLanguage;
523
+ }
524
+
525
+ export interface CodeBlockProps extends A11yProps {
526
+ /** The code content to display */
527
+ code?: string;
528
+ /** Programming language for syntax highlighting (any Prism id; loaded on demand if not pre-registered) */
529
+ language?: string;
530
+ /** Show the copy button */
531
+ showCopyButton?: boolean;
532
+ /** Show the language badge */
533
+ showLanguageBadge?: boolean;
534
+ /** Maximum height before scrolling */
535
+ maxHeight?: string | number;
536
+ /** Enable brace-based code folding of multi-line `{}`/`[]` blocks (default: true). */
537
+ foldable?: boolean;
538
+ /** Additional CSS classes */
539
+ className?: string;
540
+ /**
541
+ * When true, render an editable surface that composes a transparent `Textarea`
542
+ * over a Prism-highlighted overlay. The overlay re-tokenizes on each keystroke
543
+ * (driven from a local mirror of the textarea value), so users see syntax-highlighted
544
+ * code while still being able to type. Folding is skipped in editable mode.
545
+ *
546
+ * History: GAP-51 first-cut shipped plain (no-highlighting) editable text;
547
+ * GAP-77 (2026-04-12) added the Prism overlay layer.
548
+ *
549
+ * Default: false (existing read-only behavior unchanged).
550
+ */
551
+ editable?: boolean;
552
+ /**
553
+ * GAP-51: called with the new code on every keystroke when `editable === true`.
554
+ * Consumers should debounce + parse downstream — `CodeBlock` does not.
555
+ */
556
+ onChange?: (code: string) => void;
557
+ /**
558
+ * GAP-80: line-level error/warning highlights. Map of 1-based line number
559
+ * → severity. Paints a colored background on each line: error = red,
560
+ * warning = yellow. Honored by the editable overlay and (GAP-84) by
561
+ * viewer mode's non-diff highlight; pass undefined (default) to disable.
562
+ * The consumer is responsible for computing the path → line map from the
563
+ * schema + validation results. A program authors it as a record of the
564
+ * line number (as text) to severity, read the same way.
565
+ */
566
+ errorLines?: ReadonlyMap<number, ErrorLineSeverity> | Readonly<Record<string, ErrorLineSeverity>>;
567
+ /** Lines to mark and keep in view (1-based, inclusive): the code of the step a running program just took. */
568
+ highlightLines?: { start: number; end: number };
569
+ // ── Viewer props (absorbed from CodeViewer / DocCodeBlock) ────────────────
570
+ /** Title shown in the toolbar */
571
+ title?: string;
572
+ /** Diff or plain-code display mode */
573
+ mode?: CodeViewerMode;
574
+ /** Pre-computed diff lines */
575
+ diff?: readonly DiffLine[];
576
+ /** Old source text — generates diff when combined with newValue */
577
+ oldValue?: string;
578
+ /** New source text — generates diff when combined with oldValue */
579
+ newValue?: string;
580
+ /** Show line numbers in code / diff mode */
581
+ showLineNumbers?: boolean;
582
+ /** Enable word-wrap in code / diff mode */
583
+ wordWrap?: boolean;
584
+ /** Multiple files shown as tabs */
585
+ files?: readonly CodeViewerFile[];
586
+ /**
587
+ * Show the program in these natural languages as tabs, translating on the
588
+ * fly. Only meaningful for `language` 'lolo' / 'orb'; ignored otherwise.
589
+ *
590
+ * Fewer than two entries renders exactly as without the prop. `editable`
591
+ * wins: editing a translation is not a thing, so the English source is
592
+ * shown and this is ignored.
593
+ */
594
+ naturalLanguages?: readonly LanguageCode[];
595
+ /** Action badges in the toolbar */
596
+ actions?: readonly CodeViewerAction[];
597
+ /** Loading state */
598
+ isLoading?: boolean;
599
+ /** Error state */
600
+ error?: UiError | null;
601
+ /** Show copy button (viewer alias for showCopyButton) */
602
+ showCopy?: boolean;
603
+ /**
604
+ * Stable identity for the keyboard router / plugin host to target this editor.
605
+ * Unset = this instance never receives capability events.
606
+ * @tier presentation
607
+ */
608
+ editorId?: string;
609
+ /**
610
+ * Declarative bus emit fired when this editor gains focus.
611
+ * @tier presentation
612
+ * @notification
613
+ */
614
+ onEditorFocus?: EventEmit<{ editorId: string }>;
615
+ /**
616
+ * Declarative bus emit fired when this editor loses focus.
617
+ * @tier presentation
618
+ * @notification
619
+ */
620
+ onEditorBlur?: EventEmit<{ editorId: string }>;
621
+ /**
622
+ * Declarative bus listen: move the cursor per the vim-style motion vocabulary.
623
+ * @tier presentation
624
+ */
625
+ onMotion?: EventListen<{ editorId: string; motion: EditorMotion; count: number }>;
626
+ /**
627
+ * Declarative bus listen: apply a text operator over a motion's range.
628
+ * @tier presentation
629
+ */
630
+ onOperate?: EventListen<{ editorId: string; operator: EditorOperator; motion: EditorMotion; count: number }>;
631
+ /**
632
+ * Declarative bus listen: insert literal text at the cursor.
633
+ * @tier presentation
634
+ */
635
+ onInsertText?: EventListen<{ editorId: string; text: string }>;
636
+ /**
637
+ * Declarative bus listen: switch editor mode and caret style.
638
+ * @tier presentation
639
+ */
640
+ onSetMode?: EventListen<{ editorId: string; mode: string; caret: EditorCaret; keys?: string[] }>;
641
+ /**
642
+ * Emits UI:{onKey} with the keystroke for each key the latest SET_MODE for
643
+ * this editor listed, and keeps it out of the text. No capture without it.
644
+ * @tier presentation
645
+ */
646
+ onKey?: EventEmit<{ editorId: string; key: string; code: string; ctrl: boolean; alt: boolean; shift: boolean; meta: boolean; repeat: boolean }>;
647
+ /**
648
+ * Motion vocabulary this editor accepts. Default: the full `EditorMotion` set.
649
+ * @tier presentation
650
+ */
651
+ motions?: readonly EditorMotion[];
652
+ /**
653
+ * Operator vocabulary this editor accepts. Default: the full `EditorOperator` set.
654
+ * @tier presentation
655
+ */
656
+ operators?: readonly EditorOperator[];
657
+ /**
658
+ * Editable only: answers the caret's valid continuations after a keystroke (and on
659
+ * Ctrl-Space); they show under the editor and Tab or a click inserts one.
660
+ * @tier presentation
661
+ */
662
+ completions?: CodeCompletionProvider;
663
+ /**
664
+ * Editable only: model-assisted editing. Asked after a pause (and on Ctrl-Space) for a
665
+ * completion at the caret, shown as ghost text; on ⌘/Ctrl-. for fixes, listed under the
666
+ * editor. Tab accepts the next, ⌘/Ctrl-Enter accepts all, Escape dismisses.
667
+ * @tier presentation
668
+ */
669
+ assist?: CodeAssistProvider;
670
+ /**
671
+ * Editable only: how many problems the host knows the code has (some, like a parse
672
+ * error, have no line to mark). With `assist`, the editor offers to fix them.
673
+ * @tier presentation
674
+ */
675
+ problems?: number;
676
+ /**
677
+ * Editable only: problems located in the code (1-based line/column in characters,
678
+ * `endColumn` just past the last one), each underlined exactly — red wavy for an
679
+ * error, amber for a warning, dotted where the position is approximate. The
680
+ * message of the one under the caret shows below the editor.
681
+ * @tier presentation
682
+ */
683
+ diagnostics?: readonly CodeDiagnostic[];
684
+ /**
685
+ * Editable only: go to definition. Whether the identifier (a dotted path is one)
686
+ * leads somewhere; with Cmd/Ctrl held the one under the pointer is underlined
687
+ * when it does. Comments and strings never qualify.
688
+ */
689
+ definitionAt?: (identifier: string) => boolean;
690
+ /** Editable only: Cmd/Ctrl+click, or Cmd/Ctrl+Enter at the caret, on an identifier `definitionAt` accepts. */
691
+ onGoToDefinition?: (identifier: string) => void;
692
+ /**
693
+ * The code `diagnostics` were computed on. When the editor's text has moved on,
694
+ * each range is carried over the edit; a range the edit touches is dropped until
695
+ * the code is checked again. Absent: they describe the current text.
696
+ * @tier presentation
697
+ */
698
+ diagnosticsCode?: string;
699
+ /**
700
+ * Editable only: number the lines in a gutter (lines with errors in red). Default on.
701
+ * @tier presentation
702
+ */
703
+ lineNumbers?: boolean;
704
+ /**
705
+ * Read-only only: event emitted when the reader picks Ask on code they selected (as `UI:<askEvent>`)
706
+ * @tier presentation
707
+ */
708
+ askEvent?: EventEmit<{ selectedText: string }>;
709
+ /**
710
+ * Read-only only: event emitted when the reader picks Note on code they selected (as `UI:<noteEvent>`)
711
+ * @tier presentation
712
+ */
713
+ noteEvent?: EventEmit<{ selectedText: string }>;
714
+ /** Ask action label (default: translated) */
715
+ askLabel?: string;
716
+ /** Note action label (default: translated) */
717
+ noteLabel?: string;
718
+ }
719
+
720
+ // ── Diff helpers ─────────────────────────────────────────────────────────────
721
+
722
+ function generateDiff(oldVal: string, newVal: string): DiffLine[] {
723
+ return computeLineDiff(oldVal, newVal).map((line) => ({
724
+ type: line.type,
725
+ content: line.content,
726
+ lineNumber: line.afterLineNumber ?? line.beforeLineNumber,
727
+ }));
728
+ }
729
+
730
+ const DIFF_STYLES: Record<DiffLine['type'], { bg: string; prefix: string; text: string }> = {
731
+ add: { bg: 'bg-success/10', prefix: '+', text: 'text-success' },
732
+ added: { bg: 'bg-success/10', prefix: '+', text: 'text-success' },
733
+ remove: { bg: 'bg-error/10', prefix: '-', text: 'text-error' },
734
+ removed: { bg: 'bg-error/10', prefix: '-', text: 'text-error' },
735
+ context: { bg: '', prefix: ' ', text: 'text-foreground' },
736
+ unchanged: { bg: '', prefix: ' ', text: 'text-foreground' },
737
+ };
738
+ const DIFF_STYLE_FALLBACK: { bg: string; prefix: string; text: string } = { bg: '', prefix: ' ', text: 'text-foreground' };
739
+
740
+ // Stable lineProps function (never changes, safe for memoized element)
741
+ const LINE_PROPS_FN = (n: number): React.HTMLProps<HTMLElement> => ({ 'data-line': String(n - 1) } as React.HTMLProps<HTMLElement>);
742
+ const HIDDEN_LINE_NUMBERS: React.CSSProperties = { display: 'none' };
743
+
744
+ /**
745
+ * Tokenization capacity bound (VS Code's largeFileOptimizations precedent).
746
+ * One SyntaxHighlighter render is a single uninterruptible function call —
747
+ * Prism + per-line element creation is ~linear in code size, so a multi-MB
748
+ * document costs seconds PER RENDER PASS and, multiplied by StrictMode/dev
749
+ * double renders, wedges the main thread for minutes (architect-shell hang,
750
+ * 2026-09-03: a 2.8MB resolved-IR schema). Above this bound the code renders
751
+ * as plain text — same layout, fonts, scrolling, editing, and copy; dropped:
752
+ * token colors, per-line error backgrounds, and fold gutters (all need
753
+ * per-line DOM).
754
+ */
755
+ export const HIGHLIGHT_CAPACITY_BYTES = 512 * 1024;
756
+
757
+ /** Lines per laid-out chunk of an over-capacity document. */
758
+ export const PLAIN_CODE_CHUNK_LINES = 400;
759
+
760
+ /**
761
+ * An over-capacity document as fixed-size line chunks with `content-visibility: auto`: the browser
762
+ * skips layout and paint for offscreen chunks (a single multi-MB text node cost ~10s of layout),
763
+ * while every line stays in the DOM for find-in-page, selection and copy. The wrapper keeps the
764
+ * widest line's width so horizontal scroll does not depend on which chunks are on screen.
765
+ */
766
+ function PlainCodeChunks({ code, style }: { code: string; style: React.CSSProperties }): React.ReactElement {
767
+ const { chunks, widest } = useMemo(() => {
768
+ const lines = code.split('\n');
769
+ const out: Array<{ text: string; lines: number }> = [];
770
+ for (let i = 0; i < lines.length; i += PLAIN_CODE_CHUNK_LINES) {
771
+ const slice = lines.slice(i, i + PLAIN_CODE_CHUNK_LINES);
772
+ out.push({ text: slice.join('\n'), lines: slice.length });
773
+ }
774
+ return { chunks: out, widest: lines.reduce((w, l) => Math.max(w, l.length), 0) };
775
+ }, [code]);
776
+ return (
777
+ <Box style={{ ...style, minWidth: `max(100%, ${widest}ch)` }}>
778
+ {chunks.map((chunk, i) => (
779
+ <Box
780
+ key={i}
781
+ data-code-chunk={i}
782
+ style={{ contentVisibility: 'auto', containIntrinsicBlockSize: `auto ${chunk.lines}lh` }}
783
+ >
784
+ {chunk.text}
785
+ </Box>
786
+ ))}
787
+ </Box>
788
+ );
789
+ }
790
+
791
+ /**
792
+ * What the editable overlay paints for `value`. A textarea ending in a newline
793
+ * shows an empty last line; a block element drops a trailing newline. Painting a
794
+ * space after it keeps both the same height, or the overlay scrolls one line short
795
+ * of the caret at the bottom of the file.
796
+ */
797
+ export function overlayText(value: string): string {
798
+ return value === '' || value.endsWith('\n') ? `${value} ` : value;
799
+ }
800
+
801
+ /** Loads the Prism grammar for `language` on demand; returns readiness so the
802
+ * highlight re-renders once the lazy chunk arrives. */
803
+ function useLanguageReady(language: string): boolean {
804
+ const [ready, setReady] = useState(() => isLanguageRegistered(language));
805
+ useEffect(() => {
806
+ if (isLanguageRegistered(language)) {
807
+ if (!ready) setReady(true);
808
+ return;
809
+ }
810
+ let active = true;
811
+ loadPrismLanguage(language).then(() => { if (active) setReady(true); });
812
+ return () => { active = false; };
813
+ }, [language]);
814
+ return ready;
815
+ }
816
+
817
+ // ── Shared SyntaxHighlighter machinery ────────────────────────────────────
818
+ // Everything below is used by all three render branches (standard / editable
819
+ // / viewer, viewer covering both its non-diff and diff sub-cases) so the
820
+ // tokenizer, style resolution, and lineProps behavior are defined exactly
821
+ // once — GAP-84: viewer mode used to skip this machinery entirely and render
822
+ // plain `<Typography>` rows with no Prism pass.
823
+
824
+ /** Shared monospace font stack for every SyntaxHighlighter-backed code
825
+ * surface in this file. */
826
+ const MONO_FONT_FAMILY =
827
+ 'ui-monospace, SFMono-Regular, Menlo, Monaco, "Cascadia Mono", "Courier New", "IBM Plex Sans Arabic", "Noto Sans Arabic", monospace';
828
+
829
+ /** Resolve the AVL-aligned Prism style sheet for a language id — `orb`/`lolo`
830
+ * get their token-class overrides, everything else uses the base VS Code
831
+ * Dark+ theme. Module-scope constants, so callers get a stable reference. */
832
+ function resolveHighlightStyle(prism: Prism | undefined, lang: string, scheme: SyntaxScheme): Record<string, React.CSSProperties> {
833
+ if (prism === undefined) return PLAIN_STYLES[scheme];
834
+ const styles = schemeStyles(prism, scheme);
835
+ if (lang === 'orb' || lang === 'lolo') return styles[lang];
836
+ return styles.base;
837
+ }
838
+
839
+ /** The `code[class*="language-"]` foreground color a style sheet defines —
840
+ * used as the plain-text color for the >HIGHLIGHT_CAPACITY_BYTES fallback
841
+ * so that path still respects the resolved theme instead of a hardcoded gray. */
842
+ function plainCodeColorOf(style: Record<string, React.CSSProperties>): string {
843
+ return (style['code[class*="language-"]']?.color as string | undefined) ?? '#d4d4d4';
844
+ }
845
+
846
+ /**
847
+ * Builds a SyntaxHighlighter `lineProps` callback: every line gets `data-line`
848
+ * (selection/scroll code keys off it) plus `extraClassName` when given; a
849
+ * line with a GAP-80 severity in `errorLines` additionally gets the
850
+ * error/warning background. Shared by the editable overlay and viewer's
851
+ * non-diff highlight so `errorLines` behaves identically in either context.
852
+ */
853
+ function buildLineProps(
854
+ errorLines: ReadonlyMap<number, ErrorLineSeverity> | undefined,
855
+ extraClassName?: string,
856
+ highlight?: { start: number; end: number },
857
+ ): (lineNumber: number) => React.HTMLProps<HTMLElement> {
858
+ return (lineNumber: number): React.HTMLProps<HTMLElement> => {
859
+ const highlighted = highlight !== undefined && lineNumber >= highlight.start && lineNumber <= highlight.end;
860
+ const base = {
861
+ 'data-line': String(lineNumber - 1),
862
+ ...(extraClassName ? { className: extraClassName } : {}),
863
+ ...(highlighted
864
+ ? {
865
+ 'data-highlighted': 'true',
866
+ style: { display: 'block', backgroundColor: 'rgba(96, 165, 250, 0.18)', boxShadow: 'inset 3px 0 0 #60a5fa' },
867
+ }
868
+ : {}),
869
+ } as React.HTMLProps<HTMLElement>;
870
+ const severity = errorLines?.get(lineNumber);
871
+ if (!severity) return base;
872
+ return {
873
+ ...base,
874
+ style: {
875
+ display: 'block',
876
+ backgroundColor: severity === 'error'
877
+ ? 'rgba(248, 113, 113, 0.18)' // red-400 @ 18%
878
+ : 'rgba(251, 191, 36, 0.18)', // amber-400 @ 18%
879
+ borderLeft: `3px solid ${severity === 'error' ? '#ef4444' : '#f59e0b'}`,
880
+ paddingLeft: '0.5rem',
881
+ marginLeft: '-0.5rem',
882
+ },
883
+ } as React.HTMLProps<HTMLElement>;
884
+ };
885
+ }
886
+
887
+ /** Line-number gutter style for viewer-mode SyntaxHighlighter instances
888
+ * (the standard/editable branches instead hide the gutter and derive
889
+ * `data-line` only — viewer mode wants the numbers actually visible). */
890
+ const VIEWER_LINE_NUMBER_STYLE: React.CSSProperties = {
891
+ minWidth: '2.5em',
892
+ paddingRight: '1rem',
893
+ textAlign: 'right',
894
+ userSelect: 'none',
895
+ opacity: 0.5,
896
+ fontVariantNumeric: 'tabular-nums',
897
+ };
898
+ const VIEWER_LINE_NUMBER_STYLE_RTL: React.CSSProperties = {
899
+ minWidth: '2.5em',
900
+ paddingRight: 0,
901
+ paddingLeft: '1rem',
902
+ textAlign: 'left',
903
+ userSelect: 'none',
904
+ opacity: 0.5,
905
+ fontVariantNumeric: 'tabular-nums',
906
+ };
907
+
908
+ /**
909
+ * English → native rendering of the displayed program. Only `.lolo` and
910
+ * `.orb` carry a vocabulary; every other language passes through, as does a
911
+ * `.orb` string that does not parse (`translateOrb` degrades to "translate
912
+ * nothing" rather than throwing).
913
+ */
914
+ function translateProgram(source: string, language: string, lang: LanguageCode): string {
915
+ if (lang === 'en') return source;
916
+ if (language === 'lolo') return translateLolo(source, lang);
917
+ if (language === 'orb') {
918
+ const translated = translateOrb(source, lang);
919
+ return typeof translated === 'string' ? translated : source;
920
+ }
921
+ return source;
922
+ }
923
+
924
+ export const CodeBlock = React.memo<CodeBlockProps>(
925
+ ({
926
+ code: rawCode,
927
+ language = 'text',
928
+ showCopyButton = true,
929
+ showLanguageBadge = true,
930
+ maxHeight = '60vh',
931
+ foldable: foldableProp,
932
+ className,
933
+ editable = false,
934
+ onChange,
935
+ errorLines: errorLinesProp,
936
+ highlightLines,
937
+ completions,
938
+ assist: assistProvider,
939
+ problems,
940
+ diagnostics,
941
+ definitionAt,
942
+ onGoToDefinition,
943
+ diagnosticsCode,
944
+ lineNumbers,
945
+ askEvent,
946
+ noteEvent,
947
+ askLabel,
948
+ noteLabel,
949
+ // viewer props
950
+ title,
951
+ mode = 'code',
952
+ diff: propDiff,
953
+ oldValue,
954
+ newValue,
955
+ showLineNumbers = false,
956
+ wordWrap = false,
957
+ files,
958
+ naturalLanguages,
959
+ actions,
960
+ isLoading = false,
961
+ error,
962
+ showCopy,
963
+ // editor capability surface — P1 wires these
964
+ editorId,
965
+ onEditorFocus = 'EDITOR_FOCUS',
966
+ onEditorBlur = 'EDITOR_BLUR',
967
+ onMotion = 'MOTION',
968
+ onOperate = 'OPERATE',
969
+ onInsertText = 'INSERT_TEXT',
970
+ onSetMode = 'SET_MODE',
971
+ onKey,
972
+ motions = [
973
+ 'left',
974
+ 'right',
975
+ 'up',
976
+ 'down',
977
+ 'word-forward',
978
+ 'word-back',
979
+ 'word-end',
980
+ 'line-start',
981
+ 'line-end',
982
+ 'first-nonblank',
983
+ 'doc-start',
984
+ 'doc-end',
985
+ 'paragraph-forward',
986
+ 'paragraph-back',
987
+ 'line',
988
+ 'selection',
989
+ 'match-bracket',
990
+ ],
991
+ operators = [
992
+ 'delete',
993
+ 'yank',
994
+ 'change',
995
+ 'put',
996
+ 'put-before',
997
+ 'undo',
998
+ 'redo',
999
+ 'join',
1000
+ 'toggle-case',
1001
+ 'indent',
1002
+ 'dedent',
1003
+ 'replace',
1004
+ ],
1005
+ ...a11yRest
1006
+ }) => {
1007
+ // `motions`/`operators` document the vocabulary this instance accepts;
1008
+ // enforcement lives at the emitting plugin, not here (P1 E3).
1009
+ void motions; void operators;
1010
+ const errorLines = useMemo(() => errorLineMap(errorLinesProp), [errorLinesProp]);
1011
+ const englishCode = typeof rawCode === 'string' ? rawCode : String(rawCode ?? '');
1012
+
1013
+ // ── Natural-language tabs (opt-in) ────────────────────────────────────
1014
+ // Fewer than two languages is today's rendering byte for byte, and
1015
+ // `editable` wins over the prop rather than throwing.
1016
+ const naturalTabs = !editable && naturalLanguages && naturalLanguages.length > 1
1017
+ ? naturalLanguages
1018
+ : undefined;
1019
+ const { locale: pageLocale } = useTranslate();
1020
+ const [naturalLanguage, setNaturalLanguage] = useState<LanguageCode>(
1021
+ () => naturalTabs?.find((lang) => lang === pageLocale) ?? naturalTabs?.[0] ?? 'en',
1022
+ );
1023
+ const activeNaturalLanguage: LanguageCode = naturalTabs?.includes(naturalLanguage) === true
1024
+ ? naturalLanguage
1025
+ : (naturalTabs?.[0] ?? 'en');
1026
+ const codeDir: 'ltr' | 'rtl' = naturalTabs && getVocabulary(activeNaturalLanguage).meta.rtl ? 'rtl' : 'ltr';
1027
+ // One translation per (source, language), kept across tab switches — a
1028
+ // re-render, or coming back to a tab, must never re-run the renderer.
1029
+ const translationCache = useMemo(() => new Map<string, string>(), [englishCode, files]);
1030
+ const translateFor = useCallback(
1031
+ (source: string, sourceLanguage: string, cacheKey: string): string => {
1032
+ if (activeNaturalLanguage === 'en') return source;
1033
+ const key = `${cacheKey}|${sourceLanguage}|${activeNaturalLanguage}`;
1034
+ const hit = translationCache.get(key);
1035
+ if (hit !== undefined) return hit;
1036
+ const translated = translateProgram(source, sourceLanguage, activeNaturalLanguage);
1037
+ translationCache.set(key, translated);
1038
+ return translated;
1039
+ },
1040
+ [translationCache, activeNaturalLanguage],
1041
+ );
1042
+ const code = translateFor(englishCode, language, 'code');
1043
+ // Code stays LTR even in Arabic: bidi mirrors brackets and floats each
1044
+ // line's leading `(` to the right edge, which destroys s-expression and
1045
+ // indentation structure. Only the tab chrome flips.
1046
+ const naturalTabItems: TabItem[] | undefined = naturalTabs?.map((lang) => ({
1047
+ id: `lang-${lang}`,
1048
+ label: getVocabulary(lang).meta.name,
1049
+ content: null,
1050
+ }));
1051
+ const naturalTabStrip = naturalTabs && naturalTabItems ? (
1052
+ <Box
1053
+ className="border-b border-border"
1054
+ dir={getVocabulary(activeNaturalLanguage).meta.rtl ? 'rtl' : 'ltr'}
1055
+ data-testid="codeblock-language-tabs"
1056
+ >
1057
+ <Tabs
1058
+ tabs={naturalTabItems}
1059
+ activeTab={`lang-${activeNaturalLanguage}`}
1060
+ onTabChange={(id) => {
1061
+ const next = naturalTabs.find((lang) => `lang-${lang}` === id);
1062
+ if (next) setNaturalLanguage(next);
1063
+ }}
1064
+ />
1065
+ </Box>
1066
+ ) : null;
1067
+
1068
+ const prism = usePrism();
1069
+ const activeStyle = resolveHighlightStyle(prism, language, 'dark');
1070
+ const overCapacity = code.length > HIGHLIGHT_CAPACITY_BYTES;
1071
+ const plainCodeColor = plainCodeColorOf(activeStyle);
1072
+ const eventBus = useEventBus();
1073
+ const editorFocus = useEditorFocus();
1074
+ const { t } = useTranslate();
1075
+ const resolvedMode = useScopedMode();
1076
+ const scrollRef = useRef<HTMLDivElement | null>(null);
1077
+ const viewerScrollRef = useRef<HTMLDivElement | null>(null);
1078
+ const codeRef = useRef<HTMLDivElement | null>(null);
1079
+ const savedScrollLeftRef = useRef<number>(0);
1080
+ const [copied, setCopied] = useState(false);
1081
+
1082
+ // ── Viewer-mode state ─────────────────────────────────────────────────────
1083
+ const [wrap, setWrap] = useState(wordWrap);
1084
+ const [activeFileIndex, setActiveFileIndex] = useState(0);
1085
+
1086
+ const activeFile = files?.[activeFileIndex];
1087
+ const activeLanguage: string = activeFile?.language ?? language;
1088
+ const activeCode = activeFile
1089
+ ? translateFor(activeFile.code, activeLanguage, `file-${activeFileIndex}`)
1090
+ : code;
1091
+ // Single readiness check covers all three branches: `activeLanguage`
1092
+ // equals `language` whenever `files` isn't used (standard/editable), and
1093
+ // resolves the selected file's own grammar when it is (viewer).
1094
+ const languageReady = useLanguageReady(activeLanguage);
1095
+ // The viewer sits on the theme surface; the standard and editable blocks paint their own dark box.
1096
+ const viewerStyle = resolveHighlightStyle(prism, activeLanguage, resolvedMode);
1097
+ const viewerPlainCodeColor = plainCodeColorOf(viewerStyle);
1098
+
1099
+ const diffLines = useMemo(() => {
1100
+ if (propDiff && propDiff.length > 0) return propDiff;
1101
+ if (mode === 'diff' && oldValue !== undefined && newValue !== undefined) {
1102
+ return generateDiff(oldValue, newValue);
1103
+ }
1104
+ return null;
1105
+ }, [propDiff, mode, oldValue, newValue]);
1106
+
1107
+ // An empty collection is unset: generated wrappers forward `files: []` / `diff: []` defaults.
1108
+ const isViewerMode = !!(title || (files && files.length > 0) || (showLineNumbers && !editable) || diffLines || mode === 'diff' || actions);
1109
+ const effectiveCopy = showCopy ?? showCopyButton;
1110
+
1111
+ // ── Editable mode (GAP-77): Prism overlay under transparent textarea ──
1112
+ // `editableValue` mirrors the textarea contents so the overlay re-renders
1113
+ // on each keystroke. Textarea stays uncontrolled (defaultValue + key) to
1114
+ // avoid cursor jumps caused by parent debounce + re-stringify round trips.
1115
+ // `lastPropCodeRef` distinguishes "user typed" (overlay updates only) from
1116
+ // "parent gave us a new code prop" (re-mount textarea + reset overlay).
1117
+ const [editableValue, setEditableValue] = useState(code);
1118
+ const [editableTextareaKey, setEditableTextareaKey] = useState(0);
1119
+ const lastPropCodeRef = useRef(code);
1120
+ const editableTextareaRef = useRef<HTMLTextAreaElement | null>(null);
1121
+ // The highlighted text under the textarea: its token spans say what a position is (comment, string, …).
1122
+ const highlightLayerRef = useRef<HTMLDivElement | null>(null);
1123
+ const [definitionHover, setDefinitionHover] = useState<CodeIdentifier | null>(null);
1124
+ const definitionAtOffset = useCallback((code: string, offset: number): CodeIdentifier | null => {
1125
+ if (!definitionAt) return null;
1126
+ const id = identifierAt(code, offset);
1127
+ if (!id) return null;
1128
+ const layer = highlightLayerRef.current;
1129
+ if (layer && /\b(comment|string)\b/.test(tokenClassAt(layer, id.start))) return null;
1130
+ return definitionAt(id.text) ? id : null;
1131
+ }, [definitionAt]);
1132
+ const editableOverlayRef = useRef<HTMLDivElement | null>(null);
1133
+ // SV4-4: the block/underline caret only ever renders while focused.
1134
+ const [isFocused, setIsFocused] = useState(false);
1135
+ // SV4-1: the caret BEFORE the current keydown is processed — captured on
1136
+ // keydown (not derivable from React state, which only updates after the
1137
+ // browser applies the keystroke) so `recordKeystroke` can snapshot the
1138
+ // pre-edit caret for the undo stack. Edits with no preceding keydown
1139
+ // (e.g. a context-menu paste) fall back to the last known value.
1140
+ const prevCaretRef = useRef(0);
1141
+ const [caretIndex, setCaretIndex] = useState(0);
1142
+ const caretMirrorRef = useRef<HTMLDivElement | null>(null);
1143
+ const caretMarkerRef = useRef<HTMLSpanElement | null>(null);
1144
+ const [caretGeometry, setCaretGeometry] = useState<{ top: number; left: number; lineHeight: number } | null>(null);
1145
+
1146
+ useEffect(() => {
1147
+ if (code !== lastPropCodeRef.current) {
1148
+ lastPropCodeRef.current = code;
1149
+ setEditableValue(code);
1150
+ setEditableTextareaKey((k) => k + 1);
1151
+ }
1152
+ }, [code]);
1153
+
1154
+ const editableGutterRef = useRef<HTMLDivElement | null>(null);
1155
+ // Bumped on scroll so layers positioned outside the scrolled overlay re-measure.
1156
+ const [scrollTick, setScrollTick] = useState(0);
1157
+ const handleEditableScroll = useCallback(() => {
1158
+ const ta = editableTextareaRef.current;
1159
+ const ov = editableOverlayRef.current;
1160
+ if (ta && ov) {
1161
+ ov.scrollTop = ta.scrollTop;
1162
+ ov.scrollLeft = ta.scrollLeft;
1163
+ }
1164
+ if (ta && editableGutterRef.current) editableGutterRef.current.scrollTop = ta.scrollTop;
1165
+ setScrollTick((n) => n + 1);
1166
+ }, []);
1167
+
1168
+ // The ONE change path: a keystroke and a plugin-driven capability edit
1169
+ // (useEditorCapabilities' `applyChange`) both flow through here, so both
1170
+ // hit `lastPropCodeRef`/`setEditableValue`/`onChange` identically.
1171
+ // `origin` only matters upstream (undo coalescing); it changes nothing here.
1172
+ const handleEditableChange = useCallback((v: string, _origin: 'keystroke' | 'capability') => {
1173
+ // Mark known so the parent echoing `v` back doesn't remount us.
1174
+ lastPropCodeRef.current = v;
1175
+ setEditableValue(v);
1176
+ const ta = editableTextareaRef.current;
1177
+ // Keeps caretIndex live after a capability edit too (MOTION/OPERATE/
1178
+ // INSERT_TEXT already moved `ta.selectionStart` by the time this runs).
1179
+ if (ta) setCaretIndex(caretOf(ta));
1180
+ onChange?.(v);
1181
+ }, [onChange]);
1182
+
1183
+ const { caretMode, recordKeystroke, undo, redo, capturedKeys } = useEditorCapabilities({
1184
+ editorId: editable ? editorId : undefined,
1185
+ textareaRef: editableTextareaRef,
1186
+ events: { onMotion, onOperate, onInsertText, onSetMode },
1187
+ focused: isFocused,
1188
+ applyChange: handleEditableChange,
1189
+ onCaret: setCaretIndex,
1190
+ });
1191
+
1192
+ // A completion is an edit like a keystroke: recorded for undo, then the one change path.
1193
+ const applyCompletionEdit = useCallback((next: string, caret: number) => {
1194
+ const ta = editableTextareaRef.current;
1195
+ if (!ta) return;
1196
+ recordKeystroke(ta.value, ta.selectionStart, next);
1197
+ ta.value = next;
1198
+ ta.setSelectionRange(caret, caret);
1199
+ handleEditableChange(next, 'keystroke');
1200
+ }, [recordKeystroke, handleEditableChange]);
1201
+
1202
+ const completion = useCodeCompletion(editable ? completions : undefined, editableTextareaRef, applyCompletionEdit);
1203
+ // A list the typed prefix has narrowed is the exact answer; an empty-prefix list is only a menu.
1204
+ const keywordListNarrowed = completion.isNarrowed;
1205
+ const askOnPause = useCallback(() => !keywordListNarrowed(), [keywordListNarrowed]);
1206
+ const assist = useCodeAssist(editable ? assistProvider : undefined, editableTextareaRef, applyCompletionEdit, askOnPause);
1207
+ const problemCount = problems ?? errorLines?.size ?? 0;
1208
+ const diagnosticRangesNow = useMemo((): DiagnosticRange[] => {
1209
+ if (!editable || !diagnostics || diagnostics.length === 0) return [];
1210
+ const basis = diagnosticsCode ?? editableValue;
1211
+ return remapRanges(basis, editableValue, diagnosticRanges(basis, diagnostics));
1212
+ }, [editable, diagnostics, diagnosticsCode, editableValue]);
1213
+ const diagnosticUnderlines = useMemo(
1214
+ () => (diagnosticRangesNow.length > 0 ? underlineSegments(editableValue, diagnosticRangesNow) : []),
1215
+ [diagnosticRangesNow, editableValue],
1216
+ );
1217
+ const diagnosticHere = diagnosticAt(diagnosticRangesNow, caretIndex);
1218
+ const showGutter = editable && lineNumbers !== false;
1219
+ const lineCount = editableValue.split('\n').length;
1220
+ const gutterWidth = showGutter ? String(lineCount).length * 8 + 20 : 0;
1221
+ const errorLineSet = useMemo(() => {
1222
+ const set = new Set<number>(errorLines ? [...errorLines.keys()] : []);
1223
+ for (const r of diagnosticRangesNow) {
1224
+ if (r.severity === 'error') set.add(editableValue.slice(0, r.from).split('\n').length);
1225
+ }
1226
+ return set;
1227
+ }, [errorLines, diagnosticRangesNow, editableValue]);
1228
+ const ghost = assist.atCaret ? assist.suggestions[0] : undefined;
1229
+ const keyword = completion.offer ? completion.offer.result.candidates[completion.selected] : undefined;
1230
+ // What shows at the caret: the model's completion, else the rest of the highlighted keyword.
1231
+ const inline = ghost
1232
+ ? { at: ghost.from, text: ghost.text }
1233
+ : completion.offer && keyword
1234
+ ? {
1235
+ at: completion.offer.offset,
1236
+ text: keyword.label.startsWith(completion.offer.result.prefix) ? keyword.label.slice(completion.offer.result.prefix.length) : '',
1237
+ }
1238
+ : undefined;
1239
+ const ghostLines = inline ? inline.text.split('\n') : [];
1240
+ const listed = ghost ? assist.suggestions.slice(1) : assist.suggestions;
1241
+ const ghostAnchorRef = useRef<HTMLDivElement | null>(null);
1242
+ const [anchor, setAnchor] = useState({ top: 0, left: 0, scrollTop: 0, scrollLeft: 0, height: 0 });
1243
+ useLayoutEffect(() => {
1244
+ const a = ghostAnchorRef.current;
1245
+ const ov = editableOverlayRef.current;
1246
+ if (a && ov) setAnchor({ top: a.offsetTop, left: a.offsetLeft, scrollTop: ov.scrollTop, scrollLeft: ov.scrollLeft, height: ov.clientHeight });
1247
+ }, [inline?.at, inline?.text, editableValue, scrollTick]);
1248
+ // A completion from the model wins Tab over the language's keyword list.
1249
+ useEffect(() => {
1250
+ if (ghost) completion.dismiss();
1251
+ }, [ghost, completion.dismiss]);
1252
+
1253
+ const handleEditableKeyDown = useCallback(
1254
+ (e: React.KeyboardEvent<HTMLTextAreaElement>) => {
1255
+ const ta = editableTextareaRef.current;
1256
+ if (ta) prevCaretRef.current = ta.selectionStart;
1257
+ if (onKey && editorId && (capturedKeys.has(e.key) || capturedKeys.has(keyChord(e)))) {
1258
+ e.preventDefault();
1259
+ eventBus.emit(`UI:${onKey}`, { editorId, key: e.key, code: e.code, ctrl: e.ctrlKey, alt: e.altKey, shift: e.shiftKey, meta: e.metaKey, repeat: e.repeat } satisfies EditorKeyEvent);
1260
+ return;
1261
+ }
1262
+ if (assist.onKeyDown(e)) return;
1263
+ if (completion.onKeyDown(e)) return;
1264
+ const mod = e.metaKey || e.ctrlKey;
1265
+ if (!mod) return;
1266
+ if (e.key === 'Enter' && ta && onGoToDefinition) {
1267
+ const id = definitionAtOffset(ta.value, ta.selectionStart);
1268
+ if (id) {
1269
+ e.preventDefault();
1270
+ onGoToDefinition(id.text);
1271
+ return;
1272
+ }
1273
+ }
1274
+ const key = e.key.toLowerCase();
1275
+ if (key === 'z' && !e.shiftKey) {
1276
+ e.preventDefault();
1277
+ undo();
1278
+ } else if ((key === 'z' && e.shiftKey) || key === 'y') {
1279
+ e.preventDefault();
1280
+ redo();
1281
+ }
1282
+ },
1283
+ [undo, redo, completion, assist, onGoToDefinition, definitionAtOffset, onKey, editorId, capturedKeys, eventBus],
1284
+ );
1285
+
1286
+ const showBlockCaret = isFocused && caretMode !== 'bar';
1287
+
1288
+ // SV4-4: measure the caret's pixel position via the standard
1289
+ // textarea-caret technique (a hidden mirror div that copies the
1290
+ // textarea's computed box/font/wrap so wrapped lines and tabs measure
1291
+ // correctly — jsdom has no layout, so this is a no-op there beyond
1292
+ // building the mirror's DOM).
1293
+ useLayoutEffect(() => {
1294
+ if (!showBlockCaret) return;
1295
+ const ta = editableTextareaRef.current;
1296
+ const mirror = caretMirrorRef.current;
1297
+ const marker = caretMarkerRef.current;
1298
+ if (!ta || !mirror || !marker) return;
1299
+ const computed = window.getComputedStyle(ta);
1300
+ const MIRRORED_PROPS = [
1301
+ 'font-family',
1302
+ 'font-size',
1303
+ 'font-weight',
1304
+ 'font-style',
1305
+ 'letter-spacing',
1306
+ 'line-height',
1307
+ 'padding-top',
1308
+ 'padding-right',
1309
+ 'padding-bottom',
1310
+ 'padding-left',
1311
+ 'border-top-width',
1312
+ 'border-right-width',
1313
+ 'border-bottom-width',
1314
+ 'border-left-width',
1315
+ 'box-sizing',
1316
+ 'width',
1317
+ 'white-space',
1318
+ 'word-break',
1319
+ 'overflow-wrap',
1320
+ 'tab-size',
1321
+ ] as const;
1322
+ for (const prop of MIRRORED_PROPS) {
1323
+ mirror.style.setProperty(prop, computed.getPropertyValue(prop));
1324
+ }
1325
+ const lineHeight = parseFloat(computed.getPropertyValue('line-height'));
1326
+ setCaretGeometry({
1327
+ top: marker.offsetTop,
1328
+ left: marker.offsetLeft,
1329
+ lineHeight: Number.isFinite(lineHeight) ? lineHeight : 0,
1330
+ });
1331
+ }, [showBlockCaret, editableValue, caretIndex]);
1332
+
1333
+ // GAP-80: line-level error highlights (editable overlay). Memoized so
1334
+ // identity is stable across renders when `errorLines` hasn't changed.
1335
+ const errorLineProps = useMemo(() => buildLineProps(errorLines), [errorLines]);
1336
+ // Viewer-mode non-diff highlight: same severity behavior as above, plus
1337
+ // the per-row padding/hover chrome the old hand-rolled `<Typography>`
1338
+ // rows carried.
1339
+ const highlightStart = highlightLines?.start;
1340
+ const highlightEnd = highlightLines?.end;
1341
+ const highlightRange = useMemo(
1342
+ () => (highlightStart !== undefined && highlightEnd !== undefined ? { start: highlightStart, end: highlightEnd } : undefined),
1343
+ [highlightStart, highlightEnd],
1344
+ );
1345
+ const viewerLineProps = useMemo(
1346
+ () => buildLineProps(errorLines, 'px-4 py-0.5 hover:bg-muted/50', highlightRange),
1347
+ [errorLines, highlightRange],
1348
+ );
1349
+ const standardLineProps = useMemo(
1350
+ () => (highlightRange === undefined ? LINE_PROPS_FN : buildLineProps(undefined, undefined, highlightRange)),
1351
+ [highlightRange],
1352
+ );
1353
+
1354
+ // ── Fold state ──
1355
+ // Folding is brace-based (language-agnostic): any language with multi-line
1356
+ // `{}`/`[]` blocks gets collapse/expand gutters by default. Languages with
1357
+ // no such blocks yield zero fold regions, so this is a no-op for them.
1358
+ const isFoldable = foldableProp ?? true;
1359
+ const [collapsed, setCollapsed] = useState<Set<number>>(() => new Set());
1360
+
1361
+ const foldRegions = useMemo(
1362
+ () => (isFoldable && !overCapacity ? computeFoldRegions(code) : []),
1363
+ [code, isFoldable, overCapacity],
1364
+ );
1365
+ const foldStartMap = useMemo(() => {
1366
+ const m = new Map<number, FoldRegion>();
1367
+ for (const r of foldRegions) m.set(r.start, r);
1368
+ return m;
1369
+ }, [foldRegions]);
1370
+
1371
+ const hiddenLines = useMemo(() => {
1372
+ const h = new Set<number>();
1373
+ for (const r of foldRegions) {
1374
+ if (!collapsed.has(r.start)) continue;
1375
+ for (let i = r.start + 1; i <= r.end; i++) h.add(i);
1376
+ }
1377
+ return h;
1378
+ }, [foldRegions, collapsed]);
1379
+
1380
+ // Keep refs current so DOM click handlers can read latest state
1381
+ const collapsedRef = useRef(collapsed);
1382
+ collapsedRef.current = collapsed;
1383
+ const foldStartMapRef = useRef(foldStartMap);
1384
+ foldStartMapRef.current = foldStartMap;
1385
+ const hiddenLinesRef = useRef(hiddenLines);
1386
+ hiddenLinesRef.current = hiddenLines;
1387
+
1388
+ const toggleFold = useCallback((lineNum: number) => {
1389
+ setCollapsed((prev) => {
1390
+ const next = new Set(prev);
1391
+ if (next.has(lineNum)) next.delete(lineNum);
1392
+ else next.add(lineNum);
1393
+ return next;
1394
+ });
1395
+ }, []);
1396
+ const toggleFoldRef = useRef(toggleFold);
1397
+ toggleFoldRef.current = toggleFold;
1398
+
1399
+ useEffect(() => { setCollapsed(new Set()); }, [code]);
1400
+
1401
+ // ── Memoized editable overlay highlight ──
1402
+ // Same discipline as the read-only element below: tokenizing is O(code)
1403
+ // and re-runs on EVERY render when built inline, so a parent that
1404
+ // re-renders steadily (polling badge, SSE state) against a large schema
1405
+ // queues highlight passes faster than they finish and wedges the main
1406
+ // thread. Only a keystroke (editableValue) or grammar/style change may
1407
+ // re-tokenize.
1408
+ const editableOverCapacity = editableValue.length > HIGHLIGHT_CAPACITY_BYTES;
1409
+ const editableHighlightedElement = useMemo(
1410
+ () =>
1411
+ editableOverCapacity || prism === undefined ? (
1412
+ <div
1413
+ style={{
1414
+ padding: '1rem',
1415
+ margin: 0,
1416
+ whiteSpace: 'pre',
1417
+ minWidth: '100%',
1418
+ color: plainCodeColor,
1419
+ fontFamily: 'ui-monospace, SFMono-Regular, Menlo, Monaco, "Cascadia Mono", "Courier New", monospace',
1420
+ fontSize: '13px',
1421
+ lineHeight: '1.5',
1422
+ }}
1423
+ >
1424
+ {overlayText(editableValue)}
1425
+ </div>
1426
+ ) : (
1427
+ <prism.SyntaxHighlighter
1428
+ PreTag="div"
1429
+ renderer={renderWithTokenTypes}
1430
+ language={language}
1431
+ style={activeStyle}
1432
+ wrapLines={errorLines && errorLines.size > 0}
1433
+ lineProps={errorLineProps}
1434
+ customStyle={{
1435
+ backgroundColor: 'transparent',
1436
+ borderRadius: 0,
1437
+ padding: '1rem',
1438
+ margin: 0,
1439
+ whiteSpace: 'pre',
1440
+ minWidth: '100%',
1441
+ fontFamily: 'ui-monospace, SFMono-Regular, Menlo, Monaco, "Cascadia Mono", "Courier New", monospace',
1442
+ fontSize: '13px',
1443
+ lineHeight: '1.5',
1444
+ }}
1445
+ codeTagProps={{
1446
+ style: {
1447
+ fontFamily: 'ui-monospace, SFMono-Regular, Menlo, Monaco, "Cascadia Mono", "Courier New", monospace',
1448
+ fontSize: '13px',
1449
+ lineHeight: '1.5',
1450
+ },
1451
+ }}
1452
+ >
1453
+ {overlayText(editableValue)}
1454
+ </prism.SyntaxHighlighter>
1455
+ ),
1456
+ [editableValue, editableOverCapacity, plainCodeColor, language, activeStyle, errorLines, errorLineProps, languageReady, prism],
1457
+ );
1458
+
1459
+ // Keep the highlighted range in the middle of whichever scroller is showing.
1460
+ const reduceMotion = useMediaQuery('(prefers-reduced-motion: reduce)');
1461
+ useEffect(() => {
1462
+ if (highlightRange === undefined) return;
1463
+ const host = viewerScrollRef.current ?? scrollRef.current;
1464
+ const first = host?.querySelector<HTMLElement>(`[data-line="${highlightRange.start - 1}"]`);
1465
+ const last = host?.querySelector<HTMLElement>(`[data-line="${highlightRange.end - 1}"]`) ?? first;
1466
+ if (!host || !first || !last) return;
1467
+ const hostBox = host.getBoundingClientRect();
1468
+ const top = first.getBoundingClientRect().top;
1469
+ const bottom = last.getBoundingClientRect().bottom;
1470
+ const target = host.scrollTop + (top + bottom) / 2 - (hostBox.top + hostBox.height / 2);
1471
+ host.scrollTo({ top: Math.max(0, target), behavior: reduceMotion ? 'auto' : 'smooth' });
1472
+ }, [highlightRange, reduceMotion, languageReady, prism, activeCode, code]);
1473
+
1474
+ // ── Memoized highlight (never re-tokenizes on fold toggle) ──
1475
+ // showLineNumbers + showInlineLineNumbers=false gives proper data-line
1476
+ // without rendering inline numbers. lineNumberContainerStyle hides the gutter.
1477
+ const highlightedElement = useMemo(
1478
+ () =>
1479
+ overCapacity || prism === undefined ? (
1480
+ <PlainCodeChunks
1481
+ code={code}
1482
+ style={{
1483
+ margin: 0,
1484
+ whiteSpace: 'pre',
1485
+ color: plainCodeColor,
1486
+ }}
1487
+ />
1488
+ ) : (
1489
+ <prism.SyntaxHighlighter
1490
+ PreTag="div"
1491
+ language={language}
1492
+ style={activeStyle}
1493
+ wrapLines
1494
+ showLineNumbers
1495
+ showInlineLineNumbers={false}
1496
+ lineNumberContainerStyle={HIDDEN_LINE_NUMBERS}
1497
+ lineProps={standardLineProps}
1498
+ customStyle={{
1499
+ backgroundColor: 'transparent',
1500
+ borderRadius: 0,
1501
+ padding: 0,
1502
+ margin: 0,
1503
+ whiteSpace: 'pre',
1504
+ minWidth: '100%',
1505
+ }}
1506
+ >
1507
+ {code}
1508
+ </prism.SyntaxHighlighter>
1509
+ ),
1510
+ [code, overCapacity, plainCodeColor, language, activeStyle, languageReady, standardLineProps, prism],
1511
+ );
1512
+
1513
+ // ── Memoized viewer-mode highlight (non-diff) ──
1514
+ // GAP-84: this used to be `activeCode.split('\n')` mapped straight into
1515
+ // `<Typography>` rows with no Prism pass at all. Same SyntaxHighlighter
1516
+ // machinery as the two branches above — `showLineNumbers` and `wrap` are
1517
+ // honored through its own `showLineNumbers`/`wrapLongLines` props instead
1518
+ // of a hand-rolled number column, and `viewerLineProps` carries GAP-80
1519
+ // severity highlighting into viewer mode for the first time.
1520
+ const viewerOverCapacity = activeCode.length > HIGHLIGHT_CAPACITY_BYTES;
1521
+ const viewerHighlightedElement = useMemo(
1522
+ () =>
1523
+ viewerOverCapacity || prism === undefined ? (
1524
+ <PlainCodeChunks
1525
+ code={activeCode}
1526
+ style={{
1527
+ margin: 0,
1528
+ padding: '0.125rem 1rem',
1529
+ whiteSpace: wrap ? 'pre-wrap' : 'pre',
1530
+ wordBreak: wrap ? 'break-all' : 'normal',
1531
+ color: viewerPlainCodeColor,
1532
+ fontFamily: MONO_FONT_FAMILY,
1533
+ fontSize: '12px',
1534
+ lineHeight: '1.6',
1535
+ }}
1536
+ />
1537
+ ) : (
1538
+ <prism.SyntaxHighlighter
1539
+ PreTag="div"
1540
+ language={activeLanguage}
1541
+ style={viewerStyle}
1542
+ wrapLines
1543
+ wrapLongLines={wrap}
1544
+ showLineNumbers
1545
+ showInlineLineNumbers={showLineNumbers}
1546
+ {...(showLineNumbers ? {} : { lineNumberContainerStyle: HIDDEN_LINE_NUMBERS })}
1547
+ lineNumberStyle={codeDir === 'rtl' ? VIEWER_LINE_NUMBER_STYLE_RTL : VIEWER_LINE_NUMBER_STYLE}
1548
+ lineProps={viewerLineProps}
1549
+ renderer={codeDir === 'rtl' ? renderRtlCode : undefined}
1550
+ customStyle={{
1551
+ backgroundColor: 'transparent',
1552
+ borderRadius: 0,
1553
+ padding: '0.25rem 0',
1554
+ margin: 0,
1555
+ whiteSpace: wrap ? 'pre-wrap' : 'pre',
1556
+ wordBreak: wrap ? 'break-all' : 'normal',
1557
+ fontFamily: MONO_FONT_FAMILY,
1558
+ fontSize: '12px',
1559
+ lineHeight: '1.6',
1560
+ direction: codeDir,
1561
+ textAlign: 'start',
1562
+ }}
1563
+ codeTagProps={{ style: { fontFamily: MONO_FONT_FAMILY, fontSize: '12px', lineHeight: '1.6', direction: codeDir, textAlign: 'start' } }}
1564
+ >
1565
+ {activeCode}
1566
+ </prism.SyntaxHighlighter>
1567
+ ),
1568
+ [activeCode, viewerOverCapacity, viewerPlainCodeColor, activeLanguage, viewerStyle, wrap, showLineNumbers, viewerLineProps, languageReady, codeDir, prism],
1569
+ );
1570
+
1571
+ // ── Memoized diff-mode row highlighting ──
1572
+ // react-syntax-highlighter tokenizes its whole `children` string as one
1573
+ // unit, so a single call can't hand back independently-styled
1574
+ // +/-/context row backgrounds AND a leading prefix glyph that stays
1575
+ // outside the tokenized span (`lineProps` sets element attributes, not
1576
+ // children) — that chrome lives in this component's own JSX
1577
+ // (`DIFF_STYLES`), not Prism's. So each diff row gets its own
1578
+ // SyntaxHighlighter instance, tokenizing only that row's content; the
1579
+ // surrounding HStack/Typography/prefix markup is unchanged. Acceptable
1580
+ // for diff rows specifically (typically short) and still capacity-gated
1581
+ // like every other branch in this file.
1582
+ const diffOverCapacity = useMemo(
1583
+ () => !!diffLines && diffLines.reduce((n, l) => n + l.content.length + 1, 0) > HIGHLIGHT_CAPACITY_BYTES,
1584
+ [diffLines],
1585
+ );
1586
+ const diffRowElements = useMemo(() => {
1587
+ if (!diffLines) return null;
1588
+ return diffLines.map((line, idx) => {
1589
+ const style = DIFF_STYLES[line.type] ?? DIFF_STYLE_FALLBACK;
1590
+ return (
1591
+ <HStack key={idx} gap="none" align="start" className={cn(style.bg, 'px-4 py-0.5')}>
1592
+ {showLineNumbers && (
1593
+ <Typography
1594
+ variant="caption"
1595
+ color="secondary"
1596
+ className="w-8 text-right mr-3 select-none tabular-nums flex-shrink-0"
1597
+ >
1598
+ {line.lineNumber ?? ''}
1599
+ </Typography>
1600
+ )}
1601
+ <Typography
1602
+ variant="caption"
1603
+ className={cn('font-mono flex-1 min-w-0', style.text, wrap ? 'whitespace-pre-wrap break-all' : 'whitespace-pre')}
1604
+ >
1605
+ <Box as="span" className="select-none opacity-50 mr-2">{style.prefix}</Box>
1606
+ {diffOverCapacity || prism === undefined ? (
1607
+ line.content || ' '
1608
+ ) : (
1609
+ <prism.SyntaxHighlighter
1610
+ PreTag="span"
1611
+ CodeTag="span"
1612
+ language={activeLanguage}
1613
+ style={viewerStyle}
1614
+ customStyle={{
1615
+ display: 'inline',
1616
+ background: 'transparent',
1617
+ padding: 0,
1618
+ margin: 0,
1619
+ whiteSpace: wrap ? 'pre-wrap' : 'pre',
1620
+ wordBreak: wrap ? 'break-all' : 'normal',
1621
+ fontFamily: 'inherit',
1622
+ fontSize: 'inherit',
1623
+ lineHeight: 'inherit',
1624
+ }}
1625
+ codeTagProps={{
1626
+ style: {
1627
+ whiteSpace: wrap ? 'pre-wrap' : 'pre',
1628
+ fontFamily: 'inherit',
1629
+ fontSize: 'inherit',
1630
+ },
1631
+ }}
1632
+ >
1633
+ {line.content || ' '}
1634
+ </prism.SyntaxHighlighter>
1635
+ )}
1636
+ </Typography>
1637
+ </HStack>
1638
+ );
1639
+ });
1640
+ }, [diffLines, showLineNumbers, wrap, diffOverCapacity, activeLanguage, viewerStyle, languageReady, prism]);
1641
+
1642
+ // ── DOM-level fold UI (no re-tokenization, just style + element injection) ──
1643
+ useLayoutEffect(() => {
1644
+ const container = codeRef.current;
1645
+ if (!container) return;
1646
+
1647
+ // Clean previous fold UI
1648
+ container.querySelectorAll('.fold-toggle, .fold-summary').forEach((el) => el.remove());
1649
+
1650
+ // Reset all line styles
1651
+ const lineEls = container.querySelectorAll<HTMLElement>('[data-line]');
1652
+ if (!isFoldable || foldRegions.length === 0) {
1653
+ lineEls.forEach((el) => { el.style.display = ''; el.style.position = ''; el.style.paddingLeft = ''; });
1654
+ return;
1655
+ }
1656
+
1657
+ // Uniform left padding on ALL lines for aligned fold gutter
1658
+ lineEls.forEach((el) => {
1659
+ const num = parseInt(el.getAttribute('data-line') ?? '-1', 10);
1660
+
1661
+ if (hiddenLines.has(num)) {
1662
+ el.style.display = 'none';
1663
+ return;
1664
+ }
1665
+
1666
+ el.style.display = '';
1667
+ el.style.position = 'relative';
1668
+ el.style.paddingLeft = '1.2em';
1669
+
1670
+ const region = foldStartMap.get(num);
1671
+ if (!region) return;
1672
+
1673
+ const isCollapsed = collapsed.has(num);
1674
+
1675
+ // Fold toggle — positioned in the left padding area
1676
+ const toggle = document.createElement('span');
1677
+ toggle.className = 'fold-toggle';
1678
+ toggle.textContent = isCollapsed ? '▶' : '▼';
1679
+ toggle.style.cssText =
1680
+ 'position:absolute;left:0;top:0;width:1.2em;text-align:center;' +
1681
+ 'cursor:pointer;color:#858585;font-size:10px;user-select:none;' +
1682
+ 'line-height:inherit;height:100%';
1683
+ toggle.addEventListener('click', (e) => {
1684
+ e.stopPropagation();
1685
+ toggleFoldRef.current(num);
1686
+ });
1687
+ el.insertBefore(toggle, el.firstChild);
1688
+
1689
+ // Fold summary for collapsed regions
1690
+ if (isCollapsed) {
1691
+ const summary = document.createElement('span');
1692
+ summary.className = 'fold-summary';
1693
+ summary.style.cssText = 'color:#858585;font-style:italic';
1694
+ const count = region.end - region.start - 1;
1695
+ summary.textContent = ` ... ${count} line${count !== 1 ? 's' : ''} ${region.closeBracket}`;
1696
+ el.appendChild(summary);
1697
+ }
1698
+ });
1699
+ }, [collapsed, hiddenLines, foldStartMap, foldRegions, isFoldable]);
1700
+
1701
+ // Save scrollLeft before updates
1702
+ useLayoutEffect(() => {
1703
+ const el = scrollRef.current;
1704
+ return () => { if (el) savedScrollLeftRef.current = el.scrollLeft; };
1705
+ }, [language, code]);
1706
+
1707
+ // Restore scrollLeft after updates
1708
+ useLayoutEffect(() => {
1709
+ const el = scrollRef.current;
1710
+ if (el) el.scrollLeft = savedScrollLeftRef.current;
1711
+ }, [language, code]);
1712
+
1713
+ // Native scroll listener to keep position updated
1714
+ useEffect(() => {
1715
+ const el = scrollRef.current;
1716
+ if (!el) return;
1717
+ const handle = () => { savedScrollLeftRef.current = el.scrollLeft; };
1718
+ el.addEventListener('scroll', handle, { passive: true });
1719
+ return () => el.removeEventListener('scroll', handle);
1720
+ }, [language, code]);
1721
+
1722
+ const handleCopy = async () => {
1723
+ try {
1724
+ await navigator.clipboard.writeText(activeCode);
1725
+ setCopied(true);
1726
+ eventBus.emit('UI:COPY_CODE', { language: activeLanguage, success: true });
1727
+ setTimeout(() => setCopied(false), 2000);
1728
+ } catch (err) {
1729
+ log.error('Failed to copy code', { error: err instanceof Error ? err : String(err) });
1730
+ eventBus.emit('UI:COPY_CODE', { language: activeLanguage, success: false });
1731
+ }
1732
+ };
1733
+
1734
+ // Selection-copy: when the selection spans collapsed (folded) lines, the
1735
+ // DOM only holds the `… N lines` summary plus the visible lines, so a plain
1736
+ // copy loses the folded content. Reconstruct the selected line range from
1737
+ // the original `code` (fully expanded) instead. Untouched when the range
1738
+ // has no hidden lines, so partial in-line selections copy verbatim.
1739
+ const handleSelectionCopy = useCallback((e: React.ClipboardEvent<HTMLDivElement>) => {
1740
+ if (hiddenLinesRef.current.size === 0) return;
1741
+ const sel = typeof window !== 'undefined' ? window.getSelection() : null;
1742
+ if (!sel || sel.rangeCount === 0 || sel.isCollapsed) return;
1743
+ const lineOf = (node: Node | null): number | null => {
1744
+ const start = node instanceof HTMLElement ? node : node?.parentElement ?? null;
1745
+ const lineEl = start?.closest('[data-line]') as HTMLElement | null;
1746
+ if (!lineEl) return null;
1747
+ const n = parseInt(lineEl.getAttribute('data-line') ?? '', 10);
1748
+ return Number.isNaN(n) ? null : n;
1749
+ };
1750
+ const range = sel.getRangeAt(0);
1751
+ let a = lineOf(range.startContainer);
1752
+ let b = lineOf(range.endContainer);
1753
+ // Endpoints can land on a container (e.g. select-all) rather than inside a
1754
+ // line — fall back to the min/max line the selection actually intersects.
1755
+ if (a === null || b === null) {
1756
+ const container = codeRef.current;
1757
+ if (!container) return;
1758
+ let min = Infinity, max = -Infinity;
1759
+ container.querySelectorAll('[data-line]').forEach((el) => {
1760
+ if (!sel.containsNode(el, true)) return;
1761
+ const n = parseInt(el.getAttribute('data-line') ?? '', 10);
1762
+ if (!Number.isNaN(n)) { min = Math.min(min, n); max = Math.max(max, n); }
1763
+ });
1764
+ if (min === Infinity) return;
1765
+ a = a ?? min;
1766
+ b = b ?? max;
1767
+ }
1768
+ if (a > b) [a, b] = [b, a];
1769
+ // A folded region is represented by its (visible) start line plus the
1770
+ // `… N lines` summary; the body lines are hidden below it. The selection
1771
+ // "touches" folded content if it covers a hidden line OR a collapsed
1772
+ // start line. When it does, expand the range over every collapsed region
1773
+ // it reaches (fixpoint, so nested folds are covered) and emit the
1774
+ // original — fully-expanded — slice. Otherwise leave the copy verbatim.
1775
+ let touchesFold = false;
1776
+ for (let i = a; i <= b; i++) {
1777
+ if (hiddenLinesRef.current.has(i) || (foldStartMapRef.current.has(i) && collapsedRef.current.has(i))) {
1778
+ touchesFold = true;
1779
+ break;
1780
+ }
1781
+ }
1782
+ if (!touchesFold) return;
1783
+ // Expand the end over every collapsed region the selection reaches.
1784
+ // `b` is non-null here, but reassigning it inside the closure below would
1785
+ // widen it back to `number | null` for TS — use a dedicated number local.
1786
+ let endLine = b;
1787
+ let changed = true;
1788
+ while (changed) {
1789
+ changed = false;
1790
+ foldStartMapRef.current.forEach((region, start) => {
1791
+ if (start >= a && start <= endLine && collapsedRef.current.has(start) && region.end > endLine) {
1792
+ endLine = region.end;
1793
+ changed = true;
1794
+ }
1795
+ });
1796
+ }
1797
+ const full = activeCode.split('\n').slice(a, endLine + 1).join('\n');
1798
+ e.clipboardData.setData('text/plain', full);
1799
+ e.preventDefault();
1800
+ }, [code]);
1801
+
1802
+ // ── Loading / error / empty guards ───────────────────────────────────────
1803
+ if (isLoading) {
1804
+ return <LoadingState message={t('common.loading')} className={className} />;
1805
+ }
1806
+ if (error) {
1807
+ return <ErrorState title={t('display.codeViewerError')} message={error.message} className={className} />;
1808
+ }
1809
+ if (isViewerMode && !activeCode && !diffLines) {
1810
+ return <EmptyState icon={CodeIcon} title={t('display.noCode')} description={t('codeBlock.noCode')} className={className} />;
1811
+ }
1812
+
1813
+ // ── Viewer mode (title / multi-file / diff / showLineNumbers) ─────────────
1814
+ if (isViewerMode) {
1815
+ const tabItems: TabItem[] | undefined = files?.map((file, idx) => ({
1816
+ id: `file-${idx}`,
1817
+ label: file.label,
1818
+ content: null,
1819
+ }));
1820
+
1821
+ return (
1822
+ <SelectionAnnotator askEvent={askEvent} noteEvent={noteEvent} askLabel={askLabel} noteLabel={noteLabel}>
1823
+ <Card {...domPassthrough(a11yRest)} className={cn('overflow-hidden flex flex-col', className)}>
1824
+ <Box className="flex flex-col flex-1 min-h-0">
1825
+ {naturalTabStrip}
1826
+ {tabItems && tabItems.length > 1 && (
1827
+ <Box className="border-b border-border">
1828
+ <Tabs
1829
+ tabs={tabItems}
1830
+ activeTab={`file-${activeFileIndex}`}
1831
+ onTabChange={(id) => {
1832
+ const idx = parseInt(id.replace('file-', ''), 10);
1833
+ setActiveFileIndex(idx);
1834
+ }}
1835
+ />
1836
+ </Box>
1837
+ )}
1838
+ <HStack
1839
+ gap="sm"
1840
+ align="center"
1841
+ justify="between"
1842
+ className="px-4 py-2 border-b border-border bg-muted/30"
1843
+ >
1844
+ <HStack gap="sm" align="center">
1845
+ <Icon icon={mode === 'diff' ? FileText : CodeIcon} size="sm" className="text-muted-foreground" />
1846
+ {title && (
1847
+ <Typography variant="small" weight="medium" className="truncate">
1848
+ {title}
1849
+ </Typography>
1850
+ )}
1851
+ {activeLanguage && activeLanguage !== 'text' && (
1852
+ <Badge variant="default">{activeLanguage}</Badge>
1853
+ )}
1854
+ </HStack>
1855
+ <HStack gap="xs" align="center">
1856
+ <Button
1857
+ variant="ghost"
1858
+ size="sm"
1859
+ icon={WrapText}
1860
+ aria-label={t('aria.wrapLines')}
1861
+ aria-pressed={wrap}
1862
+ onClick={() => setWrap(!wrap)}
1863
+ className={cn(wrap && 'text-primary')}
1864
+ />
1865
+ {effectiveCopy && (
1866
+ <Button
1867
+ variant="ghost"
1868
+ size="sm"
1869
+ icon={copied ? Check : Copy}
1870
+ aria-label={t('aria.copyCode')}
1871
+ onClick={handleCopy}
1872
+ className={cn(copied && 'text-success')}
1873
+ />
1874
+ )}
1875
+ {actions?.map((action, idx) => (
1876
+ <Badge
1877
+ key={idx}
1878
+ variant="default"
1879
+ className="cursor-pointer hover:opacity-80 transition-opacity"
1880
+ onClick={() => {
1881
+ if (action.event) eventBus.emit(`UI:${action.event}`, {});
1882
+ }}
1883
+ >
1884
+ {action.label}
1885
+ </Badge>
1886
+ ))}
1887
+ </HStack>
1888
+ </HStack>
1889
+ <Box ref={viewerScrollRef} className="overflow-auto min-h-0 bg-muted/20" style={{ maxHeight }} dir={codeDir} role="region" tabIndex={0} aria-label={title ?? t('codeBlock.region')}>
1890
+ {diffLines ? (
1891
+ <div style={{ display: 'flex', flexDirection: 'column' }} className="font-mono text-xs">
1892
+ {diffRowElements}
1893
+ </div>
1894
+ ) : (
1895
+ <div className="font-mono text-xs">{viewerHighlightedElement}</div>
1896
+ )}
1897
+ </Box>
1898
+ </Box>
1899
+ </Card>
1900
+ </SelectionAnnotator>
1901
+ );
1902
+ }
1903
+
1904
+ // ── Standard PrismLight code block (original behavior) ────────────────────
1905
+ // A copy button alone floats over the code box; only a language badge earns a header bar.
1906
+ const hasHeader = showLanguageBadge;
1907
+ const copyButton = effectiveCopy ? (
1908
+ <Button
1909
+ variant="ghost"
1910
+ size="sm"
1911
+ onClick={handleCopy}
1912
+ className={`opacity-0 group-hover:opacity-100 focus:opacity-100 transition-opacity text-muted-foreground hover:text-foreground${hasHeader ? '' : ' absolute top-2 end-2 z-10'}`}
1913
+ aria-label={t('common.copy')}
1914
+ >
1915
+ {copied ? (
1916
+ <Icon name="check" className="w-4 h-4 text-success" />
1917
+ ) : (
1918
+ <Icon name="copy" className="w-4 h-4" />
1919
+ )}
1920
+ </Button>
1921
+ ) : null;
1922
+
1923
+ return (
1924
+ <SelectionAnnotator askEvent={editable ? undefined : askEvent} noteEvent={editable ? undefined : noteEvent} askLabel={askLabel} noteLabel={noteLabel}>
1925
+ <Box {...domPassthrough(a11yRest)} className={`relative group not-prose ${className || ''}`} style={{ display: 'flex', flexDirection: 'column', height: '100%' }}>
1926
+ {hasHeader ? (
1927
+ <HStack
1928
+ justify="between"
1929
+ align="center"
1930
+ className="px-3 py-2 bg-[var(--color-card)] rounded-t-container border-b border-border"
1931
+ data-testid="code-block-header"
1932
+ >
1933
+ <Badge variant="default" size="sm">
1934
+ {language}
1935
+ </Badge>
1936
+ {copyButton}
1937
+ </HStack>
1938
+ ) : copyButton}
1939
+ {naturalTabStrip}
1940
+
1941
+ {/* Code content */}
1942
+ {editable ? (
1943
+ /* GAP-77 / GAP-82 / GAP-83: editable mode = transparent textarea on
1944
+ top of a Prism-highlighted SyntaxHighlighter overlay.
1945
+
1946
+ Layout: BOTH children are `position: absolute, inset: 0` so neither
1947
+ contributes to flow. The parent Box has `height: 100%` so it fills
1948
+ whatever container the consumer provides (the consumer is
1949
+ responsible for giving the parent a real height — usually via flex
1950
+ column with `minHeight: 0`).
1951
+
1952
+ Stacking: the overlay is FIRST in DOM order so it paints first
1953
+ (behind), the textarea is SECOND so it paints second (on top). No
1954
+ explicit z-index — DOM order alone determines stacking inside the
1955
+ parent's stacking context. The textarea has `color: transparent`
1956
+ plus `WebkitTextFillColor: transparent` (Safari) so its glyphs
1957
+ never paint, but the caret stays visible via `caretColor`.
1958
+
1959
+ Scroll sync: textarea scrolls naturally; `handleEditableScroll`
1960
+ mirrors its scrollTop/scrollLeft onto the overlay div so the
1961
+ highlighted spans stay aligned with the textarea content.
1962
+
1963
+ Error highlights (GAP-80): `errorLines` prop accepts a Map of
1964
+ 1-based line numbers → severity. The overlay's SyntaxHighlighter
1965
+ uses `wrapLines` + `lineProps` to paint a colored background on
1966
+ those lines. */
1967
+ <Box
1968
+ style={{
1969
+ position: 'relative',
1970
+ flex: 1,
1971
+ minHeight: 0,
1972
+ maxHeight,
1973
+ backgroundColor: '#1e1e1e',
1974
+ borderRadius: hasHeader ? '0 0 0.5rem 0.5rem' : '0.5rem',
1975
+ overflow: 'hidden',
1976
+ }}
1977
+ >
1978
+ {showGutter && (
1979
+ <Box
1980
+ ref={editableGutterRef}
1981
+ aria-hidden
1982
+ data-testid="code-editor-gutter"
1983
+ style={{
1984
+ position: 'absolute',
1985
+ top: 0,
1986
+ left: 0,
1987
+ bottom: 0,
1988
+ width: gutterWidth,
1989
+ overflow: 'hidden',
1990
+ paddingTop: '1rem',
1991
+ paddingBottom: '1rem',
1992
+ pointerEvents: 'none',
1993
+ userSelect: 'none',
1994
+ }}
1995
+ >
1996
+ {Array.from({ length: lineCount }, (_, i) => {
1997
+ const isError = errorLineSet.has(i + 1);
1998
+ return (
1999
+ <Box
2000
+ key={i}
2001
+ data-error={isError ? 'true' : undefined}
2002
+ style={{
2003
+ height: EDITOR_LINE_PX,
2004
+ paddingRight: 8,
2005
+ textAlign: 'right',
2006
+ fontFamily: MONO_EDITOR_FONT,
2007
+ fontSize: '13px',
2008
+ lineHeight: '1.5',
2009
+ color: isError ? DIAGNOSTIC_ERROR_COLOR : GUTTER_COLOR,
2010
+ }}
2011
+ >
2012
+ {i + 1}
2013
+ </Box>
2014
+ );
2015
+ })}
2016
+ </Box>
2017
+ )}
2018
+ <div
2019
+ ref={editableOverlayRef}
2020
+ aria-hidden
2021
+ data-testid="code-editor-overlay"
2022
+ style={{
2023
+ position: 'absolute',
2024
+ top: 0,
2025
+ left: gutterWidth,
2026
+ width: `calc(100% - ${gutterWidth}px)`,
2027
+ height: '100%',
2028
+ overflow: 'hidden',
2029
+ pointerEvents: 'none',
2030
+ }}
2031
+ >
2032
+ <Box ref={highlightLayerRef} style={{ display: 'contents' }}>
2033
+ {editableHighlightedElement}
2034
+ </Box>
2035
+ {definitionHover && (
2036
+ <Box
2037
+ aria-hidden
2038
+ data-testid="code-definition-layer"
2039
+ style={{
2040
+ position: 'absolute',
2041
+ top: 0,
2042
+ left: 0,
2043
+ minWidth: '100%',
2044
+ padding: '1rem',
2045
+ margin: 0,
2046
+ whiteSpace: 'pre',
2047
+ color: 'transparent',
2048
+ fontFamily: MONO_EDITOR_FONT,
2049
+ fontSize: '13px',
2050
+ lineHeight: '1.5',
2051
+ }}
2052
+ >
2053
+ {editableValue.slice(0, definitionHover.start)}
2054
+ <Box
2055
+ as="span"
2056
+ data-testid="code-definition-link"
2057
+ style={{ textDecorationLine: 'underline', textDecorationColor: 'var(--color-primary)', textUnderlineOffset: '3px' }}
2058
+ >
2059
+ {editableValue.slice(definitionHover.start, definitionHover.end)}
2060
+ </Box>
2061
+ </Box>
2062
+ )}
2063
+ {diagnosticUnderlines.length > 0 && (
2064
+ <Box
2065
+ aria-hidden
2066
+ data-testid="code-diagnostics-layer"
2067
+ style={{
2068
+ position: 'absolute',
2069
+ top: 0,
2070
+ left: 0,
2071
+ minWidth: '100%',
2072
+ padding: '1rem',
2073
+ margin: 0,
2074
+ whiteSpace: 'pre',
2075
+ color: 'transparent',
2076
+ fontFamily: MONO_EDITOR_FONT,
2077
+ fontSize: '13px',
2078
+ lineHeight: '1.5',
2079
+ }}
2080
+ >
2081
+ {diagnosticUnderlines.map((seg, i) => {
2082
+ const mark = seg.range ?? seg.marker;
2083
+ if (!mark) return <React.Fragment key={i}>{seg.text}</React.Fragment>;
2084
+ return (
2085
+ <Box
2086
+ as="span"
2087
+ key={i}
2088
+ data-testid="code-diagnostic"
2089
+ data-severity={mark.severity}
2090
+ data-approximate={String(mark.approximate)}
2091
+ style={{
2092
+ textDecorationLine: 'underline',
2093
+ textDecorationStyle: mark.approximate ? 'dotted' : 'wavy',
2094
+ textDecorationColor: mark.severity === 'error' ? DIAGNOSTIC_ERROR_COLOR : DIAGNOSTIC_WARNING_COLOR,
2095
+ textDecorationThickness: '1.5px',
2096
+ textDecorationSkipInk: 'none',
2097
+ textUnderlineOffset: '3px',
2098
+ }}
2099
+ >
2100
+ {seg.range ? seg.text : '\u00a0'}
2101
+ </Box>
2102
+ );
2103
+ })}
2104
+ </Box>
2105
+ )}
2106
+ {inline && (
2107
+ <Box
2108
+ aria-hidden
2109
+ style={{
2110
+ position: 'absolute',
2111
+ top: 0,
2112
+ left: 0,
2113
+ minWidth: '100%',
2114
+ padding: '1rem',
2115
+ margin: 0,
2116
+ whiteSpace: 'pre',
2117
+ color: 'transparent',
2118
+ fontFamily: MONO_EDITOR_FONT,
2119
+ fontSize: '13px',
2120
+ lineHeight: '1.5',
2121
+ }}
2122
+ >
2123
+ {editableValue.slice(0, inline.at)}
2124
+ <Box as="span" ref={ghostAnchorRef} />
2125
+ {ghostLines[0] !== '' && (
2126
+ <Box as="span" data-testid="code-assist-ghost" style={{ color: GHOST_COLOR, backgroundColor: '#1e1e1e', fontStyle: 'italic' }}>
2127
+ {ghostLines[0]}
2128
+ </Box>
2129
+ )}
2130
+ </Box>
2131
+ )}
2132
+ {inline && ghostLines.length > 1 && (
2133
+ <Box
2134
+ aria-hidden
2135
+ data-testid="code-assist-ghost-rest"
2136
+ style={{
2137
+ position: 'absolute',
2138
+ top: anchor.top + EDITOR_LINE_PX,
2139
+ left: 0,
2140
+ minWidth: '100%',
2141
+ padding: '0 1rem',
2142
+ margin: 0,
2143
+ whiteSpace: 'pre',
2144
+ color: GHOST_COLOR,
2145
+ fontStyle: 'italic',
2146
+ backgroundColor: '#1e1e1e',
2147
+ borderTop: '1px dashed #3c3c3c',
2148
+ borderBottom: '1px dashed #3c3c3c',
2149
+ fontFamily: MONO_EDITOR_FONT,
2150
+ fontSize: '13px',
2151
+ lineHeight: '1.5',
2152
+ }}
2153
+ >
2154
+ {ghostLines.slice(1).join('\n')}
2155
+ </Box>
2156
+ )}
2157
+ {/* Block/underline caret render (SET_MODE), SV4-4: only while
2158
+ focused — the plugin re-announces SET_MODE on every
2159
+ EDITOR_FOCUS, and blur resets caretMode to 'bar' (the hook).
2160
+ Position comes from a hidden mirror div that copies the
2161
+ textarea's computed font/padding/width/wrap (the standard
2162
+ textarea-caret technique) so wrapped lines and tabs measure
2163
+ correctly — character-cell `ch`/row math doesn't. */}
2164
+ {showBlockCaret && (
2165
+ <div
2166
+ ref={caretMirrorRef}
2167
+ aria-hidden
2168
+ data-testid="editor-caret-mirror"
2169
+ style={{
2170
+ position: 'absolute',
2171
+ top: 0,
2172
+ left: 0,
2173
+ padding: '1rem',
2174
+ margin: 0,
2175
+ border: 'none',
2176
+ visibility: 'hidden',
2177
+ pointerEvents: 'none',
2178
+ }}
2179
+ >
2180
+ {editableValue.slice(0, caretIndex)}
2181
+ <span ref={caretMarkerRef} data-testid="editor-caret-marker">{'​'}</span>
2182
+ </div>
2183
+ )}
2184
+ {showBlockCaret && caretGeometry && (
2185
+ <span
2186
+ aria-hidden
2187
+ data-testid="editor-caret"
2188
+ style={{
2189
+ position: 'absolute',
2190
+ top: caretGeometry.top,
2191
+ left: caretGeometry.left,
2192
+ width: '1ch',
2193
+ height: caretMode === 'block' ? caretGeometry.lineHeight || '1.2em' : '2px',
2194
+ backgroundColor: caretMode === 'block' ? 'rgba(230, 230, 230, 0.5)' : undefined,
2195
+ borderBottom: caretMode === 'underline' ? '2px solid #e6e6e6' : undefined,
2196
+ pointerEvents: 'none',
2197
+ }}
2198
+ />
2199
+ )}
2200
+ </div>
2201
+ <Textarea
2202
+ key={editableTextareaKey}
2203
+ ref={editableTextareaRef}
2204
+ defaultValue={code}
2205
+ onChange={(e) => {
2206
+ const next = e.target.value;
2207
+ recordKeystroke(editableValue, prevCaretRef.current, next);
2208
+ assist.onEdited(editableValue, next);
2209
+ handleEditableChange(next, 'keystroke');
2210
+ }}
2211
+ onScroll={handleEditableScroll}
2212
+ onSelect={(e) => setCaretIndex(caretOf(e.currentTarget))}
2213
+ onKeyUp={(e) => {
2214
+ setCaretIndex(caretOf(e.currentTarget));
2215
+ if (e.key.startsWith('Arrow') || e.key === 'Home' || e.key === 'End' || e.key.startsWith('Page')) assist.onCaretMoved(e.currentTarget.selectionStart);
2216
+ completion.onKeyUp(e);
2217
+ assist.onKeyUp(e);
2218
+ }}
2219
+ onClick={(e) => {
2220
+ setCaretIndex(caretOf(e.currentTarget));
2221
+ assist.onCaretMoved(e.currentTarget.selectionStart);
2222
+ if ((e.metaKey || e.ctrlKey) && onGoToDefinition) {
2223
+ const id = definitionAtOffset(e.currentTarget.value, e.currentTarget.selectionStart);
2224
+ if (id) onGoToDefinition(id.text);
2225
+ }
2226
+ }}
2227
+ onMouseMove={(e) => {
2228
+ if (!definitionAt) return;
2229
+ if (!(e.metaKey || e.ctrlKey)) {
2230
+ if (definitionHover) setDefinitionHover(null);
2231
+ return;
2232
+ }
2233
+ const offset = offsetUnderPointer(e.currentTarget, highlightLayerRef.current, e.clientX, e.clientY);
2234
+ const id = offset === null ? null : definitionAtOffset(e.currentTarget.value, offset);
2235
+ if (id?.start !== definitionHover?.start || id?.end !== definitionHover?.end) setDefinitionHover(id);
2236
+ }}
2237
+ onMouseLeave={() => {
2238
+ if (definitionHover) setDefinitionHover(null);
2239
+ }}
2240
+ onKeyDown={handleEditableKeyDown}
2241
+ onFocus={() => {
2242
+ setIsFocused(true);
2243
+ if (editorId) {
2244
+ editorFocus.focus(editorId);
2245
+ eventBus.emit(`UI:${onEditorFocus}`, { editorId });
2246
+ }
2247
+ }}
2248
+ onBlur={() => {
2249
+ setIsFocused(false);
2250
+ if (editorId) {
2251
+ editorFocus.blur(editorId);
2252
+ eventBus.emit(`UI:${onEditorBlur}`, { editorId });
2253
+ }
2254
+ }}
2255
+ spellCheck={false}
2256
+ style={{
2257
+ position: 'absolute',
2258
+ top: 0,
2259
+ left: gutterWidth,
2260
+ width: `calc(100% - ${gutterWidth}px)`,
2261
+ height: '100%',
2262
+ padding: '1rem',
2263
+ margin: 0,
2264
+ border: 'none',
2265
+ outline: 'none',
2266
+ resize: 'none',
2267
+ backgroundColor: 'transparent',
2268
+ color: 'transparent',
2269
+ caretColor: caretMode === 'block' ? 'transparent' : '#e6e6e6',
2270
+ WebkitTextFillColor: 'transparent',
2271
+ fontFamily: 'ui-monospace, SFMono-Regular, Menlo, Monaco, "Cascadia Mono", "Courier New", monospace',
2272
+ fontSize: '13px',
2273
+ lineHeight: '1.5',
2274
+ whiteSpace: 'pre',
2275
+ overflowWrap: 'normal',
2276
+ overflow: 'auto',
2277
+ }}
2278
+ />
2279
+ {completion.offer && (
2280
+ <Box
2281
+ data-testid="code-completions"
2282
+ role="listbox"
2283
+ className="rounded-container border border-border shadow-elevation-popover"
2284
+ style={{
2285
+ position: 'absolute',
2286
+ zIndex: 2,
2287
+ left: gutterWidth + Math.max(0, anchor.left - anchor.scrollLeft),
2288
+ ...(anchor.top - anchor.scrollTop > anchor.height / 2
2289
+ ? { bottom: anchor.height - (anchor.top - anchor.scrollTop) }
2290
+ : { top: anchor.top - anchor.scrollTop + EDITOR_LINE_PX }),
2291
+ maxHeight: '12rem',
2292
+ minWidth: '12rem',
2293
+ overflowY: 'auto',
2294
+ backgroundColor: '#252526',
2295
+ }}
2296
+ >
2297
+ {completion.offer.result.candidates.map((c, i) => (
2298
+ <Box
2299
+ key={c.label}
2300
+ role="option"
2301
+ aria-selected={i === completion.selected}
2302
+ onMouseDown={(e: React.MouseEvent) => e.preventDefault()}
2303
+ onClick={() => completion.accept(c.label)}
2304
+ className="cursor-pointer px-2 py-0.5"
2305
+ style={{ backgroundColor: i === completion.selected ? '#04395e' : undefined }}
2306
+ data-testid={`code-completion-${c.label}`}
2307
+ >
2308
+ <HStack gap="sm" align="center" justify="between">
2309
+ <Typography variant="caption" className="font-mono" style={{ color: '#e6e6e6' }}>{c.label}</Typography>
2310
+ {c.detail && <Typography variant="caption" color="secondary">{c.detail}</Typography>}
2311
+ </HStack>
2312
+ </Box>
2313
+ ))}
2314
+ </Box>
2315
+ )}
2316
+ </Box>
2317
+ ) : (
2318
+ <div
2319
+ ref={scrollRef}
2320
+ onCopy={handleSelectionCopy}
2321
+ dir="ltr"
2322
+ // Host pages (Docusaurus/Infima) style every inline `code` with a
2323
+ // light background + border + padding; inside this dark card that
2324
+ // paints a light box behind every token. Strip it for descendants
2325
+ // — same resets CodePreviewTabs used to apply locally per call site.
2326
+ className="[&_code]:!bg-transparent [&_code]:!p-0 [&_code]:!border-0 [&_code]:!shadow-none [&_span]:!bg-transparent"
2327
+ role="region"
2328
+ tabIndex={0}
2329
+ aria-label={title ?? t('codeBlock.region')}
2330
+ style={{
2331
+ flex: 1,
2332
+ minHeight: 0,
2333
+ overflowX: 'auto',
2334
+ overflowY: 'auto',
2335
+ WebkitOverflowScrolling: 'touch',
2336
+ maxHeight,
2337
+ overscrollBehavior: 'auto',
2338
+ touchAction: 'pan-x pan-y',
2339
+ contain: 'paint',
2340
+ backgroundColor: '#1e1e1e',
2341
+ borderRadius: hasHeader ? '0 0 0.5rem 0.5rem' : '0.5rem',
2342
+ }}
2343
+ >
2344
+ <div ref={codeRef} style={{ padding: '1rem' }}>
2345
+ {highlightedElement}
2346
+ </div>
2347
+ </div>
2348
+ )}
2349
+ {diagnosticHere && (
2350
+ <Box className="flex-shrink-0 border-t border-border px-2 py-1" data-testid="code-diagnostic-at-caret">
2351
+ <Typography variant="caption" style={{ color: diagnosticHere.severity === 'error' ? DIAGNOSTIC_ERROR_COLOR : DIAGNOSTIC_WARNING_COLOR }}>
2352
+ {diagnosticHere.message}
2353
+ </Typography>
2354
+ </Box>
2355
+ )}
2356
+ {editable && assistProvider && (assist.asking || assist.suggestions.length > 0 || assist.note || problemCount > 0) && (
2357
+ <Box className="flex-shrink-0 border-t border-border px-2 py-1.5" data-testid="code-assist-bar">
2358
+ <HStack gap="sm" align="center" wrap>
2359
+ {assist.asking && (
2360
+ <Typography variant="caption" color="secondary">
2361
+ {assist.asking === 'fix' ? t('codeAssist.findingFixes') : t('codeAssist.thinking')}
2362
+ </Typography>
2363
+ )}
2364
+ {assist.suggestions.length > 0 && (
2365
+ <>
2366
+ <Badge variant="info" size="sm">{t('codeAssist.suggested', { count: assist.suggestions.length })}</Badge>
2367
+ <Typography variant="caption" color="secondary">{t('codeAssist.keys')}</Typography>
2368
+ {listed.length > 0 && (
2369
+ <Button size="sm" variant="primary" onClick={assist.acceptAll} data-testid="code-assist-accept-all">
2370
+ {t('codeAssist.acceptAll')}
2371
+ </Button>
2372
+ )}
2373
+ </>
2374
+ )}
2375
+ {!assist.asking && assist.suggestions.length === 0 && problemCount > 0 && (
2376
+ <Button size="sm" variant="secondary" onClick={() => assist.request('fix', 'explicit')} data-testid="code-assist-request-fix">
2377
+ {t('codeAssist.suggestFixes', { count: problemCount })}
2378
+ </Button>
2379
+ )}
2380
+ {assist.note && <Typography variant="caption" color="secondary">{assist.note}</Typography>}
2381
+ </HStack>
2382
+ {listed.map((s, i) => (
2383
+ <Box
2384
+ key={`${s.from}-${s.to}-${i}`}
2385
+ role="button"
2386
+ tabIndex={0}
2387
+ onClick={() => assist.accept(s)}
2388
+ className="mt-1 cursor-pointer rounded-interactive border border-border px-2 py-1 hover:bg-muted/50"
2389
+ data-testid={`code-assist-fix-${i}`}
2390
+ >
2391
+ <Typography variant="caption" color="secondary">
2392
+ {t('codeAssist.line', { line: editableValue.slice(0, s.from).split('\n').length })}{s.why ? ` · ${s.why}` : ''}
2393
+ </Typography>
2394
+ {s.to > s.from && (
2395
+ <Typography variant="caption" className="block whitespace-pre font-mono" style={{ color: '#f48771' }}>
2396
+ {editableValue.slice(s.from, s.to).replace(/^/gm, '− ')}
2397
+ </Typography>
2398
+ )}
2399
+ {s.text !== '' && (
2400
+ <Typography variant="caption" className="block whitespace-pre font-mono" style={{ color: '#89d185' }}>
2401
+ {s.text.replace(/^\n/, '').replace(/^/gm, '+ ')}
2402
+ </Typography>
2403
+ )}
2404
+ </Box>
2405
+ ))}
2406
+ </Box>
2407
+ )}
2408
+ </Box>
2409
+ </SelectionAnnotator>
2410
+ );
2411
+ },
2412
+ (prev, next) =>
2413
+ prev.language === next.language &&
2414
+ prev.code === next.code &&
2415
+ prev.showCopyButton === next.showCopyButton &&
2416
+ prev.showCopy === next.showCopy &&
2417
+ prev.maxHeight === next.maxHeight &&
2418
+ prev.foldable === next.foldable &&
2419
+ prev.editable === next.editable &&
2420
+ prev.onChange === next.onChange &&
2421
+ prev.completions === next.completions &&
2422
+ prev.assist === next.assist &&
2423
+ prev.problems === next.problems &&
2424
+ prev.diagnostics === next.diagnostics &&
2425
+ prev.definitionAt === next.definitionAt &&
2426
+ prev.onGoToDefinition === next.onGoToDefinition &&
2427
+ prev.diagnosticsCode === next.diagnosticsCode &&
2428
+ prev.lineNumbers === next.lineNumbers &&
2429
+ prev.errorLines === next.errorLines &&
2430
+ prev.highlightLines?.start === next.highlightLines?.start &&
2431
+ prev.highlightLines?.end === next.highlightLines?.end &&
2432
+ prev.mode === next.mode &&
2433
+ prev.title === next.title &&
2434
+ prev.diff === next.diff &&
2435
+ prev.files === next.files &&
2436
+ prev.naturalLanguages === next.naturalLanguages &&
2437
+ prev.actions === next.actions &&
2438
+ prev.isLoading === next.isLoading &&
2439
+ prev.error === next.error &&
2440
+ prev.editorId === next.editorId &&
2441
+ prev.onEditorFocus === next.onEditorFocus &&
2442
+ prev.onEditorBlur === next.onEditorBlur &&
2443
+ prev.onMotion === next.onMotion &&
2444
+ prev.onOperate === next.onOperate &&
2445
+ prev.onInsertText === next.onInsertText &&
2446
+ prev.onSetMode === next.onSetMode &&
2447
+ prev.onKey === next.onKey &&
2448
+ prev.motions === next.motions &&
2449
+ prev.operators === next.operators &&
2450
+ prev.askEvent === next.askEvent &&
2451
+ prev.noteEvent === next.noteEvent &&
2452
+ prev.askLabel === next.askLabel &&
2453
+ prev.noteLabel === next.noteLabel,
2454
+ );
2455
+
2456
+ CodeBlock.displayName = 'CodeBlock';