Changeset 81bc7da
- Timestamp:
- 07/13/26 07:55:05 (3 months ago)
- Branches:
- finki-main, main
- Children:
- 62b2964
- Parents:
- 79fff4f
- Files:
-
- 1535 added
- 3 edited
-
.idea/.name (added)
-
.idea/editor.xml (added)
-
README.md (modified) (1 diff)
-
database/handcraft.db (added)
-
node_modules/.bin/color-support (added)
-
node_modules/.bin/color-support.cmd (added)
-
node_modules/.bin/color-support.ps1 (added)
-
node_modules/.bin/mkdirp (added)
-
node_modules/.bin/mkdirp.cmd (added)
-
node_modules/.bin/mkdirp.ps1 (added)
-
node_modules/.bin/node-gyp (added)
-
node_modules/.bin/node-gyp.cmd (added)
-
node_modules/.bin/node-gyp.ps1 (added)
-
node_modules/.bin/node-which (added)
-
node_modules/.bin/node-which.cmd (added)
-
node_modules/.bin/node-which.ps1 (added)
-
node_modules/.bin/nodemon (added)
-
node_modules/.bin/nodemon.cmd (added)
-
node_modules/.bin/nodemon.ps1 (added)
-
node_modules/.bin/nodetouch (added)
-
node_modules/.bin/nodetouch.cmd (added)
-
node_modules/.bin/nodetouch.ps1 (added)
-
node_modules/.bin/nopt (added)
-
node_modules/.bin/nopt.cmd (added)
-
node_modules/.bin/nopt.ps1 (added)
-
node_modules/.bin/prebuild-install (added)
-
node_modules/.bin/prebuild-install.cmd (added)
-
node_modules/.bin/prebuild-install.ps1 (added)
-
node_modules/.bin/rc (added)
-
node_modules/.bin/rc.cmd (added)
-
node_modules/.bin/rc.ps1 (added)
-
node_modules/.bin/rimraf (added)
-
node_modules/.bin/rimraf.cmd (added)
-
node_modules/.bin/rimraf.ps1 (added)
-
node_modules/.bin/semver (added)
-
node_modules/.bin/semver.cmd (added)
-
node_modules/.bin/semver.ps1 (added)
-
node_modules/.package-lock.json (added)
-
node_modules/@gar/promisify/LICENSE.md (added)
-
node_modules/@gar/promisify/README.md (added)
-
node_modules/@gar/promisify/index.js (added)
-
node_modules/@gar/promisify/package.json (added)
-
node_modules/@npmcli/fs/LICENSE.md (added)
-
node_modules/@npmcli/fs/README.md (added)
-
node_modules/@npmcli/fs/lib/common/file-url-to-path/index.js (added)
-
node_modules/@npmcli/fs/lib/common/file-url-to-path/polyfill.js (added)
-
node_modules/@npmcli/fs/lib/common/get-options.js (added)
-
node_modules/@npmcli/fs/lib/common/node.js (added)
-
node_modules/@npmcli/fs/lib/common/owner.js (added)
-
node_modules/@npmcli/fs/lib/copy-file.js (added)
-
node_modules/@npmcli/fs/lib/cp/LICENSE (added)
-
node_modules/@npmcli/fs/lib/cp/index.js (added)
-
node_modules/@npmcli/fs/lib/cp/polyfill.js (added)
-
node_modules/@npmcli/fs/lib/errors.js (added)
-
node_modules/@npmcli/fs/lib/fs.js (added)
-
node_modules/@npmcli/fs/lib/index.js (added)
-
node_modules/@npmcli/fs/lib/mkdir/index.js (added)
-
node_modules/@npmcli/fs/lib/mkdir/polyfill.js (added)
-
node_modules/@npmcli/fs/lib/mkdtemp.js (added)
-
node_modules/@npmcli/fs/lib/rm/index.js (added)
-
node_modules/@npmcli/fs/lib/rm/polyfill.js (added)
-
node_modules/@npmcli/fs/lib/with-temp-dir.js (added)
-
node_modules/@npmcli/fs/lib/write-file.js (added)
-
node_modules/@npmcli/fs/package.json (added)
-
node_modules/@npmcli/move-file/LICENSE.md (added)
-
node_modules/@npmcli/move-file/README.md (added)
-
node_modules/@npmcli/move-file/index.js (added)
-
node_modules/@npmcli/move-file/package.json (added)
-
node_modules/@tootallnate/once/dist/index.d.ts (added)
-
node_modules/@tootallnate/once/dist/index.js (added)
-
node_modules/@tootallnate/once/dist/index.js.map (added)
-
node_modules/@tootallnate/once/package.json (added)
-
node_modules/abbrev/LICENSE (added)
-
node_modules/abbrev/README.md (added)
-
node_modules/abbrev/abbrev.js (added)
-
node_modules/abbrev/package.json (added)
-
node_modules/agent-base/README.md (added)
-
node_modules/agent-base/dist/src/index.d.ts (added)
-
node_modules/agent-base/dist/src/index.js (added)
-
node_modules/agent-base/dist/src/index.js.map (added)
-
node_modules/agent-base/dist/src/promisify.d.ts (added)
-
node_modules/agent-base/dist/src/promisify.js (added)
-
node_modules/agent-base/dist/src/promisify.js.map (added)
-
node_modules/agent-base/package.json (added)
-
node_modules/agent-base/src/index.ts (added)
-
node_modules/agent-base/src/promisify.ts (added)
-
node_modules/agentkeepalive/LICENSE (added)
-
node_modules/agentkeepalive/README.md (added)
-
node_modules/agentkeepalive/browser.js (added)
-
node_modules/agentkeepalive/index.d.ts (added)
-
node_modules/agentkeepalive/index.js (added)
-
node_modules/agentkeepalive/lib/agent.js (added)
-
node_modules/agentkeepalive/lib/constants.js (added)
-
node_modules/agentkeepalive/lib/https_agent.js (added)
-
node_modules/agentkeepalive/package.json (added)
-
node_modules/aggregate-error/index.d.ts (added)
-
node_modules/aggregate-error/index.js (added)
-
node_modules/aggregate-error/license (added)
-
node_modules/aggregate-error/package.json (added)
-
node_modules/aggregate-error/readme.md (added)
-
node_modules/ansi-regex/index.d.ts (added)
-
node_modules/ansi-regex/index.js (added)
-
node_modules/ansi-regex/license (added)
-
node_modules/ansi-regex/package.json (added)
-
node_modules/ansi-regex/readme.md (added)
-
node_modules/anymatch/LICENSE (added)
-
node_modules/anymatch/README.md (added)
-
node_modules/anymatch/index.d.ts (added)
-
node_modules/anymatch/index.js (added)
-
node_modules/anymatch/package.json (added)
-
node_modules/aproba/LICENSE (added)
-
node_modules/aproba/README.md (added)
-
node_modules/aproba/index.js (added)
-
node_modules/aproba/package.json (added)
-
node_modules/are-we-there-yet/LICENSE.md (added)
-
node_modules/are-we-there-yet/README.md (added)
-
node_modules/are-we-there-yet/lib/index.js (added)
-
node_modules/are-we-there-yet/lib/tracker-base.js (added)
-
node_modules/are-we-there-yet/lib/tracker-group.js (added)
-
node_modules/are-we-there-yet/lib/tracker-stream.js (added)
-
node_modules/are-we-there-yet/lib/tracker.js (added)
-
node_modules/are-we-there-yet/package.json (added)
-
node_modules/balanced-match/LICENSE.md (added)
-
node_modules/balanced-match/README.md (added)
-
node_modules/balanced-match/dist/commonjs/index.d.ts (added)
-
node_modules/balanced-match/dist/commonjs/index.d.ts.map (added)
-
node_modules/balanced-match/dist/commonjs/index.js (added)
-
node_modules/balanced-match/dist/commonjs/index.js.map (added)
-
node_modules/balanced-match/dist/commonjs/package.json (added)
-
node_modules/balanced-match/dist/esm/index.d.ts (added)
-
node_modules/balanced-match/dist/esm/index.d.ts.map (added)
-
node_modules/balanced-match/dist/esm/index.js (added)
-
node_modules/balanced-match/dist/esm/index.js.map (added)
-
node_modules/balanced-match/dist/esm/package.json (added)
-
node_modules/balanced-match/package.json (added)
-
node_modules/base64-js/LICENSE (added)
-
node_modules/base64-js/README.md (added)
-
node_modules/base64-js/base64js.min.js (added)
-
node_modules/base64-js/index.d.ts (added)
-
node_modules/base64-js/index.js (added)
-
node_modules/base64-js/package.json (added)
-
node_modules/bcryptjs/.npmignore (added)
-
node_modules/bcryptjs/.travis.yml (added)
-
node_modules/bcryptjs/LICENSE (added)
-
node_modules/bcryptjs/README.md (added)
-
node_modules/bcryptjs/bower.json (added)
-
node_modules/bcryptjs/dist/README.md (added)
-
node_modules/bcryptjs/dist/bcrypt.js (added)
-
node_modules/bcryptjs/dist/bcrypt.min.js (added)
-
node_modules/bcryptjs/dist/bcrypt.min.js.gz (added)
-
node_modules/bcryptjs/dist/bcrypt.min.map (added)
-
node_modules/bcryptjs/externs/bcrypt.js (added)
-
node_modules/bcryptjs/externs/minimal-env.js (added)
-
node_modules/bcryptjs/index.js (added)
-
node_modules/bcryptjs/package.json (added)
-
node_modules/bcryptjs/scripts/build.js (added)
-
node_modules/bcryptjs/src/bcrypt.js (added)
-
node_modules/bcryptjs/src/bcrypt/impl.js (added)
-
node_modules/bcryptjs/src/bcrypt/prng/README.md (added)
-
node_modules/bcryptjs/src/bcrypt/prng/accum.js (added)
-
node_modules/bcryptjs/src/bcrypt/prng/isaac.js (added)
-
node_modules/bcryptjs/src/bcrypt/util.js (added)
-
node_modules/bcryptjs/src/bcrypt/util/base64.js (added)
-
node_modules/bcryptjs/src/bower.json (added)
-
node_modules/bcryptjs/src/wrap.js (added)
-
node_modules/bcryptjs/tests/quickbrown.txt (added)
-
node_modules/bcryptjs/tests/suite.js (added)
-
node_modules/binary-extensions/binary-extensions.json (added)
-
node_modules/binary-extensions/binary-extensions.json.d.ts (added)
-
node_modules/binary-extensions/index.d.ts (added)
-
node_modules/binary-extensions/index.js (added)
-
node_modules/binary-extensions/license (added)
-
node_modules/binary-extensions/package.json (added)
-
node_modules/binary-extensions/readme.md (added)
-
node_modules/bindings/LICENSE.md (added)
-
node_modules/bindings/README.md (added)
-
node_modules/bindings/bindings.js (added)
-
node_modules/bindings/package.json (added)
-
node_modules/bl/.travis.yml (added)
-
node_modules/bl/BufferList.js (added)
-
node_modules/bl/LICENSE.md (added)
-
node_modules/bl/README.md (added)
-
node_modules/bl/bl.js (added)
-
node_modules/bl/package.json (added)
-
node_modules/bl/test/convert.js (added)
-
node_modules/bl/test/indexOf.js (added)
-
node_modules/bl/test/isBufferList.js (added)
-
node_modules/bl/test/test.js (added)
-
node_modules/brace-expansion/LICENSE (added)
-
node_modules/brace-expansion/README.md (added)
-
node_modules/brace-expansion/dist/commonjs/index.d.ts (added)
-
node_modules/brace-expansion/dist/commonjs/index.d.ts.map (added)
-
node_modules/brace-expansion/dist/commonjs/index.js (added)
-
node_modules/brace-expansion/dist/commonjs/index.js.map (added)
-
node_modules/brace-expansion/dist/commonjs/package.json (added)
-
node_modules/brace-expansion/dist/esm/index.d.ts (added)
-
node_modules/brace-expansion/dist/esm/index.d.ts.map (added)
-
node_modules/brace-expansion/dist/esm/index.js (added)
-
node_modules/brace-expansion/dist/esm/index.js.map (added)
-
node_modules/brace-expansion/dist/esm/package.json (added)
-
node_modules/brace-expansion/package.json (added)
-
node_modules/braces/LICENSE (added)
-
node_modules/braces/README.md (added)
-
node_modules/braces/index.js (added)
-
node_modules/braces/lib/compile.js (added)
-
node_modules/braces/lib/constants.js (added)
-
node_modules/braces/lib/expand.js (added)
-
node_modules/braces/lib/parse.js (added)
-
node_modules/braces/lib/stringify.js (added)
-
node_modules/braces/lib/utils.js (added)
-
node_modules/braces/package.json (added)
-
node_modules/buffer/AUTHORS.md (added)
-
node_modules/buffer/LICENSE (added)
-
node_modules/buffer/README.md (added)
-
node_modules/buffer/index.d.ts (added)
-
node_modules/buffer/index.js (added)
-
node_modules/buffer/package.json (added)
-
node_modules/cacache/LICENSE.md (added)
-
node_modules/cacache/README.md (added)
-
node_modules/cacache/get.js (added)
-
node_modules/cacache/index.js (added)
-
node_modules/cacache/lib/content/path.js (added)
-
node_modules/cacache/lib/content/read.js (added)
-
node_modules/cacache/lib/content/rm.js (added)
-
node_modules/cacache/lib/content/write.js (added)
-
node_modules/cacache/lib/entry-index.js (added)
-
node_modules/cacache/lib/memoization.js (added)
-
node_modules/cacache/lib/util/disposer.js (added)
-
node_modules/cacache/lib/util/fix-owner.js (added)
-
node_modules/cacache/lib/util/hash-to-segments.js (added)
-
node_modules/cacache/lib/util/move-file.js (added)
-
node_modules/cacache/lib/util/tmp.js (added)
-
node_modules/cacache/lib/verify.js (added)
-
node_modules/cacache/ls.js (added)
-
node_modules/cacache/package.json (added)
-
node_modules/cacache/put.js (added)
-
node_modules/cacache/rm.js (added)
-
node_modules/cacache/verify.js (added)
-
node_modules/chokidar/LICENSE (added)
-
node_modules/chokidar/README.md (added)
-
node_modules/chokidar/index.js (added)
-
node_modules/chokidar/lib/constants.js (added)
-
node_modules/chokidar/lib/fsevents-handler.js (added)
-
node_modules/chokidar/lib/nodefs-handler.js (added)
-
node_modules/chokidar/package.json (added)
-
node_modules/chokidar/types/index.d.ts (added)
-
node_modules/chownr/LICENSE (added)
-
node_modules/chownr/README.md (added)
-
node_modules/chownr/chownr.js (added)
-
node_modules/chownr/package.json (added)
-
node_modules/clean-stack/index.d.ts (added)
-
node_modules/clean-stack/index.js (added)
-
node_modules/clean-stack/license (added)
-
node_modules/clean-stack/package.json (added)
-
node_modules/clean-stack/readme.md (added)
-
node_modules/color-support/LICENSE (added)
-
node_modules/color-support/README.md (added)
-
node_modules/color-support/bin.js (added)
-
node_modules/color-support/browser.js (added)
-
node_modules/color-support/index.js (added)
-
node_modules/color-support/package.json (added)
-
node_modules/concat-map/.travis.yml (added)
-
node_modules/concat-map/LICENSE (added)
-
node_modules/concat-map/README.markdown (added)
-
node_modules/concat-map/example/map.js (added)
-
node_modules/concat-map/index.js (added)
-
node_modules/concat-map/package.json (added)
-
node_modules/concat-map/test/map.js (added)
-
node_modules/console-control-strings/LICENSE (added)
-
node_modules/console-control-strings/README.md (added)
-
node_modules/console-control-strings/README.md~ (added)
-
node_modules/console-control-strings/index.js (added)
-
node_modules/console-control-strings/package.json (added)
-
node_modules/debug/LICENSE (added)
-
node_modules/debug/README.md (added)
-
node_modules/debug/package.json (added)
-
node_modules/debug/src/browser.js (added)
-
node_modules/debug/src/common.js (added)
-
node_modules/debug/src/index.js (added)
-
node_modules/debug/src/node.js (added)
-
node_modules/decompress-response/index.d.ts (added)
-
node_modules/decompress-response/index.js (added)
-
node_modules/decompress-response/license (added)
-
node_modules/decompress-response/package.json (added)
-
node_modules/decompress-response/readme.md (added)
-
node_modules/deep-extend/CHANGELOG.md (added)
-
node_modules/deep-extend/LICENSE (added)
-
node_modules/deep-extend/README.md (added)
-
node_modules/deep-extend/index.js (added)
-
node_modules/deep-extend/lib/deep-extend.js (added)
-
node_modules/deep-extend/package.json (added)
-
node_modules/delegates/.npmignore (added)
-
node_modules/delegates/History.md (added)
-
node_modules/delegates/License (added)
-
node_modules/delegates/Makefile (added)
-
node_modules/delegates/Readme.md (added)
-
node_modules/delegates/index.js (added)
-
node_modules/delegates/package.json (added)
-
node_modules/delegates/test/index.js (added)
-
node_modules/detect-libc/LICENSE (added)
-
node_modules/detect-libc/README.md (added)
-
node_modules/detect-libc/index.d.ts (added)
-
node_modules/detect-libc/lib/detect-libc.js (added)
-
node_modules/detect-libc/lib/elf.js (added)
-
node_modules/detect-libc/lib/filesystem.js (added)
-
node_modules/detect-libc/lib/process.js (added)
-
node_modules/detect-libc/package.json (added)
-
node_modules/dotenv/CHANGELOG.md (added)
-
node_modules/dotenv/LICENSE (added)
-
node_modules/dotenv/README-es.md (added)
-
node_modules/dotenv/README.md (added)
-
node_modules/dotenv/SECURITY.md (added)
-
node_modules/dotenv/config.d.ts (added)
-
node_modules/dotenv/config.js (added)
-
node_modules/dotenv/lib/cli-options.js (added)
-
node_modules/dotenv/lib/env-options.js (added)
-
node_modules/dotenv/lib/main.d.ts (added)
-
node_modules/dotenv/lib/main.js (added)
-
node_modules/dotenv/package.json (added)
-
node_modules/emoji-regex/LICENSE-MIT.txt (added)
-
node_modules/emoji-regex/README.md (added)
-
node_modules/emoji-regex/es2015/index.js (added)
-
node_modules/emoji-regex/es2015/text.js (added)
-
node_modules/emoji-regex/index.d.ts (added)
-
node_modules/emoji-regex/index.js (added)
-
node_modules/emoji-regex/package.json (added)
-
node_modules/emoji-regex/text.js (added)
-
node_modules/encoding/.prettierrc.js (added)
-
node_modules/encoding/.travis.yml (added)
-
node_modules/encoding/LICENSE (added)
-
node_modules/encoding/README.md (added)
-
node_modules/encoding/lib/encoding.js (added)
-
node_modules/encoding/package.json (added)
-
node_modules/encoding/test/test.js (added)
-
node_modules/end-of-stream/LICENSE (added)
-
node_modules/end-of-stream/README.md (added)
-
node_modules/end-of-stream/index.js (added)
-
node_modules/end-of-stream/package.json (added)
-
node_modules/env-paths/index.d.ts (added)
-
node_modules/env-paths/index.js (added)
-
node_modules/env-paths/license (added)
-
node_modules/env-paths/package.json (added)
-
node_modules/env-paths/readme.md (added)
-
node_modules/err-code/.editorconfig (added)
-
node_modules/err-code/.eslintrc.json (added)
-
node_modules/err-code/.travis.yml (added)
-
node_modules/err-code/README.md (added)
-
node_modules/err-code/bower.json (added)
-
node_modules/err-code/index.js (added)
-
node_modules/err-code/index.umd.js (added)
-
node_modules/err-code/package.json (added)
-
node_modules/err-code/test/.eslintrc.json (added)
-
node_modules/err-code/test/test.js (added)
-
node_modules/expand-template/.travis.yml (added)
-
node_modules/expand-template/LICENSE (added)
-
node_modules/expand-template/README.md (added)
-
node_modules/expand-template/index.js (added)
-
node_modules/expand-template/package.json (added)
-
node_modules/expand-template/test.js (added)
-
node_modules/file-uri-to-path/.npmignore (added)
-
node_modules/file-uri-to-path/.travis.yml (added)
-
node_modules/file-uri-to-path/History.md (added)
-
node_modules/file-uri-to-path/LICENSE (added)
-
node_modules/file-uri-to-path/README.md (added)
-
node_modules/file-uri-to-path/index.d.ts (added)
-
node_modules/file-uri-to-path/index.js (added)
-
node_modules/file-uri-to-path/package.json (added)
-
node_modules/file-uri-to-path/test/test.js (added)
-
node_modules/file-uri-to-path/test/tests.json (added)
-
node_modules/fill-range/LICENSE (added)
-
node_modules/fill-range/README.md (added)
-
node_modules/fill-range/index.js (added)
-
node_modules/fill-range/package.json (added)
-
node_modules/fs-constants/LICENSE (added)
-
node_modules/fs-constants/README.md (added)
-
node_modules/fs-constants/browser.js (added)
-
node_modules/fs-constants/index.js (added)
-
node_modules/fs-constants/package.json (added)
-
node_modules/fs-minipass/LICENSE (added)
-
node_modules/fs-minipass/README.md (added)
-
node_modules/fs-minipass/index.js (added)
-
node_modules/fs-minipass/package.json (added)
-
node_modules/fs.realpath/LICENSE (added)
-
node_modules/fs.realpath/README.md (added)
-
node_modules/fs.realpath/index.js (added)
-
node_modules/fs.realpath/old.js (added)
-
node_modules/fs.realpath/package.json (added)
-
node_modules/gauge/LICENSE.md (added)
-
node_modules/gauge/README.md (added)
-
node_modules/gauge/lib/base-theme.js (added)
-
node_modules/gauge/lib/error.js (added)
-
node_modules/gauge/lib/has-color.js (added)
-
node_modules/gauge/lib/index.js (added)
-
node_modules/gauge/lib/plumbing.js (added)
-
node_modules/gauge/lib/process.js (added)
-
node_modules/gauge/lib/progress-bar.js (added)
-
node_modules/gauge/lib/render-template.js (added)
-
node_modules/gauge/lib/set-immediate.js (added)
-
node_modules/gauge/lib/set-interval.js (added)
-
node_modules/gauge/lib/spin.js (added)
-
node_modules/gauge/lib/template-item.js (added)
-
node_modules/gauge/lib/theme-set.js (added)
-
node_modules/gauge/lib/themes.js (added)
-
node_modules/gauge/lib/wide-truncate.js (added)
-
node_modules/gauge/package.json (added)
-
node_modules/github-from-package/.travis.yml (added)
-
node_modules/github-from-package/LICENSE (added)
-
node_modules/github-from-package/example/package.json (added)
-
node_modules/github-from-package/example/url.js (added)
-
node_modules/github-from-package/index.js (added)
-
node_modules/github-from-package/package.json (added)
-
node_modules/github-from-package/readme.markdown (added)
-
node_modules/github-from-package/test/a.json (added)
-
node_modules/github-from-package/test/b.json (added)
-
node_modules/github-from-package/test/c.json (added)
-
node_modules/github-from-package/test/d.json (added)
-
node_modules/github-from-package/test/e.json (added)
-
node_modules/github-from-package/test/url.js (added)
-
node_modules/glob-parent/CHANGELOG.md (added)
-
node_modules/glob-parent/LICENSE (added)
-
node_modules/glob-parent/README.md (added)
-
node_modules/glob-parent/index.js (added)
-
node_modules/glob-parent/package.json (added)
-
node_modules/glob/LICENSE (added)
-
node_modules/glob/README.md (added)
-
node_modules/glob/common.js (added)
-
node_modules/glob/glob.js (added)
-
node_modules/glob/node_modules/balanced-match/.github/FUNDING.yml (added)
-
node_modules/glob/node_modules/balanced-match/LICENSE.md (added)
-
node_modules/glob/node_modules/balanced-match/README.md (added)
-
node_modules/glob/node_modules/balanced-match/index.js (added)
-
node_modules/glob/node_modules/balanced-match/package.json (added)
-
node_modules/glob/node_modules/brace-expansion/LICENSE (added)
-
node_modules/glob/node_modules/brace-expansion/README.md (added)
-
node_modules/glob/node_modules/brace-expansion/index.js (added)
-
node_modules/glob/node_modules/brace-expansion/package.json (added)
-
node_modules/glob/node_modules/minimatch/LICENSE (added)
-
node_modules/glob/node_modules/minimatch/README.md (added)
-
node_modules/glob/node_modules/minimatch/minimatch.js (added)
-
node_modules/glob/node_modules/minimatch/package.json (added)
-
node_modules/glob/package.json (added)
-
node_modules/glob/sync.js (added)
-
node_modules/graceful-fs/LICENSE (added)
-
node_modules/graceful-fs/README.md (added)
-
node_modules/graceful-fs/clone.js (added)
-
node_modules/graceful-fs/graceful-fs.js (added)
-
node_modules/graceful-fs/legacy-streams.js (added)
-
node_modules/graceful-fs/package.json (added)
-
node_modules/graceful-fs/polyfills.js (added)
-
node_modules/has-flag/index.js (added)
-
node_modules/has-flag/license (added)
-
node_modules/has-flag/package.json (added)
-
node_modules/has-flag/readme.md (added)
-
node_modules/has-unicode/LICENSE (added)
-
node_modules/has-unicode/README.md (added)
-
node_modules/has-unicode/index.js (added)
-
node_modules/has-unicode/package.json (added)
-
node_modules/http-cache-semantics/LICENSE (added)
-
node_modules/http-cache-semantics/README.md (added)
-
node_modules/http-cache-semantics/index.js (added)
-
node_modules/http-cache-semantics/package.json (added)
-
node_modules/http-proxy-agent/README.md (added)
-
node_modules/http-proxy-agent/dist/agent.d.ts (added)
-
node_modules/http-proxy-agent/dist/agent.js (added)
-
node_modules/http-proxy-agent/dist/agent.js.map (added)
-
node_modules/http-proxy-agent/dist/index.d.ts (added)
-
node_modules/http-proxy-agent/dist/index.js (added)
-
node_modules/http-proxy-agent/dist/index.js.map (added)
-
node_modules/http-proxy-agent/package.json (added)
-
node_modules/https-proxy-agent/README.md (added)
-
node_modules/https-proxy-agent/dist/agent.d.ts (added)
-
node_modules/https-proxy-agent/dist/agent.js (added)
-
node_modules/https-proxy-agent/dist/agent.js.map (added)
-
node_modules/https-proxy-agent/dist/index.d.ts (added)
-
node_modules/https-proxy-agent/dist/index.js (added)
-
node_modules/https-proxy-agent/dist/index.js.map (added)
-
node_modules/https-proxy-agent/dist/parse-proxy-response.d.ts (added)
-
node_modules/https-proxy-agent/dist/parse-proxy-response.js (added)
-
node_modules/https-proxy-agent/dist/parse-proxy-response.js.map (added)
-
node_modules/https-proxy-agent/package.json (added)
-
node_modules/humanize-ms/History.md (added)
-
node_modules/humanize-ms/LICENSE (added)
-
node_modules/humanize-ms/README.md (added)
-
node_modules/humanize-ms/index.js (added)
-
node_modules/humanize-ms/package.json (added)
-
node_modules/iconv-lite/.github/dependabot.yml (added)
-
node_modules/iconv-lite/.idea/codeStyles/Project.xml (added)
-
node_modules/iconv-lite/.idea/codeStyles/codeStyleConfig.xml (added)
-
node_modules/iconv-lite/.idea/iconv-lite.iml (added)
-
node_modules/iconv-lite/.idea/inspectionProfiles/Project_Default.xml (added)
-
node_modules/iconv-lite/.idea/modules.xml (added)
-
node_modules/iconv-lite/.idea/vcs.xml (added)
-
node_modules/iconv-lite/Changelog.md (added)
-
node_modules/iconv-lite/LICENSE (added)
-
node_modules/iconv-lite/README.md (added)
-
node_modules/iconv-lite/encodings/dbcs-codec.js (added)
-
node_modules/iconv-lite/encodings/dbcs-data.js (added)
-
node_modules/iconv-lite/encodings/index.js (added)
-
node_modules/iconv-lite/encodings/internal.js (added)
-
node_modules/iconv-lite/encodings/sbcs-codec.js (added)
-
node_modules/iconv-lite/encodings/sbcs-data-generated.js (added)
-
node_modules/iconv-lite/encodings/sbcs-data.js (added)
-
node_modules/iconv-lite/encodings/tables/big5-added.json (added)
-
node_modules/iconv-lite/encodings/tables/cp936.json (added)
-
node_modules/iconv-lite/encodings/tables/cp949.json (added)
-
node_modules/iconv-lite/encodings/tables/cp950.json (added)
-
node_modules/iconv-lite/encodings/tables/eucjp.json (added)
-
node_modules/iconv-lite/encodings/tables/gb18030-ranges.json (added)
-
node_modules/iconv-lite/encodings/tables/gbk-added.json (added)
-
node_modules/iconv-lite/encodings/tables/shiftjis.json (added)
-
node_modules/iconv-lite/encodings/utf16.js (added)
-
node_modules/iconv-lite/encodings/utf32.js (added)
-
node_modules/iconv-lite/encodings/utf7.js (added)
-
node_modules/iconv-lite/lib/bom-handling.js (added)
-
node_modules/iconv-lite/lib/index.d.ts (added)
-
node_modules/iconv-lite/lib/index.js (added)
-
node_modules/iconv-lite/lib/streams.js (added)
-
node_modules/iconv-lite/package.json (added)
-
node_modules/ieee754/LICENSE (added)
-
node_modules/ieee754/README.md (added)
-
node_modules/ieee754/index.d.ts (added)
-
node_modules/ieee754/index.js (added)
-
node_modules/ieee754/package.json (added)
-
node_modules/ignore-by-default/LICENSE (added)
-
node_modules/ignore-by-default/README.md (added)
-
node_modules/ignore-by-default/index.js (added)
-
node_modules/ignore-by-default/package.json (added)
-
node_modules/imurmurhash/README.md (added)
-
node_modules/imurmurhash/imurmurhash.js (added)
-
node_modules/imurmurhash/imurmurhash.min.js (added)
-
node_modules/imurmurhash/package.json (added)
-
node_modules/indent-string/index.d.ts (added)
-
node_modules/indent-string/index.js (added)
-
node_modules/indent-string/license (added)
-
node_modules/indent-string/package.json (added)
-
node_modules/indent-string/readme.md (added)
-
node_modules/infer-owner/LICENSE (added)
-
node_modules/infer-owner/README.md (added)
-
node_modules/infer-owner/index.js (added)
-
node_modules/infer-owner/package.json (added)
-
node_modules/inflight/LICENSE (added)
-
node_modules/inflight/README.md (added)
-
node_modules/inflight/inflight.js (added)
-
node_modules/inflight/package.json (added)
-
node_modules/inherits/LICENSE (added)
-
node_modules/inherits/README.md (added)
-
node_modules/inherits/inherits.js (added)
-
node_modules/inherits/inherits_browser.js (added)
-
node_modules/inherits/package.json (added)
-
node_modules/ini/LICENSE (added)
-
node_modules/ini/README.md (added)
-
node_modules/ini/ini.js (added)
-
node_modules/ini/package.json (added)
-
node_modules/ip-address/LICENSE (added)
-
node_modules/ip-address/README.md (added)
-
node_modules/ip-address/dist/address-error.d.ts (added)
-
node_modules/ip-address/dist/address-error.d.ts.map (added)
-
node_modules/ip-address/dist/address-error.js (added)
-
node_modules/ip-address/dist/address-error.js.map (added)
-
node_modules/ip-address/dist/common.d.ts (added)
-
node_modules/ip-address/dist/common.d.ts.map (added)
-
node_modules/ip-address/dist/common.js (added)
-
node_modules/ip-address/dist/common.js.map (added)
-
node_modules/ip-address/dist/ip-address.d.ts (added)
-
node_modules/ip-address/dist/ip-address.d.ts.map (added)
-
node_modules/ip-address/dist/ip-address.js (added)
-
node_modules/ip-address/dist/ip-address.js.map (added)
-
node_modules/ip-address/dist/ipv4.d.ts (added)
-
node_modules/ip-address/dist/ipv4.d.ts.map (added)
-
node_modules/ip-address/dist/ipv4.js (added)
-
node_modules/ip-address/dist/ipv4.js.map (added)
-
node_modules/ip-address/dist/ipv6.d.ts (added)
-
node_modules/ip-address/dist/ipv6.d.ts.map (added)
-
node_modules/ip-address/dist/ipv6.js (added)
-
node_modules/ip-address/dist/ipv6.js.map (added)
-
node_modules/ip-address/dist/v4/constants.d.ts (added)
-
node_modules/ip-address/dist/v4/constants.d.ts.map (added)
-
node_modules/ip-address/dist/v4/constants.js (added)
-
node_modules/ip-address/dist/v4/constants.js.map (added)
-
node_modules/ip-address/dist/v6/constants.d.ts (added)
-
node_modules/ip-address/dist/v6/constants.d.ts.map (added)
-
node_modules/ip-address/dist/v6/constants.js (added)
-
node_modules/ip-address/dist/v6/constants.js.map (added)
-
node_modules/ip-address/dist/v6/helpers.d.ts (added)
-
node_modules/ip-address/dist/v6/helpers.d.ts.map (added)
-
node_modules/ip-address/dist/v6/helpers.js (added)
-
node_modules/ip-address/dist/v6/helpers.js.map (added)
-
node_modules/ip-address/dist/v6/regular-expressions.d.ts (added)
-
node_modules/ip-address/dist/v6/regular-expressions.d.ts.map (added)
-
node_modules/ip-address/dist/v6/regular-expressions.js (added)
-
node_modules/ip-address/dist/v6/regular-expressions.js.map (added)
-
node_modules/ip-address/package.json (added)
-
node_modules/ip-address/src/address-error.ts (added)
-
node_modules/ip-address/src/common.ts (added)
-
node_modules/ip-address/src/ip-address.ts (added)
-
node_modules/ip-address/src/ipv4.ts (added)
-
node_modules/ip-address/src/ipv6.ts (added)
-
node_modules/ip-address/src/v4/constants.ts (added)
-
node_modules/ip-address/src/v6/constants.ts (added)
-
node_modules/ip-address/src/v6/helpers.ts (added)
-
node_modules/ip-address/src/v6/regular-expressions.ts (added)
-
node_modules/is-binary-path/index.d.ts (added)
-
node_modules/is-binary-path/index.js (added)
-
node_modules/is-binary-path/license (added)
-
node_modules/is-binary-path/package.json (added)
-
node_modules/is-binary-path/readme.md (added)
-
node_modules/is-extglob/LICENSE (added)
-
node_modules/is-extglob/README.md (added)
-
node_modules/is-extglob/index.js (added)
-
node_modules/is-extglob/package.json (added)
-
node_modules/is-fullwidth-code-point/index.d.ts (added)
-
node_modules/is-fullwidth-code-point/index.js (added)
-
node_modules/is-fullwidth-code-point/license (added)
-
node_modules/is-fullwidth-code-point/package.json (added)
-
node_modules/is-fullwidth-code-point/readme.md (added)
-
node_modules/is-glob/LICENSE (added)
-
node_modules/is-glob/README.md (added)
-
node_modules/is-glob/index.js (added)
-
node_modules/is-glob/package.json (added)
-
node_modules/is-lambda/.npmignore (added)
-
node_modules/is-lambda/.travis.yml (added)
-
node_modules/is-lambda/LICENSE (added)
-
node_modules/is-lambda/README.md (added)
-
node_modules/is-lambda/index.js (added)
-
node_modules/is-lambda/package.json (added)
-
node_modules/is-lambda/test.js (added)
-
node_modules/is-number/LICENSE (added)
-
node_modules/is-number/README.md (added)
-
node_modules/is-number/index.js (added)
-
node_modules/is-number/package.json (added)
-
node_modules/isexe/.npmignore (added)
-
node_modules/isexe/LICENSE (added)
-
node_modules/isexe/README.md (added)
-
node_modules/isexe/index.js (added)
-
node_modules/isexe/mode.js (added)
-
node_modules/isexe/package.json (added)
-
node_modules/isexe/test/basic.js (added)
-
node_modules/isexe/windows.js (added)
-
node_modules/lru-cache/LICENSE (added)
-
node_modules/lru-cache/README.md (added)
-
node_modules/lru-cache/index.js (added)
-
node_modules/lru-cache/package.json (added)
-
node_modules/make-fetch-happen/LICENSE (added)
-
node_modules/make-fetch-happen/README.md (added)
-
node_modules/make-fetch-happen/lib/agent.js (added)
-
node_modules/make-fetch-happen/lib/cache/entry.js (added)
-
node_modules/make-fetch-happen/lib/cache/errors.js (added)
-
node_modules/make-fetch-happen/lib/cache/index.js (added)
-
node_modules/make-fetch-happen/lib/cache/key.js (added)
-
node_modules/make-fetch-happen/lib/cache/policy.js (added)
-
node_modules/make-fetch-happen/lib/fetch.js (added)
-
node_modules/make-fetch-happen/lib/index.js (added)
-
node_modules/make-fetch-happen/lib/options.js (added)
-
node_modules/make-fetch-happen/lib/remote.js (added)
-
node_modules/make-fetch-happen/package.json (added)
-
node_modules/mimic-response/index.d.ts (added)
-
node_modules/mimic-response/index.js (added)
-
node_modules/mimic-response/license (added)
-
node_modules/mimic-response/package.json (added)
-
node_modules/mimic-response/readme.md (added)
-
node_modules/minimatch/LICENSE.md (added)
-
node_modules/minimatch/README.md (added)
-
node_modules/minimatch/dist/commonjs/assert-valid-pattern.d.ts (added)
-
node_modules/minimatch/dist/commonjs/assert-valid-pattern.d.ts.map (added)
-
node_modules/minimatch/dist/commonjs/assert-valid-pattern.js (added)
-
node_modules/minimatch/dist/commonjs/assert-valid-pattern.js.map (added)
-
node_modules/minimatch/dist/commonjs/ast.d.ts (added)
-
node_modules/minimatch/dist/commonjs/ast.d.ts.map (added)
-
node_modules/minimatch/dist/commonjs/ast.js (added)
-
node_modules/minimatch/dist/commonjs/ast.js.map (added)
-
node_modules/minimatch/dist/commonjs/brace-expressions.d.ts (added)
-
node_modules/minimatch/dist/commonjs/brace-expressions.d.ts.map (added)
-
node_modules/minimatch/dist/commonjs/brace-expressions.js (added)
-
node_modules/minimatch/dist/commonjs/brace-expressions.js.map (added)
-
node_modules/minimatch/dist/commonjs/escape.d.ts (added)
-
node_modules/minimatch/dist/commonjs/escape.d.ts.map (added)
-
node_modules/minimatch/dist/commonjs/escape.js (added)
-
node_modules/minimatch/dist/commonjs/escape.js.map (added)
-
node_modules/minimatch/dist/commonjs/index.d.ts (added)
-
node_modules/minimatch/dist/commonjs/index.d.ts.map (added)
-
node_modules/minimatch/dist/commonjs/index.js (added)
-
node_modules/minimatch/dist/commonjs/index.js.map (added)
-
node_modules/minimatch/dist/commonjs/package.json (added)
-
node_modules/minimatch/dist/commonjs/unescape.d.ts (added)
-
node_modules/minimatch/dist/commonjs/unescape.d.ts.map (added)
-
node_modules/minimatch/dist/commonjs/unescape.js (added)
-
node_modules/minimatch/dist/commonjs/unescape.js.map (added)
-
node_modules/minimatch/dist/esm/assert-valid-pattern.d.ts (added)
-
node_modules/minimatch/dist/esm/assert-valid-pattern.d.ts.map (added)
-
node_modules/minimatch/dist/esm/assert-valid-pattern.js (added)
-
node_modules/minimatch/dist/esm/assert-valid-pattern.js.map (added)
-
node_modules/minimatch/dist/esm/ast.d.ts (added)
-
node_modules/minimatch/dist/esm/ast.d.ts.map (added)
-
node_modules/minimatch/dist/esm/ast.js (added)
-
node_modules/minimatch/dist/esm/ast.js.map (added)
-
node_modules/minimatch/dist/esm/brace-expressions.d.ts (added)
-
node_modules/minimatch/dist/esm/brace-expressions.d.ts.map (added)
-
node_modules/minimatch/dist/esm/brace-expressions.js (added)
-
node_modules/minimatch/dist/esm/brace-expressions.js.map (added)
-
node_modules/minimatch/dist/esm/escape.d.ts (added)
-
node_modules/minimatch/dist/esm/escape.d.ts.map (added)
-
node_modules/minimatch/dist/esm/escape.js (added)
-
node_modules/minimatch/dist/esm/escape.js.map (added)
-
node_modules/minimatch/dist/esm/index.d.ts (added)
-
node_modules/minimatch/dist/esm/index.d.ts.map (added)
-
node_modules/minimatch/dist/esm/index.js (added)
-
node_modules/minimatch/dist/esm/index.js.map (added)
-
node_modules/minimatch/dist/esm/package.json (added)
-
node_modules/minimatch/dist/esm/unescape.d.ts (added)
-
node_modules/minimatch/dist/esm/unescape.d.ts.map (added)
-
node_modules/minimatch/dist/esm/unescape.js (added)
-
node_modules/minimatch/dist/esm/unescape.js.map (added)
-
node_modules/minimatch/package.json (added)
-
node_modules/minimist/.eslintrc (added)
-
node_modules/minimist/.github/FUNDING.yml (added)
-
node_modules/minimist/.nycrc (added)
-
node_modules/minimist/CHANGELOG.md (added)
-
node_modules/minimist/LICENSE (added)
-
node_modules/minimist/README.md (added)
-
node_modules/minimist/example/parse.js (added)
-
node_modules/minimist/index.js (added)
-
node_modules/minimist/package.json (added)
-
node_modules/minimist/test/all_bool.js (added)
-
node_modules/minimist/test/bool.js (added)
-
node_modules/minimist/test/dash.js (added)
-
node_modules/minimist/test/default_bool.js (added)
-
node_modules/minimist/test/dotted.js (added)
-
node_modules/minimist/test/kv_short.js (added)
-
node_modules/minimist/test/long.js (added)
-
node_modules/minimist/test/num.js (added)
-
node_modules/minimist/test/parse.js (added)
-
node_modules/minimist/test/parse_modified.js (added)
-
node_modules/minimist/test/proto.js (added)
-
node_modules/minimist/test/short.js (added)
-
node_modules/minimist/test/stop_early.js (added)
-
node_modules/minimist/test/unknown.js (added)
-
node_modules/minimist/test/whitespace.js (added)
-
node_modules/minipass-collect/LICENSE (added)
-
node_modules/minipass-collect/README.md (added)
-
node_modules/minipass-collect/index.js (added)
-
node_modules/minipass-collect/package.json (added)
-
node_modules/minipass-fetch/LICENSE (added)
-
node_modules/minipass-fetch/README.md (added)
-
node_modules/minipass-fetch/index.js (added)
-
node_modules/minipass-fetch/lib/abort-error.js (added)
-
node_modules/minipass-fetch/lib/blob.js (added)
-
node_modules/minipass-fetch/lib/body.js (added)
-
node_modules/minipass-fetch/lib/fetch-error.js (added)
-
node_modules/minipass-fetch/lib/headers.js (added)
-
node_modules/minipass-fetch/lib/index.js (added)
-
node_modules/minipass-fetch/lib/request.js (added)
-
node_modules/minipass-fetch/lib/response.js (added)
-
node_modules/minipass-fetch/package.json (added)
-
node_modules/minipass-flush/LICENSE (added)
-
node_modules/minipass-flush/README.md (added)
-
node_modules/minipass-flush/index.js (added)
-
node_modules/minipass-flush/package.json (added)
-
node_modules/minipass-pipeline/LICENSE (added)
-
node_modules/minipass-pipeline/README.md (added)
-
node_modules/minipass-pipeline/index.js (added)
-
node_modules/minipass-pipeline/package.json (added)
-
node_modules/minipass-sized/.npmignore (added)
-
node_modules/minipass-sized/LICENSE (added)
-
node_modules/minipass-sized/README.md (added)
-
node_modules/minipass-sized/index.js (added)
-
node_modules/minipass-sized/package-lock.json (added)
-
node_modules/minipass-sized/package.json (added)
-
node_modules/minipass-sized/test/basic.js (added)
-
node_modules/minipass/LICENSE (added)
-
node_modules/minipass/README.md (added)
-
node_modules/minipass/index.d.ts (added)
-
node_modules/minipass/index.js (added)
-
node_modules/minipass/package.json (added)
-
node_modules/minizlib/LICENSE (added)
-
node_modules/minizlib/README.md (added)
-
node_modules/minizlib/constants.js (added)
-
node_modules/minizlib/index.js (added)
-
node_modules/minizlib/package.json (added)
-
node_modules/mkdirp-classic/LICENSE (added)
-
node_modules/mkdirp-classic/README.md (added)
-
node_modules/mkdirp-classic/index.js (added)
-
node_modules/mkdirp-classic/package.json (added)
-
node_modules/mkdirp/CHANGELOG.md (added)
-
node_modules/mkdirp/LICENSE (added)
-
node_modules/mkdirp/index.js (added)
-
node_modules/mkdirp/lib/find-made.js (added)
-
node_modules/mkdirp/lib/mkdirp-manual.js (added)
-
node_modules/mkdirp/lib/mkdirp-native.js (added)
-
node_modules/mkdirp/lib/opts-arg.js (added)
-
node_modules/mkdirp/lib/path-arg.js (added)
-
node_modules/mkdirp/lib/use-native.js (added)
-
node_modules/mkdirp/package.json (added)
-
node_modules/mkdirp/readme.markdown (added)
-
node_modules/ms/index.js (added)
-
node_modules/ms/license.md (added)
-
node_modules/ms/package.json (added)
-
node_modules/ms/readme.md (added)
-
node_modules/napi-build-utils/.github/workflows/run-npm-tests.yml (added)
-
node_modules/napi-build-utils/LICENSE (added)
-
node_modules/napi-build-utils/README.md (added)
-
node_modules/napi-build-utils/index.js (added)
-
node_modules/napi-build-utils/index.md (added)
-
node_modules/napi-build-utils/package.json (added)
-
node_modules/negotiator/HISTORY.md (added)
-
node_modules/negotiator/LICENSE (added)
-
node_modules/negotiator/README.md (added)
-
node_modules/negotiator/index.js (added)
-
node_modules/negotiator/lib/charset.js (added)
-
node_modules/negotiator/lib/encoding.js (added)
-
node_modules/negotiator/lib/language.js (added)
-
node_modules/negotiator/lib/mediaType.js (added)
-
node_modules/negotiator/package.json (added)
-
node_modules/node-abi/LICENSE (added)
-
node_modules/node-abi/README.md (added)
-
node_modules/node-abi/abi_registry.json (added)
-
node_modules/node-abi/index.js (added)
-
node_modules/node-abi/package.json (added)
-
node_modules/node-addon-api/LICENSE.md (added)
-
node_modules/node-addon-api/README.md (added)
-
node_modules/node-addon-api/common.gypi (added)
-
node_modules/node-addon-api/except.gypi (added)
-
node_modules/node-addon-api/index.js (added)
-
node_modules/node-addon-api/napi-inl.deprecated.h (added)
-
node_modules/node-addon-api/napi-inl.h (added)
-
node_modules/node-addon-api/napi.h (added)
-
node_modules/node-addon-api/node_addon_api.gyp (added)
-
node_modules/node-addon-api/node_api.gyp (added)
-
node_modules/node-addon-api/noexcept.gypi (added)
-
node_modules/node-addon-api/nothing.c (added)
-
node_modules/node-addon-api/package-support.json (added)
-
node_modules/node-addon-api/package.json (added)
-
node_modules/node-addon-api/tools/README.md (added)
-
node_modules/node-addon-api/tools/check-napi.js (added)
-
node_modules/node-addon-api/tools/clang-format.js (added)
-
node_modules/node-addon-api/tools/conversion.js (added)
-
node_modules/node-addon-api/tools/eslint-format.js (added)
-
node_modules/node-gyp/.github/ISSUE_TEMPLATE.md (added)
-
node_modules/node-gyp/.github/PULL_REQUEST_TEMPLATE.md (added)
-
node_modules/node-gyp/.github/workflows/release-please.yml (added)
-
node_modules/node-gyp/.github/workflows/tests.yml (added)
-
node_modules/node-gyp/.github/workflows/visual-studio.yml (added)
-
node_modules/node-gyp/CHANGELOG.md (added)
-
node_modules/node-gyp/CONTRIBUTING.md (added)
-
node_modules/node-gyp/LICENSE (added)
-
node_modules/node-gyp/README.md (added)
-
node_modules/node-gyp/addon.gypi (added)
-
node_modules/node-gyp/docs/Common-issues.md (added)
-
node_modules/node-gyp/docs/Error-pre-versions-of-node-cannot-be-installed.md (added)
-
node_modules/node-gyp/docs/Home.md (added)
-
node_modules/node-gyp/docs/Linking-to-OpenSSL.md (added)
-
node_modules/node-gyp/docs/Updating-npm-bundled-node-gyp.md (added)
-
node_modules/node-gyp/docs/binding.gyp-files-in-the-wild.md (added)
-
node_modules/node-gyp/gyp/.flake8 (added)
-
node_modules/node-gyp/gyp/.github/workflows/Python_tests.yml (added)
-
node_modules/node-gyp/gyp/.github/workflows/node-gyp.yml (added)
-
node_modules/node-gyp/gyp/.github/workflows/nodejs-windows.yml (added)
-
node_modules/node-gyp/gyp/.github/workflows/release-please.yml (added)
-
node_modules/node-gyp/gyp/AUTHORS (added)
-
node_modules/node-gyp/gyp/CHANGELOG.md (added)
-
node_modules/node-gyp/gyp/CODE_OF_CONDUCT.md (added)
-
node_modules/node-gyp/gyp/CONTRIBUTING.md (added)
-
node_modules/node-gyp/gyp/LICENSE (added)
-
node_modules/node-gyp/gyp/README.md (added)
-
node_modules/node-gyp/gyp/data/win/large-pdb-shim.cc (added)
-
node_modules/node-gyp/gyp/gyp (added)
-
node_modules/node-gyp/gyp/gyp.bat (added)
-
node_modules/node-gyp/gyp/gyp_main.py (added)
-
node_modules/node-gyp/gyp/pylib/gyp/MSVSNew.py (added)
-
node_modules/node-gyp/gyp/pylib/gyp/MSVSProject.py (added)
-
node_modules/node-gyp/gyp/pylib/gyp/MSVSSettings.py (added)
-
node_modules/node-gyp/gyp/pylib/gyp/MSVSSettings_test.py (added)
-
node_modules/node-gyp/gyp/pylib/gyp/MSVSToolFile.py (added)
-
node_modules/node-gyp/gyp/pylib/gyp/MSVSUserFile.py (added)
-
node_modules/node-gyp/gyp/pylib/gyp/MSVSUtil.py (added)
-
node_modules/node-gyp/gyp/pylib/gyp/MSVSVersion.py (added)
-
node_modules/node-gyp/gyp/pylib/gyp/__init__.py (added)
-
node_modules/node-gyp/gyp/pylib/gyp/common.py (added)
-
node_modules/node-gyp/gyp/pylib/gyp/common_test.py (added)
-
node_modules/node-gyp/gyp/pylib/gyp/easy_xml.py (added)
-
node_modules/node-gyp/gyp/pylib/gyp/easy_xml_test.py (added)
-
node_modules/node-gyp/gyp/pylib/gyp/flock_tool.py (added)
-
node_modules/node-gyp/gyp/pylib/gyp/generator/__init__.py (added)
-
node_modules/node-gyp/gyp/pylib/gyp/generator/analyzer.py (added)
-
node_modules/node-gyp/gyp/pylib/gyp/generator/android.py (added)
-
node_modules/node-gyp/gyp/pylib/gyp/generator/cmake.py (added)
-
node_modules/node-gyp/gyp/pylib/gyp/generator/compile_commands_json.py (added)
-
node_modules/node-gyp/gyp/pylib/gyp/generator/dump_dependency_json.py (added)
-
node_modules/node-gyp/gyp/pylib/gyp/generator/eclipse.py (added)
-
node_modules/node-gyp/gyp/pylib/gyp/generator/gypd.py (added)
-
node_modules/node-gyp/gyp/pylib/gyp/generator/gypsh.py (added)
-
node_modules/node-gyp/gyp/pylib/gyp/generator/make.py (added)
-
node_modules/node-gyp/gyp/pylib/gyp/generator/msvs.py (added)
-
node_modules/node-gyp/gyp/pylib/gyp/generator/msvs_test.py (added)
-
node_modules/node-gyp/gyp/pylib/gyp/generator/ninja.py (added)
-
node_modules/node-gyp/gyp/pylib/gyp/generator/ninja_test.py (added)
-
node_modules/node-gyp/gyp/pylib/gyp/generator/xcode.py (added)
-
node_modules/node-gyp/gyp/pylib/gyp/generator/xcode_test.py (added)
-
node_modules/node-gyp/gyp/pylib/gyp/input.py (added)
-
node_modules/node-gyp/gyp/pylib/gyp/input_test.py (added)
-
node_modules/node-gyp/gyp/pylib/gyp/mac_tool.py (added)
-
node_modules/node-gyp/gyp/pylib/gyp/msvs_emulation.py (added)
-
node_modules/node-gyp/gyp/pylib/gyp/ninja_syntax.py (added)
-
node_modules/node-gyp/gyp/pylib/gyp/simple_copy.py (added)
-
node_modules/node-gyp/gyp/pylib/gyp/win_tool.py (added)
-
node_modules/node-gyp/gyp/pylib/gyp/xcode_emulation.py (added)
-
node_modules/node-gyp/gyp/pylib/gyp/xcode_ninja.py (added)
-
node_modules/node-gyp/gyp/pylib/gyp/xcodeproj_file.py (added)
-
node_modules/node-gyp/gyp/pylib/gyp/xml_fix.py (added)
-
node_modules/node-gyp/gyp/requirements_dev.txt (added)
-
node_modules/node-gyp/gyp/setup.py (added)
-
node_modules/node-gyp/gyp/test_gyp.py (added)
-
node_modules/node-gyp/gyp/tools/README (added)
-
node_modules/node-gyp/gyp/tools/Xcode/README (added)
-
node_modules/node-gyp/gyp/tools/Xcode/Specifications/gyp.pbfilespec (added)
-
node_modules/node-gyp/gyp/tools/Xcode/Specifications/gyp.xclangspec (added)
-
node_modules/node-gyp/gyp/tools/emacs/README (added)
-
node_modules/node-gyp/gyp/tools/emacs/gyp-tests.el (added)
-
node_modules/node-gyp/gyp/tools/emacs/gyp.el (added)
-
node_modules/node-gyp/gyp/tools/emacs/run-unit-tests.sh (added)
-
node_modules/node-gyp/gyp/tools/emacs/testdata/media.gyp (added)
-
node_modules/node-gyp/gyp/tools/emacs/testdata/media.gyp.fontified (added)
-
node_modules/node-gyp/gyp/tools/graphviz.py (added)
-
node_modules/node-gyp/gyp/tools/pretty_gyp.py (added)
-
node_modules/node-gyp/gyp/tools/pretty_sln.py (added)
-
node_modules/node-gyp/gyp/tools/pretty_vcproj.py (added)
-
node_modules/node-gyp/lib/Find-VisualStudio.cs (added)
-
node_modules/node-gyp/lib/build.js (added)
-
node_modules/node-gyp/lib/clean.js (added)
-
node_modules/node-gyp/lib/configure.js (added)
-
node_modules/node-gyp/lib/create-config-gypi.js (added)
-
node_modules/node-gyp/lib/find-node-directory.js (added)
-
node_modules/node-gyp/lib/find-python.js (added)
-
node_modules/node-gyp/lib/find-visualstudio.js (added)
-
node_modules/node-gyp/lib/install.js (added)
-
node_modules/node-gyp/lib/list.js (added)
-
node_modules/node-gyp/lib/node-gyp.js (added)
-
node_modules/node-gyp/lib/process-release.js (added)
-
node_modules/node-gyp/lib/rebuild.js (added)
-
node_modules/node-gyp/lib/remove.js (added)
-
node_modules/node-gyp/lib/util.js (added)
-
node_modules/node-gyp/macOS_Catalina.md (added)
-
node_modules/node-gyp/macOS_Catalina_acid_test.sh (added)
-
node_modules/node-gyp/package.json (added)
-
node_modules/node-gyp/src/win_delay_load_hook.cc (added)
-
node_modules/node-gyp/test/common.js (added)
-
node_modules/node-gyp/test/fixtures/VS_2017_BuildTools_minimal.txt (added)
-
node_modules/node-gyp/test/fixtures/VS_2017_Community_workload.txt (added)
-
node_modules/node-gyp/test/fixtures/VS_2017_Express.txt (added)
-
node_modules/node-gyp/test/fixtures/VS_2017_Unusable.txt (added)
-
node_modules/node-gyp/test/fixtures/VS_2019_BuildTools_minimal.txt (added)
-
node_modules/node-gyp/test/fixtures/VS_2019_Community_workload.txt (added)
-
node_modules/node-gyp/test/fixtures/VS_2019_Preview.txt (added)
-
node_modules/node-gyp/test/fixtures/ca-bundle.crt (added)
-
node_modules/node-gyp/test/fixtures/ca.crt (added)
-
node_modules/node-gyp/test/fixtures/nodedir/include/node/config.gypi (added)
-
node_modules/node-gyp/test/fixtures/server.crt (added)
-
node_modules/node-gyp/test/fixtures/server.key (added)
-
node_modules/node-gyp/test/fixtures/test-charmap.py (added)
-
node_modules/node-gyp/test/process-exec-sync.js (added)
-
node_modules/node-gyp/test/simple-proxy.js (added)
-
node_modules/node-gyp/test/test-addon.js (added)
-
node_modules/node-gyp/test/test-configure-python.js (added)
-
node_modules/node-gyp/test/test-create-config-gypi.js (added)
-
node_modules/node-gyp/test/test-download.js (added)
-
node_modules/node-gyp/test/test-find-accessible-sync.js (added)
-
node_modules/node-gyp/test/test-find-node-directory.js (added)
-
node_modules/node-gyp/test/test-find-python.js (added)
-
node_modules/node-gyp/test/test-find-visualstudio.js (added)
-
node_modules/node-gyp/test/test-install.js (added)
-
node_modules/node-gyp/test/test-options.js (added)
-
node_modules/node-gyp/test/test-process-release.js (added)
-
node_modules/node-gyp/update-gyp.py (added)
-
node_modules/nodemailer/.gitattributes (added)
-
node_modules/nodemailer/.ncurc.js (added)
-
node_modules/nodemailer/.prettierrc.js (added)
-
node_modules/nodemailer/CHANGELOG.md (added)
-
node_modules/nodemailer/CODE_OF_CONDUCT.md (added)
-
node_modules/nodemailer/LICENSE (added)
-
node_modules/nodemailer/README.md (added)
-
node_modules/nodemailer/SECURITY.txt (added)
-
node_modules/nodemailer/lib/addressparser/index.js (added)
-
node_modules/nodemailer/lib/base64/index.js (added)
-
node_modules/nodemailer/lib/dkim/index.js (added)
-
node_modules/nodemailer/lib/dkim/message-parser.js (added)
-
node_modules/nodemailer/lib/dkim/relaxed-body.js (added)
-
node_modules/nodemailer/lib/dkim/sign.js (added)
-
node_modules/nodemailer/lib/fetch/cookies.js (added)
-
node_modules/nodemailer/lib/fetch/index.js (added)
-
node_modules/nodemailer/lib/json-transport/index.js (added)
-
node_modules/nodemailer/lib/mail-composer/index.js (added)
-
node_modules/nodemailer/lib/mailer/index.js (added)
-
node_modules/nodemailer/lib/mailer/mail-message.js (added)
-
node_modules/nodemailer/lib/mime-funcs/index.js (added)
-
node_modules/nodemailer/lib/mime-funcs/mime-types.js (added)
-
node_modules/nodemailer/lib/mime-node/index.js (added)
-
node_modules/nodemailer/lib/mime-node/last-newline.js (added)
-
node_modules/nodemailer/lib/mime-node/le-unix.js (added)
-
node_modules/nodemailer/lib/mime-node/le-windows.js (added)
-
node_modules/nodemailer/lib/nodemailer.js (added)
-
node_modules/nodemailer/lib/punycode/index.js (added)
-
node_modules/nodemailer/lib/qp/index.js (added)
-
node_modules/nodemailer/lib/sendmail-transport/index.js (added)
-
node_modules/nodemailer/lib/ses-transport/index.js (added)
-
node_modules/nodemailer/lib/shared/index.js (added)
-
node_modules/nodemailer/lib/smtp-connection/data-stream.js (added)
-
node_modules/nodemailer/lib/smtp-connection/http-proxy-client.js (added)
-
node_modules/nodemailer/lib/smtp-connection/index.js (added)
-
node_modules/nodemailer/lib/smtp-pool/index.js (added)
-
node_modules/nodemailer/lib/smtp-pool/pool-resource.js (added)
-
node_modules/nodemailer/lib/smtp-transport/index.js (added)
-
node_modules/nodemailer/lib/stream-transport/index.js (added)
-
node_modules/nodemailer/lib/well-known/index.js (added)
-
node_modules/nodemailer/lib/well-known/services.json (added)
-
node_modules/nodemailer/lib/xoauth2/index.js (added)
-
node_modules/nodemailer/package.json (added)
-
node_modules/nodemon/.prettierrc.json (added)
-
node_modules/nodemon/LICENSE (added)
-
node_modules/nodemon/README.md (added)
-
node_modules/nodemon/doc/cli/authors.txt (added)
-
node_modules/nodemon/doc/cli/config.txt (added)
-
node_modules/nodemon/doc/cli/help.txt (added)
-
node_modules/nodemon/doc/cli/logo.txt (added)
-
node_modules/nodemon/doc/cli/options.txt (added)
-
node_modules/nodemon/doc/cli/topics.txt (added)
-
node_modules/nodemon/doc/cli/usage.txt (added)
-
node_modules/nodemon/doc/cli/whoami.txt (added)
-
node_modules/nodemon/index.d.ts (added)
-
node_modules/nodemon/jsconfig.json (added)
-
node_modules/nodemon/lib/cli/index.js (added)
-
node_modules/nodemon/lib/cli/parse.js (added)
-
node_modules/nodemon/lib/config/command.js (added)
-
node_modules/nodemon/lib/config/defaults.js (added)
-
node_modules/nodemon/lib/config/exec.js (added)
-
node_modules/nodemon/lib/config/index.js (added)
-
node_modules/nodemon/lib/config/load.js (added)
-
node_modules/nodemon/lib/help/index.js (added)
-
node_modules/nodemon/lib/index.js (added)
-
node_modules/nodemon/lib/monitor/index.js (added)
-
node_modules/nodemon/lib/monitor/match.js (added)
-
node_modules/nodemon/lib/monitor/run.js (added)
-
node_modules/nodemon/lib/monitor/signals.js (added)
-
node_modules/nodemon/lib/monitor/watch.js (added)
-
node_modules/nodemon/lib/nodemon.js (added)
-
node_modules/nodemon/lib/rules/add.js (added)
-
node_modules/nodemon/lib/rules/index.js (added)
-
node_modules/nodemon/lib/rules/parse.js (added)
-
node_modules/nodemon/lib/spawn.js (added)
-
node_modules/nodemon/lib/utils/bus.js (added)
-
node_modules/nodemon/lib/utils/clone.js (added)
-
node_modules/nodemon/lib/utils/colour.js (added)
-
node_modules/nodemon/lib/utils/index.js (added)
-
node_modules/nodemon/lib/utils/log.js (added)
-
node_modules/nodemon/lib/utils/merge.js (added)
-
node_modules/nodemon/lib/version.js (added)
-
node_modules/nodemon/package.json (added)
-
node_modules/nopt/CHANGELOG.md (added)
-
node_modules/nopt/LICENSE (added)
-
node_modules/nopt/README.md (added)
-
node_modules/nopt/lib/nopt.js (added)
-
node_modules/nopt/package.json (added)
-
node_modules/normalize-path/LICENSE (added)
-
node_modules/normalize-path/README.md (added)
-
node_modules/normalize-path/index.js (added)
-
node_modules/normalize-path/package.json (added)
-
node_modules/npmlog/LICENSE.md (added)
-
node_modules/npmlog/README.md (added)
-
node_modules/npmlog/lib/log.js (added)
-
node_modules/npmlog/package.json (added)
-
node_modules/once/LICENSE (added)
-
node_modules/once/README.md (added)
-
node_modules/once/once.js (added)
-
node_modules/once/package.json (added)
-
node_modules/p-map/index.d.ts (added)
-
node_modules/p-map/index.js (added)
-
node_modules/p-map/license (added)
-
node_modules/p-map/package.json (added)
-
node_modules/p-map/readme.md (added)
-
node_modules/path-is-absolute/index.js (added)
-
node_modules/path-is-absolute/license (added)
-
node_modules/path-is-absolute/package.json (added)
-
node_modules/path-is-absolute/readme.md (added)
-
node_modules/picomatch/CHANGELOG.md (added)
-
node_modules/picomatch/LICENSE (added)
-
node_modules/picomatch/README.md (added)
-
node_modules/picomatch/index.js (added)
-
node_modules/picomatch/lib/constants.js (added)
-
node_modules/picomatch/lib/parse.js (added)
-
node_modules/picomatch/lib/picomatch.js (added)
-
node_modules/picomatch/lib/scan.js (added)
-
node_modules/picomatch/lib/utils.js (added)
-
node_modules/picomatch/package.json (added)
-
node_modules/prebuild-install/CHANGELOG.md (added)
-
node_modules/prebuild-install/CONTRIBUTING.md (added)
-
node_modules/prebuild-install/LICENSE (added)
-
node_modules/prebuild-install/README.md (added)
-
node_modules/prebuild-install/asset.js (added)
-
node_modules/prebuild-install/bin.js (added)
-
node_modules/prebuild-install/download.js (added)
-
node_modules/prebuild-install/error.js (added)
-
node_modules/prebuild-install/help.txt (added)
-
node_modules/prebuild-install/index.js (added)
-
node_modules/prebuild-install/log.js (added)
-
node_modules/prebuild-install/package.json (added)
-
node_modules/prebuild-install/proxy.js (added)
-
node_modules/prebuild-install/rc.js (added)
-
node_modules/prebuild-install/util.js (added)
-
node_modules/promise-inflight/LICENSE (added)
-
node_modules/promise-inflight/README.md (added)
-
node_modules/promise-inflight/inflight.js (added)
-
node_modules/promise-inflight/package.json (added)
-
node_modules/promise-retry/.editorconfig (added)
-
node_modules/promise-retry/.jshintrc (added)
-
node_modules/promise-retry/.travis.yml (added)
-
node_modules/promise-retry/LICENSE (added)
-
node_modules/promise-retry/README.md (added)
-
node_modules/promise-retry/index.js (added)
-
node_modules/promise-retry/package.json (added)
-
node_modules/promise-retry/test/test.js (added)
-
node_modules/pstree.remy/.travis.yml (added)
-
node_modules/pstree.remy/LICENSE (added)
-
node_modules/pstree.remy/README.md (added)
-
node_modules/pstree.remy/lib/index.js (added)
-
node_modules/pstree.remy/lib/tree.js (added)
-
node_modules/pstree.remy/lib/utils.js (added)
-
node_modules/pstree.remy/package.json (added)
-
node_modules/pstree.remy/tests/fixtures/index.js (added)
-
node_modules/pstree.remy/tests/fixtures/out1 (added)
-
node_modules/pstree.remy/tests/fixtures/out2 (added)
-
node_modules/pstree.remy/tests/index.test.js (added)
-
node_modules/pump/.github/FUNDING.yml (added)
-
node_modules/pump/.travis.yml (added)
-
node_modules/pump/LICENSE (added)
-
node_modules/pump/README.md (added)
-
node_modules/pump/SECURITY.md (added)
-
node_modules/pump/index.js (added)
-
node_modules/pump/package.json (added)
-
node_modules/pump/test-browser.js (added)
-
node_modules/pump/test-node.js (added)
-
node_modules/rc/LICENSE.APACHE2 (added)
-
node_modules/rc/LICENSE.BSD (added)
-
node_modules/rc/LICENSE.MIT (added)
-
node_modules/rc/README.md (added)
-
node_modules/rc/browser.js (added)
-
node_modules/rc/cli.js (added)
-
node_modules/rc/index.js (added)
-
node_modules/rc/lib/utils.js (added)
-
node_modules/rc/package.json (added)
-
node_modules/rc/test/ini.js (added)
-
node_modules/rc/test/nested-env-vars.js (added)
-
node_modules/rc/test/test.js (added)
-
node_modules/readable-stream/CONTRIBUTING.md (added)
-
node_modules/readable-stream/GOVERNANCE.md (added)
-
node_modules/readable-stream/LICENSE (added)
-
node_modules/readable-stream/README.md (added)
-
node_modules/readable-stream/errors-browser.js (added)
-
node_modules/readable-stream/errors.js (added)
-
node_modules/readable-stream/experimentalWarning.js (added)
-
node_modules/readable-stream/lib/_stream_duplex.js (added)
-
node_modules/readable-stream/lib/_stream_passthrough.js (added)
-
node_modules/readable-stream/lib/_stream_readable.js (added)
-
node_modules/readable-stream/lib/_stream_transform.js (added)
-
node_modules/readable-stream/lib/_stream_writable.js (added)
-
node_modules/readable-stream/lib/internal/streams/async_iterator.js (added)
-
node_modules/readable-stream/lib/internal/streams/buffer_list.js (added)
-
node_modules/readable-stream/lib/internal/streams/destroy.js (added)
-
node_modules/readable-stream/lib/internal/streams/end-of-stream.js (added)
-
node_modules/readable-stream/lib/internal/streams/from-browser.js (added)
-
node_modules/readable-stream/lib/internal/streams/from.js (added)
-
node_modules/readable-stream/lib/internal/streams/pipeline.js (added)
-
node_modules/readable-stream/lib/internal/streams/state.js (added)
-
node_modules/readable-stream/lib/internal/streams/stream-browser.js (added)
-
node_modules/readable-stream/lib/internal/streams/stream.js (added)
-
node_modules/readable-stream/package.json (added)
-
node_modules/readable-stream/readable-browser.js (added)
-
node_modules/readable-stream/readable.js (added)
-
node_modules/readdirp/LICENSE (added)
-
node_modules/readdirp/README.md (added)
-
node_modules/readdirp/index.d.ts (added)
-
node_modules/readdirp/index.js (added)
-
node_modules/readdirp/package.json (added)
-
node_modules/retry/.npmignore (added)
-
node_modules/retry/.travis.yml (added)
-
node_modules/retry/License (added)
-
node_modules/retry/Makefile (added)
-
node_modules/retry/README.md (added)
-
node_modules/retry/equation.gif (added)
-
node_modules/retry/example/dns.js (added)
-
node_modules/retry/example/stop.js (added)
-
node_modules/retry/index.js (added)
-
node_modules/retry/lib/retry.js (added)
-
node_modules/retry/lib/retry_operation.js (added)
-
node_modules/retry/package.json (added)
-
node_modules/retry/test/common.js (added)
-
node_modules/retry/test/integration/test-forever.js (added)
-
node_modules/retry/test/integration/test-retry-operation.js (added)
-
node_modules/retry/test/integration/test-retry-wrap.js (added)
-
node_modules/retry/test/integration/test-timeouts.js (added)
-
node_modules/rimraf/CHANGELOG.md (added)
-
node_modules/rimraf/LICENSE (added)
-
node_modules/rimraf/README.md (added)
-
node_modules/rimraf/bin.js (added)
-
node_modules/rimraf/package.json (added)
-
node_modules/rimraf/rimraf.js (added)
-
node_modules/safe-buffer/LICENSE (added)
-
node_modules/safe-buffer/README.md (added)
-
node_modules/safe-buffer/index.d.ts (added)
-
node_modules/safe-buffer/index.js (added)
-
node_modules/safe-buffer/package.json (added)
-
node_modules/safer-buffer/LICENSE (added)
-
node_modules/safer-buffer/Porting-Buffer.md (added)
-
node_modules/safer-buffer/Readme.md (added)
-
node_modules/safer-buffer/dangerous.js (added)
-
node_modules/safer-buffer/package.json (added)
-
node_modules/safer-buffer/safer.js (added)
-
node_modules/safer-buffer/tests.js (added)
-
node_modules/semver/LICENSE (added)
-
node_modules/semver/README.md (added)
-
node_modules/semver/classes/comparator.js (added)
-
node_modules/semver/classes/index.js (added)
-
node_modules/semver/classes/range.js (added)
-
node_modules/semver/classes/semver.js (added)
-
node_modules/semver/functions/clean.js (added)
-
node_modules/semver/functions/cmp.js (added)
-
node_modules/semver/functions/coerce.js (added)
-
node_modules/semver/functions/compare-build.js (added)
-
node_modules/semver/functions/compare-loose.js (added)
-
node_modules/semver/functions/compare.js (added)
-
node_modules/semver/functions/diff.js (added)
-
node_modules/semver/functions/eq.js (added)
-
node_modules/semver/functions/gt.js (added)
-
node_modules/semver/functions/gte.js (added)
-
node_modules/semver/functions/inc.js (added)
-
node_modules/semver/functions/lt.js (added)
-
node_modules/semver/functions/lte.js (added)
-
node_modules/semver/functions/major.js (added)
-
node_modules/semver/functions/minor.js (added)
-
node_modules/semver/functions/neq.js (added)
-
node_modules/semver/functions/parse.js (added)
-
node_modules/semver/functions/patch.js (added)
-
node_modules/semver/functions/prerelease.js (added)
-
node_modules/semver/functions/rcompare.js (added)
-
node_modules/semver/functions/rsort.js (added)
-
node_modules/semver/functions/satisfies.js (added)
-
node_modules/semver/functions/sort.js (added)
-
node_modules/semver/functions/valid.js (added)
-
node_modules/semver/index.js (added)
-
node_modules/semver/internal/constants.js (added)
-
node_modules/semver/internal/debug.js (added)
-
node_modules/semver/internal/identifiers.js (added)
-
node_modules/semver/internal/lrucache.js (added)
-
node_modules/semver/internal/parse-options.js (added)
-
node_modules/semver/internal/re.js (added)
-
node_modules/semver/package.json (added)
-
node_modules/semver/preload.js (added)
-
node_modules/semver/range.bnf (added)
-
node_modules/semver/ranges/gtr.js (added)
-
node_modules/semver/ranges/intersects.js (added)
-
node_modules/semver/ranges/ltr.js (added)
-
node_modules/semver/ranges/max-satisfying.js (added)
-
node_modules/semver/ranges/min-satisfying.js (added)
-
node_modules/semver/ranges/min-version.js (added)
-
node_modules/semver/ranges/outside.js (added)
-
node_modules/semver/ranges/simplify.js (added)
-
node_modules/semver/ranges/subset.js (added)
-
node_modules/semver/ranges/to-comparators.js (added)
-
node_modules/semver/ranges/valid.js (added)
-
node_modules/set-blocking/CHANGELOG.md (added)
-
node_modules/set-blocking/LICENSE.txt (added)
-
node_modules/set-blocking/README.md (added)
-
node_modules/set-blocking/index.js (added)
-
node_modules/set-blocking/package.json (added)
-
node_modules/signal-exit/LICENSE.txt (added)
-
node_modules/signal-exit/README.md (added)
-
node_modules/signal-exit/index.js (added)
-
node_modules/signal-exit/package.json (added)
-
node_modules/signal-exit/signals.js (added)
-
node_modules/simple-concat/.travis.yml (added)
-
node_modules/simple-concat/LICENSE (added)
-
node_modules/simple-concat/README.md (added)
-
node_modules/simple-concat/index.js (added)
-
node_modules/simple-concat/package.json (added)
-
node_modules/simple-concat/test/basic.js (added)
-
node_modules/simple-get/.github/dependabot.yml (added)
-
node_modules/simple-get/.github/workflows/ci.yml (added)
-
node_modules/simple-get/LICENSE (added)
-
node_modules/simple-get/README.md (added)
-
node_modules/simple-get/index.js (added)
-
node_modules/simple-get/package.json (added)
-
node_modules/simple-update-notifier/LICENSE (added)
-
node_modules/simple-update-notifier/README.md (added)
-
node_modules/simple-update-notifier/build/index.d.ts (added)
-
node_modules/simple-update-notifier/build/index.js (added)
-
node_modules/simple-update-notifier/package.json (added)
-
node_modules/simple-update-notifier/src/borderedText.ts (added)
-
node_modules/simple-update-notifier/src/cache.spec.ts (added)
-
node_modules/simple-update-notifier/src/cache.ts (added)
-
node_modules/simple-update-notifier/src/getDistVersion.spec.ts (added)
-
node_modules/simple-update-notifier/src/getDistVersion.ts (added)
-
node_modules/simple-update-notifier/src/hasNewVersion.spec.ts (added)
-
node_modules/simple-update-notifier/src/hasNewVersion.ts (added)
-
node_modules/simple-update-notifier/src/index.spec.ts (added)
-
node_modules/simple-update-notifier/src/index.ts (added)
-
node_modules/simple-update-notifier/src/isNpmOrYarn.ts (added)
-
node_modules/simple-update-notifier/src/types.ts (added)
-
node_modules/smart-buffer/.prettierrc.yaml (added)
-
node_modules/smart-buffer/.travis.yml (added)
-
node_modules/smart-buffer/LICENSE (added)
-
node_modules/smart-buffer/README.md (added)
-
node_modules/smart-buffer/build/smartbuffer.js (added)
-
node_modules/smart-buffer/build/smartbuffer.js.map (added)
-
node_modules/smart-buffer/build/utils.js (added)
-
node_modules/smart-buffer/build/utils.js.map (added)
-
node_modules/smart-buffer/docs/CHANGELOG.md (added)
-
node_modules/smart-buffer/docs/README_v3.md (added)
-
node_modules/smart-buffer/docs/ROADMAP.md (added)
-
node_modules/smart-buffer/package.json (added)
-
node_modules/smart-buffer/typings/smartbuffer.d.ts (added)
-
node_modules/smart-buffer/typings/utils.d.ts (added)
-
node_modules/socks-proxy-agent/README.md (added)
-
node_modules/socks-proxy-agent/dist/index.d.ts (added)
-
node_modules/socks-proxy-agent/dist/index.js (added)
-
node_modules/socks-proxy-agent/dist/index.js.map (added)
-
node_modules/socks-proxy-agent/package.json (added)
-
node_modules/socks/.eslintrc.cjs (added)
-
node_modules/socks/.prettierrc.yaml (added)
-
node_modules/socks/LICENSE (added)
-
node_modules/socks/README.md (added)
-
node_modules/socks/build/client/socksclient.js (added)
-
node_modules/socks/build/client/socksclient.js.map (added)
-
node_modules/socks/build/common/constants.js (added)
-
node_modules/socks/build/common/constants.js.map (added)
-
node_modules/socks/build/common/helpers.js (added)
-
node_modules/socks/build/common/helpers.js.map (added)
-
node_modules/socks/build/common/receivebuffer.js (added)
-
node_modules/socks/build/common/receivebuffer.js.map (added)
-
node_modules/socks/build/common/util.js (added)
-
node_modules/socks/build/common/util.js.map (added)
-
node_modules/socks/build/index.js (added)
-
node_modules/socks/build/index.js.map (added)
-
node_modules/socks/docs/examples/index.md (added)
-
node_modules/socks/docs/examples/javascript/associateExample.md (added)
-
node_modules/socks/docs/examples/javascript/bindExample.md (added)
-
node_modules/socks/docs/examples/javascript/connectExample.md (added)
-
node_modules/socks/docs/examples/typescript/associateExample.md (added)
-
node_modules/socks/docs/examples/typescript/bindExample.md (added)
-
node_modules/socks/docs/examples/typescript/connectExample.md (added)
-
node_modules/socks/docs/index.md (added)
-
node_modules/socks/docs/migratingFromV1.md (added)
-
node_modules/socks/package.json (added)
-
node_modules/socks/typings/client/socksclient.d.ts (added)
-
node_modules/socks/typings/common/constants.d.ts (added)
-
node_modules/socks/typings/common/helpers.d.ts (added)
-
node_modules/socks/typings/common/receivebuffer.d.ts (added)
-
node_modules/socks/typings/common/util.d.ts (added)
-
node_modules/socks/typings/index.d.ts (added)
-
node_modules/sqlite3/LICENSE (added)
-
node_modules/sqlite3/README.md (added)
-
node_modules/sqlite3/binding.gyp (added)
-
node_modules/sqlite3/build/Release/node_sqlite3.node (added)
-
node_modules/sqlite3/deps/common-sqlite.gypi (added)
-
node_modules/sqlite3/deps/extract.js (added)
-
node_modules/sqlite3/deps/sqlite-autoconf-3440200.tar.gz (added)
-
node_modules/sqlite3/deps/sqlite3.gyp (added)
-
node_modules/sqlite3/lib/sqlite3-binding.js (added)
-
node_modules/sqlite3/lib/sqlite3.d.ts (added)
-
node_modules/sqlite3/lib/sqlite3.js (added)
-
node_modules/sqlite3/lib/trace.js (added)
-
node_modules/sqlite3/package.json (added)
-
node_modules/sqlite3/src/async.h (added)
-
node_modules/sqlite3/src/backup.cc (added)
-
node_modules/sqlite3/src/backup.h (added)
-
node_modules/sqlite3/src/database.cc (added)
-
node_modules/sqlite3/src/database.h (added)
-
node_modules/sqlite3/src/gcc-preinclude.h (added)
-
node_modules/sqlite3/src/macros.h (added)
-
node_modules/sqlite3/src/node_sqlite3.cc (added)
-
node_modules/sqlite3/src/statement.cc (added)
-
node_modules/sqlite3/src/statement.h (added)
-
node_modules/sqlite3/src/threading.h (added)
-
node_modules/ssri/CHANGELOG.md (added)
-
node_modules/ssri/LICENSE.md (added)
-
node_modules/ssri/README.md (added)
-
node_modules/ssri/index.js (added)
-
node_modules/ssri/package.json (added)
-
node_modules/string-width/index.d.ts (added)
-
node_modules/string-width/index.js (added)
-
node_modules/string-width/license (added)
-
node_modules/string-width/package.json (added)
-
node_modules/string-width/readme.md (added)
-
node_modules/string_decoder/LICENSE (added)
-
node_modules/string_decoder/README.md (added)
-
node_modules/string_decoder/lib/string_decoder.js (added)
-
node_modules/string_decoder/package.json (added)
-
node_modules/strip-ansi/index.d.ts (added)
-
node_modules/strip-ansi/index.js (added)
-
node_modules/strip-ansi/license (added)
-
node_modules/strip-ansi/package.json (added)
-
node_modules/strip-ansi/readme.md (added)
-
node_modules/strip-json-comments/index.js (added)
-
node_modules/strip-json-comments/license (added)
-
node_modules/strip-json-comments/package.json (added)
-
node_modules/strip-json-comments/readme.md (added)
-
node_modules/supports-color/browser.js (added)
-
node_modules/supports-color/index.js (added)
-
node_modules/supports-color/license (added)
-
node_modules/supports-color/package.json (added)
-
node_modules/supports-color/readme.md (added)
-
node_modules/tar-fs/.travis.yml (added)
-
node_modules/tar-fs/LICENSE (added)
-
node_modules/tar-fs/README.md (added)
-
node_modules/tar-fs/index.js (added)
-
node_modules/tar-fs/node_modules/chownr/LICENSE (added)
-
node_modules/tar-fs/node_modules/chownr/README.md (added)
-
node_modules/tar-fs/node_modules/chownr/chownr.js (added)
-
node_modules/tar-fs/node_modules/chownr/package.json (added)
-
node_modules/tar-fs/package.json (added)
-
node_modules/tar-fs/test/fixtures/a/hello.txt (added)
-
node_modules/tar-fs/test/fixtures/b/a/test.txt (added)
-
node_modules/tar-fs/test/fixtures/d/file1 (added)
-
node_modules/tar-fs/test/fixtures/d/file2 (added)
-
node_modules/tar-fs/test/fixtures/d/sub-dir/file5 (added)
-
node_modules/tar-fs/test/fixtures/d/sub-files/file3 (added)
-
node_modules/tar-fs/test/fixtures/d/sub-files/file4 (added)
-
node_modules/tar-fs/test/fixtures/e/directory/.ignore (added)
-
node_modules/tar-fs/test/fixtures/e/file (added)
-
node_modules/tar-fs/test/fixtures/invalid.tar (added)
-
node_modules/tar-fs/test/index.js (added)
-
node_modules/tar-stream/LICENSE (added)
-
node_modules/tar-stream/README.md (added)
-
node_modules/tar-stream/extract.js (added)
-
node_modules/tar-stream/headers.js (added)
-
node_modules/tar-stream/index.js (added)
-
node_modules/tar-stream/pack.js (added)
-
node_modules/tar-stream/package.json (added)
-
node_modules/tar-stream/sandbox.js (added)
-
node_modules/tar/LICENSE (added)
-
node_modules/tar/README.md (added)
-
node_modules/tar/index.js (added)
-
node_modules/tar/lib/create.js (added)
-
node_modules/tar/lib/extract.js (added)
-
node_modules/tar/lib/get-write-flag.js (added)
-
node_modules/tar/lib/header.js (added)
-
node_modules/tar/lib/high-level-opt.js (added)
-
node_modules/tar/lib/large-numbers.js (added)
-
node_modules/tar/lib/list.js (added)
-
node_modules/tar/lib/mkdir.js (added)
-
node_modules/tar/lib/mode-fix.js (added)
-
node_modules/tar/lib/normalize-unicode.js (added)
-
node_modules/tar/lib/normalize-windows-path.js (added)
-
node_modules/tar/lib/pack.js (added)
-
node_modules/tar/lib/parse.js (added)
-
node_modules/tar/lib/path-reservations.js (added)
-
node_modules/tar/lib/pax.js (added)
-
node_modules/tar/lib/read-entry.js (added)
-
node_modules/tar/lib/replace.js (added)
-
node_modules/tar/lib/strip-absolute-path.js (added)
-
node_modules/tar/lib/strip-trailing-slashes.js (added)
-
node_modules/tar/lib/types.js (added)
-
node_modules/tar/lib/unpack.js (added)
-
node_modules/tar/lib/update.js (added)
-
node_modules/tar/lib/warn-mixin.js (added)
-
node_modules/tar/lib/winchars.js (added)
-
node_modules/tar/lib/write-entry.js (added)
-
node_modules/tar/node_modules/minipass/LICENSE (added)
-
node_modules/tar/node_modules/minipass/README.md (added)
-
node_modules/tar/node_modules/minipass/index.d.ts (added)
-
node_modules/tar/node_modules/minipass/index.js (added)
-
node_modules/tar/node_modules/minipass/index.mjs (added)
-
node_modules/tar/node_modules/minipass/package.json (added)
-
node_modules/tar/package.json (added)
-
node_modules/to-regex-range/LICENSE (added)
-
node_modules/to-regex-range/README.md (added)
-
node_modules/to-regex-range/index.js (added)
-
node_modules/to-regex-range/package.json (added)
-
node_modules/touch/LICENSE (added)
-
node_modules/touch/README.md (added)
-
node_modules/touch/index.js (added)
-
node_modules/touch/package.json (added)
-
node_modules/tunnel-agent/LICENSE (added)
-
node_modules/tunnel-agent/README.md (added)
-
node_modules/tunnel-agent/index.js (added)
-
node_modules/tunnel-agent/package.json (added)
-
node_modules/undefsafe/.github/workflows/release.yml (added)
-
node_modules/undefsafe/.jscsrc (added)
-
node_modules/undefsafe/.jshintrc (added)
-
node_modules/undefsafe/.travis.yml (added)
-
node_modules/undefsafe/LICENSE (added)
-
node_modules/undefsafe/README.md (added)
-
node_modules/undefsafe/example.js (added)
-
node_modules/undefsafe/lib/undefsafe.js (added)
-
node_modules/undefsafe/package.json (added)
-
node_modules/unique-filename/.nyc_output/54942.json (added)
-
node_modules/unique-filename/.nyc_output/54944.json (added)
-
node_modules/unique-filename/LICENSE (added)
-
node_modules/unique-filename/README.md (added)
-
node_modules/unique-filename/coverage/__root__/index.html (added)
-
node_modules/unique-filename/coverage/__root__/index.js.html (added)
-
node_modules/unique-filename/coverage/base.css (added)
-
node_modules/unique-filename/coverage/index.html (added)
-
node_modules/unique-filename/coverage/prettify.css (added)
-
node_modules/unique-filename/coverage/prettify.js (added)
-
node_modules/unique-filename/coverage/sort-arrow-sprite.png (added)
-
node_modules/unique-filename/coverage/sorter.js (added)
-
node_modules/unique-filename/index.js (added)
-
node_modules/unique-filename/package.json (added)
-
node_modules/unique-filename/test/index.js (added)
-
node_modules/unique-slug/.travis.yml (added)
-
node_modules/unique-slug/LICENSE (added)
-
node_modules/unique-slug/README.md (added)
-
node_modules/unique-slug/index.js (added)
-
node_modules/unique-slug/package.json (added)
-
node_modules/unique-slug/test/index.js (added)
-
node_modules/util-deprecate/History.md (added)
-
node_modules/util-deprecate/LICENSE (added)
-
node_modules/util-deprecate/README.md (added)
-
node_modules/util-deprecate/browser.js (added)
-
node_modules/util-deprecate/node.js (added)
-
node_modules/util-deprecate/package.json (added)
-
node_modules/which/CHANGELOG.md (added)
-
node_modules/which/LICENSE (added)
-
node_modules/which/README.md (added)
-
node_modules/which/package.json (added)
-
node_modules/which/which.js (added)
-
node_modules/wide-align/LICENSE (added)
-
node_modules/wide-align/README.md (added)
-
node_modules/wide-align/align.js (added)
-
node_modules/wide-align/package.json (added)
-
node_modules/wrappy/LICENSE (added)
-
node_modules/wrappy/README.md (added)
-
node_modules/wrappy/package.json (added)
-
node_modules/wrappy/wrappy.js (added)
-
node_modules/yallist/LICENSE (added)
-
node_modules/yallist/README.md (added)
-
node_modules/yallist/iterator.js (added)
-
node_modules/yallist/package.json (added)
-
node_modules/yallist/yallist.js (added)
-
server.js (modified) (14 diffs)
-
view-database.js (modified) (40 diffs)
Legend:
- Unmodified
- Added
- Removed
-
README.md
r79fff4f r81bc7da 12 12 Klimentina Efremova 13 13 14 Aida Balikj -
server.js
r79fff4f r81bc7da 211 211 } 212 212 213 // ===== FIXED: requireAuth function to check both sessions and tempAdminSessions ===== 213 214 function requireAuth(req, res, callback) { 214 215 const cookies = parseCookies(req); 215 216 const sessionId = cookies.sessionId; 216 217 217 if (!sessionId || !sessions.has(sessionId)) { 218 console.log(`š requireAuth - Session ID from cookie: ${sessionId || 'none'}`); 219 console.log(`š requireAuth - Sessions map size: ${sessions.size}`); 220 console.log(`š requireAuth - TempAdminSessions map size: ${tempAdminSessions.size}`); 221 222 // Check both regular sessions and temp admin sessions 223 if (!sessionId) { 224 console.log(`ā requireAuth - No session cookie, redirecting to login`); 218 225 res.writeHead(302, { 'Location': '/login.html' }); 219 226 res.end(); … … 221 228 } 222 229 223 const userId = sessions.get(sessionId); 224 230 // Check if session exists in regular sessions 231 if (sessions.has(sessionId)) { 232 const userId = sessions.get(sessionId); 233 console.log(`ā requireAuth - Found in regular sessions, user: ${userId}`); 234 callback(userId); 235 return; 236 } 237 238 // Check if session exists in temp admin sessions 225 239 if (tempAdminSessions.has(sessionId)) { 226 if (!req.url.includes('/change-password') && !req.url.includes('/api/force-change-password')) { 240 const userId = tempAdminSessions.get(sessionId); 241 console.log(`ā ļø requireAuth - Found in temp admin sessions, user: ${userId}`); 242 243 // For temp sessions, we need to check if the request is for allowed pages 244 // Allow access to change password page and API endpoints needed for password change 245 const allowedPaths = [ 246 '/change-password.html', 247 '/api/force-change-password', 248 '/api/user', 249 '/style.css', 250 '/script.js', 251 '/images/' 252 ]; 253 254 const isAllowed = allowedPaths.some(path => req.url.includes(path)); 255 256 if (!isAllowed) { 257 console.log(`š requireAuth - Redirecting to change password page`); 227 258 res.writeHead(302, { 'Location': '/change-password.html?forced=true' }); 228 259 res.end(); 229 260 return; 230 261 } 231 } 232 233 callback(userId); 262 263 callback(userId); 264 return; 265 } 266 267 // Session not found in either map 268 console.log(`ā requireAuth - Session ID ${sessionId} not found in any session map`); 269 res.writeHead(302, { 'Location': '/login.html' }); 270 res.end(); 234 271 } 235 272 … … 1117 1154 const sessionId = cookies.sessionId; 1118 1155 1119 if (!sessionId || !sessions.has(sessionId)) {1156 if (!sessionId || (!sessions.has(sessionId) && !tempAdminSessions.has(sessionId))) { 1120 1157 res.writeHead(302, { 'Location': '/login.html' }); 1121 1158 res.end(); … … 1139 1176 const sessionId = cookies.sessionId; 1140 1177 1141 if (!sessionId || !sessions.has(sessionId)) {1178 if (!sessionId || (!sessions.has(sessionId) && !tempAdminSessions.has(sessionId))) { 1142 1179 res.writeHead(302, { 'Location': '/login.html' }); 1180 res.end(); 1181 return; 1182 } 1183 1184 if (tempAdminSessions.has(sessionId)) { 1185 res.writeHead(302, { 'Location': '/change-password.html?forced=true' }); 1143 1186 res.end(); 1144 1187 return; … … 1179 1222 serveStaticFile(res, 'admin.html', 'text/html'); 1180 1223 } else if (pathname === '/store-owner.html') { 1181 serveStaticFile(res, 'store-owner.html', 'text/html'); 1224 // Check if user is authenticated 1225 const cookies = parseCookies(req); 1226 const sessionId = cookies.sessionId; 1227 1228 console.log(`š Accessing store-owner.html - Session ID: ${sessionId || 'none'}`); 1229 1230 if (!sessionId || (!sessions.has(sessionId) && !tempAdminSessions.has(sessionId))) { 1231 console.log(`ā store-owner.html - No valid session, redirecting to login`); 1232 res.writeHead(302, { 'Location': '/login.html' }); 1233 res.end(); 1234 return; 1235 } 1236 1237 if (tempAdminSessions.has(sessionId)) { 1238 console.log(`ā ļø store-owner.html - Temporary session, redirecting to change password`); 1239 res.writeHead(302, { 'Location': '/change-password.html?forced=true' }); 1240 res.end(); 1241 return; 1242 } 1243 1244 // Get user from session 1245 const userId = sessions.get(sessionId); 1246 console.log(`š store-owner.html - User ID from session: ${userId}`); 1247 1248 // Check if this is a store owner 1249 if (userId.startsWith('personal_')) { 1250 const personalId = userId.replace('personal_', ''); 1251 1252 database.database.get( 1253 'SELECT boss_id FROM boss WHERE boss_id = ?', 1254 [personalId], 1255 (err, boss) => { 1256 if (boss) { 1257 // Is a store owner, serve the page 1258 console.log(`ā store-owner.html - User is a store owner, serving page`); 1259 serveStaticFile(res, 'store-owner.html', 'text/html'); 1260 } else { 1261 // Not a store owner, redirect to appropriate page 1262 console.log(`ā store-owner.html - User is not a store owner, redirecting`); 1263 res.writeHead(302, { 'Location': '/dashboard.html' }); 1264 res.end(); 1265 } 1266 } 1267 ); 1268 } else if (userId === '000000') { 1269 // Admin trying to access store owner page 1270 console.log(`ā store-owner.html - Admin trying to access, redirecting to admin`); 1271 res.writeHead(302, { 'Location': '/admin.html' }); 1272 res.end(); 1273 } else if (userId.startsWith('client_')) { 1274 // Client trying to access store owner page 1275 console.log(`ā store-owner.html - Client trying to access, redirecting to client`); 1276 res.writeHead(302, { 'Location': '/client-dashboard.html' }); 1277 res.end(); 1278 } else { 1279 res.writeHead(302, { 'Location': '/dashboard.html' }); 1280 res.end(); 1281 } 1182 1282 } else if (pathname === '/store-employee.html') { 1183 serveStaticFile(res, 'store-employee.html', 'text/html'); 1283 // Check if user is authenticated 1284 const cookies = parseCookies(req); 1285 const sessionId = cookies.sessionId; 1286 1287 console.log(`š Accessing store-employee.html - Session ID: ${sessionId || 'none'}`); 1288 1289 if (!sessionId || (!sessions.has(sessionId) && !tempAdminSessions.has(sessionId))) { 1290 console.log(`ā store-employee.html - No valid session, redirecting to login`); 1291 res.writeHead(302, { 'Location': '/login.html' }); 1292 res.end(); 1293 return; 1294 } 1295 1296 if (tempAdminSessions.has(sessionId)) { 1297 console.log(`ā ļø store-employee.html - Temporary session, redirecting to change password`); 1298 res.writeHead(302, { 'Location': '/change-password.html?forced=true' }); 1299 res.end(); 1300 return; 1301 } 1302 1303 // Get user from session 1304 const userId = sessions.get(sessionId); 1305 console.log(`š store-employee.html - User ID from session: ${userId}`); 1306 1307 // Check if this is a store employee 1308 if (userId.startsWith('personal_')) { 1309 const personalId = userId.replace('personal_', ''); 1310 1311 database.database.get( 1312 'SELECT employee_id FROM employees WHERE employee_id = ?', 1313 [personalId], 1314 (err, employee) => { 1315 if (employee) { 1316 // Is a store employee, serve the page 1317 console.log(`ā store-employee.html - User is a store employee, serving page`); 1318 serveStaticFile(res, 'store-employee.html', 'text/html'); 1319 } else { 1320 // Check if they're a store owner (they can also access employee page) 1321 database.database.get( 1322 'SELECT boss_id FROM boss WHERE boss_id = ?', 1323 [personalId], 1324 (err, boss) => { 1325 if (boss) { 1326 console.log(`ā store-employee.html - User is a store owner (can access), serving page`); 1327 serveStaticFile(res, 'store-employee.html', 'text/html'); 1328 } else { 1329 // Not authorized 1330 console.log(`ā store-employee.html - User is not authorized, redirecting`); 1331 res.writeHead(302, { 'Location': '/dashboard.html' }); 1332 res.end(); 1333 } 1334 } 1335 ); 1336 } 1337 } 1338 ); 1339 } else if (userId === '000000') { 1340 // Admin trying to access employee page 1341 console.log(`ā store-employee.html - Admin trying to access, redirecting to admin`); 1342 res.writeHead(302, { 'Location': '/admin.html' }); 1343 res.end(); 1344 } else if (userId.startsWith('client_')) { 1345 // Client trying to access employee page 1346 console.log(`ā store-employee.html - Client trying to access, redirecting to client`); 1347 res.writeHead(302, { 'Location': '/client-dashboard.html' }); 1348 res.end(); 1349 } else { 1350 res.writeHead(302, { 'Location': '/dashboard.html' }); 1351 res.end(); 1352 } 1184 1353 } else if (pathname === '/client-dashboard.html') { 1185 serveStaticFile(res, 'client-dashboard.html', 'text/html'); 1354 // Check if user is authenticated 1355 const cookies = parseCookies(req); 1356 const sessionId = cookies.sessionId; 1357 1358 console.log(`š Accessing client-dashboard.html - Session ID: ${sessionId || 'none'}`); 1359 1360 if (!sessionId || (!sessions.has(sessionId) && !tempAdminSessions.has(sessionId))) { 1361 console.log(`ā client-dashboard.html - No valid session, redirecting to login`); 1362 res.writeHead(302, { 'Location': '/login.html' }); 1363 res.end(); 1364 return; 1365 } 1366 1367 if (tempAdminSessions.has(sessionId)) { 1368 console.log(`ā ļø client-dashboard.html - Temporary session, redirecting to change password`); 1369 res.writeHead(302, { 'Location': '/change-password.html?forced=true' }); 1370 res.end(); 1371 return; 1372 } 1373 1374 // Get user from session 1375 const userId = sessions.get(sessionId); 1376 console.log(`š client-dashboard.html - User ID from session: ${userId}`); 1377 1378 // Check if this is a client 1379 if (userId.startsWith('client_')) { 1380 // Is a client, serve the page 1381 console.log(`ā client-dashboard.html - User is a client, serving page`); 1382 serveStaticFile(res, 'client-dashboard.html', 'text/html'); 1383 } else if (userId === '000000') { 1384 // Admin trying to access client page 1385 console.log(`ā client-dashboard.html - Admin trying to access, redirecting to admin`); 1386 res.writeHead(302, { 'Location': '/admin.html' }); 1387 res.end(); 1388 } else if (userId.startsWith('personal_')) { 1389 // Personal user trying to access client page 1390 console.log(`ā client-dashboard.html - Personal user trying to access, redirecting to store`); 1391 res.writeHead(302, { 'Location': '/store-owner.html' }); 1392 res.end(); 1393 } else { 1394 res.writeHead(302, { 'Location': '/dashboard.html' }); 1395 res.end(); 1396 } 1186 1397 } else if (pathname === '/products.html') { 1187 1398 serveStaticFile(res, 'products.html', 'text/html'); … … 2111 2322 res.writeHead(200, { 2112 2323 'Content-Type': 'application/json', 2113 'Set-Cookie': `sessionId=${sessionId}; HttpOnly; Path=/; Max-Age= 3600; SameSite=Strict`2324 'Set-Cookie': `sessionId=${sessionId}; HttpOnly; Path=/; Max-Age=86400; SameSite=Strict` 2114 2325 }); 2115 2326 … … 2505 2716 } 2506 2717 2718 // ===== FIXED: /api/verify-2fa endpoint with proper redirect handling ===== 2507 2719 else if (pathname === '/api/verify-2fa' && req.method === 'POST') { 2508 2720 let body = ''; … … 2544 2756 verificationCodes.delete(email); 2545 2757 2546 // Determine redirect based on user type 2758 // Determine redirect based on user type - all go to change-password.html with appropriate query parameters 2547 2759 let redirectTo = 'change-password.html?forced=true'; 2760 2761 // Add redirect parameter to know where to go after password change 2548 2762 if (verificationData.userType === 'store_owner') { 2549 2763 redirectTo = 'change-password.html?forced=true&redirect=store-owner.html'; … … 2554 2768 } else if (verificationData.userType === 'client') { 2555 2769 redirectTo = 'change-password.html?forced=true&redirect=client-dashboard.html'; 2770 } else { 2771 redirectTo = 'change-password.html?forced=true&redirect=dashboard.html'; 2556 2772 } 2773 2774 console.log(`š Password change required for ${verificationData.userType}. Redirecting to: ${redirectTo}`); 2775 console.log(`š Temp session created: ${tempSessionId} for user: ${verificationData.userId}`); 2776 console.log(`š TempAdminSessions now has ${tempAdminSessions.size} entries`); 2557 2777 2558 2778 res.writeHead(200, { … … 2609 2829 } 2610 2830 2611 console.log(`ā ${verificationData.userType} login successful. Redirecting to: ${redirectTo}`); 2831 console.log(`ā ${verificationData.userType} login successful. Session: ${sessionId}, User: ${sessions.get(sessionId)}, Redirecting to: ${redirectTo}`); 2832 console.log(`š Current sessions: ${Array.from(sessions.entries()).map(([id, user]) => `${id.substring(0,8)}...:${user}`).join(', ')}`); 2612 2833 2613 2834 res.writeHead(200, { 2614 2835 'Content-Type': 'application/json', 2615 'Set-Cookie': `sessionId=${sessionId}; HttpOnly; Path=/; Max-Age= 3600; SameSite=Strict`2836 'Set-Cookie': `sessionId=${sessionId}; HttpOnly; Path=/; Max-Age=86400; SameSite=Strict` 2616 2837 }); 2617 2838 … … 2630 2851 2631 2852 if (sessionId) { 2632 const userId = sessions.get(sessionId) ;2853 const userId = sessions.get(sessionId) || tempAdminSessions.get(sessionId); 2633 2854 if (userId) { 2634 2855 database.logAudit(userId, 'LOGOUT', 'auth', userId.toString(), 'User logged out', ipAddress); … … 2651 2872 const sessionId = cookies.sessionId; 2652 2873 2874 // Check if this is a temp session 2653 2875 if (tempAdminSessions.has(sessionId)) { 2654 2876 // This is a temporary session (password change required) … … 3550 3772 } 3551 3773 3552 console.log(`Password changed successfully for user ${userId}, redirecting to ${finalRedirect}`); 3774 console.log(`ā Password changed successfully for user ${userId}, redirecting to ${finalRedirect}`); 3775 console.log(`New session created: ${newSessionId} -> ${sessionUserId}`); 3553 3776 3554 3777 database.logAudit(userId, 'FORCED_PASSWORD_CHANGE', 'auth', userId.toString(), 3555 3778 `${user.user_type || 'user'} forced password change completed`, ipAddress); 3556 3779 3557 // Set the cookie with proper options 3780 // Set the cookie with proper options - extended to 24 hours 3558 3781 res.writeHead(200, { 3559 3782 'Content-Type': 'application/json', 3560 'Set-Cookie': `sessionId=${newSessionId}; HttpOnly; Path=/; Max-Age=86400; SameSite=Strict` // Extended to 24 hours3783 'Set-Cookie': `sessionId=${newSessionId}; HttpOnly; Path=/; Max-Age=86400; SameSite=Strict` 3561 3784 }); 3562 3785 … … 3626 3849 sessions.set(newSessionId, `personal_${userId}`); 3627 3850 3628 console.log(`Password changed successfully for ${userType} ${userId}, redirecting to ${finalRedirect}`); 3851 console.log(`ā Password changed successfully for ${userType} ${userId}, redirecting to ${finalRedirect}`); 3852 console.log(`New session created: ${newSessionId} -> personal_${userId}`); 3629 3853 3630 3854 database.logAudit(userId, 'FORCED_PASSWORD_CHANGE', 'auth', userId.toString(), -
view-database.js
r79fff4f r81bc7da 3 3 4 4 const dbPath = path.join(__dirname, 'database', 'handcraft.db'); 5 const db = new sqlite3.Database(dbPath); 5 const db = new sqlite3.Database(dbPath, (err) => { 6 if (err) { 7 console.error('Error opening database:', err.message); 8 process.exit(1); 9 } 10 }); 6 11 7 12 console.log('\nšØ HANDCRAFT MARKETPLACE - DATABASE CONTENTS\n'); … … 25 30 } 26 31 32 // Main execution chain 33 function executeChecks() { 34 let currentCheck = 0; 35 36 const checks = [ 37 { name: 'clients', func: checkClients }, 38 { name: 'personal', func: checkPersonal }, 39 { name: 'store', func: checkStore }, 40 { name: 'product', func: checkProduct }, 41 { name: 'category', func: checkCategory }, 42 { name: 'works_in_store', func: checkWorksInStore }, 43 { name: 'permissions', func: checkPermissions }, 44 { name: 'employees', func: checkEmployees }, 45 { name: 'boss', func: checkBoss }, 46 { name: 'order', func: checkOrder }, 47 { name: 'report', func: checkReport }, 48 { name: 'refund', func: checkRefund }, 49 { name: 'image', func: checkImage }, 50 { name: 'color', func: checkColor } 51 ]; 52 53 function next() { 54 currentCheck++; 55 if (currentCheck < checks.length) { 56 checks[currentCheck].func(next); 57 } else { 58 finish(); 59 } 60 } 61 62 // Start with first check 63 checks[0].func(next); 64 } 65 27 66 // Display CLIENTS table 28 console.log('\nš¤ CLIENTS TABLE:'); 29 console.log('================================================================================'); 30 tableExists('client', (exists) => { 31 if (!exists) { 32 console.log('Table does not exist'); 33 checkNext(); 34 return; 35 } 36 37 db.all('SELECT * FROM client', [], (err, rows) => { 38 if (err) { 39 console.log(`Error: ${err.message}`); 40 checkNext(); 41 return; 42 } 43 44 if (!rows || rows.length === 0) { 45 console.log('No clients found'); 46 } else { 47 console.log(`Total: ${rows.length} clients\n`); 48 rows.forEach((client, index) => { 49 console.log(`ID: ${client.client_id} | Name: ${client.first_name || ''} ${client.last_name || ''}`); 50 console.log(`Email: ${client.email || 'N/A'}`); 51 if (index < rows.length - 1) console.log('-'.repeat(80)); 52 }); 53 } 54 checkNext(); 55 }); 56 }); 67 function checkClients(next) { 68 console.log('\nš¤ CLIENTS TABLE:'); 69 console.log('================================================================================'); 70 71 tableExists('client', (exists) => { 72 if (!exists) { 73 console.log('Table does not exist\n'); 74 if (next) next(); 75 return; 76 } 77 78 db.all('SELECT * FROM client', [], (err, rows) => { 79 if (err) { 80 console.log(`Error: ${err.message}\n`); 81 if (next) next(); 82 return; 83 } 84 85 if (!rows || rows.length === 0) { 86 console.log('No clients found\n'); 87 } else { 88 console.log(`Total: ${rows.length} clients\n`); 89 rows.forEach((client, index) => { 90 console.log(`ID: ${client.client_id} | Name: ${client.first_name || ''} ${client.last_name || ''}`); 91 console.log(`Email: ${client.email || 'N/A'}`); 92 if (index < rows.length - 1) console.log('-'.repeat(80)); 93 }); 94 console.log(); // Add blank line after table 95 } 96 if (next) next(); 97 }); 98 }); 99 } 57 100 58 101 // Display PERSONAL table 59 function checkPersonal( ) {102 function checkPersonal(next) { 60 103 console.log('\nš PERSONAL TABLE (STORE OWNERS/EMPLOYEES):'); 61 104 console.log('================================================================================'); 105 62 106 tableExists('personal', (exists) => { 63 107 if (!exists) { 64 console.log('Table does not exist ');65 checkStore();108 console.log('Table does not exist\n'); 109 if (next) next(); 66 110 return; 67 111 } … … 77 121 `, [], (err, rows) => { 78 122 if (err) { 79 console.log(`Error: ${err.message} `);80 checkStore();81 return; 82 } 83 84 if (!rows || rows.length === 0) { 85 console.log('No personal records found ');123 console.log(`Error: ${err.message}\n`); 124 if (next) next(); 125 return; 126 } 127 128 if (!rows || rows.length === 0) { 129 console.log('No personal records found\n'); 86 130 } else { 87 131 console.log(`Total: ${rows.length} personal records\n`); … … 91 135 if (index < rows.length - 1) console.log('-'.repeat(80)); 92 136 }); 93 } 94 checkStore(); 137 console.log(); 138 } 139 if (next) next(); 95 140 }); 96 141 }); … … 98 143 99 144 // Display STORE table 100 function checkStore( ) {145 function checkStore(next) { 101 146 console.log('\nšŖ STORE TABLE:'); 102 147 console.log('================================================================================'); 148 103 149 tableExists('store', (exists) => { 104 150 if (!exists) { 105 console.log('Table does not exist ');106 checkProduct();151 console.log('Table does not exist\n'); 152 if (next) next(); 107 153 return; 108 154 } … … 110 156 db.all('SELECT * FROM store', [], (err, rows) => { 111 157 if (err) { 112 console.log(`Error: ${err.message} `);113 checkProduct();114 return; 115 } 116 117 if (!rows || rows.length === 0) { 118 console.log('No stores found ');158 console.log(`Error: ${err.message}\n`); 159 if (next) next(); 160 return; 161 } 162 163 if (!rows || rows.length === 0) { 164 console.log('No stores found\n'); 119 165 } else { 120 166 console.log(`Total: ${rows.length} stores\n`); … … 126 172 if (index < rows.length - 1) console.log('-'.repeat(80)); 127 173 }); 128 } 129 checkProduct(); 174 console.log(); 175 } 176 if (next) next(); 130 177 }); 131 178 }); … … 133 180 134 181 // Display PRODUCT table 135 function checkProduct( ) {182 function checkProduct(next) { 136 183 console.log('\nšļø PRODUCT TABLE:'); 137 184 console.log('================================================================================'); 185 138 186 tableExists('product', (exists) => { 139 187 if (!exists) { 140 console.log('Table does not exist ');141 checkCategory();188 console.log('Table does not exist\n'); 189 if (next) next(); 142 190 return; 143 191 } … … 149 197 `, [], (err, rows) => { 150 198 if (err) { 151 console.log(`Error: ${err.message} `);152 checkCategory();153 return; 154 } 155 156 if (!rows || rows.length === 0) { 157 console.log('No products found ');199 console.log(`Error: ${err.message}\n`); 200 if (next) next(); 201 return; 202 } 203 204 if (!rows || rows.length === 0) { 205 console.log('No products found\n'); 158 206 } else { 159 207 console.log(`Total: ${rows.length} products\n`); … … 165 213 if (index < rows.length - 1) console.log('-'.repeat(80)); 166 214 }); 167 } 168 checkCategory(); 215 console.log(); 216 } 217 if (next) next(); 169 218 }); 170 219 }); … … 172 221 173 222 // Display CATEGORY table 174 function checkCategory( ) {223 function checkCategory(next) { 175 224 console.log('\nš CATEGORY TABLE:'); 176 225 console.log('================================================================================'); 226 177 227 tableExists('category', (exists) => { 178 228 if (!exists) { 179 console.log('Table does not exist ');180 checkWorksInStore();229 console.log('Table does not exist\n'); 230 if (next) next(); 181 231 return; 182 232 } … … 188 238 `, [], (err, rows) => { 189 239 if (err) { 190 console.log(`Error: ${err.message} `);191 checkWorksInStore();192 return; 193 } 194 195 if (!rows || rows.length === 0) { 196 console.log('No categories found ');240 console.log(`Error: ${err.message}\n`); 241 if (next) next(); 242 return; 243 } 244 245 if (!rows || rows.length === 0) { 246 console.log('No categories found\n'); 197 247 } else { 198 248 console.log(`Total: ${rows.length} categories\n`); … … 203 253 if (index < rows.length - 1) console.log('-'.repeat(80)); 204 254 }); 205 } 206 checkWorksInStore(); 255 console.log(); 256 } 257 if (next) next(); 207 258 }); 208 259 }); … … 210 261 211 262 // Display WORKS_IN_STORE table 212 function checkWorksInStore( ) {263 function checkWorksInStore(next) { 213 264 console.log('\nš WORKS_IN_STORE TABLE:'); 214 265 console.log('================================================================================'); 266 215 267 tableExists('works_in_store', (exists) => { 216 268 if (!exists) { 217 console.log('Table does not exist ');218 checkPermissions();269 console.log('Table does not exist\n'); 270 if (next) next(); 219 271 return; 220 272 } … … 227 279 `, [], (err, rows) => { 228 280 if (err) { 229 console.log(`Error: ${err.message} `);230 checkPermissions();231 return; 232 } 233 234 if (!rows || rows.length === 0) { 235 console.log('No assignments found ');281 console.log(`Error: ${err.message}\n`); 282 if (next) next(); 283 return; 284 } 285 286 if (!rows || rows.length === 0) { 287 console.log('No assignments found\n'); 236 288 } else { 237 289 console.log(`Total: ${rows.length} assignments\n`); … … 241 293 if (index < rows.length - 1) console.log('-'.repeat(80)); 242 294 }); 243 } 244 checkPermissions(); 295 console.log(); 296 } 297 if (next) next(); 245 298 }); 246 299 }); … … 248 301 249 302 // Display PERMISSIONS table 250 function checkPermissions( ) {303 function checkPermissions(next) { 251 304 console.log('\nš PERMISSIONS TABLE:'); 252 305 console.log('================================================================================'); 306 253 307 tableExists('permissions', (exists) => { 254 308 if (!exists) { 255 console.log('Table does not exist ');256 checkEmployees();309 console.log('Table does not exist\n'); 310 if (next) next(); 257 311 return; 258 312 } … … 264 318 `, [], (err, rows) => { 265 319 if (err) { 266 console.log(`Error: ${err.message} `);267 checkEmployees();268 return; 269 } 270 271 if (!rows || rows.length === 0) { 272 console.log('No permissions found ');320 console.log(`Error: ${err.message}\n`); 321 if (next) next(); 322 return; 323 } 324 325 if (!rows || rows.length === 0) { 326 console.log('No permissions found\n'); 273 327 } else { 274 328 console.log(`Total: ${rows.length} permissions\n`); … … 278 332 if (index < rows.length - 1) console.log('-'.repeat(80)); 279 333 }); 280 } 281 checkEmployees(); 334 console.log(); 335 } 336 if (next) next(); 282 337 }); 283 338 }); … … 285 340 286 341 // Display EMPLOYEES table 287 function checkEmployees( ) {342 function checkEmployees(next) { 288 343 console.log('\nš· EMPLOYEES TABLE:'); 289 344 console.log('================================================================================'); 345 290 346 tableExists('employees', (exists) => { 291 347 if (!exists) { 292 console.log('Table does not exist ');293 checkBoss();348 console.log('Table does not exist\n'); 349 if (next) next(); 294 350 return; 295 351 } … … 301 357 `, [], (err, rows) => { 302 358 if (err) { 303 console.log(`Error: ${err.message} `);304 checkBoss();305 return; 306 } 307 308 if (!rows || rows.length === 0) { 309 console.log('No employees found ');359 console.log(`Error: ${err.message}\n`); 360 if (next) next(); 361 return; 362 } 363 364 if (!rows || rows.length === 0) { 365 console.log('No employees found\n'); 310 366 } else { 311 367 console.log(`Total: ${rows.length} employees\n`); … … 315 371 if (index < rows.length - 1) console.log('-'.repeat(80)); 316 372 }); 317 } 318 checkBoss(); 373 console.log(); 374 } 375 if (next) next(); 319 376 }); 320 377 }); … … 322 379 323 380 // Display BOSS table 324 function checkBoss( ) {381 function checkBoss(next) { 325 382 console.log('\nš BOSS TABLE:'); 326 383 console.log('================================================================================'); 384 327 385 tableExists('boss', (exists) => { 328 386 if (!exists) { 329 console.log('Table does not exist ');330 checkOrder();387 console.log('Table does not exist\n'); 388 if (next) next(); 331 389 return; 332 390 } … … 338 396 `, [], (err, rows) => { 339 397 if (err) { 340 console.log(`Error: ${err.message} `);341 checkOrder();342 return; 343 } 344 345 if (!rows || rows.length === 0) { 346 console.log('No bosses found ');398 console.log(`Error: ${err.message}\n`); 399 if (next) next(); 400 return; 401 } 402 403 if (!rows || rows.length === 0) { 404 console.log('No bosses found\n'); 347 405 } else { 348 406 console.log(`Total: ${rows.length} bosses\n`); … … 352 410 if (index < rows.length - 1) console.log('-'.repeat(80)); 353 411 }); 354 } 355 checkOrder(); 412 console.log(); 413 } 414 if (next) next(); 356 415 }); 357 416 }); … … 359 418 360 419 // Display ORDER table 361 function checkOrder( ) {420 function checkOrder(next) { 362 421 console.log('\nš¦ ORDERS TABLE:'); 363 422 console.log('================================================================================'); 423 364 424 tableExists('order', (exists) => { 365 425 if (!exists) { 366 console.log('Table does not exist ');367 checkReport();426 console.log('Table does not exist\n'); 427 if (next) next(); 368 428 return; 369 429 } … … 376 436 `, [], (err, rows) => { 377 437 if (err) { 378 console.log(`Error: ${err.message} `);379 checkReport();380 return; 381 } 382 383 if (!rows || rows.length === 0) { 384 console.log('No orders found ');438 console.log(`Error: ${err.message}\n`); 439 if (next) next(); 440 return; 441 } 442 443 if (!rows || rows.length === 0) { 444 console.log('No orders found\n'); 385 445 } else { 386 446 console.log(`Total: ${rows.length} orders\n`); … … 392 452 if (index < rows.length - 1) console.log('-'.repeat(80)); 393 453 }); 394 } 395 checkReport(); 454 console.log(); 455 } 456 if (next) next(); 396 457 }); 397 458 }); … … 399 460 400 461 // Display REPORT table 401 function checkReport( ) {462 function checkReport(next) { 402 463 console.log('\nš REPORTS TABLE:'); 403 464 console.log('================================================================================'); 465 404 466 tableExists('report', (exists) => { 405 467 if (!exists) { 406 console.log('Table does not exist ');407 checkRefund();468 console.log('Table does not exist\n'); 469 if (next) next(); 408 470 return; 409 471 } … … 411 473 db.all('SELECT * FROM report', [], (err, rows) => { 412 474 if (err) { 413 console.log(`Error: ${err.message} `);414 checkRefund();415 return; 416 } 417 418 if (!rows || rows.length === 0) { 419 console.log('No reports found ');475 console.log(`Error: ${err.message}\n`); 476 if (next) next(); 477 return; 478 } 479 480 if (!rows || rows.length === 0) { 481 console.log('No reports found\n'); 420 482 } else { 421 483 console.log(`Total: ${rows.length} reports\n`); … … 425 487 if (index < rows.length - 1) console.log('-'.repeat(80)); 426 488 }); 427 } 428 checkRefund(); 489 console.log(); 490 } 491 if (next) next(); 429 492 }); 430 493 }); … … 432 495 433 496 // Display REFUND table 434 function checkRefund( ) {497 function checkRefund(next) { 435 498 console.log('\nš° REFUND TABLE:'); 436 499 console.log('================================================================================'); 500 437 501 tableExists('refund', (exists) => { 438 502 if (!exists) { 439 console.log('Table does not exist ');440 checkImage();503 console.log('Table does not exist\n'); 504 if (next) next(); 441 505 return; 442 506 } … … 444 508 db.all('SELECT * FROM refund', [], (err, rows) => { 445 509 if (err) { 446 console.log(`Error: ${err.message} `);447 checkImage();448 return; 449 } 450 451 if (!rows || rows.length === 0) { 452 console.log('No refunds found ');510 console.log(`Error: ${err.message}\n`); 511 if (next) next(); 512 return; 513 } 514 515 if (!rows || rows.length === 0) { 516 console.log('No refunds found\n'); 453 517 } else { 454 518 console.log(`Total: ${rows.length} refunds\n`); … … 459 523 if (index < rows.length - 1) console.log('-'.repeat(80)); 460 524 }); 461 } 462 checkImage(); 525 console.log(); 526 } 527 if (next) next(); 463 528 }); 464 529 }); … … 466 531 467 532 // Display IMAGE table 468 function checkImage( ) {533 function checkImage(next) { 469 534 console.log('\nš¼ļø IMAGE TABLE:'); 470 535 console.log('================================================================================'); 536 471 537 tableExists('image', (exists) => { 472 538 if (!exists) { 473 console.log('Table does not exist ');474 checkColor();539 console.log('Table does not exist\n'); 540 if (next) next(); 475 541 return; 476 542 } … … 478 544 db.all('SELECT * FROM image', [], (err, rows) => { 479 545 if (err) { 480 console.log(`Error: ${err.message} `);481 checkColor();482 return; 483 } 484 485 if (!rows || rows.length === 0) { 486 console.log('No images found ');546 console.log(`Error: ${err.message}\n`); 547 if (next) next(); 548 return; 549 } 550 551 if (!rows || rows.length === 0) { 552 console.log('No images found\n'); 487 553 } else { 488 554 console.log(`Total: ${rows.length} images\n`); … … 491 557 if (index < rows.length - 1) console.log('-'.repeat(80)); 492 558 }); 493 } 494 checkColor(); 559 console.log(); 560 } 561 if (next) next(); 495 562 }); 496 563 }); … … 498 565 499 566 // Display COLOR table 500 function checkColor( ) {567 function checkColor(next) { 501 568 console.log('\nšØ COLOR TABLE:'); 502 569 console.log('================================================================================'); 570 503 571 tableExists('color', (exists) => { 504 572 if (!exists) { 505 console.log('Table does not exist ');506 finish();573 console.log('Table does not exist\n'); 574 if (next) next(); 507 575 return; 508 576 } … … 510 578 db.all('SELECT * FROM color', [], (err, rows) => { 511 579 if (err) { 512 console.log(`Error: ${err.message} `);513 finish();514 return; 515 } 516 517 if (!rows || rows.length === 0) { 518 console.log('No colors found ');580 console.log(`Error: ${err.message}\n`); 581 if (next) next(); 582 return; 583 } 584 585 if (!rows || rows.length === 0) { 586 console.log('No colors found\n'); 519 587 } else { 520 588 console.log(`Total: ${rows.length} colors\n`); … … 523 591 if (index < rows.length - 1) console.log('-'.repeat(80)); 524 592 }); 525 } 526 finish(); 527 }); 528 }); 529 } 530 531 // Start the chain of checks 532 function checkNext() { 533 checkPersonal(); 534 } 535 593 console.log(); 594 } 595 if (next) next(); 596 }); 597 }); 598 } 599 600 // Finish and close database 536 601 function finish() { 537 console.log(' \n' + '='.repeat(80));602 console.log('='.repeat(80)); 538 603 console.log('ā Database inspection complete'); 539 604 console.log('='.repeat(80) + '\n'); 540 605 541 db.close(); 542 } 543 544 // Start with CLIENTS 545 checkNext(); 606 db.close((err) => { 607 if (err) { 608 console.error('Error closing database:', err.message); 609 } 610 }); 611 } 612 613 // Start the execution chain 614 executeChecks();
Note:
See TracChangeset
for help on using the changeset viewer.
