@vitos-pizza/vitos-pizza 0.1.0 → 0.3.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 (1016) hide show
  1. package/AGENTS.md +160 -158
  2. package/CHANGELOG.md +55 -24
  3. package/LICENSE +21 -21
  4. package/README.md +237 -234
  5. package/assets/logo.svg +28 -28
  6. package/package.json +17 -11
  7. package/packages/agent-mode/extensions/index.ts +140 -117
  8. package/packages/agent-mode/package.json +5 -4
  9. package/packages/agent-mode/src/apply-mode.ts +60 -60
  10. package/packages/agent-mode/src/mode-events.ts +102 -102
  11. package/packages/agent-mode/src/modes.ts +43 -43
  12. package/packages/agent-mode/src/plan-instructions.ts +89 -44
  13. package/packages/agent-mode/tsconfig.json +13 -13
  14. package/packages/agent-mode/vitest.config.ts +8 -8
  15. package/packages/keybindings/extensions/index.ts +112 -104
  16. package/packages/keybindings/package.json +1 -1
  17. package/packages/keybindings/presets/shortcuts.json +3 -3
  18. package/packages/keybindings/src/bind.ts +57 -57
  19. package/packages/keybindings/src/config.ts +84 -84
  20. package/packages/keybindings/src/registry.ts +43 -43
  21. package/packages/keybindings/src/types.ts +54 -54
  22. package/packages/keybindings/tsconfig.json +13 -13
  23. package/packages/keybindings/vitest.config.ts +8 -8
  24. package/packages/permission-system/extensions/index.ts +162 -162
  25. package/packages/permission-system/package.json +2 -2
  26. package/packages/permission-system/src/bash/matcher.ts +54 -51
  27. package/packages/permission-system/src/bash/parser.ts +40 -40
  28. package/packages/permission-system/src/config-paths.ts +23 -23
  29. package/packages/permission-system/src/detect-preset-mode.ts +61 -61
  30. package/packages/permission-system/src/expand-home.ts +12 -12
  31. package/packages/permission-system/src/forwarding/forwarder.ts +224 -224
  32. package/packages/permission-system/src/forwarding/subagent-registry.ts +61 -61
  33. package/packages/permission-system/src/gates/path-utils.ts +66 -66
  34. package/packages/permission-system/src/gates/pipeline.ts +151 -155
  35. package/packages/permission-system/src/handlers/before-agent-start.ts +86 -65
  36. package/packages/permission-system/src/handlers/skill-input.ts +1 -1
  37. package/packages/permission-system/src/handlers/tool-call-gate.ts +204 -199
  38. package/packages/permission-system/src/mode-api.ts +44 -44
  39. package/packages/permission-system/src/permission-evaluator.ts +233 -216
  40. package/packages/permission-system/src/permission-session.ts +62 -62
  41. package/packages/permission-system/src/policy-loader.ts +211 -211
  42. package/packages/permission-system/src/sanitizers/skill-prompt.ts +99 -99
  43. package/packages/permission-system/src/sanitizers/system-prompt.ts +221 -221
  44. package/packages/permission-system/src/service.ts +66 -66
  45. package/packages/permission-system/src/session-approvals.ts +4 -1
  46. package/packages/permission-system/src/types.ts +80 -80
  47. package/packages/permission-system/src/ui/approval-summary.ts +43 -43
  48. package/packages/permission-system/src/ui/config-modal.ts +36 -36
  49. package/packages/permission-system/src/ui/permission-dialog.ts +52 -52
  50. package/packages/permission-system/src/wildcard-matcher.ts +81 -81
  51. package/packages/permission-system/src/yaml-frontmatter.ts +84 -84
  52. package/packages/permission-system/src/yolo/runtime-api.ts +49 -49
  53. package/packages/permission-system/tsconfig.json +13 -13
  54. package/packages/permission-system/vitest.config.ts +8 -8
  55. package/packages/question/package.json +1 -1
  56. package/packages/question/src/question-ui.ts +5 -1
  57. package/packages/question/src/register-tool.ts +1 -4
  58. package/packages/session-title/extensions/index.ts +137 -137
  59. package/packages/session-title/package.json +3 -3
  60. package/packages/session-title/src/build-title-prompt.ts +16 -16
  61. package/packages/session-title/src/extract-title-context.ts +55 -55
  62. package/packages/session-title/src/fast-rules.ts +48 -48
  63. package/packages/session-title/src/load-settings.ts +70 -70
  64. package/packages/session-title/src/normalize-title.ts +20 -20
  65. package/packages/session-title/src/parse-title-response.ts +6 -6
  66. package/packages/session-title/src/resolve-title-model.ts +33 -33
  67. package/packages/session-title/src/schedule-title-job.ts +53 -53
  68. package/packages/session-title/src/should-schedule.ts +30 -30
  69. package/packages/session-title/src/title-agent.ts +60 -60
  70. package/packages/session-title/src/truncate-input.ts +10 -10
  71. package/packages/session-title/src/types.ts +29 -29
  72. package/packages/session-title/tsconfig.json +13 -13
  73. package/packages/session-title/vitest.config.ts +8 -8
  74. package/packages/settings-preset/extensions/index.ts +53 -0
  75. package/packages/settings-preset/package.json +19 -0
  76. package/packages/settings-preset/presets/settings.json +15 -0
  77. package/packages/settings-preset/tsconfig.json +11 -0
  78. package/packages/subagents/agents/planner.md +46 -43
  79. package/packages/subagents/agents/scout.md +41 -40
  80. package/packages/subagents/agents/title.md +13 -13
  81. package/packages/subagents/agents/worker.md +36 -36
  82. package/packages/subagents/extensions/index.ts +164 -164
  83. package/packages/subagents/package.json +1 -1
  84. package/packages/subagents/skills/subagents/SKILL.md +86 -80
  85. package/packages/subagents/src/agents.ts +166 -166
  86. package/packages/subagents/src/async/job-tracker.ts +71 -71
  87. package/packages/subagents/src/async/spawn-async.ts +220 -220
  88. package/packages/subagents/src/async/storage.ts +57 -57
  89. package/packages/subagents/src/env.ts +4 -4
  90. package/packages/subagents/src/execute-subagent.ts +285 -285
  91. package/packages/subagents/src/progress.ts +187 -187
  92. package/packages/subagents/src/render-animation.ts +40 -40
  93. package/packages/subagents/src/render.ts +428 -428
  94. package/packages/subagents/src/rpc/channels.ts +21 -21
  95. package/packages/subagents/src/rpc/client.ts +144 -144
  96. package/packages/subagents/src/rpc/server.ts +11 -11
  97. package/packages/subagents/src/run-agent.ts +313 -313
  98. package/packages/subagents/src/runtime.ts +102 -102
  99. package/packages/subagents/src/schema.ts +62 -62
  100. package/packages/subagents/src/spawn.ts +104 -104
  101. package/packages/subagents/src/types.ts +92 -92
  102. package/packages/subagents/src/utils.ts +100 -100
  103. package/packages/subagents/src/wait.ts +159 -159
  104. package/packages/subagents/tsconfig.json +13 -13
  105. package/packages/subagents/vitest.config.ts +8 -8
  106. package/packages/todoist/extensions/index.ts +163 -0
  107. package/{node_modules/@vitos-pizza/subagents → packages/todoist}/package.json +7 -7
  108. package/packages/todoist/src/events.ts +7 -0
  109. package/packages/todoist/src/silent-render.ts +8 -0
  110. package/packages/todoist/src/state.ts +147 -0
  111. package/packages/todoist/src/tools.ts +175 -0
  112. package/packages/todoist/src/types.ts +34 -0
  113. package/packages/todoist/src/widget.ts +109 -0
  114. package/packages/ui-enhancements/package.json +1 -1
  115. package/packages/ui-enhancements/src/chrome/agent-mode-badge.ts +60 -60
  116. package/packages/ui-enhancements/src/chrome/border-status.ts +90 -4
  117. package/packages/ui-enhancements/src/chrome/execute-prompt.ts +83 -0
  118. package/packages/ui-enhancements/src/chrome/resize-recovery.ts +63 -0
  119. package/packages/websearch/package.json +1 -1
  120. package/scripts/sync-pi-manifest.mjs +1 -1
  121. package/node_modules/@vitos-pizza/agent-mode/extensions/index.ts +0 -117
  122. package/node_modules/@vitos-pizza/agent-mode/package.json +0 -31
  123. package/node_modules/@vitos-pizza/agent-mode/src/apply-mode.ts +0 -60
  124. package/node_modules/@vitos-pizza/agent-mode/src/mode-events.ts +0 -102
  125. package/node_modules/@vitos-pizza/agent-mode/src/modes.ts +0 -43
  126. package/node_modules/@vitos-pizza/agent-mode/src/plan-instructions.ts +0 -44
  127. package/node_modules/@vitos-pizza/agent-mode/tests/apply-mode.test.ts +0 -36
  128. package/node_modules/@vitos-pizza/agent-mode/tests/mode-events.test.ts +0 -22
  129. package/node_modules/@vitos-pizza/agent-mode/tests/modes.test.ts +0 -38
  130. package/node_modules/@vitos-pizza/agent-mode/tests/plan-instructions.test.ts +0 -45
  131. package/node_modules/@vitos-pizza/agent-mode/tsconfig.json +0 -13
  132. package/node_modules/@vitos-pizza/agent-mode/vitest.config.ts +0 -8
  133. package/node_modules/@vitos-pizza/keybindings/extensions/index.ts +0 -104
  134. package/node_modules/@vitos-pizza/keybindings/package.json +0 -26
  135. package/node_modules/@vitos-pizza/keybindings/presets/shortcuts.json +0 -3
  136. package/node_modules/@vitos-pizza/keybindings/src/bind.ts +0 -57
  137. package/node_modules/@vitos-pizza/keybindings/src/config.ts +0 -84
  138. package/node_modules/@vitos-pizza/keybindings/src/registry.ts +0 -43
  139. package/node_modules/@vitos-pizza/keybindings/src/types.ts +0 -54
  140. package/node_modules/@vitos-pizza/keybindings/tests/config.test.ts +0 -83
  141. package/node_modules/@vitos-pizza/keybindings/tests/registry.test.ts +0 -142
  142. package/node_modules/@vitos-pizza/keybindings/tsconfig.json +0 -13
  143. package/node_modules/@vitos-pizza/keybindings/vitest.config.ts +0 -8
  144. package/node_modules/@vitos-pizza/permission-system/extensions/index.ts +0 -162
  145. package/node_modules/@vitos-pizza/permission-system/package.json +0 -34
  146. package/node_modules/@vitos-pizza/permission-system/presets/default.json +0 -36
  147. package/node_modules/@vitos-pizza/permission-system/presets/plan.json +0 -25
  148. package/node_modules/@vitos-pizza/permission-system/presets/yolo.json +0 -15
  149. package/node_modules/@vitos-pizza/permission-system/src/bash/matcher.ts +0 -51
  150. package/node_modules/@vitos-pizza/permission-system/src/bash/parser.ts +0 -40
  151. package/node_modules/@vitos-pizza/permission-system/src/config-paths.ts +0 -23
  152. package/node_modules/@vitos-pizza/permission-system/src/detect-preset-mode.ts +0 -61
  153. package/node_modules/@vitos-pizza/permission-system/src/expand-home.ts +0 -12
  154. package/node_modules/@vitos-pizza/permission-system/src/forwarding/forwarder.ts +0 -224
  155. package/node_modules/@vitos-pizza/permission-system/src/forwarding/subagent-registry.ts +0 -61
  156. package/node_modules/@vitos-pizza/permission-system/src/gates/path-utils.ts +0 -66
  157. package/node_modules/@vitos-pizza/permission-system/src/gates/pipeline.ts +0 -155
  158. package/node_modules/@vitos-pizza/permission-system/src/handlers/before-agent-start.ts +0 -65
  159. package/node_modules/@vitos-pizza/permission-system/src/handlers/skill-input.ts +0 -1
  160. package/node_modules/@vitos-pizza/permission-system/src/handlers/tool-call-gate.ts +0 -199
  161. package/node_modules/@vitos-pizza/permission-system/src/mode-api.ts +0 -44
  162. package/node_modules/@vitos-pizza/permission-system/src/permission-evaluator.ts +0 -216
  163. package/node_modules/@vitos-pizza/permission-system/src/permission-session.ts +0 -62
  164. package/node_modules/@vitos-pizza/permission-system/src/policy-loader.ts +0 -211
  165. package/node_modules/@vitos-pizza/permission-system/src/sanitizers/skill-prompt.ts +0 -99
  166. package/node_modules/@vitos-pizza/permission-system/src/sanitizers/system-prompt.ts +0 -221
  167. package/node_modules/@vitos-pizza/permission-system/src/service.ts +0 -66
  168. package/node_modules/@vitos-pizza/permission-system/src/session-approvals.ts +0 -1
  169. package/node_modules/@vitos-pizza/permission-system/src/types.ts +0 -80
  170. package/node_modules/@vitos-pizza/permission-system/src/ui/approval-summary.ts +0 -43
  171. package/node_modules/@vitos-pizza/permission-system/src/ui/config-modal.ts +0 -36
  172. package/node_modules/@vitos-pizza/permission-system/src/ui/permission-dialog.ts +0 -52
  173. package/node_modules/@vitos-pizza/permission-system/src/wildcard-matcher.ts +0 -81
  174. package/node_modules/@vitos-pizza/permission-system/src/yaml-frontmatter.ts +0 -84
  175. package/node_modules/@vitos-pizza/permission-system/src/yolo/runtime-api.ts +0 -49
  176. package/node_modules/@vitos-pizza/permission-system/tests/bash-parser.test.ts +0 -32
  177. package/node_modules/@vitos-pizza/permission-system/tests/detect-preset-mode.test.ts +0 -68
  178. package/node_modules/@vitos-pizza/permission-system/tests/forwarder.test.ts +0 -55
  179. package/node_modules/@vitos-pizza/permission-system/tests/gates.test.ts +0 -61
  180. package/node_modules/@vitos-pizza/permission-system/tests/path-utils.test.ts +0 -68
  181. package/node_modules/@vitos-pizza/permission-system/tests/permission-evaluator.test.ts +0 -55
  182. package/node_modules/@vitos-pizza/permission-system/tests/policy-loader.test.ts +0 -25
  183. package/node_modules/@vitos-pizza/permission-system/tests/system-prompt-sanitizer.test.ts +0 -22
  184. package/node_modules/@vitos-pizza/permission-system/tests/wildcard-matcher.test.ts +0 -27
  185. package/node_modules/@vitos-pizza/permission-system/tsconfig.json +0 -13
  186. package/node_modules/@vitos-pizza/permission-system/vitest.config.ts +0 -8
  187. package/node_modules/@vitos-pizza/question/extensions/index.ts +0 -79
  188. package/node_modules/@vitos-pizza/question/package.json +0 -26
  189. package/node_modules/@vitos-pizza/question/src/forwarding/channels.ts +0 -6
  190. package/node_modules/@vitos-pizza/question/src/forwarding/file-watcher.ts +0 -106
  191. package/node_modules/@vitos-pizza/question/src/forwarding/forwarder.ts +0 -187
  192. package/node_modules/@vitos-pizza/question/src/parent-session.ts +0 -18
  193. package/node_modules/@vitos-pizza/question/src/question-ui.ts +0 -238
  194. package/node_modules/@vitos-pizza/question/src/register-tool.ts +0 -224
  195. package/node_modules/@vitos-pizza/question/src/types.ts +0 -41
  196. package/node_modules/@vitos-pizza/question/tests/forwarder.test.ts +0 -66
  197. package/node_modules/@vitos-pizza/question/tests/parent-session.test.ts +0 -29
  198. package/node_modules/@vitos-pizza/question/tests/register-tool-render.test.ts +0 -45
  199. package/node_modules/@vitos-pizza/session-title/extensions/index.ts +0 -137
  200. package/node_modules/@vitos-pizza/session-title/package.json +0 -37
  201. package/node_modules/@vitos-pizza/session-title/src/build-title-prompt.ts +0 -16
  202. package/node_modules/@vitos-pizza/session-title/src/extract-title-context.ts +0 -55
  203. package/node_modules/@vitos-pizza/session-title/src/fast-rules.ts +0 -48
  204. package/node_modules/@vitos-pizza/session-title/src/load-settings.ts +0 -70
  205. package/node_modules/@vitos-pizza/session-title/src/normalize-title.ts +0 -20
  206. package/node_modules/@vitos-pizza/session-title/src/parse-title-response.ts +0 -6
  207. package/node_modules/@vitos-pizza/session-title/src/resolve-title-model.ts +0 -33
  208. package/node_modules/@vitos-pizza/session-title/src/schedule-title-job.ts +0 -53
  209. package/node_modules/@vitos-pizza/session-title/src/should-schedule.ts +0 -30
  210. package/node_modules/@vitos-pizza/session-title/src/title-agent.ts +0 -60
  211. package/node_modules/@vitos-pizza/session-title/src/truncate-input.ts +0 -10
  212. package/node_modules/@vitos-pizza/session-title/src/types.ts +0 -29
  213. package/node_modules/@vitos-pizza/session-title/tests/build-title-prompt.test.ts +0 -34
  214. package/node_modules/@vitos-pizza/session-title/tests/extension.test.ts +0 -198
  215. package/node_modules/@vitos-pizza/session-title/tests/extract-title-context.test.ts +0 -48
  216. package/node_modules/@vitos-pizza/session-title/tests/fast-rules.test.ts +0 -43
  217. package/node_modules/@vitos-pizza/session-title/tests/parse-title-response.test.ts +0 -34
  218. package/node_modules/@vitos-pizza/session-title/tests/should-schedule.test.ts +0 -30
  219. package/node_modules/@vitos-pizza/session-title/tests/title-agent.test.ts +0 -154
  220. package/node_modules/@vitos-pizza/session-title/tests/truncate-input.test.ts +0 -15
  221. package/node_modules/@vitos-pizza/session-title/tsconfig.json +0 -13
  222. package/node_modules/@vitos-pizza/session-title/vitest.config.ts +0 -8
  223. package/node_modules/@vitos-pizza/subagents/agents/planner.md +0 -43
  224. package/node_modules/@vitos-pizza/subagents/agents/scout.md +0 -40
  225. package/node_modules/@vitos-pizza/subagents/agents/title.md +0 -13
  226. package/node_modules/@vitos-pizza/subagents/agents/worker.md +0 -36
  227. package/node_modules/@vitos-pizza/subagents/extensions/index.ts +0 -164
  228. package/node_modules/@vitos-pizza/subagents/skills/subagents/SKILL.md +0 -80
  229. package/node_modules/@vitos-pizza/subagents/src/agents.ts +0 -166
  230. package/node_modules/@vitos-pizza/subagents/src/async/job-tracker.ts +0 -71
  231. package/node_modules/@vitos-pizza/subagents/src/async/spawn-async.ts +0 -220
  232. package/node_modules/@vitos-pizza/subagents/src/async/storage.ts +0 -57
  233. package/node_modules/@vitos-pizza/subagents/src/env.ts +0 -4
  234. package/node_modules/@vitos-pizza/subagents/src/execute-subagent.ts +0 -285
  235. package/node_modules/@vitos-pizza/subagents/src/progress.ts +0 -187
  236. package/node_modules/@vitos-pizza/subagents/src/render-animation.ts +0 -40
  237. package/node_modules/@vitos-pizza/subagents/src/render.ts +0 -428
  238. package/node_modules/@vitos-pizza/subagents/src/rpc/channels.ts +0 -21
  239. package/node_modules/@vitos-pizza/subagents/src/rpc/client.ts +0 -144
  240. package/node_modules/@vitos-pizza/subagents/src/rpc/server.ts +0 -11
  241. package/node_modules/@vitos-pizza/subagents/src/run-agent.ts +0 -313
  242. package/node_modules/@vitos-pizza/subagents/src/runtime.ts +0 -102
  243. package/node_modules/@vitos-pizza/subagents/src/schema.ts +0 -62
  244. package/node_modules/@vitos-pizza/subagents/src/spawn.ts +0 -104
  245. package/node_modules/@vitos-pizza/subagents/src/types.ts +0 -92
  246. package/node_modules/@vitos-pizza/subagents/src/utils.ts +0 -100
  247. package/node_modules/@vitos-pizza/subagents/src/wait.ts +0 -159
  248. package/node_modules/@vitos-pizza/subagents/tests/agents.test.ts +0 -19
  249. package/node_modules/@vitos-pizza/subagents/tests/execute-subagent.test.ts +0 -96
  250. package/node_modules/@vitos-pizza/subagents/tests/extension.test.ts +0 -42
  251. package/node_modules/@vitos-pizza/subagents/tests/progress.test.ts +0 -206
  252. package/node_modules/@vitos-pizza/subagents/tests/rpc.test.ts +0 -74
  253. package/node_modules/@vitos-pizza/subagents/tsconfig.json +0 -13
  254. package/node_modules/@vitos-pizza/subagents/vitest.config.ts +0 -8
  255. package/node_modules/@vitos-pizza/ui-enhancements/extensions/index.ts +0 -10
  256. package/node_modules/@vitos-pizza/ui-enhancements/package.json +0 -28
  257. package/node_modules/@vitos-pizza/ui-enhancements/src/bash-readonly.ts +0 -82
  258. package/node_modules/@vitos-pizza/ui-enhancements/src/chrome/agent-mode-badge.ts +0 -60
  259. package/node_modules/@vitos-pizza/ui-enhancements/src/chrome/border-status.ts +0 -180
  260. package/node_modules/@vitos-pizza/ui-enhancements/src/chrome/format-border.ts +0 -46
  261. package/node_modules/@vitos-pizza/ui-enhancements/src/chrome/header-info.ts +0 -66
  262. package/node_modules/@vitos-pizza/ui-enhancements/src/chrome/recent-sessions.ts +0 -132
  263. package/node_modules/@vitos-pizza/ui-enhancements/src/chrome/welcome-header.ts +0 -127
  264. package/node_modules/@vitos-pizza/ui-enhancements/src/config.ts +0 -75
  265. package/node_modules/@vitos-pizza/ui-enhancements/src/register-ui-enhancements.ts +0 -47
  266. package/node_modules/@vitos-pizza/ui-enhancements/src/session.ts +0 -72
  267. package/node_modules/@vitos-pizza/ui-enhancements/src/tools/bash-write-edit.ts +0 -148
  268. package/node_modules/@vitos-pizza/ui-enhancements/src/tools/index.ts +0 -22
  269. package/node_modules/@vitos-pizza/ui-enhancements/src/tools/read-find-grep-ls.ts +0 -235
  270. package/node_modules/@vitos-pizza/ui-enhancements/src/tools/text-content.ts +0 -42
  271. package/node_modules/@vitos-pizza/ui-enhancements/src/tools/tool-cache.ts +0 -87
  272. package/node_modules/@vitos-pizza/ui-enhancements/src/utils/shorten-path.ts +0 -9
  273. package/node_modules/@vitos-pizza/ui-enhancements/tests/agent-mode-badge.test.ts +0 -35
  274. package/node_modules/@vitos-pizza/ui-enhancements/tests/bash-readonly.test.ts +0 -43
  275. package/node_modules/@vitos-pizza/ui-enhancements/tests/format-border.test.ts +0 -36
  276. package/node_modules/@vitos-pizza/ui-enhancements/tests/recent-sessions.test.ts +0 -72
  277. package/node_modules/@vitos-pizza/ui-enhancements/tsconfig.json +0 -13
  278. package/node_modules/@vitos-pizza/ui-enhancements/vitest.config.ts +0 -8
  279. package/node_modules/@vitos-pizza/websearch/extensions/index.ts +0 -130
  280. package/node_modules/@vitos-pizza/websearch/package.json +0 -28
  281. package/node_modules/@vitos-pizza/websearch/src/backends/brave.ts +0 -35
  282. package/node_modules/@vitos-pizza/websearch/src/backends/exa-mcp.ts +0 -139
  283. package/node_modules/@vitos-pizza/websearch/src/backends/firecrawl.ts +0 -86
  284. package/node_modules/@vitos-pizza/websearch/src/backends/registry.ts +0 -98
  285. package/node_modules/@vitos-pizza/websearch/src/backends/tavily.ts +0 -32
  286. package/node_modules/@vitos-pizza/websearch/src/config.ts +0 -124
  287. package/node_modules/@vitos-pizza/websearch/src/credentials.ts +0 -35
  288. package/node_modules/@vitos-pizza/websearch/src/dispatch.ts +0 -57
  289. package/node_modules/@vitos-pizza/websearch/src/formatters.ts +0 -44
  290. package/node_modules/@vitos-pizza/websearch/src/parsers.ts +0 -75
  291. package/node_modules/@vitos-pizza/websearch/src/readers/jina.ts +0 -42
  292. package/node_modules/@vitos-pizza/websearch/src/schema.ts +0 -37
  293. package/node_modules/@vitos-pizza/websearch/src/status.ts +0 -103
  294. package/node_modules/@vitos-pizza/websearch/src/types.ts +0 -29
  295. package/node_modules/@vitos-pizza/websearch/src/utils.ts +0 -117
  296. package/node_modules/@vitos-pizza/websearch/tests/backends.test.ts +0 -103
  297. package/node_modules/@vitos-pizza/websearch/tests/config.test.ts +0 -71
  298. package/node_modules/@vitos-pizza/websearch/tests/dispatch.test.ts +0 -69
  299. package/node_modules/@vitos-pizza/websearch/tsconfig.json +0 -13
  300. package/node_modules/@vitos-pizza/websearch/vitest.config.ts +0 -8
  301. package/node_modules/node-addon-api/LICENSE.md +0 -9
  302. package/node_modules/node-addon-api/README.md +0 -95
  303. package/node_modules/node-addon-api/common.gypi +0 -21
  304. package/node_modules/node-addon-api/except.gypi +0 -25
  305. package/node_modules/node-addon-api/index.js +0 -14
  306. package/node_modules/node-addon-api/napi-inl.deprecated.h +0 -186
  307. package/node_modules/node-addon-api/napi-inl.h +0 -7211
  308. package/node_modules/node-addon-api/napi.h +0 -3420
  309. package/node_modules/node-addon-api/node_addon_api.gyp +0 -42
  310. package/node_modules/node-addon-api/node_api.gyp +0 -9
  311. package/node_modules/node-addon-api/noexcept.gypi +0 -26
  312. package/node_modules/node-addon-api/nothing.c +0 -0
  313. package/node_modules/node-addon-api/package-support.json +0 -21
  314. package/node_modules/node-addon-api/package.json +0 -480
  315. package/node_modules/node-addon-api/tools/README.md +0 -73
  316. package/node_modules/node-addon-api/tools/check-napi.js +0 -99
  317. package/node_modules/node-addon-api/tools/clang-format.js +0 -71
  318. package/node_modules/node-addon-api/tools/conversion.js +0 -301
  319. package/node_modules/node-gyp-build/LICENSE +0 -21
  320. package/node_modules/node-gyp-build/README.md +0 -58
  321. package/node_modules/node-gyp-build/SECURITY.md +0 -5
  322. package/node_modules/node-gyp-build/bin.js +0 -84
  323. package/node_modules/node-gyp-build/build-test.js +0 -19
  324. package/node_modules/node-gyp-build/index.js +0 -6
  325. package/node_modules/node-gyp-build/node-gyp-build.js +0 -207
  326. package/node_modules/node-gyp-build/optional.js +0 -7
  327. package/node_modules/node-gyp-build/package.json +0 -43
  328. package/node_modules/tree-sitter-bash/LICENSE +0 -21
  329. package/node_modules/tree-sitter-bash/README.md +0 -44
  330. package/node_modules/tree-sitter-bash/binding.gyp +0 -30
  331. package/node_modules/tree-sitter-bash/bindings/node/binding.cc +0 -20
  332. package/node_modules/tree-sitter-bash/bindings/node/binding_test.js +0 -9
  333. package/node_modules/tree-sitter-bash/bindings/node/index.d.ts +0 -28
  334. package/node_modules/tree-sitter-bash/bindings/node/index.js +0 -11
  335. package/node_modules/tree-sitter-bash/grammar.js +0 -1201
  336. package/node_modules/tree-sitter-bash/package.json +0 -60
  337. package/node_modules/tree-sitter-bash/prebuilds/darwin-arm64/tree-sitter-bash.node +0 -0
  338. package/node_modules/tree-sitter-bash/prebuilds/darwin-x64/tree-sitter-bash.node +0 -0
  339. package/node_modules/tree-sitter-bash/prebuilds/linux-arm64/tree-sitter-bash.node +0 -0
  340. package/node_modules/tree-sitter-bash/prebuilds/linux-x64/tree-sitter-bash.node +0 -0
  341. package/node_modules/tree-sitter-bash/prebuilds/win32-arm64/tree-sitter-bash.node +0 -0
  342. package/node_modules/tree-sitter-bash/prebuilds/win32-x64/tree-sitter-bash.node +0 -0
  343. package/node_modules/tree-sitter-bash/queries/highlights.scm +0 -56
  344. package/node_modules/tree-sitter-bash/src/grammar.json +0 -7145
  345. package/node_modules/tree-sitter-bash/src/node-types.json +0 -2894
  346. package/node_modules/tree-sitter-bash/src/parser.c +0 -350631
  347. package/node_modules/tree-sitter-bash/src/scanner.c +0 -1217
  348. package/node_modules/tree-sitter-bash/src/tree_sitter/alloc.h +0 -54
  349. package/node_modules/tree-sitter-bash/src/tree_sitter/array.h +0 -291
  350. package/node_modules/tree-sitter-bash/src/tree_sitter/parser.h +0 -286
  351. package/node_modules/tree-sitter-bash/tree-sitter-bash.wasm +0 -0
  352. package/node_modules/tree-sitter-bash/tree-sitter.json +0 -46
  353. package/packages/permission-system/node_modules/web-tree-sitter/LICENSE +0 -21
  354. package/packages/permission-system/node_modules/web-tree-sitter/README.md +0 -269
  355. package/packages/permission-system/node_modules/web-tree-sitter/debug/tree-sitter.cjs +0 -4558
  356. package/packages/permission-system/node_modules/web-tree-sitter/debug/tree-sitter.cjs.map +0 -7
  357. package/packages/permission-system/node_modules/web-tree-sitter/debug/tree-sitter.js +0 -4516
  358. package/packages/permission-system/node_modules/web-tree-sitter/debug/tree-sitter.js.map +0 -7
  359. package/packages/permission-system/node_modules/web-tree-sitter/debug/tree-sitter.wasm +0 -0
  360. package/packages/permission-system/node_modules/web-tree-sitter/debug/tree-sitter.wasm.map +0 -31
  361. package/packages/permission-system/node_modules/web-tree-sitter/lib/alloc.c +0 -48
  362. package/packages/permission-system/node_modules/web-tree-sitter/lib/alloc.h +0 -41
  363. package/packages/permission-system/node_modules/web-tree-sitter/lib/array.h +0 -291
  364. package/packages/permission-system/node_modules/web-tree-sitter/lib/atomic.h +0 -68
  365. package/packages/permission-system/node_modules/web-tree-sitter/lib/clock.h +0 -146
  366. package/packages/permission-system/node_modules/web-tree-sitter/lib/error_costs.h +0 -11
  367. package/packages/permission-system/node_modules/web-tree-sitter/lib/get_changed_ranges.c +0 -523
  368. package/packages/permission-system/node_modules/web-tree-sitter/lib/get_changed_ranges.h +0 -36
  369. package/packages/permission-system/node_modules/web-tree-sitter/lib/host.h +0 -21
  370. package/packages/permission-system/node_modules/web-tree-sitter/lib/language.c +0 -293
  371. package/packages/permission-system/node_modules/web-tree-sitter/lib/language.h +0 -293
  372. package/packages/permission-system/node_modules/web-tree-sitter/lib/length.h +0 -52
  373. package/packages/permission-system/node_modules/web-tree-sitter/lib/lexer.c +0 -483
  374. package/packages/permission-system/node_modules/web-tree-sitter/lib/lexer.h +0 -54
  375. package/packages/permission-system/node_modules/web-tree-sitter/lib/lib.c +0 -12
  376. package/packages/permission-system/node_modules/web-tree-sitter/lib/node.c +0 -875
  377. package/packages/permission-system/node_modules/web-tree-sitter/lib/parser.c +0 -2297
  378. package/packages/permission-system/node_modules/web-tree-sitter/lib/parser.h +0 -286
  379. package/packages/permission-system/node_modules/web-tree-sitter/lib/point.h +0 -48
  380. package/packages/permission-system/node_modules/web-tree-sitter/lib/query.c +0 -4347
  381. package/packages/permission-system/node_modules/web-tree-sitter/lib/reduce_action.h +0 -34
  382. package/packages/permission-system/node_modules/web-tree-sitter/lib/reusable_node.h +0 -95
  383. package/packages/permission-system/node_modules/web-tree-sitter/lib/stack.c +0 -912
  384. package/packages/permission-system/node_modules/web-tree-sitter/lib/stack.h +0 -133
  385. package/packages/permission-system/node_modules/web-tree-sitter/lib/subtree.c +0 -1034
  386. package/packages/permission-system/node_modules/web-tree-sitter/lib/subtree.h +0 -399
  387. package/packages/permission-system/node_modules/web-tree-sitter/lib/tree-sitter.c +0 -987
  388. package/packages/permission-system/node_modules/web-tree-sitter/lib/tree-sitter.cjs +0 -2988
  389. package/packages/permission-system/node_modules/web-tree-sitter/lib/tree-sitter.wasm +0 -0
  390. package/packages/permission-system/node_modules/web-tree-sitter/lib/tree-sitter.wasm.map +0 -1
  391. package/packages/permission-system/node_modules/web-tree-sitter/lib/tree.c +0 -170
  392. package/packages/permission-system/node_modules/web-tree-sitter/lib/tree.h +0 -31
  393. package/packages/permission-system/node_modules/web-tree-sitter/lib/tree_cursor.c +0 -716
  394. package/packages/permission-system/node_modules/web-tree-sitter/lib/tree_cursor.h +0 -48
  395. package/packages/permission-system/node_modules/web-tree-sitter/lib/ts_assert.h +0 -11
  396. package/packages/permission-system/node_modules/web-tree-sitter/lib/unicode.h +0 -75
  397. package/packages/permission-system/node_modules/web-tree-sitter/lib/wasm_store.c +0 -1937
  398. package/packages/permission-system/node_modules/web-tree-sitter/lib/wasm_store.h +0 -31
  399. package/packages/permission-system/node_modules/web-tree-sitter/package.json +0 -98
  400. package/packages/permission-system/node_modules/web-tree-sitter/src/bindings.ts +0 -26
  401. package/packages/permission-system/node_modules/web-tree-sitter/src/constants.ts +0 -133
  402. package/packages/permission-system/node_modules/web-tree-sitter/src/index.ts +0 -31
  403. package/packages/permission-system/node_modules/web-tree-sitter/src/language.ts +0 -291
  404. package/packages/permission-system/node_modules/web-tree-sitter/src/lookahead_iterator.ts +0 -75
  405. package/packages/permission-system/node_modules/web-tree-sitter/src/marshal.ts +0 -176
  406. package/packages/permission-system/node_modules/web-tree-sitter/src/node.ts +0 -646
  407. package/packages/permission-system/node_modules/web-tree-sitter/src/parser.ts +0 -325
  408. package/packages/permission-system/node_modules/web-tree-sitter/src/query.ts +0 -973
  409. package/packages/permission-system/node_modules/web-tree-sitter/src/tree.ts +0 -145
  410. package/packages/permission-system/node_modules/web-tree-sitter/src/tree_cursor.ts +0 -318
  411. package/packages/permission-system/node_modules/web-tree-sitter/tree-sitter.cjs +0 -4031
  412. package/packages/permission-system/node_modules/web-tree-sitter/tree-sitter.cjs.map +0 -7
  413. package/packages/permission-system/node_modules/web-tree-sitter/tree-sitter.js +0 -3980
  414. package/packages/permission-system/node_modules/web-tree-sitter/tree-sitter.js.map +0 -7
  415. package/packages/permission-system/node_modules/web-tree-sitter/tree-sitter.wasm +0 -0
  416. package/packages/permission-system/node_modules/web-tree-sitter/tree-sitter.wasm.map +0 -30
  417. package/packages/permission-system/node_modules/web-tree-sitter/web-tree-sitter.d.ts +0 -1030
  418. package/packages/permission-system/node_modules/web-tree-sitter/web-tree-sitter.d.ts.map +0 -56
  419. package/packages/permission-system/node_modules/zod/LICENSE +0 -21
  420. package/packages/permission-system/node_modules/zod/README.md +0 -208
  421. package/packages/permission-system/node_modules/zod/index.cjs +0 -33
  422. package/packages/permission-system/node_modules/zod/index.d.cts +0 -4
  423. package/packages/permission-system/node_modules/zod/index.d.ts +0 -4
  424. package/packages/permission-system/node_modules/zod/index.js +0 -4
  425. package/packages/permission-system/node_modules/zod/package.json +0 -118
  426. package/packages/permission-system/node_modules/zod/src/index.ts +0 -4
  427. package/packages/permission-system/node_modules/zod/src/v3/ZodError.ts +0 -330
  428. package/packages/permission-system/node_modules/zod/src/v3/benchmarks/datetime.ts +0 -58
  429. package/packages/permission-system/node_modules/zod/src/v3/benchmarks/discriminatedUnion.ts +0 -80
  430. package/packages/permission-system/node_modules/zod/src/v3/benchmarks/index.ts +0 -59
  431. package/packages/permission-system/node_modules/zod/src/v3/benchmarks/ipv4.ts +0 -57
  432. package/packages/permission-system/node_modules/zod/src/v3/benchmarks/object.ts +0 -69
  433. package/packages/permission-system/node_modules/zod/src/v3/benchmarks/primitives.ts +0 -162
  434. package/packages/permission-system/node_modules/zod/src/v3/benchmarks/realworld.ts +0 -63
  435. package/packages/permission-system/node_modules/zod/src/v3/benchmarks/string.ts +0 -55
  436. package/packages/permission-system/node_modules/zod/src/v3/benchmarks/union.ts +0 -80
  437. package/packages/permission-system/node_modules/zod/src/v3/errors.ts +0 -13
  438. package/packages/permission-system/node_modules/zod/src/v3/external.ts +0 -6
  439. package/packages/permission-system/node_modules/zod/src/v3/helpers/enumUtil.ts +0 -17
  440. package/packages/permission-system/node_modules/zod/src/v3/helpers/errorUtil.ts +0 -8
  441. package/packages/permission-system/node_modules/zod/src/v3/helpers/parseUtil.ts +0 -176
  442. package/packages/permission-system/node_modules/zod/src/v3/helpers/partialUtil.ts +0 -34
  443. package/packages/permission-system/node_modules/zod/src/v3/helpers/typeAliases.ts +0 -2
  444. package/packages/permission-system/node_modules/zod/src/v3/helpers/util.ts +0 -224
  445. package/packages/permission-system/node_modules/zod/src/v3/index.ts +0 -4
  446. package/packages/permission-system/node_modules/zod/src/v3/locales/en.ts +0 -124
  447. package/packages/permission-system/node_modules/zod/src/v3/standard-schema.ts +0 -113
  448. package/packages/permission-system/node_modules/zod/src/v3/tests/Mocker.ts +0 -54
  449. package/packages/permission-system/node_modules/zod/src/v3/tests/all-errors.test.ts +0 -157
  450. package/packages/permission-system/node_modules/zod/src/v3/tests/anyunknown.test.ts +0 -28
  451. package/packages/permission-system/node_modules/zod/src/v3/tests/array.test.ts +0 -71
  452. package/packages/permission-system/node_modules/zod/src/v3/tests/async-parsing.test.ts +0 -388
  453. package/packages/permission-system/node_modules/zod/src/v3/tests/async-refinements.test.ts +0 -46
  454. package/packages/permission-system/node_modules/zod/src/v3/tests/base.test.ts +0 -29
  455. package/packages/permission-system/node_modules/zod/src/v3/tests/bigint.test.ts +0 -55
  456. package/packages/permission-system/node_modules/zod/src/v3/tests/branded.test.ts +0 -53
  457. package/packages/permission-system/node_modules/zod/src/v3/tests/catch.test.ts +0 -220
  458. package/packages/permission-system/node_modules/zod/src/v3/tests/coerce.test.ts +0 -133
  459. package/packages/permission-system/node_modules/zod/src/v3/tests/complex.test.ts +0 -56
  460. package/packages/permission-system/node_modules/zod/src/v3/tests/custom.test.ts +0 -31
  461. package/packages/permission-system/node_modules/zod/src/v3/tests/date.test.ts +0 -32
  462. package/packages/permission-system/node_modules/zod/src/v3/tests/deepmasking.test.ts +0 -186
  463. package/packages/permission-system/node_modules/zod/src/v3/tests/default.test.ts +0 -112
  464. package/packages/permission-system/node_modules/zod/src/v3/tests/description.test.ts +0 -33
  465. package/packages/permission-system/node_modules/zod/src/v3/tests/discriminated-unions.test.ts +0 -315
  466. package/packages/permission-system/node_modules/zod/src/v3/tests/enum.test.ts +0 -80
  467. package/packages/permission-system/node_modules/zod/src/v3/tests/error.test.ts +0 -551
  468. package/packages/permission-system/node_modules/zod/src/v3/tests/firstparty.test.ts +0 -87
  469. package/packages/permission-system/node_modules/zod/src/v3/tests/firstpartyschematypes.test.ts +0 -21
  470. package/packages/permission-system/node_modules/zod/src/v3/tests/function.test.ts +0 -257
  471. package/packages/permission-system/node_modules/zod/src/v3/tests/generics.test.ts +0 -48
  472. package/packages/permission-system/node_modules/zod/src/v3/tests/instanceof.test.ts +0 -37
  473. package/packages/permission-system/node_modules/zod/src/v3/tests/intersection.test.ts +0 -110
  474. package/packages/permission-system/node_modules/zod/src/v3/tests/language-server.source.ts +0 -76
  475. package/packages/permission-system/node_modules/zod/src/v3/tests/language-server.test.ts +0 -207
  476. package/packages/permission-system/node_modules/zod/src/v3/tests/literal.test.ts +0 -36
  477. package/packages/permission-system/node_modules/zod/src/v3/tests/map.test.ts +0 -110
  478. package/packages/permission-system/node_modules/zod/src/v3/tests/masking.test.ts +0 -4
  479. package/packages/permission-system/node_modules/zod/src/v3/tests/mocker.test.ts +0 -19
  480. package/packages/permission-system/node_modules/zod/src/v3/tests/nan.test.ts +0 -21
  481. package/packages/permission-system/node_modules/zod/src/v3/tests/nativeEnum.test.ts +0 -87
  482. package/packages/permission-system/node_modules/zod/src/v3/tests/nullable.test.ts +0 -42
  483. package/packages/permission-system/node_modules/zod/src/v3/tests/number.test.ts +0 -176
  484. package/packages/permission-system/node_modules/zod/src/v3/tests/object-augmentation.test.ts +0 -29
  485. package/packages/permission-system/node_modules/zod/src/v3/tests/object-in-es5-env.test.ts +0 -29
  486. package/packages/permission-system/node_modules/zod/src/v3/tests/object.test.ts +0 -434
  487. package/packages/permission-system/node_modules/zod/src/v3/tests/optional.test.ts +0 -42
  488. package/packages/permission-system/node_modules/zod/src/v3/tests/parseUtil.test.ts +0 -23
  489. package/packages/permission-system/node_modules/zod/src/v3/tests/parser.test.ts +0 -41
  490. package/packages/permission-system/node_modules/zod/src/v3/tests/partials.test.ts +0 -243
  491. package/packages/permission-system/node_modules/zod/src/v3/tests/pickomit.test.ts +0 -111
  492. package/packages/permission-system/node_modules/zod/src/v3/tests/pipeline.test.ts +0 -29
  493. package/packages/permission-system/node_modules/zod/src/v3/tests/preprocess.test.ts +0 -186
  494. package/packages/permission-system/node_modules/zod/src/v3/tests/primitive.test.ts +0 -440
  495. package/packages/permission-system/node_modules/zod/src/v3/tests/promise.test.ts +0 -90
  496. package/packages/permission-system/node_modules/zod/src/v3/tests/readonly.test.ts +0 -194
  497. package/packages/permission-system/node_modules/zod/src/v3/tests/record.test.ts +0 -171
  498. package/packages/permission-system/node_modules/zod/src/v3/tests/recursive.test.ts +0 -197
  499. package/packages/permission-system/node_modules/zod/src/v3/tests/refine.test.ts +0 -313
  500. package/packages/permission-system/node_modules/zod/src/v3/tests/safeparse.test.ts +0 -27
  501. package/packages/permission-system/node_modules/zod/src/v3/tests/set.test.ts +0 -142
  502. package/packages/permission-system/node_modules/zod/src/v3/tests/standard-schema.test.ts +0 -83
  503. package/packages/permission-system/node_modules/zod/src/v3/tests/string.test.ts +0 -916
  504. package/packages/permission-system/node_modules/zod/src/v3/tests/transformer.test.ts +0 -233
  505. package/packages/permission-system/node_modules/zod/src/v3/tests/tuple.test.ts +0 -90
  506. package/packages/permission-system/node_modules/zod/src/v3/tests/unions.test.ts +0 -57
  507. package/packages/permission-system/node_modules/zod/src/v3/tests/validations.test.ts +0 -133
  508. package/packages/permission-system/node_modules/zod/src/v3/tests/void.test.ts +0 -15
  509. package/packages/permission-system/node_modules/zod/src/v3/types.ts +0 -5136
  510. package/packages/permission-system/node_modules/zod/src/v4/classic/checks.ts +0 -30
  511. package/packages/permission-system/node_modules/zod/src/v4/classic/coerce.ts +0 -27
  512. package/packages/permission-system/node_modules/zod/src/v4/classic/compat.ts +0 -66
  513. package/packages/permission-system/node_modules/zod/src/v4/classic/errors.ts +0 -75
  514. package/packages/permission-system/node_modules/zod/src/v4/classic/external.ts +0 -50
  515. package/packages/permission-system/node_modules/zod/src/v4/classic/index.ts +0 -5
  516. package/packages/permission-system/node_modules/zod/src/v4/classic/iso.ts +0 -90
  517. package/packages/permission-system/node_modules/zod/src/v4/classic/parse.ts +0 -33
  518. package/packages/permission-system/node_modules/zod/src/v4/classic/schemas.ts +0 -2054
  519. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/anyunknown.test.ts +0 -26
  520. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/array.test.ts +0 -264
  521. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/assignability.test.ts +0 -210
  522. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/async-parsing.test.ts +0 -381
  523. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/async-refinements.test.ts +0 -68
  524. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/base.test.ts +0 -7
  525. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/bigint.test.ts +0 -54
  526. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/brand.test.ts +0 -63
  527. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/catch.test.ts +0 -252
  528. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/coalesce.test.ts +0 -20
  529. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/coerce.test.ts +0 -160
  530. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/continuability.test.ts +0 -352
  531. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/custom.test.ts +0 -40
  532. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/date.test.ts +0 -31
  533. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/datetime.test.ts +0 -296
  534. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/default.test.ts +0 -313
  535. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/description.test.ts +0 -32
  536. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/discriminated-unions.test.ts +0 -619
  537. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/enum.test.ts +0 -285
  538. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/error-utils.test.ts +0 -527
  539. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/error.test.ts +0 -711
  540. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/file.test.ts +0 -91
  541. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/firstparty.test.ts +0 -175
  542. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/function.test.ts +0 -268
  543. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/generics.test.ts +0 -72
  544. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/index.test.ts +0 -829
  545. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/instanceof.test.ts +0 -34
  546. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/intersection.test.ts +0 -171
  547. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/json.test.ts +0 -108
  548. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/lazy.test.ts +0 -227
  549. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/literal.test.ts +0 -92
  550. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/map.test.ts +0 -196
  551. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/nan.test.ts +0 -21
  552. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/nested-refine.test.ts +0 -168
  553. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/nonoptional.test.ts +0 -86
  554. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/nullable.test.ts +0 -22
  555. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/number.test.ts +0 -247
  556. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/object.test.ts +0 -563
  557. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/optional.test.ts +0 -123
  558. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/partial.test.ts +0 -147
  559. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/pickomit.test.ts +0 -127
  560. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/pipe.test.ts +0 -81
  561. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/prefault.test.ts +0 -37
  562. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/preprocess.test.ts +0 -298
  563. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/primitive.test.ts +0 -175
  564. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/promise.test.ts +0 -81
  565. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/prototypes.test.ts +0 -23
  566. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/readonly.test.ts +0 -252
  567. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/record.test.ts +0 -342
  568. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/recursive-types.test.ts +0 -356
  569. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/refine.test.ts +0 -532
  570. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/registries.test.ts +0 -204
  571. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/set.test.ts +0 -179
  572. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/standard-schema.test.ts +0 -57
  573. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/string-formats.test.ts +0 -109
  574. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/string.test.ts +0 -881
  575. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/stringbool.test.ts +0 -66
  576. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/template-literal.test.ts +0 -758
  577. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/to-json-schema.test.ts +0 -2314
  578. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/transform.test.ts +0 -250
  579. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/tuple.test.ts +0 -163
  580. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/union.test.ts +0 -94
  581. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/validations.test.ts +0 -283
  582. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/void.test.ts +0 -12
  583. package/packages/permission-system/node_modules/zod/src/v4/core/api.ts +0 -1594
  584. package/packages/permission-system/node_modules/zod/src/v4/core/checks.ts +0 -1283
  585. package/packages/permission-system/node_modules/zod/src/v4/core/config.ts +0 -15
  586. package/packages/permission-system/node_modules/zod/src/v4/core/core.ts +0 -134
  587. package/packages/permission-system/node_modules/zod/src/v4/core/doc.ts +0 -44
  588. package/packages/permission-system/node_modules/zod/src/v4/core/errors.ts +0 -424
  589. package/packages/permission-system/node_modules/zod/src/v4/core/function.ts +0 -176
  590. package/packages/permission-system/node_modules/zod/src/v4/core/index.ts +0 -15
  591. package/packages/permission-system/node_modules/zod/src/v4/core/json-schema.ts +0 -143
  592. package/packages/permission-system/node_modules/zod/src/v4/core/parse.ts +0 -94
  593. package/packages/permission-system/node_modules/zod/src/v4/core/regexes.ts +0 -135
  594. package/packages/permission-system/node_modules/zod/src/v4/core/registries.ts +0 -96
  595. package/packages/permission-system/node_modules/zod/src/v4/core/schemas.ts +0 -3842
  596. package/packages/permission-system/node_modules/zod/src/v4/core/standard-schema.ts +0 -64
  597. package/packages/permission-system/node_modules/zod/src/v4/core/tests/index.test.ts +0 -46
  598. package/packages/permission-system/node_modules/zod/src/v4/core/tests/locales/be.test.ts +0 -124
  599. package/packages/permission-system/node_modules/zod/src/v4/core/tests/locales/en.test.ts +0 -22
  600. package/packages/permission-system/node_modules/zod/src/v4/core/tests/locales/ru.test.ts +0 -128
  601. package/packages/permission-system/node_modules/zod/src/v4/core/tests/locales/tr.test.ts +0 -69
  602. package/packages/permission-system/node_modules/zod/src/v4/core/to-json-schema.ts +0 -977
  603. package/packages/permission-system/node_modules/zod/src/v4/core/util.ts +0 -775
  604. package/packages/permission-system/node_modules/zod/src/v4/core/versions.ts +0 -5
  605. package/packages/permission-system/node_modules/zod/src/v4/core/zsf.ts +0 -323
  606. package/packages/permission-system/node_modules/zod/src/v4/index.ts +0 -4
  607. package/packages/permission-system/node_modules/zod/src/v4/locales/ar.ts +0 -125
  608. package/packages/permission-system/node_modules/zod/src/v4/locales/az.ts +0 -121
  609. package/packages/permission-system/node_modules/zod/src/v4/locales/be.ts +0 -184
  610. package/packages/permission-system/node_modules/zod/src/v4/locales/ca.ts +0 -127
  611. package/packages/permission-system/node_modules/zod/src/v4/locales/cs.ts +0 -142
  612. package/packages/permission-system/node_modules/zod/src/v4/locales/de.ts +0 -124
  613. package/packages/permission-system/node_modules/zod/src/v4/locales/en.ts +0 -127
  614. package/packages/permission-system/node_modules/zod/src/v4/locales/eo.ts +0 -125
  615. package/packages/permission-system/node_modules/zod/src/v4/locales/es.ts +0 -125
  616. package/packages/permission-system/node_modules/zod/src/v4/locales/fa.ts +0 -134
  617. package/packages/permission-system/node_modules/zod/src/v4/locales/fi.ts +0 -131
  618. package/packages/permission-system/node_modules/zod/src/v4/locales/fr-CA.ts +0 -126
  619. package/packages/permission-system/node_modules/zod/src/v4/locales/fr.ts +0 -124
  620. package/packages/permission-system/node_modules/zod/src/v4/locales/he.ts +0 -125
  621. package/packages/permission-system/node_modules/zod/src/v4/locales/hu.ts +0 -126
  622. package/packages/permission-system/node_modules/zod/src/v4/locales/id.ts +0 -125
  623. package/packages/permission-system/node_modules/zod/src/v4/locales/index.ts +0 -39
  624. package/packages/permission-system/node_modules/zod/src/v4/locales/it.ts +0 -125
  625. package/packages/permission-system/node_modules/zod/src/v4/locales/ja.ts +0 -122
  626. package/packages/permission-system/node_modules/zod/src/v4/locales/kh.ts +0 -126
  627. package/packages/permission-system/node_modules/zod/src/v4/locales/ko.ts +0 -131
  628. package/packages/permission-system/node_modules/zod/src/v4/locales/mk.ts +0 -127
  629. package/packages/permission-system/node_modules/zod/src/v4/locales/ms.ts +0 -124
  630. package/packages/permission-system/node_modules/zod/src/v4/locales/nl.ts +0 -126
  631. package/packages/permission-system/node_modules/zod/src/v4/locales/no.ts +0 -124
  632. package/packages/permission-system/node_modules/zod/src/v4/locales/ota.ts +0 -125
  633. package/packages/permission-system/node_modules/zod/src/v4/locales/pl.ts +0 -126
  634. package/packages/permission-system/node_modules/zod/src/v4/locales/ps.ts +0 -133
  635. package/packages/permission-system/node_modules/zod/src/v4/locales/pt.ts +0 -123
  636. package/packages/permission-system/node_modules/zod/src/v4/locales/ru.ts +0 -184
  637. package/packages/permission-system/node_modules/zod/src/v4/locales/sl.ts +0 -126
  638. package/packages/permission-system/node_modules/zod/src/v4/locales/sv.ts +0 -127
  639. package/packages/permission-system/node_modules/zod/src/v4/locales/ta.ts +0 -125
  640. package/packages/permission-system/node_modules/zod/src/v4/locales/th.ts +0 -126
  641. package/packages/permission-system/node_modules/zod/src/v4/locales/tr.ts +0 -121
  642. package/packages/permission-system/node_modules/zod/src/v4/locales/ua.ts +0 -126
  643. package/packages/permission-system/node_modules/zod/src/v4/locales/ur.ts +0 -126
  644. package/packages/permission-system/node_modules/zod/src/v4/locales/vi.ts +0 -125
  645. package/packages/permission-system/node_modules/zod/src/v4/locales/zh-CN.ts +0 -123
  646. package/packages/permission-system/node_modules/zod/src/v4/locales/zh-TW.ts +0 -125
  647. package/packages/permission-system/node_modules/zod/src/v4/mini/checks.ts +0 -32
  648. package/packages/permission-system/node_modules/zod/src/v4/mini/coerce.ts +0 -22
  649. package/packages/permission-system/node_modules/zod/src/v4/mini/external.ts +0 -40
  650. package/packages/permission-system/node_modules/zod/src/v4/mini/index.ts +0 -3
  651. package/packages/permission-system/node_modules/zod/src/v4/mini/iso.ts +0 -62
  652. package/packages/permission-system/node_modules/zod/src/v4/mini/parse.ts +0 -1
  653. package/packages/permission-system/node_modules/zod/src/v4/mini/schemas.ts +0 -1579
  654. package/packages/permission-system/node_modules/zod/src/v4/mini/tests/assignability.test.ts +0 -129
  655. package/packages/permission-system/node_modules/zod/src/v4/mini/tests/brand.test.ts +0 -51
  656. package/packages/permission-system/node_modules/zod/src/v4/mini/tests/checks.test.ts +0 -144
  657. package/packages/permission-system/node_modules/zod/src/v4/mini/tests/computed.test.ts +0 -36
  658. package/packages/permission-system/node_modules/zod/src/v4/mini/tests/error.test.ts +0 -22
  659. package/packages/permission-system/node_modules/zod/src/v4/mini/tests/functions.test.ts +0 -43
  660. package/packages/permission-system/node_modules/zod/src/v4/mini/tests/index.test.ts +0 -871
  661. package/packages/permission-system/node_modules/zod/src/v4/mini/tests/number.test.ts +0 -95
  662. package/packages/permission-system/node_modules/zod/src/v4/mini/tests/object.test.ts +0 -185
  663. package/packages/permission-system/node_modules/zod/src/v4/mini/tests/prototypes.test.ts +0 -43
  664. package/packages/permission-system/node_modules/zod/src/v4/mini/tests/recursive-types.test.ts +0 -275
  665. package/packages/permission-system/node_modules/zod/src/v4/mini/tests/string.test.ts +0 -299
  666. package/packages/permission-system/node_modules/zod/src/v4-mini/index.ts +0 -1
  667. package/packages/permission-system/node_modules/zod/v3/ZodError.cjs +0 -138
  668. package/packages/permission-system/node_modules/zod/v3/ZodError.d.cts +0 -164
  669. package/packages/permission-system/node_modules/zod/v3/ZodError.d.ts +0 -164
  670. package/packages/permission-system/node_modules/zod/v3/ZodError.js +0 -133
  671. package/packages/permission-system/node_modules/zod/v3/errors.cjs +0 -17
  672. package/packages/permission-system/node_modules/zod/v3/errors.d.cts +0 -5
  673. package/packages/permission-system/node_modules/zod/v3/errors.d.ts +0 -5
  674. package/packages/permission-system/node_modules/zod/v3/errors.js +0 -9
  675. package/packages/permission-system/node_modules/zod/v3/external.cjs +0 -22
  676. package/packages/permission-system/node_modules/zod/v3/external.d.cts +0 -6
  677. package/packages/permission-system/node_modules/zod/v3/external.d.ts +0 -6
  678. package/packages/permission-system/node_modules/zod/v3/external.js +0 -6
  679. package/packages/permission-system/node_modules/zod/v3/helpers/enumUtil.cjs +0 -2
  680. package/packages/permission-system/node_modules/zod/v3/helpers/enumUtil.d.cts +0 -8
  681. package/packages/permission-system/node_modules/zod/v3/helpers/enumUtil.d.ts +0 -8
  682. package/packages/permission-system/node_modules/zod/v3/helpers/enumUtil.js +0 -1
  683. package/packages/permission-system/node_modules/zod/v3/helpers/errorUtil.cjs +0 -9
  684. package/packages/permission-system/node_modules/zod/v3/helpers/errorUtil.d.cts +0 -9
  685. package/packages/permission-system/node_modules/zod/v3/helpers/errorUtil.d.ts +0 -9
  686. package/packages/permission-system/node_modules/zod/v3/helpers/errorUtil.js +0 -6
  687. package/packages/permission-system/node_modules/zod/v3/helpers/parseUtil.cjs +0 -124
  688. package/packages/permission-system/node_modules/zod/v3/helpers/parseUtil.d.cts +0 -78
  689. package/packages/permission-system/node_modules/zod/v3/helpers/parseUtil.d.ts +0 -78
  690. package/packages/permission-system/node_modules/zod/v3/helpers/parseUtil.js +0 -109
  691. package/packages/permission-system/node_modules/zod/v3/helpers/partialUtil.cjs +0 -2
  692. package/packages/permission-system/node_modules/zod/v3/helpers/partialUtil.d.cts +0 -8
  693. package/packages/permission-system/node_modules/zod/v3/helpers/partialUtil.d.ts +0 -8
  694. package/packages/permission-system/node_modules/zod/v3/helpers/partialUtil.js +0 -1
  695. package/packages/permission-system/node_modules/zod/v3/helpers/typeAliases.cjs +0 -2
  696. package/packages/permission-system/node_modules/zod/v3/helpers/typeAliases.d.cts +0 -2
  697. package/packages/permission-system/node_modules/zod/v3/helpers/typeAliases.d.ts +0 -2
  698. package/packages/permission-system/node_modules/zod/v3/helpers/typeAliases.js +0 -1
  699. package/packages/permission-system/node_modules/zod/v3/helpers/util.cjs +0 -137
  700. package/packages/permission-system/node_modules/zod/v3/helpers/util.d.cts +0 -85
  701. package/packages/permission-system/node_modules/zod/v3/helpers/util.d.ts +0 -85
  702. package/packages/permission-system/node_modules/zod/v3/helpers/util.js +0 -133
  703. package/packages/permission-system/node_modules/zod/v3/index.cjs +0 -33
  704. package/packages/permission-system/node_modules/zod/v3/index.d.cts +0 -4
  705. package/packages/permission-system/node_modules/zod/v3/index.d.ts +0 -4
  706. package/packages/permission-system/node_modules/zod/v3/index.js +0 -4
  707. package/packages/permission-system/node_modules/zod/v3/locales/en.cjs +0 -111
  708. package/packages/permission-system/node_modules/zod/v3/locales/en.d.cts +0 -3
  709. package/packages/permission-system/node_modules/zod/v3/locales/en.d.ts +0 -3
  710. package/packages/permission-system/node_modules/zod/v3/locales/en.js +0 -109
  711. package/packages/permission-system/node_modules/zod/v3/standard-schema.cjs +0 -2
  712. package/packages/permission-system/node_modules/zod/v3/standard-schema.d.cts +0 -102
  713. package/packages/permission-system/node_modules/zod/v3/standard-schema.d.ts +0 -102
  714. package/packages/permission-system/node_modules/zod/v3/standard-schema.js +0 -1
  715. package/packages/permission-system/node_modules/zod/v3/types.cjs +0 -3775
  716. package/packages/permission-system/node_modules/zod/v3/types.d.cts +0 -1031
  717. package/packages/permission-system/node_modules/zod/v3/types.d.ts +0 -1031
  718. package/packages/permission-system/node_modules/zod/v3/types.js +0 -3693
  719. package/packages/permission-system/node_modules/zod/v4/classic/checks.cjs +0 -32
  720. package/packages/permission-system/node_modules/zod/v4/classic/checks.d.cts +0 -1
  721. package/packages/permission-system/node_modules/zod/v4/classic/checks.d.ts +0 -1
  722. package/packages/permission-system/node_modules/zod/v4/classic/checks.js +0 -1
  723. package/packages/permission-system/node_modules/zod/v4/classic/coerce.cjs +0 -47
  724. package/packages/permission-system/node_modules/zod/v4/classic/coerce.d.cts +0 -17
  725. package/packages/permission-system/node_modules/zod/v4/classic/coerce.d.ts +0 -17
  726. package/packages/permission-system/node_modules/zod/v4/classic/coerce.js +0 -17
  727. package/packages/permission-system/node_modules/zod/v4/classic/compat.cjs +0 -57
  728. package/packages/permission-system/node_modules/zod/v4/classic/compat.d.cts +0 -46
  729. package/packages/permission-system/node_modules/zod/v4/classic/compat.d.ts +0 -46
  730. package/packages/permission-system/node_modules/zod/v4/classic/compat.js +0 -27
  731. package/packages/permission-system/node_modules/zod/v4/classic/errors.cjs +0 -67
  732. package/packages/permission-system/node_modules/zod/v4/classic/errors.d.cts +0 -30
  733. package/packages/permission-system/node_modules/zod/v4/classic/errors.d.ts +0 -30
  734. package/packages/permission-system/node_modules/zod/v4/classic/errors.js +0 -41
  735. package/packages/permission-system/node_modules/zod/v4/classic/external.cjs +0 -70
  736. package/packages/permission-system/node_modules/zod/v4/classic/external.d.cts +0 -13
  737. package/packages/permission-system/node_modules/zod/v4/classic/external.d.ts +0 -13
  738. package/packages/permission-system/node_modules/zod/v4/classic/external.js +0 -18
  739. package/packages/permission-system/node_modules/zod/v4/classic/index.cjs +0 -33
  740. package/packages/permission-system/node_modules/zod/v4/classic/index.d.cts +0 -4
  741. package/packages/permission-system/node_modules/zod/v4/classic/index.d.ts +0 -4
  742. package/packages/permission-system/node_modules/zod/v4/classic/index.js +0 -4
  743. package/packages/permission-system/node_modules/zod/v4/classic/iso.cjs +0 -60
  744. package/packages/permission-system/node_modules/zod/v4/classic/iso.d.cts +0 -22
  745. package/packages/permission-system/node_modules/zod/v4/classic/iso.d.ts +0 -22
  746. package/packages/permission-system/node_modules/zod/v4/classic/iso.js +0 -30
  747. package/packages/permission-system/node_modules/zod/v4/classic/parse.cjs +0 -32
  748. package/packages/permission-system/node_modules/zod/v4/classic/parse.d.cts +0 -23
  749. package/packages/permission-system/node_modules/zod/v4/classic/parse.d.ts +0 -23
  750. package/packages/permission-system/node_modules/zod/v4/classic/parse.js +0 -6
  751. package/packages/permission-system/node_modules/zod/v4/classic/schemas.cjs +0 -1109
  752. package/packages/permission-system/node_modules/zod/v4/classic/schemas.d.cts +0 -630
  753. package/packages/permission-system/node_modules/zod/v4/classic/schemas.d.ts +0 -630
  754. package/packages/permission-system/node_modules/zod/v4/classic/schemas.js +0 -1006
  755. package/packages/permission-system/node_modules/zod/v4/core/api.cjs +0 -1039
  756. package/packages/permission-system/node_modules/zod/v4/core/api.d.cts +0 -284
  757. package/packages/permission-system/node_modules/zod/v4/core/api.d.ts +0 -284
  758. package/packages/permission-system/node_modules/zod/v4/core/api.js +0 -906
  759. package/packages/permission-system/node_modules/zod/v4/core/checks.cjs +0 -591
  760. package/packages/permission-system/node_modules/zod/v4/core/checks.d.cts +0 -278
  761. package/packages/permission-system/node_modules/zod/v4/core/checks.d.ts +0 -278
  762. package/packages/permission-system/node_modules/zod/v4/core/checks.js +0 -565
  763. package/packages/permission-system/node_modules/zod/v4/core/core.cjs +0 -67
  764. package/packages/permission-system/node_modules/zod/v4/core/core.d.cts +0 -49
  765. package/packages/permission-system/node_modules/zod/v4/core/core.d.ts +0 -49
  766. package/packages/permission-system/node_modules/zod/v4/core/core.js +0 -61
  767. package/packages/permission-system/node_modules/zod/v4/core/doc.cjs +0 -39
  768. package/packages/permission-system/node_modules/zod/v4/core/doc.d.cts +0 -14
  769. package/packages/permission-system/node_modules/zod/v4/core/doc.d.ts +0 -14
  770. package/packages/permission-system/node_modules/zod/v4/core/doc.js +0 -35
  771. package/packages/permission-system/node_modules/zod/v4/core/errors.cjs +0 -226
  772. package/packages/permission-system/node_modules/zod/v4/core/errors.d.cts +0 -208
  773. package/packages/permission-system/node_modules/zod/v4/core/errors.d.ts +0 -208
  774. package/packages/permission-system/node_modules/zod/v4/core/errors.js +0 -195
  775. package/packages/permission-system/node_modules/zod/v4/core/function.cjs +0 -102
  776. package/packages/permission-system/node_modules/zod/v4/core/function.d.cts +0 -52
  777. package/packages/permission-system/node_modules/zod/v4/core/function.d.ts +0 -52
  778. package/packages/permission-system/node_modules/zod/v4/core/function.js +0 -75
  779. package/packages/permission-system/node_modules/zod/v4/core/index.cjs +0 -44
  780. package/packages/permission-system/node_modules/zod/v4/core/index.d.cts +0 -15
  781. package/packages/permission-system/node_modules/zod/v4/core/index.d.ts +0 -15
  782. package/packages/permission-system/node_modules/zod/v4/core/index.js +0 -15
  783. package/packages/permission-system/node_modules/zod/v4/core/json-schema.cjs +0 -2
  784. package/packages/permission-system/node_modules/zod/v4/core/json-schema.d.cts +0 -87
  785. package/packages/permission-system/node_modules/zod/v4/core/json-schema.d.ts +0 -87
  786. package/packages/permission-system/node_modules/zod/v4/core/json-schema.js +0 -1
  787. package/packages/permission-system/node_modules/zod/v4/core/parse.cjs +0 -87
  788. package/packages/permission-system/node_modules/zod/v4/core/parse.d.cts +0 -25
  789. package/packages/permission-system/node_modules/zod/v4/core/parse.d.ts +0 -25
  790. package/packages/permission-system/node_modules/zod/v4/core/parse.js +0 -57
  791. package/packages/permission-system/node_modules/zod/v4/core/regexes.cjs +0 -103
  792. package/packages/permission-system/node_modules/zod/v4/core/regexes.d.cts +0 -62
  793. package/packages/permission-system/node_modules/zod/v4/core/regexes.d.ts +0 -62
  794. package/packages/permission-system/node_modules/zod/v4/core/regexes.js +0 -95
  795. package/packages/permission-system/node_modules/zod/v4/core/registries.cjs +0 -56
  796. package/packages/permission-system/node_modules/zod/v4/core/registries.d.cts +0 -35
  797. package/packages/permission-system/node_modules/zod/v4/core/registries.d.ts +0 -35
  798. package/packages/permission-system/node_modules/zod/v4/core/registries.js +0 -51
  799. package/packages/permission-system/node_modules/zod/v4/core/schemas.cjs +0 -1748
  800. package/packages/permission-system/node_modules/zod/v4/core/schemas.d.cts +0 -1041
  801. package/packages/permission-system/node_modules/zod/v4/core/schemas.d.ts +0 -1041
  802. package/packages/permission-system/node_modules/zod/v4/core/schemas.js +0 -1717
  803. package/packages/permission-system/node_modules/zod/v4/core/standard-schema.cjs +0 -2
  804. package/packages/permission-system/node_modules/zod/v4/core/standard-schema.d.cts +0 -55
  805. package/packages/permission-system/node_modules/zod/v4/core/standard-schema.d.ts +0 -55
  806. package/packages/permission-system/node_modules/zod/v4/core/standard-schema.js +0 -1
  807. package/packages/permission-system/node_modules/zod/v4/core/to-json-schema.cjs +0 -854
  808. package/packages/permission-system/node_modules/zod/v4/core/to-json-schema.d.cts +0 -88
  809. package/packages/permission-system/node_modules/zod/v4/core/to-json-schema.d.ts +0 -88
  810. package/packages/permission-system/node_modules/zod/v4/core/to-json-schema.js +0 -849
  811. package/packages/permission-system/node_modules/zod/v4/core/util.cjs +0 -539
  812. package/packages/permission-system/node_modules/zod/v4/core/util.d.cts +0 -183
  813. package/packages/permission-system/node_modules/zod/v4/core/util.d.ts +0 -183
  814. package/packages/permission-system/node_modules/zod/v4/core/util.js +0 -493
  815. package/packages/permission-system/node_modules/zod/v4/core/versions.cjs +0 -8
  816. package/packages/permission-system/node_modules/zod/v4/core/versions.d.cts +0 -5
  817. package/packages/permission-system/node_modules/zod/v4/core/versions.d.ts +0 -5
  818. package/packages/permission-system/node_modules/zod/v4/core/versions.js +0 -5
  819. package/packages/permission-system/node_modules/zod/v4/index.cjs +0 -22
  820. package/packages/permission-system/node_modules/zod/v4/index.d.cts +0 -3
  821. package/packages/permission-system/node_modules/zod/v4/index.d.ts +0 -3
  822. package/packages/permission-system/node_modules/zod/v4/index.js +0 -3
  823. package/packages/permission-system/node_modules/zod/v4/locales/ar.cjs +0 -142
  824. package/packages/permission-system/node_modules/zod/v4/locales/ar.d.cts +0 -4
  825. package/packages/permission-system/node_modules/zod/v4/locales/ar.d.ts +0 -4
  826. package/packages/permission-system/node_modules/zod/v4/locales/ar.js +0 -116
  827. package/packages/permission-system/node_modules/zod/v4/locales/az.cjs +0 -141
  828. package/packages/permission-system/node_modules/zod/v4/locales/az.d.cts +0 -4
  829. package/packages/permission-system/node_modules/zod/v4/locales/az.d.ts +0 -4
  830. package/packages/permission-system/node_modules/zod/v4/locales/az.js +0 -115
  831. package/packages/permission-system/node_modules/zod/v4/locales/be.cjs +0 -190
  832. package/packages/permission-system/node_modules/zod/v4/locales/be.d.cts +0 -4
  833. package/packages/permission-system/node_modules/zod/v4/locales/be.d.ts +0 -4
  834. package/packages/permission-system/node_modules/zod/v4/locales/be.js +0 -164
  835. package/packages/permission-system/node_modules/zod/v4/locales/ca.cjs +0 -144
  836. package/packages/permission-system/node_modules/zod/v4/locales/ca.d.cts +0 -4
  837. package/packages/permission-system/node_modules/zod/v4/locales/ca.d.ts +0 -4
  838. package/packages/permission-system/node_modules/zod/v4/locales/ca.js +0 -118
  839. package/packages/permission-system/node_modules/zod/v4/locales/cs.cjs +0 -161
  840. package/packages/permission-system/node_modules/zod/v4/locales/cs.d.cts +0 -4
  841. package/packages/permission-system/node_modules/zod/v4/locales/cs.d.ts +0 -4
  842. package/packages/permission-system/node_modules/zod/v4/locales/cs.js +0 -135
  843. package/packages/permission-system/node_modules/zod/v4/locales/de.cjs +0 -142
  844. package/packages/permission-system/node_modules/zod/v4/locales/de.d.cts +0 -4
  845. package/packages/permission-system/node_modules/zod/v4/locales/de.d.ts +0 -4
  846. package/packages/permission-system/node_modules/zod/v4/locales/de.js +0 -116
  847. package/packages/permission-system/node_modules/zod/v4/locales/en.cjs +0 -145
  848. package/packages/permission-system/node_modules/zod/v4/locales/en.d.cts +0 -5
  849. package/packages/permission-system/node_modules/zod/v4/locales/en.d.ts +0 -5
  850. package/packages/permission-system/node_modules/zod/v4/locales/en.js +0 -117
  851. package/packages/permission-system/node_modules/zod/v4/locales/eo.cjs +0 -144
  852. package/packages/permission-system/node_modules/zod/v4/locales/eo.d.cts +0 -5
  853. package/packages/permission-system/node_modules/zod/v4/locales/eo.d.ts +0 -5
  854. package/packages/permission-system/node_modules/zod/v4/locales/eo.js +0 -116
  855. package/packages/permission-system/node_modules/zod/v4/locales/es.cjs +0 -143
  856. package/packages/permission-system/node_modules/zod/v4/locales/es.d.cts +0 -4
  857. package/packages/permission-system/node_modules/zod/v4/locales/es.d.ts +0 -4
  858. package/packages/permission-system/node_modules/zod/v4/locales/es.js +0 -117
  859. package/packages/permission-system/node_modules/zod/v4/locales/fa.cjs +0 -148
  860. package/packages/permission-system/node_modules/zod/v4/locales/fa.d.cts +0 -4
  861. package/packages/permission-system/node_modules/zod/v4/locales/fa.d.ts +0 -4
  862. package/packages/permission-system/node_modules/zod/v4/locales/fa.js +0 -122
  863. package/packages/permission-system/node_modules/zod/v4/locales/fi.cjs +0 -148
  864. package/packages/permission-system/node_modules/zod/v4/locales/fi.d.cts +0 -4
  865. package/packages/permission-system/node_modules/zod/v4/locales/fi.d.ts +0 -4
  866. package/packages/permission-system/node_modules/zod/v4/locales/fi.js +0 -122
  867. package/packages/permission-system/node_modules/zod/v4/locales/fr-CA.cjs +0 -143
  868. package/packages/permission-system/node_modules/zod/v4/locales/fr-CA.d.cts +0 -4
  869. package/packages/permission-system/node_modules/zod/v4/locales/fr-CA.d.ts +0 -4
  870. package/packages/permission-system/node_modules/zod/v4/locales/fr-CA.js +0 -117
  871. package/packages/permission-system/node_modules/zod/v4/locales/fr.cjs +0 -142
  872. package/packages/permission-system/node_modules/zod/v4/locales/fr.d.cts +0 -4
  873. package/packages/permission-system/node_modules/zod/v4/locales/fr.d.ts +0 -4
  874. package/packages/permission-system/node_modules/zod/v4/locales/fr.js +0 -116
  875. package/packages/permission-system/node_modules/zod/v4/locales/he.cjs +0 -143
  876. package/packages/permission-system/node_modules/zod/v4/locales/he.d.cts +0 -4
  877. package/packages/permission-system/node_modules/zod/v4/locales/he.d.ts +0 -4
  878. package/packages/permission-system/node_modules/zod/v4/locales/he.js +0 -117
  879. package/packages/permission-system/node_modules/zod/v4/locales/hu.cjs +0 -143
  880. package/packages/permission-system/node_modules/zod/v4/locales/hu.d.cts +0 -4
  881. package/packages/permission-system/node_modules/zod/v4/locales/hu.d.ts +0 -4
  882. package/packages/permission-system/node_modules/zod/v4/locales/hu.js +0 -117
  883. package/packages/permission-system/node_modules/zod/v4/locales/id.cjs +0 -142
  884. package/packages/permission-system/node_modules/zod/v4/locales/id.d.cts +0 -4
  885. package/packages/permission-system/node_modules/zod/v4/locales/id.d.ts +0 -4
  886. package/packages/permission-system/node_modules/zod/v4/locales/id.js +0 -116
  887. package/packages/permission-system/node_modules/zod/v4/locales/index.cjs +0 -84
  888. package/packages/permission-system/node_modules/zod/v4/locales/index.d.cts +0 -39
  889. package/packages/permission-system/node_modules/zod/v4/locales/index.d.ts +0 -39
  890. package/packages/permission-system/node_modules/zod/v4/locales/index.js +0 -39
  891. package/packages/permission-system/node_modules/zod/v4/locales/it.cjs +0 -143
  892. package/packages/permission-system/node_modules/zod/v4/locales/it.d.cts +0 -4
  893. package/packages/permission-system/node_modules/zod/v4/locales/it.d.ts +0 -4
  894. package/packages/permission-system/node_modules/zod/v4/locales/it.js +0 -117
  895. package/packages/permission-system/node_modules/zod/v4/locales/ja.cjs +0 -141
  896. package/packages/permission-system/node_modules/zod/v4/locales/ja.d.cts +0 -4
  897. package/packages/permission-system/node_modules/zod/v4/locales/ja.d.ts +0 -4
  898. package/packages/permission-system/node_modules/zod/v4/locales/ja.js +0 -115
  899. package/packages/permission-system/node_modules/zod/v4/locales/kh.cjs +0 -143
  900. package/packages/permission-system/node_modules/zod/v4/locales/kh.d.cts +0 -4
  901. package/packages/permission-system/node_modules/zod/v4/locales/kh.d.ts +0 -4
  902. package/packages/permission-system/node_modules/zod/v4/locales/kh.js +0 -117
  903. package/packages/permission-system/node_modules/zod/v4/locales/ko.cjs +0 -147
  904. package/packages/permission-system/node_modules/zod/v4/locales/ko.d.cts +0 -4
  905. package/packages/permission-system/node_modules/zod/v4/locales/ko.d.ts +0 -4
  906. package/packages/permission-system/node_modules/zod/v4/locales/ko.js +0 -121
  907. package/packages/permission-system/node_modules/zod/v4/locales/mk.cjs +0 -144
  908. package/packages/permission-system/node_modules/zod/v4/locales/mk.d.cts +0 -4
  909. package/packages/permission-system/node_modules/zod/v4/locales/mk.d.ts +0 -4
  910. package/packages/permission-system/node_modules/zod/v4/locales/mk.js +0 -118
  911. package/packages/permission-system/node_modules/zod/v4/locales/ms.cjs +0 -142
  912. package/packages/permission-system/node_modules/zod/v4/locales/ms.d.cts +0 -4
  913. package/packages/permission-system/node_modules/zod/v4/locales/ms.d.ts +0 -4
  914. package/packages/permission-system/node_modules/zod/v4/locales/ms.js +0 -116
  915. package/packages/permission-system/node_modules/zod/v4/locales/nl.cjs +0 -143
  916. package/packages/permission-system/node_modules/zod/v4/locales/nl.d.cts +0 -4
  917. package/packages/permission-system/node_modules/zod/v4/locales/nl.d.ts +0 -4
  918. package/packages/permission-system/node_modules/zod/v4/locales/nl.js +0 -117
  919. package/packages/permission-system/node_modules/zod/v4/locales/no.cjs +0 -142
  920. package/packages/permission-system/node_modules/zod/v4/locales/no.d.cts +0 -4
  921. package/packages/permission-system/node_modules/zod/v4/locales/no.d.ts +0 -4
  922. package/packages/permission-system/node_modules/zod/v4/locales/no.js +0 -116
  923. package/packages/permission-system/node_modules/zod/v4/locales/ota.cjs +0 -143
  924. package/packages/permission-system/node_modules/zod/v4/locales/ota.d.cts +0 -4
  925. package/packages/permission-system/node_modules/zod/v4/locales/ota.d.ts +0 -4
  926. package/packages/permission-system/node_modules/zod/v4/locales/ota.js +0 -117
  927. package/packages/permission-system/node_modules/zod/v4/locales/pl.cjs +0 -143
  928. package/packages/permission-system/node_modules/zod/v4/locales/pl.d.cts +0 -4
  929. package/packages/permission-system/node_modules/zod/v4/locales/pl.d.ts +0 -4
  930. package/packages/permission-system/node_modules/zod/v4/locales/pl.js +0 -117
  931. package/packages/permission-system/node_modules/zod/v4/locales/ps.cjs +0 -148
  932. package/packages/permission-system/node_modules/zod/v4/locales/ps.d.cts +0 -4
  933. package/packages/permission-system/node_modules/zod/v4/locales/ps.d.ts +0 -4
  934. package/packages/permission-system/node_modules/zod/v4/locales/ps.js +0 -122
  935. package/packages/permission-system/node_modules/zod/v4/locales/pt.cjs +0 -142
  936. package/packages/permission-system/node_modules/zod/v4/locales/pt.d.cts +0 -4
  937. package/packages/permission-system/node_modules/zod/v4/locales/pt.d.ts +0 -4
  938. package/packages/permission-system/node_modules/zod/v4/locales/pt.js +0 -116
  939. package/packages/permission-system/node_modules/zod/v4/locales/ru.cjs +0 -190
  940. package/packages/permission-system/node_modules/zod/v4/locales/ru.d.cts +0 -4
  941. package/packages/permission-system/node_modules/zod/v4/locales/ru.d.ts +0 -4
  942. package/packages/permission-system/node_modules/zod/v4/locales/ru.js +0 -164
  943. package/packages/permission-system/node_modules/zod/v4/locales/sl.cjs +0 -143
  944. package/packages/permission-system/node_modules/zod/v4/locales/sl.d.cts +0 -4
  945. package/packages/permission-system/node_modules/zod/v4/locales/sl.d.ts +0 -4
  946. package/packages/permission-system/node_modules/zod/v4/locales/sl.js +0 -117
  947. package/packages/permission-system/node_modules/zod/v4/locales/sv.cjs +0 -144
  948. package/packages/permission-system/node_modules/zod/v4/locales/sv.d.cts +0 -4
  949. package/packages/permission-system/node_modules/zod/v4/locales/sv.d.ts +0 -4
  950. package/packages/permission-system/node_modules/zod/v4/locales/sv.js +0 -118
  951. package/packages/permission-system/node_modules/zod/v4/locales/ta.cjs +0 -143
  952. package/packages/permission-system/node_modules/zod/v4/locales/ta.d.cts +0 -4
  953. package/packages/permission-system/node_modules/zod/v4/locales/ta.d.ts +0 -4
  954. package/packages/permission-system/node_modules/zod/v4/locales/ta.js +0 -117
  955. package/packages/permission-system/node_modules/zod/v4/locales/th.cjs +0 -143
  956. package/packages/permission-system/node_modules/zod/v4/locales/th.d.cts +0 -4
  957. package/packages/permission-system/node_modules/zod/v4/locales/th.d.ts +0 -4
  958. package/packages/permission-system/node_modules/zod/v4/locales/th.js +0 -117
  959. package/packages/permission-system/node_modules/zod/v4/locales/tr.cjs +0 -143
  960. package/packages/permission-system/node_modules/zod/v4/locales/tr.d.cts +0 -5
  961. package/packages/permission-system/node_modules/zod/v4/locales/tr.d.ts +0 -5
  962. package/packages/permission-system/node_modules/zod/v4/locales/tr.js +0 -115
  963. package/packages/permission-system/node_modules/zod/v4/locales/ua.cjs +0 -143
  964. package/packages/permission-system/node_modules/zod/v4/locales/ua.d.cts +0 -4
  965. package/packages/permission-system/node_modules/zod/v4/locales/ua.d.ts +0 -4
  966. package/packages/permission-system/node_modules/zod/v4/locales/ua.js +0 -117
  967. package/packages/permission-system/node_modules/zod/v4/locales/ur.cjs +0 -143
  968. package/packages/permission-system/node_modules/zod/v4/locales/ur.d.cts +0 -4
  969. package/packages/permission-system/node_modules/zod/v4/locales/ur.d.ts +0 -4
  970. package/packages/permission-system/node_modules/zod/v4/locales/ur.js +0 -117
  971. package/packages/permission-system/node_modules/zod/v4/locales/vi.cjs +0 -142
  972. package/packages/permission-system/node_modules/zod/v4/locales/vi.d.cts +0 -4
  973. package/packages/permission-system/node_modules/zod/v4/locales/vi.d.ts +0 -4
  974. package/packages/permission-system/node_modules/zod/v4/locales/vi.js +0 -116
  975. package/packages/permission-system/node_modules/zod/v4/locales/zh-CN.cjs +0 -142
  976. package/packages/permission-system/node_modules/zod/v4/locales/zh-CN.d.cts +0 -4
  977. package/packages/permission-system/node_modules/zod/v4/locales/zh-CN.d.ts +0 -4
  978. package/packages/permission-system/node_modules/zod/v4/locales/zh-CN.js +0 -116
  979. package/packages/permission-system/node_modules/zod/v4/locales/zh-TW.cjs +0 -143
  980. package/packages/permission-system/node_modules/zod/v4/locales/zh-TW.d.cts +0 -4
  981. package/packages/permission-system/node_modules/zod/v4/locales/zh-TW.d.ts +0 -4
  982. package/packages/permission-system/node_modules/zod/v4/locales/zh-TW.js +0 -117
  983. package/packages/permission-system/node_modules/zod/v4/mini/checks.cjs +0 -34
  984. package/packages/permission-system/node_modules/zod/v4/mini/checks.d.cts +0 -1
  985. package/packages/permission-system/node_modules/zod/v4/mini/checks.d.ts +0 -1
  986. package/packages/permission-system/node_modules/zod/v4/mini/checks.js +0 -1
  987. package/packages/permission-system/node_modules/zod/v4/mini/coerce.cjs +0 -47
  988. package/packages/permission-system/node_modules/zod/v4/mini/coerce.d.cts +0 -7
  989. package/packages/permission-system/node_modules/zod/v4/mini/coerce.d.ts +0 -7
  990. package/packages/permission-system/node_modules/zod/v4/mini/coerce.js +0 -17
  991. package/packages/permission-system/node_modules/zod/v4/mini/external.cjs +0 -62
  992. package/packages/permission-system/node_modules/zod/v4/mini/external.d.cts +0 -11
  993. package/packages/permission-system/node_modules/zod/v4/mini/external.d.ts +0 -11
  994. package/packages/permission-system/node_modules/zod/v4/mini/external.js +0 -13
  995. package/packages/permission-system/node_modules/zod/v4/mini/index.cjs +0 -32
  996. package/packages/permission-system/node_modules/zod/v4/mini/index.d.cts +0 -3
  997. package/packages/permission-system/node_modules/zod/v4/mini/index.d.ts +0 -3
  998. package/packages/permission-system/node_modules/zod/v4/mini/index.js +0 -3
  999. package/packages/permission-system/node_modules/zod/v4/mini/iso.cjs +0 -60
  1000. package/packages/permission-system/node_modules/zod/v4/mini/iso.d.cts +0 -22
  1001. package/packages/permission-system/node_modules/zod/v4/mini/iso.d.ts +0 -22
  1002. package/packages/permission-system/node_modules/zod/v4/mini/iso.js +0 -30
  1003. package/packages/permission-system/node_modules/zod/v4/mini/parse.cjs +0 -8
  1004. package/packages/permission-system/node_modules/zod/v4/mini/parse.d.cts +0 -1
  1005. package/packages/permission-system/node_modules/zod/v4/mini/parse.d.ts +0 -1
  1006. package/packages/permission-system/node_modules/zod/v4/mini/parse.js +0 -1
  1007. package/packages/permission-system/node_modules/zod/v4/mini/schemas.cjs +0 -839
  1008. package/packages/permission-system/node_modules/zod/v4/mini/schemas.d.cts +0 -356
  1009. package/packages/permission-system/node_modules/zod/v4/mini/schemas.d.ts +0 -356
  1010. package/packages/permission-system/node_modules/zod/v4/mini/schemas.js +0 -732
  1011. package/packages/permission-system/node_modules/zod/v4-mini/index.cjs +0 -17
  1012. package/packages/permission-system/node_modules/zod/v4-mini/index.d.cts +0 -1
  1013. package/packages/permission-system/node_modules/zod/v4-mini/index.d.ts +0 -1
  1014. package/packages/permission-system/node_modules/zod/v4-mini/index.js +0 -1
  1015. /package/{node_modules/@vitos-pizza/question → packages/todoist}/tsconfig.json +0 -0
  1016. /package/{node_modules/@vitos-pizza/question → packages/todoist}/vitest.config.ts +0 -0
@@ -1,1217 +0,0 @@
1
- #include "tree_sitter/array.h"
2
- #include "tree_sitter/parser.h"
3
-
4
- #include <assert.h>
5
- #include <ctype.h>
6
- #include <string.h>
7
- #include <wctype.h>
8
-
9
- enum TokenType {
10
- HEREDOC_START,
11
- SIMPLE_HEREDOC_BODY,
12
- HEREDOC_BODY_BEGINNING,
13
- HEREDOC_CONTENT,
14
- HEREDOC_END,
15
- FILE_DESCRIPTOR,
16
- EMPTY_VALUE,
17
- CONCAT,
18
- VARIABLE_NAME,
19
- TEST_OPERATOR,
20
- REGEX,
21
- REGEX_NO_SLASH,
22
- REGEX_NO_SPACE,
23
- EXPANSION_WORD,
24
- EXTGLOB_PATTERN,
25
- BARE_DOLLAR,
26
- BRACE_START,
27
- IMMEDIATE_DOUBLE_HASH,
28
- EXTERNAL_EXPANSION_SYM_HASH,
29
- EXTERNAL_EXPANSION_SYM_BANG,
30
- EXTERNAL_EXPANSION_SYM_EQUAL,
31
- CLOSING_BRACE,
32
- CLOSING_BRACKET,
33
- HEREDOC_ARROW,
34
- HEREDOC_ARROW_DASH,
35
- NEWLINE,
36
- OPENING_PAREN,
37
- ESAC,
38
- ERROR_RECOVERY,
39
- };
40
-
41
- typedef Array(char) String;
42
-
43
- typedef struct {
44
- bool is_raw;
45
- bool started;
46
- bool allows_indent;
47
- String delimiter;
48
- String current_leading_word;
49
- } Heredoc;
50
-
51
- #define heredoc_new() \
52
- { \
53
- .is_raw = false, \
54
- .started = false, \
55
- .allows_indent = false, \
56
- .delimiter = array_new(), \
57
- .current_leading_word = array_new(), \
58
- };
59
-
60
- typedef struct {
61
- uint8_t last_glob_paren_depth;
62
- bool ext_was_in_double_quote;
63
- bool ext_saw_outside_quote;
64
- Array(Heredoc) heredocs;
65
- } Scanner;
66
-
67
- static inline void advance(TSLexer *lexer) { lexer->advance(lexer, false); }
68
-
69
- static inline void skip(TSLexer *lexer) { lexer->advance(lexer, true); }
70
-
71
- static inline bool in_error_recovery(const bool *valid_symbols) { return valid_symbols[ERROR_RECOVERY]; }
72
-
73
- static inline void reset_string(String *string) {
74
- if (string->size > 0) {
75
- memset(string->contents, 0, string->size);
76
- array_clear(string);
77
- }
78
- }
79
-
80
- static inline void reset_heredoc(Heredoc *heredoc) {
81
- heredoc->is_raw = false;
82
- heredoc->started = false;
83
- heredoc->allows_indent = false;
84
- reset_string(&heredoc->delimiter);
85
- }
86
-
87
- static inline void reset(Scanner *scanner) {
88
- for (uint32_t i = 0; i < scanner->heredocs.size; i++) {
89
- reset_heredoc(array_get(&scanner->heredocs, i));
90
- }
91
- }
92
-
93
- static unsigned serialize(Scanner *scanner, char *buffer) {
94
- uint32_t size = 0;
95
-
96
- buffer[size++] = (char)scanner->last_glob_paren_depth;
97
- buffer[size++] = (char)scanner->ext_was_in_double_quote;
98
- buffer[size++] = (char)scanner->ext_saw_outside_quote;
99
- buffer[size++] = (char)scanner->heredocs.size;
100
-
101
- for (uint32_t i = 0; i < scanner->heredocs.size; i++) {
102
- Heredoc *heredoc = array_get(&scanner->heredocs, i);
103
- if (size + 3 + sizeof(uint32_t) + heredoc->delimiter.size >= TREE_SITTER_SERIALIZATION_BUFFER_SIZE) {
104
- return 0;
105
- }
106
-
107
- buffer[size++] = (char)heredoc->is_raw;
108
- buffer[size++] = (char)heredoc->started;
109
- buffer[size++] = (char)heredoc->allows_indent;
110
-
111
- memcpy(&buffer[size], &heredoc->delimiter.size, sizeof(uint32_t));
112
- size += sizeof(uint32_t);
113
- if (heredoc->delimiter.size > 0) {
114
- memcpy(&buffer[size], heredoc->delimiter.contents, heredoc->delimiter.size);
115
- size += heredoc->delimiter.size;
116
- }
117
- }
118
- return size;
119
- }
120
-
121
- static void deserialize(Scanner *scanner, const char *buffer, unsigned length) {
122
- if (length == 0) {
123
- reset(scanner);
124
- } else {
125
- uint32_t size = 0;
126
- scanner->last_glob_paren_depth = buffer[size++];
127
- scanner->ext_was_in_double_quote = buffer[size++];
128
- scanner->ext_saw_outside_quote = buffer[size++];
129
- uint32_t heredoc_count = (unsigned char)buffer[size++];
130
- for (uint32_t i = 0; i < heredoc_count; i++) {
131
- Heredoc *heredoc = NULL;
132
- if (i < scanner->heredocs.size) {
133
- heredoc = array_get(&scanner->heredocs, i);
134
- } else {
135
- Heredoc new_heredoc = heredoc_new();
136
- array_push(&scanner->heredocs, new_heredoc);
137
- heredoc = array_back(&scanner->heredocs);
138
- }
139
-
140
- heredoc->is_raw = buffer[size++];
141
- heredoc->started = buffer[size++];
142
- heredoc->allows_indent = buffer[size++];
143
-
144
- memcpy(&heredoc->delimiter.size, &buffer[size], sizeof(uint32_t));
145
- size += sizeof(uint32_t);
146
- array_reserve(&heredoc->delimiter, heredoc->delimiter.size);
147
-
148
- if (heredoc->delimiter.size > 0) {
149
- memcpy(heredoc->delimiter.contents, &buffer[size], heredoc->delimiter.size);
150
- size += heredoc->delimiter.size;
151
- }
152
- }
153
- assert(size == length);
154
- }
155
- }
156
-
157
- /**
158
- * Consume a "word" in POSIX parlance, and returns it unquoted.
159
- *
160
- * This is an approximate implementation that doesn't deal with any
161
- * POSIX-mandated substitution, and assumes the default value for
162
- * IFS.
163
- */
164
- static bool advance_word(TSLexer *lexer, String *unquoted_word) {
165
- bool empty = true;
166
-
167
- int32_t quote = 0;
168
- if (lexer->lookahead == '\'' || lexer->lookahead == '"') {
169
- quote = lexer->lookahead;
170
- advance(lexer);
171
- }
172
-
173
- while (lexer->lookahead &&
174
- !(quote ? lexer->lookahead == quote || lexer->lookahead == '\r' || lexer->lookahead == '\n'
175
- : iswspace(lexer->lookahead))) {
176
- if (lexer->lookahead == '\\') {
177
- advance(lexer);
178
- if (!lexer->lookahead) {
179
- return false;
180
- }
181
- }
182
- empty = false;
183
- array_push(unquoted_word, lexer->lookahead);
184
- advance(lexer);
185
- }
186
- array_push(unquoted_word, '\0');
187
-
188
- if (quote && lexer->lookahead == quote) {
189
- advance(lexer);
190
- }
191
-
192
- return !empty;
193
- }
194
-
195
- static inline bool scan_bare_dollar(TSLexer *lexer) {
196
- while (iswspace(lexer->lookahead) && lexer->lookahead != '\n' && !lexer->eof(lexer)) {
197
- skip(lexer);
198
- }
199
-
200
- if (lexer->lookahead == '$') {
201
- advance(lexer);
202
- lexer->result_symbol = BARE_DOLLAR;
203
- lexer->mark_end(lexer);
204
- return iswspace(lexer->lookahead) || lexer->eof(lexer) || lexer->lookahead == '\"';
205
- }
206
-
207
- return false;
208
- }
209
-
210
- static bool scan_heredoc_start(Heredoc *heredoc, TSLexer *lexer) {
211
- while (iswspace(lexer->lookahead)) {
212
- skip(lexer);
213
- }
214
-
215
- lexer->result_symbol = HEREDOC_START;
216
- heredoc->is_raw = lexer->lookahead == '\'' || lexer->lookahead == '"' || lexer->lookahead == '\\';
217
-
218
- bool found_delimiter = advance_word(lexer, &heredoc->delimiter);
219
- if (!found_delimiter) {
220
- reset_string(&heredoc->delimiter);
221
- return false;
222
- }
223
- return found_delimiter;
224
- }
225
-
226
- static bool scan_heredoc_end_identifier(Heredoc *heredoc, TSLexer *lexer) {
227
- reset_string(&heredoc->current_leading_word);
228
- // Scan the first 'n' characters on this line, to see if they match the
229
- // heredoc delimiter
230
- int32_t size = 0;
231
- if (heredoc->delimiter.size > 0) {
232
- while (lexer->lookahead != '\0' && lexer->lookahead != '\n' &&
233
- (int32_t)*array_get(&heredoc->delimiter, size) == lexer->lookahead &&
234
- heredoc->current_leading_word.size < heredoc->delimiter.size) {
235
- array_push(&heredoc->current_leading_word, lexer->lookahead);
236
- advance(lexer);
237
- size++;
238
- }
239
- }
240
- array_push(&heredoc->current_leading_word, '\0');
241
- return heredoc->delimiter.size == 0
242
- ? false
243
- : strcmp(heredoc->current_leading_word.contents, heredoc->delimiter.contents) == 0;
244
- }
245
-
246
- static bool scan_heredoc_content(Scanner *scanner, TSLexer *lexer, enum TokenType middle_type,
247
- enum TokenType end_type) {
248
- bool did_advance = false;
249
- Heredoc *heredoc = array_back(&scanner->heredocs);
250
-
251
- for (;;) {
252
- switch (lexer->lookahead) {
253
- case '\0': {
254
- if (lexer->eof(lexer) && did_advance) {
255
- reset_heredoc(heredoc);
256
- lexer->result_symbol = end_type;
257
- return true;
258
- }
259
- return false;
260
- }
261
-
262
- case '\\': {
263
- did_advance = true;
264
- advance(lexer);
265
- advance(lexer);
266
- break;
267
- }
268
-
269
- case '$': {
270
- if (heredoc->is_raw) {
271
- did_advance = true;
272
- advance(lexer);
273
- break;
274
- }
275
- if (did_advance) {
276
- lexer->mark_end(lexer);
277
- lexer->result_symbol = middle_type;
278
- heredoc->started = true;
279
- advance(lexer);
280
- if (iswalpha(lexer->lookahead) || lexer->lookahead == '{' || lexer->lookahead == '(') {
281
- return true;
282
- }
283
- break;
284
- }
285
- if (middle_type == HEREDOC_BODY_BEGINNING && lexer->get_column(lexer) == 0) {
286
- lexer->result_symbol = middle_type;
287
- heredoc->started = true;
288
- return true;
289
- }
290
- return false;
291
- }
292
-
293
- case '\n': {
294
- if (!did_advance) {
295
- skip(lexer);
296
- } else {
297
- advance(lexer);
298
- }
299
- did_advance = true;
300
- if (heredoc->allows_indent) {
301
- while (iswspace(lexer->lookahead)) {
302
- advance(lexer);
303
- }
304
- }
305
- lexer->result_symbol = heredoc->started ? middle_type : end_type;
306
- lexer->mark_end(lexer);
307
- if (scan_heredoc_end_identifier(heredoc, lexer)) {
308
- if (lexer->result_symbol == HEREDOC_END) {
309
- array_pop(&scanner->heredocs);
310
- }
311
- return true;
312
- }
313
- break;
314
- }
315
-
316
- default: {
317
- if (lexer->get_column(lexer) == 0) {
318
- // an alternative is to check the starting column of the
319
- // heredoc body and track that statefully
320
- while (iswspace(lexer->lookahead)) {
321
- if (did_advance) {
322
- advance(lexer);
323
- } else {
324
- skip(lexer);
325
- }
326
- }
327
- if (end_type != SIMPLE_HEREDOC_BODY) {
328
- lexer->result_symbol = middle_type;
329
- if (scan_heredoc_end_identifier(heredoc, lexer)) {
330
- return true;
331
- }
332
- }
333
- if (end_type == SIMPLE_HEREDOC_BODY) {
334
- lexer->result_symbol = end_type;
335
- lexer->mark_end(lexer);
336
- if (scan_heredoc_end_identifier(heredoc, lexer)) {
337
- return true;
338
- }
339
- }
340
- }
341
- did_advance = true;
342
- advance(lexer);
343
- break;
344
- }
345
- }
346
- }
347
- }
348
-
349
- static bool scan(Scanner *scanner, TSLexer *lexer, const bool *valid_symbols) {
350
- if (valid_symbols[CONCAT] && !in_error_recovery(valid_symbols)) {
351
- if (!(lexer->lookahead == 0 || iswspace(lexer->lookahead) || lexer->lookahead == '>' ||
352
- lexer->lookahead == '<' || lexer->lookahead == ')' || lexer->lookahead == '(' ||
353
- lexer->lookahead == ';' || lexer->lookahead == '&' || lexer->lookahead == '|' ||
354
- (lexer->lookahead == '}' && valid_symbols[CLOSING_BRACE]) ||
355
- (lexer->lookahead == ']' && valid_symbols[CLOSING_BRACKET]))) {
356
- lexer->result_symbol = CONCAT;
357
- // So for a`b`, we want to return a concat. We check if the
358
- // 2nd backtick has whitespace after it, and if it does we
359
- // return concat.
360
- if (lexer->lookahead == '`') {
361
- lexer->mark_end(lexer);
362
- advance(lexer);
363
- while (lexer->lookahead != '`' && !lexer->eof(lexer)) {
364
- advance(lexer);
365
- }
366
- if (lexer->eof(lexer)) {
367
- return false;
368
- }
369
- if (lexer->lookahead == '`') {
370
- advance(lexer);
371
- }
372
- return iswspace(lexer->lookahead) || lexer->eof(lexer);
373
- }
374
- // strings w/ expansions that contains escaped quotes or
375
- // backslashes need this to return a concat
376
- if (lexer->lookahead == '\\') {
377
- lexer->mark_end(lexer);
378
- advance(lexer);
379
- if (lexer->lookahead == '"' || lexer->lookahead == '\'' || lexer->lookahead == '\\') {
380
- return true;
381
- }
382
- if (lexer->eof(lexer)) {
383
- return false;
384
- }
385
- } else {
386
- return true;
387
- }
388
- }
389
- if (iswspace(lexer->lookahead) && valid_symbols[CLOSING_BRACE] && !valid_symbols[EXPANSION_WORD]) {
390
- lexer->result_symbol = CONCAT;
391
- return true;
392
- }
393
- }
394
-
395
- if (valid_symbols[IMMEDIATE_DOUBLE_HASH] && !in_error_recovery(valid_symbols)) {
396
- // advance two # and ensure not } after
397
- if (lexer->lookahead == '#') {
398
- lexer->mark_end(lexer);
399
- advance(lexer);
400
- if (lexer->lookahead == '#') {
401
- advance(lexer);
402
- if (lexer->lookahead != '}') {
403
- lexer->result_symbol = IMMEDIATE_DOUBLE_HASH;
404
- lexer->mark_end(lexer);
405
- return true;
406
- }
407
- }
408
- }
409
- }
410
-
411
- if (valid_symbols[EXTERNAL_EXPANSION_SYM_HASH] && !in_error_recovery(valid_symbols)) {
412
- if (lexer->lookahead == '#' || lexer->lookahead == '=' || lexer->lookahead == '!') {
413
- lexer->result_symbol = lexer->lookahead == '#' ? EXTERNAL_EXPANSION_SYM_HASH
414
- : lexer->lookahead == '!' ? EXTERNAL_EXPANSION_SYM_BANG
415
- : EXTERNAL_EXPANSION_SYM_EQUAL;
416
- advance(lexer);
417
- lexer->mark_end(lexer);
418
- while (lexer->lookahead == '#' || lexer->lookahead == '=' || lexer->lookahead == '!') {
419
- advance(lexer);
420
- }
421
- while (iswspace(lexer->lookahead)) {
422
- skip(lexer);
423
- }
424
- if (lexer->lookahead == '}') {
425
- return true;
426
- }
427
- return false;
428
- }
429
- }
430
-
431
- if (valid_symbols[EMPTY_VALUE]) {
432
- if (iswspace(lexer->lookahead) || lexer->eof(lexer) || lexer->lookahead == ';' || lexer->lookahead == '&') {
433
- lexer->result_symbol = EMPTY_VALUE;
434
- return true;
435
- }
436
- }
437
-
438
- if ((valid_symbols[HEREDOC_BODY_BEGINNING] || valid_symbols[SIMPLE_HEREDOC_BODY]) && scanner->heredocs.size > 0 &&
439
- !array_back(&scanner->heredocs)->started && !in_error_recovery(valid_symbols)) {
440
- return scan_heredoc_content(scanner, lexer, HEREDOC_BODY_BEGINNING, SIMPLE_HEREDOC_BODY);
441
- }
442
-
443
- if (valid_symbols[HEREDOC_END] && scanner->heredocs.size > 0) {
444
- Heredoc *heredoc = array_back(&scanner->heredocs);
445
- if (scan_heredoc_end_identifier(heredoc, lexer)) {
446
- array_delete(&heredoc->current_leading_word);
447
- array_delete(&heredoc->delimiter);
448
- array_pop(&scanner->heredocs);
449
- lexer->result_symbol = HEREDOC_END;
450
- return true;
451
- }
452
- }
453
-
454
- if (valid_symbols[HEREDOC_CONTENT] && scanner->heredocs.size > 0 && array_back(&scanner->heredocs)->started &&
455
- !in_error_recovery(valid_symbols)) {
456
- return scan_heredoc_content(scanner, lexer, HEREDOC_CONTENT, HEREDOC_END);
457
- }
458
-
459
- if (valid_symbols[HEREDOC_START] && !in_error_recovery(valid_symbols) && scanner->heredocs.size > 0) {
460
- return scan_heredoc_start(array_back(&scanner->heredocs), lexer);
461
- }
462
-
463
- if (valid_symbols[TEST_OPERATOR] && !valid_symbols[EXPANSION_WORD]) {
464
- while (iswspace(lexer->lookahead) && lexer->lookahead != '\n') {
465
- skip(lexer);
466
- }
467
-
468
- if (lexer->lookahead == '\\') {
469
- if (valid_symbols[EXTGLOB_PATTERN]) {
470
- goto extglob_pattern;
471
- }
472
- if (valid_symbols[REGEX_NO_SPACE]) {
473
- goto regex;
474
- }
475
- skip(lexer);
476
-
477
- if (lexer->eof(lexer)) {
478
- return false;
479
- }
480
-
481
- if (lexer->lookahead == '\r') {
482
- skip(lexer);
483
- if (lexer->lookahead == '\n') {
484
- skip(lexer);
485
- }
486
- } else if (lexer->lookahead == '\n') {
487
- skip(lexer);
488
- } else {
489
- return false;
490
- }
491
-
492
- while (iswspace(lexer->lookahead)) {
493
- skip(lexer);
494
- }
495
- }
496
-
497
- if (lexer->lookahead == '\n' && !valid_symbols[NEWLINE]) {
498
- skip(lexer);
499
-
500
- while (iswspace(lexer->lookahead)) {
501
- skip(lexer);
502
- }
503
- }
504
-
505
- if (lexer->lookahead == '-') {
506
- advance(lexer);
507
-
508
- bool advanced_once = false;
509
- while (iswalpha(lexer->lookahead)) {
510
- advanced_once = true;
511
- advance(lexer);
512
- }
513
-
514
- if (iswspace(lexer->lookahead) && advanced_once) {
515
- lexer->mark_end(lexer);
516
- advance(lexer);
517
- if (lexer->lookahead == '}' && valid_symbols[CLOSING_BRACE]) {
518
- if (valid_symbols[EXPANSION_WORD]) {
519
- lexer->mark_end(lexer);
520
- lexer->result_symbol = EXPANSION_WORD;
521
- return true;
522
- }
523
- return false;
524
- }
525
- lexer->result_symbol = TEST_OPERATOR;
526
- return true;
527
- }
528
- if (iswspace(lexer->lookahead) && valid_symbols[EXTGLOB_PATTERN]) {
529
- lexer->result_symbol = EXTGLOB_PATTERN;
530
- return true;
531
- }
532
- }
533
-
534
- if (valid_symbols[BARE_DOLLAR] && !in_error_recovery(valid_symbols) && scan_bare_dollar(lexer)) {
535
- return true;
536
- }
537
- }
538
-
539
- if ((valid_symbols[VARIABLE_NAME] || valid_symbols[FILE_DESCRIPTOR] || valid_symbols[HEREDOC_ARROW]) &&
540
- !valid_symbols[REGEX_NO_SLASH] && !in_error_recovery(valid_symbols)) {
541
- for (;;) {
542
- if ((lexer->lookahead == ' ' || lexer->lookahead == '\t' || lexer->lookahead == '\r' ||
543
- (lexer->lookahead == '\n' && !valid_symbols[NEWLINE])) &&
544
- !valid_symbols[EXPANSION_WORD]) {
545
- skip(lexer);
546
- } else if (lexer->lookahead == '\\') {
547
- skip(lexer);
548
-
549
- if (lexer->eof(lexer)) {
550
- lexer->mark_end(lexer);
551
- lexer->result_symbol = VARIABLE_NAME;
552
- return true;
553
- }
554
-
555
- if (lexer->lookahead == '\r') {
556
- skip(lexer);
557
- }
558
- if (lexer->lookahead == '\n') {
559
- skip(lexer);
560
- } else {
561
- if (lexer->lookahead == '\\' && valid_symbols[EXPANSION_WORD]) {
562
- goto expansion_word;
563
- }
564
- return false;
565
- }
566
- } else {
567
- break;
568
- }
569
- }
570
-
571
- // no '*', '@', '?', '-', '$', '0', '_'
572
- if (!valid_symbols[EXPANSION_WORD] &&
573
- (lexer->lookahead == '*' || lexer->lookahead == '@' || lexer->lookahead == '?' || lexer->lookahead == '-' ||
574
- lexer->lookahead == '0' || lexer->lookahead == '_')) {
575
- lexer->mark_end(lexer);
576
- advance(lexer);
577
- if (lexer->lookahead == '=' || lexer->lookahead == '[' || lexer->lookahead == ':' ||
578
- lexer->lookahead == '-' || lexer->lookahead == '%' || lexer->lookahead == '#' ||
579
- lexer->lookahead == '/') {
580
- return false;
581
- }
582
- if (valid_symbols[EXTGLOB_PATTERN] && iswspace(lexer->lookahead)) {
583
- lexer->mark_end(lexer);
584
- lexer->result_symbol = EXTGLOB_PATTERN;
585
- return true;
586
- }
587
- }
588
-
589
- if (valid_symbols[HEREDOC_ARROW] && lexer->lookahead == '<') {
590
- advance(lexer);
591
- if (lexer->lookahead == '<') {
592
- advance(lexer);
593
- if (lexer->lookahead == '-') {
594
- advance(lexer);
595
- Heredoc heredoc = heredoc_new();
596
- heredoc.allows_indent = true;
597
- array_push(&scanner->heredocs, heredoc);
598
- lexer->result_symbol = HEREDOC_ARROW_DASH;
599
- } else if (lexer->lookahead == '<' || lexer->lookahead == '=') {
600
- return false;
601
- } else {
602
- Heredoc heredoc = heredoc_new();
603
- array_push(&scanner->heredocs, heredoc);
604
- lexer->result_symbol = HEREDOC_ARROW;
605
- }
606
- return true;
607
- }
608
- return false;
609
- }
610
-
611
- bool is_number = true;
612
- if (iswdigit(lexer->lookahead)) {
613
- advance(lexer);
614
- } else if (iswalpha(lexer->lookahead) || lexer->lookahead == '_') {
615
- is_number = false;
616
- advance(lexer);
617
- } else {
618
- if (lexer->lookahead == '{') {
619
- goto brace_start;
620
- }
621
- if (valid_symbols[EXPANSION_WORD]) {
622
- goto expansion_word;
623
- }
624
- if (valid_symbols[EXTGLOB_PATTERN]) {
625
- goto extglob_pattern;
626
- }
627
- return false;
628
- }
629
-
630
- for (;;) {
631
- if (iswdigit(lexer->lookahead)) {
632
- advance(lexer);
633
- } else if (iswalpha(lexer->lookahead) || lexer->lookahead == '_') {
634
- is_number = false;
635
- advance(lexer);
636
- } else {
637
- break;
638
- }
639
- }
640
-
641
- if (is_number && valid_symbols[FILE_DESCRIPTOR] && (lexer->lookahead == '>' || lexer->lookahead == '<')) {
642
- lexer->result_symbol = FILE_DESCRIPTOR;
643
- return true;
644
- }
645
-
646
- if (valid_symbols[VARIABLE_NAME]) {
647
- if (lexer->lookahead == '+') {
648
- lexer->mark_end(lexer);
649
- advance(lexer);
650
- if (lexer->lookahead == '=' || lexer->lookahead == ':' || valid_symbols[CLOSING_BRACE]) {
651
- lexer->result_symbol = VARIABLE_NAME;
652
- return true;
653
- }
654
- return false;
655
- }
656
- if (lexer->lookahead == '/') {
657
- return false;
658
- }
659
- if (lexer->lookahead == '=' || lexer->lookahead == '[' ||
660
- (lexer->lookahead == ':' && !valid_symbols[CLOSING_BRACE] &&
661
- !valid_symbols[OPENING_PAREN]) || // TODO(amaanq): more cases for regular word chars but not variable
662
- // names for function words, only handling : for now? #235
663
- lexer->lookahead == '%' ||
664
- (lexer->lookahead == '#' && !is_number) || lexer->lookahead == '@' ||
665
- (lexer->lookahead == '-' && valid_symbols[CLOSING_BRACE])) {
666
- lexer->mark_end(lexer);
667
- lexer->result_symbol = VARIABLE_NAME;
668
- return true;
669
- }
670
-
671
- if (lexer->lookahead == '?') {
672
- lexer->mark_end(lexer);
673
- advance(lexer);
674
- lexer->result_symbol = VARIABLE_NAME;
675
- return iswalpha(lexer->lookahead);
676
- }
677
- }
678
-
679
- return false;
680
- }
681
-
682
- if (valid_symbols[BARE_DOLLAR] && !in_error_recovery(valid_symbols) && scan_bare_dollar(lexer)) {
683
- return true;
684
- }
685
-
686
- regex:
687
- if ((valid_symbols[REGEX] || valid_symbols[REGEX_NO_SLASH] || valid_symbols[REGEX_NO_SPACE]) &&
688
- !in_error_recovery(valid_symbols)) {
689
- if (valid_symbols[REGEX] || valid_symbols[REGEX_NO_SPACE]) {
690
- while (iswspace(lexer->lookahead)) {
691
- skip(lexer);
692
- }
693
- }
694
-
695
- if ((lexer->lookahead != '"' && lexer->lookahead != '\'') ||
696
- ((lexer->lookahead == '$' || lexer->lookahead == '\'') && valid_symbols[REGEX_NO_SLASH]) ||
697
- (lexer->lookahead == '\'' && valid_symbols[REGEX_NO_SPACE])) {
698
- typedef struct {
699
- bool done;
700
- bool advanced_once;
701
- bool found_non_alnumdollarunderdash;
702
- bool last_was_escape;
703
- bool in_single_quote;
704
- uint32_t paren_depth;
705
- uint32_t bracket_depth;
706
- uint32_t brace_depth;
707
- } State;
708
-
709
- if (lexer->lookahead == '$' && valid_symbols[REGEX_NO_SLASH]) {
710
- lexer->mark_end(lexer);
711
- advance(lexer);
712
- if (lexer->lookahead == '(') {
713
- return false;
714
- }
715
- }
716
-
717
- lexer->mark_end(lexer);
718
-
719
- State state = {false, false, false, false, false, 0, 0, 0};
720
- while (!state.done) {
721
- if (state.in_single_quote) {
722
- if (lexer->lookahead == '\'') {
723
- state.in_single_quote = false;
724
- advance(lexer);
725
- lexer->mark_end(lexer);
726
- }
727
- }
728
- switch (lexer->lookahead) {
729
- case '\\':
730
- state.last_was_escape = true;
731
- break;
732
- case '\0':
733
- return false;
734
- case '(':
735
- state.paren_depth++;
736
- state.last_was_escape = false;
737
- break;
738
- case '[':
739
- state.bracket_depth++;
740
- state.last_was_escape = false;
741
- break;
742
- case '{':
743
- if (!state.last_was_escape) {
744
- state.brace_depth++;
745
- }
746
- state.last_was_escape = false;
747
- break;
748
- case ')':
749
- if (state.paren_depth == 0) {
750
- state.done = true;
751
- }
752
- state.paren_depth--;
753
- state.last_was_escape = false;
754
- break;
755
- case ']':
756
- if (state.bracket_depth == 0) {
757
- state.done = true;
758
- }
759
- state.bracket_depth--;
760
- state.last_was_escape = false;
761
- break;
762
- case '}':
763
- if (state.brace_depth == 0) {
764
- state.done = true;
765
- }
766
- state.brace_depth--;
767
- state.last_was_escape = false;
768
- break;
769
- case '\'':
770
- // Enter or exit a single-quoted string.
771
- state.in_single_quote = !state.in_single_quote;
772
- advance(lexer);
773
- state.advanced_once = true;
774
- state.last_was_escape = false;
775
- continue;
776
- default:
777
- state.last_was_escape = false;
778
- break;
779
- }
780
-
781
- if (!state.done) {
782
- if (valid_symbols[REGEX]) {
783
- bool was_space = !state.in_single_quote && iswspace(lexer->lookahead);
784
- advance(lexer);
785
- state.advanced_once = true;
786
- if (!was_space || state.paren_depth > 0) {
787
- lexer->mark_end(lexer);
788
- }
789
- } else if (valid_symbols[REGEX_NO_SLASH]) {
790
- if (lexer->lookahead == '/') {
791
- lexer->mark_end(lexer);
792
- lexer->result_symbol = REGEX_NO_SLASH;
793
- return state.advanced_once;
794
- }
795
- if (lexer->lookahead == '\\') {
796
- advance(lexer);
797
- state.advanced_once = true;
798
- if (!lexer->eof(lexer) && lexer->lookahead != '[' && lexer->lookahead != '/') {
799
- advance(lexer);
800
- lexer->mark_end(lexer);
801
- }
802
- } else {
803
- bool was_space = !state.in_single_quote && iswspace(lexer->lookahead);
804
- advance(lexer);
805
- state.advanced_once = true;
806
- if (!was_space) {
807
- lexer->mark_end(lexer);
808
- }
809
- }
810
- } else if (valid_symbols[REGEX_NO_SPACE]) {
811
- if (lexer->lookahead == '\\') {
812
- state.found_non_alnumdollarunderdash = true;
813
- advance(lexer);
814
- if (!lexer->eof(lexer)) {
815
- advance(lexer);
816
- }
817
- } else if (lexer->lookahead == '$') {
818
- lexer->mark_end(lexer);
819
- advance(lexer);
820
- // do not parse a command
821
- // substitution
822
- if (lexer->lookahead == '(') {
823
- return false;
824
- }
825
- // end $ always means regex, e.g.
826
- // 99999999$
827
- if (iswspace(lexer->lookahead)) {
828
- lexer->result_symbol = REGEX_NO_SPACE;
829
- lexer->mark_end(lexer);
830
- return true;
831
- }
832
- } else {
833
- bool was_space = !state.in_single_quote && iswspace(lexer->lookahead);
834
- if (was_space && state.paren_depth == 0) {
835
- lexer->mark_end(lexer);
836
- lexer->result_symbol = REGEX_NO_SPACE;
837
- return state.found_non_alnumdollarunderdash;
838
- }
839
- if (!iswalnum(lexer->lookahead) && lexer->lookahead != '$' && lexer->lookahead != '-' &&
840
- lexer->lookahead != '_') {
841
- state.found_non_alnumdollarunderdash = true;
842
- }
843
- advance(lexer);
844
- }
845
- }
846
- }
847
- }
848
-
849
- lexer->result_symbol = valid_symbols[REGEX_NO_SLASH] ? REGEX_NO_SLASH
850
- : valid_symbols[REGEX_NO_SPACE] ? REGEX_NO_SPACE
851
- : REGEX;
852
- if (valid_symbols[REGEX] && !state.advanced_once) {
853
- return false;
854
- }
855
- return true;
856
- }
857
- }
858
-
859
- extglob_pattern:
860
- if (valid_symbols[EXTGLOB_PATTERN] && !in_error_recovery(valid_symbols)) {
861
- // first skip ws, then check for ? * + @ !
862
- while (iswspace(lexer->lookahead)) {
863
- skip(lexer);
864
- }
865
-
866
- if (lexer->lookahead == '?' || lexer->lookahead == '*' || lexer->lookahead == '+' || lexer->lookahead == '@' ||
867
- lexer->lookahead == '!' || lexer->lookahead == '-' || lexer->lookahead == ')' || lexer->lookahead == '\\' ||
868
- lexer->lookahead == '.' || lexer->lookahead == '[' || (iswalpha(lexer->lookahead))) {
869
- if (lexer->lookahead == '\\') {
870
- advance(lexer);
871
- if ((iswspace(lexer->lookahead) || lexer->lookahead == '"') && lexer->lookahead != '\r' &&
872
- lexer->lookahead != '\n') {
873
- advance(lexer);
874
- } else {
875
- return false;
876
- }
877
- }
878
-
879
- if (lexer->lookahead == ')' && scanner->last_glob_paren_depth == 0) {
880
- lexer->mark_end(lexer);
881
- advance(lexer);
882
-
883
- if (iswspace(lexer->lookahead)) {
884
- return false;
885
- }
886
- }
887
-
888
- lexer->mark_end(lexer);
889
- bool was_non_alpha = !iswalpha(lexer->lookahead);
890
- if (lexer->lookahead != '[') {
891
- // no esac
892
- if (lexer->lookahead == 'e') {
893
- lexer->mark_end(lexer);
894
- advance(lexer);
895
- if (lexer->lookahead == 's') {
896
- advance(lexer);
897
- if (lexer->lookahead == 'a') {
898
- advance(lexer);
899
- if (lexer->lookahead == 'c') {
900
- advance(lexer);
901
- if (iswspace(lexer->lookahead)) {
902
- return false;
903
- }
904
- }
905
- }
906
- }
907
- } else {
908
- advance(lexer);
909
- }
910
- }
911
-
912
- // -\w is just a word, find something else special
913
- if (lexer->lookahead == '-') {
914
- lexer->mark_end(lexer);
915
- advance(lexer);
916
- while (iswalnum(lexer->lookahead)) {
917
- advance(lexer);
918
- }
919
-
920
- if (lexer->lookahead == ')' || lexer->lookahead == '\\' || lexer->lookahead == '.') {
921
- return false;
922
- }
923
- lexer->mark_end(lexer);
924
- }
925
-
926
- // case item -) or *)
927
- if (lexer->lookahead == ')' && scanner->last_glob_paren_depth == 0) {
928
- lexer->mark_end(lexer);
929
- advance(lexer);
930
- if (iswspace(lexer->lookahead)) {
931
- lexer->result_symbol = EXTGLOB_PATTERN;
932
- return was_non_alpha;
933
- }
934
- }
935
-
936
- if (iswspace(lexer->lookahead)) {
937
- lexer->mark_end(lexer);
938
- lexer->result_symbol = EXTGLOB_PATTERN;
939
- scanner->last_glob_paren_depth = 0;
940
- return true;
941
- }
942
-
943
- if (lexer->lookahead == '$') {
944
- lexer->mark_end(lexer);
945
- advance(lexer);
946
- if (lexer->lookahead == '{' || lexer->lookahead == '(') {
947
- lexer->result_symbol = EXTGLOB_PATTERN;
948
- return true;
949
- }
950
- }
951
-
952
- if (lexer->lookahead == '|') {
953
- lexer->mark_end(lexer);
954
- advance(lexer);
955
- lexer->result_symbol = EXTGLOB_PATTERN;
956
- return true;
957
- }
958
-
959
- if (!iswalnum(lexer->lookahead) && lexer->lookahead != '(' && lexer->lookahead != '"' &&
960
- lexer->lookahead != '[' && lexer->lookahead != '?' && lexer->lookahead != '/' &&
961
- lexer->lookahead != '\\' && lexer->lookahead != '_' && lexer->lookahead != '*') {
962
- return false;
963
- }
964
-
965
- typedef struct {
966
- bool done;
967
- bool saw_non_alphadot;
968
- uint32_t paren_depth;
969
- uint32_t bracket_depth;
970
- uint32_t brace_depth;
971
- } State;
972
-
973
- State state = {false, was_non_alpha, scanner->last_glob_paren_depth, 0, 0};
974
- while (!state.done) {
975
- switch (lexer->lookahead) {
976
- case '\0':
977
- return false;
978
- case '(':
979
- state.paren_depth++;
980
- break;
981
- case '[':
982
- state.bracket_depth++;
983
- break;
984
- case '{':
985
- state.brace_depth++;
986
- break;
987
- case ')':
988
- if (state.paren_depth == 0) {
989
- state.done = true;
990
- }
991
- state.paren_depth--;
992
- break;
993
- case ']':
994
- if (state.bracket_depth == 0) {
995
- state.done = true;
996
- }
997
- state.bracket_depth--;
998
- break;
999
- case '}':
1000
- if (state.brace_depth == 0) {
1001
- state.done = true;
1002
- }
1003
- state.brace_depth--;
1004
- break;
1005
- }
1006
-
1007
- if (lexer->lookahead == '|') {
1008
- lexer->mark_end(lexer);
1009
- advance(lexer);
1010
- if (state.paren_depth == 0 && state.bracket_depth == 0 && state.brace_depth == 0) {
1011
- lexer->result_symbol = EXTGLOB_PATTERN;
1012
- return true;
1013
- }
1014
- }
1015
-
1016
- if (!state.done) {
1017
- bool was_space = iswspace(lexer->lookahead);
1018
- if (lexer->lookahead == '$') {
1019
- lexer->mark_end(lexer);
1020
- if (!iswalpha(lexer->lookahead) && lexer->lookahead != '.' && lexer->lookahead != '\\') {
1021
- state.saw_non_alphadot = true;
1022
- }
1023
- advance(lexer);
1024
- if (lexer->lookahead == '(' || lexer->lookahead == '{') {
1025
- lexer->result_symbol = EXTGLOB_PATTERN;
1026
- scanner->last_glob_paren_depth = state.paren_depth;
1027
- return state.saw_non_alphadot;
1028
- }
1029
- }
1030
- if (was_space) {
1031
- lexer->mark_end(lexer);
1032
- lexer->result_symbol = EXTGLOB_PATTERN;
1033
- scanner->last_glob_paren_depth = 0;
1034
- return state.saw_non_alphadot;
1035
- }
1036
- if (lexer->lookahead == '"') {
1037
- lexer->mark_end(lexer);
1038
- lexer->result_symbol = EXTGLOB_PATTERN;
1039
- scanner->last_glob_paren_depth = 0;
1040
- return state.saw_non_alphadot;
1041
- }
1042
- if (lexer->lookahead == '\\') {
1043
- if (!iswalpha(lexer->lookahead) && lexer->lookahead != '.' && lexer->lookahead != '\\') {
1044
- state.saw_non_alphadot = true;
1045
- }
1046
- advance(lexer);
1047
- if (iswspace(lexer->lookahead) || lexer->lookahead == '"') {
1048
- advance(lexer);
1049
- }
1050
- } else {
1051
- if (!iswalpha(lexer->lookahead) && lexer->lookahead != '.' && lexer->lookahead != '\\') {
1052
- state.saw_non_alphadot = true;
1053
- }
1054
- advance(lexer);
1055
- }
1056
- if (!was_space) {
1057
- lexer->mark_end(lexer);
1058
- }
1059
- }
1060
- }
1061
-
1062
- lexer->result_symbol = EXTGLOB_PATTERN;
1063
- scanner->last_glob_paren_depth = 0;
1064
- return state.saw_non_alphadot;
1065
- }
1066
- scanner->last_glob_paren_depth = 0;
1067
-
1068
- return false;
1069
- }
1070
-
1071
- expansion_word:
1072
- if (valid_symbols[EXPANSION_WORD]) {
1073
- bool advanced_once = false;
1074
- bool advance_once_space = false;
1075
- for (;;) {
1076
- if (lexer->lookahead == '\"') {
1077
- return false;
1078
- }
1079
- if (lexer->lookahead == '$') {
1080
- lexer->mark_end(lexer);
1081
- advance(lexer);
1082
- if (lexer->lookahead == '{' || lexer->lookahead == '(' || lexer->lookahead == '\'' ||
1083
- iswalnum(lexer->lookahead)) {
1084
- lexer->result_symbol = EXPANSION_WORD;
1085
- return advanced_once;
1086
- }
1087
- advanced_once = true;
1088
- }
1089
-
1090
- if (lexer->lookahead == '}') {
1091
- lexer->mark_end(lexer);
1092
- lexer->result_symbol = EXPANSION_WORD;
1093
- return advanced_once || advance_once_space;
1094
- }
1095
-
1096
- if (lexer->lookahead == '(' && !(advanced_once || advance_once_space)) {
1097
- lexer->mark_end(lexer);
1098
- advance(lexer);
1099
- while (lexer->lookahead != ')' && !lexer->eof(lexer)) {
1100
- // if we find a $( or ${ assume this is valid and is
1101
- // a garbage concatenation of some weird word + an
1102
- // expansion
1103
- // I wonder where this can fail
1104
- if (lexer->lookahead == '$') {
1105
- lexer->mark_end(lexer);
1106
- advance(lexer);
1107
- if (lexer->lookahead == '{' || lexer->lookahead == '(' || lexer->lookahead == '\'' ||
1108
- iswalnum(lexer->lookahead)) {
1109
- lexer->result_symbol = EXPANSION_WORD;
1110
- return advanced_once;
1111
- }
1112
- advanced_once = true;
1113
- } else {
1114
- advanced_once = advanced_once || !iswspace(lexer->lookahead);
1115
- advance_once_space = advance_once_space || iswspace(lexer->lookahead);
1116
- advance(lexer);
1117
- }
1118
- }
1119
- lexer->mark_end(lexer);
1120
- if (lexer->lookahead == ')') {
1121
- advanced_once = true;
1122
- advance(lexer);
1123
- lexer->mark_end(lexer);
1124
- if (lexer->lookahead == '}') {
1125
- return false;
1126
- }
1127
- } else {
1128
- return false;
1129
- }
1130
- }
1131
-
1132
- if (lexer->lookahead == '\'') {
1133
- return false;
1134
- }
1135
-
1136
- if (lexer->eof(lexer)) {
1137
- return false;
1138
- }
1139
- advanced_once = advanced_once || !iswspace(lexer->lookahead);
1140
- advance_once_space = advance_once_space || iswspace(lexer->lookahead);
1141
- advance(lexer);
1142
- }
1143
- }
1144
-
1145
- brace_start:
1146
- if (valid_symbols[BRACE_START] && !in_error_recovery(valid_symbols)) {
1147
- while (iswspace(lexer->lookahead)) {
1148
- skip(lexer);
1149
- }
1150
-
1151
- if (lexer->lookahead != '{') {
1152
- return false;
1153
- }
1154
-
1155
- advance(lexer);
1156
- lexer->mark_end(lexer);
1157
-
1158
- while (isdigit(lexer->lookahead)) {
1159
- advance(lexer);
1160
- }
1161
-
1162
- if (lexer->lookahead != '.') {
1163
- return false;
1164
- }
1165
- advance(lexer);
1166
-
1167
- if (lexer->lookahead != '.') {
1168
- return false;
1169
- }
1170
- advance(lexer);
1171
-
1172
- while (isdigit(lexer->lookahead)) {
1173
- advance(lexer);
1174
- }
1175
-
1176
- if (lexer->lookahead != '}') {
1177
- return false;
1178
- }
1179
-
1180
- lexer->result_symbol = BRACE_START;
1181
- return true;
1182
- }
1183
-
1184
- return false;
1185
- }
1186
-
1187
- void *tree_sitter_bash_external_scanner_create() {
1188
- Scanner *scanner = calloc(1, sizeof(Scanner));
1189
- array_init(&scanner->heredocs);
1190
- return scanner;
1191
- }
1192
-
1193
- bool tree_sitter_bash_external_scanner_scan(void *payload, TSLexer *lexer, const bool *valid_symbols) {
1194
- Scanner *scanner = (Scanner *)payload;
1195
- return scan(scanner, lexer, valid_symbols);
1196
- }
1197
-
1198
- unsigned tree_sitter_bash_external_scanner_serialize(void *payload, char *state) {
1199
- Scanner *scanner = (Scanner *)payload;
1200
- return serialize(scanner, state);
1201
- }
1202
-
1203
- void tree_sitter_bash_external_scanner_deserialize(void *payload, const char *state, unsigned length) {
1204
- Scanner *scanner = (Scanner *)payload;
1205
- deserialize(scanner, state, length);
1206
- }
1207
-
1208
- void tree_sitter_bash_external_scanner_destroy(void *payload) {
1209
- Scanner *scanner = (Scanner *)payload;
1210
- for (size_t i = 0; i < scanner->heredocs.size; i++) {
1211
- Heredoc *heredoc = array_get(&scanner->heredocs, i);
1212
- array_delete(&heredoc->current_leading_word);
1213
- array_delete(&heredoc->delimiter);
1214
- }
1215
- array_delete(&scanner->heredocs);
1216
- free(scanner);
1217
- }