smart001 1.0.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 (1448) hide show
  1. package/backend/db.js +19 -0
  2. package/backend/node_modules/.bin/bcrypt +16 -0
  3. package/backend/node_modules/.bin/bcrypt.cmd +17 -0
  4. package/backend/node_modules/.bin/bcrypt.ps1 +28 -0
  5. package/backend/node_modules/.bin/json +16 -0
  6. package/backend/node_modules/.bin/json.cmd +17 -0
  7. package/backend/node_modules/.bin/json.ps1 +28 -0
  8. package/backend/node_modules/.bin/node-gyp-build +16 -0
  9. package/backend/node_modules/.bin/node-gyp-build-optional +16 -0
  10. package/backend/node_modules/.bin/node-gyp-build-optional.cmd +17 -0
  11. package/backend/node_modules/.bin/node-gyp-build-optional.ps1 +28 -0
  12. package/backend/node_modules/.bin/node-gyp-build-test +16 -0
  13. package/backend/node_modules/.bin/node-gyp-build-test.cmd +17 -0
  14. package/backend/node_modules/.bin/node-gyp-build-test.ps1 +28 -0
  15. package/backend/node_modules/.bin/node-gyp-build.cmd +17 -0
  16. package/backend/node_modules/.bin/node-gyp-build.ps1 +28 -0
  17. package/backend/node_modules/.bin/nodemon +16 -0
  18. package/backend/node_modules/.bin/nodemon.cmd +17 -0
  19. package/backend/node_modules/.bin/nodemon.ps1 +28 -0
  20. package/backend/node_modules/.bin/nodetouch +16 -0
  21. package/backend/node_modules/.bin/nodetouch.cmd +17 -0
  22. package/backend/node_modules/.bin/nodetouch.ps1 +28 -0
  23. package/backend/node_modules/.bin/semver +16 -0
  24. package/backend/node_modules/.bin/semver.cmd +17 -0
  25. package/backend/node_modules/.bin/semver.ps1 +28 -0
  26. package/backend/node_modules/.package-lock.json +1475 -0
  27. package/backend/node_modules/@types/node/LICENSE +21 -0
  28. package/backend/node_modules/@types/node/README.md +15 -0
  29. package/backend/node_modules/@types/node/assert/strict.d.ts +59 -0
  30. package/backend/node_modules/@types/node/assert.d.ts +950 -0
  31. package/backend/node_modules/@types/node/async_hooks.d.ts +711 -0
  32. package/backend/node_modules/@types/node/buffer.buffer.d.ts +466 -0
  33. package/backend/node_modules/@types/node/buffer.d.ts +1765 -0
  34. package/backend/node_modules/@types/node/child_process.d.ts +1366 -0
  35. package/backend/node_modules/@types/node/cluster.d.ts +432 -0
  36. package/backend/node_modules/@types/node/compatibility/iterators.d.ts +21 -0
  37. package/backend/node_modules/@types/node/console.d.ts +93 -0
  38. package/backend/node_modules/@types/node/constants.d.ts +14 -0
  39. package/backend/node_modules/@types/node/crypto.d.ts +4058 -0
  40. package/backend/node_modules/@types/node/dgram.d.ts +537 -0
  41. package/backend/node_modules/@types/node/diagnostics_channel.d.ts +552 -0
  42. package/backend/node_modules/@types/node/dns/promises.d.ts +497 -0
  43. package/backend/node_modules/@types/node/dns.d.ts +876 -0
  44. package/backend/node_modules/@types/node/domain.d.ts +150 -0
  45. package/backend/node_modules/@types/node/events.d.ts +1008 -0
  46. package/backend/node_modules/@types/node/fs/promises.d.ts +1468 -0
  47. package/backend/node_modules/@types/node/fs.d.ts +4780 -0
  48. package/backend/node_modules/@types/node/globals.d.ts +150 -0
  49. package/backend/node_modules/@types/node/globals.typedarray.d.ts +101 -0
  50. package/backend/node_modules/@types/node/http.d.ts +2147 -0
  51. package/backend/node_modules/@types/node/http2.d.ts +2485 -0
  52. package/backend/node_modules/@types/node/https.d.ts +400 -0
  53. package/backend/node_modules/@types/node/index.d.ts +117 -0
  54. package/backend/node_modules/@types/node/inspector/promises.d.ts +35 -0
  55. package/backend/node_modules/@types/node/inspector.d.ts +264 -0
  56. package/backend/node_modules/@types/node/inspector.generated.d.ts +4406 -0
  57. package/backend/node_modules/@types/node/module.d.ts +755 -0
  58. package/backend/node_modules/@types/node/net.d.ts +970 -0
  59. package/backend/node_modules/@types/node/os.d.ts +498 -0
  60. package/backend/node_modules/@types/node/package.json +155 -0
  61. package/backend/node_modules/@types/node/path/posix.d.ts +8 -0
  62. package/backend/node_modules/@types/node/path/win32.d.ts +8 -0
  63. package/backend/node_modules/@types/node/path.d.ts +178 -0
  64. package/backend/node_modules/@types/node/perf_hooks.d.ts +612 -0
  65. package/backend/node_modules/@types/node/process.d.ts +2204 -0
  66. package/backend/node_modules/@types/node/punycode.d.ts +89 -0
  67. package/backend/node_modules/@types/node/querystring.d.ts +139 -0
  68. package/backend/node_modules/@types/node/quic.d.ts +897 -0
  69. package/backend/node_modules/@types/node/readline/promises.d.ts +158 -0
  70. package/backend/node_modules/@types/node/readline.d.ts +507 -0
  71. package/backend/node_modules/@types/node/repl.d.ts +420 -0
  72. package/backend/node_modules/@types/node/sea.d.ts +47 -0
  73. package/backend/node_modules/@types/node/sqlite.d.ts +1068 -0
  74. package/backend/node_modules/@types/node/stream/consumers.d.ts +114 -0
  75. package/backend/node_modules/@types/node/stream/iter.d.ts +301 -0
  76. package/backend/node_modules/@types/node/stream/promises.d.ts +211 -0
  77. package/backend/node_modules/@types/node/stream/web.d.ts +300 -0
  78. package/backend/node_modules/@types/node/stream.d.ts +1774 -0
  79. package/backend/node_modules/@types/node/string_decoder.d.ts +27 -0
  80. package/backend/node_modules/@types/node/test/reporters.d.ts +59 -0
  81. package/backend/node_modules/@types/node/test.d.ts +2279 -0
  82. package/backend/node_modules/@types/node/timers/promises.d.ts +93 -0
  83. package/backend/node_modules/@types/node/timers.d.ts +149 -0
  84. package/backend/node_modules/@types/node/tls.d.ts +1193 -0
  85. package/backend/node_modules/@types/node/trace_events.d.ts +103 -0
  86. package/backend/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +462 -0
  87. package/backend/node_modules/@types/node/ts5.6/compatibility/float16array.d.ts +71 -0
  88. package/backend/node_modules/@types/node/ts5.6/globals.typedarray.d.ts +36 -0
  89. package/backend/node_modules/@types/node/ts5.6/index.d.ts +119 -0
  90. package/backend/node_modules/@types/node/ts5.7/compatibility/float16array.d.ts +72 -0
  91. package/backend/node_modules/@types/node/ts5.7/index.d.ts +119 -0
  92. package/backend/node_modules/@types/node/tty.d.ts +225 -0
  93. package/backend/node_modules/@types/node/url.d.ts +556 -0
  94. package/backend/node_modules/@types/node/util/types.d.ts +558 -0
  95. package/backend/node_modules/@types/node/util.d.ts +1677 -0
  96. package/backend/node_modules/@types/node/v8.d.ts +980 -0
  97. package/backend/node_modules/@types/node/vm.d.ts +1136 -0
  98. package/backend/node_modules/@types/node/wasi.d.ts +131 -0
  99. package/backend/node_modules/@types/node/web-globals/abortcontroller.d.ts +59 -0
  100. package/backend/node_modules/@types/node/web-globals/blob.d.ts +23 -0
  101. package/backend/node_modules/@types/node/web-globals/console.d.ts +9 -0
  102. package/backend/node_modules/@types/node/web-globals/crypto.d.ts +39 -0
  103. package/backend/node_modules/@types/node/web-globals/domexception.d.ts +68 -0
  104. package/backend/node_modules/@types/node/web-globals/encoding.d.ts +11 -0
  105. package/backend/node_modules/@types/node/web-globals/events.d.ts +106 -0
  106. package/backend/node_modules/@types/node/web-globals/fetch.d.ts +69 -0
  107. package/backend/node_modules/@types/node/web-globals/importmeta.d.ts +13 -0
  108. package/backend/node_modules/@types/node/web-globals/messaging.d.ts +23 -0
  109. package/backend/node_modules/@types/node/web-globals/navigator.d.ts +25 -0
  110. package/backend/node_modules/@types/node/web-globals/performance.d.ts +45 -0
  111. package/backend/node_modules/@types/node/web-globals/storage.d.ts +24 -0
  112. package/backend/node_modules/@types/node/web-globals/streams.d.ts +115 -0
  113. package/backend/node_modules/@types/node/web-globals/timers.d.ts +44 -0
  114. package/backend/node_modules/@types/node/web-globals/url.d.ts +24 -0
  115. package/backend/node_modules/@types/node/worker_threads.d.ts +671 -0
  116. package/backend/node_modules/@types/node/zlib/iter.d.ts +131 -0
  117. package/backend/node_modules/@types/node/zlib.d.ts +589 -0
  118. package/backend/node_modules/accepts/HISTORY.md +250 -0
  119. package/backend/node_modules/accepts/LICENSE +23 -0
  120. package/backend/node_modules/accepts/README.md +140 -0
  121. package/backend/node_modules/accepts/index.js +238 -0
  122. package/backend/node_modules/accepts/package.json +47 -0
  123. package/backend/node_modules/anymatch/LICENSE +15 -0
  124. package/backend/node_modules/anymatch/README.md +87 -0
  125. package/backend/node_modules/anymatch/index.d.ts +20 -0
  126. package/backend/node_modules/anymatch/index.js +104 -0
  127. package/backend/node_modules/anymatch/package.json +48 -0
  128. package/backend/node_modules/aws-ssl-profiles/LICENSE +19 -0
  129. package/backend/node_modules/aws-ssl-profiles/README.md +146 -0
  130. package/backend/node_modules/aws-ssl-profiles/lib/@types/profiles.d.ts +4 -0
  131. package/backend/node_modules/aws-ssl-profiles/lib/@types/profiles.js +2 -0
  132. package/backend/node_modules/aws-ssl-profiles/lib/index.d.ts +8 -0
  133. package/backend/node_modules/aws-ssl-profiles/lib/index.js +13 -0
  134. package/backend/node_modules/aws-ssl-profiles/lib/profiles/ca/defaults.d.ts +9 -0
  135. package/backend/node_modules/aws-ssl-profiles/lib/profiles/ca/defaults.js +2888 -0
  136. package/backend/node_modules/aws-ssl-profiles/lib/profiles/ca/proxies.d.ts +8 -0
  137. package/backend/node_modules/aws-ssl-profiles/lib/profiles/ca/proxies.js +111 -0
  138. package/backend/node_modules/aws-ssl-profiles/package.json +52 -0
  139. package/backend/node_modules/balanced-match/LICENSE.md +23 -0
  140. package/backend/node_modules/balanced-match/README.md +57 -0
  141. package/backend/node_modules/balanced-match/dist/commonjs/index.d.ts +9 -0
  142. package/backend/node_modules/balanced-match/dist/commonjs/index.d.ts.map +1 -0
  143. package/backend/node_modules/balanced-match/dist/commonjs/index.js +59 -0
  144. package/backend/node_modules/balanced-match/dist/commonjs/index.js.map +1 -0
  145. package/backend/node_modules/balanced-match/dist/commonjs/package.json +3 -0
  146. package/backend/node_modules/balanced-match/dist/esm/index.d.ts +9 -0
  147. package/backend/node_modules/balanced-match/dist/esm/index.d.ts.map +1 -0
  148. package/backend/node_modules/balanced-match/dist/esm/index.js +54 -0
  149. package/backend/node_modules/balanced-match/dist/esm/index.js.map +1 -0
  150. package/backend/node_modules/balanced-match/dist/esm/package.json +3 -0
  151. package/backend/node_modules/balanced-match/package.json +68 -0
  152. package/backend/node_modules/bcrypt/.dockerignore +6 -0
  153. package/backend/node_modules/bcrypt/.editorconfig +19 -0
  154. package/backend/node_modules/bcrypt/.github/workflows/build-pack-publish.yml +110 -0
  155. package/backend/node_modules/bcrypt/.github/workflows/ci.yaml +42 -0
  156. package/backend/node_modules/bcrypt/CHANGELOG.md +184 -0
  157. package/backend/node_modules/bcrypt/Dockerfile +57 -0
  158. package/backend/node_modules/bcrypt/Dockerfile-alpine +41 -0
  159. package/backend/node_modules/bcrypt/ISSUE_TEMPLATE.md +18 -0
  160. package/backend/node_modules/bcrypt/LICENSE +19 -0
  161. package/backend/node_modules/bcrypt/Makefile +19 -0
  162. package/backend/node_modules/bcrypt/README.md +388 -0
  163. package/backend/node_modules/bcrypt/SECURITY.md +15 -0
  164. package/backend/node_modules/bcrypt/bcrypt.js +242 -0
  165. package/backend/node_modules/bcrypt/binding.gyp +49 -0
  166. package/backend/node_modules/bcrypt/build-all.sh +37 -0
  167. package/backend/node_modules/bcrypt/examples/async_compare.js +28 -0
  168. package/backend/node_modules/bcrypt/examples/forever_gen_salt.js +8 -0
  169. package/backend/node_modules/bcrypt/package.json +62 -0
  170. package/backend/node_modules/bcrypt/prebuilds/darwin-arm64/bcrypt.node +0 -0
  171. package/backend/node_modules/bcrypt/prebuilds/darwin-x64/bcrypt.node +0 -0
  172. package/backend/node_modules/bcrypt/prebuilds/linux-arm/bcrypt.glibc.node +0 -0
  173. package/backend/node_modules/bcrypt/prebuilds/linux-arm/bcrypt.musl.node +0 -0
  174. package/backend/node_modules/bcrypt/prebuilds/linux-arm64/bcrypt.glibc.node +0 -0
  175. package/backend/node_modules/bcrypt/prebuilds/linux-arm64/bcrypt.musl.node +0 -0
  176. package/backend/node_modules/bcrypt/prebuilds/linux-x64/bcrypt.glibc.node +0 -0
  177. package/backend/node_modules/bcrypt/prebuilds/linux-x64/bcrypt.musl.node +0 -0
  178. package/backend/node_modules/bcrypt/prebuilds/win32-arm64/bcrypt.node +0 -0
  179. package/backend/node_modules/bcrypt/prebuilds/win32-x64/bcrypt.node +0 -0
  180. package/backend/node_modules/bcrypt/promises.js +45 -0
  181. package/backend/node_modules/bcrypt/src/bcrypt.cc +315 -0
  182. package/backend/node_modules/bcrypt/src/bcrypt_node.cc +288 -0
  183. package/backend/node_modules/bcrypt/src/blowfish.cc +679 -0
  184. package/backend/node_modules/bcrypt/src/node_blf.h +132 -0
  185. package/backend/node_modules/bcrypt/test/async.test.js +209 -0
  186. package/backend/node_modules/bcrypt/test/implementation.test.js +48 -0
  187. package/backend/node_modules/bcrypt/test/promise.test.js +168 -0
  188. package/backend/node_modules/bcrypt/test/repetitions.test.js +55 -0
  189. package/backend/node_modules/bcrypt/test/sync.test.js +125 -0
  190. package/backend/node_modules/bcryptjs/LICENSE +27 -0
  191. package/backend/node_modules/bcryptjs/README.md +201 -0
  192. package/backend/node_modules/bcryptjs/bin/bcrypt +23 -0
  193. package/backend/node_modules/bcryptjs/index.d.ts +3 -0
  194. package/backend/node_modules/bcryptjs/index.js +1159 -0
  195. package/backend/node_modules/bcryptjs/package.json +76 -0
  196. package/backend/node_modules/bcryptjs/types.d.ts +157 -0
  197. package/backend/node_modules/bcryptjs/umd/index.d.ts +3 -0
  198. package/backend/node_modules/bcryptjs/umd/index.js +1220 -0
  199. package/backend/node_modules/bcryptjs/umd/package.json +3 -0
  200. package/backend/node_modules/bcryptjs/umd/types.d.ts +157 -0
  201. package/backend/node_modules/binary-extensions/binary-extensions.json +263 -0
  202. package/backend/node_modules/binary-extensions/binary-extensions.json.d.ts +3 -0
  203. package/backend/node_modules/binary-extensions/index.d.ts +14 -0
  204. package/backend/node_modules/binary-extensions/index.js +1 -0
  205. package/backend/node_modules/binary-extensions/license +10 -0
  206. package/backend/node_modules/binary-extensions/package.json +40 -0
  207. package/backend/node_modules/binary-extensions/readme.md +25 -0
  208. package/backend/node_modules/body-parser/LICENSE +23 -0
  209. package/backend/node_modules/body-parser/README.md +494 -0
  210. package/backend/node_modules/body-parser/index.js +71 -0
  211. package/backend/node_modules/body-parser/lib/read.js +247 -0
  212. package/backend/node_modules/body-parser/lib/types/json.js +158 -0
  213. package/backend/node_modules/body-parser/lib/types/raw.js +42 -0
  214. package/backend/node_modules/body-parser/lib/types/text.js +36 -0
  215. package/backend/node_modules/body-parser/lib/types/urlencoded.js +142 -0
  216. package/backend/node_modules/body-parser/lib/utils.js +98 -0
  217. package/backend/node_modules/body-parser/package.json +52 -0
  218. package/backend/node_modules/brace-expansion/LICENSE +23 -0
  219. package/backend/node_modules/brace-expansion/README.md +94 -0
  220. package/backend/node_modules/brace-expansion/dist/commonjs/index.d.ts +6 -0
  221. package/backend/node_modules/brace-expansion/dist/commonjs/index.d.ts.map +1 -0
  222. package/backend/node_modules/brace-expansion/dist/commonjs/index.js +201 -0
  223. package/backend/node_modules/brace-expansion/dist/commonjs/index.js.map +1 -0
  224. package/backend/node_modules/brace-expansion/dist/commonjs/package.json +3 -0
  225. package/backend/node_modules/brace-expansion/dist/esm/index.d.ts +6 -0
  226. package/backend/node_modules/brace-expansion/dist/esm/index.d.ts.map +1 -0
  227. package/backend/node_modules/brace-expansion/dist/esm/index.js +197 -0
  228. package/backend/node_modules/brace-expansion/dist/esm/index.js.map +1 -0
  229. package/backend/node_modules/brace-expansion/dist/esm/package.json +3 -0
  230. package/backend/node_modules/brace-expansion/package.json +64 -0
  231. package/backend/node_modules/braces/LICENSE +21 -0
  232. package/backend/node_modules/braces/README.md +586 -0
  233. package/backend/node_modules/braces/index.js +170 -0
  234. package/backend/node_modules/braces/lib/compile.js +60 -0
  235. package/backend/node_modules/braces/lib/constants.js +57 -0
  236. package/backend/node_modules/braces/lib/expand.js +113 -0
  237. package/backend/node_modules/braces/lib/parse.js +331 -0
  238. package/backend/node_modules/braces/lib/stringify.js +32 -0
  239. package/backend/node_modules/braces/lib/utils.js +122 -0
  240. package/backend/node_modules/braces/package.json +77 -0
  241. package/backend/node_modules/buffer-equal-constant-time/.travis.yml +4 -0
  242. package/backend/node_modules/buffer-equal-constant-time/LICENSE.txt +12 -0
  243. package/backend/node_modules/buffer-equal-constant-time/README.md +50 -0
  244. package/backend/node_modules/buffer-equal-constant-time/index.js +41 -0
  245. package/backend/node_modules/buffer-equal-constant-time/package.json +21 -0
  246. package/backend/node_modules/buffer-equal-constant-time/test.js +42 -0
  247. package/backend/node_modules/bytes/History.md +97 -0
  248. package/backend/node_modules/bytes/LICENSE +23 -0
  249. package/backend/node_modules/bytes/Readme.md +152 -0
  250. package/backend/node_modules/bytes/index.js +170 -0
  251. package/backend/node_modules/bytes/package.json +42 -0
  252. package/backend/node_modules/call-bind-apply-helpers/.eslintrc +17 -0
  253. package/backend/node_modules/call-bind-apply-helpers/.github/FUNDING.yml +12 -0
  254. package/backend/node_modules/call-bind-apply-helpers/.nycrc +9 -0
  255. package/backend/node_modules/call-bind-apply-helpers/CHANGELOG.md +30 -0
  256. package/backend/node_modules/call-bind-apply-helpers/LICENSE +21 -0
  257. package/backend/node_modules/call-bind-apply-helpers/README.md +62 -0
  258. package/backend/node_modules/call-bind-apply-helpers/actualApply.d.ts +1 -0
  259. package/backend/node_modules/call-bind-apply-helpers/actualApply.js +10 -0
  260. package/backend/node_modules/call-bind-apply-helpers/applyBind.d.ts +19 -0
  261. package/backend/node_modules/call-bind-apply-helpers/applyBind.js +10 -0
  262. package/backend/node_modules/call-bind-apply-helpers/functionApply.d.ts +1 -0
  263. package/backend/node_modules/call-bind-apply-helpers/functionApply.js +4 -0
  264. package/backend/node_modules/call-bind-apply-helpers/functionCall.d.ts +1 -0
  265. package/backend/node_modules/call-bind-apply-helpers/functionCall.js +4 -0
  266. package/backend/node_modules/call-bind-apply-helpers/index.d.ts +64 -0
  267. package/backend/node_modules/call-bind-apply-helpers/index.js +15 -0
  268. package/backend/node_modules/call-bind-apply-helpers/package.json +85 -0
  269. package/backend/node_modules/call-bind-apply-helpers/reflectApply.d.ts +3 -0
  270. package/backend/node_modules/call-bind-apply-helpers/reflectApply.js +4 -0
  271. package/backend/node_modules/call-bind-apply-helpers/test/index.js +63 -0
  272. package/backend/node_modules/call-bind-apply-helpers/tsconfig.json +9 -0
  273. package/backend/node_modules/call-bound/.eslintrc +13 -0
  274. package/backend/node_modules/call-bound/.github/FUNDING.yml +12 -0
  275. package/backend/node_modules/call-bound/.nycrc +9 -0
  276. package/backend/node_modules/call-bound/CHANGELOG.md +42 -0
  277. package/backend/node_modules/call-bound/LICENSE +21 -0
  278. package/backend/node_modules/call-bound/README.md +53 -0
  279. package/backend/node_modules/call-bound/index.d.ts +94 -0
  280. package/backend/node_modules/call-bound/index.js +19 -0
  281. package/backend/node_modules/call-bound/package.json +99 -0
  282. package/backend/node_modules/call-bound/test/index.js +61 -0
  283. package/backend/node_modules/call-bound/tsconfig.json +10 -0
  284. package/backend/node_modules/chokidar/LICENSE +21 -0
  285. package/backend/node_modules/chokidar/README.md +308 -0
  286. package/backend/node_modules/chokidar/index.js +973 -0
  287. package/backend/node_modules/chokidar/lib/constants.js +66 -0
  288. package/backend/node_modules/chokidar/lib/fsevents-handler.js +526 -0
  289. package/backend/node_modules/chokidar/lib/nodefs-handler.js +654 -0
  290. package/backend/node_modules/chokidar/package.json +70 -0
  291. package/backend/node_modules/chokidar/types/index.d.ts +192 -0
  292. package/backend/node_modules/content-disposition/LICENSE +22 -0
  293. package/backend/node_modules/content-disposition/README.md +141 -0
  294. package/backend/node_modules/content-disposition/index.js +536 -0
  295. package/backend/node_modules/content-disposition/package.json +40 -0
  296. package/backend/node_modules/content-type/HISTORY.md +29 -0
  297. package/backend/node_modules/content-type/LICENSE +22 -0
  298. package/backend/node_modules/content-type/README.md +94 -0
  299. package/backend/node_modules/content-type/index.js +225 -0
  300. package/backend/node_modules/content-type/package.json +42 -0
  301. package/backend/node_modules/cookie/LICENSE +24 -0
  302. package/backend/node_modules/cookie/README.md +317 -0
  303. package/backend/node_modules/cookie/SECURITY.md +25 -0
  304. package/backend/node_modules/cookie/index.js +335 -0
  305. package/backend/node_modules/cookie/package.json +44 -0
  306. package/backend/node_modules/cookie-signature/History.md +70 -0
  307. package/backend/node_modules/cookie-signature/LICENSE +22 -0
  308. package/backend/node_modules/cookie-signature/Readme.md +23 -0
  309. package/backend/node_modules/cookie-signature/index.js +47 -0
  310. package/backend/node_modules/cookie-signature/package.json +24 -0
  311. package/backend/node_modules/cors/LICENSE +22 -0
  312. package/backend/node_modules/cors/README.md +277 -0
  313. package/backend/node_modules/cors/lib/index.js +238 -0
  314. package/backend/node_modules/cors/package.json +42 -0
  315. package/backend/node_modules/debug/LICENSE +20 -0
  316. package/backend/node_modules/debug/README.md +481 -0
  317. package/backend/node_modules/debug/package.json +64 -0
  318. package/backend/node_modules/debug/src/browser.js +272 -0
  319. package/backend/node_modules/debug/src/common.js +292 -0
  320. package/backend/node_modules/debug/src/index.js +10 -0
  321. package/backend/node_modules/debug/src/node.js +263 -0
  322. package/backend/node_modules/denque/CHANGELOG.md +29 -0
  323. package/backend/node_modules/denque/LICENSE +201 -0
  324. package/backend/node_modules/denque/README.md +77 -0
  325. package/backend/node_modules/denque/index.d.ts +47 -0
  326. package/backend/node_modules/denque/index.js +481 -0
  327. package/backend/node_modules/denque/package.json +58 -0
  328. package/backend/node_modules/depd/History.md +103 -0
  329. package/backend/node_modules/depd/LICENSE +22 -0
  330. package/backend/node_modules/depd/Readme.md +280 -0
  331. package/backend/node_modules/depd/index.js +538 -0
  332. package/backend/node_modules/depd/lib/browser/index.js +77 -0
  333. package/backend/node_modules/depd/package.json +45 -0
  334. package/backend/node_modules/dunder-proto/.eslintrc +5 -0
  335. package/backend/node_modules/dunder-proto/.github/FUNDING.yml +12 -0
  336. package/backend/node_modules/dunder-proto/.nycrc +13 -0
  337. package/backend/node_modules/dunder-proto/CHANGELOG.md +24 -0
  338. package/backend/node_modules/dunder-proto/LICENSE +21 -0
  339. package/backend/node_modules/dunder-proto/README.md +54 -0
  340. package/backend/node_modules/dunder-proto/get.d.ts +5 -0
  341. package/backend/node_modules/dunder-proto/get.js +30 -0
  342. package/backend/node_modules/dunder-proto/package.json +76 -0
  343. package/backend/node_modules/dunder-proto/set.d.ts +5 -0
  344. package/backend/node_modules/dunder-proto/set.js +35 -0
  345. package/backend/node_modules/dunder-proto/test/get.js +34 -0
  346. package/backend/node_modules/dunder-proto/test/index.js +4 -0
  347. package/backend/node_modules/dunder-proto/test/set.js +50 -0
  348. package/backend/node_modules/dunder-proto/tsconfig.json +9 -0
  349. package/backend/node_modules/ecdsa-sig-formatter/CODEOWNERS +1 -0
  350. package/backend/node_modules/ecdsa-sig-formatter/LICENSE +201 -0
  351. package/backend/node_modules/ecdsa-sig-formatter/README.md +65 -0
  352. package/backend/node_modules/ecdsa-sig-formatter/package.json +46 -0
  353. package/backend/node_modules/ecdsa-sig-formatter/src/ecdsa-sig-formatter.d.ts +17 -0
  354. package/backend/node_modules/ecdsa-sig-formatter/src/ecdsa-sig-formatter.js +187 -0
  355. package/backend/node_modules/ecdsa-sig-formatter/src/param-bytes-for-alg.js +23 -0
  356. package/backend/node_modules/ee-first/LICENSE +22 -0
  357. package/backend/node_modules/ee-first/README.md +80 -0
  358. package/backend/node_modules/ee-first/index.js +95 -0
  359. package/backend/node_modules/ee-first/package.json +29 -0
  360. package/backend/node_modules/encodeurl/LICENSE +22 -0
  361. package/backend/node_modules/encodeurl/README.md +109 -0
  362. package/backend/node_modules/encodeurl/index.js +60 -0
  363. package/backend/node_modules/encodeurl/package.json +40 -0
  364. package/backend/node_modules/es-define-property/.eslintrc +13 -0
  365. package/backend/node_modules/es-define-property/.github/FUNDING.yml +12 -0
  366. package/backend/node_modules/es-define-property/.nycrc +9 -0
  367. package/backend/node_modules/es-define-property/CHANGELOG.md +29 -0
  368. package/backend/node_modules/es-define-property/LICENSE +21 -0
  369. package/backend/node_modules/es-define-property/README.md +49 -0
  370. package/backend/node_modules/es-define-property/index.d.ts +3 -0
  371. package/backend/node_modules/es-define-property/index.js +14 -0
  372. package/backend/node_modules/es-define-property/package.json +81 -0
  373. package/backend/node_modules/es-define-property/test/index.js +56 -0
  374. package/backend/node_modules/es-define-property/tsconfig.json +10 -0
  375. package/backend/node_modules/es-errors/.eslintrc +5 -0
  376. package/backend/node_modules/es-errors/.github/FUNDING.yml +12 -0
  377. package/backend/node_modules/es-errors/CHANGELOG.md +40 -0
  378. package/backend/node_modules/es-errors/LICENSE +21 -0
  379. package/backend/node_modules/es-errors/README.md +55 -0
  380. package/backend/node_modules/es-errors/eval.d.ts +3 -0
  381. package/backend/node_modules/es-errors/eval.js +4 -0
  382. package/backend/node_modules/es-errors/index.d.ts +3 -0
  383. package/backend/node_modules/es-errors/index.js +4 -0
  384. package/backend/node_modules/es-errors/package.json +80 -0
  385. package/backend/node_modules/es-errors/range.d.ts +3 -0
  386. package/backend/node_modules/es-errors/range.js +4 -0
  387. package/backend/node_modules/es-errors/ref.d.ts +3 -0
  388. package/backend/node_modules/es-errors/ref.js +4 -0
  389. package/backend/node_modules/es-errors/syntax.d.ts +3 -0
  390. package/backend/node_modules/es-errors/syntax.js +4 -0
  391. package/backend/node_modules/es-errors/test/index.js +19 -0
  392. package/backend/node_modules/es-errors/tsconfig.json +49 -0
  393. package/backend/node_modules/es-errors/type.d.ts +3 -0
  394. package/backend/node_modules/es-errors/type.js +4 -0
  395. package/backend/node_modules/es-errors/uri.d.ts +3 -0
  396. package/backend/node_modules/es-errors/uri.js +4 -0
  397. package/backend/node_modules/es-object-atoms/.eslintrc +16 -0
  398. package/backend/node_modules/es-object-atoms/.github/FUNDING.yml +12 -0
  399. package/backend/node_modules/es-object-atoms/CHANGELOG.md +37 -0
  400. package/backend/node_modules/es-object-atoms/LICENSE +21 -0
  401. package/backend/node_modules/es-object-atoms/README.md +63 -0
  402. package/backend/node_modules/es-object-atoms/RequireObjectCoercible.d.ts +3 -0
  403. package/backend/node_modules/es-object-atoms/RequireObjectCoercible.js +11 -0
  404. package/backend/node_modules/es-object-atoms/ToObject.d.ts +7 -0
  405. package/backend/node_modules/es-object-atoms/ToObject.js +10 -0
  406. package/backend/node_modules/es-object-atoms/index.d.ts +3 -0
  407. package/backend/node_modules/es-object-atoms/index.js +4 -0
  408. package/backend/node_modules/es-object-atoms/isObject.d.ts +3 -0
  409. package/backend/node_modules/es-object-atoms/isObject.js +6 -0
  410. package/backend/node_modules/es-object-atoms/package.json +80 -0
  411. package/backend/node_modules/es-object-atoms/test/index.js +38 -0
  412. package/backend/node_modules/es-object-atoms/tsconfig.json +6 -0
  413. package/backend/node_modules/escape-html/LICENSE +24 -0
  414. package/backend/node_modules/escape-html/Readme.md +43 -0
  415. package/backend/node_modules/escape-html/index.js +78 -0
  416. package/backend/node_modules/escape-html/package.json +24 -0
  417. package/backend/node_modules/etag/HISTORY.md +83 -0
  418. package/backend/node_modules/etag/LICENSE +22 -0
  419. package/backend/node_modules/etag/README.md +159 -0
  420. package/backend/node_modules/etag/index.js +131 -0
  421. package/backend/node_modules/etag/package.json +47 -0
  422. package/backend/node_modules/express/LICENSE +24 -0
  423. package/backend/node_modules/express/Readme.md +276 -0
  424. package/backend/node_modules/express/index.js +11 -0
  425. package/backend/node_modules/express/lib/application.js +631 -0
  426. package/backend/node_modules/express/lib/express.js +81 -0
  427. package/backend/node_modules/express/lib/request.js +514 -0
  428. package/backend/node_modules/express/lib/response.js +1053 -0
  429. package/backend/node_modules/express/lib/utils.js +271 -0
  430. package/backend/node_modules/express/lib/view.js +205 -0
  431. package/backend/node_modules/express/package.json +99 -0
  432. package/backend/node_modules/fill-range/LICENSE +21 -0
  433. package/backend/node_modules/fill-range/README.md +237 -0
  434. package/backend/node_modules/fill-range/index.js +248 -0
  435. package/backend/node_modules/fill-range/package.json +74 -0
  436. package/backend/node_modules/finalhandler/HISTORY.md +239 -0
  437. package/backend/node_modules/finalhandler/LICENSE +22 -0
  438. package/backend/node_modules/finalhandler/README.md +150 -0
  439. package/backend/node_modules/finalhandler/index.js +293 -0
  440. package/backend/node_modules/finalhandler/package.json +47 -0
  441. package/backend/node_modules/forwarded/HISTORY.md +21 -0
  442. package/backend/node_modules/forwarded/LICENSE +22 -0
  443. package/backend/node_modules/forwarded/README.md +57 -0
  444. package/backend/node_modules/forwarded/index.js +90 -0
  445. package/backend/node_modules/forwarded/package.json +45 -0
  446. package/backend/node_modules/fresh/HISTORY.md +80 -0
  447. package/backend/node_modules/fresh/LICENSE +23 -0
  448. package/backend/node_modules/fresh/README.md +117 -0
  449. package/backend/node_modules/fresh/index.js +136 -0
  450. package/backend/node_modules/fresh/package.json +46 -0
  451. package/backend/node_modules/function-bind/.eslintrc +21 -0
  452. package/backend/node_modules/function-bind/.github/FUNDING.yml +12 -0
  453. package/backend/node_modules/function-bind/.github/SECURITY.md +3 -0
  454. package/backend/node_modules/function-bind/.nycrc +13 -0
  455. package/backend/node_modules/function-bind/CHANGELOG.md +136 -0
  456. package/backend/node_modules/function-bind/LICENSE +20 -0
  457. package/backend/node_modules/function-bind/README.md +46 -0
  458. package/backend/node_modules/function-bind/implementation.js +84 -0
  459. package/backend/node_modules/function-bind/index.js +5 -0
  460. package/backend/node_modules/function-bind/package.json +87 -0
  461. package/backend/node_modules/function-bind/test/.eslintrc +9 -0
  462. package/backend/node_modules/function-bind/test/index.js +252 -0
  463. package/backend/node_modules/generate-function/.travis.yml +3 -0
  464. package/backend/node_modules/generate-function/LICENSE +21 -0
  465. package/backend/node_modules/generate-function/README.md +89 -0
  466. package/backend/node_modules/generate-function/example.js +27 -0
  467. package/backend/node_modules/generate-function/index.js +181 -0
  468. package/backend/node_modules/generate-function/package.json +32 -0
  469. package/backend/node_modules/generate-function/test.js +49 -0
  470. package/backend/node_modules/get-intrinsic/.eslintrc +42 -0
  471. package/backend/node_modules/get-intrinsic/.github/FUNDING.yml +12 -0
  472. package/backend/node_modules/get-intrinsic/.nycrc +9 -0
  473. package/backend/node_modules/get-intrinsic/CHANGELOG.md +186 -0
  474. package/backend/node_modules/get-intrinsic/LICENSE +21 -0
  475. package/backend/node_modules/get-intrinsic/README.md +71 -0
  476. package/backend/node_modules/get-intrinsic/index.js +378 -0
  477. package/backend/node_modules/get-intrinsic/package.json +97 -0
  478. package/backend/node_modules/get-intrinsic/test/GetIntrinsic.js +274 -0
  479. package/backend/node_modules/get-proto/.eslintrc +10 -0
  480. package/backend/node_modules/get-proto/.github/FUNDING.yml +12 -0
  481. package/backend/node_modules/get-proto/.nycrc +9 -0
  482. package/backend/node_modules/get-proto/CHANGELOG.md +21 -0
  483. package/backend/node_modules/get-proto/LICENSE +21 -0
  484. package/backend/node_modules/get-proto/Object.getPrototypeOf.d.ts +5 -0
  485. package/backend/node_modules/get-proto/Object.getPrototypeOf.js +6 -0
  486. package/backend/node_modules/get-proto/README.md +50 -0
  487. package/backend/node_modules/get-proto/Reflect.getPrototypeOf.d.ts +3 -0
  488. package/backend/node_modules/get-proto/Reflect.getPrototypeOf.js +4 -0
  489. package/backend/node_modules/get-proto/index.d.ts +5 -0
  490. package/backend/node_modules/get-proto/index.js +27 -0
  491. package/backend/node_modules/get-proto/package.json +81 -0
  492. package/backend/node_modules/get-proto/test/index.js +68 -0
  493. package/backend/node_modules/get-proto/tsconfig.json +9 -0
  494. package/backend/node_modules/glob-parent/CHANGELOG.md +110 -0
  495. package/backend/node_modules/glob-parent/LICENSE +15 -0
  496. package/backend/node_modules/glob-parent/README.md +137 -0
  497. package/backend/node_modules/glob-parent/index.js +42 -0
  498. package/backend/node_modules/glob-parent/package.json +48 -0
  499. package/backend/node_modules/gopd/.eslintrc +16 -0
  500. package/backend/node_modules/gopd/.github/FUNDING.yml +12 -0
  501. package/backend/node_modules/gopd/CHANGELOG.md +45 -0
  502. package/backend/node_modules/gopd/LICENSE +21 -0
  503. package/backend/node_modules/gopd/README.md +40 -0
  504. package/backend/node_modules/gopd/gOPD.d.ts +1 -0
  505. package/backend/node_modules/gopd/gOPD.js +4 -0
  506. package/backend/node_modules/gopd/index.d.ts +5 -0
  507. package/backend/node_modules/gopd/index.js +15 -0
  508. package/backend/node_modules/gopd/package.json +77 -0
  509. package/backend/node_modules/gopd/test/index.js +36 -0
  510. package/backend/node_modules/gopd/tsconfig.json +9 -0
  511. package/backend/node_modules/has-flag/index.js +8 -0
  512. package/backend/node_modules/has-flag/license +9 -0
  513. package/backend/node_modules/has-flag/package.json +44 -0
  514. package/backend/node_modules/has-flag/readme.md +70 -0
  515. package/backend/node_modules/has-symbols/.eslintrc +11 -0
  516. package/backend/node_modules/has-symbols/.github/FUNDING.yml +12 -0
  517. package/backend/node_modules/has-symbols/.nycrc +9 -0
  518. package/backend/node_modules/has-symbols/CHANGELOG.md +91 -0
  519. package/backend/node_modules/has-symbols/LICENSE +21 -0
  520. package/backend/node_modules/has-symbols/README.md +46 -0
  521. package/backend/node_modules/has-symbols/index.d.ts +3 -0
  522. package/backend/node_modules/has-symbols/index.js +14 -0
  523. package/backend/node_modules/has-symbols/package.json +111 -0
  524. package/backend/node_modules/has-symbols/shams.d.ts +3 -0
  525. package/backend/node_modules/has-symbols/shams.js +45 -0
  526. package/backend/node_modules/has-symbols/test/index.js +22 -0
  527. package/backend/node_modules/has-symbols/test/shams/core-js.js +29 -0
  528. package/backend/node_modules/has-symbols/test/shams/get-own-property-symbols.js +29 -0
  529. package/backend/node_modules/has-symbols/test/tests.js +58 -0
  530. package/backend/node_modules/has-symbols/tsconfig.json +10 -0
  531. package/backend/node_modules/hasown/.github/FUNDING.yml +12 -0
  532. package/backend/node_modules/hasown/.nycrc +13 -0
  533. package/backend/node_modules/hasown/CHANGELOG.md +51 -0
  534. package/backend/node_modules/hasown/LICENSE +21 -0
  535. package/backend/node_modules/hasown/README.md +40 -0
  536. package/backend/node_modules/hasown/eslint.config.mjs +6 -0
  537. package/backend/node_modules/hasown/index.d.ts +4 -0
  538. package/backend/node_modules/hasown/index.js +8 -0
  539. package/backend/node_modules/hasown/package.json +92 -0
  540. package/backend/node_modules/hasown/tsconfig.json +6 -0
  541. package/backend/node_modules/http-errors/HISTORY.md +186 -0
  542. package/backend/node_modules/http-errors/LICENSE +23 -0
  543. package/backend/node_modules/http-errors/README.md +169 -0
  544. package/backend/node_modules/http-errors/index.js +290 -0
  545. package/backend/node_modules/http-errors/package.json +54 -0
  546. package/backend/node_modules/iconv-lite/LICENSE +21 -0
  547. package/backend/node_modules/iconv-lite/README.md +138 -0
  548. package/backend/node_modules/iconv-lite/encodings/dbcs-codec.js +532 -0
  549. package/backend/node_modules/iconv-lite/encodings/dbcs-data.js +185 -0
  550. package/backend/node_modules/iconv-lite/encodings/index.js +23 -0
  551. package/backend/node_modules/iconv-lite/encodings/internal.js +218 -0
  552. package/backend/node_modules/iconv-lite/encodings/sbcs-codec.js +75 -0
  553. package/backend/node_modules/iconv-lite/encodings/sbcs-data-generated.js +451 -0
  554. package/backend/node_modules/iconv-lite/encodings/sbcs-data.js +178 -0
  555. package/backend/node_modules/iconv-lite/encodings/tables/big5-added.json +122 -0
  556. package/backend/node_modules/iconv-lite/encodings/tables/cp936.json +264 -0
  557. package/backend/node_modules/iconv-lite/encodings/tables/cp949.json +273 -0
  558. package/backend/node_modules/iconv-lite/encodings/tables/cp950.json +177 -0
  559. package/backend/node_modules/iconv-lite/encodings/tables/eucjp.json +182 -0
  560. package/backend/node_modules/iconv-lite/encodings/tables/gb18030-ranges.json +1 -0
  561. package/backend/node_modules/iconv-lite/encodings/tables/gbk-added.json +56 -0
  562. package/backend/node_modules/iconv-lite/encodings/tables/shiftjis.json +125 -0
  563. package/backend/node_modules/iconv-lite/encodings/utf16.js +187 -0
  564. package/backend/node_modules/iconv-lite/encodings/utf32.js +307 -0
  565. package/backend/node_modules/iconv-lite/encodings/utf7.js +283 -0
  566. package/backend/node_modules/iconv-lite/lib/bom-handling.js +48 -0
  567. package/backend/node_modules/iconv-lite/lib/helpers/merge-exports.js +13 -0
  568. package/backend/node_modules/iconv-lite/lib/index.d.ts +129 -0
  569. package/backend/node_modules/iconv-lite/lib/index.js +182 -0
  570. package/backend/node_modules/iconv-lite/lib/streams.js +105 -0
  571. package/backend/node_modules/iconv-lite/package.json +70 -0
  572. package/backend/node_modules/iconv-lite/types/encodings.d.ts +423 -0
  573. package/backend/node_modules/ignore-by-default/LICENSE +14 -0
  574. package/backend/node_modules/ignore-by-default/README.md +26 -0
  575. package/backend/node_modules/ignore-by-default/index.js +12 -0
  576. package/backend/node_modules/ignore-by-default/package.json +34 -0
  577. package/backend/node_modules/inherits/LICENSE +16 -0
  578. package/backend/node_modules/inherits/README.md +42 -0
  579. package/backend/node_modules/inherits/inherits.js +9 -0
  580. package/backend/node_modules/inherits/inherits_browser.js +27 -0
  581. package/backend/node_modules/inherits/package.json +29 -0
  582. package/backend/node_modules/ipaddr.js/LICENSE +19 -0
  583. package/backend/node_modules/ipaddr.js/README.md +233 -0
  584. package/backend/node_modules/ipaddr.js/ipaddr.min.js +1 -0
  585. package/backend/node_modules/ipaddr.js/lib/ipaddr.js +673 -0
  586. package/backend/node_modules/ipaddr.js/lib/ipaddr.js.d.ts +68 -0
  587. package/backend/node_modules/ipaddr.js/package.json +35 -0
  588. package/backend/node_modules/is-binary-path/index.d.ts +17 -0
  589. package/backend/node_modules/is-binary-path/index.js +7 -0
  590. package/backend/node_modules/is-binary-path/license +9 -0
  591. package/backend/node_modules/is-binary-path/package.json +40 -0
  592. package/backend/node_modules/is-binary-path/readme.md +34 -0
  593. package/backend/node_modules/is-extglob/LICENSE +21 -0
  594. package/backend/node_modules/is-extglob/README.md +107 -0
  595. package/backend/node_modules/is-extglob/index.js +20 -0
  596. package/backend/node_modules/is-extglob/package.json +69 -0
  597. package/backend/node_modules/is-glob/LICENSE +21 -0
  598. package/backend/node_modules/is-glob/README.md +206 -0
  599. package/backend/node_modules/is-glob/index.js +150 -0
  600. package/backend/node_modules/is-glob/package.json +81 -0
  601. package/backend/node_modules/is-number/LICENSE +21 -0
  602. package/backend/node_modules/is-number/README.md +187 -0
  603. package/backend/node_modules/is-number/index.js +18 -0
  604. package/backend/node_modules/is-number/package.json +82 -0
  605. package/backend/node_modules/is-promise/LICENSE +19 -0
  606. package/backend/node_modules/is-promise/index.d.ts +2 -0
  607. package/backend/node_modules/is-promise/index.js +6 -0
  608. package/backend/node_modules/is-promise/index.mjs +3 -0
  609. package/backend/node_modules/is-promise/package.json +30 -0
  610. package/backend/node_modules/is-promise/readme.md +33 -0
  611. package/backend/node_modules/is-property/LICENSE +22 -0
  612. package/backend/node_modules/is-property/README.md +28 -0
  613. package/backend/node_modules/is-property/is-property.js +5 -0
  614. package/backend/node_modules/is-property/package.json +36 -0
  615. package/backend/node_modules/json/.gitmodules +3 -0
  616. package/backend/node_modules/json/.jshintrc +3 -0
  617. package/backend/node_modules/json/CHANGES.md +1050 -0
  618. package/backend/node_modules/json/LICENSE.txt +24 -0
  619. package/backend/node_modules/json/README.md +122 -0
  620. package/backend/node_modules/json/lib/json.js +1765 -0
  621. package/backend/node_modules/json/man/man1/json.1 +1151 -0
  622. package/backend/node_modules/json/package.json +38 -0
  623. package/backend/node_modules/jsonwebtoken/LICENSE +21 -0
  624. package/backend/node_modules/jsonwebtoken/README.md +396 -0
  625. package/backend/node_modules/jsonwebtoken/decode.js +30 -0
  626. package/backend/node_modules/jsonwebtoken/index.js +8 -0
  627. package/backend/node_modules/jsonwebtoken/lib/JsonWebTokenError.js +14 -0
  628. package/backend/node_modules/jsonwebtoken/lib/NotBeforeError.js +13 -0
  629. package/backend/node_modules/jsonwebtoken/lib/TokenExpiredError.js +13 -0
  630. package/backend/node_modules/jsonwebtoken/lib/asymmetricKeyDetailsSupported.js +3 -0
  631. package/backend/node_modules/jsonwebtoken/lib/psSupported.js +3 -0
  632. package/backend/node_modules/jsonwebtoken/lib/rsaPssKeyDetailsSupported.js +3 -0
  633. package/backend/node_modules/jsonwebtoken/lib/timespan.js +18 -0
  634. package/backend/node_modules/jsonwebtoken/lib/validateAsymmetricKey.js +66 -0
  635. package/backend/node_modules/jsonwebtoken/package.json +70 -0
  636. package/backend/node_modules/jsonwebtoken/sign.js +253 -0
  637. package/backend/node_modules/jsonwebtoken/verify.js +263 -0
  638. package/backend/node_modules/jwa/LICENSE +17 -0
  639. package/backend/node_modules/jwa/README.md +150 -0
  640. package/backend/node_modules/jwa/index.js +266 -0
  641. package/backend/node_modules/jwa/opslevel.yml +6 -0
  642. package/backend/node_modules/jwa/package.json +37 -0
  643. package/backend/node_modules/jws/CHANGELOG.md +56 -0
  644. package/backend/node_modules/jws/LICENSE +17 -0
  645. package/backend/node_modules/jws/index.js +22 -0
  646. package/backend/node_modules/jws/lib/data-stream.js +55 -0
  647. package/backend/node_modules/jws/lib/sign-stream.js +83 -0
  648. package/backend/node_modules/jws/lib/tostring.js +10 -0
  649. package/backend/node_modules/jws/lib/verify-stream.js +125 -0
  650. package/backend/node_modules/jws/opslevel.yml +6 -0
  651. package/backend/node_modules/jws/package.json +34 -0
  652. package/backend/node_modules/jws/readme.md +255 -0
  653. package/backend/node_modules/lodash.includes/LICENSE +47 -0
  654. package/backend/node_modules/lodash.includes/README.md +18 -0
  655. package/backend/node_modules/lodash.includes/index.js +745 -0
  656. package/backend/node_modules/lodash.includes/package.json +17 -0
  657. package/backend/node_modules/lodash.isboolean/LICENSE +22 -0
  658. package/backend/node_modules/lodash.isboolean/README.md +18 -0
  659. package/backend/node_modules/lodash.isboolean/index.js +70 -0
  660. package/backend/node_modules/lodash.isboolean/package.json +17 -0
  661. package/backend/node_modules/lodash.isinteger/LICENSE +47 -0
  662. package/backend/node_modules/lodash.isinteger/README.md +18 -0
  663. package/backend/node_modules/lodash.isinteger/index.js +265 -0
  664. package/backend/node_modules/lodash.isinteger/package.json +17 -0
  665. package/backend/node_modules/lodash.isnumber/LICENSE +22 -0
  666. package/backend/node_modules/lodash.isnumber/README.md +18 -0
  667. package/backend/node_modules/lodash.isnumber/index.js +79 -0
  668. package/backend/node_modules/lodash.isnumber/package.json +17 -0
  669. package/backend/node_modules/lodash.isplainobject/LICENSE +47 -0
  670. package/backend/node_modules/lodash.isplainobject/README.md +18 -0
  671. package/backend/node_modules/lodash.isplainobject/index.js +139 -0
  672. package/backend/node_modules/lodash.isplainobject/package.json +17 -0
  673. package/backend/node_modules/lodash.isstring/LICENSE +22 -0
  674. package/backend/node_modules/lodash.isstring/README.md +18 -0
  675. package/backend/node_modules/lodash.isstring/index.js +95 -0
  676. package/backend/node_modules/lodash.isstring/package.json +17 -0
  677. package/backend/node_modules/lodash.once/LICENSE +47 -0
  678. package/backend/node_modules/lodash.once/README.md +18 -0
  679. package/backend/node_modules/lodash.once/index.js +294 -0
  680. package/backend/node_modules/lodash.once/package.json +17 -0
  681. package/backend/node_modules/long/LICENSE +202 -0
  682. package/backend/node_modules/long/README.md +286 -0
  683. package/backend/node_modules/long/index.d.ts +2 -0
  684. package/backend/node_modules/long/index.js +1581 -0
  685. package/backend/node_modules/long/package.json +58 -0
  686. package/backend/node_modules/long/types.d.ts +474 -0
  687. package/backend/node_modules/long/umd/index.d.ts +3 -0
  688. package/backend/node_modules/long/umd/index.js +1622 -0
  689. package/backend/node_modules/long/umd/package.json +3 -0
  690. package/backend/node_modules/long/umd/types.d.ts +474 -0
  691. package/backend/node_modules/lru.min/LICENSE +21 -0
  692. package/backend/node_modules/lru.min/README.md +392 -0
  693. package/backend/node_modules/lru.min/browser/lru.min.js +1 -0
  694. package/backend/node_modules/lru.min/lib/index.d.ts +38 -0
  695. package/backend/node_modules/lru.min/lib/index.js +248 -0
  696. package/backend/node_modules/lru.min/lib/index.mjs +227 -0
  697. package/backend/node_modules/lru.min/package.json +87 -0
  698. package/backend/node_modules/math-intrinsics/.eslintrc +16 -0
  699. package/backend/node_modules/math-intrinsics/.github/FUNDING.yml +12 -0
  700. package/backend/node_modules/math-intrinsics/CHANGELOG.md +24 -0
  701. package/backend/node_modules/math-intrinsics/LICENSE +21 -0
  702. package/backend/node_modules/math-intrinsics/README.md +50 -0
  703. package/backend/node_modules/math-intrinsics/abs.d.ts +1 -0
  704. package/backend/node_modules/math-intrinsics/abs.js +4 -0
  705. package/backend/node_modules/math-intrinsics/constants/maxArrayLength.d.ts +3 -0
  706. package/backend/node_modules/math-intrinsics/constants/maxArrayLength.js +4 -0
  707. package/backend/node_modules/math-intrinsics/constants/maxSafeInteger.d.ts +3 -0
  708. package/backend/node_modules/math-intrinsics/constants/maxSafeInteger.js +5 -0
  709. package/backend/node_modules/math-intrinsics/constants/maxValue.d.ts +3 -0
  710. package/backend/node_modules/math-intrinsics/constants/maxValue.js +5 -0
  711. package/backend/node_modules/math-intrinsics/floor.d.ts +1 -0
  712. package/backend/node_modules/math-intrinsics/floor.js +4 -0
  713. package/backend/node_modules/math-intrinsics/isFinite.d.ts +3 -0
  714. package/backend/node_modules/math-intrinsics/isFinite.js +12 -0
  715. package/backend/node_modules/math-intrinsics/isInteger.d.ts +3 -0
  716. package/backend/node_modules/math-intrinsics/isInteger.js +16 -0
  717. package/backend/node_modules/math-intrinsics/isNaN.d.ts +1 -0
  718. package/backend/node_modules/math-intrinsics/isNaN.js +6 -0
  719. package/backend/node_modules/math-intrinsics/isNegativeZero.d.ts +3 -0
  720. package/backend/node_modules/math-intrinsics/isNegativeZero.js +6 -0
  721. package/backend/node_modules/math-intrinsics/max.d.ts +1 -0
  722. package/backend/node_modules/math-intrinsics/max.js +4 -0
  723. package/backend/node_modules/math-intrinsics/min.d.ts +1 -0
  724. package/backend/node_modules/math-intrinsics/min.js +4 -0
  725. package/backend/node_modules/math-intrinsics/mod.d.ts +3 -0
  726. package/backend/node_modules/math-intrinsics/mod.js +9 -0
  727. package/backend/node_modules/math-intrinsics/package.json +86 -0
  728. package/backend/node_modules/math-intrinsics/pow.d.ts +1 -0
  729. package/backend/node_modules/math-intrinsics/pow.js +4 -0
  730. package/backend/node_modules/math-intrinsics/round.d.ts +1 -0
  731. package/backend/node_modules/math-intrinsics/round.js +4 -0
  732. package/backend/node_modules/math-intrinsics/sign.d.ts +3 -0
  733. package/backend/node_modules/math-intrinsics/sign.js +11 -0
  734. package/backend/node_modules/math-intrinsics/test/index.js +192 -0
  735. package/backend/node_modules/math-intrinsics/tsconfig.json +3 -0
  736. package/backend/node_modules/media-typer/HISTORY.md +50 -0
  737. package/backend/node_modules/media-typer/LICENSE +22 -0
  738. package/backend/node_modules/media-typer/README.md +93 -0
  739. package/backend/node_modules/media-typer/index.js +143 -0
  740. package/backend/node_modules/media-typer/package.json +33 -0
  741. package/backend/node_modules/merge-descriptors/index.d.ts +11 -0
  742. package/backend/node_modules/merge-descriptors/index.js +26 -0
  743. package/backend/node_modules/merge-descriptors/license +11 -0
  744. package/backend/node_modules/merge-descriptors/package.json +50 -0
  745. package/backend/node_modules/merge-descriptors/readme.md +55 -0
  746. package/backend/node_modules/mime-db/HISTORY.md +541 -0
  747. package/backend/node_modules/mime-db/LICENSE +23 -0
  748. package/backend/node_modules/mime-db/README.md +109 -0
  749. package/backend/node_modules/mime-db/db.json +9342 -0
  750. package/backend/node_modules/mime-db/index.js +12 -0
  751. package/backend/node_modules/mime-db/package.json +56 -0
  752. package/backend/node_modules/mime-types/HISTORY.md +428 -0
  753. package/backend/node_modules/mime-types/LICENSE +23 -0
  754. package/backend/node_modules/mime-types/README.md +126 -0
  755. package/backend/node_modules/mime-types/index.js +211 -0
  756. package/backend/node_modules/mime-types/mimeScore.js +57 -0
  757. package/backend/node_modules/mime-types/package.json +49 -0
  758. package/backend/node_modules/minimatch/LICENSE.md +55 -0
  759. package/backend/node_modules/minimatch/README.md +528 -0
  760. package/backend/node_modules/minimatch/dist/commonjs/assert-valid-pattern.d.ts +2 -0
  761. package/backend/node_modules/minimatch/dist/commonjs/assert-valid-pattern.d.ts.map +1 -0
  762. package/backend/node_modules/minimatch/dist/commonjs/assert-valid-pattern.js +14 -0
  763. package/backend/node_modules/minimatch/dist/commonjs/assert-valid-pattern.js.map +1 -0
  764. package/backend/node_modules/minimatch/dist/commonjs/ast.d.ts +22 -0
  765. package/backend/node_modules/minimatch/dist/commonjs/ast.d.ts.map +1 -0
  766. package/backend/node_modules/minimatch/dist/commonjs/ast.js +845 -0
  767. package/backend/node_modules/minimatch/dist/commonjs/ast.js.map +1 -0
  768. package/backend/node_modules/minimatch/dist/commonjs/brace-expressions.d.ts +8 -0
  769. package/backend/node_modules/minimatch/dist/commonjs/brace-expressions.d.ts.map +1 -0
  770. package/backend/node_modules/minimatch/dist/commonjs/brace-expressions.js +150 -0
  771. package/backend/node_modules/minimatch/dist/commonjs/brace-expressions.js.map +1 -0
  772. package/backend/node_modules/minimatch/dist/commonjs/escape.d.ts +15 -0
  773. package/backend/node_modules/minimatch/dist/commonjs/escape.d.ts.map +1 -0
  774. package/backend/node_modules/minimatch/dist/commonjs/escape.js +30 -0
  775. package/backend/node_modules/minimatch/dist/commonjs/escape.js.map +1 -0
  776. package/backend/node_modules/minimatch/dist/commonjs/index.d.ts +174 -0
  777. package/backend/node_modules/minimatch/dist/commonjs/index.d.ts.map +1 -0
  778. package/backend/node_modules/minimatch/dist/commonjs/index.js +1127 -0
  779. package/backend/node_modules/minimatch/dist/commonjs/index.js.map +1 -0
  780. package/backend/node_modules/minimatch/dist/commonjs/package.json +3 -0
  781. package/backend/node_modules/minimatch/dist/commonjs/unescape.d.ts +22 -0
  782. package/backend/node_modules/minimatch/dist/commonjs/unescape.d.ts.map +1 -0
  783. package/backend/node_modules/minimatch/dist/commonjs/unescape.js +38 -0
  784. package/backend/node_modules/minimatch/dist/commonjs/unescape.js.map +1 -0
  785. package/backend/node_modules/minimatch/dist/esm/assert-valid-pattern.d.ts +2 -0
  786. package/backend/node_modules/minimatch/dist/esm/assert-valid-pattern.d.ts.map +1 -0
  787. package/backend/node_modules/minimatch/dist/esm/assert-valid-pattern.js +10 -0
  788. package/backend/node_modules/minimatch/dist/esm/assert-valid-pattern.js.map +1 -0
  789. package/backend/node_modules/minimatch/dist/esm/ast.d.ts +22 -0
  790. package/backend/node_modules/minimatch/dist/esm/ast.d.ts.map +1 -0
  791. package/backend/node_modules/minimatch/dist/esm/ast.js +841 -0
  792. package/backend/node_modules/minimatch/dist/esm/ast.js.map +1 -0
  793. package/backend/node_modules/minimatch/dist/esm/brace-expressions.d.ts +8 -0
  794. package/backend/node_modules/minimatch/dist/esm/brace-expressions.d.ts.map +1 -0
  795. package/backend/node_modules/minimatch/dist/esm/brace-expressions.js +146 -0
  796. package/backend/node_modules/minimatch/dist/esm/brace-expressions.js.map +1 -0
  797. package/backend/node_modules/minimatch/dist/esm/escape.d.ts +15 -0
  798. package/backend/node_modules/minimatch/dist/esm/escape.d.ts.map +1 -0
  799. package/backend/node_modules/minimatch/dist/esm/escape.js +26 -0
  800. package/backend/node_modules/minimatch/dist/esm/escape.js.map +1 -0
  801. package/backend/node_modules/minimatch/dist/esm/index.d.ts +174 -0
  802. package/backend/node_modules/minimatch/dist/esm/index.d.ts.map +1 -0
  803. package/backend/node_modules/minimatch/dist/esm/index.js +1114 -0
  804. package/backend/node_modules/minimatch/dist/esm/index.js.map +1 -0
  805. package/backend/node_modules/minimatch/dist/esm/package.json +3 -0
  806. package/backend/node_modules/minimatch/dist/esm/unescape.d.ts +22 -0
  807. package/backend/node_modules/minimatch/dist/esm/unescape.d.ts.map +1 -0
  808. package/backend/node_modules/minimatch/dist/esm/unescape.js +34 -0
  809. package/backend/node_modules/minimatch/dist/esm/unescape.js.map +1 -0
  810. package/backend/node_modules/minimatch/package.json +73 -0
  811. package/backend/node_modules/ms/index.js +162 -0
  812. package/backend/node_modules/ms/license.md +21 -0
  813. package/backend/node_modules/ms/package.json +38 -0
  814. package/backend/node_modules/ms/readme.md +59 -0
  815. package/backend/node_modules/mysql2/License +19 -0
  816. package/backend/node_modules/mysql2/README.md +114 -0
  817. package/backend/node_modules/mysql2/index.d.ts +1 -0
  818. package/backend/node_modules/mysql2/index.js +77 -0
  819. package/backend/node_modules/mysql2/lib/auth_41.js +95 -0
  820. package/backend/node_modules/mysql2/lib/auth_plugins/caching_sha2_password.js +115 -0
  821. package/backend/node_modules/mysql2/lib/auth_plugins/caching_sha2_password.md +18 -0
  822. package/backend/node_modules/mysql2/lib/auth_plugins/index.js +8 -0
  823. package/backend/node_modules/mysql2/lib/auth_plugins/mysql_clear_password.js +17 -0
  824. package/backend/node_modules/mysql2/lib/auth_plugins/mysql_native_password.js +34 -0
  825. package/backend/node_modules/mysql2/lib/auth_plugins/sha256_password.js +74 -0
  826. package/backend/node_modules/mysql2/lib/base/connection.js +1139 -0
  827. package/backend/node_modules/mysql2/lib/base/pool.js +343 -0
  828. package/backend/node_modules/mysql2/lib/commands/auth_switch.js +151 -0
  829. package/backend/node_modules/mysql2/lib/commands/binlog_dump.js +109 -0
  830. package/backend/node_modules/mysql2/lib/commands/change_user.js +68 -0
  831. package/backend/node_modules/mysql2/lib/commands/client_handshake.js +386 -0
  832. package/backend/node_modules/mysql2/lib/commands/close_statement.js +18 -0
  833. package/backend/node_modules/mysql2/lib/commands/command.js +54 -0
  834. package/backend/node_modules/mysql2/lib/commands/execute.js +116 -0
  835. package/backend/node_modules/mysql2/lib/commands/index.js +29 -0
  836. package/backend/node_modules/mysql2/lib/commands/ping.js +36 -0
  837. package/backend/node_modules/mysql2/lib/commands/prepare.js +143 -0
  838. package/backend/node_modules/mysql2/lib/commands/query.js +365 -0
  839. package/backend/node_modules/mysql2/lib/commands/quit.js +29 -0
  840. package/backend/node_modules/mysql2/lib/commands/register_slave.js +27 -0
  841. package/backend/node_modules/mysql2/lib/commands/reset_connection.js +29 -0
  842. package/backend/node_modules/mysql2/lib/commands/server_handshake.js +205 -0
  843. package/backend/node_modules/mysql2/lib/compressed_protocol.js +153 -0
  844. package/backend/node_modules/mysql2/lib/connection.js +12 -0
  845. package/backend/node_modules/mysql2/lib/connection_config.js +300 -0
  846. package/backend/node_modules/mysql2/lib/constants/charset_encodings.js +317 -0
  847. package/backend/node_modules/mysql2/lib/constants/charsets.js +317 -0
  848. package/backend/node_modules/mysql2/lib/constants/client.js +39 -0
  849. package/backend/node_modules/mysql2/lib/constants/commands.js +37 -0
  850. package/backend/node_modules/mysql2/lib/constants/cursor.js +9 -0
  851. package/backend/node_modules/mysql2/lib/constants/encoding_charset.js +50 -0
  852. package/backend/node_modules/mysql2/lib/constants/errors.js +3973 -0
  853. package/backend/node_modules/mysql2/lib/constants/field_flags.js +20 -0
  854. package/backend/node_modules/mysql2/lib/constants/server_status.js +44 -0
  855. package/backend/node_modules/mysql2/lib/constants/session_track.js +11 -0
  856. package/backend/node_modules/mysql2/lib/constants/ssl_profiles.js +11 -0
  857. package/backend/node_modules/mysql2/lib/constants/types.js +64 -0
  858. package/backend/node_modules/mysql2/lib/create_connection.js +10 -0
  859. package/backend/node_modules/mysql2/lib/create_pool.js +10 -0
  860. package/backend/node_modules/mysql2/lib/create_pool_cluster.js +9 -0
  861. package/backend/node_modules/mysql2/lib/helpers.js +83 -0
  862. package/backend/node_modules/mysql2/lib/packet_parser.js +195 -0
  863. package/backend/node_modules/mysql2/lib/packets/auth_next_factor.js +35 -0
  864. package/backend/node_modules/mysql2/lib/packets/auth_switch_request.js +38 -0
  865. package/backend/node_modules/mysql2/lib/packets/auth_switch_request_more_data.js +33 -0
  866. package/backend/node_modules/mysql2/lib/packets/auth_switch_response.js +30 -0
  867. package/backend/node_modules/mysql2/lib/packets/binary_row.js +95 -0
  868. package/backend/node_modules/mysql2/lib/packets/binlog_dump.js +33 -0
  869. package/backend/node_modules/mysql2/lib/packets/binlog_query_statusvars.js +115 -0
  870. package/backend/node_modules/mysql2/lib/packets/change_user.js +97 -0
  871. package/backend/node_modules/mysql2/lib/packets/close_statement.js +21 -0
  872. package/backend/node_modules/mysql2/lib/packets/column_definition.js +291 -0
  873. package/backend/node_modules/mysql2/lib/packets/encode_parameter.js +69 -0
  874. package/backend/node_modules/mysql2/lib/packets/execute.js +177 -0
  875. package/backend/node_modules/mysql2/lib/packets/handshake.js +112 -0
  876. package/backend/node_modules/mysql2/lib/packets/handshake_response.js +173 -0
  877. package/backend/node_modules/mysql2/lib/packets/index.js +154 -0
  878. package/backend/node_modules/mysql2/lib/packets/packet.js +978 -0
  879. package/backend/node_modules/mysql2/lib/packets/prepare_statement.js +27 -0
  880. package/backend/node_modules/mysql2/lib/packets/prepared_statement_header.js +16 -0
  881. package/backend/node_modules/mysql2/lib/packets/query.js +102 -0
  882. package/backend/node_modules/mysql2/lib/packets/register_slave.js +46 -0
  883. package/backend/node_modules/mysql2/lib/packets/reset_connection.js +17 -0
  884. package/backend/node_modules/mysql2/lib/packets/resultset_header.js +124 -0
  885. package/backend/node_modules/mysql2/lib/packets/ssl_request.js +25 -0
  886. package/backend/node_modules/mysql2/lib/packets/text_row.js +47 -0
  887. package/backend/node_modules/mysql2/lib/parsers/binary_parser.js +235 -0
  888. package/backend/node_modules/mysql2/lib/parsers/parser_cache.js +68 -0
  889. package/backend/node_modules/mysql2/lib/parsers/static_binary_parser.js +213 -0
  890. package/backend/node_modules/mysql2/lib/parsers/static_text_parser.js +152 -0
  891. package/backend/node_modules/mysql2/lib/parsers/string.js +50 -0
  892. package/backend/node_modules/mysql2/lib/parsers/text_parser.js +214 -0
  893. package/backend/node_modules/mysql2/lib/pool.js +12 -0
  894. package/backend/node_modules/mysql2/lib/pool_cluster.js +375 -0
  895. package/backend/node_modules/mysql2/lib/pool_config.js +34 -0
  896. package/backend/node_modules/mysql2/lib/pool_connection.js +81 -0
  897. package/backend/node_modules/mysql2/lib/promise/capture_local_err.js +25 -0
  898. package/backend/node_modules/mysql2/lib/promise/connection.js +237 -0
  899. package/backend/node_modules/mysql2/lib/promise/inherit_events.js +27 -0
  900. package/backend/node_modules/mysql2/lib/promise/make_done_cb.js +16 -0
  901. package/backend/node_modules/mysql2/lib/promise/pool.js +118 -0
  902. package/backend/node_modules/mysql2/lib/promise/pool_cluster.js +59 -0
  903. package/backend/node_modules/mysql2/lib/promise/pool_connection.js +19 -0
  904. package/backend/node_modules/mysql2/lib/promise/prepared_statement_info.js +35 -0
  905. package/backend/node_modules/mysql2/lib/results_stream.js +38 -0
  906. package/backend/node_modules/mysql2/lib/server.js +37 -0
  907. package/backend/node_modules/mysql2/lib/tracing.js +81 -0
  908. package/backend/node_modules/mysql2/package.json +95 -0
  909. package/backend/node_modules/mysql2/promise.d.ts +141 -0
  910. package/backend/node_modules/mysql2/promise.js +209 -0
  911. package/backend/node_modules/mysql2/typings/mysql/LICENSE.txt +15 -0
  912. package/backend/node_modules/mysql2/typings/mysql/index.d.ts +93 -0
  913. package/backend/node_modules/mysql2/typings/mysql/info.txt +1 -0
  914. package/backend/node_modules/mysql2/typings/mysql/lib/Auth.d.ts +30 -0
  915. package/backend/node_modules/mysql2/typings/mysql/lib/Connection.d.ts +456 -0
  916. package/backend/node_modules/mysql2/typings/mysql/lib/Pool.d.ts +78 -0
  917. package/backend/node_modules/mysql2/typings/mysql/lib/PoolCluster.d.ts +92 -0
  918. package/backend/node_modules/mysql2/typings/mysql/lib/PoolConnection.d.ts +11 -0
  919. package/backend/node_modules/mysql2/typings/mysql/lib/Server.d.ts +11 -0
  920. package/backend/node_modules/mysql2/typings/mysql/lib/Tracing.d.ts +71 -0
  921. package/backend/node_modules/mysql2/typings/mysql/lib/constants/CharsetToEncoding.d.ts +8 -0
  922. package/backend/node_modules/mysql2/typings/mysql/lib/constants/Charsets.d.ts +326 -0
  923. package/backend/node_modules/mysql2/typings/mysql/lib/constants/Types.d.ts +70 -0
  924. package/backend/node_modules/mysql2/typings/mysql/lib/constants/index.d.ts +5 -0
  925. package/backend/node_modules/mysql2/typings/mysql/lib/parsers/ParserCache.d.ts +4 -0
  926. package/backend/node_modules/mysql2/typings/mysql/lib/parsers/index.d.ts +18 -0
  927. package/backend/node_modules/mysql2/typings/mysql/lib/parsers/typeCast.d.ts +54 -0
  928. package/backend/node_modules/mysql2/typings/mysql/lib/protocol/packets/Field.d.ts +10 -0
  929. package/backend/node_modules/mysql2/typings/mysql/lib/protocol/packets/FieldPacket.d.ts +27 -0
  930. package/backend/node_modules/mysql2/typings/mysql/lib/protocol/packets/OkPacket.d.ts +23 -0
  931. package/backend/node_modules/mysql2/typings/mysql/lib/protocol/packets/ProcedurePacket.d.ts +13 -0
  932. package/backend/node_modules/mysql2/typings/mysql/lib/protocol/packets/ResultSetHeader.d.ts +18 -0
  933. package/backend/node_modules/mysql2/typings/mysql/lib/protocol/packets/RowDataPacket.d.ts +9 -0
  934. package/backend/node_modules/mysql2/typings/mysql/lib/protocol/packets/index.d.ts +28 -0
  935. package/backend/node_modules/mysql2/typings/mysql/lib/protocol/packets/params/ErrorPacketParams.d.ts +6 -0
  936. package/backend/node_modules/mysql2/typings/mysql/lib/protocol/packets/params/OkPacketParams.d.ts +9 -0
  937. package/backend/node_modules/mysql2/typings/mysql/lib/protocol/sequences/ExecutableBase.d.ts +41 -0
  938. package/backend/node_modules/mysql2/typings/mysql/lib/protocol/sequences/Prepare.d.ts +65 -0
  939. package/backend/node_modules/mysql2/typings/mysql/lib/protocol/sequences/Query.d.ts +235 -0
  940. package/backend/node_modules/mysql2/typings/mysql/lib/protocol/sequences/QueryableBase.d.ts +41 -0
  941. package/backend/node_modules/mysql2/typings/mysql/lib/protocol/sequences/Sequence.d.ts +5 -0
  942. package/backend/node_modules/mysql2/typings/mysql/lib/protocol/sequences/promise/ExecutableBase.d.ts +17 -0
  943. package/backend/node_modules/mysql2/typings/mysql/lib/protocol/sequences/promise/QueryableBase.d.ts +18 -0
  944. package/backend/node_modules/named-placeholders/LICENSE +21 -0
  945. package/backend/node_modules/named-placeholders/README.md +27 -0
  946. package/backend/node_modules/named-placeholders/index.js +179 -0
  947. package/backend/node_modules/named-placeholders/package.json +36 -0
  948. package/backend/node_modules/negotiator/HISTORY.md +114 -0
  949. package/backend/node_modules/negotiator/LICENSE +24 -0
  950. package/backend/node_modules/negotiator/README.md +212 -0
  951. package/backend/node_modules/negotiator/index.js +83 -0
  952. package/backend/node_modules/negotiator/lib/charset.js +169 -0
  953. package/backend/node_modules/negotiator/lib/encoding.js +205 -0
  954. package/backend/node_modules/negotiator/lib/language.js +179 -0
  955. package/backend/node_modules/negotiator/lib/mediaType.js +294 -0
  956. package/backend/node_modules/negotiator/package.json +43 -0
  957. package/backend/node_modules/node-addon-api/LICENSE.md +9 -0
  958. package/backend/node_modules/node-addon-api/README.md +95 -0
  959. package/backend/node_modules/node-addon-api/common.gypi +21 -0
  960. package/backend/node_modules/node-addon-api/except.gypi +25 -0
  961. package/backend/node_modules/node-addon-api/index.js +14 -0
  962. package/backend/node_modules/node-addon-api/napi-inl.deprecated.h +186 -0
  963. package/backend/node_modules/node-addon-api/napi-inl.h +7181 -0
  964. package/backend/node_modules/node-addon-api/napi.h +3380 -0
  965. package/backend/node_modules/node-addon-api/node_addon_api.gyp +42 -0
  966. package/backend/node_modules/node-addon-api/node_api.gyp +9 -0
  967. package/backend/node_modules/node-addon-api/noexcept.gypi +26 -0
  968. package/backend/node_modules/node-addon-api/nothing.c +0 -0
  969. package/backend/node_modules/node-addon-api/package-support.json +21 -0
  970. package/backend/node_modules/node-addon-api/package.json +480 -0
  971. package/backend/node_modules/node-addon-api/tools/README.md +73 -0
  972. package/backend/node_modules/node-addon-api/tools/check-napi.js +99 -0
  973. package/backend/node_modules/node-addon-api/tools/clang-format.js +71 -0
  974. package/backend/node_modules/node-addon-api/tools/conversion.js +301 -0
  975. package/backend/node_modules/node-gyp-build/LICENSE +21 -0
  976. package/backend/node_modules/node-gyp-build/README.md +58 -0
  977. package/backend/node_modules/node-gyp-build/SECURITY.md +5 -0
  978. package/backend/node_modules/node-gyp-build/bin.js +84 -0
  979. package/backend/node_modules/node-gyp-build/build-test.js +19 -0
  980. package/backend/node_modules/node-gyp-build/index.js +6 -0
  981. package/backend/node_modules/node-gyp-build/node-gyp-build.js +207 -0
  982. package/backend/node_modules/node-gyp-build/optional.js +7 -0
  983. package/backend/node_modules/node-gyp-build/package.json +43 -0
  984. package/backend/node_modules/nodemon/.prettierrc.json +3 -0
  985. package/backend/node_modules/nodemon/LICENSE +21 -0
  986. package/backend/node_modules/nodemon/README.md +439 -0
  987. package/backend/node_modules/nodemon/bin/nodemon.js +16 -0
  988. package/backend/node_modules/nodemon/bin/windows-kill.exe +0 -0
  989. package/backend/node_modules/nodemon/doc/cli/authors.txt +8 -0
  990. package/backend/node_modules/nodemon/doc/cli/config.txt +44 -0
  991. package/backend/node_modules/nodemon/doc/cli/help.txt +29 -0
  992. package/backend/node_modules/nodemon/doc/cli/logo.txt +20 -0
  993. package/backend/node_modules/nodemon/doc/cli/options.txt +36 -0
  994. package/backend/node_modules/nodemon/doc/cli/topics.txt +8 -0
  995. package/backend/node_modules/nodemon/doc/cli/usage.txt +3 -0
  996. package/backend/node_modules/nodemon/doc/cli/whoami.txt +9 -0
  997. package/backend/node_modules/nodemon/index.d.ts +124 -0
  998. package/backend/node_modules/nodemon/jsconfig.json +7 -0
  999. package/backend/node_modules/nodemon/lib/cli/index.js +49 -0
  1000. package/backend/node_modules/nodemon/lib/cli/parse.js +230 -0
  1001. package/backend/node_modules/nodemon/lib/config/command.js +43 -0
  1002. package/backend/node_modules/nodemon/lib/config/defaults.js +34 -0
  1003. package/backend/node_modules/nodemon/lib/config/exec.js +240 -0
  1004. package/backend/node_modules/nodemon/lib/config/index.js +93 -0
  1005. package/backend/node_modules/nodemon/lib/config/load.js +225 -0
  1006. package/backend/node_modules/nodemon/lib/help/index.js +27 -0
  1007. package/backend/node_modules/nodemon/lib/index.js +1 -0
  1008. package/backend/node_modules/nodemon/lib/monitor/index.js +4 -0
  1009. package/backend/node_modules/nodemon/lib/monitor/match.js +288 -0
  1010. package/backend/node_modules/nodemon/lib/monitor/run.js +562 -0
  1011. package/backend/node_modules/nodemon/lib/monitor/signals.js +34 -0
  1012. package/backend/node_modules/nodemon/lib/monitor/watch.js +244 -0
  1013. package/backend/node_modules/nodemon/lib/nodemon.js +317 -0
  1014. package/backend/node_modules/nodemon/lib/rules/add.js +89 -0
  1015. package/backend/node_modules/nodemon/lib/rules/index.js +53 -0
  1016. package/backend/node_modules/nodemon/lib/rules/parse.js +43 -0
  1017. package/backend/node_modules/nodemon/lib/spawn.js +74 -0
  1018. package/backend/node_modules/nodemon/lib/utils/bus.js +44 -0
  1019. package/backend/node_modules/nodemon/lib/utils/clone.js +40 -0
  1020. package/backend/node_modules/nodemon/lib/utils/colour.js +26 -0
  1021. package/backend/node_modules/nodemon/lib/utils/index.js +103 -0
  1022. package/backend/node_modules/nodemon/lib/utils/log.js +82 -0
  1023. package/backend/node_modules/nodemon/lib/utils/merge.js +47 -0
  1024. package/backend/node_modules/nodemon/lib/version.js +100 -0
  1025. package/backend/node_modules/nodemon/package.json +78 -0
  1026. package/backend/node_modules/normalize-path/LICENSE +21 -0
  1027. package/backend/node_modules/normalize-path/README.md +127 -0
  1028. package/backend/node_modules/normalize-path/index.js +35 -0
  1029. package/backend/node_modules/normalize-path/package.json +77 -0
  1030. package/backend/node_modules/object-assign/index.js +90 -0
  1031. package/backend/node_modules/object-assign/license +21 -0
  1032. package/backend/node_modules/object-assign/package.json +42 -0
  1033. package/backend/node_modules/object-assign/readme.md +61 -0
  1034. package/backend/node_modules/object-inspect/.eslintrc +53 -0
  1035. package/backend/node_modules/object-inspect/.github/FUNDING.yml +12 -0
  1036. package/backend/node_modules/object-inspect/.nycrc +13 -0
  1037. package/backend/node_modules/object-inspect/CHANGELOG.md +424 -0
  1038. package/backend/node_modules/object-inspect/LICENSE +21 -0
  1039. package/backend/node_modules/object-inspect/example/all.js +23 -0
  1040. package/backend/node_modules/object-inspect/example/circular.js +6 -0
  1041. package/backend/node_modules/object-inspect/example/fn.js +5 -0
  1042. package/backend/node_modules/object-inspect/example/inspect.js +10 -0
  1043. package/backend/node_modules/object-inspect/index.js +544 -0
  1044. package/backend/node_modules/object-inspect/package-support.json +20 -0
  1045. package/backend/node_modules/object-inspect/package.json +105 -0
  1046. package/backend/node_modules/object-inspect/readme.markdown +84 -0
  1047. package/backend/node_modules/object-inspect/test/bigint.js +58 -0
  1048. package/backend/node_modules/object-inspect/test/browser/dom.js +15 -0
  1049. package/backend/node_modules/object-inspect/test/circular.js +16 -0
  1050. package/backend/node_modules/object-inspect/test/deep.js +12 -0
  1051. package/backend/node_modules/object-inspect/test/element.js +53 -0
  1052. package/backend/node_modules/object-inspect/test/err.js +48 -0
  1053. package/backend/node_modules/object-inspect/test/fakes.js +29 -0
  1054. package/backend/node_modules/object-inspect/test/fn.js +76 -0
  1055. package/backend/node_modules/object-inspect/test/global.js +17 -0
  1056. package/backend/node_modules/object-inspect/test/has.js +15 -0
  1057. package/backend/node_modules/object-inspect/test/holes.js +15 -0
  1058. package/backend/node_modules/object-inspect/test/indent-option.js +271 -0
  1059. package/backend/node_modules/object-inspect/test/inspect.js +139 -0
  1060. package/backend/node_modules/object-inspect/test/lowbyte.js +12 -0
  1061. package/backend/node_modules/object-inspect/test/number.js +58 -0
  1062. package/backend/node_modules/object-inspect/test/quoteStyle.js +26 -0
  1063. package/backend/node_modules/object-inspect/test/toStringTag.js +40 -0
  1064. package/backend/node_modules/object-inspect/test/undef.js +12 -0
  1065. package/backend/node_modules/object-inspect/test/values.js +261 -0
  1066. package/backend/node_modules/object-inspect/test-core-js.js +26 -0
  1067. package/backend/node_modules/object-inspect/util.inspect.js +1 -0
  1068. package/backend/node_modules/on-finished/HISTORY.md +98 -0
  1069. package/backend/node_modules/on-finished/LICENSE +23 -0
  1070. package/backend/node_modules/on-finished/README.md +162 -0
  1071. package/backend/node_modules/on-finished/index.js +234 -0
  1072. package/backend/node_modules/on-finished/package.json +39 -0
  1073. package/backend/node_modules/once/LICENSE +15 -0
  1074. package/backend/node_modules/once/README.md +79 -0
  1075. package/backend/node_modules/once/once.js +42 -0
  1076. package/backend/node_modules/once/package.json +33 -0
  1077. package/backend/node_modules/parseurl/HISTORY.md +58 -0
  1078. package/backend/node_modules/parseurl/LICENSE +24 -0
  1079. package/backend/node_modules/parseurl/README.md +133 -0
  1080. package/backend/node_modules/parseurl/index.js +158 -0
  1081. package/backend/node_modules/parseurl/package.json +40 -0
  1082. package/backend/node_modules/path-to-regexp/LICENSE +21 -0
  1083. package/backend/node_modules/path-to-regexp/Readme.md +224 -0
  1084. package/backend/node_modules/path-to-regexp/dist/index.d.ts +147 -0
  1085. package/backend/node_modules/path-to-regexp/dist/index.js +431 -0
  1086. package/backend/node_modules/path-to-regexp/dist/index.js.map +1 -0
  1087. package/backend/node_modules/path-to-regexp/package.json +64 -0
  1088. package/backend/node_modules/picomatch/LICENSE +21 -0
  1089. package/backend/node_modules/picomatch/README.md +716 -0
  1090. package/backend/node_modules/picomatch/index.js +3 -0
  1091. package/backend/node_modules/picomatch/lib/constants.js +184 -0
  1092. package/backend/node_modules/picomatch/lib/parse.js +1392 -0
  1093. package/backend/node_modules/picomatch/lib/picomatch.js +342 -0
  1094. package/backend/node_modules/picomatch/lib/scan.js +391 -0
  1095. package/backend/node_modules/picomatch/lib/utils.js +64 -0
  1096. package/backend/node_modules/picomatch/package.json +81 -0
  1097. package/backend/node_modules/proxy-addr/HISTORY.md +161 -0
  1098. package/backend/node_modules/proxy-addr/LICENSE +22 -0
  1099. package/backend/node_modules/proxy-addr/README.md +139 -0
  1100. package/backend/node_modules/proxy-addr/index.js +327 -0
  1101. package/backend/node_modules/proxy-addr/package.json +47 -0
  1102. package/backend/node_modules/pstree.remy/.travis.yml +8 -0
  1103. package/backend/node_modules/pstree.remy/LICENSE +7 -0
  1104. package/backend/node_modules/pstree.remy/README.md +26 -0
  1105. package/backend/node_modules/pstree.remy/lib/index.js +37 -0
  1106. package/backend/node_modules/pstree.remy/lib/tree.js +37 -0
  1107. package/backend/node_modules/pstree.remy/lib/utils.js +53 -0
  1108. package/backend/node_modules/pstree.remy/package.json +33 -0
  1109. package/backend/node_modules/pstree.remy/tests/fixtures/index.js +13 -0
  1110. package/backend/node_modules/pstree.remy/tests/fixtures/out1 +10 -0
  1111. package/backend/node_modules/pstree.remy/tests/fixtures/out2 +29 -0
  1112. package/backend/node_modules/pstree.remy/tests/index.test.js +51 -0
  1113. package/backend/node_modules/qs/.editorconfig +46 -0
  1114. package/backend/node_modules/qs/.github/FUNDING.yml +12 -0
  1115. package/backend/node_modules/qs/.github/SECURITY.md +11 -0
  1116. package/backend/node_modules/qs/.github/THREAT_MODEL.md +78 -0
  1117. package/backend/node_modules/qs/.nycrc +13 -0
  1118. package/backend/node_modules/qs/CHANGELOG.md +822 -0
  1119. package/backend/node_modules/qs/LICENSE.md +29 -0
  1120. package/backend/node_modules/qs/README.md +758 -0
  1121. package/backend/node_modules/qs/dist/qs.js +141 -0
  1122. package/backend/node_modules/qs/eslint.config.mjs +57 -0
  1123. package/backend/node_modules/qs/lib/formats.js +23 -0
  1124. package/backend/node_modules/qs/lib/index.js +11 -0
  1125. package/backend/node_modules/qs/lib/parse.js +403 -0
  1126. package/backend/node_modules/qs/lib/stringify.js +363 -0
  1127. package/backend/node_modules/qs/lib/utils.js +342 -0
  1128. package/backend/node_modules/qs/package.json +94 -0
  1129. package/backend/node_modules/qs/test/empty-keys-cases.js +267 -0
  1130. package/backend/node_modules/qs/test/parse.js +1703 -0
  1131. package/backend/node_modules/qs/test/stringify.js +1448 -0
  1132. package/backend/node_modules/qs/test/utils.js +432 -0
  1133. package/backend/node_modules/range-parser/HISTORY.md +56 -0
  1134. package/backend/node_modules/range-parser/LICENSE +23 -0
  1135. package/backend/node_modules/range-parser/README.md +84 -0
  1136. package/backend/node_modules/range-parser/index.js +162 -0
  1137. package/backend/node_modules/range-parser/package.json +44 -0
  1138. package/backend/node_modules/raw-body/LICENSE +22 -0
  1139. package/backend/node_modules/raw-body/README.md +223 -0
  1140. package/backend/node_modules/raw-body/index.d.ts +85 -0
  1141. package/backend/node_modules/raw-body/index.js +336 -0
  1142. package/backend/node_modules/raw-body/package.json +46 -0
  1143. package/backend/node_modules/readdirp/LICENSE +21 -0
  1144. package/backend/node_modules/readdirp/README.md +122 -0
  1145. package/backend/node_modules/readdirp/index.d.ts +43 -0
  1146. package/backend/node_modules/readdirp/index.js +287 -0
  1147. package/backend/node_modules/readdirp/package.json +122 -0
  1148. package/backend/node_modules/router/HISTORY.md +228 -0
  1149. package/backend/node_modules/router/LICENSE +23 -0
  1150. package/backend/node_modules/router/README.md +416 -0
  1151. package/backend/node_modules/router/index.js +748 -0
  1152. package/backend/node_modules/router/lib/layer.js +247 -0
  1153. package/backend/node_modules/router/lib/route.js +242 -0
  1154. package/backend/node_modules/router/package.json +44 -0
  1155. package/backend/node_modules/safe-buffer/LICENSE +21 -0
  1156. package/backend/node_modules/safe-buffer/README.md +584 -0
  1157. package/backend/node_modules/safe-buffer/index.d.ts +187 -0
  1158. package/backend/node_modules/safe-buffer/index.js +65 -0
  1159. package/backend/node_modules/safe-buffer/package.json +51 -0
  1160. package/backend/node_modules/safer-buffer/LICENSE +21 -0
  1161. package/backend/node_modules/safer-buffer/Porting-Buffer.md +268 -0
  1162. package/backend/node_modules/safer-buffer/Readme.md +156 -0
  1163. package/backend/node_modules/safer-buffer/dangerous.js +58 -0
  1164. package/backend/node_modules/safer-buffer/package.json +34 -0
  1165. package/backend/node_modules/safer-buffer/safer.js +77 -0
  1166. package/backend/node_modules/safer-buffer/tests.js +406 -0
  1167. package/backend/node_modules/semver/LICENSE +15 -0
  1168. package/backend/node_modules/semver/README.md +680 -0
  1169. package/backend/node_modules/semver/bin/semver.js +195 -0
  1170. package/backend/node_modules/semver/classes/comparator.js +143 -0
  1171. package/backend/node_modules/semver/classes/index.js +7 -0
  1172. package/backend/node_modules/semver/classes/range.js +557 -0
  1173. package/backend/node_modules/semver/classes/semver.js +333 -0
  1174. package/backend/node_modules/semver/functions/clean.js +8 -0
  1175. package/backend/node_modules/semver/functions/cmp.js +54 -0
  1176. package/backend/node_modules/semver/functions/coerce.js +62 -0
  1177. package/backend/node_modules/semver/functions/compare-build.js +9 -0
  1178. package/backend/node_modules/semver/functions/compare-loose.js +5 -0
  1179. package/backend/node_modules/semver/functions/compare.js +7 -0
  1180. package/backend/node_modules/semver/functions/diff.js +60 -0
  1181. package/backend/node_modules/semver/functions/eq.js +5 -0
  1182. package/backend/node_modules/semver/functions/gt.js +5 -0
  1183. package/backend/node_modules/semver/functions/gte.js +5 -0
  1184. package/backend/node_modules/semver/functions/inc.js +21 -0
  1185. package/backend/node_modules/semver/functions/lt.js +5 -0
  1186. package/backend/node_modules/semver/functions/lte.js +5 -0
  1187. package/backend/node_modules/semver/functions/major.js +5 -0
  1188. package/backend/node_modules/semver/functions/minor.js +5 -0
  1189. package/backend/node_modules/semver/functions/neq.js +5 -0
  1190. package/backend/node_modules/semver/functions/parse.js +18 -0
  1191. package/backend/node_modules/semver/functions/patch.js +5 -0
  1192. package/backend/node_modules/semver/functions/prerelease.js +8 -0
  1193. package/backend/node_modules/semver/functions/rcompare.js +5 -0
  1194. package/backend/node_modules/semver/functions/rsort.js +5 -0
  1195. package/backend/node_modules/semver/functions/satisfies.js +12 -0
  1196. package/backend/node_modules/semver/functions/sort.js +5 -0
  1197. package/backend/node_modules/semver/functions/truncate.js +48 -0
  1198. package/backend/node_modules/semver/functions/valid.js +8 -0
  1199. package/backend/node_modules/semver/index.js +93 -0
  1200. package/backend/node_modules/semver/internal/constants.js +37 -0
  1201. package/backend/node_modules/semver/internal/debug.js +11 -0
  1202. package/backend/node_modules/semver/internal/identifiers.js +29 -0
  1203. package/backend/node_modules/semver/internal/lrucache.js +42 -0
  1204. package/backend/node_modules/semver/internal/parse-options.js +17 -0
  1205. package/backend/node_modules/semver/internal/re.js +223 -0
  1206. package/backend/node_modules/semver/package.json +78 -0
  1207. package/backend/node_modules/semver/preload.js +4 -0
  1208. package/backend/node_modules/semver/range.bnf +17 -0
  1209. package/backend/node_modules/semver/ranges/gtr.js +6 -0
  1210. package/backend/node_modules/semver/ranges/intersects.js +9 -0
  1211. package/backend/node_modules/semver/ranges/ltr.js +6 -0
  1212. package/backend/node_modules/semver/ranges/max-satisfying.js +27 -0
  1213. package/backend/node_modules/semver/ranges/min-satisfying.js +26 -0
  1214. package/backend/node_modules/semver/ranges/min-version.js +63 -0
  1215. package/backend/node_modules/semver/ranges/outside.js +82 -0
  1216. package/backend/node_modules/semver/ranges/simplify.js +49 -0
  1217. package/backend/node_modules/semver/ranges/subset.js +249 -0
  1218. package/backend/node_modules/semver/ranges/to-comparators.js +10 -0
  1219. package/backend/node_modules/semver/ranges/valid.js +13 -0
  1220. package/backend/node_modules/send/LICENSE +23 -0
  1221. package/backend/node_modules/send/README.md +317 -0
  1222. package/backend/node_modules/send/index.js +997 -0
  1223. package/backend/node_modules/send/package.json +63 -0
  1224. package/backend/node_modules/serve-static/LICENSE +25 -0
  1225. package/backend/node_modules/serve-static/README.md +253 -0
  1226. package/backend/node_modules/serve-static/index.js +208 -0
  1227. package/backend/node_modules/serve-static/package.json +44 -0
  1228. package/backend/node_modules/setprototypeof/LICENSE +13 -0
  1229. package/backend/node_modules/setprototypeof/README.md +31 -0
  1230. package/backend/node_modules/setprototypeof/index.d.ts +2 -0
  1231. package/backend/node_modules/setprototypeof/index.js +17 -0
  1232. package/backend/node_modules/setprototypeof/package.json +38 -0
  1233. package/backend/node_modules/setprototypeof/test/index.js +24 -0
  1234. package/backend/node_modules/side-channel/.editorconfig +9 -0
  1235. package/backend/node_modules/side-channel/.eslintrc +12 -0
  1236. package/backend/node_modules/side-channel/.github/FUNDING.yml +12 -0
  1237. package/backend/node_modules/side-channel/.nycrc +13 -0
  1238. package/backend/node_modules/side-channel/CHANGELOG.md +110 -0
  1239. package/backend/node_modules/side-channel/LICENSE +21 -0
  1240. package/backend/node_modules/side-channel/README.md +61 -0
  1241. package/backend/node_modules/side-channel/index.d.ts +14 -0
  1242. package/backend/node_modules/side-channel/index.js +43 -0
  1243. package/backend/node_modules/side-channel/package.json +85 -0
  1244. package/backend/node_modules/side-channel/test/index.js +104 -0
  1245. package/backend/node_modules/side-channel/tsconfig.json +9 -0
  1246. package/backend/node_modules/side-channel-list/.editorconfig +9 -0
  1247. package/backend/node_modules/side-channel-list/.eslintrc +11 -0
  1248. package/backend/node_modules/side-channel-list/.github/FUNDING.yml +12 -0
  1249. package/backend/node_modules/side-channel-list/.nycrc +13 -0
  1250. package/backend/node_modules/side-channel-list/CHANGELOG.md +36 -0
  1251. package/backend/node_modules/side-channel-list/LICENSE +21 -0
  1252. package/backend/node_modules/side-channel-list/README.md +62 -0
  1253. package/backend/node_modules/side-channel-list/index.d.ts +13 -0
  1254. package/backend/node_modules/side-channel-list/index.js +111 -0
  1255. package/backend/node_modules/side-channel-list/list.d.ts +14 -0
  1256. package/backend/node_modules/side-channel-list/package.json +77 -0
  1257. package/backend/node_modules/side-channel-list/test/index.js +154 -0
  1258. package/backend/node_modules/side-channel-list/tsconfig.json +9 -0
  1259. package/backend/node_modules/side-channel-map/.editorconfig +9 -0
  1260. package/backend/node_modules/side-channel-map/.eslintrc +11 -0
  1261. package/backend/node_modules/side-channel-map/.github/FUNDING.yml +12 -0
  1262. package/backend/node_modules/side-channel-map/.nycrc +13 -0
  1263. package/backend/node_modules/side-channel-map/CHANGELOG.md +22 -0
  1264. package/backend/node_modules/side-channel-map/LICENSE +21 -0
  1265. package/backend/node_modules/side-channel-map/README.md +62 -0
  1266. package/backend/node_modules/side-channel-map/index.d.ts +15 -0
  1267. package/backend/node_modules/side-channel-map/index.js +68 -0
  1268. package/backend/node_modules/side-channel-map/package.json +80 -0
  1269. package/backend/node_modules/side-channel-map/test/index.js +114 -0
  1270. package/backend/node_modules/side-channel-map/tsconfig.json +9 -0
  1271. package/backend/node_modules/side-channel-weakmap/.editorconfig +9 -0
  1272. package/backend/node_modules/side-channel-weakmap/.eslintrc +12 -0
  1273. package/backend/node_modules/side-channel-weakmap/.github/FUNDING.yml +12 -0
  1274. package/backend/node_modules/side-channel-weakmap/.nycrc +13 -0
  1275. package/backend/node_modules/side-channel-weakmap/CHANGELOG.md +28 -0
  1276. package/backend/node_modules/side-channel-weakmap/LICENSE +21 -0
  1277. package/backend/node_modules/side-channel-weakmap/README.md +62 -0
  1278. package/backend/node_modules/side-channel-weakmap/index.d.ts +15 -0
  1279. package/backend/node_modules/side-channel-weakmap/index.js +84 -0
  1280. package/backend/node_modules/side-channel-weakmap/package.json +87 -0
  1281. package/backend/node_modules/side-channel-weakmap/test/index.js +114 -0
  1282. package/backend/node_modules/side-channel-weakmap/tsconfig.json +9 -0
  1283. package/backend/node_modules/simple-update-notifier/LICENSE +21 -0
  1284. package/backend/node_modules/simple-update-notifier/README.md +82 -0
  1285. package/backend/node_modules/simple-update-notifier/build/index.d.ts +13 -0
  1286. package/backend/node_modules/simple-update-notifier/build/index.js +210 -0
  1287. package/backend/node_modules/simple-update-notifier/package.json +100 -0
  1288. package/backend/node_modules/simple-update-notifier/src/borderedText.ts +12 -0
  1289. package/backend/node_modules/simple-update-notifier/src/cache.spec.ts +17 -0
  1290. package/backend/node_modules/simple-update-notifier/src/cache.ts +44 -0
  1291. package/backend/node_modules/simple-update-notifier/src/getDistVersion.spec.ts +35 -0
  1292. package/backend/node_modules/simple-update-notifier/src/getDistVersion.ts +29 -0
  1293. package/backend/node_modules/simple-update-notifier/src/hasNewVersion.spec.ts +82 -0
  1294. package/backend/node_modules/simple-update-notifier/src/hasNewVersion.ts +40 -0
  1295. package/backend/node_modules/simple-update-notifier/src/index.spec.ts +27 -0
  1296. package/backend/node_modules/simple-update-notifier/src/index.ts +34 -0
  1297. package/backend/node_modules/simple-update-notifier/src/isNpmOrYarn.ts +12 -0
  1298. package/backend/node_modules/simple-update-notifier/src/types.ts +8 -0
  1299. package/backend/node_modules/sql-escaper/LICENSE +21 -0
  1300. package/backend/node_modules/sql-escaper/README.md +424 -0
  1301. package/backend/node_modules/sql-escaper/lib/index.d.ts +15 -0
  1302. package/backend/node_modules/sql-escaper/lib/index.js +398 -0
  1303. package/backend/node_modules/sql-escaper/lib/index.mjs +305 -0
  1304. package/backend/node_modules/sql-escaper/lib/types.d.ts +5 -0
  1305. package/backend/node_modules/sql-escaper/lib/types.js +2 -0
  1306. package/backend/node_modules/sql-escaper/package.json +81 -0
  1307. package/backend/node_modules/statuses/HISTORY.md +87 -0
  1308. package/backend/node_modules/statuses/LICENSE +23 -0
  1309. package/backend/node_modules/statuses/README.md +139 -0
  1310. package/backend/node_modules/statuses/codes.json +65 -0
  1311. package/backend/node_modules/statuses/index.js +146 -0
  1312. package/backend/node_modules/statuses/package.json +49 -0
  1313. package/backend/node_modules/supports-color/browser.js +5 -0
  1314. package/backend/node_modules/supports-color/index.js +131 -0
  1315. package/backend/node_modules/supports-color/license +9 -0
  1316. package/backend/node_modules/supports-color/package.json +53 -0
  1317. package/backend/node_modules/supports-color/readme.md +66 -0
  1318. package/backend/node_modules/to-regex-range/LICENSE +21 -0
  1319. package/backend/node_modules/to-regex-range/README.md +305 -0
  1320. package/backend/node_modules/to-regex-range/index.js +288 -0
  1321. package/backend/node_modules/to-regex-range/package.json +88 -0
  1322. package/backend/node_modules/toidentifier/HISTORY.md +9 -0
  1323. package/backend/node_modules/toidentifier/LICENSE +21 -0
  1324. package/backend/node_modules/toidentifier/README.md +61 -0
  1325. package/backend/node_modules/toidentifier/index.js +32 -0
  1326. package/backend/node_modules/toidentifier/package.json +38 -0
  1327. package/backend/node_modules/token/index.js +60 -0
  1328. package/backend/node_modules/token/package.json +24 -0
  1329. package/backend/node_modules/token/readme.md +70 -0
  1330. package/backend/node_modules/token/test/token.test.js +77 -0
  1331. package/backend/node_modules/touch/LICENSE +15 -0
  1332. package/backend/node_modules/touch/README.md +52 -0
  1333. package/backend/node_modules/touch/bin/nodetouch.js +112 -0
  1334. package/backend/node_modules/touch/index.js +224 -0
  1335. package/backend/node_modules/touch/package.json +25 -0
  1336. package/backend/node_modules/type-is/HISTORY.md +292 -0
  1337. package/backend/node_modules/type-is/LICENSE +23 -0
  1338. package/backend/node_modules/type-is/README.md +198 -0
  1339. package/backend/node_modules/type-is/index.js +240 -0
  1340. package/backend/node_modules/type-is/node_modules/content-type/LICENSE +22 -0
  1341. package/backend/node_modules/type-is/node_modules/content-type/README.md +69 -0
  1342. package/backend/node_modules/type-is/node_modules/content-type/dist/index.d.ts +26 -0
  1343. package/backend/node_modules/type-is/node_modules/content-type/dist/index.js +170 -0
  1344. package/backend/node_modules/type-is/node_modules/content-type/dist/index.js.map +1 -0
  1345. package/backend/node_modules/type-is/node_modules/content-type/package.json +52 -0
  1346. package/backend/node_modules/type-is/package.json +51 -0
  1347. package/backend/node_modules/undefsafe/.github/workflows/release.yml +25 -0
  1348. package/backend/node_modules/undefsafe/.jscsrc +13 -0
  1349. package/backend/node_modules/undefsafe/.jshintrc +16 -0
  1350. package/backend/node_modules/undefsafe/.travis.yml +18 -0
  1351. package/backend/node_modules/undefsafe/LICENSE +22 -0
  1352. package/backend/node_modules/undefsafe/README.md +63 -0
  1353. package/backend/node_modules/undefsafe/example.js +14 -0
  1354. package/backend/node_modules/undefsafe/lib/undefsafe.js +125 -0
  1355. package/backend/node_modules/undefsafe/package.json +34 -0
  1356. package/backend/node_modules/undici-types/LICENSE +21 -0
  1357. package/backend/node_modules/undici-types/README.md +6 -0
  1358. package/backend/node_modules/undici-types/agent.d.ts +32 -0
  1359. package/backend/node_modules/undici-types/api.d.ts +43 -0
  1360. package/backend/node_modules/undici-types/balanced-pool.d.ts +30 -0
  1361. package/backend/node_modules/undici-types/cache-interceptor.d.ts +179 -0
  1362. package/backend/node_modules/undici-types/cache.d.ts +36 -0
  1363. package/backend/node_modules/undici-types/client-stats.d.ts +15 -0
  1364. package/backend/node_modules/undici-types/client.d.ts +123 -0
  1365. package/backend/node_modules/undici-types/connector.d.ts +36 -0
  1366. package/backend/node_modules/undici-types/content-type.d.ts +21 -0
  1367. package/backend/node_modules/undici-types/cookies.d.ts +30 -0
  1368. package/backend/node_modules/undici-types/diagnostics-channel.d.ts +74 -0
  1369. package/backend/node_modules/undici-types/dispatcher.d.ts +279 -0
  1370. package/backend/node_modules/undici-types/env-http-proxy-agent.d.ts +22 -0
  1371. package/backend/node_modules/undici-types/errors.d.ts +177 -0
  1372. package/backend/node_modules/undici-types/eventsource.d.ts +66 -0
  1373. package/backend/node_modules/undici-types/fetch.d.ts +211 -0
  1374. package/backend/node_modules/undici-types/formdata.d.ts +108 -0
  1375. package/backend/node_modules/undici-types/global-dispatcher.d.ts +9 -0
  1376. package/backend/node_modules/undici-types/global-origin.d.ts +7 -0
  1377. package/backend/node_modules/undici-types/h2c-client.d.ts +73 -0
  1378. package/backend/node_modules/undici-types/handlers.d.ts +15 -0
  1379. package/backend/node_modules/undici-types/header.d.ts +160 -0
  1380. package/backend/node_modules/undici-types/index.d.ts +91 -0
  1381. package/backend/node_modules/undici-types/interceptors.d.ts +80 -0
  1382. package/backend/node_modules/undici-types/mock-agent.d.ts +68 -0
  1383. package/backend/node_modules/undici-types/mock-call-history.d.ts +111 -0
  1384. package/backend/node_modules/undici-types/mock-client.d.ts +27 -0
  1385. package/backend/node_modules/undici-types/mock-errors.d.ts +12 -0
  1386. package/backend/node_modules/undici-types/mock-interceptor.d.ts +94 -0
  1387. package/backend/node_modules/undici-types/mock-pool.d.ts +27 -0
  1388. package/backend/node_modules/undici-types/package.json +55 -0
  1389. package/backend/node_modules/undici-types/patch.d.ts +29 -0
  1390. package/backend/node_modules/undici-types/pool-stats.d.ts +19 -0
  1391. package/backend/node_modules/undici-types/pool.d.ts +41 -0
  1392. package/backend/node_modules/undici-types/proxy-agent.d.ts +29 -0
  1393. package/backend/node_modules/undici-types/readable.d.ts +68 -0
  1394. package/backend/node_modules/undici-types/retry-agent.d.ts +8 -0
  1395. package/backend/node_modules/undici-types/retry-handler.d.ts +125 -0
  1396. package/backend/node_modules/undici-types/round-robin-pool.d.ts +41 -0
  1397. package/backend/node_modules/undici-types/snapshot-agent.d.ts +109 -0
  1398. package/backend/node_modules/undici-types/socks5-proxy-agent.d.ts +25 -0
  1399. package/backend/node_modules/undici-types/util.d.ts +18 -0
  1400. package/backend/node_modules/undici-types/utility.d.ts +7 -0
  1401. package/backend/node_modules/undici-types/webidl.d.ts +347 -0
  1402. package/backend/node_modules/undici-types/websocket.d.ts +188 -0
  1403. package/backend/node_modules/unpipe/HISTORY.md +4 -0
  1404. package/backend/node_modules/unpipe/LICENSE +22 -0
  1405. package/backend/node_modules/unpipe/README.md +43 -0
  1406. package/backend/node_modules/unpipe/index.js +69 -0
  1407. package/backend/node_modules/unpipe/package.json +27 -0
  1408. package/backend/node_modules/vary/HISTORY.md +39 -0
  1409. package/backend/node_modules/vary/LICENSE +22 -0
  1410. package/backend/node_modules/vary/README.md +101 -0
  1411. package/backend/node_modules/vary/index.js +149 -0
  1412. package/backend/node_modules/vary/package.json +43 -0
  1413. package/backend/node_modules/web/README.md +191 -0
  1414. package/backend/node_modules/web/package.json +17 -0
  1415. package/backend/node_modules/web/test-web.js +16 -0
  1416. package/backend/node_modules/web/web.js +200 -0
  1417. package/backend/node_modules/wrappy/LICENSE +15 -0
  1418. package/backend/node_modules/wrappy/README.md +36 -0
  1419. package/backend/node_modules/wrappy/package.json +29 -0
  1420. package/backend/node_modules/wrappy/wrappy.js +33 -0
  1421. package/backend/package-lock.json +1506 -0
  1422. package/backend/package.json +25 -0
  1423. package/backend/server.js +561 -0
  1424. package/epms.sql +162 -0
  1425. package/frontend/README.md +16 -0
  1426. package/frontend/eslint.config.js +21 -0
  1427. package/frontend/index.html +13 -0
  1428. package/frontend/package-lock.json +3042 -0
  1429. package/frontend/package.json +31 -0
  1430. package/frontend/public/favicon.svg +1 -0
  1431. package/frontend/public/icons.svg +24 -0
  1432. package/frontend/src/App.css +184 -0
  1433. package/frontend/src/App.jsx +58 -0
  1434. package/frontend/src/assets/hero.png +0 -0
  1435. package/frontend/src/assets/react.svg +1 -0
  1436. package/frontend/src/assets/vite.svg +1 -0
  1437. package/frontend/src/components/Sidebar.jsx +77 -0
  1438. package/frontend/src/index.css +1 -0
  1439. package/frontend/src/main.jsx +12 -0
  1440. package/frontend/src/pages/Dashboard.jsx +26 -0
  1441. package/frontend/src/pages/Department.jsx +282 -0
  1442. package/frontend/src/pages/Employee.jsx +317 -0
  1443. package/frontend/src/pages/Login.jsx +114 -0
  1444. package/frontend/src/pages/Payroll.jsx +113 -0
  1445. package/frontend/src/pages/Register.jsx +108 -0
  1446. package/frontend/src/pages/Salary.jsx +166 -0
  1447. package/frontend/vite.config.js +8 -0
  1448. package/package.json +13 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ast.js","sourceRoot":"","sources":["../../src/ast.ts"],"names":[],"mappings":"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","sourcesContent":["// parse a single path portion\n\nimport { parseClass } from './brace-expressions.js'\nimport type { MinimatchOptions, MMRegExp } from './index.js'\nimport { unescape } from './unescape.js'\n\n// classes [] are handled by the parseClass method\n// for positive extglobs, we sub-parse the contents, and combine,\n// with the appropriate regexp close.\n// for negative extglobs, we sub-parse the contents, but then\n// have to include the rest of the pattern, then the parent, etc.,\n// as the thing that cannot be because RegExp negative lookaheads\n// are different from globs.\n//\n// So for example:\n// a@(i|w!(x|y)z|j)b => ^a(i|w((!?(x|y)zb).*)z|j)b$\n// 1 2 3 4 5 6 1 2 3 46 5 6\n//\n// Assembling the extglob requires not just the negated patterns themselves,\n// but also anything following the negative patterns up to the boundary\n// of the current pattern, plus anything following in the parent pattern.\n//\n//\n// So, first, we parse the string into an AST of extglobs, without turning\n// anything into regexps yet.\n//\n// ['a', {@ [['i'], ['w', {!['x', 'y']}, 'z'], ['j']]}, 'b']\n//\n// Then, for all the negative extglobs, we append whatever comes after in\n// each parent as their tail\n//\n// ['a', {@ [['i'], ['w', {!['x', 'y'], 'z', 'b'}, 'z'], ['j']]}, 'b']\n//\n// Lastly, we turn each of these pieces into a regexp, and join\n//\n// v----- .* because there's more following,\n// v v otherwise, .+ because it must be\n// v v *something* there.\n// ['^a', {@ ['i', 'w(?:(!?(?:x|y).*zb$).*)z', 'j' ]}, 'b$']\n// copy what follows into here--^^^^^\n// ['^a', '(?:i|w(?:(?!(?:x|y).*zb$).*)z|j)', 'b$']\n// ['^a(?:i|w(?:(?!(?:x|y).*zb$).*)z|j)b$']\n\nexport type ExtglobType = '!' | '?' | '+' | '*' | '@'\nconst types = new Set<ExtglobType>(['!', '?', '+', '*', '@'])\nconst isExtglobType = (c: string | null): c is ExtglobType =>\n types.has(c as ExtglobType)\nconst isExtglobAST = (c: AST): c is AST & { type: ExtglobType } =>\n isExtglobType(c.type)\n\n// Map of which extglob types can adopt the children of a nested extglob\n//\n// anything but ! can adopt a matching type:\n// +(a|+(b|c)|d) => +(a|b|c|d)\n// *(a|*(b|c)|d) => *(a|b|c|d)\n// @(a|@(b|c)|d) => @(a|b|c|d)\n// ?(a|?(b|c)|d) => ?(a|b|c|d)\n//\n// * can adopt anything, because 0 or repetition is allowed\n// *(a|?(b|c)|d) => *(a|b|c|d)\n// *(a|+(b|c)|d) => *(a|b|c|d)\n// *(a|@(b|c)|d) => *(a|b|c|d)\n//\n// + can adopt @, because 1 or repetition is allowed\n// +(a|@(b|c)|d) => +(a|b|c|d)\n//\n// + and @ CANNOT adopt *, because 0 would be allowed\n// +(a|*(b|c)|d) => would match \"\", on *(b|c)\n// @(a|*(b|c)|d) => would match \"\", on *(b|c)\n//\n// + and @ CANNOT adopt ?, because 0 would be allowed\n// +(a|?(b|c)|d) => would match \"\", on ?(b|c)\n// @(a|?(b|c)|d) => would match \"\", on ?(b|c)\n//\n// ? can adopt @, because 0 or 1 is allowed\n// ?(a|@(b|c)|d) => ?(a|b|c|d)\n//\n// ? and @ CANNOT adopt * or +, because >1 would be allowed\n// ?(a|*(b|c)|d) => would match bbb on *(b|c)\n// @(a|*(b|c)|d) => would match bbb on *(b|c)\n// ?(a|+(b|c)|d) => would match bbb on +(b|c)\n// @(a|+(b|c)|d) => would match bbb on +(b|c)\n//\n// ! CANNOT adopt ! (nothing else can either)\n// !(a|!(b|c)|d) => !(a|b|c|d) would fail to match on b (not not b|c)\n//\n// ! can adopt @\n// !(a|@(b|c)|d) => !(a|b|c|d)\n//\n// ! CANNOT adopt *\n// !(a|*(b|c)|d) => !(a|b|c|d) would match on bbb, not allowed\n//\n// ! CANNOT adopt +\n// !(a|+(b|c)|d) => !(a|b|c|d) would match on bbb, not allowed\n//\n// ! CANNOT adopt ?\n// x!(a|?(b|c)|d) => x!(a|b|c|d) would fail to match \"x\"\nconst adoptionMap = new Map<ExtglobType, ExtglobType[]>([\n ['!', ['@']],\n ['?', ['?', '@']],\n ['@', ['@']],\n ['*', ['*', '+', '?', '@']],\n ['+', ['+', '@']],\n])\n\n// nested extglobs that can be adopted in, but with the addition of\n// a blank '' element.\nconst adoptionWithSpaceMap = new Map<ExtglobType, ExtglobType[]>([\n ['!', ['?']],\n ['@', ['?']],\n ['+', ['?', '*']],\n])\n\n// union of the previous two maps\nconst adoptionAnyMap = new Map<ExtglobType, ExtglobType[]>([\n ['!', ['?', '@']],\n ['?', ['?', '@']],\n ['@', ['?', '@']],\n ['*', ['*', '+', '?', '@']],\n ['+', ['+', '@', '?', '*']],\n])\n\n// Extglobs that can take over their parent if they are the only child\n// the key is parent, value maps child to resulting extglob parent type\n// '@' is omitted because it's a special case. An `@` extglob with a single\n// member can always be usurped by that subpattern.\nconst usurpMap = new Map<\n ExtglobType,\n Map<ExtglobType | null, ExtglobType | null>\n>([\n ['!', new Map([['!', '@']])],\n [\n '?',\n new Map([\n ['*', '*'],\n ['+', '*'],\n ]),\n ],\n [\n '@',\n new Map([\n ['!', '!'],\n ['?', '?'],\n ['@', '@'],\n ['*', '*'],\n ['+', '+'],\n ]),\n ],\n [\n '+',\n new Map([\n ['?', '*'],\n ['*', '*'],\n ]),\n ],\n])\n\n// Patterns that get prepended to bind to the start of either the\n// entire string, or just a single path portion, to prevent dots\n// and/or traversal patterns, when needed.\n// Exts don't need the ^ or / bit, because the root binds that already.\nconst startNoTraversal = '(?!(?:^|/)\\\\.\\\\.?(?:$|/))'\nconst startNoDot = '(?!\\\\.)'\n\n// characters that indicate a start of pattern needs the \"no dots\" bit,\n// because a dot *might* be matched. ( is not in the list, because in\n// the case of a child extglob, it will handle the prevention itself.\nconst addPatternStart = new Set(['[', '.'])\n// cases where traversal is A-OK, no dot prevention needed\nconst justDots = new Set(['..', '.'])\nconst reSpecials = new Set('().*{}+?[]^$\\\\!')\nconst regExpEscape = (s: string) =>\n s.replace(/[-[\\]{}()*+?.,\\\\^$|#\\s]/g, '\\\\$&')\n\n// any single thing other than /\nconst qmark = '[^/]'\n\n// * => any number of characters\nconst star = qmark + '*?'\n// use + when we need to ensure that *something* matches, because the * is\n// the only thing in the path portion.\nconst starNoEmpty = qmark + '+?'\n\n// remove the \\ chars that we added if we end up doing a nonmagic compare\n// const deslash = (s: string) => s.replace(/\\\\(.)/g, '$1')\n\nlet ID = 0\nexport class AST {\n type: ExtglobType | null\n readonly #root: AST\n\n #hasMagic?: boolean\n #uflag: boolean = false\n #parts: (string | AST)[] = []\n #parent?: AST\n #parentIndex: number\n #negs: AST[]\n #filledNegs: boolean = false\n #options: MinimatchOptions\n #toString?: string\n // set to true if it's an extglob with no children\n // (which really means one child of '')\n #emptyExt: boolean = false\n id = ++ID\n\n get depth(): number {\n return (this.#parent?.depth ?? -1) + 1\n }\n\n [Symbol.for('nodejs.util.inspect.custom')]() {\n return {\n '@@type': 'AST',\n id: this.id,\n type: this.type,\n root: this.#root.id,\n parent: this.#parent?.id,\n depth: this.depth,\n partsLength: this.#parts.length,\n parts: this.#parts,\n }\n }\n\n constructor(\n type: ExtglobType | null,\n parent?: AST,\n options: MinimatchOptions = {},\n ) {\n this.type = type\n // extglobs are inherently magical\n if (type) this.#hasMagic = true\n this.#parent = parent\n this.#root = this.#parent ? this.#parent.#root : this\n this.#options = this.#root === this ? options : this.#root.#options\n this.#negs = this.#root === this ? [] : this.#root.#negs\n if (type === '!' && !this.#root.#filledNegs) this.#negs.push(this)\n this.#parentIndex = this.#parent ? this.#parent.#parts.length : 0\n }\n\n get hasMagic(): boolean | undefined {\n /* c8 ignore start */\n if (this.#hasMagic !== undefined) return this.#hasMagic\n /* c8 ignore stop */\n for (const p of this.#parts) {\n if (typeof p === 'string') continue\n if (p.type || p.hasMagic) return (this.#hasMagic = true)\n }\n // note: will be undefined until we generate the regexp src and find out\n return this.#hasMagic\n }\n\n // reconstructs the pattern\n toString(): string {\n return (\n this.#toString !== undefined ? this.#toString\n : !this.type ?\n (this.#toString = this.#parts.map(p => String(p)).join(''))\n : (this.#toString =\n this.type +\n '(' +\n this.#parts.map(p => String(p)).join('|') +\n ')')\n )\n }\n\n #fillNegs() {\n /* c8 ignore start */\n if (this !== this.#root) throw new Error('should only call on root')\n if (this.#filledNegs) return this\n /* c8 ignore stop */\n\n // call toString() once to fill this out\n this.toString()\n this.#filledNegs = true\n let n: AST | undefined\n while ((n = this.#negs.pop())) {\n if (n.type !== '!') continue\n // walk up the tree, appending everthing that comes AFTER parentIndex\n let p: AST | undefined = n\n let pp = p.#parent\n while (pp) {\n for (\n let i = p.#parentIndex + 1;\n !pp.type && i < pp.#parts.length;\n i++\n ) {\n for (const part of n.#parts) {\n /* c8 ignore start */\n if (typeof part === 'string') {\n throw new Error('string part in extglob AST??')\n }\n /* c8 ignore stop */\n part.copyIn(pp.#parts[i])\n }\n }\n p = pp\n pp = p.#parent\n }\n }\n return this\n }\n\n push(...parts: (string | AST)[]) {\n for (const p of parts) {\n if (p === '') continue\n /* c8 ignore start */\n if (\n typeof p !== 'string' &&\n !(p instanceof AST && p.#parent === this)\n ) {\n throw new Error('invalid part: ' + p)\n }\n /* c8 ignore stop */\n this.#parts.push(p)\n }\n }\n\n toJSON() {\n const ret: unknown[] =\n this.type === null ?\n this.#parts\n .slice()\n .map(p => (typeof p === 'string' ? p : p.toJSON()))\n : [this.type, ...this.#parts.map(p => (p as AST).toJSON())]\n if (this.isStart() && !this.type) ret.unshift([])\n if (\n this.isEnd() &&\n (this === this.#root ||\n (this.#root.#filledNegs && this.#parent?.type === '!'))\n ) {\n ret.push({})\n }\n return ret\n }\n\n isStart(): boolean {\n if (this.#root === this) return true\n // if (this.type) return !!this.#parent?.isStart()\n if (!this.#parent?.isStart()) return false\n if (this.#parentIndex === 0) return true\n // if everything AHEAD of this is a negation, then it's still the \"start\"\n const p = this.#parent\n for (let i = 0; i < this.#parentIndex; i++) {\n const pp = p.#parts[i]\n if (!(pp instanceof AST && pp.type === '!')) {\n return false\n }\n }\n return true\n }\n\n isEnd(): boolean {\n if (this.#root === this) return true\n if (this.#parent?.type === '!') return true\n if (!this.#parent?.isEnd()) return false\n if (!this.type) return this.#parent?.isEnd()\n // if not root, it'll always have a parent\n /* c8 ignore start */\n const pl = this.#parent ? this.#parent.#parts.length : 0\n /* c8 ignore stop */\n return this.#parentIndex === pl - 1\n }\n\n copyIn(part: AST | string) {\n if (typeof part === 'string') this.push(part)\n else this.push(part.clone(this))\n }\n\n clone(parent: AST) {\n const c = new AST(this.type, parent)\n for (const p of this.#parts) {\n c.copyIn(p)\n }\n return c\n }\n\n static #parseAST(\n str: string,\n ast: AST,\n pos: number,\n opt: MinimatchOptions,\n extDepth: number,\n ): number {\n const maxDepth = opt.maxExtglobRecursion ?? 2\n let escaping = false\n let inBrace = false\n let braceStart = -1\n let braceNeg = false\n if (ast.type === null) {\n // outside of a extglob, append until we find a start\n let i = pos\n let acc = ''\n while (i < str.length) {\n const c = str.charAt(i++)\n // still accumulate escapes at this point, but we do ignore\n // starts that are escaped\n if (escaping || c === '\\\\') {\n escaping = !escaping\n acc += c\n continue\n }\n\n if (inBrace) {\n if (i === braceStart + 1) {\n if (c === '^' || c === '!') {\n braceNeg = true\n }\n } else if (c === ']' && !(i === braceStart + 2 && braceNeg)) {\n inBrace = false\n }\n acc += c\n continue\n } else if (c === '[') {\n inBrace = true\n braceStart = i\n braceNeg = false\n acc += c\n continue\n }\n\n // we don't have to check for adoption here, because that's\n // done at the other recursion point.\n const doRecurse =\n !opt.noext &&\n isExtglobType(c) &&\n str.charAt(i) === '(' &&\n extDepth <= maxDepth\n if (doRecurse) {\n ast.push(acc)\n acc = ''\n const ext = new AST(c, ast)\n i = AST.#parseAST(str, ext, i, opt, extDepth + 1)\n ast.push(ext)\n continue\n }\n acc += c\n }\n ast.push(acc)\n return i\n }\n\n // some kind of extglob, pos is at the (\n // find the next | or )\n let i = pos + 1\n let part = new AST(null, ast)\n const parts: AST[] = []\n let acc = ''\n while (i < str.length) {\n const c = str.charAt(i++)\n // still accumulate escapes at this point, but we do ignore\n // starts that are escaped\n if (escaping || c === '\\\\') {\n escaping = !escaping\n acc += c\n continue\n }\n\n if (inBrace) {\n if (i === braceStart + 1) {\n if (c === '^' || c === '!') {\n braceNeg = true\n }\n } else if (c === ']' && !(i === braceStart + 2 && braceNeg)) {\n inBrace = false\n }\n acc += c\n continue\n } else if (c === '[') {\n inBrace = true\n braceStart = i\n braceNeg = false\n acc += c\n continue\n }\n\n const doRecurse =\n !opt.noext &&\n isExtglobType(c) &&\n str.charAt(i) === '(' &&\n /* c8 ignore start - the maxDepth is sufficient here */\n (extDepth <= maxDepth || (ast && ast.#canAdoptType(c)))\n /* c8 ignore stop */\n if (doRecurse) {\n const depthAdd = ast && ast.#canAdoptType(c) ? 0 : 1\n part.push(acc)\n acc = ''\n const ext = new AST(c, part)\n part.push(ext)\n i = AST.#parseAST(str, ext, i, opt, extDepth + depthAdd)\n continue\n }\n if (c === '|') {\n part.push(acc)\n acc = ''\n parts.push(part)\n part = new AST(null, ast)\n continue\n }\n if (c === ')') {\n if (acc === '' && ast.#parts.length === 0) {\n ast.#emptyExt = true\n }\n part.push(acc)\n acc = ''\n ast.push(...parts, part)\n return i\n }\n acc += c\n }\n\n // unfinished extglob\n // if we got here, it was a malformed extglob! not an extglob, but\n // maybe something else in there.\n ast.type = null\n ast.#hasMagic = undefined\n ast.#parts = [str.substring(pos - 1)]\n return i\n }\n\n #canAdoptWithSpace(child?: AST | string): child is AST & {\n type: null\n parts: [AST & { type: ExtglobType }]\n } {\n return this.#canAdopt(child, adoptionWithSpaceMap)\n }\n\n #canAdopt(\n child?: AST | string,\n map: Map<ExtglobType, ExtglobType[]> = adoptionMap,\n ): child is AST & {\n type: null\n parts: [AST & { type: ExtglobType }]\n } {\n if (\n !child ||\n typeof child !== 'object' ||\n child.type !== null ||\n child.#parts.length !== 1 ||\n this.type === null\n ) {\n return false\n }\n const gc = child.#parts[0]\n if (!gc || typeof gc !== 'object' || gc.type === null) {\n return false\n }\n return (this as AST & { type: ExtglobType }).#canAdoptType(\n gc.type,\n map,\n )\n }\n #canAdoptType(\n c: string,\n map: Map<ExtglobType, ExtglobType[]> = adoptionAnyMap,\n ): c is ExtglobType {\n return !!map.get(this.type as ExtglobType)?.includes(c as ExtglobType)\n }\n\n #adoptWithSpace(\n this: AST & { type: ExtglobType },\n child: AST & {\n type: null\n },\n index: number,\n ) {\n const gc = child.#parts[0] as AST & { type: ExtglobType }\n const blank = new AST(null, gc, this.options)\n blank.#parts.push('')\n gc.push(blank)\n this.#adopt(child, index)\n }\n\n #adopt(\n child: AST & {\n type: null\n },\n index: number,\n ) {\n const gc = child.#parts[0] as AST & { type: ExtglobType }\n this.#parts.splice(index, 1, ...gc.#parts)\n for (const p of gc.#parts) {\n if (typeof p === 'object') p.#parent = this\n }\n this.#toString = undefined\n }\n\n #canUsurpType(c: string): boolean {\n const m = usurpMap.get(this.type as ExtglobType)\n return !!m?.has(c as ExtglobType)\n }\n\n #canUsurp(child?: AST | string): child is AST & {\n type: null\n parts: [AST & { type: ExtglobType }]\n } {\n if (\n !child ||\n typeof child !== 'object' ||\n child.type !== null ||\n child.#parts.length !== 1 ||\n this.type === null ||\n this.#parts.length !== 1\n ) {\n return false\n }\n const gc = child.#parts[0]\n if (!gc || typeof gc !== 'object' || gc.type === null) {\n return false\n }\n return (this as AST & { type: ExtglobType }).#canUsurpType(gc.type)\n }\n\n #usurp(this: AST & { type: ExtglobType }, child: AST & { type: null }) {\n const m = usurpMap.get(this.type as ExtglobType)\n const gc = child.#parts[0] as AST & { type: ExtglobType }\n const nt = m?.get(gc.type)\n /* c8 ignore start - impossible */\n if (!nt) return false\n /* c8 ignore stop */\n this.#parts = gc.#parts\n for (const p of this.#parts) {\n if (typeof p === 'object') {\n p.#parent = this\n }\n }\n this.type = nt\n this.#toString = undefined\n this.#emptyExt = false\n }\n\n static fromGlob(pattern: string, options: MinimatchOptions = {}) {\n const ast = new AST(null, undefined, options)\n AST.#parseAST(pattern, ast, 0, options, 0)\n return ast\n }\n\n // returns the regular expression if there's magic, or the unescaped\n // string if not.\n toMMPattern(): MMRegExp | string {\n // should only be called on root\n /* c8 ignore start */\n if (this !== this.#root) return this.#root.toMMPattern()\n /* c8 ignore stop */\n const glob = this.toString()\n const [re, body, hasMagic, uflag] = this.toRegExpSource()\n // if we're in nocase mode, and not nocaseMagicOnly, then we do\n // still need a regular expression if we have to case-insensitively\n // match capital/lowercase characters.\n const anyMagic =\n hasMagic ||\n this.#hasMagic ||\n (this.#options.nocase &&\n !this.#options.nocaseMagicOnly &&\n glob.toUpperCase() !== glob.toLowerCase())\n if (!anyMagic) {\n return body\n }\n\n const flags = (this.#options.nocase ? 'i' : '') + (uflag ? 'u' : '')\n return Object.assign(new RegExp(`^${re}$`, flags), {\n _src: re,\n _glob: glob,\n })\n }\n\n get options() {\n return this.#options\n }\n\n // returns the string match, the regexp source, whether there's magic\n // in the regexp (so a regular expression is required) and whether or\n // not the uflag is needed for the regular expression (for posix classes)\n // TODO: instead of injecting the start/end at this point, just return\n // the BODY of the regexp, along with the start/end portions suitable\n // for binding the start/end in either a joined full-path makeRe context\n // (where we bind to (^|/), or a standalone matchPart context (where\n // we bind to ^, and not /). Otherwise slashes get duped!\n //\n // In part-matching mode, the start is:\n // - if not isStart: nothing\n // - if traversal possible, but not allowed: ^(?!\\.\\.?$)\n // - if dots allowed or not possible: ^\n // - if dots possible and not allowed: ^(?!\\.)\n // end is:\n // - if not isEnd(): nothing\n // - else: $\n //\n // In full-path matching mode, we put the slash at the START of the\n // pattern, so start is:\n // - if first pattern: same as part-matching mode\n // - if not isStart(): nothing\n // - if traversal possible, but not allowed: /(?!\\.\\.?(?:$|/))\n // - if dots allowed or not possible: /\n // - if dots possible and not allowed: /(?!\\.)\n // end is:\n // - if last pattern, same as part-matching mode\n // - else nothing\n //\n // Always put the (?:$|/) on negated tails, though, because that has to be\n // there to bind the end of the negated pattern portion, and it's easier to\n // just stick it in now rather than try to inject it later in the middle of\n // the pattern.\n //\n // We can just always return the same end, and leave it up to the caller\n // to know whether it's going to be used joined or in parts.\n // And, if the start is adjusted slightly, can do the same there:\n // - if not isStart: nothing\n // - if traversal possible, but not allowed: (?:/|^)(?!\\.\\.?$)\n // - if dots allowed or not possible: (?:/|^)\n // - if dots possible and not allowed: (?:/|^)(?!\\.)\n //\n // But it's better to have a simpler binding without a conditional, for\n // performance, so probably better to return both start options.\n //\n // Then the caller just ignores the end if it's not the first pattern,\n // and the start always gets applied.\n //\n // But that's always going to be $ if it's the ending pattern, or nothing,\n // so the caller can just attach $ at the end of the pattern when building.\n //\n // So the todo is:\n // - better detect what kind of start is needed\n // - return both flavors of starting pattern\n // - attach $ at the end of the pattern when creating the actual RegExp\n //\n // Ah, but wait, no, that all only applies to the root when the first pattern\n // is not an extglob. If the first pattern IS an extglob, then we need all\n // that dot prevention biz to live in the extglob portions, because eg\n // +(*|.x*) can match .xy but not .yx.\n //\n // So, return the two flavors if it's #root and the first child is not an\n // AST, otherwise leave it to the child AST to handle it, and there,\n // use the (?:^|/) style of start binding.\n //\n // Even simplified further:\n // - Since the start for a join is eg /(?!\\.) and the start for a part\n // is ^(?!\\.), we can just prepend (?!\\.) to the pattern (either root\n // or start or whatever) and prepend ^ or / at the Regexp construction.\n toRegExpSource(\n allowDot?: boolean,\n ): [re: string, body: string, hasMagic: boolean, uflag: boolean] {\n const dot = allowDot ?? !!this.#options.dot\n if (this.#root === this) {\n this.#flatten()\n this.#fillNegs()\n }\n if (!isExtglobAST(this)) {\n const noEmpty =\n this.isStart() &&\n this.isEnd() &&\n !this.#parts.some(s => typeof s !== 'string')\n const src = this.#parts\n .map(p => {\n const [re, _, hasMagic, uflag] =\n typeof p === 'string' ?\n AST.#parseGlob(p, this.#hasMagic, noEmpty)\n : p.toRegExpSource(allowDot)\n this.#hasMagic = this.#hasMagic || hasMagic\n this.#uflag = this.#uflag || uflag\n return re\n })\n .join('')\n\n let start = ''\n if (this.isStart()) {\n if (typeof this.#parts[0] === 'string') {\n // this is the string that will match the start of the pattern,\n // so we need to protect against dots and such.\n\n // '.' and '..' cannot match unless the pattern is that exactly,\n // even if it starts with . or dot:true is set.\n const dotTravAllowed =\n this.#parts.length === 1 && justDots.has(this.#parts[0])\n if (!dotTravAllowed) {\n const aps = addPatternStart\n // check if we have a possibility of matching . or ..,\n // and prevent that.\n const needNoTrav =\n // dots are allowed, and the pattern starts with [ or .\n (dot && aps.has(src.charAt(0))) ||\n // the pattern starts with \\., and then [ or .\n (src.startsWith('\\\\.') && aps.has(src.charAt(2))) ||\n // the pattern starts with \\.\\., and then [ or .\n (src.startsWith('\\\\.\\\\.') && aps.has(src.charAt(4)))\n // no need to prevent dots if it can't match a dot, or if a\n // sub-pattern will be preventing it anyway.\n const needNoDot = !dot && !allowDot && aps.has(src.charAt(0))\n\n start =\n needNoTrav ? startNoTraversal\n : needNoDot ? startNoDot\n : ''\n }\n }\n }\n\n // append the \"end of path portion\" pattern to negation tails\n let end = ''\n if (\n this.isEnd() &&\n this.#root.#filledNegs &&\n this.#parent?.type === '!'\n ) {\n end = '(?:$|\\\\/)'\n }\n const final = start + src + end\n return [\n final,\n unescape(src),\n (this.#hasMagic = !!this.#hasMagic),\n this.#uflag,\n ]\n }\n\n // We need to calculate the body *twice* if it's a repeat pattern\n // at the start, once in nodot mode, then again in dot mode, so a\n // pattern like *(?) can match 'x.y'\n\n const repeated = this.type === '*' || this.type === '+'\n // some kind of extglob\n const start = this.type === '!' ? '(?:(?!(?:' : '(?:'\n let body = (this as AST & { type: ExtglobType }).#partsToRegExp(dot)\n\n if (this.isStart() && this.isEnd() && !body && this.type !== '!') {\n // invalid extglob, has to at least be *something* present, if it's\n // the entire path portion.\n const s = this.toString()\n const me = this as AST\n me.#parts = [s]\n me.type = null\n me.#hasMagic = undefined\n return [s, unescape(this.toString()), false, false]\n }\n\n let bodyDotAllowed =\n !repeated || allowDot || dot || !startNoDot ?\n ''\n : this.#partsToRegExp(true)\n if (bodyDotAllowed === body) {\n bodyDotAllowed = ''\n }\n if (bodyDotAllowed) {\n body = `(?:${body})(?:${bodyDotAllowed})*?`\n }\n\n // an empty !() is exactly equivalent to a starNoEmpty\n let final = ''\n if (this.type === '!' && this.#emptyExt) {\n final = (this.isStart() && !dot ? startNoDot : '') + starNoEmpty\n } else {\n const close =\n this.type === '!' ?\n // !() must match something,but !(x) can match ''\n '))' +\n (this.isStart() && !dot && !allowDot ? startNoDot : '') +\n star +\n ')'\n : this.type === '@' ? ')'\n : this.type === '?' ? ')?'\n : this.type === '+' && bodyDotAllowed ? ')'\n : this.type === '*' && bodyDotAllowed ? `)?`\n : `)${this.type}`\n final = start + body + close\n }\n return [\n final,\n unescape(body),\n (this.#hasMagic = !!this.#hasMagic),\n this.#uflag,\n ]\n }\n\n #flatten() {\n if (!isExtglobAST(this)) {\n for (const p of this.#parts) {\n if (typeof p === 'object') {\n p.#flatten()\n }\n }\n } else {\n // do up to 10 passes to flatten as much as possible\n let iterations = 0\n let done = false\n do {\n done = true\n for (let i = 0; i < this.#parts.length; i++) {\n const c = this.#parts[i]\n if (typeof c === 'object') {\n c.#flatten()\n if (this.#canAdopt(c)) {\n done = false\n this.#adopt(c, i)\n } else if (this.#canAdoptWithSpace(c)) {\n done = false\n ;(this as AST & { type: ExtglobType }).#adoptWithSpace(c, i)\n } else if (this.#canUsurp(c)) {\n done = false\n ;(this as AST & { type: ExtglobType }).#usurp(c)\n }\n }\n }\n } while (!done && ++iterations < 10)\n }\n this.#toString = undefined\n }\n\n #partsToRegExp(this: AST & { type: ExtglobType }, dot: boolean) {\n return this.#parts\n .map(p => {\n // extglob ASTs should only contain parent ASTs\n /* c8 ignore start */\n if (typeof p === 'string') {\n throw new Error('string type in extglob ast??')\n }\n /* c8 ignore stop */\n // can ignore hasMagic, because extglobs are already always magic\n const [re, _, _hasMagic, uflag] = p.toRegExpSource(dot)\n this.#uflag = this.#uflag || uflag\n return re\n })\n .filter(p => !(this.isStart() && this.isEnd()) || !!p)\n .join('|')\n }\n\n static #parseGlob(\n glob: string,\n hasMagic: boolean | undefined,\n noEmpty: boolean = false,\n ): [re: string, body: string, hasMagic: boolean, uflag: boolean] {\n let escaping = false\n let re = ''\n let uflag = false\n // multiple stars that aren't globstars coalesce into one *\n let inStar = false\n for (let i = 0; i < glob.length; i++) {\n const c = glob.charAt(i)\n if (escaping) {\n escaping = false\n re += (reSpecials.has(c) ? '\\\\' : '') + c\n continue\n }\n if (c === '*') {\n if (inStar) continue\n inStar = true\n re += noEmpty && /^[*]+$/.test(glob) ? starNoEmpty : star\n hasMagic = true\n continue\n } else {\n inStar = false\n }\n if (c === '\\\\') {\n if (i === glob.length - 1) {\n re += '\\\\\\\\'\n } else {\n escaping = true\n }\n continue\n }\n if (c === '[') {\n const [src, needUflag, consumed, magic] = parseClass(glob, i)\n if (consumed) {\n re += src\n uflag = uflag || needUflag\n i += consumed - 1\n hasMagic = hasMagic || magic\n continue\n }\n }\n if (c === '?') {\n re += qmark\n hasMagic = true\n continue\n }\n re += regExpEscape(c)\n }\n return [re, unescape(glob), !!hasMagic, uflag]\n }\n}\n"]}
@@ -0,0 +1,8 @@
1
+ export type ParseClassResult = [
2
+ src: string,
3
+ uFlag: boolean,
4
+ consumed: number,
5
+ hasMagic: boolean
6
+ ];
7
+ export declare const parseClass: (glob: string, position: number) => ParseClassResult;
8
+ //# sourceMappingURL=brace-expressions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"brace-expressions.d.ts","sourceRoot":"","sources":["../../src/brace-expressions.ts"],"names":[],"mappings":"AAgCA,MAAM,MAAM,gBAAgB,GAAG;IAC7B,GAAG,EAAE,MAAM;IACX,KAAK,EAAE,OAAO;IACd,QAAQ,EAAE,MAAM;IAChB,QAAQ,EAAE,OAAO;CAClB,CAAA;AAQD,eAAO,MAAM,UAAU,GACrB,MAAM,MAAM,EACZ,UAAU,MAAM,KACf,gBA2HF,CAAA"}
@@ -0,0 +1,146 @@
1
+ // translate the various posix character classes into unicode properties
2
+ // this works across all unicode locales
3
+ // { <posix class>: [<translation>, /u flag required, negated]
4
+ const posixClasses = {
5
+ '[:alnum:]': ['\\p{L}\\p{Nl}\\p{Nd}', true],
6
+ '[:alpha:]': ['\\p{L}\\p{Nl}', true],
7
+ '[:ascii:]': ['\\x' + '00-\\x' + '7f', false],
8
+ '[:blank:]': ['\\p{Zs}\\t', true],
9
+ '[:cntrl:]': ['\\p{Cc}', true],
10
+ '[:digit:]': ['\\p{Nd}', true],
11
+ '[:graph:]': ['\\p{Z}\\p{C}', true, true],
12
+ '[:lower:]': ['\\p{Ll}', true],
13
+ '[:print:]': ['\\p{C}', true],
14
+ '[:punct:]': ['\\p{P}', true],
15
+ '[:space:]': ['\\p{Z}\\t\\r\\n\\v\\f', true],
16
+ '[:upper:]': ['\\p{Lu}', true],
17
+ '[:word:]': ['\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}', true],
18
+ '[:xdigit:]': ['A-Fa-f0-9', false],
19
+ };
20
+ // only need to escape a few things inside of brace expressions
21
+ // escapes: [ \ ] -
22
+ const braceEscape = (s) => s.replace(/[[\]\\-]/g, '\\$&');
23
+ // escape all regexp magic characters
24
+ const regexpEscape = (s) => s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, '\\$&');
25
+ // everything has already been escaped, we just have to join
26
+ const rangesToString = (ranges) => ranges.join('');
27
+ // takes a glob string at a posix brace expression, and returns
28
+ // an equivalent regular expression source, and boolean indicating
29
+ // whether the /u flag needs to be applied, and the number of chars
30
+ // consumed to parse the character class.
31
+ // This also removes out of order ranges, and returns ($.) if the
32
+ // entire class just no good.
33
+ export const parseClass = (glob, position) => {
34
+ const pos = position;
35
+ /* c8 ignore start */
36
+ if (glob.charAt(pos) !== '[') {
37
+ throw new Error('not in a brace expression');
38
+ }
39
+ /* c8 ignore stop */
40
+ const ranges = [];
41
+ const negs = [];
42
+ let i = pos + 1;
43
+ let sawStart = false;
44
+ let uflag = false;
45
+ let escaping = false;
46
+ let negate = false;
47
+ let endPos = pos;
48
+ let rangeStart = '';
49
+ WHILE: while (i < glob.length) {
50
+ const c = glob.charAt(i);
51
+ if ((c === '!' || c === '^') && i === pos + 1) {
52
+ negate = true;
53
+ i++;
54
+ continue;
55
+ }
56
+ if (c === ']' && sawStart && !escaping) {
57
+ endPos = i + 1;
58
+ break;
59
+ }
60
+ sawStart = true;
61
+ if (c === '\\') {
62
+ if (!escaping) {
63
+ escaping = true;
64
+ i++;
65
+ continue;
66
+ }
67
+ // escaped \ char, fall through and treat like normal char
68
+ }
69
+ if (c === '[' && !escaping) {
70
+ // either a posix class, a collation equivalent, or just a [
71
+ for (const [cls, [unip, u, neg]] of Object.entries(posixClasses)) {
72
+ if (glob.startsWith(cls, i)) {
73
+ // invalid, [a-[] is fine, but not [a-[:alpha]]
74
+ if (rangeStart) {
75
+ return ['$.', false, glob.length - pos, true];
76
+ }
77
+ i += cls.length;
78
+ if (neg)
79
+ negs.push(unip);
80
+ else
81
+ ranges.push(unip);
82
+ uflag = uflag || u;
83
+ continue WHILE;
84
+ }
85
+ }
86
+ }
87
+ // now it's just a normal character, effectively
88
+ escaping = false;
89
+ if (rangeStart) {
90
+ // throw this range away if it's not valid, but others
91
+ // can still match.
92
+ if (c > rangeStart) {
93
+ ranges.push(braceEscape(rangeStart) + '-' + braceEscape(c));
94
+ }
95
+ else if (c === rangeStart) {
96
+ ranges.push(braceEscape(c));
97
+ }
98
+ rangeStart = '';
99
+ i++;
100
+ continue;
101
+ }
102
+ // now might be the start of a range.
103
+ // can be either c-d or c-] or c<more...>] or c] at this point
104
+ if (glob.startsWith('-]', i + 1)) {
105
+ ranges.push(braceEscape(c + '-'));
106
+ i += 2;
107
+ continue;
108
+ }
109
+ if (glob.startsWith('-', i + 1)) {
110
+ rangeStart = c;
111
+ i += 2;
112
+ continue;
113
+ }
114
+ // not the start of a range, just a single character
115
+ ranges.push(braceEscape(c));
116
+ i++;
117
+ }
118
+ if (endPos < i) {
119
+ // didn't see the end of the class, not a valid class,
120
+ // but might still be valid as a literal match.
121
+ return ['', false, 0, false];
122
+ }
123
+ // if we got no ranges and no negates, then we have a range that
124
+ // cannot possibly match anything, and that poisons the whole glob
125
+ if (!ranges.length && !negs.length) {
126
+ return ['$.', false, glob.length - pos, true];
127
+ }
128
+ // if we got one positive range, and it's a single character, then that's
129
+ // not actually a magic pattern, it's just that one literal character.
130
+ // we should not treat that as "magic", we should just return the literal
131
+ // character. [_] is a perfectly valid way to escape glob magic chars.
132
+ if (negs.length === 0 &&
133
+ ranges.length === 1 &&
134
+ /^\\?.$/.test(ranges[0]) &&
135
+ !negate) {
136
+ const r = ranges[0].length === 2 ? ranges[0].slice(-1) : ranges[0];
137
+ return [regexpEscape(r), false, endPos - pos, false];
138
+ }
139
+ const sranges = '[' + (negate ? '^' : '') + rangesToString(ranges) + ']';
140
+ const snegs = '[' + (negate ? '' : '^') + rangesToString(negs) + ']';
141
+ const comb = ranges.length && negs.length ? '(' + sranges + '|' + snegs + ')'
142
+ : ranges.length ? sranges
143
+ : snegs;
144
+ return [comb, uflag, endPos - pos, true];
145
+ };
146
+ //# sourceMappingURL=brace-expressions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"brace-expressions.js","sourceRoot":"","sources":["../../src/brace-expressions.ts"],"names":[],"mappings":"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","sourcesContent":["// translate the various posix character classes into unicode properties\n// this works across all unicode locales\n\n// { <posix class>: [<translation>, /u flag required, negated]\nconst posixClasses: { [k: string]: [e: string, u: boolean, n?: boolean] } =\n {\n '[:alnum:]': ['\\\\p{L}\\\\p{Nl}\\\\p{Nd}', true],\n '[:alpha:]': ['\\\\p{L}\\\\p{Nl}', true],\n '[:ascii:]': ['\\\\x' + '00-\\\\x' + '7f', false],\n '[:blank:]': ['\\\\p{Zs}\\\\t', true],\n '[:cntrl:]': ['\\\\p{Cc}', true],\n '[:digit:]': ['\\\\p{Nd}', true],\n '[:graph:]': ['\\\\p{Z}\\\\p{C}', true, true],\n '[:lower:]': ['\\\\p{Ll}', true],\n '[:print:]': ['\\\\p{C}', true],\n '[:punct:]': ['\\\\p{P}', true],\n '[:space:]': ['\\\\p{Z}\\\\t\\\\r\\\\n\\\\v\\\\f', true],\n '[:upper:]': ['\\\\p{Lu}', true],\n '[:word:]': ['\\\\p{L}\\\\p{Nl}\\\\p{Nd}\\\\p{Pc}', true],\n '[:xdigit:]': ['A-Fa-f0-9', false],\n }\n\n// only need to escape a few things inside of brace expressions\n// escapes: [ \\ ] -\nconst braceEscape = (s: string) => s.replace(/[[\\]\\\\-]/g, '\\\\$&')\n// escape all regexp magic characters\nconst regexpEscape = (s: string) =>\n s.replace(/[-[\\]{}()*+?.,\\\\^$|#\\s]/g, '\\\\$&')\n\n// everything has already been escaped, we just have to join\nconst rangesToString = (ranges: string[]): string => ranges.join('')\n\nexport type ParseClassResult = [\n src: string,\n uFlag: boolean,\n consumed: number,\n hasMagic: boolean,\n]\n\n// takes a glob string at a posix brace expression, and returns\n// an equivalent regular expression source, and boolean indicating\n// whether the /u flag needs to be applied, and the number of chars\n// consumed to parse the character class.\n// This also removes out of order ranges, and returns ($.) if the\n// entire class just no good.\nexport const parseClass = (\n glob: string,\n position: number,\n): ParseClassResult => {\n const pos = position\n /* c8 ignore start */\n if (glob.charAt(pos) !== '[') {\n throw new Error('not in a brace expression')\n }\n /* c8 ignore stop */\n const ranges: string[] = []\n const negs: string[] = []\n\n let i = pos + 1\n let sawStart = false\n let uflag = false\n let escaping = false\n let negate = false\n let endPos = pos\n let rangeStart = ''\n WHILE: while (i < glob.length) {\n const c = glob.charAt(i)\n if ((c === '!' || c === '^') && i === pos + 1) {\n negate = true\n i++\n continue\n }\n\n if (c === ']' && sawStart && !escaping) {\n endPos = i + 1\n break\n }\n\n sawStart = true\n if (c === '\\\\') {\n if (!escaping) {\n escaping = true\n i++\n continue\n }\n // escaped \\ char, fall through and treat like normal char\n }\n if (c === '[' && !escaping) {\n // either a posix class, a collation equivalent, or just a [\n for (const [cls, [unip, u, neg]] of Object.entries(posixClasses)) {\n if (glob.startsWith(cls, i)) {\n // invalid, [a-[] is fine, but not [a-[:alpha]]\n if (rangeStart) {\n return ['$.', false, glob.length - pos, true]\n }\n i += cls.length\n if (neg) negs.push(unip)\n else ranges.push(unip)\n uflag = uflag || u\n continue WHILE\n }\n }\n }\n\n // now it's just a normal character, effectively\n escaping = false\n if (rangeStart) {\n // throw this range away if it's not valid, but others\n // can still match.\n if (c > rangeStart) {\n ranges.push(braceEscape(rangeStart) + '-' + braceEscape(c))\n } else if (c === rangeStart) {\n ranges.push(braceEscape(c))\n }\n rangeStart = ''\n i++\n continue\n }\n\n // now might be the start of a range.\n // can be either c-d or c-] or c<more...>] or c] at this point\n if (glob.startsWith('-]', i + 1)) {\n ranges.push(braceEscape(c + '-'))\n i += 2\n continue\n }\n if (glob.startsWith('-', i + 1)) {\n rangeStart = c\n i += 2\n continue\n }\n\n // not the start of a range, just a single character\n ranges.push(braceEscape(c))\n i++\n }\n\n if (endPos < i) {\n // didn't see the end of the class, not a valid class,\n // but might still be valid as a literal match.\n return ['', false, 0, false]\n }\n\n // if we got no ranges and no negates, then we have a range that\n // cannot possibly match anything, and that poisons the whole glob\n if (!ranges.length && !negs.length) {\n return ['$.', false, glob.length - pos, true]\n }\n\n // if we got one positive range, and it's a single character, then that's\n // not actually a magic pattern, it's just that one literal character.\n // we should not treat that as \"magic\", we should just return the literal\n // character. [_] is a perfectly valid way to escape glob magic chars.\n if (\n negs.length === 0 &&\n ranges.length === 1 &&\n /^\\\\?.$/.test(ranges[0]) &&\n !negate\n ) {\n const r = ranges[0].length === 2 ? ranges[0].slice(-1) : ranges[0]\n return [regexpEscape(r), false, endPos - pos, false]\n }\n\n const sranges = '[' + (negate ? '^' : '') + rangesToString(ranges) + ']'\n const snegs = '[' + (negate ? '' : '^') + rangesToString(negs) + ']'\n const comb =\n ranges.length && negs.length ? '(' + sranges + '|' + snegs + ')'\n : ranges.length ? sranges\n : snegs\n\n return [comb, uflag, endPos - pos, true]\n}\n"]}
@@ -0,0 +1,15 @@
1
+ import type { MinimatchOptions } from './index.js';
2
+ /**
3
+ * Escape all magic characters in a glob pattern.
4
+ *
5
+ * If the {@link MinimatchOptions.windowsPathsNoEscape}
6
+ * option is used, then characters are escaped by wrapping in `[]`, because
7
+ * a magic character wrapped in a character class can only be satisfied by
8
+ * that exact character. In this mode, `\` is _not_ escaped, because it is
9
+ * not interpreted as a magic character, but instead as a path separator.
10
+ *
11
+ * If the {@link MinimatchOptions.magicalBraces} option is used,
12
+ * then braces (`{` and `}`) will be escaped.
13
+ */
14
+ export declare const escape: (s: string, { windowsPathsNoEscape, magicalBraces, }?: Pick<MinimatchOptions, "windowsPathsNoEscape" | "magicalBraces">) => string;
15
+ //# sourceMappingURL=escape.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"escape.d.ts","sourceRoot":"","sources":["../../src/escape.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAElD;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,MAAM,GACjB,GAAG,MAAM,EACT,2CAGG,IAAI,CAAC,gBAAgB,EAAE,sBAAsB,GAAG,eAAe,CAAM,WAazE,CAAA"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Escape all magic characters in a glob pattern.
3
+ *
4
+ * If the {@link MinimatchOptions.windowsPathsNoEscape}
5
+ * option is used, then characters are escaped by wrapping in `[]`, because
6
+ * a magic character wrapped in a character class can only be satisfied by
7
+ * that exact character. In this mode, `\` is _not_ escaped, because it is
8
+ * not interpreted as a magic character, but instead as a path separator.
9
+ *
10
+ * If the {@link MinimatchOptions.magicalBraces} option is used,
11
+ * then braces (`{` and `}`) will be escaped.
12
+ */
13
+ export const escape = (s, { windowsPathsNoEscape = false, magicalBraces = false, } = {}) => {
14
+ // don't need to escape +@! because we escape the parens
15
+ // that make those magic, and escaping ! as [!] isn't valid,
16
+ // because [!]] is a valid glob class meaning not ']'.
17
+ if (magicalBraces) {
18
+ return windowsPathsNoEscape ?
19
+ s.replace(/[?*()[\]{}]/g, '[$&]')
20
+ : s.replace(/[?*()[\]\\{}]/g, '\\$&');
21
+ }
22
+ return windowsPathsNoEscape ?
23
+ s.replace(/[?*()[\]]/g, '[$&]')
24
+ : s.replace(/[?*()[\]\\]/g, '\\$&');
25
+ };
26
+ //# sourceMappingURL=escape.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"escape.js","sourceRoot":"","sources":["../../src/escape.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,CACpB,CAAS,EACT,EACE,oBAAoB,GAAG,KAAK,EAC5B,aAAa,GAAG,KAAK,MAC+C,EAAE,EACxE,EAAE;IACF,wDAAwD;IACxD,4DAA4D;IAC5D,sDAAsD;IACtD,IAAI,aAAa,EAAE,CAAC;QAClB,OAAO,oBAAoB,CAAC,CAAC;YACzB,CAAC,CAAC,OAAO,CAAC,cAAc,EAAE,MAAM,CAAC;YACnC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAA;IACzC,CAAC;IACD,OAAO,oBAAoB,CAAC,CAAC;QACzB,CAAC,CAAC,OAAO,CAAC,YAAY,EAAE,MAAM,CAAC;QACjC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,EAAE,MAAM,CAAC,CAAA;AACvC,CAAC,CAAA","sourcesContent":["import type { MinimatchOptions } from './index.js'\n\n/**\n * Escape all magic characters in a glob pattern.\n *\n * If the {@link MinimatchOptions.windowsPathsNoEscape}\n * option is used, then characters are escaped by wrapping in `[]`, because\n * a magic character wrapped in a character class can only be satisfied by\n * that exact character. In this mode, `\\` is _not_ escaped, because it is\n * not interpreted as a magic character, but instead as a path separator.\n *\n * If the {@link MinimatchOptions.magicalBraces} option is used,\n * then braces (`{` and `}`) will be escaped.\n */\nexport const escape = (\n s: string,\n {\n windowsPathsNoEscape = false,\n magicalBraces = false,\n }: Pick<MinimatchOptions, 'windowsPathsNoEscape' | 'magicalBraces'> = {},\n) => {\n // don't need to escape +@! because we escape the parens\n // that make those magic, and escaping ! as [!] isn't valid,\n // because [!]] is a valid glob class meaning not ']'.\n if (magicalBraces) {\n return windowsPathsNoEscape ?\n s.replace(/[?*()[\\]{}]/g, '[$&]')\n : s.replace(/[?*()[\\]\\\\{}]/g, '\\\\$&')\n }\n return windowsPathsNoEscape ?\n s.replace(/[?*()[\\]]/g, '[$&]')\n : s.replace(/[?*()[\\]\\\\]/g, '\\\\$&')\n}\n"]}
@@ -0,0 +1,174 @@
1
+ import { AST } from './ast.js';
2
+ export type Platform = 'aix' | 'android' | 'darwin' | 'freebsd' | 'haiku' | 'linux' | 'openbsd' | 'sunos' | 'win32' | 'cygwin' | 'netbsd';
3
+ export interface MinimatchOptions {
4
+ /** do not expand `{x,y}` style braces */
5
+ nobrace?: boolean;
6
+ /** do not treat patterns starting with `#` as a comment */
7
+ nocomment?: boolean;
8
+ /** do not treat patterns starting with `!` as a negation */
9
+ nonegate?: boolean;
10
+ /** print LOTS of debugging output */
11
+ debug?: boolean;
12
+ /** treat `**` the same as `*` */
13
+ noglobstar?: boolean;
14
+ /** do not expand extglobs like `+(a|b)` */
15
+ noext?: boolean;
16
+ /** return the pattern if nothing matches */
17
+ nonull?: boolean;
18
+ /** treat `\\` as a path separator, not an escape character */
19
+ windowsPathsNoEscape?: boolean;
20
+ /**
21
+ * inverse of {@link MinimatchOptions.windowsPathsNoEscape}
22
+ * @deprecated
23
+ */
24
+ allowWindowsEscape?: boolean;
25
+ /**
26
+ * Compare a partial path to a pattern. As long as the parts
27
+ * of the path that are present are not contradicted by the
28
+ * pattern, it will be treated as a match. This is useful in
29
+ * applications where you're walking through a folder structure,
30
+ * and don't yet have the full path, but want to ensure that you
31
+ * do not walk down paths that can never be a match.
32
+ */
33
+ partial?: boolean;
34
+ /** allow matches that start with `.` even if the pattern does not */
35
+ dot?: boolean;
36
+ /** ignore case */
37
+ nocase?: boolean;
38
+ /** ignore case only in wildcard patterns */
39
+ nocaseMagicOnly?: boolean;
40
+ /** consider braces to be "magic" for the purpose of `hasMagic` */
41
+ magicalBraces?: boolean;
42
+ /**
43
+ * If set, then patterns without slashes will be matched
44
+ * against the basename of the path if it contains slashes.
45
+ * For example, `a?b` would match the path `/xyz/123/acb`, but
46
+ * not `/xyz/acb/123`.
47
+ */
48
+ matchBase?: boolean;
49
+ /** invert the results of negated matches */
50
+ flipNegate?: boolean;
51
+ /** do not collapse multiple `/` into a single `/` */
52
+ preserveMultipleSlashes?: boolean;
53
+ /**
54
+ * A number indicating the level of optimization that should be done
55
+ * to the pattern prior to parsing and using it for matches.
56
+ */
57
+ optimizationLevel?: number;
58
+ /** operating system platform */
59
+ platform?: Platform;
60
+ /**
61
+ * When a pattern starts with a UNC path or drive letter, and in
62
+ * `nocase:true` mode, do not convert the root portions of the
63
+ * pattern into a case-insensitive regular expression, and instead
64
+ * leave them as strings.
65
+ *
66
+ * This is the default when the platform is `win32` and
67
+ * `nocase:true` is set.
68
+ */
69
+ windowsNoMagicRoot?: boolean;
70
+ /**
71
+ * max number of `{...}` patterns to expand. Default 100_000.
72
+ */
73
+ braceExpandMax?: number;
74
+ /**
75
+ * Max number of non-adjacent `**` patterns to recursively walk down.
76
+ *
77
+ * The default of 200 is almost certainly high enough for most purposes,
78
+ * and can handle absurdly excessive patterns.
79
+ */
80
+ maxGlobstarRecursion?: number;
81
+ /**
82
+ * Max depth to traverse for nested extglobs like `*(a|b|c)`
83
+ *
84
+ * Default is 2, which is quite low, but any higher value
85
+ * swiftly results in punishing performance impacts. Note
86
+ * that this is *not* relevant when the globstar types can
87
+ * be safely coalesced into a single set.
88
+ *
89
+ * For example, `*(a|@(b|c)|d)` would be flattened into
90
+ * `*(a|b|c|d)`. Thus, many common extglobs will retain good
91
+ * performance and never hit this limit, even if they are
92
+ * excessively deep and complicated.
93
+ *
94
+ * If the limit is hit, then the extglob characters are simply
95
+ * not parsed, and the pattern effectively switches into
96
+ * `noextglob: true` mode for the contents of that nested
97
+ * sub-pattern. This will typically _not_ result in a match,
98
+ * but is considered a valid trade-off for security and
99
+ * performance.
100
+ */
101
+ maxExtglobRecursion?: number;
102
+ }
103
+ export declare const minimatch: {
104
+ (p: string, pattern: string, options?: MinimatchOptions): boolean;
105
+ sep: Sep;
106
+ GLOBSTAR: typeof GLOBSTAR;
107
+ filter: (pattern: string, options?: MinimatchOptions) => (p: string) => boolean;
108
+ defaults: (def: MinimatchOptions) => typeof minimatch;
109
+ braceExpand: (pattern: string, options?: MinimatchOptions) => string[];
110
+ makeRe: (pattern: string, options?: MinimatchOptions) => false | MMRegExp;
111
+ match: (list: string[], pattern: string, options?: MinimatchOptions) => string[];
112
+ AST: typeof AST;
113
+ Minimatch: typeof Minimatch;
114
+ escape: (s: string, { windowsPathsNoEscape, magicalBraces, }?: Pick<MinimatchOptions, "windowsPathsNoEscape" | "magicalBraces">) => string;
115
+ unescape: (s: string, { windowsPathsNoEscape, magicalBraces, }?: Pick<MinimatchOptions, "windowsPathsNoEscape" | "magicalBraces">) => string;
116
+ };
117
+ export type Sep = '\\' | '/';
118
+ export declare const sep: Sep;
119
+ export declare const GLOBSTAR: unique symbol;
120
+ export declare const filter: (pattern: string, options?: MinimatchOptions) => (p: string) => boolean;
121
+ export declare const defaults: (def: MinimatchOptions) => typeof minimatch;
122
+ export declare const braceExpand: (pattern: string, options?: MinimatchOptions) => string[];
123
+ export declare const makeRe: (pattern: string, options?: MinimatchOptions) => false | MMRegExp;
124
+ export declare const match: (list: string[], pattern: string, options?: MinimatchOptions) => string[];
125
+ export type MMRegExp = RegExp & {
126
+ _src?: string;
127
+ _glob?: string;
128
+ };
129
+ export type ParseReturnFiltered = string | MMRegExp | typeof GLOBSTAR;
130
+ export type ParseReturn = ParseReturnFiltered | false;
131
+ export declare class Minimatch {
132
+ #private;
133
+ options: MinimatchOptions;
134
+ set: ParseReturnFiltered[][];
135
+ pattern: string;
136
+ windowsPathsNoEscape: boolean;
137
+ nonegate: boolean;
138
+ negate: boolean;
139
+ comment: boolean;
140
+ empty: boolean;
141
+ preserveMultipleSlashes: boolean;
142
+ partial: boolean;
143
+ globSet: string[];
144
+ globParts: string[][];
145
+ nocase: boolean;
146
+ isWindows: boolean;
147
+ platform: Platform;
148
+ windowsNoMagicRoot: boolean;
149
+ maxGlobstarRecursion: number;
150
+ regexp: false | null | MMRegExp;
151
+ constructor(pattern: string, options?: MinimatchOptions);
152
+ hasMagic(): boolean;
153
+ debug(..._: unknown[]): void;
154
+ make(): void;
155
+ preprocess(globParts: string[][]): string[][];
156
+ adjascentGlobstarOptimize(globParts: string[][]): string[][];
157
+ levelOneOptimize(globParts: string[][]): string[][];
158
+ levelTwoFileOptimize(parts: string | string[]): string[];
159
+ firstPhasePreProcess(globParts: string[][]): string[][];
160
+ secondPhasePreProcess(globParts: string[][]): string[][];
161
+ partsMatch(a: string[], b: string[], emptyGSMatch?: boolean): false | string[];
162
+ parseNegate(): void;
163
+ matchOne(file: string[], pattern: ParseReturn[], partial?: boolean): boolean;
164
+ braceExpand(): string[];
165
+ parse(pattern: string): ParseReturn;
166
+ makeRe(): false | MMRegExp;
167
+ slashSplit(p: string): string[];
168
+ match(f: string, partial?: boolean): boolean;
169
+ static defaults(def: MinimatchOptions): typeof Minimatch;
170
+ }
171
+ export { AST } from './ast.js';
172
+ export { escape } from './escape.js';
173
+ export { unescape } from './unescape.js';
174
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}