@vitos-pizza/vitos-pizza 0.2.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 (924) hide show
  1. package/AGENTS.md +6 -4
  2. package/CHANGELOG.md +13 -0
  3. package/README.md +3 -3
  4. package/package.json +17 -13
  5. package/packages/agent-mode/extensions/index.ts +12 -10
  6. package/packages/agent-mode/package.json +5 -4
  7. package/packages/agent-mode/src/plan-instructions.ts +7 -3
  8. package/packages/keybindings/extensions/index.ts +14 -6
  9. package/packages/keybindings/package.json +1 -1
  10. package/packages/keybindings/presets/shortcuts.json +1 -1
  11. package/packages/permission-system/package.json +2 -2
  12. package/packages/question/package.json +1 -1
  13. package/packages/session-title/package.json +3 -3
  14. package/packages/settings-preset/extensions/index.ts +53 -0
  15. package/packages/settings-preset/package.json +19 -0
  16. package/packages/settings-preset/presets/settings.json +15 -0
  17. package/packages/settings-preset/tsconfig.json +11 -0
  18. package/packages/subagents/agents/scout.md +3 -2
  19. package/packages/subagents/package.json +1 -1
  20. package/packages/subagents/skills/subagents/SKILL.md +4 -4
  21. package/packages/todoist/package.json +1 -1
  22. package/packages/ui-enhancements/package.json +1 -1
  23. package/packages/ui-enhancements/src/chrome/border-status.ts +76 -3
  24. package/packages/ui-enhancements/src/chrome/execute-prompt.ts +83 -0
  25. package/packages/websearch/package.json +1 -1
  26. package/scripts/sync-pi-manifest.mjs +1 -1
  27. package/node_modules/@vitos-pizza/agent-mode/extensions/index.ts +0 -138
  28. package/node_modules/@vitos-pizza/agent-mode/package.json +0 -31
  29. package/node_modules/@vitos-pizza/agent-mode/src/apply-mode.ts +0 -60
  30. package/node_modules/@vitos-pizza/agent-mode/src/mode-events.ts +0 -102
  31. package/node_modules/@vitos-pizza/agent-mode/src/modes.ts +0 -43
  32. package/node_modules/@vitos-pizza/agent-mode/src/plan-instructions.ts +0 -85
  33. package/node_modules/@vitos-pizza/agent-mode/tests/apply-mode.test.ts +0 -36
  34. package/node_modules/@vitos-pizza/agent-mode/tests/mode-events.test.ts +0 -22
  35. package/node_modules/@vitos-pizza/agent-mode/tests/modes.test.ts +0 -38
  36. package/node_modules/@vitos-pizza/agent-mode/tests/plan-instructions.test.ts +0 -68
  37. package/node_modules/@vitos-pizza/agent-mode/tsconfig.json +0 -13
  38. package/node_modules/@vitos-pizza/agent-mode/vitest.config.ts +0 -8
  39. package/node_modules/@vitos-pizza/keybindings/extensions/index.ts +0 -104
  40. package/node_modules/@vitos-pizza/keybindings/package.json +0 -26
  41. package/node_modules/@vitos-pizza/keybindings/presets/shortcuts.json +0 -3
  42. package/node_modules/@vitos-pizza/keybindings/src/bind.ts +0 -57
  43. package/node_modules/@vitos-pizza/keybindings/src/config.ts +0 -84
  44. package/node_modules/@vitos-pizza/keybindings/src/registry.ts +0 -43
  45. package/node_modules/@vitos-pizza/keybindings/src/types.ts +0 -54
  46. package/node_modules/@vitos-pizza/keybindings/tests/config.test.ts +0 -83
  47. package/node_modules/@vitos-pizza/keybindings/tests/registry.test.ts +0 -142
  48. package/node_modules/@vitos-pizza/keybindings/tsconfig.json +0 -13
  49. package/node_modules/@vitos-pizza/keybindings/vitest.config.ts +0 -8
  50. package/node_modules/@vitos-pizza/permission-system/extensions/index.ts +0 -162
  51. package/node_modules/@vitos-pizza/permission-system/package.json +0 -34
  52. package/node_modules/@vitos-pizza/permission-system/presets/default.json +0 -36
  53. package/node_modules/@vitos-pizza/permission-system/presets/plan.json +0 -25
  54. package/node_modules/@vitos-pizza/permission-system/presets/yolo.json +0 -15
  55. package/node_modules/@vitos-pizza/permission-system/src/bash/matcher.ts +0 -54
  56. package/node_modules/@vitos-pizza/permission-system/src/bash/parser.ts +0 -40
  57. package/node_modules/@vitos-pizza/permission-system/src/config-paths.ts +0 -23
  58. package/node_modules/@vitos-pizza/permission-system/src/detect-preset-mode.ts +0 -61
  59. package/node_modules/@vitos-pizza/permission-system/src/expand-home.ts +0 -12
  60. package/node_modules/@vitos-pizza/permission-system/src/forwarding/forwarder.ts +0 -224
  61. package/node_modules/@vitos-pizza/permission-system/src/forwarding/subagent-registry.ts +0 -61
  62. package/node_modules/@vitos-pizza/permission-system/src/gates/path-utils.ts +0 -66
  63. package/node_modules/@vitos-pizza/permission-system/src/gates/pipeline.ts +0 -151
  64. package/node_modules/@vitos-pizza/permission-system/src/handlers/before-agent-start.ts +0 -86
  65. package/node_modules/@vitos-pizza/permission-system/src/handlers/skill-input.ts +0 -1
  66. package/node_modules/@vitos-pizza/permission-system/src/handlers/tool-call-gate.ts +0 -204
  67. package/node_modules/@vitos-pizza/permission-system/src/mode-api.ts +0 -44
  68. package/node_modules/@vitos-pizza/permission-system/src/permission-evaluator.ts +0 -233
  69. package/node_modules/@vitos-pizza/permission-system/src/permission-session.ts +0 -62
  70. package/node_modules/@vitos-pizza/permission-system/src/policy-loader.ts +0 -211
  71. package/node_modules/@vitos-pizza/permission-system/src/sanitizers/skill-prompt.ts +0 -99
  72. package/node_modules/@vitos-pizza/permission-system/src/sanitizers/system-prompt.ts +0 -221
  73. package/node_modules/@vitos-pizza/permission-system/src/service.ts +0 -66
  74. package/node_modules/@vitos-pizza/permission-system/src/session-approvals.ts +0 -4
  75. package/node_modules/@vitos-pizza/permission-system/src/types.ts +0 -80
  76. package/node_modules/@vitos-pizza/permission-system/src/ui/approval-summary.ts +0 -43
  77. package/node_modules/@vitos-pizza/permission-system/src/ui/config-modal.ts +0 -36
  78. package/node_modules/@vitos-pizza/permission-system/src/ui/permission-dialog.ts +0 -52
  79. package/node_modules/@vitos-pizza/permission-system/src/wildcard-matcher.ts +0 -81
  80. package/node_modules/@vitos-pizza/permission-system/src/yaml-frontmatter.ts +0 -84
  81. package/node_modules/@vitos-pizza/permission-system/src/yolo/runtime-api.ts +0 -49
  82. package/node_modules/@vitos-pizza/permission-system/tests/bash-parser.test.ts +0 -32
  83. package/node_modules/@vitos-pizza/permission-system/tests/before-agent-start.test.ts +0 -61
  84. package/node_modules/@vitos-pizza/permission-system/tests/detect-preset-mode.test.ts +0 -68
  85. package/node_modules/@vitos-pizza/permission-system/tests/forwarder.test.ts +0 -55
  86. package/node_modules/@vitos-pizza/permission-system/tests/gates.test.ts +0 -170
  87. package/node_modules/@vitos-pizza/permission-system/tests/path-utils.test.ts +0 -68
  88. package/node_modules/@vitos-pizza/permission-system/tests/permission-evaluator.test.ts +0 -82
  89. package/node_modules/@vitos-pizza/permission-system/tests/policy-loader.test.ts +0 -25
  90. package/node_modules/@vitos-pizza/permission-system/tests/system-prompt-sanitizer.test.ts +0 -22
  91. package/node_modules/@vitos-pizza/permission-system/tests/wildcard-matcher.test.ts +0 -27
  92. package/node_modules/@vitos-pizza/permission-system/tsconfig.json +0 -13
  93. package/node_modules/@vitos-pizza/permission-system/vitest.config.ts +0 -8
  94. package/node_modules/@vitos-pizza/question/extensions/index.ts +0 -79
  95. package/node_modules/@vitos-pizza/question/package.json +0 -26
  96. package/node_modules/@vitos-pizza/question/src/forwarding/channels.ts +0 -6
  97. package/node_modules/@vitos-pizza/question/src/forwarding/file-watcher.ts +0 -106
  98. package/node_modules/@vitos-pizza/question/src/forwarding/forwarder.ts +0 -187
  99. package/node_modules/@vitos-pizza/question/src/parent-session.ts +0 -18
  100. package/node_modules/@vitos-pizza/question/src/question-ui.ts +0 -242
  101. package/node_modules/@vitos-pizza/question/src/register-tool.ts +0 -221
  102. package/node_modules/@vitos-pizza/question/src/types.ts +0 -41
  103. package/node_modules/@vitos-pizza/question/tests/forwarder.test.ts +0 -66
  104. package/node_modules/@vitos-pizza/question/tests/parent-session.test.ts +0 -29
  105. package/node_modules/@vitos-pizza/question/tests/question-ui-width-cache.test.ts +0 -45
  106. package/node_modules/@vitos-pizza/question/tests/register-tool-render.test.ts +0 -48
  107. package/node_modules/@vitos-pizza/question/tsconfig.json +0 -13
  108. package/node_modules/@vitos-pizza/question/vitest.config.ts +0 -8
  109. package/node_modules/@vitos-pizza/session-title/extensions/index.ts +0 -137
  110. package/node_modules/@vitos-pizza/session-title/package.json +0 -37
  111. package/node_modules/@vitos-pizza/session-title/src/build-title-prompt.ts +0 -16
  112. package/node_modules/@vitos-pizza/session-title/src/extract-title-context.ts +0 -55
  113. package/node_modules/@vitos-pizza/session-title/src/fast-rules.ts +0 -48
  114. package/node_modules/@vitos-pizza/session-title/src/load-settings.ts +0 -70
  115. package/node_modules/@vitos-pizza/session-title/src/normalize-title.ts +0 -20
  116. package/node_modules/@vitos-pizza/session-title/src/parse-title-response.ts +0 -6
  117. package/node_modules/@vitos-pizza/session-title/src/resolve-title-model.ts +0 -33
  118. package/node_modules/@vitos-pizza/session-title/src/schedule-title-job.ts +0 -53
  119. package/node_modules/@vitos-pizza/session-title/src/should-schedule.ts +0 -30
  120. package/node_modules/@vitos-pizza/session-title/src/title-agent.ts +0 -60
  121. package/node_modules/@vitos-pizza/session-title/src/truncate-input.ts +0 -10
  122. package/node_modules/@vitos-pizza/session-title/src/types.ts +0 -29
  123. package/node_modules/@vitos-pizza/session-title/tests/build-title-prompt.test.ts +0 -34
  124. package/node_modules/@vitos-pizza/session-title/tests/extension.test.ts +0 -198
  125. package/node_modules/@vitos-pizza/session-title/tests/extract-title-context.test.ts +0 -48
  126. package/node_modules/@vitos-pizza/session-title/tests/fast-rules.test.ts +0 -43
  127. package/node_modules/@vitos-pizza/session-title/tests/parse-title-response.test.ts +0 -34
  128. package/node_modules/@vitos-pizza/session-title/tests/should-schedule.test.ts +0 -30
  129. package/node_modules/@vitos-pizza/session-title/tests/title-agent.test.ts +0 -154
  130. package/node_modules/@vitos-pizza/session-title/tests/truncate-input.test.ts +0 -15
  131. package/node_modules/@vitos-pizza/session-title/tsconfig.json +0 -13
  132. package/node_modules/@vitos-pizza/session-title/vitest.config.ts +0 -8
  133. package/node_modules/@vitos-pizza/subagents/agents/planner.md +0 -46
  134. package/node_modules/@vitos-pizza/subagents/agents/scout.md +0 -40
  135. package/node_modules/@vitos-pizza/subagents/agents/title.md +0 -13
  136. package/node_modules/@vitos-pizza/subagents/agents/worker.md +0 -36
  137. package/node_modules/@vitos-pizza/subagents/extensions/index.ts +0 -164
  138. package/node_modules/@vitos-pizza/subagents/package.json +0 -34
  139. package/node_modules/@vitos-pizza/subagents/skills/subagents/SKILL.md +0 -86
  140. package/node_modules/@vitos-pizza/subagents/src/agents.ts +0 -166
  141. package/node_modules/@vitos-pizza/subagents/src/async/job-tracker.ts +0 -71
  142. package/node_modules/@vitos-pizza/subagents/src/async/spawn-async.ts +0 -220
  143. package/node_modules/@vitos-pizza/subagents/src/async/storage.ts +0 -57
  144. package/node_modules/@vitos-pizza/subagents/src/env.ts +0 -4
  145. package/node_modules/@vitos-pizza/subagents/src/execute-subagent.ts +0 -285
  146. package/node_modules/@vitos-pizza/subagents/src/progress.ts +0 -187
  147. package/node_modules/@vitos-pizza/subagents/src/render-animation.ts +0 -40
  148. package/node_modules/@vitos-pizza/subagents/src/render.ts +0 -428
  149. package/node_modules/@vitos-pizza/subagents/src/rpc/channels.ts +0 -21
  150. package/node_modules/@vitos-pizza/subagents/src/rpc/client.ts +0 -144
  151. package/node_modules/@vitos-pizza/subagents/src/rpc/server.ts +0 -11
  152. package/node_modules/@vitos-pizza/subagents/src/run-agent.ts +0 -313
  153. package/node_modules/@vitos-pizza/subagents/src/runtime.ts +0 -102
  154. package/node_modules/@vitos-pizza/subagents/src/schema.ts +0 -62
  155. package/node_modules/@vitos-pizza/subagents/src/spawn.ts +0 -104
  156. package/node_modules/@vitos-pizza/subagents/src/types.ts +0 -92
  157. package/node_modules/@vitos-pizza/subagents/src/utils.ts +0 -100
  158. package/node_modules/@vitos-pizza/subagents/src/wait.ts +0 -159
  159. package/node_modules/@vitos-pizza/subagents/tests/agents.test.ts +0 -19
  160. package/node_modules/@vitos-pizza/subagents/tests/execute-subagent.test.ts +0 -96
  161. package/node_modules/@vitos-pizza/subagents/tests/extension.test.ts +0 -42
  162. package/node_modules/@vitos-pizza/subagents/tests/progress.test.ts +0 -206
  163. package/node_modules/@vitos-pizza/subagents/tests/rpc.test.ts +0 -74
  164. package/node_modules/@vitos-pizza/subagents/tsconfig.json +0 -13
  165. package/node_modules/@vitos-pizza/subagents/vitest.config.ts +0 -8
  166. package/node_modules/@vitos-pizza/ui-enhancements/extensions/index.ts +0 -10
  167. package/node_modules/@vitos-pizza/ui-enhancements/package.json +0 -28
  168. package/node_modules/@vitos-pizza/ui-enhancements/src/bash-readonly.ts +0 -82
  169. package/node_modules/@vitos-pizza/ui-enhancements/src/chrome/agent-mode-badge.ts +0 -60
  170. package/node_modules/@vitos-pizza/ui-enhancements/src/chrome/border-status.ts +0 -193
  171. package/node_modules/@vitos-pizza/ui-enhancements/src/chrome/format-border.ts +0 -46
  172. package/node_modules/@vitos-pizza/ui-enhancements/src/chrome/header-info.ts +0 -66
  173. package/node_modules/@vitos-pizza/ui-enhancements/src/chrome/recent-sessions.ts +0 -132
  174. package/node_modules/@vitos-pizza/ui-enhancements/src/chrome/resize-recovery.ts +0 -63
  175. package/node_modules/@vitos-pizza/ui-enhancements/src/chrome/welcome-header.ts +0 -127
  176. package/node_modules/@vitos-pizza/ui-enhancements/src/config.ts +0 -75
  177. package/node_modules/@vitos-pizza/ui-enhancements/src/register-ui-enhancements.ts +0 -47
  178. package/node_modules/@vitos-pizza/ui-enhancements/src/session.ts +0 -72
  179. package/node_modules/@vitos-pizza/ui-enhancements/src/tools/bash-write-edit.ts +0 -148
  180. package/node_modules/@vitos-pizza/ui-enhancements/src/tools/index.ts +0 -22
  181. package/node_modules/@vitos-pizza/ui-enhancements/src/tools/read-find-grep-ls.ts +0 -235
  182. package/node_modules/@vitos-pizza/ui-enhancements/src/tools/text-content.ts +0 -42
  183. package/node_modules/@vitos-pizza/ui-enhancements/src/tools/tool-cache.ts +0 -87
  184. package/node_modules/@vitos-pizza/ui-enhancements/src/utils/shorten-path.ts +0 -9
  185. package/node_modules/@vitos-pizza/ui-enhancements/tests/agent-mode-badge.test.ts +0 -35
  186. package/node_modules/@vitos-pizza/ui-enhancements/tests/bash-readonly.test.ts +0 -43
  187. package/node_modules/@vitos-pizza/ui-enhancements/tests/format-border.test.ts +0 -36
  188. package/node_modules/@vitos-pizza/ui-enhancements/tests/recent-sessions.test.ts +0 -72
  189. package/node_modules/@vitos-pizza/ui-enhancements/tests/resize-recovery.test.ts +0 -135
  190. package/node_modules/@vitos-pizza/ui-enhancements/tsconfig.json +0 -13
  191. package/node_modules/@vitos-pizza/ui-enhancements/vitest.config.ts +0 -8
  192. package/node_modules/@vitos-pizza/websearch/extensions/index.ts +0 -130
  193. package/node_modules/@vitos-pizza/websearch/package.json +0 -28
  194. package/node_modules/@vitos-pizza/websearch/src/backends/brave.ts +0 -35
  195. package/node_modules/@vitos-pizza/websearch/src/backends/exa-mcp.ts +0 -139
  196. package/node_modules/@vitos-pizza/websearch/src/backends/firecrawl.ts +0 -86
  197. package/node_modules/@vitos-pizza/websearch/src/backends/registry.ts +0 -98
  198. package/node_modules/@vitos-pizza/websearch/src/backends/tavily.ts +0 -32
  199. package/node_modules/@vitos-pizza/websearch/src/config.ts +0 -124
  200. package/node_modules/@vitos-pizza/websearch/src/credentials.ts +0 -35
  201. package/node_modules/@vitos-pizza/websearch/src/dispatch.ts +0 -57
  202. package/node_modules/@vitos-pizza/websearch/src/formatters.ts +0 -44
  203. package/node_modules/@vitos-pizza/websearch/src/parsers.ts +0 -75
  204. package/node_modules/@vitos-pizza/websearch/src/readers/jina.ts +0 -42
  205. package/node_modules/@vitos-pizza/websearch/src/schema.ts +0 -37
  206. package/node_modules/@vitos-pizza/websearch/src/status.ts +0 -103
  207. package/node_modules/@vitos-pizza/websearch/src/types.ts +0 -29
  208. package/node_modules/@vitos-pizza/websearch/src/utils.ts +0 -117
  209. package/node_modules/@vitos-pizza/websearch/tests/backends.test.ts +0 -103
  210. package/node_modules/@vitos-pizza/websearch/tests/config.test.ts +0 -71
  211. package/node_modules/@vitos-pizza/websearch/tests/dispatch.test.ts +0 -69
  212. package/node_modules/@vitos-pizza/websearch/tsconfig.json +0 -13
  213. package/node_modules/@vitos-pizza/websearch/vitest.config.ts +0 -8
  214. package/node_modules/node-addon-api/LICENSE.md +0 -9
  215. package/node_modules/node-addon-api/README.md +0 -95
  216. package/node_modules/node-addon-api/common.gypi +0 -21
  217. package/node_modules/node-addon-api/except.gypi +0 -25
  218. package/node_modules/node-addon-api/index.js +0 -14
  219. package/node_modules/node-addon-api/napi-inl.deprecated.h +0 -186
  220. package/node_modules/node-addon-api/napi-inl.h +0 -7211
  221. package/node_modules/node-addon-api/napi.h +0 -3420
  222. package/node_modules/node-addon-api/node_addon_api.gyp +0 -42
  223. package/node_modules/node-addon-api/node_api.gyp +0 -9
  224. package/node_modules/node-addon-api/noexcept.gypi +0 -26
  225. package/node_modules/node-addon-api/nothing.c +0 -0
  226. package/node_modules/node-addon-api/package-support.json +0 -21
  227. package/node_modules/node-addon-api/package.json +0 -480
  228. package/node_modules/node-addon-api/tools/README.md +0 -73
  229. package/node_modules/node-addon-api/tools/check-napi.js +0 -99
  230. package/node_modules/node-addon-api/tools/clang-format.js +0 -71
  231. package/node_modules/node-addon-api/tools/conversion.js +0 -301
  232. package/node_modules/node-gyp-build/LICENSE +0 -21
  233. package/node_modules/node-gyp-build/README.md +0 -58
  234. package/node_modules/node-gyp-build/SECURITY.md +0 -5
  235. package/node_modules/node-gyp-build/bin.js +0 -84
  236. package/node_modules/node-gyp-build/build-test.js +0 -19
  237. package/node_modules/node-gyp-build/index.js +0 -6
  238. package/node_modules/node-gyp-build/node-gyp-build.js +0 -207
  239. package/node_modules/node-gyp-build/optional.js +0 -7
  240. package/node_modules/node-gyp-build/package.json +0 -43
  241. package/node_modules/tree-sitter-bash/LICENSE +0 -21
  242. package/node_modules/tree-sitter-bash/README.md +0 -44
  243. package/node_modules/tree-sitter-bash/binding.gyp +0 -30
  244. package/node_modules/tree-sitter-bash/bindings/node/binding.cc +0 -20
  245. package/node_modules/tree-sitter-bash/bindings/node/binding_test.js +0 -9
  246. package/node_modules/tree-sitter-bash/bindings/node/index.d.ts +0 -28
  247. package/node_modules/tree-sitter-bash/bindings/node/index.js +0 -11
  248. package/node_modules/tree-sitter-bash/grammar.js +0 -1201
  249. package/node_modules/tree-sitter-bash/package.json +0 -60
  250. package/node_modules/tree-sitter-bash/prebuilds/darwin-arm64/tree-sitter-bash.node +0 -0
  251. package/node_modules/tree-sitter-bash/prebuilds/darwin-x64/tree-sitter-bash.node +0 -0
  252. package/node_modules/tree-sitter-bash/prebuilds/linux-arm64/tree-sitter-bash.node +0 -0
  253. package/node_modules/tree-sitter-bash/prebuilds/linux-x64/tree-sitter-bash.node +0 -0
  254. package/node_modules/tree-sitter-bash/prebuilds/win32-arm64/tree-sitter-bash.node +0 -0
  255. package/node_modules/tree-sitter-bash/prebuilds/win32-x64/tree-sitter-bash.node +0 -0
  256. package/node_modules/tree-sitter-bash/queries/highlights.scm +0 -56
  257. package/node_modules/tree-sitter-bash/src/grammar.json +0 -7145
  258. package/node_modules/tree-sitter-bash/src/node-types.json +0 -2894
  259. package/node_modules/tree-sitter-bash/src/parser.c +0 -350631
  260. package/node_modules/tree-sitter-bash/src/scanner.c +0 -1217
  261. package/node_modules/tree-sitter-bash/src/tree_sitter/alloc.h +0 -54
  262. package/node_modules/tree-sitter-bash/src/tree_sitter/array.h +0 -291
  263. package/node_modules/tree-sitter-bash/src/tree_sitter/parser.h +0 -286
  264. package/node_modules/tree-sitter-bash/tree-sitter-bash.wasm +0 -0
  265. package/node_modules/tree-sitter-bash/tree-sitter.json +0 -46
  266. package/packages/permission-system/node_modules/web-tree-sitter/LICENSE +0 -21
  267. package/packages/permission-system/node_modules/web-tree-sitter/README.md +0 -269
  268. package/packages/permission-system/node_modules/web-tree-sitter/debug/tree-sitter.cjs +0 -4558
  269. package/packages/permission-system/node_modules/web-tree-sitter/debug/tree-sitter.cjs.map +0 -7
  270. package/packages/permission-system/node_modules/web-tree-sitter/debug/tree-sitter.js +0 -4516
  271. package/packages/permission-system/node_modules/web-tree-sitter/debug/tree-sitter.js.map +0 -7
  272. package/packages/permission-system/node_modules/web-tree-sitter/debug/tree-sitter.wasm +0 -0
  273. package/packages/permission-system/node_modules/web-tree-sitter/debug/tree-sitter.wasm.map +0 -31
  274. package/packages/permission-system/node_modules/web-tree-sitter/lib/alloc.c +0 -48
  275. package/packages/permission-system/node_modules/web-tree-sitter/lib/alloc.h +0 -41
  276. package/packages/permission-system/node_modules/web-tree-sitter/lib/array.h +0 -291
  277. package/packages/permission-system/node_modules/web-tree-sitter/lib/atomic.h +0 -68
  278. package/packages/permission-system/node_modules/web-tree-sitter/lib/clock.h +0 -146
  279. package/packages/permission-system/node_modules/web-tree-sitter/lib/error_costs.h +0 -11
  280. package/packages/permission-system/node_modules/web-tree-sitter/lib/get_changed_ranges.c +0 -523
  281. package/packages/permission-system/node_modules/web-tree-sitter/lib/get_changed_ranges.h +0 -36
  282. package/packages/permission-system/node_modules/web-tree-sitter/lib/host.h +0 -21
  283. package/packages/permission-system/node_modules/web-tree-sitter/lib/language.c +0 -293
  284. package/packages/permission-system/node_modules/web-tree-sitter/lib/language.h +0 -293
  285. package/packages/permission-system/node_modules/web-tree-sitter/lib/length.h +0 -52
  286. package/packages/permission-system/node_modules/web-tree-sitter/lib/lexer.c +0 -483
  287. package/packages/permission-system/node_modules/web-tree-sitter/lib/lexer.h +0 -54
  288. package/packages/permission-system/node_modules/web-tree-sitter/lib/lib.c +0 -12
  289. package/packages/permission-system/node_modules/web-tree-sitter/lib/node.c +0 -875
  290. package/packages/permission-system/node_modules/web-tree-sitter/lib/parser.c +0 -2297
  291. package/packages/permission-system/node_modules/web-tree-sitter/lib/parser.h +0 -286
  292. package/packages/permission-system/node_modules/web-tree-sitter/lib/point.h +0 -48
  293. package/packages/permission-system/node_modules/web-tree-sitter/lib/query.c +0 -4347
  294. package/packages/permission-system/node_modules/web-tree-sitter/lib/reduce_action.h +0 -34
  295. package/packages/permission-system/node_modules/web-tree-sitter/lib/reusable_node.h +0 -95
  296. package/packages/permission-system/node_modules/web-tree-sitter/lib/stack.c +0 -912
  297. package/packages/permission-system/node_modules/web-tree-sitter/lib/stack.h +0 -133
  298. package/packages/permission-system/node_modules/web-tree-sitter/lib/subtree.c +0 -1034
  299. package/packages/permission-system/node_modules/web-tree-sitter/lib/subtree.h +0 -399
  300. package/packages/permission-system/node_modules/web-tree-sitter/lib/tree-sitter.c +0 -987
  301. package/packages/permission-system/node_modules/web-tree-sitter/lib/tree.c +0 -170
  302. package/packages/permission-system/node_modules/web-tree-sitter/lib/tree.h +0 -31
  303. package/packages/permission-system/node_modules/web-tree-sitter/lib/tree_cursor.c +0 -716
  304. package/packages/permission-system/node_modules/web-tree-sitter/lib/tree_cursor.h +0 -48
  305. package/packages/permission-system/node_modules/web-tree-sitter/lib/ts_assert.h +0 -11
  306. package/packages/permission-system/node_modules/web-tree-sitter/lib/unicode.h +0 -75
  307. package/packages/permission-system/node_modules/web-tree-sitter/lib/wasm_store.c +0 -1937
  308. package/packages/permission-system/node_modules/web-tree-sitter/lib/wasm_store.h +0 -31
  309. package/packages/permission-system/node_modules/web-tree-sitter/package.json +0 -98
  310. package/packages/permission-system/node_modules/web-tree-sitter/src/bindings.ts +0 -26
  311. package/packages/permission-system/node_modules/web-tree-sitter/src/constants.ts +0 -133
  312. package/packages/permission-system/node_modules/web-tree-sitter/src/index.ts +0 -31
  313. package/packages/permission-system/node_modules/web-tree-sitter/src/language.ts +0 -291
  314. package/packages/permission-system/node_modules/web-tree-sitter/src/lookahead_iterator.ts +0 -75
  315. package/packages/permission-system/node_modules/web-tree-sitter/src/marshal.ts +0 -176
  316. package/packages/permission-system/node_modules/web-tree-sitter/src/node.ts +0 -646
  317. package/packages/permission-system/node_modules/web-tree-sitter/src/parser.ts +0 -325
  318. package/packages/permission-system/node_modules/web-tree-sitter/src/query.ts +0 -973
  319. package/packages/permission-system/node_modules/web-tree-sitter/src/tree.ts +0 -145
  320. package/packages/permission-system/node_modules/web-tree-sitter/src/tree_cursor.ts +0 -318
  321. package/packages/permission-system/node_modules/web-tree-sitter/tree-sitter.cjs +0 -4031
  322. package/packages/permission-system/node_modules/web-tree-sitter/tree-sitter.cjs.map +0 -7
  323. package/packages/permission-system/node_modules/web-tree-sitter/tree-sitter.js +0 -3980
  324. package/packages/permission-system/node_modules/web-tree-sitter/tree-sitter.js.map +0 -7
  325. package/packages/permission-system/node_modules/web-tree-sitter/tree-sitter.wasm +0 -0
  326. package/packages/permission-system/node_modules/web-tree-sitter/tree-sitter.wasm.map +0 -30
  327. package/packages/permission-system/node_modules/web-tree-sitter/web-tree-sitter.d.ts +0 -1030
  328. package/packages/permission-system/node_modules/web-tree-sitter/web-tree-sitter.d.ts.map +0 -56
  329. package/packages/permission-system/node_modules/zod/LICENSE +0 -21
  330. package/packages/permission-system/node_modules/zod/README.md +0 -208
  331. package/packages/permission-system/node_modules/zod/index.cjs +0 -33
  332. package/packages/permission-system/node_modules/zod/index.d.cts +0 -4
  333. package/packages/permission-system/node_modules/zod/index.d.ts +0 -4
  334. package/packages/permission-system/node_modules/zod/index.js +0 -4
  335. package/packages/permission-system/node_modules/zod/package.json +0 -118
  336. package/packages/permission-system/node_modules/zod/src/index.ts +0 -4
  337. package/packages/permission-system/node_modules/zod/src/v3/ZodError.ts +0 -330
  338. package/packages/permission-system/node_modules/zod/src/v3/benchmarks/datetime.ts +0 -58
  339. package/packages/permission-system/node_modules/zod/src/v3/benchmarks/discriminatedUnion.ts +0 -80
  340. package/packages/permission-system/node_modules/zod/src/v3/benchmarks/index.ts +0 -59
  341. package/packages/permission-system/node_modules/zod/src/v3/benchmarks/ipv4.ts +0 -57
  342. package/packages/permission-system/node_modules/zod/src/v3/benchmarks/object.ts +0 -69
  343. package/packages/permission-system/node_modules/zod/src/v3/benchmarks/primitives.ts +0 -162
  344. package/packages/permission-system/node_modules/zod/src/v3/benchmarks/realworld.ts +0 -63
  345. package/packages/permission-system/node_modules/zod/src/v3/benchmarks/string.ts +0 -55
  346. package/packages/permission-system/node_modules/zod/src/v3/benchmarks/union.ts +0 -80
  347. package/packages/permission-system/node_modules/zod/src/v3/errors.ts +0 -13
  348. package/packages/permission-system/node_modules/zod/src/v3/external.ts +0 -6
  349. package/packages/permission-system/node_modules/zod/src/v3/helpers/enumUtil.ts +0 -17
  350. package/packages/permission-system/node_modules/zod/src/v3/helpers/errorUtil.ts +0 -8
  351. package/packages/permission-system/node_modules/zod/src/v3/helpers/parseUtil.ts +0 -176
  352. package/packages/permission-system/node_modules/zod/src/v3/helpers/partialUtil.ts +0 -34
  353. package/packages/permission-system/node_modules/zod/src/v3/helpers/typeAliases.ts +0 -2
  354. package/packages/permission-system/node_modules/zod/src/v3/helpers/util.ts +0 -224
  355. package/packages/permission-system/node_modules/zod/src/v3/index.ts +0 -4
  356. package/packages/permission-system/node_modules/zod/src/v3/locales/en.ts +0 -124
  357. package/packages/permission-system/node_modules/zod/src/v3/standard-schema.ts +0 -113
  358. package/packages/permission-system/node_modules/zod/src/v3/tests/Mocker.ts +0 -54
  359. package/packages/permission-system/node_modules/zod/src/v3/tests/all-errors.test.ts +0 -157
  360. package/packages/permission-system/node_modules/zod/src/v3/tests/anyunknown.test.ts +0 -28
  361. package/packages/permission-system/node_modules/zod/src/v3/tests/array.test.ts +0 -71
  362. package/packages/permission-system/node_modules/zod/src/v3/tests/async-parsing.test.ts +0 -388
  363. package/packages/permission-system/node_modules/zod/src/v3/tests/async-refinements.test.ts +0 -46
  364. package/packages/permission-system/node_modules/zod/src/v3/tests/base.test.ts +0 -29
  365. package/packages/permission-system/node_modules/zod/src/v3/tests/bigint.test.ts +0 -55
  366. package/packages/permission-system/node_modules/zod/src/v3/tests/branded.test.ts +0 -53
  367. package/packages/permission-system/node_modules/zod/src/v3/tests/catch.test.ts +0 -220
  368. package/packages/permission-system/node_modules/zod/src/v3/tests/coerce.test.ts +0 -133
  369. package/packages/permission-system/node_modules/zod/src/v3/tests/complex.test.ts +0 -56
  370. package/packages/permission-system/node_modules/zod/src/v3/tests/custom.test.ts +0 -31
  371. package/packages/permission-system/node_modules/zod/src/v3/tests/date.test.ts +0 -32
  372. package/packages/permission-system/node_modules/zod/src/v3/tests/deepmasking.test.ts +0 -186
  373. package/packages/permission-system/node_modules/zod/src/v3/tests/default.test.ts +0 -112
  374. package/packages/permission-system/node_modules/zod/src/v3/tests/description.test.ts +0 -33
  375. package/packages/permission-system/node_modules/zod/src/v3/tests/discriminated-unions.test.ts +0 -315
  376. package/packages/permission-system/node_modules/zod/src/v3/tests/enum.test.ts +0 -80
  377. package/packages/permission-system/node_modules/zod/src/v3/tests/error.test.ts +0 -551
  378. package/packages/permission-system/node_modules/zod/src/v3/tests/firstparty.test.ts +0 -87
  379. package/packages/permission-system/node_modules/zod/src/v3/tests/firstpartyschematypes.test.ts +0 -21
  380. package/packages/permission-system/node_modules/zod/src/v3/tests/function.test.ts +0 -257
  381. package/packages/permission-system/node_modules/zod/src/v3/tests/generics.test.ts +0 -48
  382. package/packages/permission-system/node_modules/zod/src/v3/tests/instanceof.test.ts +0 -37
  383. package/packages/permission-system/node_modules/zod/src/v3/tests/intersection.test.ts +0 -110
  384. package/packages/permission-system/node_modules/zod/src/v3/tests/language-server.source.ts +0 -76
  385. package/packages/permission-system/node_modules/zod/src/v3/tests/language-server.test.ts +0 -207
  386. package/packages/permission-system/node_modules/zod/src/v3/tests/literal.test.ts +0 -36
  387. package/packages/permission-system/node_modules/zod/src/v3/tests/map.test.ts +0 -110
  388. package/packages/permission-system/node_modules/zod/src/v3/tests/masking.test.ts +0 -4
  389. package/packages/permission-system/node_modules/zod/src/v3/tests/mocker.test.ts +0 -19
  390. package/packages/permission-system/node_modules/zod/src/v3/tests/nan.test.ts +0 -21
  391. package/packages/permission-system/node_modules/zod/src/v3/tests/nativeEnum.test.ts +0 -87
  392. package/packages/permission-system/node_modules/zod/src/v3/tests/nullable.test.ts +0 -42
  393. package/packages/permission-system/node_modules/zod/src/v3/tests/number.test.ts +0 -176
  394. package/packages/permission-system/node_modules/zod/src/v3/tests/object-augmentation.test.ts +0 -29
  395. package/packages/permission-system/node_modules/zod/src/v3/tests/object-in-es5-env.test.ts +0 -29
  396. package/packages/permission-system/node_modules/zod/src/v3/tests/object.test.ts +0 -434
  397. package/packages/permission-system/node_modules/zod/src/v3/tests/optional.test.ts +0 -42
  398. package/packages/permission-system/node_modules/zod/src/v3/tests/parseUtil.test.ts +0 -23
  399. package/packages/permission-system/node_modules/zod/src/v3/tests/parser.test.ts +0 -41
  400. package/packages/permission-system/node_modules/zod/src/v3/tests/partials.test.ts +0 -243
  401. package/packages/permission-system/node_modules/zod/src/v3/tests/pickomit.test.ts +0 -111
  402. package/packages/permission-system/node_modules/zod/src/v3/tests/pipeline.test.ts +0 -29
  403. package/packages/permission-system/node_modules/zod/src/v3/tests/preprocess.test.ts +0 -186
  404. package/packages/permission-system/node_modules/zod/src/v3/tests/primitive.test.ts +0 -440
  405. package/packages/permission-system/node_modules/zod/src/v3/tests/promise.test.ts +0 -90
  406. package/packages/permission-system/node_modules/zod/src/v3/tests/readonly.test.ts +0 -194
  407. package/packages/permission-system/node_modules/zod/src/v3/tests/record.test.ts +0 -171
  408. package/packages/permission-system/node_modules/zod/src/v3/tests/recursive.test.ts +0 -197
  409. package/packages/permission-system/node_modules/zod/src/v3/tests/refine.test.ts +0 -313
  410. package/packages/permission-system/node_modules/zod/src/v3/tests/safeparse.test.ts +0 -27
  411. package/packages/permission-system/node_modules/zod/src/v3/tests/set.test.ts +0 -142
  412. package/packages/permission-system/node_modules/zod/src/v3/tests/standard-schema.test.ts +0 -83
  413. package/packages/permission-system/node_modules/zod/src/v3/tests/string.test.ts +0 -916
  414. package/packages/permission-system/node_modules/zod/src/v3/tests/transformer.test.ts +0 -233
  415. package/packages/permission-system/node_modules/zod/src/v3/tests/tuple.test.ts +0 -90
  416. package/packages/permission-system/node_modules/zod/src/v3/tests/unions.test.ts +0 -57
  417. package/packages/permission-system/node_modules/zod/src/v3/tests/validations.test.ts +0 -133
  418. package/packages/permission-system/node_modules/zod/src/v3/tests/void.test.ts +0 -15
  419. package/packages/permission-system/node_modules/zod/src/v3/types.ts +0 -5136
  420. package/packages/permission-system/node_modules/zod/src/v4/classic/checks.ts +0 -30
  421. package/packages/permission-system/node_modules/zod/src/v4/classic/coerce.ts +0 -27
  422. package/packages/permission-system/node_modules/zod/src/v4/classic/compat.ts +0 -66
  423. package/packages/permission-system/node_modules/zod/src/v4/classic/errors.ts +0 -75
  424. package/packages/permission-system/node_modules/zod/src/v4/classic/external.ts +0 -50
  425. package/packages/permission-system/node_modules/zod/src/v4/classic/index.ts +0 -5
  426. package/packages/permission-system/node_modules/zod/src/v4/classic/iso.ts +0 -90
  427. package/packages/permission-system/node_modules/zod/src/v4/classic/parse.ts +0 -33
  428. package/packages/permission-system/node_modules/zod/src/v4/classic/schemas.ts +0 -2054
  429. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/anyunknown.test.ts +0 -26
  430. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/array.test.ts +0 -264
  431. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/assignability.test.ts +0 -210
  432. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/async-parsing.test.ts +0 -381
  433. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/async-refinements.test.ts +0 -68
  434. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/base.test.ts +0 -7
  435. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/bigint.test.ts +0 -54
  436. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/brand.test.ts +0 -63
  437. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/catch.test.ts +0 -252
  438. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/coalesce.test.ts +0 -20
  439. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/coerce.test.ts +0 -160
  440. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/continuability.test.ts +0 -352
  441. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/custom.test.ts +0 -40
  442. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/date.test.ts +0 -31
  443. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/datetime.test.ts +0 -296
  444. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/default.test.ts +0 -313
  445. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/description.test.ts +0 -32
  446. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/discriminated-unions.test.ts +0 -619
  447. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/enum.test.ts +0 -285
  448. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/error-utils.test.ts +0 -527
  449. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/error.test.ts +0 -711
  450. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/file.test.ts +0 -91
  451. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/firstparty.test.ts +0 -175
  452. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/function.test.ts +0 -268
  453. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/generics.test.ts +0 -72
  454. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/index.test.ts +0 -829
  455. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/instanceof.test.ts +0 -34
  456. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/intersection.test.ts +0 -171
  457. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/json.test.ts +0 -108
  458. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/lazy.test.ts +0 -227
  459. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/literal.test.ts +0 -92
  460. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/map.test.ts +0 -196
  461. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/nan.test.ts +0 -21
  462. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/nested-refine.test.ts +0 -168
  463. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/nonoptional.test.ts +0 -86
  464. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/nullable.test.ts +0 -22
  465. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/number.test.ts +0 -247
  466. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/object.test.ts +0 -563
  467. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/optional.test.ts +0 -123
  468. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/partial.test.ts +0 -147
  469. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/pickomit.test.ts +0 -127
  470. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/pipe.test.ts +0 -81
  471. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/prefault.test.ts +0 -37
  472. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/preprocess.test.ts +0 -298
  473. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/primitive.test.ts +0 -175
  474. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/promise.test.ts +0 -81
  475. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/prototypes.test.ts +0 -23
  476. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/readonly.test.ts +0 -252
  477. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/record.test.ts +0 -342
  478. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/recursive-types.test.ts +0 -356
  479. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/refine.test.ts +0 -532
  480. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/registries.test.ts +0 -204
  481. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/set.test.ts +0 -179
  482. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/standard-schema.test.ts +0 -57
  483. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/string-formats.test.ts +0 -109
  484. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/string.test.ts +0 -881
  485. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/stringbool.test.ts +0 -66
  486. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/template-literal.test.ts +0 -758
  487. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/to-json-schema.test.ts +0 -2314
  488. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/transform.test.ts +0 -250
  489. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/tuple.test.ts +0 -163
  490. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/union.test.ts +0 -94
  491. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/validations.test.ts +0 -283
  492. package/packages/permission-system/node_modules/zod/src/v4/classic/tests/void.test.ts +0 -12
  493. package/packages/permission-system/node_modules/zod/src/v4/core/api.ts +0 -1594
  494. package/packages/permission-system/node_modules/zod/src/v4/core/checks.ts +0 -1283
  495. package/packages/permission-system/node_modules/zod/src/v4/core/config.ts +0 -15
  496. package/packages/permission-system/node_modules/zod/src/v4/core/core.ts +0 -134
  497. package/packages/permission-system/node_modules/zod/src/v4/core/doc.ts +0 -44
  498. package/packages/permission-system/node_modules/zod/src/v4/core/errors.ts +0 -424
  499. package/packages/permission-system/node_modules/zod/src/v4/core/function.ts +0 -176
  500. package/packages/permission-system/node_modules/zod/src/v4/core/index.ts +0 -15
  501. package/packages/permission-system/node_modules/zod/src/v4/core/json-schema.ts +0 -143
  502. package/packages/permission-system/node_modules/zod/src/v4/core/parse.ts +0 -94
  503. package/packages/permission-system/node_modules/zod/src/v4/core/regexes.ts +0 -135
  504. package/packages/permission-system/node_modules/zod/src/v4/core/registries.ts +0 -96
  505. package/packages/permission-system/node_modules/zod/src/v4/core/schemas.ts +0 -3842
  506. package/packages/permission-system/node_modules/zod/src/v4/core/standard-schema.ts +0 -64
  507. package/packages/permission-system/node_modules/zod/src/v4/core/tests/index.test.ts +0 -46
  508. package/packages/permission-system/node_modules/zod/src/v4/core/tests/locales/be.test.ts +0 -124
  509. package/packages/permission-system/node_modules/zod/src/v4/core/tests/locales/en.test.ts +0 -22
  510. package/packages/permission-system/node_modules/zod/src/v4/core/tests/locales/ru.test.ts +0 -128
  511. package/packages/permission-system/node_modules/zod/src/v4/core/tests/locales/tr.test.ts +0 -69
  512. package/packages/permission-system/node_modules/zod/src/v4/core/to-json-schema.ts +0 -977
  513. package/packages/permission-system/node_modules/zod/src/v4/core/util.ts +0 -775
  514. package/packages/permission-system/node_modules/zod/src/v4/core/versions.ts +0 -5
  515. package/packages/permission-system/node_modules/zod/src/v4/core/zsf.ts +0 -323
  516. package/packages/permission-system/node_modules/zod/src/v4/index.ts +0 -4
  517. package/packages/permission-system/node_modules/zod/src/v4/locales/ar.ts +0 -125
  518. package/packages/permission-system/node_modules/zod/src/v4/locales/az.ts +0 -121
  519. package/packages/permission-system/node_modules/zod/src/v4/locales/be.ts +0 -184
  520. package/packages/permission-system/node_modules/zod/src/v4/locales/ca.ts +0 -127
  521. package/packages/permission-system/node_modules/zod/src/v4/locales/cs.ts +0 -142
  522. package/packages/permission-system/node_modules/zod/src/v4/locales/de.ts +0 -124
  523. package/packages/permission-system/node_modules/zod/src/v4/locales/en.ts +0 -127
  524. package/packages/permission-system/node_modules/zod/src/v4/locales/eo.ts +0 -125
  525. package/packages/permission-system/node_modules/zod/src/v4/locales/es.ts +0 -125
  526. package/packages/permission-system/node_modules/zod/src/v4/locales/fa.ts +0 -134
  527. package/packages/permission-system/node_modules/zod/src/v4/locales/fi.ts +0 -131
  528. package/packages/permission-system/node_modules/zod/src/v4/locales/fr-CA.ts +0 -126
  529. package/packages/permission-system/node_modules/zod/src/v4/locales/fr.ts +0 -124
  530. package/packages/permission-system/node_modules/zod/src/v4/locales/he.ts +0 -125
  531. package/packages/permission-system/node_modules/zod/src/v4/locales/hu.ts +0 -126
  532. package/packages/permission-system/node_modules/zod/src/v4/locales/id.ts +0 -125
  533. package/packages/permission-system/node_modules/zod/src/v4/locales/index.ts +0 -39
  534. package/packages/permission-system/node_modules/zod/src/v4/locales/it.ts +0 -125
  535. package/packages/permission-system/node_modules/zod/src/v4/locales/ja.ts +0 -122
  536. package/packages/permission-system/node_modules/zod/src/v4/locales/kh.ts +0 -126
  537. package/packages/permission-system/node_modules/zod/src/v4/locales/ko.ts +0 -131
  538. package/packages/permission-system/node_modules/zod/src/v4/locales/mk.ts +0 -127
  539. package/packages/permission-system/node_modules/zod/src/v4/locales/ms.ts +0 -124
  540. package/packages/permission-system/node_modules/zod/src/v4/locales/nl.ts +0 -126
  541. package/packages/permission-system/node_modules/zod/src/v4/locales/no.ts +0 -124
  542. package/packages/permission-system/node_modules/zod/src/v4/locales/ota.ts +0 -125
  543. package/packages/permission-system/node_modules/zod/src/v4/locales/pl.ts +0 -126
  544. package/packages/permission-system/node_modules/zod/src/v4/locales/ps.ts +0 -133
  545. package/packages/permission-system/node_modules/zod/src/v4/locales/pt.ts +0 -123
  546. package/packages/permission-system/node_modules/zod/src/v4/locales/ru.ts +0 -184
  547. package/packages/permission-system/node_modules/zod/src/v4/locales/sl.ts +0 -126
  548. package/packages/permission-system/node_modules/zod/src/v4/locales/sv.ts +0 -127
  549. package/packages/permission-system/node_modules/zod/src/v4/locales/ta.ts +0 -125
  550. package/packages/permission-system/node_modules/zod/src/v4/locales/th.ts +0 -126
  551. package/packages/permission-system/node_modules/zod/src/v4/locales/tr.ts +0 -121
  552. package/packages/permission-system/node_modules/zod/src/v4/locales/ua.ts +0 -126
  553. package/packages/permission-system/node_modules/zod/src/v4/locales/ur.ts +0 -126
  554. package/packages/permission-system/node_modules/zod/src/v4/locales/vi.ts +0 -125
  555. package/packages/permission-system/node_modules/zod/src/v4/locales/zh-CN.ts +0 -123
  556. package/packages/permission-system/node_modules/zod/src/v4/locales/zh-TW.ts +0 -125
  557. package/packages/permission-system/node_modules/zod/src/v4/mini/checks.ts +0 -32
  558. package/packages/permission-system/node_modules/zod/src/v4/mini/coerce.ts +0 -22
  559. package/packages/permission-system/node_modules/zod/src/v4/mini/external.ts +0 -40
  560. package/packages/permission-system/node_modules/zod/src/v4/mini/index.ts +0 -3
  561. package/packages/permission-system/node_modules/zod/src/v4/mini/iso.ts +0 -62
  562. package/packages/permission-system/node_modules/zod/src/v4/mini/parse.ts +0 -1
  563. package/packages/permission-system/node_modules/zod/src/v4/mini/schemas.ts +0 -1579
  564. package/packages/permission-system/node_modules/zod/src/v4/mini/tests/assignability.test.ts +0 -129
  565. package/packages/permission-system/node_modules/zod/src/v4/mini/tests/brand.test.ts +0 -51
  566. package/packages/permission-system/node_modules/zod/src/v4/mini/tests/checks.test.ts +0 -144
  567. package/packages/permission-system/node_modules/zod/src/v4/mini/tests/computed.test.ts +0 -36
  568. package/packages/permission-system/node_modules/zod/src/v4/mini/tests/error.test.ts +0 -22
  569. package/packages/permission-system/node_modules/zod/src/v4/mini/tests/functions.test.ts +0 -43
  570. package/packages/permission-system/node_modules/zod/src/v4/mini/tests/index.test.ts +0 -871
  571. package/packages/permission-system/node_modules/zod/src/v4/mini/tests/number.test.ts +0 -95
  572. package/packages/permission-system/node_modules/zod/src/v4/mini/tests/object.test.ts +0 -185
  573. package/packages/permission-system/node_modules/zod/src/v4/mini/tests/prototypes.test.ts +0 -43
  574. package/packages/permission-system/node_modules/zod/src/v4/mini/tests/recursive-types.test.ts +0 -275
  575. package/packages/permission-system/node_modules/zod/src/v4/mini/tests/string.test.ts +0 -299
  576. package/packages/permission-system/node_modules/zod/src/v4-mini/index.ts +0 -1
  577. package/packages/permission-system/node_modules/zod/v3/ZodError.cjs +0 -138
  578. package/packages/permission-system/node_modules/zod/v3/ZodError.d.cts +0 -164
  579. package/packages/permission-system/node_modules/zod/v3/ZodError.d.ts +0 -164
  580. package/packages/permission-system/node_modules/zod/v3/ZodError.js +0 -133
  581. package/packages/permission-system/node_modules/zod/v3/errors.cjs +0 -17
  582. package/packages/permission-system/node_modules/zod/v3/errors.d.cts +0 -5
  583. package/packages/permission-system/node_modules/zod/v3/errors.d.ts +0 -5
  584. package/packages/permission-system/node_modules/zod/v3/errors.js +0 -9
  585. package/packages/permission-system/node_modules/zod/v3/external.cjs +0 -22
  586. package/packages/permission-system/node_modules/zod/v3/external.d.cts +0 -6
  587. package/packages/permission-system/node_modules/zod/v3/external.d.ts +0 -6
  588. package/packages/permission-system/node_modules/zod/v3/external.js +0 -6
  589. package/packages/permission-system/node_modules/zod/v3/helpers/enumUtil.cjs +0 -2
  590. package/packages/permission-system/node_modules/zod/v3/helpers/enumUtil.d.cts +0 -8
  591. package/packages/permission-system/node_modules/zod/v3/helpers/enumUtil.d.ts +0 -8
  592. package/packages/permission-system/node_modules/zod/v3/helpers/enumUtil.js +0 -1
  593. package/packages/permission-system/node_modules/zod/v3/helpers/errorUtil.cjs +0 -9
  594. package/packages/permission-system/node_modules/zod/v3/helpers/errorUtil.d.cts +0 -9
  595. package/packages/permission-system/node_modules/zod/v3/helpers/errorUtil.d.ts +0 -9
  596. package/packages/permission-system/node_modules/zod/v3/helpers/errorUtil.js +0 -6
  597. package/packages/permission-system/node_modules/zod/v3/helpers/parseUtil.cjs +0 -124
  598. package/packages/permission-system/node_modules/zod/v3/helpers/parseUtil.d.cts +0 -78
  599. package/packages/permission-system/node_modules/zod/v3/helpers/parseUtil.d.ts +0 -78
  600. package/packages/permission-system/node_modules/zod/v3/helpers/parseUtil.js +0 -109
  601. package/packages/permission-system/node_modules/zod/v3/helpers/partialUtil.cjs +0 -2
  602. package/packages/permission-system/node_modules/zod/v3/helpers/partialUtil.d.cts +0 -8
  603. package/packages/permission-system/node_modules/zod/v3/helpers/partialUtil.d.ts +0 -8
  604. package/packages/permission-system/node_modules/zod/v3/helpers/partialUtil.js +0 -1
  605. package/packages/permission-system/node_modules/zod/v3/helpers/typeAliases.cjs +0 -2
  606. package/packages/permission-system/node_modules/zod/v3/helpers/typeAliases.d.cts +0 -2
  607. package/packages/permission-system/node_modules/zod/v3/helpers/typeAliases.d.ts +0 -2
  608. package/packages/permission-system/node_modules/zod/v3/helpers/typeAliases.js +0 -1
  609. package/packages/permission-system/node_modules/zod/v3/helpers/util.cjs +0 -137
  610. package/packages/permission-system/node_modules/zod/v3/helpers/util.d.cts +0 -85
  611. package/packages/permission-system/node_modules/zod/v3/helpers/util.d.ts +0 -85
  612. package/packages/permission-system/node_modules/zod/v3/helpers/util.js +0 -133
  613. package/packages/permission-system/node_modules/zod/v3/index.cjs +0 -33
  614. package/packages/permission-system/node_modules/zod/v3/index.d.cts +0 -4
  615. package/packages/permission-system/node_modules/zod/v3/index.d.ts +0 -4
  616. package/packages/permission-system/node_modules/zod/v3/index.js +0 -4
  617. package/packages/permission-system/node_modules/zod/v3/locales/en.cjs +0 -111
  618. package/packages/permission-system/node_modules/zod/v3/locales/en.d.cts +0 -3
  619. package/packages/permission-system/node_modules/zod/v3/locales/en.d.ts +0 -3
  620. package/packages/permission-system/node_modules/zod/v3/locales/en.js +0 -109
  621. package/packages/permission-system/node_modules/zod/v3/standard-schema.cjs +0 -2
  622. package/packages/permission-system/node_modules/zod/v3/standard-schema.d.cts +0 -102
  623. package/packages/permission-system/node_modules/zod/v3/standard-schema.d.ts +0 -102
  624. package/packages/permission-system/node_modules/zod/v3/standard-schema.js +0 -1
  625. package/packages/permission-system/node_modules/zod/v3/types.cjs +0 -3775
  626. package/packages/permission-system/node_modules/zod/v3/types.d.cts +0 -1031
  627. package/packages/permission-system/node_modules/zod/v3/types.d.ts +0 -1031
  628. package/packages/permission-system/node_modules/zod/v3/types.js +0 -3693
  629. package/packages/permission-system/node_modules/zod/v4/classic/checks.cjs +0 -32
  630. package/packages/permission-system/node_modules/zod/v4/classic/checks.d.cts +0 -1
  631. package/packages/permission-system/node_modules/zod/v4/classic/checks.d.ts +0 -1
  632. package/packages/permission-system/node_modules/zod/v4/classic/checks.js +0 -1
  633. package/packages/permission-system/node_modules/zod/v4/classic/coerce.cjs +0 -47
  634. package/packages/permission-system/node_modules/zod/v4/classic/coerce.d.cts +0 -17
  635. package/packages/permission-system/node_modules/zod/v4/classic/coerce.d.ts +0 -17
  636. package/packages/permission-system/node_modules/zod/v4/classic/coerce.js +0 -17
  637. package/packages/permission-system/node_modules/zod/v4/classic/compat.cjs +0 -57
  638. package/packages/permission-system/node_modules/zod/v4/classic/compat.d.cts +0 -46
  639. package/packages/permission-system/node_modules/zod/v4/classic/compat.d.ts +0 -46
  640. package/packages/permission-system/node_modules/zod/v4/classic/compat.js +0 -27
  641. package/packages/permission-system/node_modules/zod/v4/classic/errors.cjs +0 -67
  642. package/packages/permission-system/node_modules/zod/v4/classic/errors.d.cts +0 -30
  643. package/packages/permission-system/node_modules/zod/v4/classic/errors.d.ts +0 -30
  644. package/packages/permission-system/node_modules/zod/v4/classic/errors.js +0 -41
  645. package/packages/permission-system/node_modules/zod/v4/classic/external.cjs +0 -70
  646. package/packages/permission-system/node_modules/zod/v4/classic/external.d.cts +0 -13
  647. package/packages/permission-system/node_modules/zod/v4/classic/external.d.ts +0 -13
  648. package/packages/permission-system/node_modules/zod/v4/classic/external.js +0 -18
  649. package/packages/permission-system/node_modules/zod/v4/classic/index.cjs +0 -33
  650. package/packages/permission-system/node_modules/zod/v4/classic/index.d.cts +0 -4
  651. package/packages/permission-system/node_modules/zod/v4/classic/index.d.ts +0 -4
  652. package/packages/permission-system/node_modules/zod/v4/classic/index.js +0 -4
  653. package/packages/permission-system/node_modules/zod/v4/classic/iso.cjs +0 -60
  654. package/packages/permission-system/node_modules/zod/v4/classic/iso.d.cts +0 -22
  655. package/packages/permission-system/node_modules/zod/v4/classic/iso.d.ts +0 -22
  656. package/packages/permission-system/node_modules/zod/v4/classic/iso.js +0 -30
  657. package/packages/permission-system/node_modules/zod/v4/classic/parse.cjs +0 -32
  658. package/packages/permission-system/node_modules/zod/v4/classic/parse.d.cts +0 -23
  659. package/packages/permission-system/node_modules/zod/v4/classic/parse.d.ts +0 -23
  660. package/packages/permission-system/node_modules/zod/v4/classic/parse.js +0 -6
  661. package/packages/permission-system/node_modules/zod/v4/classic/schemas.cjs +0 -1109
  662. package/packages/permission-system/node_modules/zod/v4/classic/schemas.d.cts +0 -630
  663. package/packages/permission-system/node_modules/zod/v4/classic/schemas.d.ts +0 -630
  664. package/packages/permission-system/node_modules/zod/v4/classic/schemas.js +0 -1006
  665. package/packages/permission-system/node_modules/zod/v4/core/api.cjs +0 -1039
  666. package/packages/permission-system/node_modules/zod/v4/core/api.d.cts +0 -284
  667. package/packages/permission-system/node_modules/zod/v4/core/api.d.ts +0 -284
  668. package/packages/permission-system/node_modules/zod/v4/core/api.js +0 -906
  669. package/packages/permission-system/node_modules/zod/v4/core/checks.cjs +0 -591
  670. package/packages/permission-system/node_modules/zod/v4/core/checks.d.cts +0 -278
  671. package/packages/permission-system/node_modules/zod/v4/core/checks.d.ts +0 -278
  672. package/packages/permission-system/node_modules/zod/v4/core/checks.js +0 -565
  673. package/packages/permission-system/node_modules/zod/v4/core/core.cjs +0 -67
  674. package/packages/permission-system/node_modules/zod/v4/core/core.d.cts +0 -49
  675. package/packages/permission-system/node_modules/zod/v4/core/core.d.ts +0 -49
  676. package/packages/permission-system/node_modules/zod/v4/core/core.js +0 -61
  677. package/packages/permission-system/node_modules/zod/v4/core/doc.cjs +0 -39
  678. package/packages/permission-system/node_modules/zod/v4/core/doc.d.cts +0 -14
  679. package/packages/permission-system/node_modules/zod/v4/core/doc.d.ts +0 -14
  680. package/packages/permission-system/node_modules/zod/v4/core/doc.js +0 -35
  681. package/packages/permission-system/node_modules/zod/v4/core/errors.cjs +0 -226
  682. package/packages/permission-system/node_modules/zod/v4/core/errors.d.cts +0 -208
  683. package/packages/permission-system/node_modules/zod/v4/core/errors.d.ts +0 -208
  684. package/packages/permission-system/node_modules/zod/v4/core/errors.js +0 -195
  685. package/packages/permission-system/node_modules/zod/v4/core/function.cjs +0 -102
  686. package/packages/permission-system/node_modules/zod/v4/core/function.d.cts +0 -52
  687. package/packages/permission-system/node_modules/zod/v4/core/function.d.ts +0 -52
  688. package/packages/permission-system/node_modules/zod/v4/core/function.js +0 -75
  689. package/packages/permission-system/node_modules/zod/v4/core/index.cjs +0 -44
  690. package/packages/permission-system/node_modules/zod/v4/core/index.d.cts +0 -15
  691. package/packages/permission-system/node_modules/zod/v4/core/index.d.ts +0 -15
  692. package/packages/permission-system/node_modules/zod/v4/core/index.js +0 -15
  693. package/packages/permission-system/node_modules/zod/v4/core/json-schema.cjs +0 -2
  694. package/packages/permission-system/node_modules/zod/v4/core/json-schema.d.cts +0 -87
  695. package/packages/permission-system/node_modules/zod/v4/core/json-schema.d.ts +0 -87
  696. package/packages/permission-system/node_modules/zod/v4/core/json-schema.js +0 -1
  697. package/packages/permission-system/node_modules/zod/v4/core/parse.cjs +0 -87
  698. package/packages/permission-system/node_modules/zod/v4/core/parse.d.cts +0 -25
  699. package/packages/permission-system/node_modules/zod/v4/core/parse.d.ts +0 -25
  700. package/packages/permission-system/node_modules/zod/v4/core/parse.js +0 -57
  701. package/packages/permission-system/node_modules/zod/v4/core/regexes.cjs +0 -103
  702. package/packages/permission-system/node_modules/zod/v4/core/regexes.d.cts +0 -62
  703. package/packages/permission-system/node_modules/zod/v4/core/regexes.d.ts +0 -62
  704. package/packages/permission-system/node_modules/zod/v4/core/regexes.js +0 -95
  705. package/packages/permission-system/node_modules/zod/v4/core/registries.cjs +0 -56
  706. package/packages/permission-system/node_modules/zod/v4/core/registries.d.cts +0 -35
  707. package/packages/permission-system/node_modules/zod/v4/core/registries.d.ts +0 -35
  708. package/packages/permission-system/node_modules/zod/v4/core/registries.js +0 -51
  709. package/packages/permission-system/node_modules/zod/v4/core/schemas.cjs +0 -1748
  710. package/packages/permission-system/node_modules/zod/v4/core/schemas.d.cts +0 -1041
  711. package/packages/permission-system/node_modules/zod/v4/core/schemas.d.ts +0 -1041
  712. package/packages/permission-system/node_modules/zod/v4/core/schemas.js +0 -1717
  713. package/packages/permission-system/node_modules/zod/v4/core/standard-schema.cjs +0 -2
  714. package/packages/permission-system/node_modules/zod/v4/core/standard-schema.d.cts +0 -55
  715. package/packages/permission-system/node_modules/zod/v4/core/standard-schema.d.ts +0 -55
  716. package/packages/permission-system/node_modules/zod/v4/core/standard-schema.js +0 -1
  717. package/packages/permission-system/node_modules/zod/v4/core/to-json-schema.cjs +0 -854
  718. package/packages/permission-system/node_modules/zod/v4/core/to-json-schema.d.cts +0 -88
  719. package/packages/permission-system/node_modules/zod/v4/core/to-json-schema.d.ts +0 -88
  720. package/packages/permission-system/node_modules/zod/v4/core/to-json-schema.js +0 -849
  721. package/packages/permission-system/node_modules/zod/v4/core/util.cjs +0 -539
  722. package/packages/permission-system/node_modules/zod/v4/core/util.d.cts +0 -183
  723. package/packages/permission-system/node_modules/zod/v4/core/util.d.ts +0 -183
  724. package/packages/permission-system/node_modules/zod/v4/core/util.js +0 -493
  725. package/packages/permission-system/node_modules/zod/v4/core/versions.cjs +0 -8
  726. package/packages/permission-system/node_modules/zod/v4/core/versions.d.cts +0 -5
  727. package/packages/permission-system/node_modules/zod/v4/core/versions.d.ts +0 -5
  728. package/packages/permission-system/node_modules/zod/v4/core/versions.js +0 -5
  729. package/packages/permission-system/node_modules/zod/v4/index.cjs +0 -22
  730. package/packages/permission-system/node_modules/zod/v4/index.d.cts +0 -3
  731. package/packages/permission-system/node_modules/zod/v4/index.d.ts +0 -3
  732. package/packages/permission-system/node_modules/zod/v4/index.js +0 -3
  733. package/packages/permission-system/node_modules/zod/v4/locales/ar.cjs +0 -142
  734. package/packages/permission-system/node_modules/zod/v4/locales/ar.d.cts +0 -4
  735. package/packages/permission-system/node_modules/zod/v4/locales/ar.d.ts +0 -4
  736. package/packages/permission-system/node_modules/zod/v4/locales/ar.js +0 -116
  737. package/packages/permission-system/node_modules/zod/v4/locales/az.cjs +0 -141
  738. package/packages/permission-system/node_modules/zod/v4/locales/az.d.cts +0 -4
  739. package/packages/permission-system/node_modules/zod/v4/locales/az.d.ts +0 -4
  740. package/packages/permission-system/node_modules/zod/v4/locales/az.js +0 -115
  741. package/packages/permission-system/node_modules/zod/v4/locales/be.cjs +0 -190
  742. package/packages/permission-system/node_modules/zod/v4/locales/be.d.cts +0 -4
  743. package/packages/permission-system/node_modules/zod/v4/locales/be.d.ts +0 -4
  744. package/packages/permission-system/node_modules/zod/v4/locales/be.js +0 -164
  745. package/packages/permission-system/node_modules/zod/v4/locales/ca.cjs +0 -144
  746. package/packages/permission-system/node_modules/zod/v4/locales/ca.d.cts +0 -4
  747. package/packages/permission-system/node_modules/zod/v4/locales/ca.d.ts +0 -4
  748. package/packages/permission-system/node_modules/zod/v4/locales/ca.js +0 -118
  749. package/packages/permission-system/node_modules/zod/v4/locales/cs.cjs +0 -161
  750. package/packages/permission-system/node_modules/zod/v4/locales/cs.d.cts +0 -4
  751. package/packages/permission-system/node_modules/zod/v4/locales/cs.d.ts +0 -4
  752. package/packages/permission-system/node_modules/zod/v4/locales/cs.js +0 -135
  753. package/packages/permission-system/node_modules/zod/v4/locales/de.cjs +0 -142
  754. package/packages/permission-system/node_modules/zod/v4/locales/de.d.cts +0 -4
  755. package/packages/permission-system/node_modules/zod/v4/locales/de.d.ts +0 -4
  756. package/packages/permission-system/node_modules/zod/v4/locales/de.js +0 -116
  757. package/packages/permission-system/node_modules/zod/v4/locales/en.cjs +0 -145
  758. package/packages/permission-system/node_modules/zod/v4/locales/en.d.cts +0 -5
  759. package/packages/permission-system/node_modules/zod/v4/locales/en.d.ts +0 -5
  760. package/packages/permission-system/node_modules/zod/v4/locales/en.js +0 -117
  761. package/packages/permission-system/node_modules/zod/v4/locales/eo.cjs +0 -144
  762. package/packages/permission-system/node_modules/zod/v4/locales/eo.d.cts +0 -5
  763. package/packages/permission-system/node_modules/zod/v4/locales/eo.d.ts +0 -5
  764. package/packages/permission-system/node_modules/zod/v4/locales/eo.js +0 -116
  765. package/packages/permission-system/node_modules/zod/v4/locales/es.cjs +0 -143
  766. package/packages/permission-system/node_modules/zod/v4/locales/es.d.cts +0 -4
  767. package/packages/permission-system/node_modules/zod/v4/locales/es.d.ts +0 -4
  768. package/packages/permission-system/node_modules/zod/v4/locales/es.js +0 -117
  769. package/packages/permission-system/node_modules/zod/v4/locales/fa.cjs +0 -148
  770. package/packages/permission-system/node_modules/zod/v4/locales/fa.d.cts +0 -4
  771. package/packages/permission-system/node_modules/zod/v4/locales/fa.d.ts +0 -4
  772. package/packages/permission-system/node_modules/zod/v4/locales/fa.js +0 -122
  773. package/packages/permission-system/node_modules/zod/v4/locales/fi.cjs +0 -148
  774. package/packages/permission-system/node_modules/zod/v4/locales/fi.d.cts +0 -4
  775. package/packages/permission-system/node_modules/zod/v4/locales/fi.d.ts +0 -4
  776. package/packages/permission-system/node_modules/zod/v4/locales/fi.js +0 -122
  777. package/packages/permission-system/node_modules/zod/v4/locales/fr-CA.cjs +0 -143
  778. package/packages/permission-system/node_modules/zod/v4/locales/fr-CA.d.cts +0 -4
  779. package/packages/permission-system/node_modules/zod/v4/locales/fr-CA.d.ts +0 -4
  780. package/packages/permission-system/node_modules/zod/v4/locales/fr-CA.js +0 -117
  781. package/packages/permission-system/node_modules/zod/v4/locales/fr.cjs +0 -142
  782. package/packages/permission-system/node_modules/zod/v4/locales/fr.d.cts +0 -4
  783. package/packages/permission-system/node_modules/zod/v4/locales/fr.d.ts +0 -4
  784. package/packages/permission-system/node_modules/zod/v4/locales/fr.js +0 -116
  785. package/packages/permission-system/node_modules/zod/v4/locales/he.cjs +0 -143
  786. package/packages/permission-system/node_modules/zod/v4/locales/he.d.cts +0 -4
  787. package/packages/permission-system/node_modules/zod/v4/locales/he.d.ts +0 -4
  788. package/packages/permission-system/node_modules/zod/v4/locales/he.js +0 -117
  789. package/packages/permission-system/node_modules/zod/v4/locales/hu.cjs +0 -143
  790. package/packages/permission-system/node_modules/zod/v4/locales/hu.d.cts +0 -4
  791. package/packages/permission-system/node_modules/zod/v4/locales/hu.d.ts +0 -4
  792. package/packages/permission-system/node_modules/zod/v4/locales/hu.js +0 -117
  793. package/packages/permission-system/node_modules/zod/v4/locales/id.cjs +0 -142
  794. package/packages/permission-system/node_modules/zod/v4/locales/id.d.cts +0 -4
  795. package/packages/permission-system/node_modules/zod/v4/locales/id.d.ts +0 -4
  796. package/packages/permission-system/node_modules/zod/v4/locales/id.js +0 -116
  797. package/packages/permission-system/node_modules/zod/v4/locales/index.cjs +0 -84
  798. package/packages/permission-system/node_modules/zod/v4/locales/index.d.cts +0 -39
  799. package/packages/permission-system/node_modules/zod/v4/locales/index.d.ts +0 -39
  800. package/packages/permission-system/node_modules/zod/v4/locales/index.js +0 -39
  801. package/packages/permission-system/node_modules/zod/v4/locales/it.cjs +0 -143
  802. package/packages/permission-system/node_modules/zod/v4/locales/it.d.cts +0 -4
  803. package/packages/permission-system/node_modules/zod/v4/locales/it.d.ts +0 -4
  804. package/packages/permission-system/node_modules/zod/v4/locales/it.js +0 -117
  805. package/packages/permission-system/node_modules/zod/v4/locales/ja.cjs +0 -141
  806. package/packages/permission-system/node_modules/zod/v4/locales/ja.d.cts +0 -4
  807. package/packages/permission-system/node_modules/zod/v4/locales/ja.d.ts +0 -4
  808. package/packages/permission-system/node_modules/zod/v4/locales/ja.js +0 -115
  809. package/packages/permission-system/node_modules/zod/v4/locales/kh.cjs +0 -143
  810. package/packages/permission-system/node_modules/zod/v4/locales/kh.d.cts +0 -4
  811. package/packages/permission-system/node_modules/zod/v4/locales/kh.d.ts +0 -4
  812. package/packages/permission-system/node_modules/zod/v4/locales/kh.js +0 -117
  813. package/packages/permission-system/node_modules/zod/v4/locales/ko.cjs +0 -147
  814. package/packages/permission-system/node_modules/zod/v4/locales/ko.d.cts +0 -4
  815. package/packages/permission-system/node_modules/zod/v4/locales/ko.d.ts +0 -4
  816. package/packages/permission-system/node_modules/zod/v4/locales/ko.js +0 -121
  817. package/packages/permission-system/node_modules/zod/v4/locales/mk.cjs +0 -144
  818. package/packages/permission-system/node_modules/zod/v4/locales/mk.d.cts +0 -4
  819. package/packages/permission-system/node_modules/zod/v4/locales/mk.d.ts +0 -4
  820. package/packages/permission-system/node_modules/zod/v4/locales/mk.js +0 -118
  821. package/packages/permission-system/node_modules/zod/v4/locales/ms.cjs +0 -142
  822. package/packages/permission-system/node_modules/zod/v4/locales/ms.d.cts +0 -4
  823. package/packages/permission-system/node_modules/zod/v4/locales/ms.d.ts +0 -4
  824. package/packages/permission-system/node_modules/zod/v4/locales/ms.js +0 -116
  825. package/packages/permission-system/node_modules/zod/v4/locales/nl.cjs +0 -143
  826. package/packages/permission-system/node_modules/zod/v4/locales/nl.d.cts +0 -4
  827. package/packages/permission-system/node_modules/zod/v4/locales/nl.d.ts +0 -4
  828. package/packages/permission-system/node_modules/zod/v4/locales/nl.js +0 -117
  829. package/packages/permission-system/node_modules/zod/v4/locales/no.cjs +0 -142
  830. package/packages/permission-system/node_modules/zod/v4/locales/no.d.cts +0 -4
  831. package/packages/permission-system/node_modules/zod/v4/locales/no.d.ts +0 -4
  832. package/packages/permission-system/node_modules/zod/v4/locales/no.js +0 -116
  833. package/packages/permission-system/node_modules/zod/v4/locales/ota.cjs +0 -143
  834. package/packages/permission-system/node_modules/zod/v4/locales/ota.d.cts +0 -4
  835. package/packages/permission-system/node_modules/zod/v4/locales/ota.d.ts +0 -4
  836. package/packages/permission-system/node_modules/zod/v4/locales/ota.js +0 -117
  837. package/packages/permission-system/node_modules/zod/v4/locales/pl.cjs +0 -143
  838. package/packages/permission-system/node_modules/zod/v4/locales/pl.d.cts +0 -4
  839. package/packages/permission-system/node_modules/zod/v4/locales/pl.d.ts +0 -4
  840. package/packages/permission-system/node_modules/zod/v4/locales/pl.js +0 -117
  841. package/packages/permission-system/node_modules/zod/v4/locales/ps.cjs +0 -148
  842. package/packages/permission-system/node_modules/zod/v4/locales/ps.d.cts +0 -4
  843. package/packages/permission-system/node_modules/zod/v4/locales/ps.d.ts +0 -4
  844. package/packages/permission-system/node_modules/zod/v4/locales/ps.js +0 -122
  845. package/packages/permission-system/node_modules/zod/v4/locales/pt.cjs +0 -142
  846. package/packages/permission-system/node_modules/zod/v4/locales/pt.d.cts +0 -4
  847. package/packages/permission-system/node_modules/zod/v4/locales/pt.d.ts +0 -4
  848. package/packages/permission-system/node_modules/zod/v4/locales/pt.js +0 -116
  849. package/packages/permission-system/node_modules/zod/v4/locales/ru.cjs +0 -190
  850. package/packages/permission-system/node_modules/zod/v4/locales/ru.d.cts +0 -4
  851. package/packages/permission-system/node_modules/zod/v4/locales/ru.d.ts +0 -4
  852. package/packages/permission-system/node_modules/zod/v4/locales/ru.js +0 -164
  853. package/packages/permission-system/node_modules/zod/v4/locales/sl.cjs +0 -143
  854. package/packages/permission-system/node_modules/zod/v4/locales/sl.d.cts +0 -4
  855. package/packages/permission-system/node_modules/zod/v4/locales/sl.d.ts +0 -4
  856. package/packages/permission-system/node_modules/zod/v4/locales/sl.js +0 -117
  857. package/packages/permission-system/node_modules/zod/v4/locales/sv.cjs +0 -144
  858. package/packages/permission-system/node_modules/zod/v4/locales/sv.d.cts +0 -4
  859. package/packages/permission-system/node_modules/zod/v4/locales/sv.d.ts +0 -4
  860. package/packages/permission-system/node_modules/zod/v4/locales/sv.js +0 -118
  861. package/packages/permission-system/node_modules/zod/v4/locales/ta.cjs +0 -143
  862. package/packages/permission-system/node_modules/zod/v4/locales/ta.d.cts +0 -4
  863. package/packages/permission-system/node_modules/zod/v4/locales/ta.d.ts +0 -4
  864. package/packages/permission-system/node_modules/zod/v4/locales/ta.js +0 -117
  865. package/packages/permission-system/node_modules/zod/v4/locales/th.cjs +0 -143
  866. package/packages/permission-system/node_modules/zod/v4/locales/th.d.cts +0 -4
  867. package/packages/permission-system/node_modules/zod/v4/locales/th.d.ts +0 -4
  868. package/packages/permission-system/node_modules/zod/v4/locales/th.js +0 -117
  869. package/packages/permission-system/node_modules/zod/v4/locales/tr.cjs +0 -143
  870. package/packages/permission-system/node_modules/zod/v4/locales/tr.d.cts +0 -5
  871. package/packages/permission-system/node_modules/zod/v4/locales/tr.d.ts +0 -5
  872. package/packages/permission-system/node_modules/zod/v4/locales/tr.js +0 -115
  873. package/packages/permission-system/node_modules/zod/v4/locales/ua.cjs +0 -143
  874. package/packages/permission-system/node_modules/zod/v4/locales/ua.d.cts +0 -4
  875. package/packages/permission-system/node_modules/zod/v4/locales/ua.d.ts +0 -4
  876. package/packages/permission-system/node_modules/zod/v4/locales/ua.js +0 -117
  877. package/packages/permission-system/node_modules/zod/v4/locales/ur.cjs +0 -143
  878. package/packages/permission-system/node_modules/zod/v4/locales/ur.d.cts +0 -4
  879. package/packages/permission-system/node_modules/zod/v4/locales/ur.d.ts +0 -4
  880. package/packages/permission-system/node_modules/zod/v4/locales/ur.js +0 -117
  881. package/packages/permission-system/node_modules/zod/v4/locales/vi.cjs +0 -142
  882. package/packages/permission-system/node_modules/zod/v4/locales/vi.d.cts +0 -4
  883. package/packages/permission-system/node_modules/zod/v4/locales/vi.d.ts +0 -4
  884. package/packages/permission-system/node_modules/zod/v4/locales/vi.js +0 -116
  885. package/packages/permission-system/node_modules/zod/v4/locales/zh-CN.cjs +0 -142
  886. package/packages/permission-system/node_modules/zod/v4/locales/zh-CN.d.cts +0 -4
  887. package/packages/permission-system/node_modules/zod/v4/locales/zh-CN.d.ts +0 -4
  888. package/packages/permission-system/node_modules/zod/v4/locales/zh-CN.js +0 -116
  889. package/packages/permission-system/node_modules/zod/v4/locales/zh-TW.cjs +0 -143
  890. package/packages/permission-system/node_modules/zod/v4/locales/zh-TW.d.cts +0 -4
  891. package/packages/permission-system/node_modules/zod/v4/locales/zh-TW.d.ts +0 -4
  892. package/packages/permission-system/node_modules/zod/v4/locales/zh-TW.js +0 -117
  893. package/packages/permission-system/node_modules/zod/v4/mini/checks.cjs +0 -34
  894. package/packages/permission-system/node_modules/zod/v4/mini/checks.d.cts +0 -1
  895. package/packages/permission-system/node_modules/zod/v4/mini/checks.d.ts +0 -1
  896. package/packages/permission-system/node_modules/zod/v4/mini/checks.js +0 -1
  897. package/packages/permission-system/node_modules/zod/v4/mini/coerce.cjs +0 -47
  898. package/packages/permission-system/node_modules/zod/v4/mini/coerce.d.cts +0 -7
  899. package/packages/permission-system/node_modules/zod/v4/mini/coerce.d.ts +0 -7
  900. package/packages/permission-system/node_modules/zod/v4/mini/coerce.js +0 -17
  901. package/packages/permission-system/node_modules/zod/v4/mini/external.cjs +0 -62
  902. package/packages/permission-system/node_modules/zod/v4/mini/external.d.cts +0 -11
  903. package/packages/permission-system/node_modules/zod/v4/mini/external.d.ts +0 -11
  904. package/packages/permission-system/node_modules/zod/v4/mini/external.js +0 -13
  905. package/packages/permission-system/node_modules/zod/v4/mini/index.cjs +0 -32
  906. package/packages/permission-system/node_modules/zod/v4/mini/index.d.cts +0 -3
  907. package/packages/permission-system/node_modules/zod/v4/mini/index.d.ts +0 -3
  908. package/packages/permission-system/node_modules/zod/v4/mini/index.js +0 -3
  909. package/packages/permission-system/node_modules/zod/v4/mini/iso.cjs +0 -60
  910. package/packages/permission-system/node_modules/zod/v4/mini/iso.d.cts +0 -22
  911. package/packages/permission-system/node_modules/zod/v4/mini/iso.d.ts +0 -22
  912. package/packages/permission-system/node_modules/zod/v4/mini/iso.js +0 -30
  913. package/packages/permission-system/node_modules/zod/v4/mini/parse.cjs +0 -8
  914. package/packages/permission-system/node_modules/zod/v4/mini/parse.d.cts +0 -1
  915. package/packages/permission-system/node_modules/zod/v4/mini/parse.d.ts +0 -1
  916. package/packages/permission-system/node_modules/zod/v4/mini/parse.js +0 -1
  917. package/packages/permission-system/node_modules/zod/v4/mini/schemas.cjs +0 -839
  918. package/packages/permission-system/node_modules/zod/v4/mini/schemas.d.cts +0 -356
  919. package/packages/permission-system/node_modules/zod/v4/mini/schemas.d.ts +0 -356
  920. package/packages/permission-system/node_modules/zod/v4/mini/schemas.js +0 -732
  921. package/packages/permission-system/node_modules/zod/v4-mini/index.cjs +0 -17
  922. package/packages/permission-system/node_modules/zod/v4-mini/index.d.cts +0 -1
  923. package/packages/permission-system/node_modules/zod/v4-mini/index.d.ts +0 -1
  924. package/packages/permission-system/node_modules/zod/v4-mini/index.js +0 -1
@@ -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
- }