@intlayer/design-system 9.3.2 → 9.4.0-canary.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (187) hide show
  1. package/README.md +1 -1
  2. package/dist/esm/api/hooks/analytics.mjs +6 -5
  3. package/dist/esm/api/hooks/analytics.mjs.map +1 -1
  4. package/dist/esm/api/hooks/auth.mjs +2 -0
  5. package/dist/esm/api/hooks/auth.mjs.map +1 -1
  6. package/dist/esm/api/index.mjs +2 -2
  7. package/dist/esm/api/useAuth/useOAuth2.mjs +1 -1
  8. package/dist/esm/api/useAuth/useSession.mjs +1 -1
  9. package/dist/esm/components/Accordion/Accordion.mjs +2 -2
  10. package/dist/esm/components/Accordion/Accordion.mjs.map +1 -1
  11. package/dist/esm/components/Browser/Browser.mjs +1 -1
  12. package/dist/esm/components/Browser/Browser.mjs.map +1 -1
  13. package/dist/esm/components/ContentEditor/ContentEditorTextArea.mjs +1 -1
  14. package/dist/esm/components/CopyButton/index.mjs +2 -1
  15. package/dist/esm/components/CopyButton/index.mjs.map +1 -1
  16. package/dist/esm/components/DictionaryFieldEditor/ContentEditor.mjs +4 -5
  17. package/dist/esm/components/DictionaryFieldEditor/ContentEditor.mjs.map +1 -1
  18. package/dist/esm/components/DictionaryFieldEditor/ContentEditorView/TextEditor.mjs +6 -10
  19. package/dist/esm/components/DictionaryFieldEditor/ContentEditorView/TextEditor.mjs.map +1 -1
  20. package/dist/esm/components/DictionaryFieldEditor/DictionaryCreationForm/DictionaryCreationForm.mjs +1 -1
  21. package/dist/esm/components/DictionaryFieldEditor/DictionaryDetails/DictionaryDetailsForm.mjs +6 -6
  22. package/dist/esm/components/DictionaryFieldEditor/DictionaryDetails/DictionaryDetailsForm.mjs.map +1 -1
  23. package/dist/esm/components/DictionaryFieldEditor/DictionaryFieldEditor.mjs +3 -7
  24. package/dist/esm/components/DictionaryFieldEditor/DictionaryFieldEditor.mjs.map +1 -1
  25. package/dist/esm/components/DictionaryFieldEditor/NavigationView/NavigationViewNode.mjs +1 -1
  26. package/dist/esm/components/DictionaryFieldEditor/SaveForm/SaveForm.mjs +2 -2
  27. package/dist/esm/components/DictionaryFieldEditor/StructureView/StructureView.mjs +1 -1
  28. package/dist/esm/components/ExpandCollapse/ExpandCollapse.mjs +19 -12
  29. package/dist/esm/components/ExpandCollapse/ExpandCollapse.mjs.map +1 -1
  30. package/dist/esm/components/Form/elements/OTPElement.mjs +4 -4
  31. package/dist/esm/components/Form/elements/OTPElement.mjs.map +1 -1
  32. package/dist/esm/components/HTMLRender/HTMLRender.mjs +2 -2
  33. package/dist/esm/components/HTMLRender/HTMLRender.mjs.map +1 -1
  34. package/dist/esm/components/IDE/Code.mjs +3 -3
  35. package/dist/esm/components/IDE/Code.mjs.map +1 -1
  36. package/dist/esm/components/IDE/CodeBlockClient.mjs +16 -4
  37. package/dist/esm/components/IDE/CodeBlockClient.mjs.map +1 -1
  38. package/dist/esm/components/IDE/CodeBlockHighlight.mjs +14 -5
  39. package/dist/esm/components/IDE/CodeBlockHighlight.mjs.map +1 -1
  40. package/dist/esm/components/IDE/CodeBlockServer.mjs +5 -3
  41. package/dist/esm/components/IDE/CodeBlockServer.mjs.map +1 -1
  42. package/dist/esm/components/IDE/CodeBlockShiki.mjs +18 -18
  43. package/dist/esm/components/IDE/CodeBlockShiki.mjs.map +1 -1
  44. package/dist/esm/components/IDE/IDE.mjs +2 -5
  45. package/dist/esm/components/IDE/IDE.mjs.map +1 -1
  46. package/dist/esm/components/IDE/MarkDownRender.mjs +1 -2
  47. package/dist/esm/components/IDE/MarkDownRender.mjs.map +1 -1
  48. package/dist/esm/components/IDE/index.mjs +2 -2
  49. package/dist/esm/components/IDE/shikiThemes.mjs +18 -0
  50. package/dist/esm/components/IDE/shikiThemes.mjs.map +1 -0
  51. package/dist/esm/components/Link/Link.mjs +10 -5
  52. package/dist/esm/components/Link/Link.mjs.map +1 -1
  53. package/dist/esm/components/LocaleSwitcherContentDropDown/LocaleSwitcherContent.mjs +1 -1
  54. package/dist/esm/components/MarkDownRender/MarkDownIframe.mjs +105 -4
  55. package/dist/esm/components/MarkDownRender/MarkDownIframe.mjs.map +1 -1
  56. package/dist/esm/components/MarkDownRender/MarkDownRender.mjs +16 -16
  57. package/dist/esm/components/MarkDownRender/MarkDownRender.mjs.map +1 -1
  58. package/dist/esm/components/MaxHeightSmoother/index.mjs +1 -1
  59. package/dist/esm/components/MaxHeightSmoother/index.mjs.map +1 -1
  60. package/dist/esm/components/MaxWidthSmoother/index.mjs +1 -1
  61. package/dist/esm/components/MaxWidthSmoother/index.mjs.map +1 -1
  62. package/dist/esm/components/Modal/Modal.mjs +2 -2
  63. package/dist/esm/components/Navbar/MobileNavbar.mjs +1 -1
  64. package/dist/esm/components/Pagination/Pagination.mjs +4 -4
  65. package/dist/esm/components/Pagination/Pagination.mjs.map +1 -1
  66. package/dist/esm/components/Pattern/GridDistortionPattern.mjs +103 -17
  67. package/dist/esm/components/Pattern/GridDistortionPattern.mjs.map +1 -1
  68. package/dist/esm/components/Popover/dynamic.mjs +73 -28
  69. package/dist/esm/components/Popover/dynamic.mjs.map +1 -1
  70. package/dist/esm/components/Popover/index.mjs +2 -2
  71. package/dist/esm/components/Popover/static.mjs +47 -18
  72. package/dist/esm/components/Popover/static.mjs.map +1 -1
  73. package/dist/esm/components/RightDrawer/RightDrawer.mjs +5 -4
  74. package/dist/esm/components/RightDrawer/RightDrawer.mjs.map +1 -1
  75. package/dist/esm/components/SwitchSelector/useSwitchSelector.mjs +2 -2
  76. package/dist/esm/components/SwitchSelector/useSwitchSelector.mjs.map +1 -1
  77. package/dist/esm/components/Tab/Tab.mjs +38 -17
  78. package/dist/esm/components/Tab/Tab.mjs.map +1 -1
  79. package/dist/esm/components/TabSelector/TabSelector.mjs +2 -2
  80. package/dist/esm/components/TabSelector/TabSelector.mjs.map +1 -1
  81. package/dist/esm/components/TextArea/AutoSizeTextArea.mjs +3 -2
  82. package/dist/esm/components/TextArea/AutoSizeTextArea.mjs.map +1 -1
  83. package/dist/esm/components/ThemeSwitcherDropDown/DesktopThemeSwitcher.mjs +10 -18
  84. package/dist/esm/components/ThemeSwitcherDropDown/DesktopThemeSwitcher.mjs.map +1 -1
  85. package/dist/esm/components/ThemeSwitcherDropDown/MobileThemeSwitcher.mjs +14 -13
  86. package/dist/esm/components/ThemeSwitcherDropDown/MobileThemeSwitcher.mjs.map +1 -1
  87. package/dist/esm/components/index.mjs +3 -3
  88. package/dist/esm/hooks/index.mjs +9 -9
  89. package/dist/esm/hooks/useDevice.mjs +16 -6
  90. package/dist/esm/hooks/useDevice.mjs.map +1 -1
  91. package/dist/esm/hooks/useItemSelector.mjs +110 -112
  92. package/dist/esm/hooks/useItemSelector.mjs.map +1 -1
  93. package/dist/esm/hooks/useScrollY.mjs +64 -45
  94. package/dist/esm/hooks/useScrollY.mjs.map +1 -1
  95. package/dist/esm/hooks/useStickToBottom.mjs +69 -0
  96. package/dist/esm/hooks/useStickToBottom.mjs.map +1 -0
  97. package/dist/esm/libs/auth.mjs +16 -3
  98. package/dist/esm/libs/auth.mjs.map +1 -1
  99. package/dist/esm/providers/ThemeProvider.mjs +143 -0
  100. package/dist/esm/providers/ThemeProvider.mjs.map +1 -0
  101. package/dist/esm/providers/index.mjs +2 -1
  102. package/dist/esm/routes.mjs +2 -1
  103. package/dist/esm/routes.mjs.map +1 -1
  104. package/dist/esm/structured-data/buildCreativeWorkJsonLd.mjs +1 -1
  105. package/dist/esm/structured-data/buildCreativeWorkJsonLd.mjs.map +1 -1
  106. package/dist/esm/utils/index.mjs +3 -1
  107. package/dist/esm/utils/observeScrollExtent.mjs +39 -0
  108. package/dist/esm/utils/observeScrollExtent.mjs.map +1 -0
  109. package/dist/esm/utils/scheduleFrameTask.mjs +44 -0
  110. package/dist/esm/utils/scheduleFrameTask.mjs.map +1 -0
  111. package/dist/types/api/hooks/analytics.d.ts +5 -3
  112. package/dist/types/api/hooks/analytics.d.ts.map +1 -1
  113. package/dist/types/api/hooks/auth.d.ts.map +1 -1
  114. package/dist/types/components/Browser/Browser.d.ts +7 -1
  115. package/dist/types/components/Browser/Browser.d.ts.map +1 -1
  116. package/dist/types/components/CopyButton/index.d.ts +9 -3
  117. package/dist/types/components/CopyButton/index.d.ts.map +1 -1
  118. package/dist/types/components/DictionaryFieldEditor/ContentEditor.d.ts +0 -1
  119. package/dist/types/components/DictionaryFieldEditor/ContentEditor.d.ts.map +1 -1
  120. package/dist/types/components/DictionaryFieldEditor/ContentEditorView/TextEditor.d.ts +0 -1
  121. package/dist/types/components/DictionaryFieldEditor/ContentEditorView/TextEditor.d.ts.map +1 -1
  122. package/dist/types/components/DictionaryFieldEditor/DictionaryDetails/DictionaryDetailsForm.d.ts +0 -1
  123. package/dist/types/components/DictionaryFieldEditor/DictionaryDetails/DictionaryDetailsForm.d.ts.map +1 -1
  124. package/dist/types/components/ExpandCollapse/ExpandCollapse.d.ts.map +1 -1
  125. package/dist/types/components/HTMLRender/HTMLRender.d.ts +1 -2
  126. package/dist/types/components/HTMLRender/HTMLRender.d.ts.map +1 -1
  127. package/dist/types/components/IDE/Code.d.ts +6 -1
  128. package/dist/types/components/IDE/Code.d.ts.map +1 -1
  129. package/dist/types/components/IDE/CodeBlockClient.d.ts +18 -2
  130. package/dist/types/components/IDE/CodeBlockClient.d.ts.map +1 -1
  131. package/dist/types/components/IDE/CodeBlockHighlight.d.ts +3 -2
  132. package/dist/types/components/IDE/CodeBlockHighlight.d.ts.map +1 -1
  133. package/dist/types/components/IDE/CodeBlockServer.d.ts +0 -1
  134. package/dist/types/components/IDE/CodeBlockServer.d.ts.map +1 -1
  135. package/dist/types/components/IDE/CodeBlockShiki.d.ts +0 -1
  136. package/dist/types/components/IDE/CodeBlockShiki.d.ts.map +1 -1
  137. package/dist/types/components/IDE/IDE.d.ts +0 -1
  138. package/dist/types/components/IDE/IDE.d.ts.map +1 -1
  139. package/dist/types/components/IDE/MarkDownRender.d.ts +0 -1
  140. package/dist/types/components/IDE/MarkDownRender.d.ts.map +1 -1
  141. package/dist/types/components/IDE/index.d.ts +2 -2
  142. package/dist/types/components/IDE/shikiThemes.d.ts +18 -0
  143. package/dist/types/components/IDE/shikiThemes.d.ts.map +1 -0
  144. package/dist/types/components/MarkDownRender/MarkDownIframe.d.ts.map +1 -1
  145. package/dist/types/components/MarkDownRender/MarkDownRender.d.ts +1 -2
  146. package/dist/types/components/MarkDownRender/MarkDownRender.d.ts.map +1 -1
  147. package/dist/types/components/Pattern/GridDistortionPattern.d.ts.map +1 -1
  148. package/dist/types/components/Popover/dynamic.d.ts.map +1 -1
  149. package/dist/types/components/Popover/index.d.ts +2 -2
  150. package/dist/types/components/Popover/static.d.ts +6 -1
  151. package/dist/types/components/Popover/static.d.ts.map +1 -1
  152. package/dist/types/components/Tab/Tab.d.ts +2 -2
  153. package/dist/types/components/Tab/Tab.d.ts.map +1 -1
  154. package/dist/types/components/ThemeSwitcherDropDown/DesktopThemeSwitcher.d.ts +1 -1
  155. package/dist/types/components/ThemeSwitcherDropDown/DesktopThemeSwitcher.d.ts.map +1 -1
  156. package/dist/types/components/ThemeSwitcherDropDown/MobileThemeSwitcher.d.ts +1 -1
  157. package/dist/types/components/ThemeSwitcherDropDown/MobileThemeSwitcher.d.ts.map +1 -1
  158. package/dist/types/components/ThemeSwitcherDropDown/types.d.ts +3 -1
  159. package/dist/types/components/ThemeSwitcherDropDown/types.d.ts.map +1 -1
  160. package/dist/types/components/index.d.ts +3 -3
  161. package/dist/types/hooks/index.d.ts +2 -2
  162. package/dist/types/hooks/useItemSelector.d.ts +2 -0
  163. package/dist/types/hooks/useItemSelector.d.ts.map +1 -1
  164. package/dist/types/hooks/useScrollY.d.ts +10 -0
  165. package/dist/types/hooks/useScrollY.d.ts.map +1 -1
  166. package/dist/types/hooks/useStickToBottom.d.ts +41 -0
  167. package/dist/types/hooks/useStickToBottom.d.ts.map +1 -0
  168. package/dist/types/libs/auth.d.ts +3 -0
  169. package/dist/types/libs/auth.d.ts.map +1 -1
  170. package/dist/types/providers/ThemeProvider.d.ts +41 -0
  171. package/dist/types/providers/ThemeProvider.d.ts.map +1 -0
  172. package/dist/types/providers/index.d.ts +2 -1
  173. package/dist/types/routes.d.ts +2 -1
  174. package/dist/types/routes.d.ts.map +1 -1
  175. package/dist/types/structured-data/buildCreativeWorkJsonLd.d.ts +9 -3
  176. package/dist/types/structured-data/buildCreativeWorkJsonLd.d.ts.map +1 -1
  177. package/dist/types/utils/index.d.ts +3 -1
  178. package/dist/types/utils/observeScrollExtent.d.ts +22 -0
  179. package/dist/types/utils/observeScrollExtent.d.ts.map +1 -0
  180. package/dist/types/utils/scheduleFrameTask.d.ts +25 -0
  181. package/dist/types/utils/scheduleFrameTask.d.ts.map +1 -0
  182. package/package.json +46 -41
  183. package/tailwind.css +27 -1
  184. package/dist/esm/hooks/useIsDarkMode.mjs +0 -17
  185. package/dist/esm/hooks/useIsDarkMode.mjs.map +0 -1
  186. package/dist/types/hooks/useIsDarkMode.d.ts +0 -5
  187. package/dist/types/hooks/useIsDarkMode.d.ts.map +0 -1
@@ -0,0 +1,44 @@
1
+ //#region src/utils/scheduleFrameTask.ts
2
+ const pendingTasks = /* @__PURE__ */ new Set();
3
+ let frameRequestId = null;
4
+ const runPendingTasks = () => {
5
+ frameRequestId = null;
6
+ const tasks = [...pendingTasks];
7
+ pendingTasks.clear();
8
+ for (const task of tasks) task();
9
+ };
10
+ /**
11
+ * Queues a layout-reading task, and runs every queued task inside a single
12
+ * animation frame callback.
13
+ *
14
+ * A component reading `offsetTop` or `getBoundingClientRect()` from its own
15
+ * `requestAnimationFrame` makes the browser recompute layout once per
16
+ * component: React flushes the state updates of one callback before the next
17
+ * callback runs, so every read after the first one is a forced reflow. Sharing
18
+ * one callback keeps all the reads in the same batch, and React commits once,
19
+ * after the last measurement.
20
+ *
21
+ * @param task - The measurement to run on the next frame. Queuing the same
22
+ * function twice before the frame runs schedules it once.
23
+ * @returns A function cancelling the task, and the frame itself once nothing
24
+ * else is queued.
25
+ *
26
+ * @example
27
+ * const cancelMeasurement = scheduleFrameTask(() => setWidth(el.offsetWidth));
28
+ */
29
+ const scheduleFrameTask = (task) => {
30
+ if (typeof requestAnimationFrame === "undefined") return () => {};
31
+ pendingTasks.add(task);
32
+ frameRequestId ??= requestAnimationFrame(runPendingTasks);
33
+ return () => {
34
+ pendingTasks.delete(task);
35
+ if (pendingTasks.size === 0 && frameRequestId !== null) {
36
+ cancelAnimationFrame(frameRequestId);
37
+ frameRequestId = null;
38
+ }
39
+ };
40
+ };
41
+
42
+ //#endregion
43
+ export { scheduleFrameTask };
44
+ //# sourceMappingURL=scheduleFrameTask.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scheduleFrameTask.mjs","names":[],"sources":["../../../src/utils/scheduleFrameTask.ts"],"sourcesContent":["type FrameTask = () => void;\n\nconst pendingTasks = new Set<FrameTask>();\nlet frameRequestId: number | null = null;\n\nconst runPendingTasks = () => {\n frameRequestId = null;\n\n // Snapshot first: a task may queue another one, which belongs to the next\n // frame rather than to this loop.\n const tasks = [...pendingTasks];\n pendingTasks.clear();\n\n for (const task of tasks) task();\n};\n\n/**\n * Queues a layout-reading task, and runs every queued task inside a single\n * animation frame callback.\n *\n * A component reading `offsetTop` or `getBoundingClientRect()` from its own\n * `requestAnimationFrame` makes the browser recompute layout once per\n * component: React flushes the state updates of one callback before the next\n * callback runs, so every read after the first one is a forced reflow. Sharing\n * one callback keeps all the reads in the same batch, and React commits once,\n * after the last measurement.\n *\n * @param task - The measurement to run on the next frame. Queuing the same\n * function twice before the frame runs schedules it once.\n * @returns A function cancelling the task, and the frame itself once nothing\n * else is queued.\n *\n * @example\n * const cancelMeasurement = scheduleFrameTask(() => setWidth(el.offsetWidth));\n */\nexport const scheduleFrameTask = (task: FrameTask): (() => void) => {\n if (typeof requestAnimationFrame === 'undefined') return () => {};\n\n pendingTasks.add(task);\n\n frameRequestId ??= requestAnimationFrame(runPendingTasks);\n\n return () => {\n pendingTasks.delete(task);\n\n if (pendingTasks.size === 0 && frameRequestId !== null) {\n cancelAnimationFrame(frameRequestId);\n frameRequestId = null;\n }\n };\n};\n"],"mappings":";AAEA,MAAM,+BAAe,IAAI,IAAe;AACxC,IAAI,iBAAgC;AAEpC,MAAM,wBAAwB;CAC5B,iBAAiB;CAIjB,MAAM,QAAQ,CAAC,GAAG,YAAY;CAC9B,aAAa,MAAM;CAEnB,KAAK,MAAM,QAAQ,OAAO,KAAK;AACjC;;;;;;;;;;;;;;;;;;;;AAqBA,MAAa,qBAAqB,SAAkC;CAClE,IAAI,OAAO,0BAA0B,aAAa,aAAa,CAAC;CAEhE,aAAa,IAAI,IAAI;CAErB,mBAAmB,sBAAsB,eAAe;CAExD,aAAa;EACX,aAAa,OAAO,IAAI;EAExB,IAAI,aAAa,SAAS,KAAK,mBAAmB,MAAM;GACtD,qBAAqB,cAAc;GACnC,iBAAiB;EACnB;CACF;AACF"}
@@ -1,14 +1,16 @@
1
1
  import { UseQueryOptions } from "@tanstack/react-query";
2
+ import { AudienceRange } from "@intlayer/backend";
2
3
  //#region src/api/hooks/analytics.d.ts
3
4
  /**
4
5
  * Fetches the audience report for the active project: distinct visitors
5
- * (today / 7d / window), page views, the daily evolution series, and locale +
6
+ * (today / 7d / window), page views, the evolution series, and locale +
6
7
  * country breakdowns.
7
8
  *
8
- * @param days - Rolling window size in days (default 30).
9
+ * @param range - Rolling window, either a named range (`1h`, `24h`, `7d`,
10
+ * `30d`, `90d`, `6mo`, `1y`, `3y`) or a number of days (default 30).
9
11
  * @param options - Extra react-query options.
10
12
  */
11
- declare const useGetAnalyticsAudience: (days?: number, options?: Partial<UseQueryOptions>) => QueryObserverResult<TData, TError>;
13
+ declare const useGetAnalyticsAudience: (range?: AudienceRange | number, options?: Partial<UseQueryOptions>) => QueryObserverResult<TData, TError>;
12
14
  /**
13
15
  * Fetches per-content exposure totals — "which content is actually shown".
14
16
  *
@@ -1 +1 @@
1
- {"version":3,"file":"analytics.d.ts","names":[],"sources":["../../../../src/api/hooks/analytics.ts"],"mappings":";;;;;;;;;;cAca,0BAAuB,eAAA,UAExB,QAAQ,qBAAgB,oBAAA,OAAA;;;;;;cAmBvB,qBAAkB,UAAc,QAAQ,qBAAgB,oBAAA,OAAA;;;;;;;cAmBxD,0BAAuB,uBACb,UACX,QAAQ,qBAAgB,oBAAA,OAAA"}
1
+ {"version":3,"file":"analytics.d.ts","names":[],"sources":["../../../../src/api/hooks/analytics.ts"],"mappings":";;;;;;;;;;;;cAgBa,0BAAuB,QAC3B,wBAAsB,UACnB,QAAQ,qBAAgB,oBAAA,OAAA;;;;;;cAmBvB,qBAAkB,UAAc,QAAQ,qBAAgB,oBAAA,OAAA;;;;;;;cAmBxD,0BAAuB,uBACb,UACX,QAAQ,qBAAgB,oBAAA,OAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"auth.d.ts","names":[],"sources":["../../../../src/api/hooks/auth.ts"],"mappings":";cAMa;cAmBA,uBAAe,oBAAA,OAAA;cAQf;cAaA;cAaA;cAUA;cAmBA;cAoBA;cAUA;cAUA;cAUA;cAUA;cAUA;cASA;cASA;cASA;cASA;cASA;cASA;cASA,uBAAe,oBAAA,OAAA;cAQf;cAQA;cAaA;cASA,2BAAmB,oBAAA,OAAA;cAQnB"}
1
+ {"version":3,"file":"auth.d.ts","names":[],"sources":["../../../../src/api/hooks/auth.ts"],"mappings":";cAMa;cAqBA,uBAAe,oBAAA,OAAA;cAQf;cAaA;cAaA;cAUA;cAmBA;cAoBA;cAUA;cAUA;cAUA;cAUA;cAUA;cASA;cASA;cASA;cASA;cASA;cASA;cASA,uBAAe,oBAAA,OAAA;cAQf;cAQA;cAaA;cASA,2BAAmB,oBAAA,OAAA;cAQnB"}
@@ -7,7 +7,13 @@ type BrowserProps = {
7
7
  style?: CSSProperties;
8
8
  size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl';
9
9
  'aria-label'?: string;
10
- sandbox?: string;
10
+ /**
11
+ * Value of the iframe `sandbox` attribute. Pass `null` to omit the attribute
12
+ * entirely — required for same-origin embeds, where `allow-scripts` plus
13
+ * `allow-same-origin` sandboxes nothing (the frame can reach its parent and
14
+ * strip the attribute) and browsers warn about the combination.
15
+ */
16
+ sandbox?: string | null;
11
17
  ref?: RefObject<HTMLIFrameElement | null>;
12
18
  domainRestriction?: string;
13
19
  } & HTMLAttributes<HTMLIFrameElement>;
@@ -1 +1 @@
1
- {"version":3,"file":"Browser.d.ts","names":[],"sources":["../../../../src/components/Browser/Browser.tsx"],"mappings":";;KAsBY;EACV;EACA;EACA;EACA,QAAQ;EACR;EACA;EACA;EACA,MAAM,UAAU;EAChB;IACE,eAAe;cA2BN,YAAO,YAAA,MAAA,WAAA,OAAA,oBAAA,WAAA,SAAA,KAAA,sBAAA,SAWjB,iCAAY,IAAA"}
1
+ {"version":3,"file":"Browser.d.ts","names":[],"sources":["../../../../src/components/Browser/Browser.tsx"],"mappings":";;KAsBY;EACV;EACA;EACA;EACA,QAAQ;EACR;EACA;;;;;;;EAOA;EACA,MAAM,UAAU;EAChB;IACE,eAAe;cA2BN,YAAO,YAAA,MAAA,WAAA,OAAA,oBAAA,WAAA,SAAA,KAAA,sBAAA,SAWjB,iCAAY,IAAA"}
@@ -7,14 +7,20 @@ import { FC } from "react";
7
7
  */
8
8
  type CopyButtonProps = {
9
9
  /**
10
- * The text content to copy to the clipboard
10
+ * The text content to copy to the clipboard, or a resolver invoked when the
11
+ * button is pressed.
12
+ *
13
+ * The resolver form exists for content that is not worth keeping in memory —
14
+ * or shipping to the browser — until someone actually asks for it.
15
+ *
11
16
  * @example
12
17
  * ```tsx
13
18
  * <CopyButton content="Hello World!" />
19
+ * <CopyButton content={() => fetch(url).then((response) => response.text())} />
14
20
  * ```
15
21
  */
16
- content: string;
17
- } & Partial<ButtonProps>;
22
+ content: string | (() => string | Promise<string>);
23
+ } & Omit<Partial<ButtonProps>, 'content'>;
18
24
  /**
19
25
  * CopyButton - A specialized button component for copying text to the clipboard
20
26
  *
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","names":[],"sources":["../../../../src/components/CopyButton/index.tsx"],"mappings":";;;;;;;KAUK;;;;;;;;EAQH;IACE,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAuEC,YAAY,GAAG"}
1
+ {"version":3,"file":"index.d.ts","names":[],"sources":["../../../../src/components/CopyButton/index.tsx"],"mappings":";;;;;;;KAUK;;;;;;;;;;;;;;EAcH,kCAAkC;IAGhC,KAAK,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAuEJ,YAAY,GAAG"}
@@ -3,7 +3,6 @@ import { Dictionary } from "@intlayer/types/dictionary";
3
3
  //#region src/components/DictionaryFieldEditor/ContentEditor.d.ts
4
4
  type NodeEditorProps = {
5
5
  dictionary: Dictionary;
6
- isDarkMode?: boolean;
7
6
  };
8
7
  declare const ContentEditor: FC<NodeEditorProps>;
9
8
  //#endregion
@@ -1 +1 @@
1
- {"version":3,"file":"ContentEditor.d.ts","names":[],"sources":["../../../../src/components/DictionaryFieldEditor/ContentEditor.tsx"],"mappings":";;;KA4BK;EACH,YAAY;EACZ;;cAWW,eAAe,GAAG"}
1
+ {"version":3,"file":"ContentEditor.d.ts","names":[],"sources":["../../../../src/components/DictionaryFieldEditor/ContentEditor.tsx"],"mappings":";;;KA4BK;EACH,YAAY;;cAWD,eAAe,GAAG"}
@@ -7,7 +7,6 @@ type TextEditorProps = {
7
7
  dictionary: Dictionary;
8
8
  keyPath: KeyPath[];
9
9
  section: ContentNode;
10
- isDarkMode?: boolean;
11
10
  /**
12
11
  * Custom renderer for string leaves. Receives the leaf content and its full
13
12
  * key path so the renderer can write edits back to the right location.
@@ -1 +1 @@
1
- {"version":3,"file":"TextEditor.d.ts","names":[],"sources":["../../../../../src/components/DictionaryFieldEditor/ContentEditorView/TextEditor.tsx"],"mappings":";;;;cA6Fa;KA2ID;EACV,YAAY;EACZ,SAAS;EACT,SAAS;EACT;;;;;EAKA,iBAAiB,iBAAiB,SAAS,cAAc;EACzD,mBAAmB;;cAk1BR,4BAAU,qBAAA;cAyNV,qCAAmB,qBAAA"}
1
+ {"version":3,"file":"TextEditor.d.ts","names":[],"sources":["../../../../../src/components/DictionaryFieldEditor/ContentEditorView/TextEditor.tsx"],"mappings":";;;;cA6Fa;KA2ID;EACV,YAAY;EACZ,SAAS;EACT,SAAS;;;;;EAKT,iBAAiB,iBAAiB,SAAS,cAAc;EACzD,mBAAmB;;cA+0BR,4BAAU,qBAAA;cAuNV,qCAAmB,qBAAA"}
@@ -5,7 +5,6 @@ type DictionaryDetailsProps = {
5
5
  dictionary: Dictionary;
6
6
  mode: ('local' | 'remote')[];
7
7
  onSelectSibling?: (dictionary: Dictionary) => void;
8
- isDarkMode?: boolean;
9
8
  };
10
9
  declare const DictionaryDetailsForm: FC<DictionaryDetailsProps>;
11
10
  //#endregion
@@ -1 +1 @@
1
- {"version":3,"file":"DictionaryDetailsForm.d.ts","names":[],"sources":["../../../../../src/components/DictionaryFieldEditor/DictionaryDetails/DictionaryDetailsForm.tsx"],"mappings":";;;KAwCK;EACH,YAAY;EACZ;EACA,mBAAmB,YAAY;EAC/B;;cA2CW,uBAAuB,GAAG"}
1
+ {"version":3,"file":"DictionaryDetailsForm.d.ts","names":[],"sources":["../../../../../src/components/DictionaryFieldEditor/DictionaryDetails/DictionaryDetailsForm.tsx"],"mappings":";;;KAwCK;EACH,YAAY;EACZ;EACA,mBAAmB,YAAY;;cA2CpB,uBAAuB,GAAG"}
@@ -1 +1 @@
1
- {"version":3,"file":"ExpandCollapse.d.ts","names":[],"sources":["../../../../src/components/ExpandCollapse/ExpandCollapse.tsx"],"mappings":";;;;;KAgBY;;EAEV;;EAEA;;EAEA,UAAU;;EAEV;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAyDW,gBAAgB,GAAG"}
1
+ {"version":3,"file":"ExpandCollapse.d.ts","names":[],"sources":["../../../../src/components/ExpandCollapse/ExpandCollapse.tsx"],"mappings":";;;;;KAiBY;;EAEV;;EAEA;;EAEA,UAAU;;EAEV;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAyDW,gBAAgB,GAAG"}
@@ -4,11 +4,10 @@ import { HTMLRenderer as HTMLRenderer$1, RenderHTMLProps } from "react-intlayer/
4
4
  //#region src/components/HTMLRender/HTMLRender.d.ts
5
5
  type HTMLRendererProps = {
6
6
  children: string;
7
- isDarkMode?: boolean;
8
7
  locale?: LocalesValues;
9
8
  components?: ComponentProps<typeof HTMLRenderer$1>['components'];
10
9
  };
11
- declare const getIntlayerHTMLOptions: (isDarkMode: boolean) => RenderHTMLProps;
10
+ declare const getIntlayerHTMLOptions: () => RenderHTMLProps;
12
11
  /**
13
12
  * HTMLRenderer Component
14
13
  *
@@ -1 +1 @@
1
- {"version":3,"file":"HTMLRender.d.ts","names":[],"sources":["../../../../src/components/HTMLRender/HTMLRender.tsx"],"mappings":";;;;KAUK;EACH;EACA;EACA,SAAS;EACT,aAAa,sBAAsB;;cAGxB,yBAAyB,wBAAwB;;;;;;;cA2BjD,cAAc,GAAG"}
1
+ {"version":3,"file":"HTMLRender.d.ts","names":[],"sources":["../../../../src/components/HTMLRender/HTMLRender.tsx"],"mappings":";;;;KAUK;EACH;EACA,SAAS;EACT,aAAa,sBAAsB;;cAGxB,8BAA8B;;;;;;;cA0B9B,cAAc,GAAG"}
@@ -13,7 +13,12 @@ type CodeCompProps = {
13
13
  children: ReactNode;
14
14
  fileName?: string;
15
15
  language: CodeLanguage;
16
- isDarkMode?: boolean;
16
+ /**
17
+ * Markup for `children`, highlighted by Shiki ahead of time. When present the
18
+ * block paints straight from it and the highlighter is never downloaded —
19
+ * except when the reader switches the block to a non-TypeScript format.
20
+ */
21
+ highlightedHtml?: string;
17
22
  showHeader?: boolean;
18
23
  showLineNumbers?: boolean;
19
24
  isRollable?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"Code.d.ts","names":[],"sources":["../../../../src/components/IDE/Code.tsx"],"mappings":";;;;KAsBY;EACV;EACA,iBAAiB;;EAEjB,aAAa;EACb,2BAA2B;;KAGxB;EACH,UAAU;EACV;EACA,UAAU;EACV;EACA;EACA;EACA;IACE,qBACF,eAAe;cAwBJ,MAAM,GAAG"}
1
+ {"version":3,"file":"Code.d.ts","names":[],"sources":["../../../../src/components/IDE/Code.tsx"],"mappings":";;;;KAsBY;EACV;EACA,iBAAiB;;EAEjB,aAAa;EACb,2BAA2B;;KAGxB;EACH,UAAU;EACV;EACA,UAAU;;;;;;EAMV;EACA;EACA;EACA;IACE,qBACF,eAAe;cAwBJ,MAAM,GAAG"}
@@ -4,14 +4,30 @@ import { FC, HTMLAttributes, ReactNode } from "react";
4
4
  declare const CodeDefault: FC<{
5
5
  children: ReactNode;
6
6
  }>;
7
+ /** Wrapper styles shared by the pre-highlighted and the runtime Shiki output. */
8
+ declare const shikiWrapperClassName = "[&_pre.shiki]:!bg-transparent min-w-0 max-w-full overflow-auto bg-transparent [-ms-overflow-style:none] [scrollbar-width:none] [&::-webkit-scrollbar]:hidden [&_pre.shiki]:max-w-full [&_pre.shiki]:overflow-x-auto [&_pre::-webkit-scrollbar]:hidden [&_pre]:[-ms-overflow-style:none] [&_pre]:[scrollbar-width:none]";
9
+ /**
10
+ * Renders markup produced by Shiki ahead of time (at build/prerender).
11
+ *
12
+ * Both server and client render the exact same string, so hydration is a no-op
13
+ * and the Shiki engine — a ~600 KB WASM bundle plus one grammar per language —
14
+ * never reaches the browser.
15
+ */
16
+ declare const CodeHighlighted: FC<{
17
+ html: string;
18
+ }>;
7
19
  type CodeBlockProps = {
8
20
  children: React.ReactNode;
9
21
  lang: CodeLanguage;
10
- isDarkMode?: boolean;
22
+ /**
23
+ * Markup produced by Shiki ahead of time. When present the block renders it
24
+ * as-is and no highlighting runs in the browser.
25
+ */
26
+ highlightedHtml?: string;
11
27
  isEditable?: boolean;
12
28
  onChange?: (content: string) => void;
13
29
  } & Omit<HTMLAttributes<HTMLDivElement>, 'onChange'>;
14
30
  declare const CodeBlock: FC<CodeBlockProps>;
15
31
  //#endregion
16
- export { CodeBlock, CodeBlockProps, CodeDefault, type CodeLanguage };
32
+ export { CodeBlock, CodeBlockProps, CodeDefault, CodeHighlighted, type CodeLanguage, shikiWrapperClassName };
17
33
  //# sourceMappingURL=CodeBlockClient.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CodeBlockClient.d.ts","names":[],"sources":["../../../../src/components/IDE/CodeBlockClient.tsx"],"mappings":";;;cAYa,aAAa;EAAK,UAAU;;KA0B7B;EACV,UAAU,MAAM;EAChB,MAAM;EACN;EACA;EACA,YAAY;IACV,KAAK,eAAe;cAEX,WAAW,GAAG"}
1
+ {"version":3,"file":"CodeBlockClient.d.ts","names":[],"sources":["../../../../src/components/IDE/CodeBlockClient.tsx"],"mappings":";;;cAYa,aAAa;EAAK,UAAU;;;cAoB5B;;;;;;;;cAUA,iBAAiB;EAAK;;KAgBvB;EACV,UAAU,MAAM;EAChB,MAAM;;;;;EAKN;EACA;EACA,YAAY;IACV,KAAK,eAAe;cAEX,WAAW,GAAG"}
@@ -9,9 +9,10 @@ type Props = {
9
9
  originalLang: CodeLanguage;
10
10
  /** Currently selected format: 'typescript' | 'esm' | 'commonjs'. */
11
11
  targetFormat: Exclude<CodeFormat, 'json'>;
12
- isDarkMode?: boolean;
12
+ /** Markup for the TypeScript source, highlighted ahead of time. */
13
+ initialHtml?: string;
13
14
  };
14
- declare const CodeBlockHighlight: ({ children, originalLang, targetFormat, isDarkMode }: Props) => import("react").JSX.Element;
15
+ declare const CodeBlockHighlight: ({ children, originalLang, targetFormat, initialHtml }: Props) => import("react").JSX.Element;
15
16
  //#endregion
16
17
  export { CodeBlockHighlight };
17
18
  //# sourceMappingURL=CodeBlockHighlight.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CodeBlockHighlight.d.ts","names":[],"sources":["../../../../src/components/IDE/CodeBlockHighlight.tsx"],"mappings":";;;;KAcK;;EAEH,UAAU;;EAEV,cAAc;;EAEd,cAAc,QAAQ;EACtB;;cAGW,uBAAkB,UAAA,cAAA,cAAA,cAK5B,0BAAK,IAAA"}
1
+ {"version":3,"file":"CodeBlockHighlight.d.ts","names":[],"sources":["../../../../src/components/IDE/CodeBlockHighlight.tsx"],"mappings":";;;;KAiBK;;EAEH,UAAU;;EAEV,cAAc;;EAEd,cAAc,QAAQ;;EAEtB;;cAGW,uBAAkB,UAAA,cAAA,cAAA,eAK5B,0BAAK,IAAA"}
@@ -5,7 +5,6 @@ declare const CodeBlockShiki: FC<CodeBlockProps>;
5
5
  type CodeBlockProps = {
6
6
  children: string;
7
7
  lang: BundledLanguage;
8
- isDarkMode?: boolean;
9
8
  isEditable?: boolean;
10
9
  onChange?: (content: string) => void;
11
10
  } & Omit<HTMLAttributes<HTMLDivElement>, 'onChange'>;
@@ -1 +1 @@
1
- {"version":3,"file":"CodeBlockServer.d.ts","names":[],"sources":["../../../../src/components/IDE/CodeBlockServer.tsx"],"mappings":";;;cAiBa,gBA6BI,GAAG;KAwBR;EACV;EACA,MAAM;EACN;EACA;EACA,YAAY;IACV,KAAK,eAAe;cAEX,WAAW,GAAG"}
1
+ {"version":3,"file":"CodeBlockServer.d.ts","names":[],"sources":["../../../../src/components/IDE/CodeBlockServer.tsx"],"mappings":";;;cAkBa,gBA8BI,GAAG;KAuBR;EACV;EACA,MAAM;EACN;EACA,YAAY;IACV,KAAK,eAAe;cAEX,WAAW,GAAG"}
@@ -4,7 +4,6 @@ import { FC, ReactNode } from "react";
4
4
  type CodeBlockShikiProps = {
5
5
  children: ReactNode;
6
6
  lang: CodeLanguage;
7
- isDarkMode?: boolean;
8
7
  };
9
8
  declare const CodeBlockShiki: FC<CodeBlockShikiProps>;
10
9
  //#endregion
@@ -1 +1 @@
1
- {"version":3,"file":"CodeBlockShiki.d.ts","names":[],"sources":["../../../../src/components/IDE/CodeBlockShiki.tsx"],"mappings":";;;KA4HY;EACV,UAAU;EACV,MAAM;EACN;;cAGW,gBAAgB,GAAG"}
1
+ {"version":3,"file":"CodeBlockShiki.d.ts","names":[],"sources":["../../../../src/components/IDE/CodeBlockShiki.tsx"],"mappings":";;;KAuIY;EACV,UAAU;EACV,MAAM;;cAGK,gBAAgB,GAAG"}
@@ -6,7 +6,6 @@ type IDEProps = {
6
6
  content: string;
7
7
  isOpen?: boolean;
8
8
  }[];
9
- isDarkMode?: boolean;
10
9
  activeTab?: number;
11
10
  } & HTMLAttributes<HTMLDivElement>;
12
11
  declare const IDE: FC<IDEProps>;
@@ -1 +1 @@
1
- {"version":3,"file":"IDE.d.ts","names":[],"sources":["../../../../src/components/IDE/IDE.tsx"],"mappings":";;KASY;EACV;IACE;IACA;IACA;;EAEF;EACA;IACE,eAAe;cAEN,KAAK,GAAG"}
1
+ {"version":3,"file":"IDE.d.ts","names":[],"sources":["../../../../src/components/IDE/IDE.tsx"],"mappings":";;KASY;EACV;IACE;IACA;IACA;;EAEF;IACE,eAAe;cAEN,KAAK,GAAG"}
@@ -1,7 +1,6 @@
1
1
  import { FC } from "react";
2
2
  //#region src/components/IDE/MarkDownRender.d.ts
3
3
  type MarkdownRendererProps = {
4
- isDarkMode?: boolean;
5
4
  children: string;
6
5
  };
7
6
  declare const MarkdownRenderer: FC<MarkdownRendererProps>;
@@ -1 +1 @@
1
- {"version":3,"file":"MarkDownRender.d.ts","names":[],"sources":["../../../../src/components/IDE/MarkDownRender.tsx"],"mappings":";;KAKK;EACH;EACA;;cAGW,kBAAkB,GAAG"}
1
+ {"version":3,"file":"MarkDownRender.d.ts","names":[],"sources":["../../../../src/components/IDE/MarkDownRender.tsx"],"mappings":";;KAKK;EACH;;cAGW,kBAAkB,GAAG"}
@@ -1,6 +1,6 @@
1
1
  import { CodeLanguage } from "./shikiLanguages.js";
2
2
  import { Code, CodeCompAttributes } from "./Code.js";
3
- import { CodeBlock, CodeBlockProps, CodeDefault } from "./CodeBlockClient.js";
3
+ import { CodeBlock, CodeBlockProps, CodeDefault, CodeHighlighted, shikiWrapperClassName } from "./CodeBlockClient.js";
4
4
  import { FileList, FileListProps } from "./FileList.js";
5
5
  import { IDE, IDEProps } from "./IDE.js";
6
- export { Code, CodeBlock, CodeBlockProps, CodeCompAttributes, CodeDefault, type CodeLanguage, FileList, FileListProps, IDE, IDEProps };
6
+ export { Code, CodeBlock, CodeBlockProps, CodeCompAttributes, CodeDefault, CodeHighlighted, type CodeLanguage, FileList, FileListProps, IDE, IDEProps, shikiWrapperClassName };
@@ -0,0 +1,18 @@
1
+ //#region src/components/IDE/shikiThemes.d.ts
2
+ /**
3
+ * Themes every code block is highlighted with.
4
+ *
5
+ * Shiki is always asked for both, with `defaultColor: false`, so each token
6
+ * carries its light and dark colour as the `--shiki-light` / `--shiki-dark`
7
+ * custom properties rather than a resolved `color`. The markup is therefore
8
+ * theme-agnostic: it can be produced once — at build time — and never has to be
9
+ * recomputed in the browser when the resolved theme changes.
10
+ */
11
+ declare const SHIKI_THEMES: {
12
+ readonly light: 'github-light';
13
+ readonly dark: 'github-dark';
14
+ };
15
+ type ShikiThemes = typeof SHIKI_THEMES;
16
+ //#endregion
17
+ export { SHIKI_THEMES, ShikiThemes };
18
+ //# sourceMappingURL=shikiThemes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shikiThemes.d.ts","names":[],"sources":["../../../../src/components/IDE/shikiThemes.ts"],"mappings":";;;;;;;;;;cASa;WACX;WACA;;KAGU,qBAAqB"}
@@ -1 +1 @@
1
- {"version":3,"file":"MarkDownIframe.d.ts","names":[],"sources":["../../../../src/components/MarkDownRender/MarkDownIframe.tsx"],"mappings":";;cA0Ba,gBAAgB,GAAG"}
1
+ {"version":3,"file":"MarkDownIframe.d.ts","names":[],"sources":["../../../../src/components/MarkDownRender/MarkDownIframe.tsx"],"mappings":";;cAkLa,gBAAgB,GAAG"}
@@ -54,7 +54,6 @@ declare const baseMarkdownComponents: {
54
54
  };
55
55
  type MarkdownRendererProps = {
56
56
  children: string | ParsedMarkdown;
57
- isDarkMode?: boolean;
58
57
  locale?: LocalesValues;
59
58
  forceBlock?: boolean;
60
59
  preserveFrontmatter?: boolean;
@@ -62,7 +61,7 @@ type MarkdownRendererProps = {
62
61
  components?: ComponentProps<typeof MarkdownRenderer$1>['components'];
63
62
  wrapper?: ComponentProps<typeof MarkdownRenderer$1>['wrapper'];
64
63
  };
65
- declare const getIntlayerMarkdownOptions: (_isDarkMode?: boolean) => {
64
+ declare const getIntlayerMarkdownOptions: () => {
66
65
  components: {
67
66
  h1: typeof H1Renderer;
68
67
  h2: typeof H2Renderer;
@@ -1 +1 @@
1
- {"version":3,"file":"MarkDownRender.d.ts","names":[],"sources":["../../../../src/components/MarkDownRender/MarkDownRender.tsx"],"mappings":";;;;;;;;;;cAsBM,aAAU,OAAW,yCAAoB,IAAA;cAGzC,aAAU,OAAW,yCAAoB,IAAA;cAGzC,aAAU,OAAW,yCAAoB,IAAA;cAGzC,aAAU,OAAW,yCAAoB,IAAA;cAGzC,aAAU,OAAW,yCAAoB,IAAA;cAGzC,aAAU,OAAW,yCAAoB,IAAA;cAGzC,iBAAc,OAAW,6CAAwB,IAAA;cAgDjD,uBAAkB,cAAA,SAGrB,iDAA4B,IAAA;cAUzB,eAAU,cAAA,SAA6B,yCAAoB,IAAA;cAU3D,eAAU,cAAA,SAA6B,yCAAoB,IAAA;cAU3D,gBAAW,WAAA,KAAA,QAAA,SAKd,0CAAqB,IAAA;cA6BlB,cAAW,OAAW,0CAAqB,IAAA;cAC3C,gBAAa,OAAW,sBAAsB,gCAAW,IAAA;cAIzD,eAAY,OAAW,sBAAsB,yBAAI,IAAA;cAOjD,oBAAe,cAAA,SAGlB,oDAA+B,IAAA;cAG5B,mBAAc,cAAA,SAGjB,oDAA+B,IAAA;cAI5B,SAAM,OAAW,6CAAwB,IAAA;cAyClC;;;;;;;;;;;;;;;;;;;;;;;;;;;KAER;EACH,mBAAmB;EACnB;EACA,SAAS;EACT;EACA;EACA;EACA,aAAa,sBAAsB;EACnC,UAAU,sBAAsB;;cAGrB,6BAA0B;EACrC;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAGW,kBAAkB,GAAG"}
1
+ {"version":3,"file":"MarkDownRender.d.ts","names":[],"sources":["../../../../src/components/MarkDownRender/MarkDownRender.tsx"],"mappings":";;;;;;;;;;cAsBM,aAAU,OAAW,yCAAoB,IAAA;cAGzC,aAAU,OAAW,yCAAoB,IAAA;cAGzC,aAAU,OAAW,yCAAoB,IAAA;cAGzC,aAAU,OAAW,yCAAoB,IAAA;cAGzC,aAAU,OAAW,yCAAoB,IAAA;cAGzC,aAAU,OAAW,yCAAoB,IAAA;cAGzC,iBAAc,OAAW,6CAAwB,IAAA;cA0DjD,uBAAkB,cAAA,SAGrB,iDAA4B,IAAA;cAUzB,eAAU,cAAA,SAA6B,yCAAoB,IAAA;cAU3D,eAAU,cAAA,SAA6B,yCAAoB,IAAA;cAU3D,gBAAW,WAAA,KAAA,QAAA,SAKd,0CAAqB,IAAA;cA6BlB,cAAW,OAAW,0CAAqB,IAAA;cAC3C,gBAAa,OAAW,sBAAsB,gCAAW,IAAA;cAIzD,eAAY,OAAW,sBAAsB,yBAAI,IAAA;cAOjD,oBAAe,cAAA,SAGlB,oDAA+B,IAAA;cAG5B,mBAAc,cAAA,SAGjB,oDAA+B,IAAA;cAI5B,SAAM,OAAW,6CAAwB,IAAA;cAsClC;;;;;;;;;;;;;;;;;;;;;;;;;;;KAER;EACH,mBAAmB;EACnB,SAAS;EACT;EACA;EACA;EACA,aAAa,sBAAsB;EACnC,UAAU,sBAAsB;;cAGrB;EACX;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAGW,kBAAkB,GAAG"}
@@ -1 +1 @@
1
- {"version":3,"file":"GridDistortionPattern.d.ts","names":[],"sources":["../../../../src/components/Pattern/GridDistortionPattern.tsx"],"mappings":";;KA+MK;EACH;EACA;EACA;EACA;EACA;EACA;IACE,SAAS;cAEA,uBAAuB,GAAG"}
1
+ {"version":3,"file":"GridDistortionPattern.d.ts","names":[],"sources":["../../../../src/components/Pattern/GridDistortionPattern.tsx"],"mappings":";;KA8OK;EACH;EACA;EACA;EACA;EACA;EACA;IACE,SAAS;cAEA,uBAAuB,GAAG"}
@@ -1 +1 @@
1
- {"version":3,"file":"dynamic.d.ts","names":[],"sources":["../../../../src/components/Popover/dynamic.tsx"],"mappings":";;cA0La,SAAS"}
1
+ {"version":3,"file":"dynamic.d.ts","names":[],"sources":["../../../../src/components/Popover/dynamic.tsx"],"mappings":";;cA2Pa,SAAS"}
@@ -1,3 +1,3 @@
1
- import { Detail, DetailProps, PopoverProps, PopoverStatic, PopoverType, PopoverXAlign, PopoverYAlign } from "./static.js";
1
+ import { Detail, DetailProps, PopoverProps, PopoverStatic, PopoverType, PopoverXAlign, PopoverYAlign, usePopoverIds } from "./static.js";
2
2
  import { Popover } from "./dynamic.js";
3
- export { Detail, DetailProps, Popover, PopoverProps, PopoverStatic, PopoverType, PopoverXAlign, PopoverYAlign };
3
+ export { Detail, DetailProps, Popover, PopoverProps, PopoverStatic, PopoverType, PopoverXAlign, PopoverYAlign, usePopoverIds };
@@ -1,6 +1,11 @@
1
1
  import { Container } from "../Container/index.js";
2
2
  import { ComponentProps, DetailedHTMLProps, FC, HTMLAttributes } from "react";
3
3
  //#region src/components/Popover/static.d.ts
4
+ /** Ids of a popover pair, unique to the instance that rendered it. */
5
+ declare const usePopoverIds: (identifier: string) => {
6
+ triggerId: string;
7
+ panelId: string;
8
+ };
4
9
  /**
5
10
  * Props for the main Popover component
6
11
  * Extends HTMLDivElement attributes for full DOM compatibility
@@ -191,5 +196,5 @@ type DetailProps = ComponentProps<typeof Container> & {
191
196
  */
192
197
  declare const Detail: FC<DetailProps>;
193
198
  //#endregion
194
- export { Detail, DetailProps, PopoverProps, PopoverStatic, PopoverType, PopoverXAlign, PopoverYAlign };
199
+ export { Detail, DetailProps, PopoverProps, PopoverStatic, PopoverType, PopoverXAlign, PopoverYAlign, usePopoverIds };
195
200
  //# sourceMappingURL=static.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"static.d.ts","names":[],"sources":["../../../../src/components/Popover/static.tsx"],"mappings":";;;;;;;KAaY,eAAe,kBACzB,eAAe,iBACf;;EAGA;;;;;;KAOU,cAAc,GAAG;EAC3B,QAAQ,GAAG;;;;;KAMD;;;;KAKA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAmFC,eAAe;;;;;KAoBhB,cAAc,sBAAsB;;EAE9C;;EAEA;;EAEA;;EAEA;;EAEA,SAAS,mBAAmB;;EAE5B,SAAS,mBAAmB;;EAE5B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAkEI,QAAQ,GAAG"}
1
+ {"version":3,"file":"static.d.ts","names":[],"sources":["../../../../src/components/Popover/static.tsx"],"mappings":";;;;cAwBa,gBAAa;EAItB;EACA;;;;;;KAQQ,eAAe,kBACzB,eAAe,iBACf;;EAGA;;;;;;KAOU,cAAc,GAAG;EAC3B,QAAQ,GAAG;;;;;KAMD;;;;KAKA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAmFC,eAAe;;;;;KA2BhB,cAAc,sBAAsB;;EAE9C;;EAEA;;EAEA;;EAEA;;EAEA,SAAS,mBAAmB;;EAE5B,SAAS,mBAAmB;;EAE5B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAkEI,QAAQ,GAAG"}
@@ -13,8 +13,8 @@ type TabProps = HTMLAttributes<HTMLDivElement> & VariantProps<typeof tabContaine
13
13
  fullHeight?: boolean;
14
14
  };
15
15
  type TabItemProps = HTMLAttributes<HTMLDivElement> & {
16
- label: string;
17
- value: string;
16
+ label?: string;
17
+ value?: string;
18
18
  disabled?: boolean;
19
19
  children: ReactNode;
20
20
  };
@@ -1 +1 @@
1
- {"version":3,"file":"Tab.d.ts","names":[],"sources":["../../../../src/components/Tab/Tab.tsx"],"mappings":";;;cA0BM,sBAAmB;;;6CAevB;KAEU,WAAW,eAAe,kBACpC,oBAAoB;EAClB;EACA;EACA,UAAU;EACV;EACA;;KAGQ,eAAe,eAAe;EACxC;EACA;EACA;EACA,UAAU;;;;;;cAON;KAAmC,aAAA,SAAA,+BAAY,IAAA;;;;;;;;;;;;;;;;;;cAwB/C,iBAAY,YAAA,OAAA,SAAA,UAAA,WAAA,iBAAA,eAAA,SASf,6BAAQ,IAAA;cAwJE,YAAG;eAAA"}
1
+ {"version":3,"file":"Tab.d.ts","names":[],"sources":["../../../../src/components/Tab/Tab.tsx"],"mappings":";;;cAuCM,sBAAmB;;;6CAevB;KAEU,WAAW,eAAe,kBACpC,oBAAoB;EAClB;EACA;EACA,UAAU;EACV;EACA;;KAGQ,eAAe,eAAe;EACxC;EACA;EACA;EACA,UAAU;;;;;;cA2BN;KAAmC,aAAA,SAAA,+BAAY,IAAA;;;;;;;;;;;;;;;;;;cAwB/C,iBAAY,YAAA,OAAA,SAAA,UAAA,WAAA,iBAAA,eAAA,SASf,6BAAQ,IAAA;cAmKE,YAAG;eAAA"}
@@ -2,9 +2,9 @@ import { Modes } from "./types.js";
2
2
  import { FC } from "react";
3
3
  //#region src/components/ThemeSwitcherDropDown/DesktopThemeSwitcher.d.ts
4
4
  type DesktopThemeSwitcherProps = {
5
+ /** Preference currently persisted — `system` while following the OS. */
5
6
  theme: Modes;
6
7
  setTheme: (theme: Modes) => void;
7
- systemTheme: Modes;
8
8
  };
9
9
  declare const DesktopThemeSwitcher: FC<DesktopThemeSwitcherProps>;
10
10
  //#endregion
@@ -1 +1 @@
1
- {"version":3,"file":"DesktopThemeSwitcher.d.ts","names":[],"sources":["../../../../src/components/ThemeSwitcherDropDown/DesktopThemeSwitcher.tsx"],"mappings":";;;KAwBK;EACH,OAAO;EACP,WAAW,OAAO;EAClB,aAAa;;cAGF,sBAAsB,GAAG"}
1
+ {"version":3,"file":"DesktopThemeSwitcher.d.ts","names":[],"sources":["../../../../src/components/ThemeSwitcherDropDown/DesktopThemeSwitcher.tsx"],"mappings":";;;KAuBK;;EAEH,OAAO;EACP,WAAW,OAAO;;cAGP,sBAAsB,GAAG"}
@@ -2,8 +2,8 @@ import { Modes } from "./types.js";
2
2
  import { FC } from "react";
3
3
  //#region src/components/ThemeSwitcherDropDown/MobileThemeSwitcher.d.ts
4
4
  type MobileThemeSwitcherProps = {
5
+ /** Preference currently persisted — `system` while following the OS. */
5
6
  theme: Modes;
6
- systemTheme: Modes;
7
7
  setTheme: (theme: Modes) => void;
8
8
  };
9
9
  declare const MobileThemeSwitcher: FC<MobileThemeSwitcherProps>;
@@ -1 +1 @@
1
- {"version":3,"file":"MobileThemeSwitcher.d.ts","names":[],"sources":["../../../../src/components/ThemeSwitcherDropDown/MobileThemeSwitcher.tsx"],"mappings":";;;KAOK;EACH,OAAO;EACP,aAAa;EACb,WAAW,OAAO;;cAiBP,qBAAqB,GAAG"}
1
+ {"version":3,"file":"MobileThemeSwitcher.d.ts","names":[],"sources":["../../../../src/components/ThemeSwitcherDropDown/MobileThemeSwitcher.tsx"],"mappings":";;;KAOK;;EAEH,OAAO;EACP,WAAW,OAAO;;cAuBP,qBAAqB,GAAG"}
@@ -1,5 +1,7 @@
1
+ import { Theme } from "../../providers/ThemeProvider.js";
1
2
  //#region src/components/ThemeSwitcherDropDown/types.d.ts
2
- type Modes = 'dark' | 'light' | 'system';
3
+ /** Theme a switcher can select — kept as an alias for the provider's type. */
4
+ type Modes = Theme;
3
5
  //#endregion
4
6
  export { Modes };
5
7
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","names":[],"sources":["../../../../src/components/ThemeSwitcherDropDown/types.ts"],"mappings":";KAAY"}
1
+ {"version":3,"file":"types.d.ts","names":[],"sources":["../../../../src/components/ThemeSwitcherDropDown/types.ts"],"mappings":";;;KAGY,QAAQ"}
@@ -90,7 +90,7 @@ import { HeightResizer } from "./HeightResizer/index.js";
90
90
  import { HideShow, HideShowProps } from "./HideShow/index.js";
91
91
  import { CodeLanguage } from "./IDE/shikiLanguages.js";
92
92
  import { Code, CodeCompAttributes } from "./IDE/Code.js";
93
- import { CodeBlock, CodeBlockProps, CodeDefault } from "./IDE/CodeBlockClient.js";
93
+ import { CodeBlock, CodeBlockProps, CodeDefault, CodeHighlighted, shikiWrapperClassName } from "./IDE/CodeBlockClient.js";
94
94
  import { FileList, FileListProps } from "./IDE/FileList.js";
95
95
  import { IDE, IDEProps } from "./IDE/IDE.js";
96
96
  import "./IDE/index.js";
@@ -136,7 +136,7 @@ import { GridDistortionPattern } from "./Pattern/GridDistortionPattern.js";
136
136
  import { GridPattern } from "./Pattern/GridPattern.js";
137
137
  import { Spotlight } from "./Pattern/SpotLight.js";
138
138
  import "./Pattern/index.js";
139
- import { Detail, DetailProps, PopoverProps, PopoverStatic, PopoverType, PopoverXAlign, PopoverYAlign } from "./Popover/static.js";
139
+ import { Detail, DetailProps, PopoverProps, PopoverStatic, PopoverType, PopoverXAlign, PopoverYAlign, usePopoverIds } from "./Popover/static.js";
140
140
  import { Popover } from "./Popover/dynamic.js";
141
141
  import "./Popover/index.js";
142
142
  import { PressableSpan } from "./PressableSpan/PressableSpan.js";
@@ -182,4 +182,4 @@ import { reducer, toast, useToast } from "./Toaster/useToast.js";
182
182
  import "./Toaster/index.js";
183
183
  import { WithResizer } from "./WithResizer/index.js";
184
184
  import { MarkdownRenderer, ParsedMarkdown, baseMarkdownComponents, getIntlayerMarkdownOptions } from "./MarkDownRender/MarkDownRender.js";
185
- export { Accordion, AccordionProps, AutoCompleteTextarea, AutoSizedTextArea, AutoSizedTextAreaProps, AutocompleteTextAreaProps, Avatar, AvatarProps, Badge, BadgeColor, BadgeProps, BadgeSize, BadgeVariant, BadgeVariantProps, BitbucketLogo, Breadcrumb, BreadcrumbLink, BreadcrumbProps, Browser, BrowserProps, Burger, Button, ButtonColor, ButtonProps, ButtonSize, ButtonTextAlign, ButtonVariant, Carousel, Checkbox, CheckboxColor, CheckboxProps, CheckboxSize, ClickOutsideDiv, ClickOutsideDivProps, Code, CodeBlock, CodeBlockProps, CodeCompAttributes, CodeDefault, type CodeLanguage, CollapsibleTable, CollapsibleTableProps, Command, CommandRoot, Container, ContainerBackground, ContainerBorderColor, ContainerGap, ContainerPadding, ContainerProps, ContainerRoundedSize, ContainerSeparator, ContainerTransparency, ContentEditableTextArea, ContentEditableTextAreaHandle, ContentEditableTextAreaProps, ContentEditorInput, ContentEditorInputProps, ContentEditorProps, ContentEditorTextArea, ContentEditorTextAreaProps, ContentSelector, CopyButton, CopyToClipboard, CopyToClipboardProps, type CreateEditorUploadFnOptions, DesktopNavbar, DesktopThemeSwitcher, Detail, DetailProps, DictionaryCreationForm, DictionaryEditor, DictionaryFieldEditor, DiscordLogo, DotPattern, DropDown, DropDownAlign, DropDownProps, DropDownType, DropDownYAlign, EditableFieldInput, EditableFieldTextArea, ExpandCollapse, ExpandCollapseProps, FacebookLogo, FileList, FileListProps, Flag, flags_d_exports as Flags, Footer, FooterLink, Form, AutoSizedTextAreaElement as FormAutoSizedTextArea, Button as FormButton, CheckboxElement as FormCheckbox, FormControl, FormDescription, EditableFieldInputElement as FormEditableFieldInput, EditableFieldTextAreaElement as FormEditableFieldTextArea, FormElement, FormField, InputElement as FormInput, InputPasswordElement as FormInputPassword, FormItem, FormLabelLayout as FormLabel, FormMessage, MultiSelectElement as FormMultiSelect, OTPElement as FormOTP, SearchInputElement as FormSearchInput, SelectElement as FormSelect, SwitchSelectorElement as FormSwitchSelector, TextAreaElement as FormTextArea, GitHubLogo, GitLabLogo, GoogleLogo, GridDistortionPattern, GridPattern, H1, H2, H3, H4, H5, H6, HTMLRenderer, HeadingProps, HeightResizer, HideShow, HideShowProps, Hr, IDE, IDEProps, InformationTag, Input, InputIndicator, InputOTP, InputOTPGroup, InputOTPSeparator, InputOTPSlot, InputPassword, InputProps, InputSize, InputVariant, InstagramLogo, KeyList, KeyPathBreadcrumb, KeyboardScreenAdapter, KeyboardShortcut, KeyboardShortcutProps, KeyboardShortcutType, Label, LabelProps, LanguageBackground, LanguageSection, Link, LinkColor, LinkGroup, LinkProps, LinkRoundedSize, LinkSize, LinkUnderlined, LinkVariant, LinkedInLogo, Loader, LoaderProps, LocaleSwitcher, LocaleSwitcherContent, LocaleSwitcherContentProps, LocaleSwitcherContentProvider, LocaleSwitcherProps, Logo, LogoTextOnly, LogoWithText, LogoWithTextBelow, MarkDownIframe, MarkdownEditor, type MarkdownEditorProps, MarkdownRenderer, MaxHeightSmoother, MaxWidthSmoother, MobileNavbar, MobileThemeSwitcher, Modal, ModalSize, Modes, MultiSelect, Navbar, NumberItemsSelector, NumberItemsSelectorProps, OTPInput, OTPInputContext, OTPInputProps, Pagination, PaginationProps, PaginationSize, PaginationVariant, PanelProps, type ParsedMarkdown, Popover, PopoverProps, PopoverStatic, PopoverType, PopoverXAlign, PopoverYAlign, PressableSpan, ProductHuntLogo, Radio, RadioColor, RadioProps, RadioSize, RenderProps, RightDrawer, SaveForm, SearchInput, Select, SelectContent, SelectContentPosition, SelectLabel, SelectSeparator, ShowingResultsNumberItems, ShowingResultsNumberItemsProps, SlotProps, SmartTable, SocialNetworks, Spotlight, Step, Steps, SwitchSelector, SwitchSelectorBaseProps, SwitchSelectorChoice, SwitchSelectorChoices, SwitchSelectorColor, SwitchSelectorProps, SwitchSelectorSize, Tab, TabItemProps, TabProps, TabSelector, TabSelectorColor, TabSelectorItemProps, TabSelectorProps, Table, TableProps, Tag, TagBackground, TagBorder, TagColor, TagRoundedSize, TagSize, Td, TechLogo, type TechLogoName, techLogos_d_exports as TechLogos, Terminal, TerminalProps, TextArea, TextAreaProps, TextEditor, TextEditorContainer, TextEditorProps, Th, TiktokLogo, Toast, ToastAction, ToastActionElement, ToastClose, ToastDescription, ToastProps, ToastProvider, ToastTitle, ToastViewport, Toaster, Tr, TriggerProps, type UploadImageFn, VersionSwitcher, VersionSwitcherProps, VersionSwitcherProvider, VerticalSwitchSelector, VerticalSwitchSelectorProps, WithResizer, XLogo, YoutubeLogo, badgeVariants, baseMarkdownComponents, buttonVariants, checkIsExternalLink, checkboxVariants, choiceVariant, containerVariants, createEditorUploadFn, defaultChoices, drawerManager, getCapitals, getIntlayerHTMLOptions, getIntlayerMarkdownOptions, indicatorVariant, inputSlotVariants, inputVariants, isTextChildren, linkVariants, paginationVariants, radioVariants, reducer, switchSelectorVariant, toast, toastVariants, traceKeys, useContentEditable, useCopyToClipboard, useForm, useFormField, useLocaleSwitcherContent, usePasswordManagerBadge, usePrevious, useRightDrawer, useToast, useVersionSwitcher };
185
+ export { Accordion, AccordionProps, AutoCompleteTextarea, AutoSizedTextArea, AutoSizedTextAreaProps, AutocompleteTextAreaProps, Avatar, AvatarProps, Badge, BadgeColor, BadgeProps, BadgeSize, BadgeVariant, BadgeVariantProps, BitbucketLogo, Breadcrumb, BreadcrumbLink, BreadcrumbProps, Browser, BrowserProps, Burger, Button, ButtonColor, ButtonProps, ButtonSize, ButtonTextAlign, ButtonVariant, Carousel, Checkbox, CheckboxColor, CheckboxProps, CheckboxSize, ClickOutsideDiv, ClickOutsideDivProps, Code, CodeBlock, CodeBlockProps, CodeCompAttributes, CodeDefault, CodeHighlighted, type CodeLanguage, CollapsibleTable, CollapsibleTableProps, Command, CommandRoot, Container, ContainerBackground, ContainerBorderColor, ContainerGap, ContainerPadding, ContainerProps, ContainerRoundedSize, ContainerSeparator, ContainerTransparency, ContentEditableTextArea, ContentEditableTextAreaHandle, ContentEditableTextAreaProps, ContentEditorInput, ContentEditorInputProps, ContentEditorProps, ContentEditorTextArea, ContentEditorTextAreaProps, ContentSelector, CopyButton, CopyToClipboard, CopyToClipboardProps, type CreateEditorUploadFnOptions, DesktopNavbar, DesktopThemeSwitcher, Detail, DetailProps, DictionaryCreationForm, DictionaryEditor, DictionaryFieldEditor, DiscordLogo, DotPattern, DropDown, DropDownAlign, DropDownProps, DropDownType, DropDownYAlign, EditableFieldInput, EditableFieldTextArea, ExpandCollapse, ExpandCollapseProps, FacebookLogo, FileList, FileListProps, Flag, flags_d_exports as Flags, Footer, FooterLink, Form, AutoSizedTextAreaElement as FormAutoSizedTextArea, Button as FormButton, CheckboxElement as FormCheckbox, FormControl, FormDescription, EditableFieldInputElement as FormEditableFieldInput, EditableFieldTextAreaElement as FormEditableFieldTextArea, FormElement, FormField, InputElement as FormInput, InputPasswordElement as FormInputPassword, FormItem, FormLabelLayout as FormLabel, FormMessage, MultiSelectElement as FormMultiSelect, OTPElement as FormOTP, SearchInputElement as FormSearchInput, SelectElement as FormSelect, SwitchSelectorElement as FormSwitchSelector, TextAreaElement as FormTextArea, GitHubLogo, GitLabLogo, GoogleLogo, GridDistortionPattern, GridPattern, H1, H2, H3, H4, H5, H6, HTMLRenderer, HeadingProps, HeightResizer, HideShow, HideShowProps, Hr, IDE, IDEProps, InformationTag, Input, InputIndicator, InputOTP, InputOTPGroup, InputOTPSeparator, InputOTPSlot, InputPassword, InputProps, InputSize, InputVariant, InstagramLogo, KeyList, KeyPathBreadcrumb, KeyboardScreenAdapter, KeyboardShortcut, KeyboardShortcutProps, KeyboardShortcutType, Label, LabelProps, LanguageBackground, LanguageSection, Link, LinkColor, LinkGroup, LinkProps, LinkRoundedSize, LinkSize, LinkUnderlined, LinkVariant, LinkedInLogo, Loader, LoaderProps, LocaleSwitcher, LocaleSwitcherContent, LocaleSwitcherContentProps, LocaleSwitcherContentProvider, LocaleSwitcherProps, Logo, LogoTextOnly, LogoWithText, LogoWithTextBelow, MarkDownIframe, MarkdownEditor, type MarkdownEditorProps, MarkdownRenderer, MaxHeightSmoother, MaxWidthSmoother, MobileNavbar, MobileThemeSwitcher, Modal, ModalSize, Modes, MultiSelect, Navbar, NumberItemsSelector, NumberItemsSelectorProps, OTPInput, OTPInputContext, OTPInputProps, Pagination, PaginationProps, PaginationSize, PaginationVariant, PanelProps, type ParsedMarkdown, Popover, PopoverProps, PopoverStatic, PopoverType, PopoverXAlign, PopoverYAlign, PressableSpan, ProductHuntLogo, Radio, RadioColor, RadioProps, RadioSize, RenderProps, RightDrawer, SaveForm, SearchInput, Select, SelectContent, SelectContentPosition, SelectLabel, SelectSeparator, ShowingResultsNumberItems, ShowingResultsNumberItemsProps, SlotProps, SmartTable, SocialNetworks, Spotlight, Step, Steps, SwitchSelector, SwitchSelectorBaseProps, SwitchSelectorChoice, SwitchSelectorChoices, SwitchSelectorColor, SwitchSelectorProps, SwitchSelectorSize, Tab, TabItemProps, TabProps, TabSelector, TabSelectorColor, TabSelectorItemProps, TabSelectorProps, Table, TableProps, Tag, TagBackground, TagBorder, TagColor, TagRoundedSize, TagSize, Td, TechLogo, type TechLogoName, techLogos_d_exports as TechLogos, Terminal, TerminalProps, TextArea, TextAreaProps, TextEditor, TextEditorContainer, TextEditorProps, Th, TiktokLogo, Toast, ToastAction, ToastActionElement, ToastClose, ToastDescription, ToastProps, ToastProvider, ToastTitle, ToastViewport, Toaster, Tr, TriggerProps, type UploadImageFn, VersionSwitcher, VersionSwitcherProps, VersionSwitcherProvider, VerticalSwitchSelector, VerticalSwitchSelectorProps, WithResizer, XLogo, YoutubeLogo, badgeVariants, baseMarkdownComponents, buttonVariants, checkIsExternalLink, checkboxVariants, choiceVariant, containerVariants, createEditorUploadFn, defaultChoices, drawerManager, getCapitals, getIntlayerHTMLOptions, getIntlayerMarkdownOptions, indicatorVariant, inputSlotVariants, inputVariants, isTextChildren, linkVariants, paginationVariants, radioVariants, reducer, shikiWrapperClassName, switchSelectorVariant, toast, toastVariants, traceKeys, useContentEditable, useCopyToClipboard, useForm, useFormField, useLocaleSwitcherContent, usePasswordManagerBadge, usePopoverIds, usePrevious, useRightDrawer, useToast, useVersionSwitcher };
@@ -3,7 +3,6 @@ import { SizeType, calculateIsMobile, checkIsIOS, checkIsIphoneOrSafariDevice, c
3
3
  import { useGetElementById } from "./useGetElementById.js";
4
4
  import { useGetElementOrWindow } from "./useGetElementOrWindow.js";
5
5
  import { HorizontalSwipeConfig, HorizontalSwipeHook, useHorizontalSwipe } from "./useHorizontalSwipe.js";
6
- import { useIsDarkMode } from "./useIsDarkMode.js";
7
6
  import { useIsMounted } from "./useIsMounted.js";
8
7
  import { useKeyboardDetector } from "./useKeyboardDetector.js";
9
8
  import { usePersistedStore } from "./usePersistedStore.js";
@@ -12,4 +11,5 @@ import { useScrollBlockage } from "./useScrollBlockage/index.js";
12
11
  import { useScrollDetection } from "./useScrollDetection.js";
13
12
  import { useScrollY } from "./useScrollY.js";
14
13
  import { useSearch } from "./useSearch.js";
15
- export { HorizontalSwipeConfig, HorizontalSwipeHook, ItemSelectorOrientation, SizeType, calculateIsMobile, checkIsIOS, checkIsIphoneOrSafariDevice, checkIsMac, checkIsMobileScreen, checkIsMobileUserAgent, getBreakpointFromSize, useDevice, useGetElementById, useGetElementOrWindow, useHorizontalSwipe, useIsDarkMode, useIsMounted, useItemSelector, useKeyboardDetector, usePersistedStore, useScreenWidth, useScrollBlockage, useScrollDetection, useScrollY, useSearch };
14
+ import { StickToBottomRefs, useStickToBottom } from "./useStickToBottom.js";
15
+ export { HorizontalSwipeConfig, HorizontalSwipeHook, ItemSelectorOrientation, SizeType, StickToBottomRefs, calculateIsMobile, checkIsIOS, checkIsIphoneOrSafariDevice, checkIsMac, checkIsMobileScreen, checkIsMobileUserAgent, getBreakpointFromSize, useDevice, useGetElementById, useGetElementOrWindow, useHorizontalSwipe, useIsMounted, useItemSelector, useKeyboardDetector, usePersistedStore, useScreenWidth, useScrollBlockage, useScrollDetection, useScrollY, useSearch, useStickToBottom };
@@ -19,7 +19,9 @@ type Options = {
19
19
  };
20
20
  declare const useItemSelector: (optionsRefs: RefObject<HTMLElement[]>, { selector, isHoverable, orientation }?: Options) => {
21
21
  choiceIndicatorPosition: StyleState;
22
+ /** Measures immediately. Prefer `scheduleMeasurement`, which does not force a reflow. */
22
23
  calculatePosition: () => void;
24
+ scheduleMeasurement: () => void;
23
25
  orientation: ItemSelectorOrientation;
24
26
  };
25
27
  //#endregion
@@ -1 +1 @@
1
- {"version":3,"file":"useItemSelector.d.ts","names":[],"sources":["../../../src/hooks/useItemSelector.ts"],"mappings":";;KAIY;KAEP;EACH;EACA;EACA;;KAGG;EACH;EACA;EACA;;KAGG,aAAa,uBAAuB;KAKpC;EACH,YAAY,QAAQ,aAAa;EACjC;EACA,cAAc;;cAGH,kBAAe,aACb,UAAU,kBAAc,UAAA,aAAA,gBAKlC"}
1
+ {"version":3,"file":"useItemSelector.d.ts","names":[],"sources":["../../../src/hooks/useItemSelector.ts"],"mappings":";;KAWY;KAEP;EACH;EACA;EACA;;KAGG;EACH;EACA;EACA;;KAGG,aAAa,uBAAuB;KAWpC;EACH,YAAY,QAAQ,aAAa;EACjC;EACA,cAAc;;cAGH,kBAAe,aACb,UAAU,kBAAc,UAAA,aAAA,gBAKlC"}