@apple-pie/slice 0.1.21 → 0.1.23

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 (174) hide show
  1. package/README.md +25 -1
  2. package/dist/cjs/chunks/AudioBubble-v4xKclI8.js +54 -0
  3. package/dist/cjs/chunks/{Button-DXvjvGtY.js → Button-DmWbooXb.js} +1 -1
  4. package/dist/cjs/chunks/{ButtonBar-BZ6sme27.js → ButtonBar-RSBwFaU-.js} +1 -1
  5. package/dist/cjs/chunks/{Camera-rVC4KI4v.js → Camera-CLm3aQR8.js} +6 -2
  6. package/dist/cjs/chunks/{CheckBox-DQRLqTAK.js → CheckBox-DDINn56u.js} +1 -1
  7. package/dist/cjs/chunks/{Chip-Pv9-KTnh.js → Chip-DRSg6kLh.js} +1 -1
  8. package/dist/cjs/chunks/{DrggablePanel-CkhCXqKv.js → DrggablePanel-CERavfv3.js} +6 -2
  9. package/dist/cjs/chunks/{DropDown-C3AZ5b_b.js → DropDown-CJH-Y6Z5.js} +1 -1
  10. package/dist/cjs/chunks/{ErrorSummary-BTgAd3sK.js → ErrorSummary-BfVHS893.js} +6 -2
  11. package/dist/cjs/chunks/{FileIcon-CZLe2S2l.js → FileIcon-xoD-xIme.js} +2 -2
  12. package/dist/cjs/chunks/{FileList-BHwBIics.js → FileList-DjTXjXnK.js} +1 -1
  13. package/dist/cjs/chunks/{Grouper-D4yyHHkM.js → Grouper-RYRxazG9.js} +1 -1
  14. package/dist/cjs/chunks/{Icon-D1EB8S5r.js → Icon-BB-t50Yt.js} +6 -2
  15. package/dist/cjs/chunks/{IconButton-B07Ttxbr.js → IconButton-BUw3YUsI.js} +1 -1
  16. package/dist/cjs/chunks/{Label-CTzvGcds.js → Label-NzMpkZo2.js} +1 -1
  17. package/dist/cjs/chunks/MdStreamBuffer-DObxjnAm.js +381 -0
  18. package/dist/cjs/chunks/{ProgressIndicator-BGqIwycX.js → ProgressIndicator-8QZwTSyY.js} +9 -4
  19. package/dist/cjs/chunks/{PromptInput-z6TuhHsG.js → PromptInput-D1wP5-uN.js} +2 -2
  20. package/dist/cjs/chunks/{RadioButton-DuIsM4lu.js → RadioButton-Cvqum7dU.js} +1 -1
  21. package/dist/cjs/chunks/{RadioButtonList-bu11ILyw.js → RadioButtonList-CPHTioGa.js} +1 -1
  22. package/dist/cjs/chunks/{TabBar-Bcq_n4Mk.js → TabBar-CnD3E-qa.js} +1 -1
  23. package/dist/cjs/chunks/{TextArea-BSKbDOEt.js → TextArea-rWqDDui3.js} +6 -6
  24. package/dist/cjs/chunks/{TextField-BNacOZVx.js → TextField-C6U-qhDt.js} +20 -22
  25. package/dist/cjs/chunks/{Toast-CZzAWG0S.js → Toast-D2fpwdjF.js} +6 -2
  26. package/dist/cjs/chunks/{UploadArea-CKuE4rtg.js → UploadArea-BS2BPuhZ.js} +1 -1
  27. package/dist/cjs/chunks/audioVisualizer-EIfIjWH7.js +60 -0
  28. package/dist/cjs/components/AudioBubble/index.js +10 -0
  29. package/dist/cjs/components/Button/index.js +4 -4
  30. package/dist/cjs/components/ButtonBar/index.js +2 -2
  31. package/dist/cjs/components/Camera/index.js +4 -4
  32. package/dist/cjs/components/CheckBox/index.js +2 -2
  33. package/dist/cjs/components/Chip/index.js +2 -2
  34. package/dist/cjs/components/DraggablePanel/index.js +3 -3
  35. package/dist/cjs/components/DropDown/index.js +2 -2
  36. package/dist/cjs/components/ErrorSummary/index.js +2 -2
  37. package/dist/cjs/components/FileIcon/index.js +3 -4
  38. package/dist/cjs/components/FileList/index.js +4 -4
  39. package/dist/cjs/components/Grouper/index.js +2 -2
  40. package/dist/cjs/components/Icon/index.js +3 -3
  41. package/dist/cjs/components/IconButton/index.js +4 -4
  42. package/dist/cjs/components/Label/index.js +1 -1
  43. package/dist/cjs/components/Progress/index.js +5 -5
  44. package/dist/cjs/components/PromptInput/index.js +7 -7
  45. package/dist/cjs/components/RadioButton/index.js +2 -2
  46. package/dist/cjs/components/RadioButtonList/index.js +3 -3
  47. package/dist/cjs/components/TabBar/index.js +3 -3
  48. package/dist/cjs/components/TextArea/index.js +4 -4
  49. package/dist/cjs/components/Textfield/index.js +5 -5
  50. package/dist/cjs/components/Toast/index.js +2 -2
  51. package/dist/cjs/components/UploadArea/index.js +5 -5
  52. package/dist/cjs/hooks/useAudioRecorder.js +70 -0
  53. package/dist/cjs/hooks/useMdStreamBuffer.js +41 -0
  54. package/dist/cjs/hooks/useMicrophone.js +132 -0
  55. package/dist/cjs/hooks.js +4 -2
  56. package/dist/cjs/index.js +7 -4
  57. package/dist/cjs/utils/index.js +2 -1
  58. package/dist/cjs/utils/objects/index.js +2 -1
  59. package/dist/esm/chunks/AudioBubble-Dvsrq1dZ.mjs +62 -0
  60. package/dist/esm/chunks/{Avatar-CSLVUF_y.mjs → Avatar-C8uV7ROZ.mjs} +2 -2
  61. package/dist/esm/chunks/{AvatarGroup--ELW-bO1.mjs → AvatarGroup-Bt1Lkn5S.mjs} +2 -2
  62. package/dist/esm/chunks/{Badge-DyICxZP2.mjs → Badge-D-U1jomY.mjs} +1 -1
  63. package/dist/esm/chunks/{Button-daLv0i7S.mjs → Button-sEYjFcR2.mjs} +5 -5
  64. package/dist/esm/chunks/{ButtonBar-DXK8meQq.mjs → ButtonBar-DSR2lhhN.mjs} +3 -3
  65. package/dist/esm/chunks/{Camera-BqmVsVKy.mjs → Camera-DSSiOeJd.mjs} +6 -6
  66. package/dist/esm/chunks/{CheckBox-BsaYFNC6.mjs → CheckBox-B6zWSySW.mjs} +3 -3
  67. package/dist/esm/chunks/{Chip-BRZeD1OX.mjs → Chip-BBKJ6wG4.mjs} +3 -3
  68. package/dist/esm/chunks/{DivInput-DeSpC8Wm.mjs → DivInput-cIMIH07H.mjs} +2 -2
  69. package/dist/esm/chunks/{Dot-CLGwQu-i.mjs → Dot-Cj6gWj4_.mjs} +1 -1
  70. package/dist/esm/chunks/{DrggablePanel-Ddi0vPRp.mjs → DrggablePanel-CQcIbxpX.mjs} +3 -3
  71. package/dist/esm/chunks/{DropDown-DOJvg96J.mjs → DropDown-B98ZoY1x.mjs} +3 -3
  72. package/dist/esm/chunks/{ErrorSummary-CHLkvdHk.mjs → ErrorSummary-Mz9siVxm.mjs} +3 -3
  73. package/dist/esm/chunks/{FileIcon-ePouoJpT.mjs → FileIcon-DeW-ZBiv.mjs} +3 -3
  74. package/dist/esm/chunks/{FileList-5LElsgoE.mjs → FileList-0Dzx15hl.mjs} +5 -5
  75. package/dist/esm/chunks/{Grouper-DR14qDXP.mjs → Grouper-B04WxD6K.mjs} +3 -3
  76. package/dist/esm/chunks/{Icon-CUSQtytG.mjs → Icon-KDwlMXzH.mjs} +3 -3
  77. package/dist/esm/chunks/{IconButton-DG69Vlhj.mjs → IconButton-oAB8ZFTf.mjs} +4 -4
  78. package/dist/esm/chunks/{IndexedDB-CJgzPHPB.mjs → IndexedDB-Dk7a4fPS.mjs} +1 -1
  79. package/dist/esm/chunks/{Label-CRsE7o3D.mjs → Label-BD7VlTDw.mjs} +3 -3
  80. package/dist/esm/chunks/MdStreamBuffer-DNXE4XbN.mjs +381 -0
  81. package/dist/esm/chunks/{Overlay-TOzZXnwF.mjs → Overlay-3KkyDm1f.mjs} +1 -1
  82. package/dist/esm/chunks/{Pager-BYT7_mCb.mjs → Pager-DmiwYLl5.mjs} +2 -2
  83. package/dist/esm/chunks/{ProgressIndicator-D7paCpgY.mjs → ProgressIndicator-CxsZm_As.mjs} +6 -5
  84. package/dist/esm/chunks/{PromptInput-CpxUcInZ.mjs → PromptInput-D4Q-DWjz.mjs} +4 -2
  85. package/dist/esm/chunks/{RadioButton-B5ZF5oJ_.mjs → RadioButton-B0jvM5VW.mjs} +3 -3
  86. package/dist/esm/chunks/{RadioButtonList-D9ZAZgkK.mjs → RadioButtonList-DBRAv87_.mjs} +3 -3
  87. package/dist/esm/chunks/{Slider-DL2iuNlh.mjs → Slider-CONGTXUE.mjs} +2 -2
  88. package/dist/esm/chunks/{Spacer-BlgEdKEM.mjs → Spacer-C5fcJYq-.mjs} +1 -1
  89. package/dist/esm/chunks/{Switch-BhCOo5Lu.mjs → Switch-CyoaJwSX.mjs} +1 -1
  90. package/dist/esm/chunks/{TabBar-BK7OcjPl.mjs → TabBar-DmO1ixBz.mjs} +4 -4
  91. package/dist/esm/chunks/{TextArea-BmsEj6IA.mjs → TextArea-Bd_obSSH.mjs} +7 -7
  92. package/dist/esm/chunks/{TextField-DWPpevsj.mjs → TextField-CZnUNhFe.mjs} +20 -26
  93. package/dist/esm/chunks/{Tip-BnKB9qMi.mjs → Tip-DrQvxDsH.mjs} +2 -2
  94. package/dist/esm/chunks/{Toast-DPHLwDES.mjs → Toast-C5XSDgno.mjs} +4 -4
  95. package/dist/esm/chunks/{UploadArea-DPiOaNpc.mjs → UploadArea-Gpq-MhqB.mjs} +4 -4
  96. package/dist/esm/chunks/{WSConnection-D9mpsVdc.mjs → WSConnection-DV7k84B4.mjs} +1 -1
  97. package/dist/esm/chunks/{_types-CPrEyJX9.mjs → _types-DOQAaLqq.mjs} +1 -1
  98. package/dist/esm/chunks/audioVisualizer-ZgT77nUw.mjs +60 -0
  99. package/dist/esm/chunks/{localDBStore-B4jkR5Jx.mjs → localDBStore-Dnpo5nSv.mjs} +2 -2
  100. package/dist/esm/chunks/{misc-N8KLjOXc.mjs → misc-BeEWwOaJ.mjs} +1 -1
  101. package/dist/esm/chunks/{sseStore-2JIpEKfz.mjs → sseStore-DjrfpNAS.mjs} +1 -1
  102. package/dist/esm/chunks/{tslib.es6-c-7TIv71.mjs → tslib.es6-C-olHjXV.mjs} +1 -1
  103. package/dist/esm/chunks/{uploads-worker-Dv-4zGnC.mjs → uploads-worker-7X9EwX9N.mjs} +1 -1
  104. package/dist/esm/chunks/{uploadsStore-D69fEXMY.mjs → uploadsStore-B7VECR5Q.mjs} +1 -1
  105. package/dist/esm/chunks/{windowStore-BOTh1g37.mjs → windowStore-CAzx2-QV.mjs} +1 -1
  106. package/dist/esm/components/AudioBubble/index.mjs +31 -0
  107. package/dist/esm/components/Avatar/index.mjs +3 -3
  108. package/dist/esm/components/AvatarGroup/index.mjs +4 -4
  109. package/dist/esm/components/Badge/index.mjs +2 -2
  110. package/dist/esm/components/Button/index.mjs +8 -8
  111. package/dist/esm/components/ButtonBar/index.mjs +4 -4
  112. package/dist/esm/components/Camera/index.mjs +7 -7
  113. package/dist/esm/components/CheckBox/index.mjs +4 -4
  114. package/dist/esm/components/Chip/index.mjs +4 -4
  115. package/dist/esm/components/DivInput/index.mjs +3 -3
  116. package/dist/esm/components/Dot/index.mjs +2 -2
  117. package/dist/esm/components/DraggablePanel/index.mjs +4 -4
  118. package/dist/esm/components/DropDown/index.mjs +4 -4
  119. package/dist/esm/components/ErrorSummary/index.mjs +4 -4
  120. package/dist/esm/components/FileIcon/index.mjs +4 -4
  121. package/dist/esm/components/FileList/index.mjs +6 -6
  122. package/dist/esm/components/FlexDiv/index.mjs +2 -2
  123. package/dist/esm/components/Grouper/index.mjs +5 -5
  124. package/dist/esm/components/Icon/index.mjs +4 -4
  125. package/dist/esm/components/IconButton/index.mjs +7 -7
  126. package/dist/esm/components/Label/index.mjs +3 -3
  127. package/dist/esm/components/Overlay/index.mjs +2 -2
  128. package/dist/esm/components/Pager/index.mjs +3 -3
  129. package/dist/esm/components/Progress/index.mjs +5 -5
  130. package/dist/esm/components/PromptInput/index.mjs +11 -11
  131. package/dist/esm/components/RadioButton/index.mjs +4 -4
  132. package/dist/esm/components/RadioButtonList/index.mjs +5 -5
  133. package/dist/esm/components/Slider/index.mjs +3 -3
  134. package/dist/esm/components/Spacer/index.mjs +2 -2
  135. package/dist/esm/components/Switch/index.mjs +2 -2
  136. package/dist/esm/components/TabBar/index.mjs +7 -7
  137. package/dist/esm/components/TextArea/index.mjs +9 -9
  138. package/dist/esm/components/Textfield/index.mjs +10 -10
  139. package/dist/esm/components/Tip/index.mjs +3 -3
  140. package/dist/esm/components/Toast/index.mjs +5 -5
  141. package/dist/esm/components/UploadArea/index.mjs +7 -7
  142. package/dist/esm/hooks/useAudioRecorder.mjs +74 -0
  143. package/dist/esm/hooks/useMdStreamBuffer.mjs +42 -0
  144. package/dist/esm/hooks/useMicrophone.mjs +134 -0
  145. package/dist/esm/hooks/useTrackRenders.mjs +2 -2
  146. package/dist/esm/hooks.mjs +10 -0
  147. package/dist/esm/index.mjs +51 -39
  148. package/dist/esm/stores/LocalDB.mjs +3 -3
  149. package/dist/esm/stores/SSE.mjs +2 -2
  150. package/dist/esm/stores/WS.mjs +2 -2
  151. package/dist/esm/stores/uploads.mjs +3 -3
  152. package/dist/esm/stores/window.mjs +2 -2
  153. package/dist/esm/stores.mjs +7 -7
  154. package/dist/esm/utils/index.mjs +8 -4
  155. package/dist/esm/utils/objects/index.mjs +7 -3
  156. package/dist/esm/workers/uploads/uploads.mjs +2 -2
  157. package/dist/types/components/AudioBubble/AudioBubble.d.ts +3 -0
  158. package/dist/types/components/AudioBubble/_types.d.ts +18 -0
  159. package/dist/types/components/AudioBubble/index.d.ts +2 -0
  160. package/dist/types/components/Textfield/_types.d.ts +1 -3
  161. package/dist/types/hooks/index.d.ts +3 -0
  162. package/dist/types/hooks/useAudioRecorder/useAudioRecorder.d.ts +14 -0
  163. package/dist/types/hooks/useMdStreamBuffer/useMdStreamBuffer.d.ts +10 -0
  164. package/dist/types/hooks/useMicrophone/useMicrophone.d.ts +19 -0
  165. package/dist/types/index.d.ts +3 -1
  166. package/dist/types/utils/index.d.ts +2 -2
  167. package/dist/types/utils/objects/MDStreamBuffer/MdStreamBuffer.d.ts +63 -0
  168. package/dist/types/utils/objects/MDStreamBuffer/_defaults.d.ts +3 -0
  169. package/dist/types/utils/objects/MDStreamBuffer/_types.d.ts +25 -0
  170. package/dist/types/utils/objects/WebRTCConnection/WebRTCConnection.d.ts +86 -0
  171. package/dist/types/utils/objects/WebRTCConnection/_types.d.ts +11 -0
  172. package/dist/types/utils/objects/audioVisualizer/audioVisualizer.d.ts +40 -0
  173. package/dist/types/utils/objects/index.d.ts +4 -0
  174. package/package.json +1 -1
@@ -1,4 +1,4 @@
1
- import { _ as __rest } from "./tslib.es6-c-7TIv71.mjs";
1
+ import { a as __rest } from "./tslib.es6-C-olHjXV.mjs";
2
2
 
3
3
  import { jsx, jsxs } from "react/jsx-runtime";
4
4
 
@@ -10,10 +10,10 @@ import { useTheme } from "../hooks/useTheme.mjs";
10
10
 
11
11
  import "../theme/colors.mjs";
12
12
 
13
- import "../hooks/useWindow.mjs";
14
-
15
13
  import { a as addOpacity } from "./colors-FQ0uNQcW.mjs";
16
14
 
15
+ import "../hooks/useWindow.mjs";
16
+
17
17
  import { s as styleInject } from "./style-inject.es-D0BjEaN8.mjs";
18
18
 
19
19
  var css = {
@@ -1,4 +1,4 @@
1
- import { _ as __rest } from "./tslib.es6-c-7TIv71.mjs";
1
+ import { a as __rest } from "./tslib.es6-C-olHjXV.mjs";
2
2
 
3
3
  import { jsxs, Fragment, jsx } from "react/jsx-runtime";
4
4
 
@@ -8,9 +8,9 @@ import { useTheme } from "../hooks/useTheme.mjs";
8
8
 
9
9
  import "../theme/colors.mjs";
10
10
 
11
- import "../hooks/useWindow.mjs";
11
+ import { a as accessibleKeyDown } from "./misc-BeEWwOaJ.mjs";
12
12
 
13
- import { a as accessibleKeyDown } from "./misc-N8KLjOXc.mjs";
13
+ import "../hooks/useWindow.mjs";
14
14
 
15
15
  var FileIconNames;
16
16
 
@@ -1,16 +1,16 @@
1
- import { _ as __rest } from "./tslib.es6-c-7TIv71.mjs";
1
+ import { a as __rest } from "./tslib.es6-C-olHjXV.mjs";
2
2
 
3
3
  import { jsx, jsxs } from "react/jsx-runtime";
4
4
 
5
5
  import React, { useCallback, useMemo } from "react";
6
6
 
7
- import { s as setStyle, a as accessibleKeyDown } from "./misc-N8KLjOXc.mjs";
7
+ import { s as setStyle, a as accessibleKeyDown } from "./misc-BeEWwOaJ.mjs";
8
8
 
9
- import { F as FileIcon } from "./FileIcon-ePouoJpT.mjs";
9
+ import { F as FileIcon } from "./FileIcon-DeW-ZBiv.mjs";
10
10
 
11
- import { I as Icon } from "./Icon-CUSQtytG.mjs";
11
+ import { I as Icon } from "./Icon-KDwlMXzH.mjs";
12
12
 
13
- import { P as ProgressIndicator } from "./ProgressIndicator-D7paCpgY.mjs";
13
+ import { P as ProgressIndicator } from "./ProgressIndicator-CxsZm_As.mjs";
14
14
 
15
15
  import { s as styleInject } from "./style-inject.es-D0BjEaN8.mjs";
16
16
 
@@ -1,4 +1,4 @@
1
- import { _ as __rest } from "./tslib.es6-c-7TIv71.mjs";
1
+ import { a as __rest } from "./tslib.es6-C-olHjXV.mjs";
2
2
 
3
3
  import { jsx, jsxs } from "react/jsx-runtime";
4
4
 
@@ -12,9 +12,9 @@ import "../theme/colors.mjs";
12
12
 
13
13
  import "../hooks/useWindow.mjs";
14
14
 
15
- import { B as Badge } from "./Badge-DyICxZP2.mjs";
15
+ import { B as Badge } from "./Badge-D-U1jomY.mjs";
16
16
 
17
- import { I as Icon } from "./Icon-CUSQtytG.mjs";
17
+ import { I as Icon } from "./Icon-KDwlMXzH.mjs";
18
18
 
19
19
  import { s as styleInject } from "./style-inject.es-D0BjEaN8.mjs";
20
20
 
@@ -1,4 +1,4 @@
1
- import { _ as __rest } from "./tslib.es6-c-7TIv71.mjs";
1
+ import { a as __rest } from "./tslib.es6-C-olHjXV.mjs";
2
2
 
3
3
  import { jsxs, Fragment, jsx } from "react/jsx-runtime";
4
4
 
@@ -8,9 +8,9 @@ import { useTheme } from "../hooks/useTheme.mjs";
8
8
 
9
9
  import "../theme/colors.mjs";
10
10
 
11
- import "../hooks/useWindow.mjs";
11
+ import { a as accessibleKeyDown } from "./misc-BeEWwOaJ.mjs";
12
12
 
13
- import { a as accessibleKeyDown } from "./misc-N8KLjOXc.mjs";
13
+ import "../hooks/useWindow.mjs";
14
14
 
15
15
  import { s as styleInject } from "./style-inject.es-D0BjEaN8.mjs";
16
16
 
@@ -1,4 +1,4 @@
1
- import { _ as __rest } from "./tslib.es6-c-7TIv71.mjs";
1
+ import { a as __rest } from "./tslib.es6-C-olHjXV.mjs";
2
2
 
3
3
  import { jsxs, jsx } from "react/jsx-runtime";
4
4
 
@@ -6,11 +6,11 @@ import { motion } from "motion/react";
6
6
 
7
7
  import React, { useRef, useState, useEffect, useCallback, useMemo } from "react";
8
8
 
9
- import { B as Badge } from "./Badge-DyICxZP2.mjs";
9
+ import { B as Badge } from "./Badge-D-U1jomY.mjs";
10
10
 
11
- import { D as Dot } from "./Dot-CLGwQu-i.mjs";
11
+ import { D as Dot } from "./Dot-Cj6gWj4_.mjs";
12
12
 
13
- import { I as Icon } from "./Icon-CUSQtytG.mjs";
13
+ import { I as Icon } from "./Icon-KDwlMXzH.mjs";
14
14
 
15
15
  import { T as ToolTipType } from "./sharedTypes-tn9-uJvb.mjs";
16
16
 
@@ -1,4 +1,4 @@
1
- import { a as __awaiter } from "./tslib.es6-c-7TIv71.mjs";
1
+ import { _ as __awaiter } from "./tslib.es6-C-olHjXV.mjs";
2
2
 
3
3
  class IndexedDB {
4
4
  constructor(storeName, options = {}) {
@@ -1,10 +1,10 @@
1
- import { _ as __rest } from "./tslib.es6-c-7TIv71.mjs";
1
+ import { a as __rest } from "./tslib.es6-C-olHjXV.mjs";
2
2
 
3
3
  import { jsx } from "react/jsx-runtime";
4
4
 
5
5
  import { useCallback, useMemo } from "react";
6
6
 
7
- import { s as setStyle } from "./misc-N8KLjOXc.mjs";
7
+ import { s as setStyle } from "./misc-BeEWwOaJ.mjs";
8
8
 
9
9
  import { s as styleInject } from "./style-inject.es-D0BjEaN8.mjs";
10
10
 
@@ -105,7 +105,7 @@ function Label(props) {
105
105
  }));
106
106
  }
107
107
 
108
- styleInject(".type-module_body-xs-regular__ZAFft {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-regular);\n\tfont-size: var(--font-size-xs);\n\tline-height: 133.33%;\n\ttext-decoration: none;\n\tletter-spacing: 0.2px;\n}.type-module_body-xs-medium__s3KvF {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-medium);\n\tfont-size: var(--font-size-xs);\n\tline-height: 133.33%;\n\ttext-decoration: none;\n\tletter-spacing: 0.2px;\n}.type-module_body-xs-bold__Lhqqq {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-bold);\n\tfont-size: var(--font-size-xs);\n\tline-height: 133.33%;\n\ttext-decoration: none;\n\tletter-spacing: 0.25px;\n}.type-module_body-s-regular__vRHSP {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-regular);\n\tfont-size: var(--font-size-s);\n\tline-height: 142.86%;\n\ttext-decoration: none;\n\tletter-spacing: 0.15px;\n}.type-module_body-s-medium__tjdFc {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-medium);\n\tfont-size: var(--font-size-s);\n\tline-height: 142.86%;\n\ttext-decoration: none;\n\tletter-spacing: 0.15px;\n}.type-module_body-s-bold__Iy-VX {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-bold);\n\tfont-size: var(--font-size-s);\n\tline-height: 142.86%;\n\ttext-decoration: none;\n\tletter-spacing: 0.2px;\n}.type-module_body-m-regular__LuQBA {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-regular);\n\tfont-size: var(--font-size-m);\n\tline-height: 140%;\n\ttext-decoration: none;\n\tletter-spacing: 0.15px;\n}.type-module_body-m-medium__uW1on {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-medium);\n\tfont-size: var(--font-size-m);\n\tline-height: 140%;\n\ttext-decoration: none;\n\tletter-spacing: 0.15px;\n}.type-module_body-m-bold__UBcvQ {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-bold);\n\tfont-size: var(--font-size-m);\n\tline-height: 140%;\n\ttext-decoration: none;\n\tletter-spacing: 0.2px;\n}.type-module_body-l-regular__lOYbg {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-regular);\n\tfont-size: var(--font-size-l);\n\tline-height: 162.5%;\n\ttext-decoration: none;\n\tletter-spacing: 0.1px;\n}.type-module_body-l-medium__BqRC7 {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-medium);\n\tfont-size: var(--font-size-l);\n\tline-height: 162.5%;\n\ttext-decoration: none;\n\tletter-spacing: 0.1px;\n}.type-module_body-l-bold__Fh2dt {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-bold);\n\tfont-size: var(--font-size-l);\n\tline-height: 162.5%;\n\ttext-decoration: none;\n\tletter-spacing: 0.15px;\n}.type-module_body-xl-regular__pF2kC {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-regular);\n\tfont-size: var(--font-size-xl);\n\tline-height: 162.5%;\n\ttext-decoration: none;\n\tletter-spacing: 0.1px;\n}.type-module_body-xl-medium__BeyrH {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-medium);\n\tfont-size: var(--font-size-xl);\n\tline-height: 162.5%;\n\ttext-decoration: none;\n\tletter-spacing: 0.1px;\n}.type-module_body-xl-bold__Ruknj {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-bold);\n\tfont-size: var(--font-size-xl);\n\tline-height: 162.5%;\n\ttext-decoration: none;\n\tletter-spacing: 0.15px;\n}.type-module_heading-s-medium__z8L3G {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: 500;\n\tfont-size: 20px;\n\tline-height: 140%;\n\ttext-decoration: none;\n\tletter-spacing: 0.2px;\n}.type-module_heading-s-bold__0O3g6 {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: 600;\n\tfont-size: 20px;\n\tline-height: 140%;\n\ttext-decoration: none;\n\tletter-spacing: 0.2px;\n}.type-module_heading-m-bold__KXxEB {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: 500;\n\tfont-size: 24px;\n\tline-height: 116.67%;\n\ttext-decoration: none;\n\tletter-spacing: 0.2px;\n}.type-module_heading-m-medium__cJeEA {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: 600;\n\tfont-size: 24px;\n\tline-height: 116.67%;\n\ttext-decoration: none;\n\tletter-spacing: 0.2px;\n}.type-module_heading-l-medium__eRe05 {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: 500;\n\tfont-size: 30px;\n\tline-height: 128.57%;\n\ttext-decoration: none;\n\tletter-spacing: 0.2px;\n}.type-module_heading-l-bold__Xmwtf {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: 600;\n\tfont-size: 30px;\n\tline-height: 128.57%;\n\ttext-decoration: none;\n\tletter-spacing: 0.2px;\n}.type-module_heading-xl-medium__5q1m3 {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: 500;\n\tfont-size: 36px;\n\tline-height: 128.57%;\n\ttext-decoration: none;\n\tletter-spacing: 0.2px;\n}.type-module_heading-xl-bold__k9VFV {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: 600;\n\tfont-size: 36px;\n\tline-height: 128.57%;\n\ttext-decoration: none;\n\tletter-spacing: 0.2px;\n}\n\n.Label-module_label__RaRvM {\n\tline-height: 1em;\n\twhite-space: nowrap;\n\tpadding: var(--label-padding) !important;\n\twidth: min-content;\n\tcolor: var(--label-color);\n\tborder-radius: var(--label-border-radius);\n\tborder: var(--label-border-size) solid var(--label-border-color);\n\tcursor: default;\n\tbackground: var(--label-bg-color);\n}\n\n.Label-module_button__N8bcQ {\n\tdisplay: inline-flex !important;\n\tbackground: var(--label-bg-color);\n\tcolor: var(--label-color);\n\tborder-radius: var(--label-border-radius);\n\tborder: var(--label-border-size) solid var(--label-border-color);\n\twidth: min-content;\n\tcursor: pointer;\n\tappearance: none;\n\t-webkit-appearance: none;\n\tbackground-image: none;\n\toutline: none;\n}\n\n.Label-module_xs__K9Ai6 {\n}\n\n.Label-module_s__Zh8Gp {\n}\n\n.Label-module_m__BJtGL {\n}\n\n.Label-module_l__t70tt {\n}\n"),
108
+ styleInject(".type-module_body-xs-regular__ZAFft {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-regular);\n\tfont-size: var(--font-size-xs);\n\tline-height: 133.33%;\n\ttext-decoration: none;\n\tletter-spacing: 0.2px;\n}.type-module_body-xs-medium__s3KvF {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-medium);\n\tfont-size: var(--font-size-xs);\n\tline-height: 133.33%;\n\ttext-decoration: none;\n\tletter-spacing: 0.2px;\n}.type-module_body-xs-bold__Lhqqq {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-bold);\n\tfont-size: var(--font-size-xs);\n\tline-height: 133.33%;\n\ttext-decoration: none;\n\tletter-spacing: 0.25px;\n}.type-module_body-s-regular__vRHSP {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-regular);\n\tfont-size: var(--font-size-s);\n\tline-height: 142.86%;\n\ttext-decoration: none;\n\tletter-spacing: 0.15px;\n}.type-module_body-s-medium__tjdFc {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-medium);\n\tfont-size: var(--font-size-s);\n\tline-height: 142.86%;\n\ttext-decoration: none;\n\tletter-spacing: 0.15px;\n}.type-module_body-s-bold__Iy-VX {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-bold);\n\tfont-size: var(--font-size-s);\n\tline-height: 142.86%;\n\ttext-decoration: none;\n\tletter-spacing: 0.2px;\n}.type-module_body-m-regular__LuQBA {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-regular);\n\tfont-size: var(--font-size-m);\n\tline-height: 140%;\n\ttext-decoration: none;\n\tletter-spacing: 0.15px;\n}.type-module_body-m-medium__uW1on {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-medium);\n\tfont-size: var(--font-size-m);\n\tline-height: 140%;\n\ttext-decoration: none;\n\tletter-spacing: 0.15px;\n}.type-module_body-m-bold__UBcvQ {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-bold);\n\tfont-size: var(--font-size-m);\n\tline-height: 140%;\n\ttext-decoration: none;\n\tletter-spacing: 0.2px;\n}.type-module_body-l-regular__lOYbg {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-regular);\n\tfont-size: var(--font-size-l);\n\tline-height: 162.5%;\n\ttext-decoration: none;\n\tletter-spacing: 0.1px;\n}.type-module_body-l-medium__BqRC7 {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-medium);\n\tfont-size: var(--font-size-l);\n\tline-height: 162.5%;\n\ttext-decoration: none;\n\tletter-spacing: 0.1px;\n}.type-module_body-l-bold__Fh2dt {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-bold);\n\tfont-size: var(--font-size-l);\n\tline-height: 162.5%;\n\ttext-decoration: none;\n\tletter-spacing: 0.15px;\n}.type-module_body-xl-regular__pF2kC {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-regular);\n\tfont-size: var(--font-size-xl);\n\tline-height: 162.5%;\n\ttext-decoration: none;\n\tletter-spacing: 0.1px;\n}.type-module_body-xl-medium__BeyrH {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-medium);\n\tfont-size: var(--font-size-xl);\n\tline-height: 162.5%;\n\ttext-decoration: none;\n\tletter-spacing: 0.1px;\n}.type-module_body-xl-bold__Ruknj {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-bold);\n\tfont-size: var(--font-size-xl);\n\tline-height: 162.5%;\n\ttext-decoration: none;\n\tletter-spacing: 0.15px;\n}.type-module_heading-s-medium__z8L3G {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: 500;\n\tfont-size: 20px;\n\tline-height: 140%;\n\ttext-decoration: none;\n\tletter-spacing: 0.2px;\n}.type-module_heading-s-bold__0O3g6 {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: 600;\n\tfont-size: 20px;\n\tline-height: 140%;\n\ttext-decoration: none;\n\tletter-spacing: 0.2px;\n}.type-module_heading-m-bold__KXxEB {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: 500;\n\tfont-size: 24px;\n\tline-height: 116.67%;\n\ttext-decoration: none;\n\tletter-spacing: 0.2px;\n}.type-module_heading-m-medium__cJeEA {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: 600;\n\tfont-size: 24px;\n\tline-height: 116.67%;\n\ttext-decoration: none;\n\tletter-spacing: 0.2px;\n}.type-module_heading-l-medium__eRe05 {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: 500;\n\tfont-size: 30px;\n\tline-height: 128.57%;\n\ttext-decoration: none;\n\tletter-spacing: 0.2px;\n}.type-module_heading-l-bold__Xmwtf {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: 600;\n\tfont-size: 30px;\n\tline-height: 128.57%;\n\ttext-decoration: none;\n\tletter-spacing: 0.2px;\n}.type-module_heading-xl-medium__5q1m3 {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: 500;\n\tfont-size: 36px;\n\tline-height: 128.57%;\n\ttext-decoration: none;\n\tletter-spacing: 0.2px;\n}.type-module_heading-xl-bold__k9VFV {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: 600;\n\tfont-size: 36px;\n\tline-height: 128.57%;\n\ttext-decoration: none;\n\tletter-spacing: 0.2px;\n}\n\n.Label-module_label__RaRvM {\n\tline-height: 1em;\n\twhite-space: nowrap;\n\tpadding: var(--label-padding) !important;\n\twidth: min-content;\n\tcolor: var(--label-color);\n\tborder-radius: var(--label-border-radius);\n\tborder: var(--label-border-size) solid var(--label-border-color);\n\tcursor: default;\n\tbackground: var(--label-bg-color);\n}\n\n.Label-module_button__N8bcQ {\n\tdisplay: inline-flex !important;\n\tbackground: var(--label-bg-color);\n\tcolor: var(--label-color);\n\tborder-radius: var(--label-border-radius);\n\tborder: var(--label-border-size) solid var(--label-border-color);\n\twidth: min-content;\n\tcursor: pointer;\n\twhite-space: nowrap;\n\tappearance: none;\n\t-webkit-appearance: none;\n\tbackground-image: none;\n\toutline: none;\n}\n\n.Label-module_xs__K9Ai6 {\n}\n\n.Label-module_s__Zh8Gp {\n}\n\n.Label-module_m__BJtGL {\n}\n\n.Label-module_l__t70tt {\n}\n"),
109
109
  function(LabelBackground) {
110
110
  LabelBackground.red = "red", LabelBackground.yellow = "yellow", LabelBackground.green = "green",
111
111
  LabelBackground.blue = "blue", LabelBackground.grey = "grey", LabelBackground.lightGrey = "lightGrey",
@@ -0,0 +1,381 @@
1
+ const DEFAULT_WATCHED_MARKERS = [ {
2
+ name: "fenced code block",
3
+ open: "```",
4
+ close: "```"
5
+ }, {
6
+ name: "bold",
7
+ open: "**",
8
+ close: "**"
9
+ }, {
10
+ name: "double underscore emphasis",
11
+ open: "__",
12
+ close: "__"
13
+ }, {
14
+ name: "strikethrough",
15
+ open: "~~",
16
+ close: "~~"
17
+ }, {
18
+ name: "inline code",
19
+ open: "`",
20
+ close: "`"
21
+ }, {
22
+ name: "italic",
23
+ open: "*",
24
+ close: "*"
25
+ }, {
26
+ name: "underscore emphasis",
27
+ open: "_",
28
+ close: "_"
29
+ }, {
30
+ name: "heading - ie #, ##, etc.",
31
+ open: "",
32
+ close: "\n",
33
+ mode: "line",
34
+ linePattern: /^#{1,6}\s+\S.*/,
35
+ partialLinePattern: /^#{1,6}\s*$/
36
+ }, {
37
+ name: "blockquote",
38
+ open: "",
39
+ close: "\n",
40
+ mode: "line",
41
+ linePattern: /^>\s+\S.*/,
42
+ partialLinePattern: /^>\s*$/
43
+ }, {
44
+ name: 'horizontal rule with "-"',
45
+ open: "",
46
+ close: "\n",
47
+ mode: "line",
48
+ linePattern: /^-{3,}\s*$/,
49
+ partialLinePattern: /^-{1,2}\s*$/
50
+ }, {
51
+ name: "task list",
52
+ open: "",
53
+ close: "\n",
54
+ mode: "line",
55
+ linePattern: /^[-*+]\s+\[(?: |x|X)\]\s+\S.*/,
56
+ partialLinePattern: /^[-*+]\s+\[(?:\s|x|X)?\]?\s*$/
57
+ }, {
58
+ name: 'unordered list "-"',
59
+ open: "",
60
+ close: "\n",
61
+ mode: "line",
62
+ linePattern: /^-\s+\S.*/,
63
+ partialLinePattern: /^-\s*$/
64
+ }, {
65
+ name: 'unordered list with "*"',
66
+ open: "",
67
+ close: "\n",
68
+ mode: "line",
69
+ linePattern: /^\*\s+\S.*/,
70
+ partialLinePattern: /^\*\s*$/
71
+ }, {
72
+ name: 'unordered list with "+"',
73
+ open: "",
74
+ close: "\n",
75
+ mode: "line",
76
+ linePattern: /^\+\s+\S.*/,
77
+ partialLinePattern: /^\+\s*$/
78
+ }, {
79
+ name: "ordered list",
80
+ open: "",
81
+ close: "\n",
82
+ mode: "line",
83
+ linePattern: /^\d+\.\s+\S.*/,
84
+ partialLinePattern: /^\d+\.\s*$/
85
+ } ];
86
+
87
+ /**
88
+ * Buffer streamed Markdown and emit parser-safe snapshots on animation frames.
89
+ */ class MdBuffer {
90
+ constructor(options) {
91
+ var _a, _b, _c, _d, _e, rules;
92
+ this.committedRaw = "", this.activeRaw = "", this.frameHandle = null, this.completeSignal = !1,
93
+ this.endOfStreamToken = null == options ? void 0 : options.endOfStreamToken, this.htmlHandling = null !== (_a = null == options ? void 0 : options.htmlHandling) && void 0 !== _a ? _a : "ignore",
94
+ this.includeLinksAndImages = null !== (_b = null == options ? void 0 : options.includeLinksAndImages) && void 0 !== _b && _b,
95
+ this.onFlush = null == options ? void 0 : options.onFlush, this.requestFrame = null !== (_c = null == options ? void 0 : options.requestFrame) && void 0 !== _c ? _c : function() {
96
+ if ("undefined" != typeof globalThis && "function" == typeof globalThis.requestAnimationFrame) return globalThis.requestAnimationFrame.bind(globalThis);
97
+ return callback => globalThis.setTimeout(() => callback(Date.now()), 16);
98
+ }(), this.cancelFrame = null !== (_d = null == options ? void 0 : options.cancelFrame) && void 0 !== _d ? _d : function() {
99
+ if ("undefined" != typeof globalThis && "function" == typeof globalThis.cancelAnimationFrame) return globalThis.cancelAnimationFrame.bind(globalThis);
100
+ return handle => globalThis.clearTimeout(handle);
101
+ }(), this.watchedMarkers = (rules = null !== (_e = null == options ? void 0 : options.watchedMarkers) && void 0 !== _e ? _e : DEFAULT_WATCHED_MARKERS,
102
+ [ ...rules ].sort((left, right) => right.open.length - left.open.length));
103
+ }
104
+ /**
105
+ * The raw Markdown accumulated so far.
106
+ */ get raw() {
107
+ return `${this.committedRaw}${this.activeRaw}`;
108
+ }
109
+ /**
110
+ * The current parser-safe preview derived from the raw buffer.
111
+ */ get healthy() {
112
+ return this.buildHealthyOutput();
113
+ }
114
+ /**
115
+ * Append a streamed Markdown token and schedule a frame flush.
116
+ */ append(chunk) {
117
+ const eosSnapshot = this.handleEndOfStreamToken(chunk);
118
+ if (eosSnapshot) return eosSnapshot;
119
+ chunk && (this.activeRaw += chunk, this.commitStableLines(), this.scheduleFlush());
120
+ }
121
+ /**
122
+ * Emit the current snapshot immediately.
123
+ */ flush(reason = "manual") {
124
+ var _a;
125
+ const snapshot = {
126
+ raw: this.committedRaw + this.activeRaw,
127
+ healthy: this.buildHealthyOutput(),
128
+ reason: reason,
129
+ isComplete: this.completeSignal
130
+ };
131
+ return null === (_a = this.onFlush) || void 0 === _a || _a.call(this, snapshot),
132
+ snapshot;
133
+ }
134
+ /**
135
+ * Mark the stream as complete and flush one final snapshot.
136
+ */ complete() {
137
+ return null !== this.frameHandle && (this.cancelFrame(this.frameHandle), this.frameHandle = null),
138
+ this.completeSignal = !0, this.flush("complete");
139
+ }
140
+ /**
141
+ * Clear the buffered state and cancel any pending frame.
142
+ */ reset() {
143
+ null !== this.frameHandle && (this.cancelFrame(this.frameHandle), this.frameHandle = null),
144
+ this.committedRaw = "", this.activeRaw = "", this.completeSignal = !1;
145
+ }
146
+ /**
147
+ * Cancel future work and release the retained state.
148
+ */ dispose() {
149
+ this.reset();
150
+ }
151
+ handleEndOfStreamToken(chunk) {
152
+ if (!this.endOfStreamToken) return null;
153
+ if (!chunk.includes(this.endOfStreamToken)) return null;
154
+ const [beforeToken] = chunk.split(this.endOfStreamToken);
155
+ beforeToken && (this.activeRaw += beforeToken, this.commitStableLines());
156
+ const snapshot = this.complete();
157
+ return this.dispose(), snapshot;
158
+ }
159
+ scheduleFlush() {
160
+ null === this.frameHandle && (this.frameHandle = this.requestFrame(() => {
161
+ this.frameHandle = null, this.flush("raf");
162
+ }));
163
+ }
164
+ commitStableLines() {
165
+ if (this.buildHealthyTail(this.activeRaw) !== this.activeRaw) return;
166
+ const lastNewlineIndex = this.activeRaw.lastIndexOf("\n");
167
+ if (-1 === lastNewlineIndex) return;
168
+ const stablePrefix = this.activeRaw.slice(0, lastNewlineIndex + 1);
169
+ this.committedRaw += stablePrefix, this.activeRaw = this.activeRaw.slice(lastNewlineIndex + 1);
170
+ }
171
+ buildHealthyOutput() {
172
+ return `${this.committedRaw}${this.buildHealthyTail(this.activeRaw)}`;
173
+ }
174
+ buildHealthyTail(value) {
175
+ const withHtmlHandling = "strip" === this.htmlHandling ? function(value) {
176
+ let stripped = value.replaceAll(/<\/?[a-zA-Z][^>]*>/g, "");
177
+ const lastOpenTag = stripped.lastIndexOf("<"), lastCloseBracket = stripped.lastIndexOf(">");
178
+ if (lastOpenTag > lastCloseBracket) {
179
+ const trailingSegment = stripped.slice(lastOpenTag);
180
+ /^<\/?[a-zA-Z][^>]*$/.test(trailingSegment) && (stripped = stripped.slice(0, lastOpenTag));
181
+ }
182
+ return stripped;
183
+ }(value) : value, withLinksAndImages = this.includeLinksAndImages ? this.closeLinksAndImages(withHtmlHandling) : withHtmlHandling;
184
+ return this.closeInlineMarkdown(withLinksAndImages);
185
+ }
186
+ closeInlineMarkdown(value) {
187
+ const counts = function(value, rules) {
188
+ var _a;
189
+ const counts = {}, tokens = new Set;
190
+ for (const rule of rules) tokens.add(rule.open), tokens.add(rule.close);
191
+ const sortedTokens = [ ...tokens ].sort((left, right) => right.length - left.length);
192
+ for (let index = 0; index < value.length; index += 1) {
193
+ if (isEscaped(value, index)) continue;
194
+ const matchedToken = sortedTokens.find(token => token.length > 0 && value.slice(index, index + token.length) === token);
195
+ matchedToken && (shouldIgnoreSymmetricToken(value, matchedToken, index) || "*" === matchedToken && isStarListMarker(value, index) || (counts[matchedToken] = (null !== (_a = counts[matchedToken]) && void 0 !== _a ? _a : 0) + 1,
196
+ index += matchedToken.length - 1));
197
+ }
198
+ return counts;
199
+ }(value, this.getPairedRules()), withSymmetricClosers = this.closeSymmetricPairedMarkers(value), withAsymmetricClosers = this.closeAsymmetricPairedMarkers(withSymmetricClosers, counts);
200
+ return this.closeLineMarkers(withAsymmetricClosers);
201
+ }
202
+ closeLinksAndImages(value) {
203
+ const withImageSignalHandled = this.closeTrailingImageSignal(value);
204
+ if (withImageSignalHandled !== value) return withImageSignalHandled;
205
+ const trailingImage = this.findTrailingImage(value);
206
+ if (trailingImage) return this.closeTrailingImage(value, trailingImage);
207
+ const trailingLink = this.findTrailingLink(value);
208
+ return trailingLink ? this.closeTrailingLink(value, trailingLink) : value;
209
+ }
210
+ getPairedRules() {
211
+ return this.watchedMarkers.filter(rule => {
212
+ var _a;
213
+ return "paired" === (null !== (_a = rule.mode) && void 0 !== _a ? _a : "paired");
214
+ });
215
+ }
216
+ closeSymmetricPairedMarkers(value) {
217
+ let nextValue = value;
218
+ const suppressedCharacters = new Set, symmetricRules = this.getPairedRules().filter(rule => rule.open === rule.close);
219
+ for (const rule of symmetricRules) {
220
+ const repeatedCharacter = getRepeatedTokenCharacter(rule.open);
221
+ if (repeatedCharacter && suppressedCharacters.has(repeatedCharacter)) continue;
222
+ const unmatchedOpenIndex = findLastUnmatchedSymmetricOpen(nextValue, rule.open);
223
+ if (-1 !== unmatchedOpenIndex) if (hasMeaningfulInlineContent(nextValue.slice(unmatchedOpenIndex + rule.open.length), repeatedCharacter)) {
224
+ if (repeatedCharacter) {
225
+ const trailingRunLength = countTrailingRepeatedCharacter(nextValue, repeatedCharacter), remainingCharacters = Math.max(rule.close.length - trailingRunLength, 0);
226
+ nextValue += repeatedCharacter.repeat(remainingCharacters);
227
+ } else nextValue += rule.close;
228
+ repeatedCharacter && suppressedCharacters.add(repeatedCharacter);
229
+ } else nextValue = nextValue.slice(0, unmatchedOpenIndex), repeatedCharacter && suppressedCharacters.add(repeatedCharacter);
230
+ }
231
+ return nextValue;
232
+ }
233
+ closeAsymmetricPairedMarkers(value, counts) {
234
+ var _a, _b;
235
+ let nextValue = value;
236
+ const asymmetricRules = this.getPairedRules().filter(rule => rule.open !== rule.close);
237
+ for (const rule of asymmetricRules) {
238
+ const openCount = null !== (_a = counts[rule.open]) && void 0 !== _a ? _a : 0, closeCount = null !== (_b = counts[rule.close]) && void 0 !== _b ? _b : 0;
239
+ openCount > closeCount && (nextValue += rule.close.repeat(openCount - closeCount));
240
+ }
241
+ return nextValue;
242
+ }
243
+ closeLineMarkers(value) {
244
+ var _a, _b, _c, _d;
245
+ let nextValue = value;
246
+ const trailingLine = null !== (_a = nextValue.split("\n").at(-1)) && void 0 !== _a ? _a : "";
247
+ if (0 === trailingLine.trim().length) return nextValue;
248
+ const trailingLineStart = nextValue.length - trailingLine.length, lineRules = this.watchedMarkers.filter(rule => {
249
+ var _a;
250
+ return "line" === (null !== (_a = rule.mode) && void 0 !== _a ? _a : "paired");
251
+ });
252
+ for (const rule of lineRules) {
253
+ if (rule.linePattern) {
254
+ if (!rule.linePattern.test(trailingLine)) continue;
255
+ nextValue += rule.close;
256
+ break;
257
+ }
258
+ if (rule.requiresLineStart && !trailingLine.startsWith(rule.open)) continue;
259
+ const remaining = trailingLine.slice(rule.open.length).trim();
260
+ if (!(null === (_b = rule.requiresContent) || void 0 === _b || _b) || 0 !== remaining.length) {
261
+ nextValue += rule.close;
262
+ break;
263
+ }
264
+ }
265
+ for (const rule of lineRules) {
266
+ if (null === (_c = rule.partialLinePattern) || void 0 === _c ? void 0 : _c.test(trailingLine)) return nextValue.slice(0, trailingLineStart);
267
+ if (!rule.requiresLineStart || !trailingLine.startsWith(rule.open)) continue;
268
+ if (null !== (_d = rule.requiresContent) && void 0 !== _d && !_d) continue;
269
+ if (0 === trailingLine.slice(rule.open.length).trim().length) return nextValue.slice(0, trailingLineStart);
270
+ }
271
+ return nextValue;
272
+ }
273
+ closeTrailingLink(value, construct) {
274
+ if (!construct.labelClosed) return value.slice(0, construct.start);
275
+ if (construct.parenOpened) {
276
+ const linkPreview = `${value.slice(construct.start, construct.labelEnd + 1)}()`;
277
+ return `${value.slice(0, construct.start)}${linkPreview}`;
278
+ }
279
+ return construct.labelEnd === value.length - 1 ? value.slice(0, construct.start) : value;
280
+ }
281
+ closeTrailingImage(value, construct) {
282
+ return construct.labelClosed ? construct.parenOpened || construct.labelEnd === value.length - 1 ? value.slice(0, construct.start) : `${value.slice(0, construct.start)}${value.slice(construct.labelEnd + 1)}` : value.slice(0, construct.start);
283
+ }
284
+ closeTrailingImageSignal(value) {
285
+ const lastBangIndex = value.lastIndexOf("!");
286
+ return -1 === lastBangIndex || lastBangIndex !== value.length - 1 || isEscaped(value, lastBangIndex) ? value : value.slice(0, lastBangIndex);
287
+ }
288
+ findTrailingLink(value) {
289
+ const construct = this.findTrailingInlineConstruct(value, !1);
290
+ return construct ? construct.labelClosed ? construct.parenOpened || construct.labelEnd === value.length - 1 ? construct : null : construct : null;
291
+ }
292
+ findTrailingImage(value) {
293
+ return this.findTrailingInlineConstruct(value, !0);
294
+ }
295
+ findTrailingInlineConstruct(value, isImage) {
296
+ var _a;
297
+ const stack = [];
298
+ for (let index = 0; index < value.length; index += 1) {
299
+ if (isEscaped(value, index)) continue;
300
+ const character = value[index];
301
+ if ("[" === character) {
302
+ const isImage = index > 0 && "!" === value[index - 1] && !isEscaped(value, index - 1);
303
+ stack.push({
304
+ start: isImage ? index - 1 : index,
305
+ isImage: isImage,
306
+ labelClosed: !1,
307
+ labelEnd: -1,
308
+ parenOpened: !1
309
+ });
310
+ continue;
311
+ }
312
+ if ("]" === character) {
313
+ const target = [ ...stack ].reverse().find(item => !item.labelClosed);
314
+ if (!target) continue;
315
+ target.labelClosed = !0, target.labelEnd = index;
316
+ continue;
317
+ }
318
+ if ("(" === character) {
319
+ const target = [ ...stack ].reverse().find(item => item.labelClosed && !item.parenOpened && item.labelEnd === index - 1);
320
+ if (!target) continue;
321
+ target.parenOpened = !0;
322
+ continue;
323
+ }
324
+ if (")" === character) {
325
+ const targetIndex = null === (_a = [ ...stack ].map((item, stackIndex) => ({
326
+ item: item,
327
+ stackIndex: stackIndex
328
+ })).reverse().find(({item: item}) => item.parenOpened)) || void 0 === _a ? void 0 : _a.stackIndex;
329
+ "number" == typeof targetIndex && stack.splice(targetIndex, 1);
330
+ }
331
+ }
332
+ const trailingConstruct = stack.findLast(item => item.isImage === isImage);
333
+ return null != trailingConstruct ? trailingConstruct : null;
334
+ }
335
+ }
336
+
337
+ function isEscaped(value, index) {
338
+ let slashCount = 0;
339
+ for (let cursor = index - 1; cursor >= 0 && "\\" === value[cursor]; cursor -= 1) slashCount += 1;
340
+ return slashCount % 2 != 0;
341
+ }
342
+
343
+ function isStarListMarker(value, index) {
344
+ return (0 === index || "\n" === value[index - 1]) && " " === value[index + 1];
345
+ }
346
+
347
+ function getRepeatedTokenCharacter(token) {
348
+ return 0 === token.length ? null : token.split("").every(character => character === token[0]) ? token[0] : null;
349
+ }
350
+
351
+ function countTrailingRepeatedCharacter(value, character) {
352
+ let count = 0;
353
+ for (let index = value.length - 1; index >= 0 && value[index] === character; index -= 1) count += 1;
354
+ return count;
355
+ }
356
+
357
+ function shouldIgnoreSymmetricToken(value, token, index) {
358
+ var _a, _b;
359
+ if (!token.includes("_")) return !1;
360
+ const previousCharacter = null !== (_a = value[index - 1]) && void 0 !== _a ? _a : "", nextCharacter = null !== (_b = value[index + token.length]) && void 0 !== _b ? _b : "";
361
+ return isWordCharacter(previousCharacter) || isWordCharacter(nextCharacter);
362
+ }
363
+
364
+ function isWordCharacter(value) {
365
+ return /[A-Za-z0-9]/.test(value);
366
+ }
367
+
368
+ function findLastUnmatchedSymmetricOpen(value, token) {
369
+ let occurrenceCount = 0, lastIndex = -1;
370
+ for (let index = 0; index <= value.length - token.length; index += 1) isEscaped(value, index) || value.slice(index, index + token.length) === token && (shouldIgnoreSymmetricToken(value, token, index) || (occurrenceCount += 1,
371
+ lastIndex = index, index += token.length - 1));
372
+ return occurrenceCount % 2 == 0 ? -1 : lastIndex;
373
+ }
374
+
375
+ function hasMeaningfulInlineContent(value, repeatedCharacter) {
376
+ if (0 === value.trim().length) return !1;
377
+ if (!repeatedCharacter) return !0;
378
+ return value.replaceAll(repeatedCharacter, "").trim().length > 0;
379
+ }
380
+
381
+ export { MdBuffer as M };
@@ -1,4 +1,4 @@
1
- import { _ as __rest } from "./tslib.es6-c-7TIv71.mjs";
1
+ import { a as __rest } from "./tslib.es6-C-olHjXV.mjs";
2
2
 
3
3
  import { jsx } from "react/jsx-runtime";
4
4
 
@@ -1,10 +1,10 @@
1
- import { _ as __rest } from "./tslib.es6-c-7TIv71.mjs";
1
+ import { a as __rest } from "./tslib.es6-C-olHjXV.mjs";
2
2
 
3
3
  import { jsx } from "react/jsx-runtime";
4
4
 
5
5
  import React, { useState, useMemo, useEffect, useCallback } from "react";
6
6
 
7
- import { a as accessibleKeyDown } from "./misc-N8KLjOXc.mjs";
7
+ import { a as accessibleKeyDown } from "./misc-BeEWwOaJ.mjs";
8
8
 
9
9
  import { s as styleInject } from "./style-inject.es-D0BjEaN8.mjs";
10
10
 
@@ -6,11 +6,11 @@ import { useTheme } from "../hooks/useTheme.mjs";
6
6
 
7
7
  import "../theme/colors.mjs";
8
8
 
9
- import "../hooks/useWindow.mjs";
9
+ import { a as __rest } from "./tslib.es6-C-olHjXV.mjs";
10
10
 
11
- import { _ as __rest } from "./tslib.es6-c-7TIv71.mjs";
11
+ import "../hooks/useWindow.mjs";
12
12
 
13
- import { I as Icon } from "./Icon-CUSQtytG.mjs";
13
+ import { I as Icon } from "./Icon-KDwlMXzH.mjs";
14
14
 
15
15
  import { s as styleInject } from "./style-inject.es-D0BjEaN8.mjs";
16
16
 
@@ -69,7 +69,8 @@ function ProgressIndicator(props) {
69
69
  const cssVars = useMemo(() => ({
70
70
  "--pi-position": inline ? "relative" : "absolute",
71
71
  "--pi-inset": inline ? "unset" : "0",
72
- "--pi-icon-size": `${null != size ? size : 0}px`
72
+ "--pi-icon-size": `${null != size ? size : 0}px`,
73
+ "--pi-display": inline ? "inline-flex" : "flex"
73
74
  }), [ inline, size ]), openCircle = useMemo(() => OpenCircle(size, secondsPerSpin, color, stroke, playing), [ size, secondsPerSpin, color, stroke, playing ]);
74
75
  return jsx(AnimatePresence, {
75
76
  initial: !0,
@@ -92,7 +93,7 @@ function ProgressIndicator(props) {
92
93
  });
93
94
  }
94
95
 
95
- styleInject(".flexBox-module_row__z24tF {\n\tdisplay: flex;\n\tjustify-content: center;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_rowBetween__5FEvi {\n\tdisplay: flex;\n\tjustify-content: space-between;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_rowStart__4tcxS {\n\tdisplay: flex;\n\tjustify-content: flex-start;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_rowEnd__rVdVm {\n\tdisplay: flex;\n\tjustify-content: flex-end;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_column__ezvMq {\n\tdisplay: flex;\n\tflex-direction: column;\n\tjustify-content: center;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_columnStart__C7P44 {\n\tdisplay: flex;\n\tflex-direction: column;\n\tjustify-content: flex-start;\n\talign-items: flex-start;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_columnStartCenter__PKcrG {\n\tdisplay: flex;\n\tflex-direction: column;\n\tjustify-content: flex-start;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_columnBetween__ERfp7 {\n\tdisplay: flex;\n\tflex-direction: column;\n\tjustify-content: space-between;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_columnEnd__lLJuc {\n\tdisplay: flex;\n\tflex-direction: column;\n\tjustify-content: flex-end;\n\talign-items: flex-end;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}\n\n.ProgressIndicator-module_container__pW2gW {\n\tposition: var(--pi-position);\n\ttop: var(--pi-inset);\n\tbottom: var(--pi-inset);\n\tleft: var(--pi-inset);\n\tright: var(--pi-inset);\n\tcolor: var(--core-text-disabled);\n\tz-index: var(--elevation-status);\n}\n\n.ProgressIndicator-module_iconWrapper__puIt4 {\n\tmin-width: var(--pi-icon-size);\n\tmax-width: var(--pi-icon-size);\n\tmax-height: var(--pi-icon-size);\n\tmin-height: var(--pi-icon-size);\n\theight: var(--pi-icon-size);\n\twidth: var(--pi-icon-size);\n\tpadding: 0;\n\tbackground: none;\n\tborder-radius: 100%;\n}\n");
96
+ styleInject(".flexBox-module_row__z24tF {\n\tdisplay: flex;\n\tjustify-content: center;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_rowBetween__5FEvi {\n\tdisplay: flex;\n\tjustify-content: space-between;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_rowStart__4tcxS {\n\tdisplay: flex;\n\tjustify-content: flex-start;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_rowEnd__rVdVm {\n\tdisplay: flex;\n\tjustify-content: flex-end;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_column__ezvMq {\n\tdisplay: flex;\n\tflex-direction: column;\n\tjustify-content: center;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_columnStart__C7P44 {\n\tdisplay: flex;\n\tflex-direction: column;\n\tjustify-content: flex-start;\n\talign-items: flex-start;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_columnStartCenter__PKcrG {\n\tdisplay: flex;\n\tflex-direction: column;\n\tjustify-content: flex-start;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_columnBetween__ERfp7 {\n\tdisplay: flex;\n\tflex-direction: column;\n\tjustify-content: space-between;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_columnEnd__lLJuc {\n\tdisplay: flex;\n\tflex-direction: column;\n\tjustify-content: flex-end;\n\talign-items: flex-end;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}\n\n.ProgressIndicator-module_container__pW2gW {\n\tdisplay: var(--pi-display) !important;\n\tposition: var(--pi-position);\n\ttop: var(--pi-inset);\n\tbottom: var(--pi-inset);\n\tleft: var(--pi-inset);\n\tright: var(--pi-inset);\n\tcolor: var(--core-text-disabled);\n\tz-index: var(--elevation-status);\n}\n\n.ProgressIndicator-module_iconWrapper__puIt4 {\n\tmin-width: var(--pi-icon-size);\n\tmax-width: var(--pi-icon-size);\n\tmax-height: var(--pi-icon-size);\n\tmin-height: var(--pi-icon-size);\n\theight: var(--pi-icon-size);\n\twidth: var(--pi-icon-size);\n\tpadding: 0;\n\tbackground: none;\n\tborder-radius: 100%;\n}\n");
96
97
 
97
98
  const OpenCircle = (size, secondsPerSpin, color, stroke = 1.5, playing = !1) => jsxs(motion.svg, {
98
99
  xmlns: "http://www.w3.org/2000/svg",
@@ -6,11 +6,13 @@ import { useTheme } from "../hooks/useTheme.mjs";
6
6
 
7
7
  import "../theme/colors.mjs";
8
8
 
9
+ import "./tslib.es6-C-olHjXV.mjs";
10
+
9
11
  import "../hooks/useWindow.mjs";
10
12
 
11
- import { B as Button } from "./Button-daLv0i7S.mjs";
13
+ import { B as Button } from "./Button-sEYjFcR2.mjs";
12
14
 
13
- import { F as FileList } from "./FileList-5LElsgoE.mjs";
15
+ import { F as FileList } from "./FileList-0Dzx15hl.mjs";
14
16
 
15
17
  import { s as styleInject } from "./style-inject.es-D0BjEaN8.mjs";
16
18
 
@@ -1,12 +1,12 @@
1
- import { _ as __rest } from "./tslib.es6-c-7TIv71.mjs";
1
+ import { a as __rest } from "./tslib.es6-C-olHjXV.mjs";
2
2
 
3
3
  import { jsxs, jsx } from "react/jsx-runtime";
4
4
 
5
5
  import React, { useState, useEffect, useCallback, useMemo } from "react";
6
6
 
7
- import { s as setStyle } from "./misc-N8KLjOXc.mjs";
7
+ import { s as setStyle } from "./misc-BeEWwOaJ.mjs";
8
8
 
9
- import { I as Icon } from "./Icon-CUSQtytG.mjs";
9
+ import { I as Icon } from "./Icon-KDwlMXzH.mjs";
10
10
 
11
11
  import { s as styleInject } from "./style-inject.es-D0BjEaN8.mjs";
12
12