@opentiny/tiny-robot 0.4.2-alpha.6 → 0.4.2-alpha.8

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 (263) hide show
  1. package/dist/action-group/index.js +4 -4
  2. package/dist/anchor/index.js +44 -44
  3. package/dist/bubble/index.js +10 -9
  4. package/dist/drag-overlay/index.js +1 -1
  5. package/dist/dropdown-menu/index.js +1 -1
  6. package/dist/index.d.ts +5239 -49
  7. package/dist/index.js +129 -118
  8. package/dist/index2.js +2 -2
  9. package/dist/index4.js +384 -321
  10. package/dist/index5.js +247 -240
  11. package/dist/index6.js +597 -547
  12. package/dist/index7.js +28 -28
  13. package/dist/index8.js +8 -8
  14. package/dist/layout/index.js +1243 -0
  15. package/dist/sender/index.js +2 -2
  16. package/dist/sender-actions/index.js +1 -1
  17. package/dist/style.css +1 -1
  18. package/dist/suggestion-pills/index.js +1 -1
  19. package/dist/suggestion-popover/index.js +1 -1
  20. package/dist/theme-provider/index.js +41 -32
  21. package/dist/useSlotRefs.js +1 -1
  22. package/dist/utils.js +1 -1
  23. package/package.json +3 -22
  24. package/dist/action-group/ActionGroup.vue.d.ts +0 -26
  25. package/dist/action-group/ActionGroupItem.vue.d.ts +0 -18
  26. package/dist/action-group/index.d.ts +0 -12
  27. package/dist/action-group/index.type.d.ts +0 -17
  28. package/dist/anchor/components/AnchorItem.vue.d.ts +0 -24
  29. package/dist/anchor/components/AnchorList.vue.d.ts +0 -20
  30. package/dist/anchor/components/AnchorOverlay.vue.d.ts +0 -33
  31. package/dist/anchor/components/AnchorSearch.vue.d.ts +0 -7
  32. package/dist/anchor/composables/index.d.ts +0 -5
  33. package/dist/anchor/composables/useActiveSync.d.ts +0 -10
  34. package/dist/anchor/composables/useFloatingOffset.d.ts +0 -6
  35. package/dist/anchor/composables/useNavController.d.ts +0 -12
  36. package/dist/anchor/composables/useOverlayInteractions.d.ts +0 -6
  37. package/dist/anchor/composables/useTargetFeedback.d.ts +0 -5
  38. package/dist/anchor/defaults.d.ts +0 -16
  39. package/dist/anchor/index.d.ts +0 -7
  40. package/dist/anchor/index.type.d.ts +0 -60
  41. package/dist/anchor/index.vue.d.ts +0 -159
  42. package/dist/anchor/internal.type.d.ts +0 -103
  43. package/dist/anchor/utils/scroll.d.ts +0 -7
  44. package/dist/anchor/utils/target.d.ts +0 -6
  45. package/dist/attachments/components/FileCard.vue.d.ts +0 -18
  46. package/dist/attachments/components/ImagePreview.vue.d.ts +0 -17
  47. package/dist/attachments/components/index.d.ts +0 -2
  48. package/dist/attachments/composables/index.d.ts +0 -5
  49. package/dist/attachments/composables/useFileCard.d.ts +0 -15
  50. package/dist/attachments/composables/useFileType.d.ts +0 -20
  51. package/dist/attachments/composables/useImagePreview.d.ts +0 -18
  52. package/dist/attachments/composables/useListType.d.ts +0 -11
  53. package/dist/attachments/index.d.ts +0 -7
  54. package/dist/attachments/index.type.d.ts +0 -70
  55. package/dist/attachments/index.vue.d.ts +0 -27
  56. package/dist/attachments/utils.d.ts +0 -3
  57. package/dist/base-popper/components/Popper.vue.d.ts +0 -28
  58. package/dist/base-popper/index.d.ts +0 -2
  59. package/dist/base-popper/index.vue.d.ts +0 -41
  60. package/dist/bubble/Bubble.vue.d.ts +0 -39
  61. package/dist/bubble/BubbleBoxWrapper.vue.d.ts +0 -22
  62. package/dist/bubble/BubbleContentWrapper.vue.d.ts +0 -16
  63. package/dist/bubble/BubbleItem.vue.d.ts +0 -36
  64. package/dist/bubble/BubbleList.vue.d.ts +0 -41
  65. package/dist/bubble/BubbleProvider.vue.d.ts +0 -18
  66. package/dist/bubble/composables/index.d.ts +0 -10
  67. package/dist/bubble/composables/useBubbleBoxRenderer.d.ts +0 -18
  68. package/dist/bubble/composables/useBubbleContentRenderer.d.ts +0 -18
  69. package/dist/bubble/composables/useBubbleStateChange.d.ts +0 -2
  70. package/dist/bubble/composables/useBubbleStore.d.ts +0 -16
  71. package/dist/bubble/composables/useContentResolver.d.ts +0 -5
  72. package/dist/bubble/composables/useCopyCleanup.d.ts +0 -6
  73. package/dist/bubble/composables/useMessageContent.d.ts +0 -5
  74. package/dist/bubble/composables/useMessageGroup.d.ts +0 -4
  75. package/dist/bubble/composables/useOmitMessageFields.d.ts +0 -12
  76. package/dist/bubble/composables/useToolCall.d.ts +0 -25
  77. package/dist/bubble/constants.d.ts +0 -42
  78. package/dist/bubble/index.d.ts +0 -19
  79. package/dist/bubble/index.type.d.ts +0 -171
  80. package/dist/bubble/renderers/Box.vue.d.ts +0 -18
  81. package/dist/bubble/renderers/Image.vue.d.ts +0 -4
  82. package/dist/bubble/renderers/Loading.vue.d.ts +0 -4
  83. package/dist/bubble/renderers/Markdown.vue.d.ts +0 -4
  84. package/dist/bubble/renderers/Reasoning.vue.d.ts +0 -9
  85. package/dist/bubble/renderers/Text.vue.d.ts +0 -4
  86. package/dist/bubble/renderers/Tool.vue.d.ts +0 -14
  87. package/dist/bubble/renderers/ToolRole.vue.d.ts +0 -4
  88. package/dist/bubble/renderers/Tools.vue.d.ts +0 -4
  89. package/dist/bubble/renderers/allRenderers.d.ts +0 -93
  90. package/dist/bubble/renderers/defaultRenderers.d.ts +0 -27
  91. package/dist/bubble/utils.d.ts +0 -7
  92. package/dist/chat/components/ChatConversation.vue.d.ts +0 -267
  93. package/dist/chat/components/ChatLauncherButton.vue.d.ts +0 -12
  94. package/dist/chat/components/ChatMcpTrigger.vue.d.ts +0 -30
  95. package/dist/chat/components/ChatThemeToggleButton.vue.d.ts +0 -6
  96. package/dist/chat/components/ChatWelcome.vue.d.ts +0 -14
  97. package/dist/chat/components/icons/IconModelAliyunBailian.vue.d.ts +0 -7
  98. package/dist/chat/components/icons/IconModelDeepseek.vue.d.ts +0 -7
  99. package/dist/chat/components/icons/index.d.ts +0 -5
  100. package/dist/chat/composables/useChatConversation.d.ts +0 -37
  101. package/dist/chat/composables/useChatMcp.d.ts +0 -29
  102. package/dist/chat/composables/useChatModel.d.ts +0 -27
  103. package/dist/chat/index.d.ts +0 -9
  104. package/dist/chat/index.js +0 -13902
  105. package/dist/chat/index.type.d.ts +0 -92
  106. package/dist/chat/index.vue.d.ts +0 -51
  107. package/dist/chat/locale.d.ts +0 -12
  108. package/dist/chat/mcpServers.d.ts +0 -3
  109. package/dist/container/index.d.ts +0 -7
  110. package/dist/container/index.type.d.ts +0 -20
  111. package/dist/container/index.vue.d.ts +0 -32
  112. package/dist/conversations/index.d.ts +0 -7
  113. package/dist/conversations/index.vue.d.ts +0 -2
  114. package/dist/drag-overlay/constants.d.ts +0 -17
  115. package/dist/drag-overlay/directives/vDropzone.d.ts +0 -14
  116. package/dist/drag-overlay/index.d.ts +0 -7
  117. package/dist/drag-overlay/index.type.d.ts +0 -105
  118. package/dist/drag-overlay/index.vue.d.ts +0 -20
  119. package/dist/dropdown-menu/composables/usePopperHover.d.ts +0 -6
  120. package/dist/dropdown-menu/index.d.ts +0 -7
  121. package/dist/dropdown-menu/index.type.d.ts +0 -42
  122. package/dist/dropdown-menu/index.vue.d.ts +0 -217
  123. package/dist/feedback/components/SourceList.vue.d.ts +0 -11
  124. package/dist/feedback/components/index.d.ts +0 -1
  125. package/dist/feedback/index.d.ts +0 -7
  126. package/dist/feedback/index.type.d.ts +0 -25
  127. package/dist/feedback/index.vue.d.ts +0 -13
  128. package/dist/flow-layout-buttons/index.d.ts +0 -7
  129. package/dist/flow-layout-buttons/index.type.d.ts +0 -35
  130. package/dist/flow-layout-buttons/index.vue.d.ts +0 -22
  131. package/dist/history/components/Empty.vue.d.ts +0 -7
  132. package/dist/history/components/MenuList.vue.d.ts +0 -24
  133. package/dist/history/composables/useRenameEditor.d.ts +0 -22
  134. package/dist/history/constants.d.ts +0 -1
  135. package/dist/history/index.d.ts +0 -7
  136. package/dist/history/index.type.d.ts +0 -33
  137. package/dist/history/index.vue.d.ts +0 -18
  138. package/dist/icon-button/index.d.ts +0 -7
  139. package/dist/icon-button/index.type.d.ts +0 -7
  140. package/dist/icon-button/index.vue.d.ts +0 -6
  141. package/dist/mcp-add-form/components/CodeEditor.vue.d.ts +0 -9
  142. package/dist/mcp-add-form/components/FormEditor.vue.d.ts +0 -10
  143. package/dist/mcp-add-form/components/index.d.ts +0 -2
  144. package/dist/mcp-add-form/index.d.ts +0 -7
  145. package/dist/mcp-add-form/index.type.d.ts +0 -19
  146. package/dist/mcp-add-form/index.vue.d.ts +0 -13
  147. package/dist/mcp-server-picker/components/NoData.vue.d.ts +0 -7
  148. package/dist/mcp-server-picker/components/PluginCard.vue.d.ts +0 -40
  149. package/dist/mcp-server-picker/components/PluginModal.vue.d.ts +0 -15
  150. package/dist/mcp-server-picker/components/index.d.ts +0 -3
  151. package/dist/mcp-server-picker/index.d.ts +0 -7
  152. package/dist/mcp-server-picker/index.type.d.ts +0 -99
  153. package/dist/mcp-server-picker/index.vue.d.ts +0 -71
  154. package/dist/prompts/index.d.ts +0 -12
  155. package/dist/prompts/index.type.d.ts +0 -59
  156. package/dist/prompts/prompt.vue.d.ts +0 -5
  157. package/dist/prompts/prompts.vue.d.ts +0 -20
  158. package/dist/sender/components/editor-content/index.vue.d.ts +0 -4
  159. package/dist/sender/components/footer/index.vue.d.ts +0 -38
  160. package/dist/sender/components/layouts/MultiLineLayout.vue.d.ts +0 -43
  161. package/dist/sender/components/layouts/SingleLineLayout.vue.d.ts +0 -32
  162. package/dist/sender/composables/index.d.ts +0 -7
  163. package/dist/sender/composables/useAutoSize.d.ts +0 -5
  164. package/dist/sender/composables/useEditor.d.ts +0 -13
  165. package/dist/sender/composables/useKeyboardShortcuts.d.ts +0 -7
  166. package/dist/sender/composables/useModeSwitch.d.ts +0 -4
  167. package/dist/sender/composables/useSenderCore.d.ts +0 -31
  168. package/dist/sender/composables/useSlotScope.d.ts +0 -10
  169. package/dist/sender/context/index.d.ts +0 -6
  170. package/dist/sender/context/types.d.ts +0 -7
  171. package/dist/sender/extensions/constants.d.ts +0 -94
  172. package/dist/sender/extensions/index.d.ts +0 -12
  173. package/dist/sender/extensions/mention/commands.d.ts +0 -20
  174. package/dist/sender/extensions/mention/components/mention-list.vue.d.ts +0 -18
  175. package/dist/sender/extensions/mention/components/mention-view.vue.d.ts +0 -19
  176. package/dist/sender/extensions/mention/extension.d.ts +0 -6
  177. package/dist/sender/extensions/mention/index.d.ts +0 -22
  178. package/dist/sender/extensions/mention/plugin.d.ts +0 -16
  179. package/dist/sender/extensions/mention/types.d.ts +0 -126
  180. package/dist/sender/extensions/mention/utils.d.ts +0 -34
  181. package/dist/sender/extensions/suggestion/extension.d.ts +0 -8
  182. package/dist/sender/extensions/suggestion/index.d.ts +0 -20
  183. package/dist/sender/extensions/suggestion/plugin.d.ts +0 -21
  184. package/dist/sender/extensions/suggestion/suggestion-list.vue.d.ts +0 -46
  185. package/dist/sender/extensions/suggestion/types.d.ts +0 -254
  186. package/dist/sender/extensions/suggestion/utils/filter.d.ts +0 -29
  187. package/dist/sender/extensions/suggestion/utils/highlight.d.ts +0 -73
  188. package/dist/sender/extensions/template/block/extension.d.ts +0 -6
  189. package/dist/sender/extensions/template/block/plugins.d.ts +0 -13
  190. package/dist/sender/extensions/template/block/template-block-view.vue.d.ts +0 -14
  191. package/dist/sender/extensions/template/commands.d.ts +0 -31
  192. package/dist/sender/extensions/template/extension.d.ts +0 -6
  193. package/dist/sender/extensions/template/index.d.ts +0 -21
  194. package/dist/sender/extensions/template/select/dropdown-manager.d.ts +0 -23
  195. package/dist/sender/extensions/template/select/extension.d.ts +0 -5
  196. package/dist/sender/extensions/template/select/plugins.d.ts +0 -34
  197. package/dist/sender/extensions/template/select/template-select-view.vue.d.ts +0 -20
  198. package/dist/sender/extensions/template/types.d.ts +0 -100
  199. package/dist/sender/extensions/template/utils.d.ts +0 -20
  200. package/dist/sender/extensions/utils/id-generator.d.ts +0 -16
  201. package/dist/sender/extensions/utils/index.d.ts +0 -7
  202. package/dist/sender/extensions/utils/keyboard.d.ts +0 -49
  203. package/dist/sender/extensions/utils/position.d.ts +0 -25
  204. package/dist/sender/index.d.ts +0 -136
  205. package/dist/sender/index.type.d.ts +0 -302
  206. package/dist/sender/index.vue.d.ts +0 -90
  207. package/dist/sender/types/base.d.ts +0 -239
  208. package/dist/sender/types/components.d.ts +0 -68
  209. package/dist/sender/types/composables.d.ts +0 -122
  210. package/dist/sender/types/context.d.ts +0 -132
  211. package/dist/sender/types/slots.d.ts +0 -67
  212. package/dist/sender/utils/countGraphemes.d.ts +0 -1
  213. package/dist/sender-actions/action-button/index.vue.d.ts +0 -23
  214. package/dist/sender-actions/clear-button/index.vue.d.ts +0 -2
  215. package/dist/sender-actions/clear-button/useClearButtonState.d.ts +0 -6
  216. package/dist/sender-actions/default-actions/index.vue.d.ts +0 -17
  217. package/dist/sender-actions/index.d.ts +0 -21
  218. package/dist/sender-actions/index.type.d.ts +0 -7
  219. package/dist/sender-actions/submit-button/index.vue.d.ts +0 -2
  220. package/dist/sender-actions/types/common.d.ts +0 -40
  221. package/dist/sender-actions/types/index.d.ts +0 -5
  222. package/dist/sender-actions/types/tooltip.d.ts +0 -7
  223. package/dist/sender-actions/upload-button/index.type.d.ts +0 -57
  224. package/dist/sender-actions/upload-button/index.vue.d.ts +0 -16
  225. package/dist/sender-actions/utils/tooltip.d.ts +0 -8
  226. package/dist/sender-actions/voice-button/index.type.d.ts +0 -78
  227. package/dist/sender-actions/voice-button/index.vue.d.ts +0 -43
  228. package/dist/sender-actions/voice-button/speech.types.d.ts +0 -40
  229. package/dist/sender-actions/voice-button/useSpeechHandler.d.ts +0 -10
  230. package/dist/sender-actions/voice-button/webSpeechHandler.d.ts +0 -40
  231. package/dist/sender-actions/word-counter/index.vue.d.ts +0 -2
  232. package/dist/sender-compat/index.d.ts +0 -7
  233. package/dist/sender-compat/index.type.d.ts +0 -91
  234. package/dist/sender-compat/index.vue.d.ts +0 -532
  235. package/dist/shared/composables/createTeleport.d.ts +0 -2
  236. package/dist/shared/composables/index.d.ts +0 -5
  237. package/dist/shared/composables/useAutoScroll.d.ts +0 -25
  238. package/dist/shared/composables/useSlotRefs.d.ts +0 -12
  239. package/dist/shared/composables/useTeleportTarget.d.ts +0 -11
  240. package/dist/shared/composables/useTouchDevice.d.ts +0 -3
  241. package/dist/shared/utils.d.ts +0 -7
  242. package/dist/suggestion-pills/components/PillButton.vue.d.ts +0 -16
  243. package/dist/suggestion-pills/components/index.d.ts +0 -1
  244. package/dist/suggestion-pills/index.d.ts +0 -13
  245. package/dist/suggestion-pills/index.type.d.ts +0 -45
  246. package/dist/suggestion-pills/index.vue.d.ts +0 -44
  247. package/dist/suggestion-popover/components/Backdrop.vue.d.ts +0 -5
  248. package/dist/suggestion-popover/components/Header.vue.d.ts +0 -4
  249. package/dist/suggestion-popover/components/Loading.vue.d.ts +0 -17
  250. package/dist/suggestion-popover/components/NoData.vue.d.ts +0 -17
  251. package/dist/suggestion-popover/components/Tooltip.vue.d.ts +0 -19
  252. package/dist/suggestion-popover/index.d.ts +0 -7
  253. package/dist/suggestion-popover/index.type.d.ts +0 -80
  254. package/dist/suggestion-popover/index.vue.d.ts +0 -262
  255. package/dist/theme-provider/constants.d.ts +0 -6
  256. package/dist/theme-provider/index.d.ts +0 -9
  257. package/dist/theme-provider/index.type.d.ts +0 -18
  258. package/dist/theme-provider/index.vue.d.ts +0 -32
  259. package/dist/theme-provider/useTheme.d.ts +0 -11
  260. package/dist/useTheme.js +0 -22
  261. package/dist/welcome/index.d.ts +0 -7
  262. package/dist/welcome/index.type.d.ts +0 -10
  263. package/dist/welcome/index.vue.d.ts +0 -18
package/dist/index5.js CHANGED
@@ -1,86 +1,104 @@
1
- class w extends Error {
2
- constructor(e, r) {
3
- super(`${e} at position ${r}`), this.position = r;
1
+ class m extends Error {
2
+ constructor(n, r) {
3
+ super(`${n} at position ${r}`), this.position = r;
4
4
  }
5
5
  }
6
- const q = 32, ae = 10, P = 9, H = 13, de = 160, pe = 6158, he = 8192, ge = 8203, we = 8239, me = 8287, Ce = 12288, be = 65279;
7
- function Se(n) {
8
- return /^[0-9A-Fa-f]$/.test(n);
6
+ const q = 32, de = 10, P = 9, H = 13, he = 160, pe = 6158, ge = 8192, we = 8203, me = 8239, Ce = 8287, be = 12288, Se = 65279;
7
+ function ke(e) {
8
+ return /^[0-9A-Fa-f]$/.test(e);
9
9
  }
10
- function d(n) {
11
- return n >= "0" && n <= "9";
10
+ function d(e) {
11
+ return e >= "0" && e <= "9";
12
12
  }
13
- function Ne(n) {
14
- return n >= " ";
13
+ function Ne(e) {
14
+ return e >= " ";
15
15
  }
16
- function O(n) {
16
+ function N(e) {
17
17
  return `,:[]/{}()
18
- +`.includes(n);
18
+ +`.includes(e);
19
19
  }
20
- function K(n) {
21
- return n >= "a" && n <= "z" || n >= "A" && n <= "Z" || n === "_" || n === "$";
20
+ function Z(e) {
21
+ return e >= "a" && e <= "z" || e >= "A" && e <= "Z" || e === "_" || e === "$";
22
22
  }
23
- function L(n) {
24
- return n >= "a" && n <= "z" || n >= "A" && n <= "Z" || n === "_" || n === "$" || n >= "0" && n <= "9";
23
+ function W(e) {
24
+ return e >= "a" && e <= "z" || e >= "A" && e <= "Z" || e === "_" || e === "$" || e >= "0" && e <= "9";
25
25
  }
26
- const M = /^(http|https|ftp|mailto|file|data|irc):\/\/$/, F = /^[A-Za-z0-9-._~:/?#@!$&'()*+;=]$/;
27
- function R(n) {
26
+ const F = /^(http|https|ftp|mailto|file|data|irc):\/\/$/, L = /^[A-Za-z0-9-._~:/?#@!$&'()*+;=]$/;
27
+ function R(e) {
28
28
  return `,[]/{}
29
- +`.includes(n);
29
+ +`.includes(e);
30
30
  }
31
- function _(n) {
32
- return E(n) || ke.test(n);
31
+ function _(e) {
32
+ return E(e) || $e.test(e);
33
33
  }
34
- const ke = /^[[{\w-]$/;
35
- function $e(n) {
36
- return n === `
37
- ` || n === "\r" || n === " " || n === "\b" || n === "\f";
34
+ const $e = /^[[{\w-]$/;
35
+ function Ae(e) {
36
+ return e === `
37
+ ` || e === "\r" || e === " " || e === "\b" || e === "\f";
38
38
  }
39
- function p(n, e) {
40
- const r = n.charCodeAt(e);
41
- return r === q || r === ae || r === P || r === H;
39
+ function h(e, n) {
40
+ const r = e.charCodeAt(n);
41
+ return r === q || r === de || r === P || r === H;
42
42
  }
43
- function Ae(n, e) {
44
- const r = n.charCodeAt(e);
43
+ function Oe(e, n) {
44
+ const r = e.charCodeAt(n);
45
45
  return r === q || r === P || r === H;
46
46
  }
47
- function Oe(n, e) {
48
- const r = n.charCodeAt(e);
49
- return r === de || r === pe || r >= he && r <= ge || r === we || r === me || r === Ce || r === be;
47
+ function Ee(e, n) {
48
+ const r = e.charCodeAt(n);
49
+ return r === he || r === pe || r >= ge && r <= we || r === me || r === Ce || r === be || r === Se;
50
50
  }
51
- function E(n) {
52
- return G(n) || B(n);
51
+ function E(e) {
52
+ return G(e) || B(e);
53
53
  }
54
- function G(n) {
55
- return n === '"' || n === "“" || n === "”";
54
+ function G(e) {
55
+ return e === '"' || e === "“" || e === "”";
56
56
  }
57
- function z(n) {
58
- return n === '"';
57
+ function z(e) {
58
+ return e === '"';
59
59
  }
60
- function B(n) {
61
- return n === "'" || n === "‘" || n === "’" || n === "`" || n === "´";
60
+ function B(e) {
61
+ return e === "'" || e === "‘" || e === "’" || e === "`" || e === "´";
62
62
  }
63
- function T(n) {
64
- return n === "'";
63
+ function T(e) {
64
+ return e === "'";
65
65
  }
66
- function S(n, e) {
66
+ function $(e, n) {
67
67
  let r = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : !1;
68
- const N = n.lastIndexOf(e);
69
- return N !== -1 ? n.substring(0, N) + (r ? "" : n.substring(N + 1)) : n;
68
+ const t = e.lastIndexOf(n);
69
+ return t !== -1 ? e.substring(0, t) + (r ? "" : e.substring(t + 1)) : e;
70
70
  }
71
- function l(n, e) {
72
- let r = n.length;
73
- if (!p(n, r - 1))
74
- return n + e;
75
- for (; p(n, r - 1); )
71
+ function f(e, n) {
72
+ let r = e.length;
73
+ if (!h(e, r - 1))
74
+ return e + n;
75
+ for (; h(e, r - 1); )
76
76
  r--;
77
- return n.substring(0, r) + e + n.substring(r);
77
+ return e.substring(0, r) + n + e.substring(r);
78
78
  }
79
- function Ee(n, e, r) {
80
- return n.substring(0, e) + n.substring(e + r);
79
+ function ye(e, n, r) {
80
+ return e.substring(0, n) + e.substring(n + r);
81
81
  }
82
- function ye(n) {
83
- return /[,\n][ \t\r]*$/.test(n);
82
+ function ve(e) {
83
+ return /[,\n][ \t\r]*$/.test(e);
84
+ }
85
+ function C(e, n) {
86
+ let r = 0;
87
+ for (let t = 0; t < e.length; t++)
88
+ e.charAt(t) === n && r++;
89
+ return r;
90
+ }
91
+ function Qe(e, n) {
92
+ switch (n) {
93
+ case ")":
94
+ return C(e, "(") > C(e, ")");
95
+ case "]":
96
+ return C(e, "[") > C(e, "]");
97
+ case "}":
98
+ return C(e, "{") > C(e, "}");
99
+ default:
100
+ return !1;
101
+ }
84
102
  }
85
103
  const We = {
86
104
  "\b": "\\b",
@@ -88,7 +106,7 @@ const We = {
88
106
  "\n": "\\n",
89
107
  "\r": "\\r",
90
108
  " ": "\\t"
91
- }, ve = {
109
+ }, Be = {
92
110
  '"': '"',
93
111
  "\\": "\\",
94
112
  "/": "/",
@@ -100,288 +118,277 @@ const We = {
100
118
  t: " "
101
119
  // note that \u is handled separately in parseString()
102
120
  };
103
- function Be(n) {
104
- let e = 0, r = "";
105
- I(["```", "[```", "{```"]), m() || ce(), I(["```", "```]", "```}"]);
106
- const y = C(",");
107
- for (y && c(), _(n[e]) && ye(r) ? (y || (r = l(r, ",")), re()) : y && (r = S(r, ",")); n[e] === "}" || n[e] === "]"; )
108
- e++, c();
109
- if (e >= n.length)
121
+ function Ue(e) {
122
+ let n = 0, r = "";
123
+ I(["```", "[```", "{```"]), b() || fe(), I(["```", "```]", "```}"]);
124
+ const y = S(",");
125
+ for (y && l(), _(e[n]) && ve(r) ? (y || (r = f(r, ",")), re()) : y && (r = $(r, ",")); e[n] === "}" || e[n] === "]"; )
126
+ n++, l();
127
+ if (n >= e.length)
110
128
  return r;
111
- te();
112
- function m() {
113
- c();
114
- const i = ee() || ne() || h() || ie() || se() || j(!1) || ue();
115
- return c(), i;
129
+ le();
130
+ function b() {
131
+ l();
132
+ const i = ee() || ne() || g() || ie() || se() || j(!1) || ue();
133
+ return l(), i;
116
134
  }
117
- function c() {
135
+ function l() {
118
136
  let i = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : !0;
119
- const s = e;
120
- let u = W(i);
137
+ const s = n;
138
+ let u = v(i);
121
139
  do
122
- u = X(), u && (u = W(i));
140
+ u = X(), u && (u = v(i));
123
141
  while (u);
124
- return e > s;
142
+ return n > s;
125
143
  }
126
- function W(i) {
127
- const s = i ? p : Ae;
144
+ function v(i) {
145
+ const s = i ? h : Oe;
128
146
  let u = "";
129
147
  for (; ; )
130
- if (s(n, e))
131
- u += n[e], e++;
132
- else if (Oe(n, e))
133
- u += " ", e++;
148
+ if (s(e, n))
149
+ u += e[n], n++;
150
+ else if (Ee(e, n))
151
+ u += " ", n++;
134
152
  else
135
153
  break;
136
154
  return u.length > 0 ? (r += u, !0) : !1;
137
155
  }
138
156
  function X() {
139
- if (n[e] === "/" && n[e + 1] === "*") {
140
- for (; e < n.length && !Ve(n, e); )
141
- e++;
142
- return e += 2, !0;
157
+ if (e[n] === "/" && e[n + 1] === "*") {
158
+ for (; n < e.length && !Ie(e, n); )
159
+ n++;
160
+ return n += 2, !0;
143
161
  }
144
- if (n[e] === "/" && n[e + 1] === "/") {
145
- for (; e < n.length && n[e] !== `
162
+ if (e[n] === "/" && e[n + 1] === "/") {
163
+ for (; n < e.length && e[n] !== `
146
164
  `; )
147
- e++;
165
+ n++;
148
166
  return !0;
149
167
  }
150
168
  return !1;
151
169
  }
152
170
  function I(i) {
153
171
  if (Y(i)) {
154
- if (K(n[e]))
155
- for (; e < n.length && L(n[e]); )
156
- e++;
157
- return c(), !0;
172
+ if (Z(e[n]))
173
+ for (; n < e.length && W(e[n]); )
174
+ n++;
175
+ return l(), !0;
158
176
  }
159
177
  return !1;
160
178
  }
161
179
  function Y(i) {
162
- W(!0);
180
+ v(!0);
163
181
  for (const s of i) {
164
- const u = e + s.length;
165
- if (n.slice(e, u) === s)
166
- return e = u, !0;
182
+ const u = n + s.length;
183
+ if (e.slice(n, u) === s)
184
+ return n = u, !0;
167
185
  }
168
186
  return !1;
169
187
  }
170
- function C(i) {
171
- return n[e] === i ? (r += n[e], e++, !0) : !1;
188
+ function S(i) {
189
+ return e[n] === i ? (r += e[n], n++, !0) : !1;
172
190
  }
173
- function k(i) {
174
- return n[e] === i ? (e++, !0) : !1;
191
+ function A(i) {
192
+ return e[n] === i ? (n++, !0) : !1;
175
193
  }
176
194
  function x() {
177
- return k("\\");
195
+ return A("\\");
178
196
  }
179
- function Q() {
180
- return c(), n[e] === "." && n[e + 1] === "." && n[e + 2] === "." ? (e += 3, c(), k(","), !0) : !1;
197
+ function U() {
198
+ return l(), e[n] === "." && e[n + 1] === "." && e[n + 2] === "." ? (n += 3, l(), A(","), !0) : !1;
181
199
  }
182
200
  function ee() {
183
- if (n[e] === "{") {
184
- r += "{", e++, c(), k(",") && c();
201
+ if (e[n] === "{") {
202
+ r += "{", n++, l(), A(",") && l();
185
203
  let i = !0;
186
- for (; e < n.length && n[e] !== "}"; ) {
204
+ for (; n < e.length && e[n] !== "}"; ) {
187
205
  let s;
188
- if (i ? (s = !0, i = !1) : (s = C(","), s || (r = l(r, ",")), c()), Q(), !(h() || j(!0))) {
189
- n[e] === "}" || n[e] === "{" || n[e] === "]" || n[e] === "[" || n[e] === void 0 ? r = S(r, ",") : le();
206
+ if (i ? s = !0 : (s = S(","), s || (r = f(r, ",")), l()), U(), !(g() || j(!0))) {
207
+ e[n] === "}" || e[n] === "{" || e[n] === "]" || e[n] === "[" || e[n] === void 0 ? i || (r = $(r, ",")) : te();
190
208
  break;
191
209
  }
192
- c();
193
- const A = C(":"), a = e >= n.length;
194
- A || (_(n[e]) || a ? r = l(r, ":") : J()), m() || (A || a ? r += "null" : J());
210
+ l();
211
+ const O = S(":"), p = n >= e.length;
212
+ O || (_(e[n]) || p ? r = f(r, ":") : K()), b() || (O || p ? r += "null" : K()), i = !1;
195
213
  }
196
- return n[e] === "}" ? (r += "}", e++) : r = l(r, "}"), !0;
214
+ return e[n] === "}" ? (r += "}", n++) : r = f(r, "}"), !0;
197
215
  }
198
216
  return !1;
199
217
  }
200
218
  function ne() {
201
- if (n[e] === "[") {
202
- r += "[", e++, c(), k(",") && c();
219
+ if (e[n] === "[") {
220
+ r += "[", n++, l(), A(",") && l();
203
221
  let i = !0;
204
- for (; e < n.length && n[e] !== "]"; )
205
- if (i ? i = !1 : C(",") || (r = l(r, ",")), Q(), !m()) {
206
- r = S(r, ",");
222
+ for (; n < e.length && e[n] !== "]"; ) {
223
+ if (i || S(",") || (r = f(r, ",")), U(), !b()) {
224
+ i || (r = $(r, ","));
207
225
  break;
208
226
  }
209
- return n[e] === "]" ? (r += "]", e++) : r = l(r, "]"), !0;
227
+ i = !1;
228
+ }
229
+ return e[n] === "]" ? (r += "]", n++) : r = f(r, "]"), !0;
210
230
  }
211
231
  return !1;
212
232
  }
213
233
  function re() {
214
234
  let i = !0, s = !0;
215
235
  for (; s; )
216
- i ? i = !1 : C(",") || (r = l(r, ",")), s = m();
217
- s || (r = S(r, ",")), r = `[
236
+ i ? i = !1 : S(",") || (r = f(r, ",")), s = b();
237
+ s || (r = $(r, ",")), r = `[
218
238
  ${r}
219
239
  ]`;
220
240
  }
221
- function h() {
222
- let i = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : !1, s = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : -1, u = n[e] === "\\";
223
- if (u && (e++, u = !0), E(n[e])) {
224
- const A = z(n[e]) ? z : T(n[e]) ? T : B(n[e]) ? B : G, a = e, b = r.length;
241
+ function g() {
242
+ let i = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : !1, s = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : -1, u = e[n] === "\\";
243
+ if (u && (n++, u = !0), E(e[n])) {
244
+ const O = z(e[n]) ? z : T(e[n]) ? T : B(e[n]) ? B : G, p = n, k = r.length;
225
245
  let o = '"';
226
- for (e++; ; ) {
227
- if (e >= n.length) {
228
- const t = D(e - 1);
229
- return !i && O(n.charAt(t)) ? (e = a, r = r.substring(0, b), h(!0)) : (o = l(o, '"'), r += o, !0);
246
+ for (n++; ; ) {
247
+ if (n >= e.length) {
248
+ const c = D(n - 1);
249
+ return !i && N(e.charAt(c)) ? (n = p, r = r.substring(0, k), g(!0)) : (o = f(o, '"'), r += o, !0);
230
250
  }
231
- if (e === s)
232
- return o = l(o, '"'), r += o, !0;
233
- if (A(n[e])) {
234
- const t = e, V = o.length;
235
- if (o += '"', e++, r += o, c(!1), i || e >= n.length || O(n[e]) || E(n[e]) || d(n[e]))
236
- return U(), !0;
237
- const f = D(t - 1), Z = n.charAt(f);
238
- if (Z === ",")
239
- return e = a, r = r.substring(0, b), h(!1, f);
240
- if (O(Z))
241
- return e = a, r = r.substring(0, b), h(!0);
242
- r = r.substring(0, b), e = t + 1, o = `${o.substring(0, V)}\\${o.substring(V)}`;
243
- } else if (i && R(n[e])) {
244
- if (n[e - 1] === ":" && M.test(n.substring(a + 1, e + 2)))
245
- for (; e < n.length && F.test(n[e]); )
246
- o += n[e], e++;
247
- return o = l(o, '"'), r += o, U(), !0;
248
- } else if (n[e] === "\\") {
249
- const t = n.charAt(e + 1);
250
- if (ve[t] !== void 0)
251
- o += n.slice(e, e + 2), e += 2;
252
- else if (t === "u") {
253
- let f = 2;
254
- for (; f < 6 && Se(n[e + f]); )
255
- f++;
256
- f === 6 ? (o += n.slice(e, e + 6), e += 6) : e + f >= n.length ? e = n.length : fe();
257
- } else t === `
258
- ` ? (o += "\\n", e += 2) : (o += t, e += 2);
251
+ if (n === s)
252
+ return o = f(o, '"'), r += o, !0;
253
+ if (O(e[n])) {
254
+ const c = n, Q = o.length;
255
+ if (o += '"', n++, r += o, l(!1), i || n >= e.length || N(e[n]) && // only count the brackets inside the string when actually needed,
256
+ // i.e. when the quote is directly followed by a closing bracket
257
+ !Qe(o, e[n]) || E(e[n]) && !oe(n) || d(e[n]))
258
+ return V(), !0;
259
+ const a = D(c - 1), M = e.charAt(a);
260
+ if (M === ",")
261
+ return n = p, r = r.substring(0, k), g(!1, a);
262
+ if (N(M))
263
+ return n = p, r = r.substring(0, k), g(!0);
264
+ r = r.substring(0, k), n = c + 1, o = `${o.substring(0, Q)}\\${o.substring(Q)}`;
265
+ } else if (i && R(e[n])) {
266
+ if (e[n - 1] === ":" && F.test(e.substring(p + 1, n + 2)))
267
+ for (; n < e.length && L.test(e[n]); )
268
+ o += e[n], n++;
269
+ return o = f(o, '"'), r += o, V(), !0;
270
+ } else if (e[n] === "\\") {
271
+ const c = e.charAt(n + 1);
272
+ if (Be[c] !== void 0)
273
+ o += e.slice(n, n + 2), n += 2;
274
+ else if (c === "u") {
275
+ let a = 2;
276
+ for (; a < 6 && ke(e[n + a]); )
277
+ a++;
278
+ a === 6 ? (o += e.slice(n, n + 6), n += 6) : n + a >= e.length ? n = e.length : ae();
279
+ } else c === `
280
+ ` ? (o += "\\n", n += 2) : (o += c, n += 2);
259
281
  } else {
260
- const t = n.charAt(e);
261
- t === '"' && n[e - 1] !== "\\" ? (o += `\\${t}`, e++) : $e(t) ? (o += We[t], e++) : (Ne(t) || oe(t), o += t, e++);
282
+ const c = e.charAt(n);
283
+ c === '"' && e[n - 1] !== "\\" ? (o += `\\${c}`, n++) : Ae(c) ? (o += We[c], n++) : (Ne(c) || ce(c), o += c, n++);
262
284
  }
263
285
  u && x();
264
286
  }
265
287
  }
266
288
  return !1;
267
289
  }
268
- function U() {
290
+ function V() {
269
291
  let i = !1;
270
- for (c(); n[e] === "+"; ) {
271
- i = !0, e++, c(), r = S(r, '"', !0);
292
+ for (l(); e[n] === "+"; ) {
293
+ i = !0, n++, l(), r = $(r, '"', !0);
272
294
  const s = r.length;
273
- h() ? r = Ee(r, s, 1) : r = l(r, '"');
295
+ g() ? r = ye(r, s, 1) : r = f(r, '"');
274
296
  }
275
297
  return i;
276
298
  }
277
299
  function ie() {
278
- const i = e;
279
- if (n[e] === "-") {
280
- if (e++, $())
281
- return v(i), !0;
282
- if (!d(n[e]))
283
- return e = i, !1;
284
- }
285
- for (; d(n[e]); )
286
- e++;
287
- if (n[e] === ".") {
288
- if (e++, $())
289
- return v(i), !0;
290
- if (!d(n[e]))
291
- return e = i, !1;
292
- for (; d(n[e]); )
293
- e++;
294
- }
295
- if (n[e] === "e" || n[e] === "E") {
296
- if (e++, (n[e] === "-" || n[e] === "+") && e++, $())
297
- return v(i), !0;
298
- if (!d(n[e]))
299
- return e = i, !1;
300
- for (; d(n[e]); )
301
- e++;
302
- }
303
- if (!$())
304
- return e = i, !1;
305
- if (e > i) {
306
- const s = n.slice(i, e), u = /^0\d/.test(s);
307
- return r += u ? `"${s}"` : s, !0;
300
+ const i = n;
301
+ let s = "", u = !1;
302
+ for (e[n] === "-" && (s += e[n], n++, !d(e[n]) && J() && (s += "0")), e[n] === "0" && d(e[n + 1]) && (u = !0); d(e[n]); )
303
+ s += e[n], n++;
304
+ if (e[n] === ".")
305
+ for ((s === "" || s === "-") && (s += "0"), s += e[n], n++, d(e[n]) || (s += "0"); d(e[n]); )
306
+ s += e[n], n++;
307
+ if (n > i) {
308
+ if (e[n] === "e" || e[n] === "E")
309
+ for (s === "-" && (u = !0), s += e[n], n++, (e[n] === "-" || e[n] === "+") && (s += e[n], n++), d(e[n]) || (s += "0"); d(e[n]); )
310
+ s += e[n], n++;
311
+ return J() ? (r += u ? `"${e.substring(i, n)}"` : s, !0) : (n = i, !1);
308
312
  }
309
313
  return !1;
310
314
  }
311
315
  function se() {
312
- return g("true", "true") || g("false", "false") || g("null", "null") || // repair Python keywords True, False, None
313
- g("True", "true") || g("False", "false") || g("None", "null");
316
+ return w("true", "true") || w("false", "false") || w("null", "null") || // repair Python keywords True, False, None
317
+ w("True", "true") || w("False", "false") || w("None", "null");
314
318
  }
315
- function g(i, s) {
316
- return n.slice(e, e + i.length) === i ? (r += s, e += i.length, !0) : !1;
319
+ function w(i, s) {
320
+ return e.slice(n, n + i.length) === i && !W(e[n + i.length]) ? (r += s, n += i.length, !0) : !1;
317
321
  }
318
322
  function j(i) {
319
- const s = e;
320
- if (K(n[e])) {
321
- for (; e < n.length && L(n[e]); )
322
- e++;
323
- let u = e;
324
- for (; p(n, u); )
323
+ const s = n;
324
+ if (Z(e[n])) {
325
+ for (; n < e.length && W(e[n]); )
326
+ n++;
327
+ let u = n;
328
+ for (; h(e, u); )
325
329
  u++;
326
- if (n[u] === "(")
327
- return e = u + 1, m(), n[e] === ")" && (e++, n[e] === ";" && e++), !0;
330
+ if (e[u] === "(")
331
+ return n = u + 1, b(), e[n] === ")" && (n++, e[n] === ";" && n++), !0;
328
332
  }
329
- for (; e < n.length && !R(n[e]) && !E(n[e]) && (!i || n[e] !== ":"); )
330
- e++;
331
- if (n[e - 1] === ":" && M.test(n.substring(s, e + 2)))
332
- for (; e < n.length && F.test(n[e]); )
333
- e++;
334
- if (e > s) {
335
- for (; p(n, e - 1) && e > 0; )
336
- e--;
337
- const u = n.slice(s, e);
338
- return r += u === "undefined" ? "null" : JSON.stringify(u), n[e] === '"' && e++, !0;
333
+ for (; n < e.length && !R(e[n]) && !E(e[n]) && (!i || e[n] !== ":"); )
334
+ n++;
335
+ if (e[n - 1] === ":" && F.test(e.substring(s, n + 2)))
336
+ for (; n < e.length && L.test(e[n]); )
337
+ n++;
338
+ if (n > s) {
339
+ for (; h(e, n - 1) && n > 0; )
340
+ n--;
341
+ const u = e.slice(s, n);
342
+ return r += u === "undefined" ? "null" : JSON.stringify(u), e[n] === '"' && n++, !0;
339
343
  }
340
344
  }
341
345
  function ue() {
342
- if (n[e] === "/") {
343
- const i = e;
344
- for (e++; e < n.length && (n[e] !== "/" || n[e - 1] === "\\"); )
345
- e++;
346
- return e++, r += JSON.stringify(n.substring(i, e)), !0;
346
+ if (e[n] === "/") {
347
+ const i = n;
348
+ for (n++; n < e.length && (e[n] !== "/" || e[n - 1] === "\\"); )
349
+ n++;
350
+ return n++, r += JSON.stringify(e.substring(i, n)), !0;
347
351
  }
348
352
  }
349
353
  function D(i) {
350
354
  let s = i;
351
- for (; s > 0 && p(n, s); )
355
+ for (; s > 0 && h(e, s); )
352
356
  s--;
353
357
  return s;
354
358
  }
355
- function $() {
356
- return e >= n.length || O(n[e]) || p(n, e);
357
- }
358
- function v(i) {
359
- r += `${n.slice(i, e)}0`;
360
- }
361
359
  function oe(i) {
362
- throw new w(`Invalid character ${JSON.stringify(i)}`, e);
360
+ let s = i + 1;
361
+ for (; s < e.length && h(e, s); )
362
+ s++;
363
+ return s >= e.length || N(e[s]);
363
364
  }
364
- function te() {
365
- throw new w(`Unexpected character ${JSON.stringify(n[e])}`, e);
365
+ function J() {
366
+ return n >= e.length || N(e[n]) || h(e, n);
366
367
  }
367
- function ce() {
368
- throw new w("Unexpected end of json string", n.length);
368
+ function ce(i) {
369
+ throw new m(`Invalid character ${JSON.stringify(i)}`, n);
369
370
  }
370
371
  function le() {
371
- throw new w("Object key expected", e);
372
- }
373
- function J() {
374
- throw new w("Colon expected", e);
372
+ throw new m(`Unexpected character ${JSON.stringify(e[n])}`, n);
375
373
  }
376
374
  function fe() {
377
- const i = n.slice(e, e + 6);
378
- throw new w(`Invalid unicode character "${i}"`, e);
375
+ throw new m("Unexpected end of json string", e.length);
376
+ }
377
+ function te() {
378
+ throw new m("Object key expected", n);
379
+ }
380
+ function K() {
381
+ throw new m("Colon expected", n);
382
+ }
383
+ function ae() {
384
+ const i = e.slice(n, n + 6);
385
+ throw new m(`Invalid unicode character "${i}"`, n);
379
386
  }
380
387
  }
381
- function Ve(n, e) {
382
- return n[e] === "*" && n[e + 1] === "/";
388
+ function Ie(e, n) {
389
+ return e[n] === "*" && e[n + 1] === "/";
383
390
  }
384
391
  export {
385
- w as JSONRepairError,
386
- Be as jsonrepair
392
+ m as JSONRepairError,
393
+ Ue as jsonrepair
387
394
  };