@omerdlw/base-framework 1.0.3 → 1.0.5

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 (204) hide show
  1. package/dist/index.js +5415 -5319
  2. package/dist/index.js.map +1 -1
  3. package/dist/kernel/compose.d.ts.map +1 -1
  4. package/dist/kernel/handlers.d.ts.map +1 -1
  5. package/dist/kernel/hooks.d.ts.map +1 -1
  6. package/dist/kernel/index.js.map +1 -1
  7. package/dist/kernel/operations.d.ts.map +1 -1
  8. package/dist/kernel/schema.d.ts +0 -2
  9. package/dist/kernel/schema.d.ts.map +1 -1
  10. package/dist/kernel/store.d.ts.map +1 -1
  11. package/dist/kernel/types.d.ts.map +1 -1
  12. package/dist/kernel/utils.d.ts +0 -2
  13. package/dist/kernel/utils.d.ts.map +1 -1
  14. package/dist/modules/ambient/color.d.ts +16 -0
  15. package/dist/modules/ambient/color.d.ts.map +1 -0
  16. package/dist/modules/ambient/constants.d.ts +0 -17
  17. package/dist/modules/ambient/constants.d.ts.map +1 -1
  18. package/dist/modules/ambient/context.d.ts +1 -7
  19. package/dist/modules/ambient/context.d.ts.map +1 -1
  20. package/dist/modules/ambient/dom.d.ts +19 -0
  21. package/dist/modules/ambient/dom.d.ts.map +1 -0
  22. package/dist/modules/ambient/extractor.d.ts +5 -0
  23. package/dist/modules/ambient/extractor.d.ts.map +1 -0
  24. package/dist/modules/ambient/hooks.d.ts +9 -0
  25. package/dist/modules/ambient/hooks.d.ts.map +1 -0
  26. package/dist/modules/ambient/index.d.ts +7 -4
  27. package/dist/modules/ambient/index.d.ts.map +1 -1
  28. package/dist/modules/ambient/index.js +66 -60
  29. package/dist/modules/ambient/index.js.map +1 -1
  30. package/dist/modules/ambient/module.d.ts +5 -1
  31. package/dist/modules/ambient/module.d.ts.map +1 -1
  32. package/dist/modules/background/constants.d.ts +1 -10
  33. package/dist/modules/background/constants.d.ts.map +1 -1
  34. package/dist/modules/background/context.d.ts +1 -13
  35. package/dist/modules/background/context.d.ts.map +1 -1
  36. package/dist/modules/background/hooks.d.ts +13 -118
  37. package/dist/modules/background/hooks.d.ts.map +1 -1
  38. package/dist/modules/background/index.d.ts +8 -3
  39. package/dist/modules/background/index.d.ts.map +1 -1
  40. package/dist/modules/background/index.js +975 -991
  41. package/dist/modules/background/index.js.map +1 -1
  42. package/dist/modules/background/module.d.ts +1 -0
  43. package/dist/modules/background/module.d.ts.map +1 -1
  44. package/dist/modules/background/overlay.d.ts +93 -2
  45. package/dist/modules/background/overlay.d.ts.map +1 -1
  46. package/dist/modules/background/playback.d.ts +10 -0
  47. package/dist/modules/background/playback.d.ts.map +1 -0
  48. package/dist/modules/background/state.d.ts +9 -0
  49. package/dist/modules/background/state.d.ts.map +1 -0
  50. package/dist/modules/background/{utils.d.ts → visual.d.ts} +6 -14
  51. package/dist/modules/background/visual.d.ts.map +1 -0
  52. package/dist/modules/background/youtube/player.d.ts +28 -0
  53. package/dist/modules/background/youtube/player.d.ts.map +1 -0
  54. package/dist/modules/context-menu/context.d.ts +1 -10
  55. package/dist/modules/context-menu/context.d.ts.map +1 -1
  56. package/dist/modules/context-menu/dom.d.ts +8 -0
  57. package/dist/modules/context-menu/dom.d.ts.map +1 -0
  58. package/dist/modules/context-menu/hooks.d.ts +11 -11
  59. package/dist/modules/context-menu/hooks.d.ts.map +1 -1
  60. package/dist/modules/context-menu/index.d.ts +8 -3
  61. package/dist/modules/context-menu/index.d.ts.map +1 -1
  62. package/dist/modules/context-menu/index.js +97 -101
  63. package/dist/modules/context-menu/index.js.map +1 -1
  64. package/dist/modules/context-menu/{utils.d.ts → items.d.ts} +2 -9
  65. package/dist/modules/context-menu/items.d.ts.map +1 -0
  66. package/dist/modules/context-menu/module.d.ts.map +1 -1
  67. package/dist/modules/context-menu/overlay.d.ts +13 -1
  68. package/dist/modules/context-menu/overlay.d.ts.map +1 -1
  69. package/dist/modules/context-menu/state.d.ts +1 -0
  70. package/dist/modules/context-menu/state.d.ts.map +1 -1
  71. package/dist/modules/controls/{utils.d.ts → entries.d.ts} +6 -5
  72. package/dist/modules/controls/entries.d.ts.map +1 -0
  73. package/dist/modules/controls/hooks.d.ts +0 -7
  74. package/dist/modules/controls/hooks.d.ts.map +1 -1
  75. package/dist/modules/controls/index.d.ts +5 -3
  76. package/dist/modules/controls/index.d.ts.map +1 -1
  77. package/dist/modules/controls/index.js +66 -61
  78. package/dist/modules/controls/index.js.map +1 -1
  79. package/dist/modules/controls/layout.d.ts +7 -0
  80. package/dist/modules/controls/layout.d.ts.map +1 -0
  81. package/dist/modules/controls/overlay.d.ts +9 -0
  82. package/dist/modules/controls/overlay.d.ts.map +1 -1
  83. package/dist/modules/dock/cards.d.ts.map +1 -1
  84. package/dist/modules/dock/dom.d.ts +24 -0
  85. package/dist/modules/dock/dom.d.ts.map +1 -0
  86. package/dist/modules/dock/helpers.d.ts +25 -0
  87. package/dist/modules/dock/helpers.d.ts.map +1 -0
  88. package/dist/modules/dock/hooks.d.ts +3 -918
  89. package/dist/modules/dock/hooks.d.ts.map +1 -1
  90. package/dist/modules/dock/index.d.ts +3 -2
  91. package/dist/modules/dock/index.d.ts.map +1 -1
  92. package/dist/modules/dock/index.js +2372 -2330
  93. package/dist/modules/dock/index.js.map +1 -1
  94. package/dist/modules/dock/layout.d.ts +26 -0
  95. package/dist/modules/dock/layout.d.ts.map +1 -0
  96. package/dist/modules/dock/module.d.ts.map +1 -1
  97. package/dist/modules/dock/overlay.d.ts.map +1 -1
  98. package/dist/modules/dock/paths.d.ts +10 -0
  99. package/dist/modules/dock/paths.d.ts.map +1 -0
  100. package/dist/modules/dock/provider.d.ts.map +1 -1
  101. package/dist/modules/dock/runtime/display.d.ts.map +1 -1
  102. package/dist/modules/dock/runtime/dock.d.ts.map +1 -1
  103. package/dist/modules/dock/runtime/pipeline.d.ts +32 -0
  104. package/dist/modules/dock/runtime/pipeline.d.ts.map +1 -0
  105. package/dist/modules/dock/status/events.d.ts.map +1 -1
  106. package/dist/modules/dock/styles.d.ts +900 -0
  107. package/dist/modules/dock/styles.d.ts.map +1 -0
  108. package/dist/modules/dock/surface/context.d.ts +1 -2
  109. package/dist/modules/dock/surface/context.d.ts.map +1 -1
  110. package/dist/modules/dock/surface/definition.d.ts.map +1 -1
  111. package/dist/modules/dock/surface/helpers.d.ts +7 -0
  112. package/dist/modules/dock/surface/helpers.d.ts.map +1 -0
  113. package/dist/modules/dock/surface/hooks.d.ts.map +1 -1
  114. package/dist/modules/dock/surface/machine.d.ts.map +1 -1
  115. package/dist/modules/dock/surface/stack.d.ts.map +1 -1
  116. package/dist/modules/dock/surface/view-model.d.ts.map +1 -1
  117. package/dist/modules/dock/types.d.ts.map +1 -1
  118. package/dist/modules/index.js +5010 -4916
  119. package/dist/modules/index.js.map +1 -1
  120. package/dist/modules/loading/context.d.ts +2 -13
  121. package/dist/modules/loading/context.d.ts.map +1 -1
  122. package/dist/modules/loading/hooks.d.ts +15 -2
  123. package/dist/modules/loading/hooks.d.ts.map +1 -1
  124. package/dist/modules/loading/index.d.ts +3 -2
  125. package/dist/modules/loading/index.d.ts.map +1 -1
  126. package/dist/modules/loading/index.js +38 -34
  127. package/dist/modules/loading/index.js.map +1 -1
  128. package/dist/modules/loading/module.d.ts.map +1 -1
  129. package/dist/modules/loading/state.d.ts +6 -0
  130. package/dist/modules/loading/state.d.ts.map +1 -0
  131. package/dist/modules/media/constants.d.ts +0 -1
  132. package/dist/modules/media/constants.d.ts.map +1 -1
  133. package/dist/modules/media/context.d.ts +2 -6
  134. package/dist/modules/media/context.d.ts.map +1 -1
  135. package/dist/modules/media/hooks.d.ts +6 -1
  136. package/dist/modules/media/hooks.d.ts.map +1 -1
  137. package/dist/modules/media/index.d.ts +4 -3
  138. package/dist/modules/media/index.d.ts.map +1 -1
  139. package/dist/modules/media/index.js +100 -98
  140. package/dist/modules/media/index.js.map +1 -1
  141. package/dist/modules/media/module.d.ts.map +1 -1
  142. package/dist/modules/media/overlay.d.ts +0 -5
  143. package/dist/modules/media/overlay.d.ts.map +1 -1
  144. package/dist/modules/media/playback.d.ts +5 -0
  145. package/dist/modules/media/playback.d.ts.map +1 -0
  146. package/dist/modules/media/session.d.ts +8 -0
  147. package/dist/modules/media/session.d.ts.map +1 -0
  148. package/dist/modules/media/types.d.ts +0 -1
  149. package/dist/modules/media/types.d.ts.map +1 -1
  150. package/dist/modules/modal/context.d.ts +1 -12
  151. package/dist/modules/modal/context.d.ts.map +1 -1
  152. package/dist/modules/modal/dom.d.ts +4 -0
  153. package/dist/modules/modal/dom.d.ts.map +1 -0
  154. package/dist/modules/modal/header.d.ts +7 -0
  155. package/dist/modules/modal/header.d.ts.map +1 -0
  156. package/dist/modules/modal/hooks.d.ts +12 -1
  157. package/dist/modules/modal/hooks.d.ts.map +1 -1
  158. package/dist/modules/modal/identity.d.ts +7 -0
  159. package/dist/modules/modal/identity.d.ts.map +1 -0
  160. package/dist/modules/modal/index.d.ts +9 -4
  161. package/dist/modules/modal/index.d.ts.map +1 -1
  162. package/dist/modules/modal/index.js +118 -86
  163. package/dist/modules/modal/index.js.map +1 -1
  164. package/dist/modules/modal/layout.d.ts +13 -0
  165. package/dist/modules/modal/layout.d.ts.map +1 -0
  166. package/dist/modules/modal/module.d.ts.map +1 -1
  167. package/dist/modules/modal/overlay.d.ts.map +1 -1
  168. package/dist/modules/modal/types.d.ts.map +1 -1
  169. package/dist/modules/notification/context.d.ts +2 -8
  170. package/dist/modules/notification/context.d.ts.map +1 -1
  171. package/dist/modules/notification/hooks.d.ts +8 -1
  172. package/dist/modules/notification/hooks.d.ts.map +1 -1
  173. package/dist/modules/notification/index.d.ts +4 -3
  174. package/dist/modules/notification/index.d.ts.map +1 -1
  175. package/dist/modules/notification/index.js +56 -46
  176. package/dist/modules/notification/index.js.map +1 -1
  177. package/dist/modules/notification/state.d.ts +17 -0
  178. package/dist/modules/notification/state.d.ts.map +1 -0
  179. package/dist/provider.js.map +1 -1
  180. package/docs/modules/ambient.md +12 -8
  181. package/docs/modules/background.md +15 -13
  182. package/docs/modules/context-menu.md +13 -13
  183. package/docs/modules/controls.md +4 -3
  184. package/docs/modules/dock.md +8 -2
  185. package/docs/modules/loading.md +11 -11
  186. package/docs/modules/media.md +8 -7
  187. package/docs/modules/modal.md +4 -1
  188. package/docs/modules/notification.md +4 -4
  189. package/package.json +4 -4
  190. package/dist/modules/ambient/utils.d.ts +0 -18
  191. package/dist/modules/ambient/utils.d.ts.map +0 -1
  192. package/dist/modules/background/utils.d.ts.map +0 -1
  193. package/dist/modules/context-menu/utils.d.ts.map +0 -1
  194. package/dist/modules/controls/utils.d.ts.map +0 -1
  195. package/dist/modules/dock/utils.d.ts +0 -93
  196. package/dist/modules/dock/utils.d.ts.map +0 -1
  197. package/dist/modules/loading/utils.d.ts +0 -4
  198. package/dist/modules/loading/utils.d.ts.map +0 -1
  199. package/dist/modules/media/utils.d.ts +0 -17
  200. package/dist/modules/media/utils.d.ts.map +0 -1
  201. package/dist/modules/modal/utils.d.ts +0 -31
  202. package/dist/modules/modal/utils.d.ts.map +0 -1
  203. package/dist/modules/notification/utils.d.ts +0 -9
  204. package/dist/modules/notification/utils.d.ts.map +0 -1
@@ -132,14 +132,18 @@ On cleanup the previous inline values (and priorities) are restored exactly. If
132
132
 
133
133
  ## 8. File map
134
134
 
135
- | File | Responsibility |
136
- | :------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
137
- | `index.ts` | Public barrel. |
138
- | `types.ts` | Palette, config, descriptor, target/source, page contracts. |
139
- | `constants.ts` | CSS variable names, defaults, extraction tuning, `ambientTheme`. |
140
- | `utils.ts` | OKLCH conversion, canvas sampling, palette derivation, fetch/cache/extraction, target resolution, scoped CSS-variable application, `resolveAmbientVarMap`, `resolvePageAmbientTheme`. |
141
- | `context.tsx` | `AmbientProvider` (shared palette store), `useAmbientColor`, `useAmbientTheme`, `useAmbient`. |
142
- | `module.tsx` | `ambientModule`, `useAmbientPage` (applies the page theme), `defineAmbient`, kernel type augmentation. |
135
+ | File | Responsibility |
136
+ | :------------- | :-------------------------------------------------------------------------------------------------- |
137
+ | `index.ts` | Public barrel export. |
138
+ | `types.ts` | Palette, config, descriptor, target/source, page contracts. |
139
+ | `constants.ts` | Default palette constants and `ambientTheme` spec. |
140
+ | `color.ts` | Pure OKLCH color math, linear sRGB conversions, string formatting, and palette derivation. |
141
+ | `extractor.ts` | Canvas 2D pixel histogram sampling, CORS/proxy image fetch, and LRU palette cache. |
142
+ | `dom.ts` | Target element resolution, CSS variable mapping (`AMBIENT_CSS_VARS`), and scoped style restoration. |
143
+ | `hooks.ts` | React hooks: `useAmbientColor`, `useAmbientTheme`, `useAmbient`, `useStableObject`. |
144
+ | `builder.ts` | Reusable theme factory builder (`defineAmbient`). |
145
+ | `context.tsx` | Microkernel global `AmbientContext` and `AmbientProvider` store. |
146
+ | `module.tsx` | `ambientModule` definition, `resolvePageAmbientTheme`, and kernel type augmentation. |
143
147
 
144
148
  No `view.tsx` or `motion.ts`: the module renders nothing, and transitions are CSS classes from the theme ([README](./README.md#42-why-some-optional-slots-are-absent)).
145
149
 
@@ -174,19 +174,21 @@ All classes come from `backgroundTheme` (`src/config/background.module.theme.ts`
174
174
 
175
175
  ## 11. File map
176
176
 
177
- | File | Responsibility |
178
- | :------------------ | :--------------------------------------------------------------------------------------------------------------------------------------------------- |
179
- | `index.ts` | Public barrel. |
180
- | `types.ts` | `BackgroundState`, `VideoOptions`, actions, computed state, YouTube controller/player types, theme slots. |
181
- | `constants.ts` | `DEFAULT_BACKGROUND`, registry key, media id, token → slot maps, `backgroundTheme`. |
182
- | `utils.ts` | Input normalization and merging, `selectPageBackground`, video option and class resolution, gradient/edge-fade/mask math, direct-video sync helpers. |
183
- | `context.tsx` | `BackgroundProvider`: registry read, scoped override store, computed state store, actions, `media` registration; `useBackground*` hooks. |
184
- | `hooks.ts` | View models: `useBackgroundOverlayModel`, `useNativeVideoModel`, `useYouTubeBackgroundPlayerModel`. |
185
- | `overlay.tsx` | `BackgroundOverlay`, `NativeVideo`, `YouTubeBackgroundPlayer`, gradient / edge / noise / solid layers. |
186
- | `motion.ts` | Default and custom motion resolution, CSS duration/easing helpers. |
187
- | `module.tsx` | `backgroundModule`, page API (`set` + actions), `defineBackground`, kernel type augmentation. |
188
- | `youtube/parse.ts` | URL/ID parsing, time params, stream/thumbnail URL builders, the `<video>` element proxy. |
189
- | `youtube/iframe.ts` | Iframe API loader and player wrapper (fallback path). |
177
+ | File | Responsibility |
178
+ | :------------------- | :-------------------------------------------------------------------------------------------------------- |
179
+ | `index.ts` | Public barrel export. |
180
+ | `types.ts` | `BackgroundState`, `VideoOptions`, actions, computed state, YouTube controller/player types, theme slots. |
181
+ | `constants.ts` | Registry key, media id, `backgroundTheme` spec, and domain constants. |
182
+ | `state.ts` | `DEFAULT_BACKGROUND`, normalization, patch merging, scoped override resolution, and computed state. |
183
+ | `visual.ts` | Gradient generation, smoothstep edge-fade masks, and video styling/fit options. |
184
+ | `playback.ts` | Direct HTML video DOM controls: play/pause, volume/mute, loop, and playbackRate sync. |
185
+ | `overlay.tsx` | `BackgroundOverlay`, `NativeVideo`, and backdrop overlay layers (solid, noise, gradients). |
186
+ | `motion.ts` | Motion animations, transition presets, and CSS duration/easing helpers. |
187
+ | `context.tsx` | `BackgroundProvider`: store, actions, `media` module bridge, and `useBackground*` hooks. |
188
+ | `module.tsx` | `backgroundModule` definition, `selectPageBackground`, `defineBackground`, and kernel type augmentation. |
189
+ | `youtube/parse.ts` | YouTube URL/ID parsing, time params, stream/thumbnail URLs, and video element proxy. |
190
+ | `youtube/iframe.ts` | Iframe API loader and YouTube iframe player controller (fallback path). |
191
+ | `youtube/player.tsx` | Dedicated dual-stream YouTube player component and companion audio synchronization hook. |
190
192
 
191
193
  ## 12. Dependencies
192
194
 
@@ -227,19 +227,19 @@ No classes or colors in the module, except the pointer-following `left/top/posit
227
227
 
228
228
  ## 8. File map
229
229
 
230
- | File | Responsibility |
231
- | :------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------- |
232
- | `index.ts` | Public barrel. |
233
- | `types.ts` | Config, item, header, context, state, actions, page and theme-slot contracts. |
234
- | `constants.ts` | Registry keys (`current-page`, `*`), screen margin, visibility event, `contextMenuTheme`. |
235
- | `utils.ts` | Value resolution, item/header resolution, page metadata from the dock card, safe invocation, positioning, keyboard index helper, visibility event emitter. |
236
- | `resolver.ts` | Candidate normalization, path/target/route scoring, context building, `resolveContextMenu`, `prepareMenu`. |
237
- | `state.ts` | Initial and next-open state helpers. |
238
- | `context.tsx` | `ContextMenuProvider` (store, `openMenu`, `closeMenu`, `bind`), `useContextMenu*` hooks. |
239
- | `hooks.ts` | `useContextMenuListener`, dismissal, content view model (keyboard, focus, class merging). |
240
- | `overlay.tsx` | `ContextMenuGlobal`, renderer, content, header, item components. |
241
- | `motion.ts` | Pop, content and item variants; tap and spring presets. |
242
- | `module.tsx` | `contextMenuModule`, page API, `defineContextMenu`, kernel type augmentation. |
230
+ | File | Responsibility |
231
+ | :------------- | :------------------------------------------------------------------------------------------------------------------------- |
232
+ | `index.ts` | Public barrel. |
233
+ | `types.ts` | Config, item, header, context, state, actions, page and theme-slot contracts. |
234
+ | `constants.ts` | Registry keys (`current-page`, `*`), screen margin, visibility event, initial position, `contextMenuTheme`. |
235
+ | `items.ts` | Value and boolean resolution, item/header resolution, dock page metadata, safe callback invocation. |
236
+ | `dom.ts` | Menu viewport positioning, keyboard arrow navigation index helper, scroll lock keys detection, class name joining. |
237
+ | `state.ts` | Initial and next-open menu state derivation, visibility custom event dispatch. |
238
+ | `resolver.ts` | Candidate normalization, path/target/route scoring, context building, `resolveContextMenu`, `prepareMenu`. |
239
+ | `context.tsx` | `ContextMenuProvider` (store, `openMenu`, `closeMenu`, `bind`), `useContextMenu*` consumer hooks. |
240
+ | `overlay.tsx` | `ContextMenuGlobal`, portalled renderer, content host, header, item components, and interaction listeners. |
241
+ | `motion.ts` | Pop, content and item animation variants; tap and spring presets. |
242
+ | `module.tsx` | `contextMenuModule`, page API adapter, `defineContextMenu`, kernel type augmentation. |
243
243
 
244
244
  ## 9. Dependencies
245
245
 
@@ -146,9 +146,10 @@ No classes or colors in the module apart from the measured position. Slots in `c
146
146
  | `index.ts` | Public barrel. |
147
147
  | `types.ts` | Entries, slots, layout, definition and page-config contracts, theme slots. |
148
148
  | `constants.ts` | Edge inset, dock gap, dock element id, side names, `controlsTheme`. |
149
- | `utils.ts` | `resolveControlsPairs` (path filter, pairing, ordering), `getControlsLayout` (geometry), `areLayoutsEqual`, `validateControlEntry`, `normalizePageControls`. |
150
- | `hooks.ts` | `useControlsLayout` (measurement + observers), `useControls`, `useControlsRegistration`, slot resolution, `useControlsModel`. |
151
- | `overlay.tsx` | `Controls` and the side rail renderer. |
149
+ | `layout.ts` | `getControlsLayout` (geometry calculation), `areLayoutsEqual`, dock element queries, and `useControlsLayout` (reactive layout measurement + DOM observers). |
150
+ | `entries.ts` | `resolveControlsPairs` (path filter, pairing, ordering), `validateControlEntry`, `normalizePageControls`, `resolveSlot`, `isControlSide`. |
151
+ | `hooks.ts` | `useControls`, `useControlsRegistration`, and `useControlsLayout` re-export. |
152
+ | `overlay.tsx` | `Controls`, `ControlsSide` rail renderer, and internal `useControlsModel`. |
152
153
  | `module.tsx` | `controlsModule`, page API (`set`), `defineControls`, kernel type augmentation. |
153
154
 
154
155
  No `provider.tsx` or `motion.ts`: the module is stateless and does not animate ([README](./README.md#42-why-some-optional-slots-are-absent)).
@@ -698,10 +698,14 @@ Gotchas:
698
698
  | `index.ts` | Public barrel (named exports only). |
699
699
  | `types.ts` | All contracts (`DockItem`, `DockActions`, `DockState`, surfaces, HUD, status, guards, theme slots). The one deliberate `any` is `DockComponent`. |
700
700
  | `constants.ts` | Event names, attention kinds/priorities, surface phases, transaction/operation enums, card dimensions, status priorities, timeouts, `dockTheme`. |
701
- | `utils.ts` | Path helpers, safe-href check, banner validation, component/renderable resolution, style helpers, focus helpers, item ordering, surface/extension normalization, return handshakes, `createDockScheduler`. |
701
+ | `paths.ts` | Path matching, prefix comparison, inline action path detection, safe internal href checking, location key resolution. |
702
+ | `dom.ts` | Focus management (`focusDockElement`, `blurActiveElement`, `getDockFocusableElements`), element classification, focus trap (`useDockFocusTrap`), keyboard handling (`useDockKeyboard`), and route reset (`useDockRouteReset`).|
703
+ | `styles.ts` | Visual and style helpers (`isValidBannerUrl`, `resolveDockActionClass`, `getDockItemCardProps`, `resolveDockVisualStyle`), and style hooks (`useDockTheme`, `useDockActionClass`). |
704
+ | `layout.ts` | Geometry and measurement (`getViewportMaxHeight`, `getContainerHeight`, `getDockCardWidth`), height publishing (`publishDockHeightCssVar`), height controller (`useDockHeightController`), and viewport observer (`useDockViewport`).|
705
+ | `helpers.ts` | General dock helpers (`resolveComponentType`, `resolveRenderableContent`, `formatMediaTime`, `isHudDescriptor`, `createDockScheduler`). |
702
706
  | `context.ts` | `DockContext`, `EMPTY_DOCK_STATE`, state hooks, and the media / loading / notification **peers**. |
703
707
  | `state.ts` | Pure logic: `resolveDockAttention`, `resolveDockScene`, operation factory and reducer. |
704
- | `hooks.ts` | Public hooks (`useDockRegistration`, `useDockConfig`, `useDockBanner`, `useDockDimensions`, `useSurfaceReturn`, `useDockActionClass`), plus internal focus trap, keyboard, height controller, viewport, style resolution. |
708
+ | `hooks.ts` | Public hooks (`useDockRegistration`, `useDockConfig`, `useDockBanner`, `useDockDimensions`, `useSurfaceReturn`). |
705
709
  | `provider.tsx` | `DockProvider`: composes route bridge, expansion, operations, HUD registry, command registry, surface stack, continuity; publishes `DockState` to a store. |
706
710
  | `module.tsx` | `dockModule`, page slice (`selectPageDock`, `toDockEntries`, `validateDockEntry`, `mergeDockEntries`, `openPageSurface`), event-map and kernel type augmentation. |
707
711
  | `overlay.tsx` | `Dock` and every rendered piece: cards, header, banner, command bar, surface shell/controls/extensions, HUD view, media controls and scrubber, breadcrumbs card, `ErrorActions`, `GuardActions`. |
@@ -710,6 +714,7 @@ Gotchas:
710
714
  | `motion.ts` | Dock durations, springs, transitions, variants and factories, all derived from `@omerdlw/base-framework/tokens`. |
711
715
  | `runtime/dock.tsx` | `useDock` (view controller), `useDockModel`, layout ordering, expansion, operation state, route bridge. |
712
716
  | `runtime/display.ts` | Item pipeline: registry entries → filtered items → active item (applies surface / status / media). |
717
+ | `runtime/pipeline.ts` | Item identity, active item detection, ancestor deduplication, loading item cleanup, and stacking reorder. |
713
718
  | `runtime/commands.ts` | Context-action registry, `useDockContextActions`, `defineDockAction`. |
714
719
  | `routing/navigation.ts` | `useDockNavigation`, route policy, topology, prefetch, location key, view connection. |
715
720
  | `routing/transactions.ts` | Navigation transaction reducer and timeout. |
@@ -725,6 +730,7 @@ Gotchas:
725
730
  | `surface/hooks.tsx` | Flow operations, lifecycle effects (back button, unmount), `useSurfaceFlow`, extension/shell models. |
726
731
  | `surface/context.tsx` | Surface item context, header-action and extension stores, `useSurface*` hooks. |
727
732
  | `surface/view-model.ts` | `resolveSurfaceViewModel` / `applySurfaceToDockItem`: surface state → dock item. |
733
+ | `surface/helpers.ts` | Surface descriptors, extension normalization, snapshot normalization, and surface return handshakes. |
728
734
 
729
735
  ## 20. Dependencies
730
736
 
@@ -70,7 +70,7 @@ CheckoutLoading.use(isSubmitting); // boolean | message string | LoadingOptions
70
70
  | `defineLoading(def)` | builder | `defineLoading(options \| message).use(overrides?, options?)` → `LoadingStateWithPage & LoadingActions`. |
71
71
  | `LoadingContext` | context | For tests and the dock's peer reader. |
72
72
  | `DEFAULT_LOADING_STATE`, `LOADING_REGISTRY_KEY`, `loadingTheme` | constants | |
73
- | `normalizeLoadingOptions(options)`, `selectPageLoading(input)` | utils | Coerce loose input; map `boolean` / `string` / object page input to `LoadingOptions`. |
73
+ | `normalizeLoadingOptions(options)`, `selectPageLoading(input)` | state | Coerce loose input; map `boolean` / `string` / object page input to `LoadingOptions`. |
74
74
  | Types | | `LoadingState`, `LoadingStateWithPage`, `LoadingOptions`, `LoadingActions`, `LoadingPageConfig`, `DefinedLoading`, … |
75
75
 
76
76
  ### 4.1 `LoadingOptions`
@@ -140,16 +140,16 @@ No classes or inline styles in the module. The `loadingTheme` slot `overlay` (st
140
140
 
141
141
  ## 8. File map
142
142
 
143
- | File | Responsibility |
144
- | :------------- | :------------------------------------------------------------------------------------------------ |
145
- | `index.ts` | Public barrel. |
146
- | `types.ts` | State, options, actions, definition, page-config and theme contracts. |
147
- | `constants.ts` | `DEFAULT_LOADING_STATE`, registry key, `loadingTheme`. |
148
- | `utils.ts` | `normalizeLoadingOptions`, `selectPageLoading`. |
149
- | `context.tsx` | `LoadingProvider` (manual state, min-duration timer, registry merge, store), `useLoading*` hooks. |
150
- | `hooks.ts` | `useLoadingOverlayModel` (visibility incl. fullscreen check, theme). |
151
- | `overlay.tsx` | `LoadingOverlay`. |
152
- | `module.tsx` | `loadingModule`, page API, `defineLoading`, kernel type augmentation. |
143
+ | File | Responsibility |
144
+ | :------------- | :----------------------------------------------------------------------------------------------------------------- |
145
+ | `index.ts` | Public barrel. |
146
+ | `types.ts` | State, options, actions, definition, page-config and theme contracts. |
147
+ | `constants.ts` | `DEFAULT_LOADING_STATE`, registry key, `loadingTheme`. |
148
+ | `state.ts` | `normalizeLoadingOptions`, `selectPageLoading`, `resolveLoadingState`, `calculateRemainingMinDuration`. |
149
+ | `context.tsx` | `LoadingContext`, `LoadingProvider` (manual state, min-duration timer, registry merge, store). |
150
+ | `hooks.ts` | Public hooks (`useLoading`, `useLoadingState`, `useLoadingActions`, `useLoadingRegistration`) & overlay model hook. |
151
+ | `overlay.tsx` | `LoadingOverlay`. |
152
+ | `module.tsx` | `loadingModule`, page API, `defineLoading`, kernel type augmentation. |
153
153
 
154
154
  ## 9. Dependencies
155
155
 
@@ -93,10 +93,10 @@ return <MediaSource src="/audio/city.mp3" follow={BACKGROUND_MEDIA_ID} />; // "b
93
93
  | `useMediaState()` | hook | Read-only `MediaState` (re-renders on change). |
94
94
  | `useMediaActions()` | hook | `MediaActions`. Both hooks throw outside `MediaProvider`. |
95
95
  | `MediaContext` | context | For tests / custom providers. |
96
- | `resolveMediaSession(sources)` | util | Pure: sources → `{ transport, audible, followers }` or `null`. |
97
- | `createMediaState(session)` | util | Session → `MediaState` (`DEFAULT_MEDIA_STATE` for `null`). |
98
- | `bindFollowers(transport, followers)` | util | Wire followers to a transport element; returns a cleanup function. |
99
- | `selectPageMedia(media)` | util | Normalizes `usePage({ media })` input. |
96
+ | `resolveMediaSession(sources)` | session | Pure: sources → `{ transport, audible, followers }` or `null`. |
97
+ | `createMediaState(session)` | session | Session → `MediaState` (`DEFAULT_MEDIA_STATE` for `null`). |
98
+ | `bindFollowers(transport, followers)` | playback | Wire followers to a transport element; returns a cleanup function. |
99
+ | `selectPageMedia(media)` | session | Normalizes `usePage({ media })` input. |
100
100
  | `DEFAULT_MEDIA_STATE`, `MEDIA_REGISTRY_KEY`, `MEDIA_SYNC_DRIFT_SECONDS`, `PAGE_MEDIA_ID` | constants | `PAGE_MEDIA_ID` is `"page"`. |
101
101
  | Types | | `MediaOptions`, `MediaHandle`, `MediaState`, `MediaActions`, `MediaEntry`, `MediaEntryInput`, `MediaSession`, `MediaKind`, `MediaPageConfig`, `MediaPageApi`, … |
102
102
 
@@ -182,9 +182,10 @@ Keep `isPlaying` current with another `upsertSource({ id, isPlaying })` call. `c
182
182
  | `index.ts` | Public barrel. |
183
183
  | `types.ts` | Entries, sessions, state, actions, option and page-config contracts. |
184
184
  | `constants.ts` | `DEFAULT_MEDIA_STATE`, registry key, drift threshold, page source id. |
185
- | `utils.ts` | `resolveMediaSession`, `createMediaState`, `mergeMediaSource`, `bindFollowers`, `toggleElement`, `findDisplacedAudio`, `selectPageMedia` (pure or DOM-only, no React). |
186
- | `context.tsx` | `MediaProvider`: source registry, session publishing, follower binding, actions; `useMediaState`, `useMediaActions`. |
187
- | `hooks.ts` | `useMedia`: owns the `HTMLAudioElement` lifecycle and registers it. |
185
+ | `session.ts` | Pure session resolution: `resolveMediaSession`, `createMediaState`, `mergeMediaSource`, `findDisplacedAudio`, `selectPageMedia`. |
186
+ | `playback.ts` | DOM media playback and sync: `bindFollowers`, `toggleElement`, `safePlay`, `sameElements`. |
187
+ | `context.tsx` | `MediaProvider`: source registry, session publishing, follower binding, actions; `MediaContext`. |
188
+ | `hooks.ts` | `useMedia` (Audio element lifecycle), `useMediaState`, `useMediaActions`, `useOptionalMediaState`, `useOptionalMediaActions`. |
188
189
  | `overlay.tsx` | `MediaSource` and `MediaOverlay` (components that render nothing). |
189
190
  | `module.tsx` | `mediaModule`, `usePage({ media })` page API, kernel type augmentation. |
190
191
 
@@ -216,7 +216,10 @@ Motion (`motion.ts`: backdrop, per-position panel variants/transitions, header/b
216
216
  | `types.ts` | Positions, chrome, entries, state, actions, definitions, container props, theme slots. |
217
217
  | `constants.ts` | `MODAL_POSITIONS`, `MODAL_CHROME`, mobile breakpoint, scroll-lock event, focusable selector, height-constraint pattern, `modalTheme`. |
218
218
  | `state.ts` | `createModalState` (stack → state) and the initial state. |
219
- | `utils.ts` | Identity resolution, position normalization (responsive), focus trap helpers, header-action resolution, labels. |
219
+ | `identity.ts` | Modal identity derivation (`getModalIdentity`) and humanized modal labels (`getModalLabel`). |
220
+ | `layout.ts` | Position resolution (`getModalPosition`, `getModalLayout`), responsive normalization, viewport checks, height constraints. |
221
+ | `dom.ts` | Focus trap helpers (`getFocusableElements`, `trapFocus`) and smooth scroll-lock event dispatch. |
222
+ | `header.ts` | Header configuration checking (`isHeaderConfig`), slot content validation (`hasSlotContent`), and action resolution. |
220
223
  | `context.tsx` | `ModalProvider` (stack, pending promises, actions), `useModal*` hooks, registry lookup. |
221
224
  | `hooks.ts` | View models: `useModalModel` (visibility, viewport, scroll lock), `useModalLayerModel` (focus, Esc), `useModalContainerModel`. |
222
225
  | `overlay.tsx` | `Modal`, `ModalLayer`, `ModalContainer`, switcher, close button. |
@@ -146,12 +146,12 @@ No classes or inline styles in the module. `notificationTheme` slots: `layer`, `
146
146
  | `index.ts` | Public barrel. |
147
147
  | `types.ts` | Notification data, options, controller, page and theme-slot contracts. |
148
148
  | `constants.ts` | `TOAST_DURATIONS`, session-expired message, `DOCK_STACK_ELEMENT_ID`, `notificationTheme`. |
149
- | `utils.ts` | Option normalization, default duration, text normalization, active-toast selection, guards. |
150
- | `context.tsx` | `NotificationProvider` (store, timers, show/dismiss), `useNotification*` hooks. |
151
- | `hooks.ts` | `useToast` (`promise`, `fromResult`), `NotificationListener`, container view model. |
149
+ | `state.ts` | Option normalization, duration resolution, text normalization, entry creation, active toast selection. |
150
+ | `context.tsx` | `NotificationProvider` (store, timers, show/dismiss actions), `NotificationContext`. |
151
+ | `hooks.ts` | Public hooks (`useToast`, `useNotification*`), `NotificationListener`, container view model. |
152
152
  | `overlay.tsx` | `Toast`, `NotificationContainer` (dock/floating portal), `NotificationLayer`. |
153
153
  | `motion.ts` | Toast variants and transition. |
154
- | `module.ts` | `notificationModule` and the page API (plain `.ts`: it has no JSX). |
154
+ | `module.tsx` | `notificationModule` and the page API. |
155
155
 
156
156
  `builder.ts` is absent: toasts are imperative ([README](./README.md#42-why-some-optional-slots-are-absent)).
157
157
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@omerdlw/base-framework",
3
- "version": "1.0.3",
3
+ "version": "1.0.5",
4
4
  "description": "Microkernel engine and first-party declarative UI modules for app-like Next.js products.",
5
5
  "type": "module",
6
6
  "sideEffects": false,
@@ -126,10 +126,10 @@
126
126
  "LICENSE"
127
127
  ],
128
128
  "scripts": {
129
- "build": "rm -rf dist && tsup && tsc --emitDeclarationOnly --outDir dist",
129
+ "build": "rm -rf dist && ./node_modules/.bin/tsup && ./node_modules/.bin/tsc --emitDeclarationOnly --outDir dist",
130
130
  "prepublishOnly": "npm run build",
131
- "dev": "tsup --watch",
132
- "type-check": "tsc --noEmit",
131
+ "dev": "./node_modules/.bin/tsup --watch",
132
+ "type-check": "./node_modules/.bin/tsc --noEmit",
133
133
  "check:architecture": "node scripts/check-architecture.mjs",
134
134
  "test": "node --import ./tests/support/register.mjs --test 'tests/**/*.test.ts'",
135
135
  "pack": "npm run build && npm pack",
@@ -1,18 +0,0 @@
1
- import { type AmbientConfig, type AmbientExtractOptions, type AmbientImageSource, type AmbientPageSlice, type AmbientPalette, type AmbientTarget, type OklchColor } from "./types";
2
- export declare function rgbToOklch(r: number, g: number, b: number): OklchColor;
3
- export declare function oklchToString(l: number | string, c: number | string, h: number | string, alpha?: number | string): string;
4
- export declare function sampleImageData(imageData: ImageData): OklchColor;
5
- export declare function createDefaultPalette(fallback?: AmbientPalette | null): AmbientPalette;
6
- export declare function derivePalette(sampled: OklchColor): AmbientPalette;
7
- export declare function extractPaletteFromImage(imageSource: AmbientImageSource, options?: AmbientExtractOptions): Promise<AmbientPalette>;
8
- export declare function resolveTargetElement(target: AmbientTarget): HTMLElement | null;
9
- export declare function applyScopedCssVariables(element: HTMLElement, varMap: Record<string, string>): () => void;
10
- export declare function resolveAmbientVarMap({ colors, extractedBlack, extractedPrimary, image, tintGlobals, }: {
11
- colors?: Record<string, string> | null;
12
- extractedBlack?: string;
13
- extractedPrimary?: string;
14
- image?: AmbientImageSource;
15
- tintGlobals?: boolean;
16
- }): Record<string, string>;
17
- export declare function resolvePageAmbientTheme(slice: AmbientPageSlice | null, posterUrl: string | null): Partial<AmbientConfig> | null;
18
- //# sourceMappingURL=utils.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/modules/ambient/utils.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,qBAAqB,EAC1B,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,KAAK,UAAU,EAChB,MAAM,SAAS,CAAC;AAOjB,wBAAgB,UAAU,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,UAAU,CAyBtE;AAED,wBAAgB,aAAa,CAC3B,CAAC,EAAE,MAAM,GAAG,MAAM,EAClB,CAAC,EAAE,MAAM,GAAG,MAAM,EAClB,CAAC,EAAE,MAAM,GAAG,MAAM,EAClB,KAAK,GAAE,MAAM,GAAG,MAAU,GACzB,MAAM,CASR;AAED,wBAAgB,eAAe,CAAC,SAAS,EAAE,SAAS,GAAG,UAAU,CAsFhE;AAED,wBAAgB,oBAAoB,CAClC,QAAQ,CAAC,EAAE,cAAc,GAAG,IAAI,GAC/B,cAAc,CAKhB;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,UAAU,GAAG,cAAc,CAuBjE;AAsED,wBAAsB,uBAAuB,CAC3C,WAAW,EAAE,kBAAkB,EAC/B,OAAO,GAAE,qBAA0B,GAClC,OAAO,CAAC,cAAc,CAAC,CAqBzB;AAED,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,aAAa,GACpB,WAAW,GAAG,IAAI,CAOpB;AAmBD,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,WAAW,EACpB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC7B,MAAM,IAAI,CAiBZ;AAED,wBAAgB,oBAAoB,CAAC,EACnC,MAAa,EACb,cAAmB,EACnB,gBAAqB,EACrB,KAAY,EACZ,WAAkB,GACnB,EAAE;IACD,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC;IACvC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,KAAK,CAAC,EAAE,kBAAkB,CAAC;IAC3B,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAezB;AAED,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,gBAAgB,GAAG,IAAI,EAC9B,SAAS,EAAE,MAAM,GAAG,IAAI,GACvB,OAAO,CAAC,aAAa,CAAC,GAAG,IAAI,CAiB/B"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/modules/background/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,OAAO,CAAC;AAE3C,OAAO,EACL,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,EACzB,KAAK,eAAe,EACpB,KAAK,SAAS,EACd,KAAK,YAAY,EAClB,MAAM,SAAS,CAAC;AAKjB,wBAAgB,sBAAsB,CACpC,GAAG,MAAM,EAAE,CAAC,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,EAAE,GACvC;IAAE,WAAW,EAAE,aAAa,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAe9D;AAED,wBAAgB,mBAAmB,CAAC,OAAO,GAAE,YAAiB;;;;;;;;;;;EAa7D;AAED,wBAAgB,wBAAwB,CACtC,KAAK,GAAE,OAAO,CAAC,eAAe,CAAC,GAAG,MAAM,GAAG,IAAI,GAAG,SAAc,GAC/D,OAAO,CAAC,eAAe,CAAC,CAuB1B;AAED,wBAAgB,oBAAoB,CAClC,SAAS,EAAE,eAAe,EAC1B,KAAK,GAAE,OAAO,CAAC,eAAe,CAAC,GAAG,MAAW,GAC5C,eAAe,CA6CjB;AAED,wBAAgB,oBAAoB,CAClC,UAAU,EAAE,oBAAoB,GAAG,IAAI,GAAG,SAAS,GAClD,OAAO,CAAC,eAAe,CAAC,GAAG,IAAI,CAEjC;AAED,eAAO,MAAM,oBAAoB,GAC/B,WAAW,MAAM,GAAG,OAAO,EAC3B,OAAO,MAAM,KACZ,MAGF,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAC/B,WAAW,MAAM,GAAG,OAAO,EAC3B,OAAO,MAAM,KACZ,MAGF,CAAC;AAEF,wBAAgB,cAAc,CAAC,YAAY,GAAE,oBAAyB;eAQ1C,aAAa;;;EAIxC;AAED,wBAAgB,uBAAuB,CAAC,EACtC,SAAgB,EAChB,QAAgB,EAChB,YAAgB,EAChB,aAAiB,GAClB,EAAE;IACD,SAAS,CAAC,EAAE,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC;IACzD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;;;;;;EAsCA;AAmCD,wBAAgB,eAAe,CAAC,EAC9B,KAA4B,EAC5B,WAAe,EACf,YAAgB,GACjB,EAAE;IACD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,GAAG,MAAM,GAAG,SAAS,CAWrB;AAED,wBAAgB,uBAAuB,CAAC,EACtC,SAAS,EACT,YAAY,EACZ,eAAe,EACf,YAAY,GACb,EAAE;IACD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAC5C,YAAY,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAC;CACxC,GAAG,IAAI,CA6CP;AAED,wBAAgB,0BAA0B,CACxC,YAAY,EAAE,gBAAgB,GAAG,IAAI,GAAG,SAAS,EACjD,WAAW,EAAE,OAAO,EACpB,eAAe,EAAE,OAAO,GACvB,IAAI,CAgBN;AAED,wBAAgB,oBAAoB,CAClC,YAAY,EAAE,gBAAgB,GAAG,IAAI,GAAG,SAAS,EACjD,SAAS,EAAE,OAAO,GACjB,IAAI,CAMN;AAED,wBAAgB,mBAAmB,CACjC,YAAY,EAAE,gBAAgB,GAAG,IAAI,GAAG,SAAS,EACjD,QAAQ,EAAE,OAAO,GAChB,IAAI,CAGN"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/modules/context-menu/utils.ts"],"names":[],"mappings":"AAOA,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,uBAAuB,EAG5B,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACxB,KAAK,yBAAyB,EAC9B,KAAK,uBAAuB,EAE7B,MAAM,SAAS,CAAC;AAGjB,wBAAgB,cAAc,CAC5B,GAAG,OAAO,EAAE,CAAC,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC,EAAE,GAClD,MAAM,CAER;AAaD,wBAAgB,eAAe,CAAC,KAAK,EAAE;IAAE,GAAG,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAE/D;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAgBtD;AAED,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,OAAO,EACd,OAAO,CAAC,EAAE,OAAO,EACjB,YAAY,UAAO,GAClB,OAAO,CAYT;AAED,wBAAgB,cAAc,CAAC,CAAC,GAAG,OAAO,EACxC,KAAK,EAAE,OAAO,EACd,OAAO,CAAC,EAAE,OAAO,EACjB,QAAQ,CAAC,EAAE,CAAC,GACX,CAAC,CAUH;AAED,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI,CAO/D;AAED,wBAAgB,UAAU,CAAC,CAAC,GAAG,OAAO,EACpC,OAAO,EAAE,OAAO,EAChB,GAAG,IAAI,EAAE,OAAO,EAAE,GACjB,CAAC,GAAG,SAAS,CAcf;AAED,wBAAgB,0BAA0B,CACxC,QAAQ,EAAE,OAAO,EACjB,QAAQ,SAAK,GACZ,mBAAmB,GAAG,IAAI,CA8B5B;AAED,wBAAgB,YAAY,CAC1B,WAAW,EAAE,WAAW,GAAG,IAAI,EAC/B,QAAQ,CAAC,EAAE,mBAAmB,GAAG,IAAI,GACpC,IAAI,CAWN;AAmDD,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,iBAAiB,GAAG,IAAI,GAAG,SAAS,EAC5C,OAAO,EAAE,uBAAuB,GAC/B,uBAAuB,EAAE,CAmB3B;AAED,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,iBAAiB,GAAG,IAAI,GAAG,SAAS,EAC5C,OAAO,EAAE,uBAAuB,GAC/B,yBAAyB,GAAG,IAAI,CAyBlC;AAED,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,uBAAuB,EAAE,EAChC,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,CAAC,GAAG,CAAC,CAAC,GAChB,MAAM,CAUR"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/modules/controls/utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAOjD,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,cAAc,EACnB,KAAK,kBAAkB,EAEvB,KAAK,gBAAgB,EACrB,KAAK,qBAAqB,EAC1B,KAAK,kBAAkB,EACxB,MAAM,SAAS,CAAC;AAEjB,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,WAAW,CAElE;AAMD,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,GAAG,YAAY,EAAE,GAAG,IAAI,GAAG,SAAS,EACzE,QAAQ,EAAE,MAAM,GACf,qBAAqB,CAoCvB;AAED,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,IAAI,CAAC,OAAO,EAAE,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC,GAAG,IAAI,EACtE,QAAQ,EAAE,kBAAkB,GAC3B,cAAc,GAAG,IAAI,CAsBvB;AAED,wBAAgB,eAAe,CAC7B,CAAC,EAAE,cAAc,GAAG,IAAI,EACxB,CAAC,EAAE,cAAc,GAAG,IAAI,GACvB,OAAO,CAYT;AAcD,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,gBAAgB,CAkBrE;AAED,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,kBAAkB,GAAG,IAAI,GAAG,SAAS,GAC9C,gBAAgB,EAAE,GAAG,IAAI,CAoB3B"}
@@ -1,93 +0,0 @@
1
- import { cn, type CoreSchedulerOptions } from "@/utils";
2
- import { type ReactNode, type CSSProperties } from "react";
3
- import { type DockComponent, type DockVisualStyleSection, type DockItem, type DockHudDescriptor, type NormalizedSurfaceExtension, type SurfaceDescriptor, type DockTheme, type SurfaceFlowDefinition, type SurfaceReturnHandshake, type SurfaceReturnHandshakeInput } from "./types";
4
- export declare function isSamePath(left: unknown, right: unknown): boolean;
5
- export declare function isPathPrefix(candidatePath: unknown, pathname: unknown): boolean;
6
- export declare function isInlineActionPathMatch(path: unknown, pathname: unknown): boolean;
7
- export declare function isSafeInternalHref(value: unknown): boolean;
8
- export declare function getDockLocationKey({ hash, pathname, search, }?: {
9
- hash?: string;
10
- pathname?: string;
11
- search?: string;
12
- }): string;
13
- export declare function formatMediaTime(seconds?: number | string): string;
14
- export declare function isValidBannerUrl(banner: unknown): boolean;
15
- export declare function toObject(value: unknown): Record<string, unknown>;
16
- export declare function isValidComponentType(type: unknown): type is DockComponent;
17
- export declare function resolveComponentType(...candidates: unknown[]): DockComponent | null;
18
- export declare function resolveRenderableContent(...candidates: ReactNode[]): ReactNode | null;
19
- export declare function toSearchableText(value: unknown): string;
20
- export type DockStyleInput = DockVisualStyleSection;
21
- export declare function normalizeUpper(value: unknown): string;
22
- export declare function splitStyle<T extends DockStyleInput>(style?: T): {
23
- className: string | undefined;
24
- inlineStyle: Omit<T, "className">;
25
- };
26
- export declare function getLineClampStyle(maxLines: number | string | undefined, style: CSSProperties): CSSProperties;
27
- export declare function getImageIconStyle(style: CSSProperties, icon: string): CSSProperties;
28
- export declare function resolveDockActionClass(slots: DockTheme["slots"], { className, button, isActive, variant, tone, base, cn: classNamesFn, }?: {
29
- className?: string;
30
- button?: string;
31
- isActive?: boolean;
32
- variant?: string;
33
- tone?: string;
34
- base?: string;
35
- cn?: (...args: Parameters<typeof cn>) => string;
36
- }): string;
37
- export declare function blurActiveElement(): void;
38
- export declare function isInteractiveTarget(target: unknown): boolean;
39
- export declare function isEditableDockTarget(target: unknown): boolean;
40
- export declare function getDockFocusableElements(container: HTMLElement | null): HTMLElement[];
41
- export declare function focusDockElement(element: HTMLElement | null): boolean;
42
- export declare function shouldRestoreDockFocus(result: unknown): boolean;
43
- type AncestorAwareItem = DockItem & {
44
- keepWhenDescendant?: boolean | ((activePath: string, item: DockItem) => boolean);
45
- statusType?: string;
46
- };
47
- declare function isSameDockItem(item: DockItem | null | undefined, candidate: DockItem | null | undefined): boolean;
48
- export declare const isSameItem: typeof isSameDockItem;
49
- export declare function getItemKey(link: DockItem | null, index?: number): string;
50
- export declare function getItemMeasurementKey({ link, expanded, isHud, }: {
51
- link: DockItem;
52
- expanded: boolean;
53
- isHud?: boolean;
54
- isHovered?: boolean;
55
- isStackHovered?: boolean;
56
- }): string;
57
- export declare function getRouteMeasurementKey(pathname: string | null, key: string): string;
58
- export declare function resolveDockHeaderKey({ link, description, showVideoIcon, }: {
59
- link: AncestorAwareItem;
60
- description?: string | null;
61
- showVideoIcon?: boolean;
62
- }): string;
63
- export declare function findDockItemIndex(dockItems: DockItem[], activeItem: DockItem | null, pathname: string): number;
64
- export declare function resolveActiveIndex({ dockItems, activeItem, pathname, }: {
65
- dockItems: DockItem[];
66
- activeItem: DockItem | null;
67
- pathname: string;
68
- }): number;
69
- export declare function removeAncestorDuplicates(items?: DockItem[]): DockItem[];
70
- export declare function replaceActiveItem(items: DockItem[], activeIndex: number, activeItem: DockItem | null): DockItem[];
71
- export declare function removeInactiveLoadingItems(items?: DockItem[], activeItem?: DockItem | null): DockItem[];
72
- export declare function reorderItemsWithActiveFirst(items: DockItem[], activeIndex: number): DockItem[];
73
- export declare function isHudDescriptor(value: unknown): value is DockHudDescriptor;
74
- export declare function isSurfaceDescriptor(value: unknown): value is SurfaceDescriptor;
75
- export declare function normalizeSurfaceExtension(input: unknown): NormalizedSurfaceExtension | null;
76
- export declare function normalizeSurfaceFlowSnapshot(value: unknown): Record<string, unknown> | null;
77
- export declare function createSurfaceReturnHandshake(input: SurfaceReturnHandshakeInput): SurfaceReturnHandshake | null;
78
- export declare function resolveSurfaceFlowReturnHandshake(definition: Pick<SurfaceFlowDefinition, "returnHandshake"> | null | undefined, input: unknown): SurfaceReturnHandshake | null;
79
- export declare function createDockScheduler(options?: CoreSchedulerOptions): Readonly<{
80
- cancel: (taskId: number) => boolean;
81
- cancelAll(): number[];
82
- getSnapshot(): import("@/utils").SchedulerSnapshot;
83
- now: () => number;
84
- schedule(callback: (timestamp: number) => void, delayMs?: number, options?: {
85
- label?: string;
86
- }): number | null;
87
- scheduleFrame(callback: (timestamp: number) => void, options?: {
88
- label?: string;
89
- }): number | null;
90
- subscribe(listener: () => void): () => void;
91
- }>;
92
- export {};
93
- //# sourceMappingURL=utils.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/modules/dock/utils.ts"],"names":[],"mappings":"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"}
@@ -1,4 +0,0 @@
1
- import { type LoadingOptions, type LoadingPageConfig, type LoadingState } from "./types";
2
- export declare function normalizeLoadingOptions(options?: LoadingOptions): Omit<LoadingState, "isLoading">;
3
- export declare function selectPageLoading(loading: LoadingPageConfig | null | undefined): LoadingOptions | null;
4
- //# sourceMappingURL=utils.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/modules/loading/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACtB,KAAK,YAAY,EAClB,MAAM,SAAS,CAAC;AAEjB,wBAAgB,uBAAuB,CACrC,OAAO,GAAE,cAAmB,GAC3B,IAAI,CAAC,YAAY,EAAE,WAAW,CAAC,CASjC;AAED,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,iBAAiB,GAAG,IAAI,GAAG,SAAS,GAC5C,cAAc,GAAG,IAAI,CAKvB"}
@@ -1,17 +0,0 @@
1
- import { type MediaSession, type MediaEntry, type MediaEntryInput, type MediaPageConfig, type MediaPageOptions, type MediaState } from "./types";
2
- export declare function resolveMediaSession(sources: readonly MediaEntry[]): MediaSession | null;
3
- export declare function createMediaState(session: MediaSession | null): MediaState;
4
- export declare function mediaStatesEqual(a: MediaState, b: MediaState): boolean;
5
- export declare function mergeMediaSource(current: MediaEntry | undefined, input: MediaEntryInput, order: number): MediaEntry;
6
- export declare function toggleElement(element: HTMLMediaElement | null): void;
7
- export declare function safePlay(element: HTMLMediaElement): void;
8
- export declare function bindFollowers(transport: HTMLMediaElement, followers: readonly HTMLMediaElement[]): () => void;
9
- export declare function sameElements(a: readonly (HTMLMediaElement | null)[], b: readonly (HTMLMediaElement | null)[]): boolean;
10
- export declare function selectPageMedia(media: MediaPageConfig | null | undefined): MediaPageOptions | null;
11
- /**
12
- * Standalone audio that a newly registered source pushes out of the controls.
13
- * Two independent tracks would otherwise play over each other while the dock
14
- * only controls the newest.
15
- */
16
- export declare function findDisplacedAudio(entries: readonly MediaEntry[], session: MediaSession | null, newId: string): MediaEntry[];
17
- //# sourceMappingURL=utils.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/modules/media/utils.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,UAAU,EAChB,MAAM,SAAS,CAAC;AAQjB,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,SAAS,UAAU,EAAE,GAC7B,YAAY,GAAG,IAAI,CAyBrB;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,YAAY,GAAG,IAAI,GAAG,UAAU,CAYzE;AAED,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,UAAU,GAAG,OAAO,CAEtE;AAED,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,UAAU,GAAG,SAAS,EAC/B,KAAK,EAAE,eAAe,EACtB,KAAK,EAAE,MAAM,GACZ,UAAU,CAYZ;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI,GAAG,IAAI,CAOpE;AAED,wBAAgB,QAAQ,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI,CAMxD;AAED,wBAAgB,aAAa,CAC3B,SAAS,EAAE,gBAAgB,EAC3B,SAAS,EAAE,SAAS,gBAAgB,EAAE,GACrC,MAAM,IAAI,CAgDZ;AAED,wBAAgB,YAAY,CAC1B,CAAC,EAAE,SAAS,CAAC,gBAAgB,GAAG,IAAI,CAAC,EAAE,EACvC,CAAC,EAAE,SAAS,CAAC,gBAAgB,GAAG,IAAI,CAAC,EAAE,GACtC,OAAO,CAIT;AAED,wBAAgB,eAAe,CAC7B,KAAK,EAAE,eAAe,GAAG,IAAI,GAAG,SAAS,GACxC,gBAAgB,GAAG,IAAI,CAIzB;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,SAAS,UAAU,EAAE,EAC9B,OAAO,EAAE,YAAY,GAAG,IAAI,EAC5B,KAAK,EAAE,MAAM,GACZ,UAAU,EAAE,CAWd"}
@@ -1,31 +0,0 @@
1
- import { type ReactNode } from "react";
2
- import { type DefineModalOptions, type ModalComponent, type ModalInput, type ModalPosition, type ModalLayout, type ResponsiveModalPosition } from "./types";
3
- export declare function getModalIdentity(input: ModalInput | DefineModalOptions): {
4
- component: ModalComponent | null;
5
- type: string;
6
- };
7
- export declare function hasHeightConstraint(className?: string): boolean;
8
- export declare function isSidePosition(position: ModalPosition | null | undefined): boolean;
9
- export declare function isVerticalEdgePosition(position: ModalPosition | null | undefined): boolean;
10
- export declare function hasSlotContent(value: unknown): boolean;
11
- export declare function isHeaderConfig(value: unknown): boolean;
12
- export declare function resolveHeaderActions(actions: ReactNode | ((props: {
13
- close?: (result?: unknown) => void;
14
- }) => ReactNode) | undefined, close?: (result?: unknown) => void): ReactNode;
15
- export declare function getModalPosition(position: ModalPosition): ModalPosition;
16
- /**
17
- * The fully resolved layout of a modal. Themes style it through
18
- * `data-layout`, so every position/viewport combination is one selector.
19
- */
20
- export declare function getModalLayout(position: ModalPosition, isMobile: boolean): ModalLayout;
21
- export declare function dispatchSmoothScrollLock(locked: boolean): void;
22
- export declare function getViewportIsMobile(): boolean;
23
- export declare function resolveActivePosition(position: ModalPosition, responsivePosition: ResponsiveModalPosition | null | undefined, isMobileViewport: boolean): ModalPosition;
24
- export declare function normalizePosition(input: ModalPosition | ResponsiveModalPosition | undefined): {
25
- position: ModalPosition;
26
- responsivePosition: ResponsiveModalPosition | null;
27
- };
28
- export declare function getFocusableElements(container: HTMLElement | null): HTMLElement[];
29
- export declare function trapFocus(event: KeyboardEvent, container: HTMLElement | null): void;
30
- export declare function getModalLabel(modalType?: string | null): string;
31
- //# sourceMappingURL=utils.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/modules/modal/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAUvD,OAAO,EACL,KAAK,kBAAkB,EACvB,KAAK,cAAc,EAEnB,KAAK,UAAU,EACf,KAAK,aAAa,EAElB,KAAK,WAAW,EAChB,KAAK,uBAAuB,EAC7B,MAAM,SAAS,CAAC;AAEjB,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,UAAU,GAAG,kBAAkB,GAAG;IACxE,SAAS,EAAE,cAAc,GAAG,IAAI,CAAC;IACjC,IAAI,EAAE,MAAM,CAAC;CACd,CAaA;AAED,wBAAgB,mBAAmB,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAI/D;AAED,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,aAAa,GAAG,IAAI,GAAG,SAAS,GACzC,OAAO,CAIT;AAED,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,aAAa,GAAG,IAAI,GAAG,SAAS,GACzC,OAAO,CAIT;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAItD;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAOtD;AAED,wBAAgB,oBAAoB,CAClC,OAAO,EACH,SAAS,GACT,CAAC,CAAC,KAAK,EAAE;IAAE,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,OAAO,KAAK,IAAI,CAAA;CAAE,KAAK,SAAS,CAAC,GAC9D,SAAS,EACb,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,OAAO,KAAK,IAAI,GACjC,SAAS,CAEX;AAED,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,aAAa,GAAG,aAAa,CAOvE;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,aAAa,EACvB,QAAQ,EAAE,OAAO,GAChB,WAAW,CAQb;AAED,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI,CAO9D;AAED,wBAAgB,mBAAmB,IAAI,OAAO,CAU7C;AAED,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,aAAa,EACvB,kBAAkB,EAAE,uBAAuB,GAAG,IAAI,GAAG,SAAS,EAC9D,gBAAgB,EAAE,OAAO,GACxB,aAAa,CAMf;AAED,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,aAAa,GAAG,uBAAuB,GAAG,SAAS,GACzD;IACD,QAAQ,EAAE,aAAa,CAAC;IACxB,kBAAkB,EAAE,uBAAuB,GAAG,IAAI,CAAC;CACpD,CAeA;AAED,wBAAgB,oBAAoB,CAClC,SAAS,EAAE,WAAW,GAAG,IAAI,GAC5B,WAAW,EAAE,CASf;AAED,wBAAgB,SAAS,CACvB,KAAK,EAAE,aAAa,EACpB,SAAS,EAAE,WAAW,GAAG,IAAI,GAC5B,IAAI,CAmBN;AAED,wBAAgB,aAAa,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAQ/D"}
@@ -1,9 +0,0 @@
1
- import { type NotificationData, type NotificationEntry, type NotificationOptions, type ToastOptionsInput } from "./types";
2
- export declare function normalizeFeedbackText<T = unknown>(value: T): T;
3
- export declare function getActiveNotification(notifications: Record<string, NotificationEntry>): NotificationEntry | null;
4
- export declare function normalizeToastOptions(options?: ToastOptionsInput): NotificationOptions;
5
- export declare function withDefaultDuration(duration: number, options?: ToastOptionsInput): NotificationOptions & {
6
- duration: number | null;
7
- };
8
- export declare function isNotificationDataObject(value: unknown): value is NotificationData;
9
- //# sourceMappingURL=utils.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/modules/notification/utils.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACxB,KAAK,iBAAiB,EACvB,MAAM,SAAS,CAAC;AAEjB,wBAAgB,qBAAqB,CAAC,CAAC,GAAG,OAAO,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAG9D;AAED,wBAAgB,qBAAqB,CACnC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,GAC/C,iBAAiB,GAAG,IAAI,CAM1B;AAED,wBAAgB,qBAAqB,CACnC,OAAO,CAAC,EAAE,iBAAiB,GAC1B,mBAAmB,CAErB;AAED,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,iBAAiB,GAC1B,mBAAmB,GAAG;IAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAOnD;AAED,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,OAAO,GACb,KAAK,IAAI,gBAAgB,CAE3B"}