From ff494948f839c2204c25b1238d8da591c757f1e2 Mon Sep 17 00:00:00 2001 From: BlueFox Date: Wed, 19 Feb 2025 21:17:28 +0100 Subject: [PATCH] Removed all the tailwind stuff --- new_site/README.md | 13 +- new_site/node_modules/.bin/detect-libc | 1 - new_site/node_modules/.bin/jiti | 1 - new_site/node_modules/.bin/tailwindcss | 1 - new_site/node_modules/.package-lock.json | 345 - .../@parcel/watcher-linux-x64-glibc/LICENSE | 21 - .../@parcel/watcher-linux-x64-glibc/README.md | 1 - .../watcher-linux-x64-glibc/package.json | 33 - .../watcher-linux-x64-glibc/watcher.node | Bin 514960 -> 0 bytes new_site/node_modules/@parcel/watcher/LICENSE | 21 - .../node_modules/@parcel/watcher/README.md | 135 - .../node_modules/@parcel/watcher/binding.gyp | 93 - .../node_modules/@parcel/watcher/index.d.ts | 49 - .../node_modules/@parcel/watcher/index.js | 41 - .../@parcel/watcher/index.js.flow | 48 - .../node_modules/@parcel/watcher/package.json | 88 - .../watcher/scripts/build-from-source.js | 13 - .../@parcel/watcher/src/Backend.cc | 182 - .../@parcel/watcher/src/Backend.hh | 37 - .../@parcel/watcher/src/Debounce.cc | 113 - .../@parcel/watcher/src/Debounce.hh | 49 - .../@parcel/watcher/src/DirTree.cc | 152 - .../@parcel/watcher/src/DirTree.hh | 50 - .../node_modules/@parcel/watcher/src/Event.hh | 109 - .../node_modules/@parcel/watcher/src/Glob.cc | 22 - .../node_modules/@parcel/watcher/src/Glob.hh | 34 - .../@parcel/watcher/src/PromiseRunner.hh | 101 - .../@parcel/watcher/src/Signal.hh | 46 - .../@parcel/watcher/src/Watcher.cc | 237 - .../@parcel/watcher/src/Watcher.hh | 73 - .../@parcel/watcher/src/binding.cc | 268 - .../watcher/src/kqueue/KqueueBackend.cc | 306 - .../watcher/src/kqueue/KqueueBackend.hh | 35 - .../watcher/src/linux/InotifyBackend.cc | 232 - .../watcher/src/linux/InotifyBackend.hh | 34 - .../watcher/src/macos/FSEventsBackend.cc | 338 - .../watcher/src/macos/FSEventsBackend.hh | 20 - .../watcher/src/shared/BruteForceBackend.cc | 41 - .../watcher/src/shared/BruteForceBackend.hh | 25 - .../@parcel/watcher/src/unix/fts.cc | 50 - .../@parcel/watcher/src/unix/legacy.cc | 77 - .../@parcel/watcher/src/wasm/WasmBackend.cc | 132 - .../@parcel/watcher/src/wasm/WasmBackend.hh | 34 - .../@parcel/watcher/src/wasm/include.h | 74 - .../@parcel/watcher/src/watchman/BSER.cc | 302 - .../@parcel/watcher/src/watchman/BSER.hh | 69 - .../@parcel/watcher/src/watchman/IPC.hh | 175 - .../watcher/src/watchman/WatchmanBackend.cc | 338 - .../watcher/src/watchman/WatchmanBackend.hh | 35 - .../watcher/src/windows/WindowsBackend.cc | 282 - .../watcher/src/windows/WindowsBackend.hh | 18 - .../@parcel/watcher/src/windows/win_utils.cc | 44 - .../@parcel/watcher/src/windows/win_utils.hh | 11 - .../node_modules/@parcel/watcher/wrapper.js | 77 - .../node_modules/@tailwindcss/cli/LICENSE | 21 - .../node_modules/@tailwindcss/cli/README.md | 40 - .../@tailwindcss/cli/dist/index.mjs | 8 - .../@tailwindcss/cli/package.json | 41 - .../node_modules/@tailwindcss/node/LICENSE | 21 - .../node_modules/@tailwindcss/node/README.md | 40 - .../node/dist/esm-cache.loader.d.mts | 5 - .../node/dist/esm-cache.loader.mjs | 1 - .../@tailwindcss/node/dist/index.d.mts | 117 - .../@tailwindcss/node/dist/index.d.ts | 121 - .../@tailwindcss/node/dist/index.js | 15 - .../@tailwindcss/node/dist/index.mjs | 15 - .../@tailwindcss/node/dist/require-cache.d.ts | 3 - .../@tailwindcss/node/dist/require-cache.js | 1 - .../@tailwindcss/node/package.json | 44 - .../@tailwindcss/oxide-linux-x64-gnu/LICENSE | 21 - .../oxide-linux-x64-gnu/README.md | 3 - .../oxide-linux-x64-gnu/package.json | 30 - .../tailwindcss-oxide.linux-x64-gnu.node | Bin 2249776 -> 0 bytes .../node_modules/@tailwindcss/oxide/LICENSE | 21 - .../@tailwindcss/oxide/index.d.ts | 37 - .../node_modules/@tailwindcss/oxide/index.js | 315 - .../@tailwindcss/oxide/package.json | 63 - new_site/node_modules/braces/LICENSE | 21 - new_site/node_modules/braces/README.md | 586 - new_site/node_modules/braces/index.js | 170 - new_site/node_modules/braces/lib/compile.js | 60 - new_site/node_modules/braces/lib/constants.js | 57 - new_site/node_modules/braces/lib/expand.js | 113 - new_site/node_modules/braces/lib/parse.js | 331 - new_site/node_modules/braces/lib/stringify.js | 32 - new_site/node_modules/braces/lib/utils.js | 122 - new_site/node_modules/braces/package.json | 77 - new_site/node_modules/detect-libc/.npmignore | 7 - new_site/node_modules/detect-libc/LICENSE | 201 - new_site/node_modules/detect-libc/README.md | 78 - .../detect-libc/bin/detect-libc.js | 18 - .../detect-libc/lib/detect-libc.js | 92 - .../node_modules/detect-libc/package.json | 35 - .../node_modules/enhanced-resolve/LICENSE | 20 - .../node_modules/enhanced-resolve/README.md | 183 - .../enhanced-resolve/lib/AliasFieldPlugin.js | 108 - .../enhanced-resolve/lib/AliasPlugin.js | 183 - .../enhanced-resolve/lib/AppendPlugin.js | 49 - .../lib/CachedInputFileSystem.js | 664 - .../lib/CloneBasenamePlugin.js | 53 - .../enhanced-resolve/lib/ConditionalPlugin.js | 59 - .../lib/DescriptionFilePlugin.js | 98 - .../lib/DescriptionFileUtils.js | 201 - .../lib/DirectoryExistsPlugin.js | 63 - .../lib/ExportsFieldPlugin.js | 200 - .../lib/ExtensionAliasPlugin.js | 101 - .../enhanced-resolve/lib/FileExistsPlugin.js | 58 - .../lib/ImportsFieldPlugin.js | 223 - .../lib/JoinRequestPartPlugin.js | 75 - .../enhanced-resolve/lib/JoinRequestPlugin.js | 45 - .../enhanced-resolve/lib/LogInfoPlugin.js | 54 - .../enhanced-resolve/lib/MainFieldPlugin.js | 90 - .../ModulesInHierachicDirectoriesPlugin.js | 9 - .../ModulesInHierarchicalDirectoriesPlugin.js | 87 - .../lib/ModulesInRootPlugin.js | 49 - .../enhanced-resolve/lib/NextPlugin.js | 33 - .../enhanced-resolve/lib/ParsePlugin.js | 76 - .../enhanced-resolve/lib/PnpPlugin.js | 133 - .../enhanced-resolve/lib/Resolver.js | 800 -- .../enhanced-resolve/lib/ResolverFactory.js | 728 -- .../lib/RestrictionsPlugin.js | 70 - .../enhanced-resolve/lib/ResultPlugin.js | 42 - .../enhanced-resolve/lib/RootsPlugin.js | 69 - .../lib/SelfReferencePlugin.js | 82 - .../enhanced-resolve/lib/SymlinkPlugin.js | 100 - .../lib/SyncAsyncFileSystemDecorator.js | 220 - .../enhanced-resolve/lib/TryNextPlugin.js | 41 - .../enhanced-resolve/lib/UnsafeCachePlugin.js | 112 - .../enhanced-resolve/lib/UseFilePlugin.js | 55 - .../lib/createInnerContext.js | 46 - .../enhanced-resolve/lib/forEachBail.js | 50 - .../enhanced-resolve/lib/getInnerRequest.js | 36 - .../enhanced-resolve/lib/getPaths.js | 45 - .../enhanced-resolve/lib/index.js | 203 - .../enhanced-resolve/lib/util/entrypoints.js | 573 - .../enhanced-resolve/lib/util/identifier.js | 69 - .../lib/util/module-browser.js | 8 - .../enhanced-resolve/lib/util/path.js | 203 - .../lib/util/process-browser.js | 22 - .../enhanced-resolve/package.json | 72 - .../node_modules/enhanced-resolve/types.d.ts | 1135 -- new_site/node_modules/fill-range/LICENSE | 21 - new_site/node_modules/fill-range/README.md | 237 - new_site/node_modules/fill-range/index.js | 248 - new_site/node_modules/fill-range/package.json | 74 - new_site/node_modules/graceful-fs/LICENSE | 15 - new_site/node_modules/graceful-fs/README.md | 143 - new_site/node_modules/graceful-fs/clone.js | 23 - .../node_modules/graceful-fs/graceful-fs.js | 448 - .../graceful-fs/legacy-streams.js | 118 - .../node_modules/graceful-fs/package.json | 53 - .../node_modules/graceful-fs/polyfills.js | 355 - new_site/node_modules/is-extglob/LICENSE | 21 - new_site/node_modules/is-extglob/README.md | 107 - new_site/node_modules/is-extglob/index.js | 20 - new_site/node_modules/is-extglob/package.json | 69 - new_site/node_modules/is-glob/LICENSE | 21 - new_site/node_modules/is-glob/README.md | 206 - new_site/node_modules/is-glob/index.js | 150 - new_site/node_modules/is-glob/package.json | 81 - new_site/node_modules/is-number/LICENSE | 21 - new_site/node_modules/is-number/README.md | 187 - new_site/node_modules/is-number/index.js | 18 - new_site/node_modules/is-number/package.json | 82 - new_site/node_modules/jiti/LICENSE | 21 - new_site/node_modules/jiti/README.md | 235 - new_site/node_modules/jiti/dist/babel.cjs | 246 - new_site/node_modules/jiti/dist/jiti.cjs | 1 - new_site/node_modules/jiti/lib/jiti-cli.mjs | 34 - new_site/node_modules/jiti/lib/jiti-hooks.mjs | 117 - .../node_modules/jiti/lib/jiti-native.mjs | 121 - .../node_modules/jiti/lib/jiti-register.d.mts | 1 - .../node_modules/jiti/lib/jiti-register.mjs | 4 - new_site/node_modules/jiti/lib/jiti.cjs | 23 - new_site/node_modules/jiti/lib/jiti.d.cts | 8 - new_site/node_modules/jiti/lib/jiti.d.mts | 8 - new_site/node_modules/jiti/lib/jiti.mjs | 22 - new_site/node_modules/jiti/lib/types.d.ts | 260 - new_site/node_modules/jiti/package.json | 134 - .../lightningcss-linux-x64-gnu/LICENSE | 373 - .../lightningcss-linux-x64-gnu/README.md | 1 - .../lightningcss.linux-x64-gnu.node | Bin 9145136 -> 0 bytes .../lightningcss-linux-x64-gnu/package.json | 38 - new_site/node_modules/lightningcss/LICENSE | 373 - new_site/node_modules/lightningcss/README.md | 105 - .../node_modules/lightningcss/node/ast.d.ts | 9712 --------------- .../lightningcss/node/ast.js.flow | 10342 ---------------- .../node/browserslistToTargets.js | 48 - .../lightningcss/node/composeVisitors.js | 442 - .../node_modules/lightningcss/node/flags.js | 28 - .../node_modules/lightningcss/node/index.d.ts | 477 - .../node_modules/lightningcss/node/index.js | 27 - .../lightningcss/node/index.js.flow | 824 -- .../node_modules/lightningcss/node/index.mjs | 4 - .../lightningcss/node/targets.d.ts | 40 - .../lightningcss/node/targets.js.flow | 39 - .../node_modules/lightningcss/package.json | 110 - new_site/node_modules/micromatch/LICENSE | 21 - new_site/node_modules/micromatch/README.md | 1024 -- new_site/node_modules/micromatch/index.js | 474 - new_site/node_modules/micromatch/package.json | 119 - new_site/node_modules/mri/index.d.ts | 21 - new_site/node_modules/mri/lib/index.js | 119 - new_site/node_modules/mri/lib/index.mjs | 119 - new_site/node_modules/mri/license.md | 21 - new_site/node_modules/mri/package.json | 43 - new_site/node_modules/mri/readme.md | 166 - .../node_modules/node-addon-api/LICENSE.md | 9 - .../node_modules/node-addon-api/README.md | 319 - .../node_modules/node-addon-api/common.gypi | 20 - .../node_modules/node-addon-api/except.gypi | 25 - new_site/node_modules/node-addon-api/index.js | 12 - .../node-addon-api/napi-inl.deprecated.h | 186 - .../node_modules/node-addon-api/napi-inl.h | 6607 ---------- new_site/node_modules/node-addon-api/napi.h | 3201 ----- .../node-addon-api/node_addon_api.gyp | 32 - .../node_modules/node-addon-api/node_api.gyp | 9 - .../node_modules/node-addon-api/noexcept.gypi | 26 - .../node_modules/node-addon-api/nothing.c | 0 .../node-addon-api/package-support.json | 21 - .../node_modules/node-addon-api/package.json | 480 - .../node-addon-api/tools/README.md | 73 - .../node-addon-api/tools/check-napi.js | 99 - .../node-addon-api/tools/clang-format.js | 71 - .../node-addon-api/tools/conversion.js | 301 - .../node-addon-api/tools/eslint-format.js | 79 - new_site/node_modules/picocolors/LICENSE | 15 - new_site/node_modules/picocolors/README.md | 21 - new_site/node_modules/picocolors/package.json | 25 - .../picocolors/picocolors.browser.js | 4 - .../node_modules/picocolors/picocolors.d.ts | 5 - .../node_modules/picocolors/picocolors.js | 75 - new_site/node_modules/picocolors/types.d.ts | 51 - new_site/node_modules/picomatch/CHANGELOG.md | 136 - new_site/node_modules/picomatch/LICENSE | 21 - new_site/node_modules/picomatch/README.md | 708 -- new_site/node_modules/picomatch/index.js | 3 - .../node_modules/picomatch/lib/constants.js | 179 - new_site/node_modules/picomatch/lib/parse.js | 1091 -- .../node_modules/picomatch/lib/picomatch.js | 342 - new_site/node_modules/picomatch/lib/scan.js | 391 - new_site/node_modules/picomatch/lib/utils.js | 64 - new_site/node_modules/picomatch/package.json | 81 - new_site/node_modules/tailwindcss/LICENSE | 21 - new_site/node_modules/tailwindcss/README.md | 40 - .../tailwindcss/dist/chunk-AZANAYY2.mjs | 1 - .../tailwindcss/dist/chunk-N4FJXYNV.mjs | 10 - .../tailwindcss/dist/chunk-V2K3XTS4.mjs | 1 - .../tailwindcss/dist/colors-b_6i0Oi7.d.ts | 295 - .../tailwindcss/dist/colors.d.mts | 295 - .../node_modules/tailwindcss/dist/colors.d.ts | 5 - .../node_modules/tailwindcss/dist/colors.js | 1 - .../node_modules/tailwindcss/dist/colors.mjs | 1 - .../tailwindcss/dist/default-theme.d.mts | 1147 -- .../tailwindcss/dist/default-theme.d.ts | 1147 -- .../tailwindcss/dist/default-theme.js | 1 - .../tailwindcss/dist/default-theme.mjs | 1 - .../dist/flatten-color-palette.d.mts | 6 - .../dist/flatten-color-palette.d.ts | 6 - .../tailwindcss/dist/flatten-color-palette.js | 1 - .../dist/flatten-color-palette.mjs | 1 - .../node_modules/tailwindcss/dist/lib.d.mts | 260 - .../node_modules/tailwindcss/dist/lib.d.ts | 3 - new_site/node_modules/tailwindcss/dist/lib.js | 33 - .../node_modules/tailwindcss/dist/lib.mjs | 24 - .../tailwindcss/dist/plugin.d.mts | 10 - .../node_modules/tailwindcss/dist/plugin.d.ts | 104 - .../node_modules/tailwindcss/dist/plugin.js | 1 - .../node_modules/tailwindcss/dist/plugin.mjs | 1 - .../dist/resolve-config-BIFUA2FY.d.ts | 29 - .../dist/resolve-config-QUZ9b-Gn.d.mts | 190 - .../tailwindcss/dist/types-BTRmm49E.d.mts | 98 - new_site/node_modules/tailwindcss/index.css | 863 -- .../node_modules/tailwindcss/package.json | 82 - .../node_modules/tailwindcss/preflight.css | 383 - new_site/node_modules/tailwindcss/theme.css | 451 - .../node_modules/tailwindcss/utilities.css | 1 - new_site/node_modules/tapable/LICENSE | 21 - new_site/node_modules/tapable/README.md | 296 - .../tapable/lib/AsyncParallelBailHook.js | 85 - .../tapable/lib/AsyncParallelHook.js | 37 - .../tapable/lib/AsyncSeriesBailHook.js | 42 - .../tapable/lib/AsyncSeriesHook.js | 37 - .../tapable/lib/AsyncSeriesLoopHook.js | 37 - .../tapable/lib/AsyncSeriesWaterfallHook.js | 47 - new_site/node_modules/tapable/lib/Hook.js | 175 - .../tapable/lib/HookCodeFactory.js | 468 - new_site/node_modules/tapable/lib/HookMap.js | 61 - .../node_modules/tapable/lib/MultiHook.js | 54 - .../node_modules/tapable/lib/SyncBailHook.js | 51 - new_site/node_modules/tapable/lib/SyncHook.js | 46 - .../node_modules/tapable/lib/SyncLoopHook.js | 46 - .../tapable/lib/SyncWaterfallHook.js | 57 - new_site/node_modules/tapable/lib/index.js | 19 - .../node_modules/tapable/lib/util-browser.js | 16 - new_site/node_modules/tapable/package.json | 44 - new_site/node_modules/tapable/tapable.d.ts | 116 - new_site/node_modules/to-regex-range/LICENSE | 21 - .../node_modules/to-regex-range/README.md | 305 - new_site/node_modules/to-regex-range/index.js | 288 - .../node_modules/to-regex-range/package.json | 88 - new_site/package-lock.json | 931 -- new_site/package.json | 6 - new_site/src/{ => old-tailwind}/index.html | 0 new_site/src/{ => old-tailwind}/input.css | 0 new_site/src/{ => old-tailwind}/output.css | 0 306 files changed, 1 insertion(+), 68555 deletions(-) delete mode 120000 new_site/node_modules/.bin/detect-libc delete mode 120000 new_site/node_modules/.bin/jiti delete mode 120000 new_site/node_modules/.bin/tailwindcss delete mode 100644 new_site/node_modules/.package-lock.json delete mode 100644 new_site/node_modules/@parcel/watcher-linux-x64-glibc/LICENSE delete mode 100644 new_site/node_modules/@parcel/watcher-linux-x64-glibc/README.md delete mode 100644 new_site/node_modules/@parcel/watcher-linux-x64-glibc/package.json delete mode 100644 new_site/node_modules/@parcel/watcher-linux-x64-glibc/watcher.node delete mode 100644 new_site/node_modules/@parcel/watcher/LICENSE delete mode 100644 new_site/node_modules/@parcel/watcher/README.md delete mode 100644 new_site/node_modules/@parcel/watcher/binding.gyp delete mode 100644 new_site/node_modules/@parcel/watcher/index.d.ts delete mode 100644 new_site/node_modules/@parcel/watcher/index.js delete mode 100644 new_site/node_modules/@parcel/watcher/index.js.flow delete mode 100644 new_site/node_modules/@parcel/watcher/package.json delete mode 100644 new_site/node_modules/@parcel/watcher/scripts/build-from-source.js delete mode 100644 new_site/node_modules/@parcel/watcher/src/Backend.cc delete mode 100644 new_site/node_modules/@parcel/watcher/src/Backend.hh delete mode 100644 new_site/node_modules/@parcel/watcher/src/Debounce.cc delete mode 100644 new_site/node_modules/@parcel/watcher/src/Debounce.hh delete mode 100644 new_site/node_modules/@parcel/watcher/src/DirTree.cc delete mode 100644 new_site/node_modules/@parcel/watcher/src/DirTree.hh delete mode 100644 new_site/node_modules/@parcel/watcher/src/Event.hh delete mode 100644 new_site/node_modules/@parcel/watcher/src/Glob.cc delete mode 100644 new_site/node_modules/@parcel/watcher/src/Glob.hh delete mode 100644 new_site/node_modules/@parcel/watcher/src/PromiseRunner.hh delete mode 100644 new_site/node_modules/@parcel/watcher/src/Signal.hh delete mode 100644 new_site/node_modules/@parcel/watcher/src/Watcher.cc delete mode 100644 new_site/node_modules/@parcel/watcher/src/Watcher.hh delete mode 100644 new_site/node_modules/@parcel/watcher/src/binding.cc delete mode 100644 new_site/node_modules/@parcel/watcher/src/kqueue/KqueueBackend.cc delete mode 100644 new_site/node_modules/@parcel/watcher/src/kqueue/KqueueBackend.hh delete mode 100644 new_site/node_modules/@parcel/watcher/src/linux/InotifyBackend.cc delete mode 100644 new_site/node_modules/@parcel/watcher/src/linux/InotifyBackend.hh delete mode 100644 new_site/node_modules/@parcel/watcher/src/macos/FSEventsBackend.cc delete mode 100644 new_site/node_modules/@parcel/watcher/src/macos/FSEventsBackend.hh delete mode 100644 new_site/node_modules/@parcel/watcher/src/shared/BruteForceBackend.cc delete mode 100644 new_site/node_modules/@parcel/watcher/src/shared/BruteForceBackend.hh delete mode 100644 new_site/node_modules/@parcel/watcher/src/unix/fts.cc delete mode 100644 new_site/node_modules/@parcel/watcher/src/unix/legacy.cc delete mode 100644 new_site/node_modules/@parcel/watcher/src/wasm/WasmBackend.cc delete mode 100644 new_site/node_modules/@parcel/watcher/src/wasm/WasmBackend.hh delete mode 100644 new_site/node_modules/@parcel/watcher/src/wasm/include.h delete mode 100644 new_site/node_modules/@parcel/watcher/src/watchman/BSER.cc delete mode 100644 new_site/node_modules/@parcel/watcher/src/watchman/BSER.hh delete mode 100644 new_site/node_modules/@parcel/watcher/src/watchman/IPC.hh delete mode 100644 new_site/node_modules/@parcel/watcher/src/watchman/WatchmanBackend.cc delete mode 100644 new_site/node_modules/@parcel/watcher/src/watchman/WatchmanBackend.hh delete mode 100644 new_site/node_modules/@parcel/watcher/src/windows/WindowsBackend.cc delete mode 100644 new_site/node_modules/@parcel/watcher/src/windows/WindowsBackend.hh delete mode 100644 new_site/node_modules/@parcel/watcher/src/windows/win_utils.cc delete mode 100644 new_site/node_modules/@parcel/watcher/src/windows/win_utils.hh delete mode 100644 new_site/node_modules/@parcel/watcher/wrapper.js delete mode 100644 new_site/node_modules/@tailwindcss/cli/LICENSE delete mode 100644 new_site/node_modules/@tailwindcss/cli/README.md delete mode 100755 new_site/node_modules/@tailwindcss/cli/dist/index.mjs delete mode 100644 new_site/node_modules/@tailwindcss/cli/package.json delete mode 100644 new_site/node_modules/@tailwindcss/node/LICENSE delete mode 100644 new_site/node_modules/@tailwindcss/node/README.md delete mode 100644 new_site/node_modules/@tailwindcss/node/dist/esm-cache.loader.d.mts delete mode 100644 new_site/node_modules/@tailwindcss/node/dist/esm-cache.loader.mjs delete mode 100644 new_site/node_modules/@tailwindcss/node/dist/index.d.mts delete mode 100644 new_site/node_modules/@tailwindcss/node/dist/index.d.ts delete mode 100644 new_site/node_modules/@tailwindcss/node/dist/index.js delete mode 100644 new_site/node_modules/@tailwindcss/node/dist/index.mjs delete mode 100644 new_site/node_modules/@tailwindcss/node/dist/require-cache.d.ts delete mode 100644 new_site/node_modules/@tailwindcss/node/dist/require-cache.js delete mode 100644 new_site/node_modules/@tailwindcss/node/package.json delete mode 100644 new_site/node_modules/@tailwindcss/oxide-linux-x64-gnu/LICENSE delete mode 100644 new_site/node_modules/@tailwindcss/oxide-linux-x64-gnu/README.md delete mode 100644 new_site/node_modules/@tailwindcss/oxide-linux-x64-gnu/package.json delete mode 100644 new_site/node_modules/@tailwindcss/oxide-linux-x64-gnu/tailwindcss-oxide.linux-x64-gnu.node delete mode 100644 new_site/node_modules/@tailwindcss/oxide/LICENSE delete mode 100644 new_site/node_modules/@tailwindcss/oxide/index.d.ts delete mode 100644 new_site/node_modules/@tailwindcss/oxide/index.js delete mode 100644 new_site/node_modules/@tailwindcss/oxide/package.json delete mode 100644 new_site/node_modules/braces/LICENSE delete mode 100644 new_site/node_modules/braces/README.md delete mode 100644 new_site/node_modules/braces/index.js delete mode 100644 new_site/node_modules/braces/lib/compile.js delete mode 100644 new_site/node_modules/braces/lib/constants.js delete mode 100644 new_site/node_modules/braces/lib/expand.js delete mode 100644 new_site/node_modules/braces/lib/parse.js delete mode 100644 new_site/node_modules/braces/lib/stringify.js delete mode 100644 new_site/node_modules/braces/lib/utils.js delete mode 100644 new_site/node_modules/braces/package.json delete mode 100644 new_site/node_modules/detect-libc/.npmignore delete mode 100644 new_site/node_modules/detect-libc/LICENSE delete mode 100644 new_site/node_modules/detect-libc/README.md delete mode 100755 new_site/node_modules/detect-libc/bin/detect-libc.js delete mode 100644 new_site/node_modules/detect-libc/lib/detect-libc.js delete mode 100644 new_site/node_modules/detect-libc/package.json delete mode 100644 new_site/node_modules/enhanced-resolve/LICENSE delete mode 100644 new_site/node_modules/enhanced-resolve/README.md delete mode 100644 new_site/node_modules/enhanced-resolve/lib/AliasFieldPlugin.js delete mode 100644 new_site/node_modules/enhanced-resolve/lib/AliasPlugin.js delete mode 100644 new_site/node_modules/enhanced-resolve/lib/AppendPlugin.js delete mode 100644 new_site/node_modules/enhanced-resolve/lib/CachedInputFileSystem.js delete mode 100644 new_site/node_modules/enhanced-resolve/lib/CloneBasenamePlugin.js delete mode 100644 new_site/node_modules/enhanced-resolve/lib/ConditionalPlugin.js delete mode 100644 new_site/node_modules/enhanced-resolve/lib/DescriptionFilePlugin.js delete mode 100644 new_site/node_modules/enhanced-resolve/lib/DescriptionFileUtils.js delete mode 100644 new_site/node_modules/enhanced-resolve/lib/DirectoryExistsPlugin.js delete mode 100644 new_site/node_modules/enhanced-resolve/lib/ExportsFieldPlugin.js delete mode 100644 new_site/node_modules/enhanced-resolve/lib/ExtensionAliasPlugin.js delete mode 100644 new_site/node_modules/enhanced-resolve/lib/FileExistsPlugin.js delete mode 100644 new_site/node_modules/enhanced-resolve/lib/ImportsFieldPlugin.js delete mode 100644 new_site/node_modules/enhanced-resolve/lib/JoinRequestPartPlugin.js delete mode 100644 new_site/node_modules/enhanced-resolve/lib/JoinRequestPlugin.js delete mode 100644 new_site/node_modules/enhanced-resolve/lib/LogInfoPlugin.js delete mode 100644 new_site/node_modules/enhanced-resolve/lib/MainFieldPlugin.js delete mode 100644 new_site/node_modules/enhanced-resolve/lib/ModulesInHierachicDirectoriesPlugin.js delete mode 100644 new_site/node_modules/enhanced-resolve/lib/ModulesInHierarchicalDirectoriesPlugin.js delete mode 100644 new_site/node_modules/enhanced-resolve/lib/ModulesInRootPlugin.js delete mode 100644 new_site/node_modules/enhanced-resolve/lib/NextPlugin.js delete mode 100644 new_site/node_modules/enhanced-resolve/lib/ParsePlugin.js delete mode 100644 new_site/node_modules/enhanced-resolve/lib/PnpPlugin.js delete mode 100644 new_site/node_modules/enhanced-resolve/lib/Resolver.js delete mode 100644 new_site/node_modules/enhanced-resolve/lib/ResolverFactory.js delete mode 100644 new_site/node_modules/enhanced-resolve/lib/RestrictionsPlugin.js delete mode 100644 new_site/node_modules/enhanced-resolve/lib/ResultPlugin.js delete mode 100644 new_site/node_modules/enhanced-resolve/lib/RootsPlugin.js delete mode 100644 new_site/node_modules/enhanced-resolve/lib/SelfReferencePlugin.js delete mode 100644 new_site/node_modules/enhanced-resolve/lib/SymlinkPlugin.js delete mode 100644 new_site/node_modules/enhanced-resolve/lib/SyncAsyncFileSystemDecorator.js delete mode 100644 new_site/node_modules/enhanced-resolve/lib/TryNextPlugin.js delete mode 100644 new_site/node_modules/enhanced-resolve/lib/UnsafeCachePlugin.js delete mode 100644 new_site/node_modules/enhanced-resolve/lib/UseFilePlugin.js delete mode 100644 new_site/node_modules/enhanced-resolve/lib/createInnerContext.js delete mode 100644 new_site/node_modules/enhanced-resolve/lib/forEachBail.js delete mode 100644 new_site/node_modules/enhanced-resolve/lib/getInnerRequest.js delete mode 100644 new_site/node_modules/enhanced-resolve/lib/getPaths.js delete mode 100644 new_site/node_modules/enhanced-resolve/lib/index.js delete mode 100644 new_site/node_modules/enhanced-resolve/lib/util/entrypoints.js delete mode 100644 new_site/node_modules/enhanced-resolve/lib/util/identifier.js delete mode 100644 new_site/node_modules/enhanced-resolve/lib/util/module-browser.js delete mode 100644 new_site/node_modules/enhanced-resolve/lib/util/path.js delete mode 100644 new_site/node_modules/enhanced-resolve/lib/util/process-browser.js delete mode 100644 new_site/node_modules/enhanced-resolve/package.json delete mode 100644 new_site/node_modules/enhanced-resolve/types.d.ts delete mode 100644 new_site/node_modules/fill-range/LICENSE delete mode 100644 new_site/node_modules/fill-range/README.md delete mode 100644 new_site/node_modules/fill-range/index.js delete mode 100644 new_site/node_modules/fill-range/package.json delete mode 100644 new_site/node_modules/graceful-fs/LICENSE delete mode 100644 new_site/node_modules/graceful-fs/README.md delete mode 100644 new_site/node_modules/graceful-fs/clone.js delete mode 100644 new_site/node_modules/graceful-fs/graceful-fs.js delete mode 100644 new_site/node_modules/graceful-fs/legacy-streams.js delete mode 100644 new_site/node_modules/graceful-fs/package.json delete mode 100644 new_site/node_modules/graceful-fs/polyfills.js delete mode 100644 new_site/node_modules/is-extglob/LICENSE delete mode 100644 new_site/node_modules/is-extglob/README.md delete mode 100644 new_site/node_modules/is-extglob/index.js delete mode 100644 new_site/node_modules/is-extglob/package.json delete mode 100644 new_site/node_modules/is-glob/LICENSE delete mode 100644 new_site/node_modules/is-glob/README.md delete mode 100644 new_site/node_modules/is-glob/index.js delete mode 100644 new_site/node_modules/is-glob/package.json delete mode 100644 new_site/node_modules/is-number/LICENSE delete mode 100644 new_site/node_modules/is-number/README.md delete mode 100644 new_site/node_modules/is-number/index.js delete mode 100644 new_site/node_modules/is-number/package.json delete mode 100644 new_site/node_modules/jiti/LICENSE delete mode 100644 new_site/node_modules/jiti/README.md delete mode 100644 new_site/node_modules/jiti/dist/babel.cjs delete mode 100644 new_site/node_modules/jiti/dist/jiti.cjs delete mode 100755 new_site/node_modules/jiti/lib/jiti-cli.mjs delete mode 100644 new_site/node_modules/jiti/lib/jiti-hooks.mjs delete mode 100644 new_site/node_modules/jiti/lib/jiti-native.mjs delete mode 100644 new_site/node_modules/jiti/lib/jiti-register.d.mts delete mode 100644 new_site/node_modules/jiti/lib/jiti-register.mjs delete mode 100644 new_site/node_modules/jiti/lib/jiti.cjs delete mode 100644 new_site/node_modules/jiti/lib/jiti.d.cts delete mode 100644 new_site/node_modules/jiti/lib/jiti.d.mts delete mode 100644 new_site/node_modules/jiti/lib/jiti.mjs delete mode 100644 new_site/node_modules/jiti/lib/types.d.ts delete mode 100644 new_site/node_modules/jiti/package.json delete mode 100644 new_site/node_modules/lightningcss-linux-x64-gnu/LICENSE delete mode 100644 new_site/node_modules/lightningcss-linux-x64-gnu/README.md delete mode 100644 new_site/node_modules/lightningcss-linux-x64-gnu/lightningcss.linux-x64-gnu.node delete mode 100644 new_site/node_modules/lightningcss-linux-x64-gnu/package.json delete mode 100644 new_site/node_modules/lightningcss/LICENSE delete mode 100644 new_site/node_modules/lightningcss/README.md delete mode 100644 new_site/node_modules/lightningcss/node/ast.d.ts delete mode 100644 new_site/node_modules/lightningcss/node/ast.js.flow delete mode 100644 new_site/node_modules/lightningcss/node/browserslistToTargets.js delete mode 100644 new_site/node_modules/lightningcss/node/composeVisitors.js delete mode 100644 new_site/node_modules/lightningcss/node/flags.js delete mode 100644 new_site/node_modules/lightningcss/node/index.d.ts delete mode 100644 new_site/node_modules/lightningcss/node/index.js delete mode 100644 new_site/node_modules/lightningcss/node/index.js.flow delete mode 100644 new_site/node_modules/lightningcss/node/index.mjs delete mode 100644 new_site/node_modules/lightningcss/node/targets.d.ts delete mode 100644 new_site/node_modules/lightningcss/node/targets.js.flow delete mode 100644 new_site/node_modules/lightningcss/package.json delete mode 100755 new_site/node_modules/micromatch/LICENSE delete mode 100644 new_site/node_modules/micromatch/README.md delete mode 100644 new_site/node_modules/micromatch/index.js delete mode 100644 new_site/node_modules/micromatch/package.json delete mode 100644 new_site/node_modules/mri/index.d.ts delete mode 100644 new_site/node_modules/mri/lib/index.js delete mode 100644 new_site/node_modules/mri/lib/index.mjs delete mode 100644 new_site/node_modules/mri/license.md delete mode 100644 new_site/node_modules/mri/package.json delete mode 100644 new_site/node_modules/mri/readme.md delete mode 100644 new_site/node_modules/node-addon-api/LICENSE.md delete mode 100644 new_site/node_modules/node-addon-api/README.md delete mode 100644 new_site/node_modules/node-addon-api/common.gypi delete mode 100644 new_site/node_modules/node-addon-api/except.gypi delete mode 100644 new_site/node_modules/node-addon-api/index.js delete mode 100644 new_site/node_modules/node-addon-api/napi-inl.deprecated.h delete mode 100644 new_site/node_modules/node-addon-api/napi-inl.h delete mode 100644 new_site/node_modules/node-addon-api/napi.h delete mode 100644 new_site/node_modules/node-addon-api/node_addon_api.gyp delete mode 100644 new_site/node_modules/node-addon-api/node_api.gyp delete mode 100644 new_site/node_modules/node-addon-api/noexcept.gypi delete mode 100644 new_site/node_modules/node-addon-api/nothing.c delete mode 100644 new_site/node_modules/node-addon-api/package-support.json delete mode 100644 new_site/node_modules/node-addon-api/package.json delete mode 100644 new_site/node_modules/node-addon-api/tools/README.md delete mode 100644 new_site/node_modules/node-addon-api/tools/check-napi.js delete mode 100644 new_site/node_modules/node-addon-api/tools/clang-format.js delete mode 100755 new_site/node_modules/node-addon-api/tools/conversion.js delete mode 100644 new_site/node_modules/node-addon-api/tools/eslint-format.js delete mode 100644 new_site/node_modules/picocolors/LICENSE delete mode 100644 new_site/node_modules/picocolors/README.md delete mode 100644 new_site/node_modules/picocolors/package.json delete mode 100644 new_site/node_modules/picocolors/picocolors.browser.js delete mode 100644 new_site/node_modules/picocolors/picocolors.d.ts delete mode 100644 new_site/node_modules/picocolors/picocolors.js delete mode 100644 new_site/node_modules/picocolors/types.d.ts delete mode 100644 new_site/node_modules/picomatch/CHANGELOG.md delete mode 100644 new_site/node_modules/picomatch/LICENSE delete mode 100644 new_site/node_modules/picomatch/README.md delete mode 100644 new_site/node_modules/picomatch/index.js delete mode 100644 new_site/node_modules/picomatch/lib/constants.js delete mode 100644 new_site/node_modules/picomatch/lib/parse.js delete mode 100644 new_site/node_modules/picomatch/lib/picomatch.js delete mode 100644 new_site/node_modules/picomatch/lib/scan.js delete mode 100644 new_site/node_modules/picomatch/lib/utils.js delete mode 100644 new_site/node_modules/picomatch/package.json delete mode 100644 new_site/node_modules/tailwindcss/LICENSE delete mode 100644 new_site/node_modules/tailwindcss/README.md delete mode 100644 new_site/node_modules/tailwindcss/dist/chunk-AZANAYY2.mjs delete mode 100644 new_site/node_modules/tailwindcss/dist/chunk-N4FJXYNV.mjs delete mode 100644 new_site/node_modules/tailwindcss/dist/chunk-V2K3XTS4.mjs delete mode 100644 new_site/node_modules/tailwindcss/dist/colors-b_6i0Oi7.d.ts delete mode 100644 new_site/node_modules/tailwindcss/dist/colors.d.mts delete mode 100644 new_site/node_modules/tailwindcss/dist/colors.d.ts delete mode 100644 new_site/node_modules/tailwindcss/dist/colors.js delete mode 100644 new_site/node_modules/tailwindcss/dist/colors.mjs delete mode 100644 new_site/node_modules/tailwindcss/dist/default-theme.d.mts delete mode 100644 new_site/node_modules/tailwindcss/dist/default-theme.d.ts delete mode 100644 new_site/node_modules/tailwindcss/dist/default-theme.js delete mode 100644 new_site/node_modules/tailwindcss/dist/default-theme.mjs delete mode 100644 new_site/node_modules/tailwindcss/dist/flatten-color-palette.d.mts delete mode 100644 new_site/node_modules/tailwindcss/dist/flatten-color-palette.d.ts delete mode 100644 new_site/node_modules/tailwindcss/dist/flatten-color-palette.js delete mode 100644 new_site/node_modules/tailwindcss/dist/flatten-color-palette.mjs delete mode 100644 new_site/node_modules/tailwindcss/dist/lib.d.mts delete mode 100644 new_site/node_modules/tailwindcss/dist/lib.d.ts delete mode 100644 new_site/node_modules/tailwindcss/dist/lib.js delete mode 100644 new_site/node_modules/tailwindcss/dist/lib.mjs delete mode 100644 new_site/node_modules/tailwindcss/dist/plugin.d.mts delete mode 100644 new_site/node_modules/tailwindcss/dist/plugin.d.ts delete mode 100644 new_site/node_modules/tailwindcss/dist/plugin.js delete mode 100644 new_site/node_modules/tailwindcss/dist/plugin.mjs delete mode 100644 new_site/node_modules/tailwindcss/dist/resolve-config-BIFUA2FY.d.ts delete mode 100644 new_site/node_modules/tailwindcss/dist/resolve-config-QUZ9b-Gn.d.mts delete mode 100644 new_site/node_modules/tailwindcss/dist/types-BTRmm49E.d.mts delete mode 100644 new_site/node_modules/tailwindcss/index.css delete mode 100644 new_site/node_modules/tailwindcss/package.json delete mode 100644 new_site/node_modules/tailwindcss/preflight.css delete mode 100644 new_site/node_modules/tailwindcss/theme.css delete mode 100644 new_site/node_modules/tailwindcss/utilities.css delete mode 100644 new_site/node_modules/tapable/LICENSE delete mode 100644 new_site/node_modules/tapable/README.md delete mode 100644 new_site/node_modules/tapable/lib/AsyncParallelBailHook.js delete mode 100644 new_site/node_modules/tapable/lib/AsyncParallelHook.js delete mode 100644 new_site/node_modules/tapable/lib/AsyncSeriesBailHook.js delete mode 100644 new_site/node_modules/tapable/lib/AsyncSeriesHook.js delete mode 100644 new_site/node_modules/tapable/lib/AsyncSeriesLoopHook.js delete mode 100644 new_site/node_modules/tapable/lib/AsyncSeriesWaterfallHook.js delete mode 100644 new_site/node_modules/tapable/lib/Hook.js delete mode 100644 new_site/node_modules/tapable/lib/HookCodeFactory.js delete mode 100644 new_site/node_modules/tapable/lib/HookMap.js delete mode 100644 new_site/node_modules/tapable/lib/MultiHook.js delete mode 100644 new_site/node_modules/tapable/lib/SyncBailHook.js delete mode 100644 new_site/node_modules/tapable/lib/SyncHook.js delete mode 100644 new_site/node_modules/tapable/lib/SyncLoopHook.js delete mode 100644 new_site/node_modules/tapable/lib/SyncWaterfallHook.js delete mode 100644 new_site/node_modules/tapable/lib/index.js delete mode 100644 new_site/node_modules/tapable/lib/util-browser.js delete mode 100644 new_site/node_modules/tapable/package.json delete mode 100644 new_site/node_modules/tapable/tapable.d.ts delete mode 100644 new_site/node_modules/to-regex-range/LICENSE delete mode 100644 new_site/node_modules/to-regex-range/README.md delete mode 100644 new_site/node_modules/to-regex-range/index.js delete mode 100644 new_site/node_modules/to-regex-range/package.json delete mode 100644 new_site/package-lock.json delete mode 100644 new_site/package.json rename new_site/src/{ => old-tailwind}/index.html (100%) rename new_site/src/{ => old-tailwind}/input.css (100%) rename new_site/src/{ => old-tailwind}/output.css (100%) diff --git a/new_site/README.md b/new_site/README.md index 3a769aa..9752bb5 100644 --- a/new_site/README.md +++ b/new_site/README.md @@ -3,17 +3,6 @@ This is the repo where one can find all the files belonging to the startpage of the privacynerd.de web pages (see [here](https://privacynerd.de/)). -## Building - -To build, run the following command: - -```bash -npx @tailwindcss/cli -i ./src/input.css -o ./src/output.css --watch -``` - -This will start watching for any file changes and immediately update the output.css file. - - ## Running To run a test server, clone the repo, go to the `src/` directory and run the following command: @@ -24,4 +13,4 @@ python3 -m http.server This will start a simple http server built into python that serves all the necessary files. -Warning! Do not use this for production purposes! \ No newline at end of file +Warning! Do not use this for production purposes! diff --git a/new_site/node_modules/.bin/detect-libc b/new_site/node_modules/.bin/detect-libc deleted file mode 120000 index b4c4b76..0000000 --- a/new_site/node_modules/.bin/detect-libc +++ /dev/null @@ -1 +0,0 @@ -../detect-libc/bin/detect-libc.js \ No newline at end of file diff --git a/new_site/node_modules/.bin/jiti b/new_site/node_modules/.bin/jiti deleted file mode 120000 index 18f28cf..0000000 --- a/new_site/node_modules/.bin/jiti +++ /dev/null @@ -1 +0,0 @@ -../jiti/lib/jiti-cli.mjs \ No newline at end of file diff --git a/new_site/node_modules/.bin/tailwindcss b/new_site/node_modules/.bin/tailwindcss deleted file mode 120000 index bad031c..0000000 --- a/new_site/node_modules/.bin/tailwindcss +++ /dev/null @@ -1 +0,0 @@ -../@tailwindcss/cli/dist/index.mjs \ No newline at end of file diff --git a/new_site/node_modules/.package-lock.json b/new_site/node_modules/.package-lock.json deleted file mode 100644 index 8a5cade..0000000 --- a/new_site/node_modules/.package-lock.json +++ /dev/null @@ -1,345 +0,0 @@ -{ - "name": "startpage", - "lockfileVersion": 3, - "requires": true, - "packages": { - "node_modules/@parcel/watcher": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.5.1.tgz", - "integrity": "sha512-dfUnCxiN9H4ap84DvD2ubjw+3vUNpstxa0TneY/Paat8a3R4uQZDLSvWjmznAY/DoahqTHl9V46HF/Zs3F29pg==", - "hasInstallScript": true, - "license": "MIT", - "dependencies": { - "detect-libc": "^1.0.3", - "is-glob": "^4.0.3", - "micromatch": "^4.0.5", - "node-addon-api": "^7.0.0" - }, - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - }, - "optionalDependencies": { - "@parcel/watcher-android-arm64": "2.5.1", - "@parcel/watcher-darwin-arm64": "2.5.1", - "@parcel/watcher-darwin-x64": "2.5.1", - "@parcel/watcher-freebsd-x64": "2.5.1", - "@parcel/watcher-linux-arm-glibc": "2.5.1", - "@parcel/watcher-linux-arm-musl": "2.5.1", - "@parcel/watcher-linux-arm64-glibc": "2.5.1", - "@parcel/watcher-linux-arm64-musl": "2.5.1", - "@parcel/watcher-linux-x64-glibc": "2.5.1", - "@parcel/watcher-linux-x64-musl": "2.5.1", - "@parcel/watcher-win32-arm64": "2.5.1", - "@parcel/watcher-win32-ia32": "2.5.1", - "@parcel/watcher-win32-x64": "2.5.1" - } - }, - "node_modules/@parcel/watcher-linux-x64-glibc": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-glibc/-/watcher-linux-x64-glibc-2.5.1.tgz", - "integrity": "sha512-GcESn8NZySmfwlTsIur+49yDqSny2IhPeZfXunQi48DMugKeZ7uy1FX83pO0X22sHntJ4Ub+9k34XQCX+oHt2A==", - "cpu": [ - "x64" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@tailwindcss/cli": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/@tailwindcss/cli/-/cli-4.0.5.tgz", - "integrity": "sha512-ssBrccJzJombJD+QVnxhIyIiBlLZXEph1CqS79FbijWBNWmGW+nYzApC0KeVoG2F1xtY4BCXdqUmaOVQeroo0g==", - "license": "MIT", - "dependencies": { - "@parcel/watcher": "^2.5.1", - "@tailwindcss/node": "^4.0.5", - "@tailwindcss/oxide": "^4.0.5", - "enhanced-resolve": "^5.18.0", - "lightningcss": "^1.29.1", - "mri": "^1.2.0", - "picocolors": "^1.1.1", - "tailwindcss": "4.0.5" - }, - "bin": { - "tailwindcss": "dist/index.mjs" - } - }, - "node_modules/@tailwindcss/node": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/@tailwindcss/node/-/node-4.0.5.tgz", - "integrity": "sha512-ffTz4DX1cgr4XPuqjhm32YV6Lyx58R1CxAAnSFTamg6wXwfk3oWdb6exgAbGesPzvUgicTO0gwUdQGSsg4nNog==", - "license": "MIT", - "dependencies": { - "enhanced-resolve": "^5.18.0", - "jiti": "^2.4.2", - "tailwindcss": "4.0.5" - } - }, - "node_modules/@tailwindcss/oxide": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide/-/oxide-4.0.5.tgz", - "integrity": "sha512-iWGyOCu0TuzvCBisWbGv2K9+7QCfE0ztgtrZOvb9iF7V7ChVkD15Obe3HevZrhjngAc34jDA+OMSuSvkrpTy4A==", - "license": "MIT", - "engines": { - "node": ">= 10" - }, - "optionalDependencies": { - "@tailwindcss/oxide-android-arm64": "4.0.5", - "@tailwindcss/oxide-darwin-arm64": "4.0.5", - "@tailwindcss/oxide-darwin-x64": "4.0.5", - "@tailwindcss/oxide-freebsd-x64": "4.0.5", - "@tailwindcss/oxide-linux-arm-gnueabihf": "4.0.5", - "@tailwindcss/oxide-linux-arm64-gnu": "4.0.5", - "@tailwindcss/oxide-linux-arm64-musl": "4.0.5", - "@tailwindcss/oxide-linux-x64-gnu": "4.0.5", - "@tailwindcss/oxide-linux-x64-musl": "4.0.5", - "@tailwindcss/oxide-win32-arm64-msvc": "4.0.5", - "@tailwindcss/oxide-win32-x64-msvc": "4.0.5" - } - }, - "node_modules/@tailwindcss/oxide-linux-x64-gnu": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-x64-gnu/-/oxide-linux-x64-gnu-4.0.5.tgz", - "integrity": "sha512-DYgieNDRkTy69bWPgdsc47nAXa74P63P/RetUwYM9vYj5USyOfHCEcqIthkCuYw3dXKBhjgwe697TmL2g2jpAw==", - "cpu": [ - "x64" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/braces": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", - "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", - "license": "MIT", - "dependencies": { - "fill-range": "^7.1.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/detect-libc": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", - "integrity": "sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==", - "license": "Apache-2.0", - "bin": { - "detect-libc": "bin/detect-libc.js" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/enhanced-resolve": { - "version": "5.18.1", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.18.1.tgz", - "integrity": "sha512-ZSW3ma5GkcQBIpwZTSRAI8N71Uuwgs93IezB7mf7R60tC8ZbJideoDNKjHn2O9KIlx6rkGTTEk1xUCK2E1Y2Yg==", - "license": "MIT", - "dependencies": { - "graceful-fs": "^4.2.4", - "tapable": "^2.2.0" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/fill-range": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", - "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", - "license": "MIT", - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/graceful-fs": { - "version": "4.2.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", - "license": "ISC" - }, - "node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "license": "MIT", - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "license": "MIT", - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/jiti": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/jiti/-/jiti-2.4.2.tgz", - "integrity": "sha512-rg9zJN+G4n2nfJl5MW3BMygZX56zKPNVEYYqq7adpmMh4Jn2QNEwhvQlFy6jPVdcod7txZtKHWnyZiA3a0zP7A==", - "license": "MIT", - "bin": { - "jiti": "lib/jiti-cli.mjs" - } - }, - "node_modules/lightningcss": { - "version": "1.29.1", - "resolved": "https://registry.npmjs.org/lightningcss/-/lightningcss-1.29.1.tgz", - "integrity": "sha512-FmGoeD4S05ewj+AkhTY+D+myDvXI6eL27FjHIjoyUkO/uw7WZD1fBVs0QxeYWa7E17CUHJaYX/RUGISCtcrG4Q==", - "license": "MPL-2.0", - "dependencies": { - "detect-libc": "^1.0.3" - }, - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - }, - "optionalDependencies": { - "lightningcss-darwin-arm64": "1.29.1", - "lightningcss-darwin-x64": "1.29.1", - "lightningcss-freebsd-x64": "1.29.1", - "lightningcss-linux-arm-gnueabihf": "1.29.1", - "lightningcss-linux-arm64-gnu": "1.29.1", - "lightningcss-linux-arm64-musl": "1.29.1", - "lightningcss-linux-x64-gnu": "1.29.1", - "lightningcss-linux-x64-musl": "1.29.1", - "lightningcss-win32-arm64-msvc": "1.29.1", - "lightningcss-win32-x64-msvc": "1.29.1" - } - }, - "node_modules/lightningcss-linux-x64-gnu": { - "version": "1.29.1", - "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.29.1.tgz", - "integrity": "sha512-u1S+xdODy/eEtjADqirA774y3jLcm8RPtYztwReEXoZKdzgsHYPl0s5V52Tst+GKzqjebkULT86XMSxejzfISw==", - "cpu": [ - "x64" - ], - "license": "MPL-2.0", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/micromatch": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", - "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", - "license": "MIT", - "dependencies": { - "braces": "^3.0.3", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/mri": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/mri/-/mri-1.2.0.tgz", - "integrity": "sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==", - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/node-addon-api": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.1.tgz", - "integrity": "sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==", - "license": "MIT" - }, - "node_modules/picocolors": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", - "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", - "license": "ISC" - }, - "node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "license": "MIT", - "engines": { - "node": ">=8.6" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/tailwindcss": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-4.0.5.tgz", - "integrity": "sha512-DZZIKX3tA23LGTjHdnwlJOTxfICD1cPeykLLsYF1RQBI9QsCR3i0szohJfJDVjr6aNRAIio5WVO7FGB77fRHwg==", - "license": "MIT" - }, - "node_modules/tapable": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", - "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "license": "MIT", - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - } - } -} diff --git a/new_site/node_modules/@parcel/watcher-linux-x64-glibc/LICENSE b/new_site/node_modules/@parcel/watcher-linux-x64-glibc/LICENSE deleted file mode 100644 index 7fb9bc9..0000000 --- a/new_site/node_modules/@parcel/watcher-linux-x64-glibc/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2017-present Devon Govett - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/new_site/node_modules/@parcel/watcher-linux-x64-glibc/README.md b/new_site/node_modules/@parcel/watcher-linux-x64-glibc/README.md deleted file mode 100644 index 0214354..0000000 --- a/new_site/node_modules/@parcel/watcher-linux-x64-glibc/README.md +++ /dev/null @@ -1 +0,0 @@ -This is the linux-x64-glibc build of @parcel/watcher. See https://github.com/parcel-bundler/watcher for details. \ No newline at end of file diff --git a/new_site/node_modules/@parcel/watcher-linux-x64-glibc/package.json b/new_site/node_modules/@parcel/watcher-linux-x64-glibc/package.json deleted file mode 100644 index 866de56..0000000 --- a/new_site/node_modules/@parcel/watcher-linux-x64-glibc/package.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "name": "@parcel/watcher-linux-x64-glibc", - "version": "2.5.1", - "main": "watcher.node", - "repository": { - "type": "git", - "url": "https://github.com/parcel-bundler/watcher.git" - }, - "description": "A native C++ Node module for querying and subscribing to filesystem events. Used by Parcel 2.", - "license": "MIT", - "publishConfig": { - "access": "public" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - }, - "files": [ - "watcher.node" - ], - "engines": { - "node": ">= 10.0.0" - }, - "os": [ - "linux" - ], - "cpu": [ - "x64" - ], - "libc": [ - "glibc" - ] -} diff --git a/new_site/node_modules/@parcel/watcher-linux-x64-glibc/watcher.node b/new_site/node_modules/@parcel/watcher-linux-x64-glibc/watcher.node deleted file mode 100644 index ee86362d1bdaa78c20727d98de9cb3a236a5aadb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 514960 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 z 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 z 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

i7BMCt9OQ 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 { - console.log(events); -}); - -// later on... -await subscription.unsubscribe(); - -// Get events since some saved snapshot in the past -let snapshotPath = path.join(process.cwd(), 'snapshot.txt'); -let events = await watcher.getEventsSince(process.cwd(), snapshotPath); - -// Save a snapshot for later -await watcher.writeSnapshot(process.cwd(), snapshotPath); -``` - -## Watching - -`@parcel/watcher` supports subscribing to realtime notifications of changes in a directory. It works recursively, so changes in sub-directories will also be emitted. - -Events are throttled and coalesced for performance during large changes like `git checkout` or `npm install`, and a single notification will be emitted with all of the events at the end. - -Only one notification will be emitted per file. For example, if a file was both created and updated since the last event, you'll get only a `create` event. If a file is both created and deleted, you will not be notifed of that file. Renames cause two events: a `delete` for the old name, and a `create` for the new name. - -```javascript -let subscription = await watcher.subscribe(process.cwd(), (err, events) => { - console.log(events); -}); -``` - -Events have two properties: - -- `type` - the event type: `create`, `update`, or `delete`. -- `path` - the absolute path to the file or directory. - -To unsubscribe from change notifications, call the `unsubscribe` method on the returned subscription object. - -```javascript -await subscription.unsubscribe(); -``` - -`@parcel/watcher` has the following watcher backends, listed in priority order: - -- [FSEvents](https://developer.apple.com/documentation/coreservices/file_system_events) on macOS -- [Watchman](https://facebook.github.io/watchman/) if installed -- [inotify](http://man7.org/linux/man-pages/man7/inotify.7.html) on Linux -- [ReadDirectoryChangesW](https://msdn.microsoft.com/en-us/library/windows/desktop/aa365465%28v%3Dvs.85%29.aspx) on Windows -- [kqueue](https://man.freebsd.org/cgi/man.cgi?kqueue) on FreeBSD, or as an alternative to FSEvents on macOS - -You can specify the exact backend you wish to use by passing the `backend` option. If that backend is not available on the current platform, the default backend will be used instead. See below for the list of backend names that can be passed to the options. - -## Querying - -`@parcel/watcher` also supports querying for historical changes made in a directory, even when your program is not running. This makes it easy to invalidate a cache and re-build only the files that have changed, for example. It can be **significantly** faster than traversing the entire filesystem to determine what files changed, depending on the platform. - -In order to query for historical changes, you first need a previous snapshot to compare to. This can be saved to a file with the `writeSnapshot` function, e.g. just before your program exits. - -```javascript -await watcher.writeSnapshot(dirPath, snapshotPath); -``` - -When your program starts up, you can query for changes that have occurred since that snapshot using the `getEventsSince` function. - -```javascript -let events = await watcher.getEventsSince(dirPath, snapshotPath); -``` - -The events returned are exactly the same as the events that would be passed to the `subscribe` callback (see above). - -`@parcel/watcher` has the following watcher backends, listed in priority order: - -- [FSEvents](https://developer.apple.com/documentation/coreservices/file_system_events) on macOS -- [Watchman](https://facebook.github.io/watchman/) if installed -- [fts](http://man7.org/linux/man-pages/man3/fts.3.html) (brute force) on Linux and FreeBSD -- [FindFirstFile](https://docs.microsoft.com/en-us/windows/desktop/api/fileapi/nf-fileapi-findfirstfilea) (brute force) on Windows - -The FSEvents (macOS) and Watchman backends are significantly more performant than the brute force backends used by default on Linux and Windows, for example returning results in miliseconds instead of seconds for large directory trees. This is because a background daemon monitoring filesystem changes on those platforms allows us to query cached data rather than traversing the filesystem manually (brute force). - -macOS has good performance with FSEvents by default. For the best performance on other platforms, install [Watchman](https://facebook.github.io/watchman/) and it will be used by `@parcel/watcher` automatically. - -You can specify the exact backend you wish to use by passing the `backend` option. If that backend is not available on the current platform, the default backend will be used instead. See below for the list of backend names that can be passed to the options. - -## Options - -All of the APIs in `@parcel/watcher` support the following options, which are passed as an object as the last function argument. - -- `ignore` - an array of paths or glob patterns to ignore. uses [`is-glob`](https://github.com/micromatch/is-glob) to distinguish paths from globs. glob patterns are parsed with [`micromatch`](https://github.com/micromatch/micromatch) (see [features](https://github.com/micromatch/micromatch#matching-features)). - - paths can be relative or absolute and can either be files or directories. No events will be emitted about these files or directories or their children. - - glob patterns match on relative paths from the root that is watched. No events will be emitted for matching paths. -- `backend` - the name of an explicitly chosen backend to use. Allowed options are `"fs-events"`, `"watchman"`, `"inotify"`, `"kqueue"`, `"windows"`, or `"brute-force"` (only for querying). If the specified backend is not available on the current platform, the default backend will be used instead. - -## WASM - -The `@parcel/watcher-wasm` package can be used in place of `@parcel/watcher` on unsupported platforms. It relies on the Node `fs` module, so in non-Node environments such as browsers, an `fs` polyfill will be needed. - -**Note**: the WASM implementation is significantly less efficient than the native implementations because it must crawl the file system to watch each directory individually. Use the native `@parcel/watcher` package wherever possible. - -```js -import {subscribe} from '@parcel/watcher-wasm'; - -// Use the module as documented above. -subscribe(/* ... */); -``` - -## Who is using this? - -- [Parcel 2](https://parceljs.org/) -- [VSCode](https://code.visualstudio.com/updates/v1_62#_file-watching-changes) -- [Tailwind CSS Intellisense](https://github.com/tailwindlabs/tailwindcss-intellisense) -- [Gatsby Cloud](https://twitter.com/chatsidhartha/status/1435647412828196867) -- [Nx](https://nx.dev) -- [Nuxt](https://nuxt.com) - -## License - -MIT diff --git a/new_site/node_modules/@parcel/watcher/binding.gyp b/new_site/node_modules/@parcel/watcher/binding.gyp deleted file mode 100644 index 9b8f6ff..0000000 --- a/new_site/node_modules/@parcel/watcher/binding.gyp +++ /dev/null @@ -1,93 +0,0 @@ -{ - "targets": [ - { - "target_name": "watcher", - "defines": [ "NAPI_DISABLE_CPP_EXCEPTIONS" ], - "sources": [ "src/binding.cc", "src/Watcher.cc", "src/Backend.cc", "src/DirTree.cc", "src/Glob.cc", "src/Debounce.cc" ], - "include_dirs" : [" unknown; - export interface AsyncSubscription { - unsubscribe(): Promise; - } - export interface Event { - path: FilePath; - type: EventType; - } - export function getEventsSince( - dir: FilePath, - snapshot: FilePath, - opts?: Options - ): Promise; - export function subscribe( - dir: FilePath, - fn: SubscribeCallback, - opts?: Options - ): Promise; - export function unsubscribe( - dir: FilePath, - fn: SubscribeCallback, - opts?: Options - ): Promise; - export function writeSnapshot( - dir: FilePath, - snapshot: FilePath, - opts?: Options - ): Promise; -} - -export = ParcelWatcher; \ No newline at end of file diff --git a/new_site/node_modules/@parcel/watcher/index.js b/new_site/node_modules/@parcel/watcher/index.js deleted file mode 100644 index 8afb2b1..0000000 --- a/new_site/node_modules/@parcel/watcher/index.js +++ /dev/null @@ -1,41 +0,0 @@ -const {createWrapper} = require('./wrapper'); - -let name = `@parcel/watcher-${process.platform}-${process.arch}`; -if (process.platform === 'linux') { - const { MUSL, family } = require('detect-libc'); - if (family === MUSL) { - name += '-musl'; - } else { - name += '-glibc'; - } -} - -let binding; -try { - binding = require(name); -} catch (err) { - handleError(err); - try { - binding = require('./build/Release/watcher.node'); - } catch (err) { - handleError(err); - try { - binding = require('./build/Debug/watcher.node'); - } catch (err) { - handleError(err); - throw new Error(`No prebuild or local build of @parcel/watcher found. Tried ${name}. Please ensure it is installed (don't use --no-optional when installing with npm). Otherwise it is possible we don't support your platform yet. If this is the case, please report an issue to https://github.com/parcel-bundler/watcher.`); - } - } -} - -function handleError(err) { - if (err?.code !== 'MODULE_NOT_FOUND') { - throw err; - } -} - -const wrapper = createWrapper(binding); -exports.writeSnapshot = wrapper.writeSnapshot; -exports.getEventsSince = wrapper.getEventsSince; -exports.subscribe = wrapper.subscribe; -exports.unsubscribe = wrapper.unsubscribe; diff --git a/new_site/node_modules/@parcel/watcher/index.js.flow b/new_site/node_modules/@parcel/watcher/index.js.flow deleted file mode 100644 index d75da93..0000000 --- a/new_site/node_modules/@parcel/watcher/index.js.flow +++ /dev/null @@ -1,48 +0,0 @@ -// @flow -declare type FilePath = string; -declare type GlobPattern = string; - -export type BackendType = - | 'fs-events' - | 'watchman' - | 'inotify' - | 'windows' - | 'brute-force'; -export type EventType = 'create' | 'update' | 'delete'; -export interface Options { - ignore?: Array, - backend?: BackendType -} -export type SubscribeCallback = ( - err: ?Error, - events: Array -) => mixed; -export interface AsyncSubscription { - unsubscribe(): Promise -} -export interface Event { - path: FilePath, - type: EventType -} -declare module.exports: { - getEventsSince( - dir: FilePath, - snapshot: FilePath, - opts?: Options - ): Promise>, - subscribe( - dir: FilePath, - fn: SubscribeCallback, - opts?: Options - ): Promise, - unsubscribe( - dir: FilePath, - fn: SubscribeCallback, - opts?: Options - ): Promise, - writeSnapshot( - dir: FilePath, - snapshot: FilePath, - opts?: Options - ): Promise -} \ No newline at end of file diff --git a/new_site/node_modules/@parcel/watcher/package.json b/new_site/node_modules/@parcel/watcher/package.json deleted file mode 100644 index dc41500..0000000 --- a/new_site/node_modules/@parcel/watcher/package.json +++ /dev/null @@ -1,88 +0,0 @@ -{ - "name": "@parcel/watcher", - "version": "2.5.1", - "main": "index.js", - "types": "index.d.ts", - "repository": { - "type": "git", - "url": "https://github.com/parcel-bundler/watcher.git" - }, - "description": "A native C++ Node module for querying and subscribing to filesystem events. Used by Parcel 2.", - "license": "MIT", - "publishConfig": { - "access": "public" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - }, - "files": [ - "index.js", - "index.js.flow", - "index.d.ts", - "wrapper.js", - "package.json", - "README.md", - "LICENSE", - "src", - "scripts/build-from-source.js", - "binding.gyp" - ], - "scripts": { - "prebuild": "prebuildify --napi --strip --tag-libc", - "format": "prettier --write \"./**/*.{js,json,md}\"", - "build": "node-gyp rebuild", - "install": "node scripts/build-from-source.js", - "test": "mocha" - }, - "engines": { - "node": ">= 10.0.0" - }, - "husky": { - "hooks": { - "pre-commit": "lint-staged" - } - }, - "lint-staged": { - "*.{js,json,md}": [ - "prettier --write", - "git add" - ] - }, - "dependencies": { - "detect-libc": "^1.0.3", - "is-glob": "^4.0.3", - "micromatch": "^4.0.5", - "node-addon-api": "^7.0.0" - }, - "devDependencies": { - "esbuild": "^0.19.8", - "fs-extra": "^10.0.0", - "husky": "^7.0.2", - "lint-staged": "^11.1.2", - "mocha": "^9.1.1", - "napi-wasm": "^1.1.0", - "prebuildify": "^6.0.1", - "prettier": "^2.3.2" - }, - "binary": { - "napi_versions": [ - 3 - ] - }, - "optionalDependencies": { - "@parcel/watcher-darwin-x64": "2.5.1", - "@parcel/watcher-darwin-arm64": "2.5.1", - "@parcel/watcher-win32-x64": "2.5.1", - "@parcel/watcher-win32-arm64": "2.5.1", - "@parcel/watcher-win32-ia32": "2.5.1", - "@parcel/watcher-linux-x64-glibc": "2.5.1", - "@parcel/watcher-linux-x64-musl": "2.5.1", - "@parcel/watcher-linux-arm64-glibc": "2.5.1", - "@parcel/watcher-linux-arm64-musl": "2.5.1", - "@parcel/watcher-linux-arm-glibc": "2.5.1", - "@parcel/watcher-linux-arm-musl": "2.5.1", - "@parcel/watcher-android-arm64": "2.5.1", - "@parcel/watcher-freebsd-x64": "2.5.1" - } -} diff --git a/new_site/node_modules/@parcel/watcher/scripts/build-from-source.js b/new_site/node_modules/@parcel/watcher/scripts/build-from-source.js deleted file mode 100644 index 4602008..0000000 --- a/new_site/node_modules/@parcel/watcher/scripts/build-from-source.js +++ /dev/null @@ -1,13 +0,0 @@ -#!/usr/bin/env node - -const {spawn} = require('child_process'); - -if (process.env.npm_config_build_from_source === 'true') { - build(); -} - -function build() { - spawn('node-gyp', ['rebuild'], { stdio: 'inherit', shell: true }).on('exit', function (code) { - process.exit(code); - }); -} diff --git a/new_site/node_modules/@parcel/watcher/src/Backend.cc b/new_site/node_modules/@parcel/watcher/src/Backend.cc deleted file mode 100644 index fcf5544..0000000 --- a/new_site/node_modules/@parcel/watcher/src/Backend.cc +++ /dev/null @@ -1,182 +0,0 @@ -#ifdef FS_EVENTS -#include "macos/FSEventsBackend.hh" -#endif -#ifdef WATCHMAN -#include "watchman/WatchmanBackend.hh" -#endif -#ifdef WINDOWS -#include "windows/WindowsBackend.hh" -#endif -#ifdef INOTIFY -#include "linux/InotifyBackend.hh" -#endif -#ifdef KQUEUE -#include "kqueue/KqueueBackend.hh" -#endif -#ifdef __wasm32__ -#include "wasm/WasmBackend.hh" -#endif -#include "shared/BruteForceBackend.hh" - -#include "Backend.hh" -#include - -static std::unordered_map> sharedBackends; - -std::shared_ptr getBackend(std::string backend) { - // Use FSEvents on macOS by default. - // Use watchman by default if available on other platforms. - // Fall back to brute force. - #ifdef FS_EVENTS - if (backend == "fs-events" || backend == "default") { - return std::make_shared(); - } - #endif - #ifdef WATCHMAN - if ((backend == "watchman" || backend == "default") && WatchmanBackend::checkAvailable()) { - return std::make_shared(); - } - #endif - #ifdef WINDOWS - if (backend == "windows" || backend == "default") { - return std::make_shared(); - } - #endif - #ifdef INOTIFY - if (backend == "inotify" || backend == "default") { - return std::make_shared(); - } - #endif - #ifdef KQUEUE - if (backend == "kqueue" || backend == "default") { - return std::make_shared(); - } - #endif - #ifdef __wasm32__ - if (backend == "wasm" || backend == "default") { - return std::make_shared(); - } - #endif - if (backend == "brute-force" || backend == "default") { - return std::make_shared(); - } - - return nullptr; -} - -std::shared_ptr Backend::getShared(std::string backend) { - auto found = sharedBackends.find(backend); - if (found != sharedBackends.end()) { - return found->second; - } - - auto result = getBackend(backend); - if (!result) { - return getShared("default"); - } - - result->run(); - sharedBackends.emplace(backend, result); - return result; -} - -void removeShared(Backend *backend) { - for (auto it = sharedBackends.begin(); it != sharedBackends.end(); it++) { - if (it->second.get() == backend) { - sharedBackends.erase(it); - break; - } - } - - // Free up memory. - if (sharedBackends.size() == 0) { - sharedBackends.rehash(0); - } -} - -void Backend::run() { - #ifndef __wasm32__ - mThread = std::thread([this] () { - try { - start(); - } catch (std::exception &err) { - handleError(err); - } - }); - - if (mThread.joinable()) { - mStartedSignal.wait(); - } - #else - try { - start(); - } catch (std::exception &err) { - handleError(err); - } - #endif -} - -void Backend::notifyStarted() { - mStartedSignal.notify(); -} - -void Backend::start() { - notifyStarted(); -} - -Backend::~Backend() { - #ifndef __wasm32__ - // Wait for thread to stop - if (mThread.joinable()) { - // If the backend is being destroyed from the thread itself, detach, otherwise join. - if (mThread.get_id() == std::this_thread::get_id()) { - mThread.detach(); - } else { - mThread.join(); - } - } - #endif -} - -void Backend::watch(WatcherRef watcher) { - std::unique_lock lock(mMutex); - auto res = mSubscriptions.find(watcher); - if (res == mSubscriptions.end()) { - try { - this->subscribe(watcher); - mSubscriptions.insert(watcher); - } catch (std::exception &err) { - unref(); - throw; - } - } -} - -void Backend::unwatch(WatcherRef watcher) { - std::unique_lock lock(mMutex); - size_t deleted = mSubscriptions.erase(watcher); - if (deleted > 0) { - this->unsubscribe(watcher); - unref(); - } -} - -void Backend::unref() { - if (mSubscriptions.size() == 0) { - removeShared(this); - } -} - -void Backend::handleWatcherError(WatcherError &err) { - unwatch(err.mWatcher); - err.mWatcher->notifyError(err); -} - -void Backend::handleError(std::exception &err) { - std::unique_lock lock(mMutex); - for (auto it = mSubscriptions.begin(); it != mSubscriptions.end(); it++) { - (*it)->notifyError(err); - } - - removeShared(this); -} diff --git a/new_site/node_modules/@parcel/watcher/src/Backend.hh b/new_site/node_modules/@parcel/watcher/src/Backend.hh deleted file mode 100644 index d673bd1..0000000 --- a/new_site/node_modules/@parcel/watcher/src/Backend.hh +++ /dev/null @@ -1,37 +0,0 @@ -#ifndef BACKEND_H -#define BACKEND_H - -#include "Event.hh" -#include "Watcher.hh" -#include "Signal.hh" -#include - -class Backend { -public: - virtual ~Backend(); - void run(); - void notifyStarted(); - - virtual void start(); - virtual void writeSnapshot(WatcherRef watcher, std::string *snapshotPath) = 0; - virtual void getEventsSince(WatcherRef watcher, std::string *snapshotPath) = 0; - virtual void subscribe(WatcherRef watcher) = 0; - virtual void unsubscribe(WatcherRef watcher) = 0; - - static std::shared_ptr getShared(std::string backend); - - void watch(WatcherRef watcher); - void unwatch(WatcherRef watcher); - void unref(); - void handleWatcherError(WatcherError &err); - - std::mutex mMutex; - std::thread mThread; -private: - std::unordered_set mSubscriptions; - Signal mStartedSignal; - - void handleError(std::exception &err); -}; - -#endif diff --git a/new_site/node_modules/@parcel/watcher/src/Debounce.cc b/new_site/node_modules/@parcel/watcher/src/Debounce.cc deleted file mode 100644 index be07e78..0000000 --- a/new_site/node_modules/@parcel/watcher/src/Debounce.cc +++ /dev/null @@ -1,113 +0,0 @@ -#include "Debounce.hh" - -#ifdef __wasm32__ -extern "C" void on_timeout(void *ctx) { - Debounce *debounce = (Debounce *)ctx; - debounce->notify(); -} -#endif - -std::shared_ptr Debounce::getShared() { - static std::weak_ptr sharedInstance; - std::shared_ptr shared = sharedInstance.lock(); - if (!shared) { - shared = std::make_shared(); - sharedInstance = shared; - } - - return shared; -} - -Debounce::Debounce() { - mRunning = true; - #ifndef __wasm32__ - mThread = std::thread([this] () { - loop(); - }); - #endif -} - -Debounce::~Debounce() { - mRunning = false; - #ifndef __wasm32__ - mWaitSignal.notify(); - mThread.join(); - #endif -} - -void Debounce::add(void *key, std::function cb) { - std::unique_lock lock(mMutex); - mCallbacks.emplace(key, cb); -} - -void Debounce::remove(void *key) { - std::unique_lock lock(mMutex); - mCallbacks.erase(key); -} - -void Debounce::trigger() { - std::unique_lock lock(mMutex); - #ifdef __wasm32__ - notifyIfReady(); - #else - mWaitSignal.notify(); - #endif -} - -#ifndef __wasm32__ -void Debounce::loop() { - while (mRunning) { - mWaitSignal.wait(); - if (!mRunning) { - break; - } - - notifyIfReady(); - } -} -#endif - -void Debounce::notifyIfReady() { - if (!mRunning) { - return; - } - - // If we haven't seen an event in more than the maximum wait time, notify callbacks immediately - // to ensure that we don't wait forever. Otherwise, wait for the minimum wait time and batch - // subsequent fast changes. This also means the first file change in a batch is notified immediately, - // separately from the rest of the batch. This seems like an acceptable tradeoff if the common case - // is that only a single file was updated at a time. - auto time = std::chrono::steady_clock::now(); - if ((time - mLastTime) > std::chrono::milliseconds(MAX_WAIT_TIME)) { - mLastTime = time; - notify(); - } else { - wait(); - } -} - -void Debounce::wait() { - #ifdef __wasm32__ - clear_timeout(mTimeout); - mTimeout = set_timeout(MIN_WAIT_TIME, this); - #else - auto status = mWaitSignal.waitFor(std::chrono::milliseconds(MIN_WAIT_TIME)); - if (mRunning && (status == std::cv_status::timeout)) { - notify(); - } - #endif -} - -void Debounce::notify() { - std::unique_lock lock(mMutex); - - mLastTime = std::chrono::steady_clock::now(); - for (auto it = mCallbacks.begin(); it != mCallbacks.end(); it++) { - auto cb = it->second; - cb(); - } - - #ifndef __wasm32__ - mWaitSignal.reset(); - #endif -} diff --git a/new_site/node_modules/@parcel/watcher/src/Debounce.hh b/new_site/node_modules/@parcel/watcher/src/Debounce.hh deleted file mode 100644 index a17fdef..0000000 --- a/new_site/node_modules/@parcel/watcher/src/Debounce.hh +++ /dev/null @@ -1,49 +0,0 @@ -#ifndef DEBOUNCE_H -#define DEBOUNCE_H - -#include -#include -#include -#include "Signal.hh" - -#define MIN_WAIT_TIME 50 -#define MAX_WAIT_TIME 500 - -#ifdef __wasm32__ -extern "C" { - int set_timeout(int ms, void *ctx); - void clear_timeout(int timeout); - void on_timeout(void *ctx); -}; -#endif - -class Debounce { -public: - static std::shared_ptr getShared(); - - Debounce(); - ~Debounce(); - - void add(void *key, std::function cb); - void remove(void *key); - void trigger(); - void notify(); - -private: - bool mRunning; - std::mutex mMutex; - #ifdef __wasm32__ - int mTimeout; - #else - Signal mWaitSignal; - std::thread mThread; - #endif - std::unordered_map> mCallbacks; - std::chrono::time_point mLastTime; - - void loop(); - void notifyIfReady(); - void wait(); -}; - -#endif diff --git a/new_site/node_modules/@parcel/watcher/src/DirTree.cc b/new_site/node_modules/@parcel/watcher/src/DirTree.cc deleted file mode 100644 index ac17c15..0000000 --- a/new_site/node_modules/@parcel/watcher/src/DirTree.cc +++ /dev/null @@ -1,152 +0,0 @@ -#include "DirTree.hh" -#include - -static std::mutex mDirCacheMutex; -static std::unordered_map> dirTreeCache; - -struct DirTreeDeleter { - void operator()(DirTree *tree) { - std::lock_guard lock(mDirCacheMutex); - dirTreeCache.erase(tree->root); - delete tree; - - // Free up memory. - if (dirTreeCache.size() == 0) { - dirTreeCache.rehash(0); - } - } -}; - -std::shared_ptr DirTree::getCached(std::string root) { - std::lock_guard lock(mDirCacheMutex); - - auto found = dirTreeCache.find(root); - std::shared_ptr tree; - - // Use cached tree, or create an empty one. - if (found != dirTreeCache.end()) { - tree = found->second.lock(); - } else { - tree = std::shared_ptr(new DirTree(root), DirTreeDeleter()); - dirTreeCache.emplace(root, tree); - } - - return tree; -} - -DirTree::DirTree(std::string root, FILE *f) : root(root), isComplete(true) { - size_t size; - if (fscanf(f, "%zu", &size)) { - for (size_t i = 0; i < size; i++) { - DirEntry entry(f); - entries.emplace(entry.path, entry); - } - } -} - -// Internal find method that has no lock -DirEntry *DirTree::_find(std::string path) { - auto found = entries.find(path); - if (found == entries.end()) { - return NULL; - } - - return &found->second; -} - -DirEntry *DirTree::add(std::string path, uint64_t mtime, bool isDir) { - std::lock_guard lock(mMutex); - - DirEntry entry(path, mtime, isDir); - auto it = entries.emplace(entry.path, entry); - return &it.first->second; -} - -DirEntry *DirTree::find(std::string path) { - std::lock_guard lock(mMutex); - return _find(path); -} - -DirEntry *DirTree::update(std::string path, uint64_t mtime) { - std::lock_guard lock(mMutex); - - DirEntry *found = _find(path); - if (found) { - found->mtime = mtime; - } - - return found; -} - -void DirTree::remove(std::string path) { - std::lock_guard lock(mMutex); - - DirEntry *found = _find(path); - - // Remove all sub-entries if this is a directory - if (found && found->isDir) { - std::string pathStart = path + DIR_SEP; - for (auto it = entries.begin(); it != entries.end();) { - if (it->first.rfind(pathStart, 0) == 0) { - it = entries.erase(it); - } else { - it++; - } - } - } - - entries.erase(path); -} - -void DirTree::write(FILE *f) { - std::lock_guard lock(mMutex); - - fprintf(f, "%zu\n", entries.size()); - for (auto it = entries.begin(); it != entries.end(); it++) { - it->second.write(f); - } -} - -void DirTree::getChanges(DirTree *snapshot, EventList &events) { - std::lock_guard lock(mMutex); - std::lock_guard snapshotLock(snapshot->mMutex); - - for (auto it = entries.begin(); it != entries.end(); it++) { - auto found = snapshot->entries.find(it->first); - if (found == snapshot->entries.end()) { - events.create(it->second.path); - } else if (found->second.mtime != it->second.mtime && !found->second.isDir && !it->second.isDir) { - events.update(it->second.path); - } - } - - for (auto it = snapshot->entries.begin(); it != snapshot->entries.end(); it++) { - size_t count = entries.count(it->first); - if (count == 0) { - events.remove(it->second.path); - } - } -} - -DirEntry::DirEntry(std::string p, uint64_t t, bool d) { - path = p; - mtime = t; - isDir = d; - state = NULL; -} - -DirEntry::DirEntry(FILE *f) { - size_t size; - if (fscanf(f, "%zu", &size)) { - path.resize(size); - if (fread(&path[0], sizeof(char), size, f)) { - int d = 0; - fscanf(f, "%" PRIu64 " %d\n", &mtime, &d); - isDir = d == 1; - } - } -} - -void DirEntry::write(FILE *f) const { - fprintf(f, "%zu%s%" PRIu64 " %d\n", path.size(), path.c_str(), mtime, isDir); -} diff --git a/new_site/node_modules/@parcel/watcher/src/DirTree.hh b/new_site/node_modules/@parcel/watcher/src/DirTree.hh deleted file mode 100644 index 328f469..0000000 --- a/new_site/node_modules/@parcel/watcher/src/DirTree.hh +++ /dev/null @@ -1,50 +0,0 @@ -#ifndef DIR_TREE_H -#define DIR_TREE_H - -#include -#include -#include -#include "Event.hh" - -#ifdef _WIN32 -#define DIR_SEP "\\" -#else -#define DIR_SEP "/" -#endif - -struct DirEntry { - std::string path; - uint64_t mtime; - bool isDir; - mutable void *state; - - DirEntry(std::string p, uint64_t t, bool d); - DirEntry(FILE *f); - void write(FILE *f) const; - bool operator==(const DirEntry &other) const { - return path == other.path; - } -}; - -class DirTree { -public: - static std::shared_ptr getCached(std::string root); - DirTree(std::string root) : root(root), isComplete(false) {} - DirTree(std::string root, FILE *f); - DirEntry *add(std::string path, uint64_t mtime, bool isDir); - DirEntry *find(std::string path); - DirEntry *update(std::string path, uint64_t mtime); - void remove(std::string path); - void write(FILE *f); - void getChanges(DirTree *snapshot, EventList &events); - - std::mutex mMutex; - std::string root; - bool isComplete; - std::unordered_map entries; - -private: - DirEntry *_find(std::string path); -}; - -#endif diff --git a/new_site/node_modules/@parcel/watcher/src/Event.hh b/new_site/node_modules/@parcel/watcher/src/Event.hh deleted file mode 100644 index 8d09712..0000000 --- a/new_site/node_modules/@parcel/watcher/src/Event.hh +++ /dev/null @@ -1,109 +0,0 @@ -#ifndef EVENT_H -#define EVENT_H - -#include -#include -#include "wasm/include.h" -#include -#include -#include -#include - -using namespace Napi; - -struct Event { - std::string path; - bool isCreated; - bool isDeleted; - Event(std::string path) : path(path), isCreated(false), isDeleted(false) {} - - Value toJS(const Env& env) { - EscapableHandleScope scope(env); - Object res = Object::New(env); - std::string type = isCreated ? "create" : isDeleted ? "delete" : "update"; - res.Set(String::New(env, "path"), String::New(env, path.c_str())); - res.Set(String::New(env, "type"), String::New(env, type.c_str())); - return scope.Escape(res); - } -}; - -class EventList { -public: - void create(std::string path) { - std::lock_guard l(mMutex); - Event *event = internalUpdate(path); - if (event->isDeleted) { - // Assume update event when rapidly removed and created - // https://github.com/parcel-bundler/watcher/issues/72 - event->isDeleted = false; - } else { - event->isCreated = true; - } - } - - Event *update(std::string path) { - std::lock_guard l(mMutex); - return internalUpdate(path); - } - - void remove(std::string path) { - std::lock_guard l(mMutex); - Event *event = internalUpdate(path); - event->isDeleted = true; - } - - size_t size() { - std::lock_guard l(mMutex); - return mEvents.size(); - } - - std::vector getEvents() { - std::lock_guard l(mMutex); - std::vector eventsCloneVector; - for(auto it = mEvents.begin(); it != mEvents.end(); ++it) { - if (!(it->second.isCreated && it->second.isDeleted)) { - eventsCloneVector.push_back(it->second); - } - } - return eventsCloneVector; - } - - void clear() { - std::lock_guard l(mMutex); - mEvents.clear(); - mError.reset(); - } - - void error(std::string err) { - std::lock_guard l(mMutex); - if (!mError.has_value()) { - mError.emplace(err); - } - } - - bool hasError() { - std::lock_guard l(mMutex); - return mError.has_value(); - } - - std::string getError() { - std::lock_guard l(mMutex); - return mError.value_or(""); - } - -private: - mutable std::mutex mMutex; - std::map mEvents; - std::optional mError; - Event *internalUpdate(std::string path) { - auto found = mEvents.find(path); - if (found == mEvents.end()) { - auto it = mEvents.emplace(path, Event(path)); - return &it.first->second; - } - - return &found->second; - } -}; - -#endif diff --git a/new_site/node_modules/@parcel/watcher/src/Glob.cc b/new_site/node_modules/@parcel/watcher/src/Glob.cc deleted file mode 100644 index a4a1722..0000000 --- a/new_site/node_modules/@parcel/watcher/src/Glob.cc +++ /dev/null @@ -1,22 +0,0 @@ -#include "Glob.hh" - -#ifdef __wasm32__ -extern "C" bool wasm_regex_match(const char *s, const char *regex); -#endif - -Glob::Glob(std::string raw) { - mRaw = raw; - mHash = std::hash()(raw); - #ifndef __wasm32__ - mRegex = std::regex(raw); - #endif -} - -bool Glob::isIgnored(std::string relative_path) const { - // Use native JS regex engine for wasm to reduce binary size. - #ifdef __wasm32__ - return wasm_regex_match(relative_path.c_str(), mRaw.c_str()); - #else - return std::regex_match(relative_path, mRegex); - #endif -} diff --git a/new_site/node_modules/@parcel/watcher/src/Glob.hh b/new_site/node_modules/@parcel/watcher/src/Glob.hh deleted file mode 100644 index 6e049e6..0000000 --- a/new_site/node_modules/@parcel/watcher/src/Glob.hh +++ /dev/null @@ -1,34 +0,0 @@ -#ifndef GLOB_H -#define GLOB_H - -#include -#include - -struct Glob { - std::size_t mHash; - std::string mRaw; - #ifndef __wasm32__ - std::regex mRegex; - #endif - - Glob(std::string raw); - - bool operator==(const Glob &other) const { - return mHash == other.mHash; - } - - bool isIgnored(std::string relative_path) const; -}; - -namespace std -{ - template <> - struct hash - { - size_t operator()(const Glob& g) const { - return g.mHash; - } - }; -} - -#endif diff --git a/new_site/node_modules/@parcel/watcher/src/PromiseRunner.hh b/new_site/node_modules/@parcel/watcher/src/PromiseRunner.hh deleted file mode 100644 index 4ca3bb6..0000000 --- a/new_site/node_modules/@parcel/watcher/src/PromiseRunner.hh +++ /dev/null @@ -1,101 +0,0 @@ -#ifndef PROMISE_RUNNER_H -#define PROMISE_RUNNER_H - -#include -#include "wasm/include.h" -#include - -using namespace Napi; - -class PromiseRunner { -public: - const Env env; - Promise::Deferred deferred; - - PromiseRunner(Env env) : env(env), deferred(Promise::Deferred::New(env)) { - napi_status status = napi_create_async_work(env, nullptr, env.Undefined(), - onExecute, onWorkComplete, this, &work); - if (status != napi_ok) { - work = nullptr; - const napi_extended_error_info *error_info = 0; - napi_get_last_error_info(env, &error_info); - if (error_info->error_message) { - Error::New(env, error_info->error_message).ThrowAsJavaScriptException(); - } else { - Error::New(env).ThrowAsJavaScriptException(); - } - } - } - - virtual ~PromiseRunner() {} - - Value queue() { - if (work) { - napi_status status = napi_queue_async_work(env, work); - if (status != napi_ok) { - onError(Error::New(env)); - } - } - - return deferred.Promise(); - } - -private: - napi_async_work work; - std::string error; - - static void onExecute(napi_env env, void *this_pointer) { - PromiseRunner* self = (PromiseRunner*) this_pointer; - try { - self->execute(); - } catch (std::exception &err) { - self->error = err.what(); - } - } - - static void onWorkComplete(napi_env env, napi_status status, void *this_pointer) { - PromiseRunner* self = (PromiseRunner*) this_pointer; - if (status != napi_cancelled) { - HandleScope scope(self->env); - if (status == napi_ok) { - status = napi_delete_async_work(self->env, self->work); - if (status == napi_ok) { - if (self->error.size() == 0) { - self->onOK(); - } else { - self->onError(Error::New(self->env, self->error)); - } - delete self; - return; - } - } - } - - // fallthrough for error handling - const napi_extended_error_info *error_info = 0; - napi_get_last_error_info(env, &error_info); - if (error_info->error_message){ - self->onError(Error::New(env, error_info->error_message)); - } else { - self->onError(Error::New(env)); - } - delete self; - } - - virtual void execute() {} - virtual Value getResult() { - return env.Null(); - } - - void onOK() { - HandleScope scope(env); - Value result = getResult(); - deferred.Resolve(result); - } - - void onError(const Error &e) { - deferred.Reject(e.Value()); - } -}; - -#endif diff --git a/new_site/node_modules/@parcel/watcher/src/Signal.hh b/new_site/node_modules/@parcel/watcher/src/Signal.hh deleted file mode 100644 index e577319..0000000 --- a/new_site/node_modules/@parcel/watcher/src/Signal.hh +++ /dev/null @@ -1,46 +0,0 @@ -#ifndef SIGNAL_H -#define SIGNAL_H - -#include -#include - -class Signal { -public: - Signal() : mFlag(false), mWaiting(false) {} - void wait() { - std::unique_lock lock(mMutex); - while (!mFlag) { - mWaiting = true; - mCond.wait(lock); - } - } - - std::cv_status waitFor(std::chrono::milliseconds ms) { - std::unique_lock lock(mMutex); - return mCond.wait_for(lock, ms); - } - - void notify() { - std::unique_lock lock(mMutex); - mFlag = true; - mCond.notify_all(); - } - - void reset() { - std::unique_lock lock(mMutex); - mFlag = false; - mWaiting = false; - } - - bool isWaiting() { - return mWaiting; - } - -private: - bool mFlag; - bool mWaiting; - std::mutex mMutex; - std::condition_variable mCond; -}; - -#endif diff --git a/new_site/node_modules/@parcel/watcher/src/Watcher.cc b/new_site/node_modules/@parcel/watcher/src/Watcher.cc deleted file mode 100644 index e9d7676..0000000 --- a/new_site/node_modules/@parcel/watcher/src/Watcher.cc +++ /dev/null @@ -1,237 +0,0 @@ -#include "Watcher.hh" -#include - -using namespace Napi; - -struct WatcherHash { - std::size_t operator() (WatcherRef const &k) const { - return std::hash()(k->mDir); - } -}; - -struct WatcherCompare { - size_t operator() (WatcherRef const &a, WatcherRef const &b) const { - return *a == *b; - } -}; - -static std::unordered_set sharedWatchers; - -WatcherRef Watcher::getShared(std::string dir, std::unordered_set ignorePaths, std::unordered_set ignoreGlobs) { - WatcherRef watcher = std::make_shared(dir, ignorePaths, ignoreGlobs); - auto found = sharedWatchers.find(watcher); - if (found != sharedWatchers.end()) { - return *found; - } - - sharedWatchers.insert(watcher); - return watcher; -} - -void removeShared(Watcher *watcher) { - for (auto it = sharedWatchers.begin(); it != sharedWatchers.end(); it++) { - if (it->get() == watcher) { - sharedWatchers.erase(it); - break; - } - } - - // Free up memory. - if (sharedWatchers.size() == 0) { - sharedWatchers.rehash(0); - } -} - -Watcher::Watcher(std::string dir, std::unordered_set ignorePaths, std::unordered_set ignoreGlobs) - : mDir(dir), - mIgnorePaths(ignorePaths), - mIgnoreGlobs(ignoreGlobs) { - mDebounce = Debounce::getShared(); - mDebounce->add(this, [this] () { - triggerCallbacks(); - }); - } - -Watcher::~Watcher() { - mDebounce->remove(this); -} - -void Watcher::wait() { - std::unique_lock lk(mMutex); - mCond.wait(lk); -} - -void Watcher::notify() { - std::unique_lock lk(mMutex); - mCond.notify_all(); - - if (mCallbacks.size() > 0 && mEvents.size() > 0) { - // We must release our lock before calling into the debouncer - // to avoid a deadlock: the debouncer thread itself will require - // our lock from its thread when calling into `triggerCallbacks` - // while holding its own debouncer lock. - lk.unlock(); - mDebounce->trigger(); - } -} - -struct CallbackData { - std::string error; - std::vector events; - CallbackData(std::string error, std::vector events) : error(error), events(events) {} -}; - -Value callbackEventsToJS(const Env &env, std::vector &events) { - EscapableHandleScope scope(env); - Array arr = Array::New(env, events.size()); - size_t currentEventIndex = 0; - for (auto eventIterator = events.begin(); eventIterator != events.end(); eventIterator++) { - arr.Set(currentEventIndex++, eventIterator->toJS(env)); - } - return scope.Escape(arr); -} - -void callJSFunction(Napi::Env env, Function jsCallback, CallbackData *data) { - HandleScope scope(env); - auto err = data->error.size() > 0 ? Error::New(env, data->error).Value() : env.Null(); - auto events = callbackEventsToJS(env, data->events); - jsCallback.Call({err, events}); - delete data; - - // Throw errors from the callback as fatal exceptions - // If we don't handle these node segfaults... - if (env.IsExceptionPending()) { - Napi::Error err = env.GetAndClearPendingException(); - napi_fatal_exception(env, err.Value()); - } -} - -void Watcher::notifyError(std::exception &err) { - std::unique_lock lk(mMutex); - for (auto it = mCallbacks.begin(); it != mCallbacks.end(); it++) { - CallbackData *data = new CallbackData(err.what(), {}); - it->tsfn.BlockingCall(data, callJSFunction); - } - - clearCallbacks(); -} - -// This function is called from the debounce thread. -void Watcher::triggerCallbacks() { - std::unique_lock lk(mMutex); - if (mCallbacks.size() > 0 && (mEvents.size() > 0 || mEvents.hasError())) { - auto error = mEvents.getError(); - auto events = mEvents.getEvents(); - mEvents.clear(); - - for (auto it = mCallbacks.begin(); it != mCallbacks.end(); it++) { - it->tsfn.BlockingCall(new CallbackData(error, events), callJSFunction); - } - } -} - -// This should be called from the JavaScript thread. -bool Watcher::watch(Function callback) { - std::unique_lock lk(mMutex); - - auto it = findCallback(callback); - if (it != mCallbacks.end()) { - return false; - } - - auto tsfn = ThreadSafeFunction::New( - callback.Env(), - callback, - "Watcher callback", - 0, // Unlimited queue - 1 // Initial thread count - ); - - mCallbacks.push_back(Callback { - tsfn, - Napi::Persistent(callback), - std::this_thread::get_id() - }); - - return true; -} - -// This should be called from the JavaScript thread. -std::vector::iterator Watcher::findCallback(Function callback) { - for (auto it = mCallbacks.begin(); it != mCallbacks.end(); it++) { - // Only consider callbacks created by the same thread, or V8 will panic. - if (it->threadId == std::this_thread::get_id() && it->ref.Value() == callback) { - return it; - } - } - - return mCallbacks.end(); -} - -// This should be called from the JavaScript thread. -bool Watcher::unwatch(Function callback) { - std::unique_lock lk(mMutex); - - bool removed = false; - auto it = findCallback(callback); - if (it != mCallbacks.end()) { - it->tsfn.Release(); - it->ref.Unref(); - mCallbacks.erase(it); - removed = true; - } - - if (removed && mCallbacks.size() == 0) { - unref(); - return true; - } - - return false; -} - -void Watcher::unref() { - if (mCallbacks.size() == 0) { - removeShared(this); - } -} - -void Watcher::destroy() { - std::unique_lock lk(mMutex); - clearCallbacks(); -} - -// Private because it doesn't lock. -void Watcher::clearCallbacks() { - for (auto it = mCallbacks.begin(); it != mCallbacks.end(); it++) { - it->tsfn.Release(); - it->ref.Unref(); - } - - mCallbacks.clear(); - unref(); -} - -bool Watcher::isIgnored(std::string path) { - for (auto it = mIgnorePaths.begin(); it != mIgnorePaths.end(); it++) { - auto dir = *it + DIR_SEP; - if (*it == path || path.compare(0, dir.size(), dir) == 0) { - return true; - } - } - - auto basePath = mDir + DIR_SEP; - - if (path.rfind(basePath, 0) != 0) { - return false; - } - - auto relativePath = path.substr(basePath.size()); - - for (auto it = mIgnoreGlobs.begin(); it != mIgnoreGlobs.end(); it++) { - if (it->isIgnored(relativePath)) { - return true; - } - } - - return false; -} diff --git a/new_site/node_modules/@parcel/watcher/src/Watcher.hh b/new_site/node_modules/@parcel/watcher/src/Watcher.hh deleted file mode 100644 index f89e9f5..0000000 --- a/new_site/node_modules/@parcel/watcher/src/Watcher.hh +++ /dev/null @@ -1,73 +0,0 @@ -#ifndef WATCHER_H -#define WATCHER_H - -#include -#include -#include -#include -#include "Glob.hh" -#include "Event.hh" -#include "Debounce.hh" -#include "DirTree.hh" -#include "Signal.hh" - -using namespace Napi; - -struct Watcher; -using WatcherRef = std::shared_ptr; - -struct Callback { - Napi::ThreadSafeFunction tsfn; - Napi::FunctionReference ref; - std::thread::id threadId; -}; - -class WatcherState { -public: - virtual ~WatcherState() = default; -}; - -struct Watcher { - std::string mDir; - std::unordered_set mIgnorePaths; - std::unordered_set mIgnoreGlobs; - EventList mEvents; - std::shared_ptr state; - - Watcher(std::string dir, std::unordered_set ignorePaths, std::unordered_set ignoreGlobs); - ~Watcher(); - - bool operator==(const Watcher &other) const { - return mDir == other.mDir && mIgnorePaths == other.mIgnorePaths && mIgnoreGlobs == other.mIgnoreGlobs; - } - - void wait(); - void notify(); - void notifyError(std::exception &err); - bool watch(Function callback); - bool unwatch(Function callback); - void unref(); - bool isIgnored(std::string path); - void destroy(); - - static WatcherRef getShared(std::string dir, std::unordered_set ignorePaths, std::unordered_set ignoreGlobs); - -private: - std::mutex mMutex; - std::condition_variable mCond; - std::vector mCallbacks; - std::shared_ptr mDebounce; - - std::vector::iterator findCallback(Function callback); - void clearCallbacks(); - void triggerCallbacks(); -}; - -class WatcherError : public std::runtime_error { -public: - WatcherRef mWatcher; - WatcherError(std::string msg, WatcherRef watcher) : std::runtime_error(msg), mWatcher(watcher) {} - WatcherError(const char *msg, WatcherRef watcher) : std::runtime_error(msg), mWatcher(watcher) {} -}; - -#endif diff --git a/new_site/node_modules/@parcel/watcher/src/binding.cc b/new_site/node_modules/@parcel/watcher/src/binding.cc deleted file mode 100644 index e1506bc..0000000 --- a/new_site/node_modules/@parcel/watcher/src/binding.cc +++ /dev/null @@ -1,268 +0,0 @@ -#include -#include -#include "wasm/include.h" -#include -#include "Glob.hh" -#include "Event.hh" -#include "Backend.hh" -#include "Watcher.hh" -#include "PromiseRunner.hh" - -using namespace Napi; - -std::unordered_set getIgnorePaths(Env env, Value opts) { - std::unordered_set result; - - if (opts.IsObject()) { - Value v = opts.As().Get(String::New(env, "ignorePaths")); - if (v.IsArray()) { - Array items = v.As(); - for (size_t i = 0; i < items.Length(); i++) { - Value item = items.Get(Number::New(env, i)); - if (item.IsString()) { - result.insert(std::string(item.As().Utf8Value().c_str())); - } - } - } - } - - return result; -} - -std::unordered_set getIgnoreGlobs(Env env, Value opts) { - std::unordered_set result; - - if (opts.IsObject()) { - Value v = opts.As().Get(String::New(env, "ignoreGlobs")); - if (v.IsArray()) { - Array items = v.As(); - for (size_t i = 0; i < items.Length(); i++) { - Value item = items.Get(Number::New(env, i)); - if (item.IsString()) { - auto key = item.As().Utf8Value(); - try { - result.emplace(key); - } catch (const std::regex_error& e) { - Error::New(env, e.what()).ThrowAsJavaScriptException(); - } - } - } - } - } - - return result; -} - -std::shared_ptr getBackend(Env env, Value opts) { - Value b = opts.As().Get(String::New(env, "backend")); - std::string backendName; - if (b.IsString()) { - backendName = std::string(b.As().Utf8Value().c_str()); - } - - return Backend::getShared(backendName); -} - -class WriteSnapshotRunner : public PromiseRunner { -public: - WriteSnapshotRunner(Env env, Value dir, Value snap, Value opts) - : PromiseRunner(env), - snapshotPath(std::string(snap.As().Utf8Value().c_str())) { - watcher = Watcher::getShared( - std::string(dir.As().Utf8Value().c_str()), - getIgnorePaths(env, opts), - getIgnoreGlobs(env, opts) - ); - - backend = getBackend(env, opts); - } - - ~WriteSnapshotRunner() { - watcher->unref(); - backend->unref(); - } -private: - std::shared_ptr backend; - WatcherRef watcher; - std::string snapshotPath; - - void execute() override { - backend->writeSnapshot(watcher, &snapshotPath); - } -}; - -class GetEventsSinceRunner : public PromiseRunner { -public: - GetEventsSinceRunner(Env env, Value dir, Value snap, Value opts) - : PromiseRunner(env), - snapshotPath(std::string(snap.As().Utf8Value().c_str())) { - watcher = std::make_shared( - std::string(dir.As().Utf8Value().c_str()), - getIgnorePaths(env, opts), - getIgnoreGlobs(env, opts) - ); - - backend = getBackend(env, opts); - } - - ~GetEventsSinceRunner() { - watcher->unref(); - backend->unref(); - } -private: - std::shared_ptr backend; - WatcherRef watcher; - std::string snapshotPath; - - void execute() override { - backend->getEventsSince(watcher, &snapshotPath); - if (watcher->mEvents.hasError()) { - throw std::runtime_error(watcher->mEvents.getError()); - } - } - - Value getResult() override { - std::vector events = watcher->mEvents.getEvents(); - Array eventsArray = Array::New(env, events.size()); - size_t i = 0; - for (auto it = events.begin(); it != events.end(); it++) { - eventsArray.Set(i++, it->toJS(env)); - } - return eventsArray; - } -}; - -template -Value queueSnapshotWork(const CallbackInfo& info) { - Env env = info.Env(); - if (info.Length() < 1 || !info[0].IsString()) { - TypeError::New(env, "Expected a string").ThrowAsJavaScriptException(); - return env.Null(); - } - - if (info.Length() < 2 || !info[1].IsString()) { - TypeError::New(env, "Expected a string").ThrowAsJavaScriptException(); - return env.Null(); - } - - if (info.Length() >= 3 && !info[2].IsObject()) { - TypeError::New(env, "Expected an object").ThrowAsJavaScriptException(); - return env.Null(); - } - - Runner *runner = new Runner(info.Env(), info[0], info[1], info[2]); - return runner->queue(); -} - -Value writeSnapshot(const CallbackInfo& info) { - return queueSnapshotWork(info); -} - -Value getEventsSince(const CallbackInfo& info) { - return queueSnapshotWork(info); -} - -class SubscribeRunner : public PromiseRunner { -public: - SubscribeRunner(Env env, Value dir, Value fn, Value opts) : PromiseRunner(env) { - watcher = Watcher::getShared( - std::string(dir.As().Utf8Value().c_str()), - getIgnorePaths(env, opts), - getIgnoreGlobs(env, opts) - ); - - backend = getBackend(env, opts); - watcher->watch(fn.As()); - } - -private: - WatcherRef watcher; - std::shared_ptr backend; - FunctionReference callback; - - void execute() override { - try { - backend->watch(watcher); - } catch (std::exception &err) { - watcher->destroy(); - throw; - } - } -}; - -class UnsubscribeRunner : public PromiseRunner { -public: - UnsubscribeRunner(Env env, Value dir, Value fn, Value opts) : PromiseRunner(env) { - watcher = Watcher::getShared( - std::string(dir.As().Utf8Value().c_str()), - getIgnorePaths(env, opts), - getIgnoreGlobs(env, opts) - ); - - backend = getBackend(env, opts); - shouldUnwatch = watcher->unwatch(fn.As()); - } - -private: - WatcherRef watcher; - std::shared_ptr backend; - bool shouldUnwatch; - - void execute() override { - if (shouldUnwatch) { - backend->unwatch(watcher); - } - } -}; - -template -Value queueSubscriptionWork(const CallbackInfo& info) { - Env env = info.Env(); - if (info.Length() < 1 || !info[0].IsString()) { - TypeError::New(env, "Expected a string").ThrowAsJavaScriptException(); - return env.Null(); - } - - if (info.Length() < 2 || !info[1].IsFunction()) { - TypeError::New(env, "Expected a function").ThrowAsJavaScriptException(); - return env.Null(); - } - - if (info.Length() >= 3 && !info[2].IsObject()) { - TypeError::New(env, "Expected an object").ThrowAsJavaScriptException(); - return env.Null(); - } - - Runner *runner = new Runner(info.Env(), info[0], info[1], info[2]); - return runner->queue(); -} - -Value subscribe(const CallbackInfo& info) { - return queueSubscriptionWork(info); -} - -Value unsubscribe(const CallbackInfo& info) { - return queueSubscriptionWork(info); -} - -Object Init(Env env, Object exports) { - exports.Set( - String::New(env, "writeSnapshot"), - Function::New(env, writeSnapshot) - ); - exports.Set( - String::New(env, "getEventsSince"), - Function::New(env, getEventsSince) - ); - exports.Set( - String::New(env, "subscribe"), - Function::New(env, subscribe) - ); - exports.Set( - String::New(env, "unsubscribe"), - Function::New(env, unsubscribe) - ); - return exports; -} - -NODE_API_MODULE(watcher, Init) diff --git a/new_site/node_modules/@parcel/watcher/src/kqueue/KqueueBackend.cc b/new_site/node_modules/@parcel/watcher/src/kqueue/KqueueBackend.cc deleted file mode 100644 index 2991c32..0000000 --- a/new_site/node_modules/@parcel/watcher/src/kqueue/KqueueBackend.cc +++ /dev/null @@ -1,306 +0,0 @@ -#include -#include -#include -#include -#include -#include -#include -#include "KqueueBackend.hh" - -#if __APPLE__ -#define st_mtim st_mtimespec -#endif - -#if !defined(O_EVTONLY) -#define O_EVTONLY O_RDONLY -#endif - -#define CONVERT_TIME(ts) ((uint64_t)ts.tv_sec * 1000000000 + ts.tv_nsec) - -void KqueueBackend::start() { - if ((mKqueue = kqueue()) < 0) { - throw std::runtime_error(std::string("Unable to open kqueue: ") + strerror(errno)); - } - - // Create a pipe that we will write to when we want to end the thread. - int err = pipe(mPipe); - if (err == -1) { - throw std::runtime_error(std::string("Unable to open pipe: ") + strerror(errno)); - } - - // Subscribe kqueue to this pipe. - struct kevent ev; - EV_SET( - &ev, - mPipe[0], - EVFILT_READ, - EV_ADD | EV_CLEAR, - 0, - 0, - 0 - ); - - if (kevent(mKqueue, &ev, 1, NULL, 0, 0)) { - close(mPipe[0]); - close(mPipe[1]); - throw std::runtime_error(std::string("Unable to watch pipe: ") + strerror(errno)); - } - - notifyStarted(); - - struct kevent events[128]; - - while (true) { - int event_count = kevent(mKqueue, NULL, 0, events, 128, 0); - if (event_count < 0 || events[0].flags == EV_ERROR) { - throw std::runtime_error(std::string("kevent error: ") + strerror(errno)); - } - - // Track all of the watchers that are touched so we can notify them at the end of the events. - std::unordered_set watchers; - - for (int i = 0; i < event_count; i++) { - int flags = events[i].fflags; - int fd = events[i].ident; - if (fd == mPipe[0]) { - // pipe was written to. break out of the loop. - goto done; - } - - auto it = mFdToEntry.find(fd); - if (it == mFdToEntry.end()) { - // If fd wasn't in our map, we may have already stopped watching it. Ignore the event. - continue; - } - - DirEntry *entry = it->second; - - if (flags & NOTE_WRITE && entry && entry->isDir) { - // If a write occurred on a directory, we have to diff the contents of that - // directory to determine what file was added/deleted. - compareDir(fd, entry->path, watchers); - } else { - std::vector subs = findSubscriptions(entry->path); - for (auto it = subs.begin(); it != subs.end(); it++) { - KqueueSubscription *sub = *it; - watchers.insert(sub->watcher); - if (flags & (NOTE_DELETE | NOTE_RENAME | NOTE_REVOKE)) { - sub->watcher->mEvents.remove(sub->path); - sub->tree->remove(sub->path); - mFdToEntry.erase((int)(size_t)entry->state); - mSubscriptions.erase(sub->path); - } else if (flags & (NOTE_WRITE | NOTE_ATTRIB | NOTE_EXTEND)) { - struct stat st; - lstat(sub->path.c_str(), &st); - if (entry->mtime != CONVERT_TIME(st.st_mtim)) { - entry->mtime = CONVERT_TIME(st.st_mtim); - sub->watcher->mEvents.update(sub->path); - } - } - } - } - } - - for (auto it = watchers.begin(); it != watchers.end(); it++) { - (*it)->notify(); - } - } - -done: - close(mPipe[0]); - close(mPipe[1]); - mEndedSignal.notify(); -} - -KqueueBackend::~KqueueBackend() { - write(mPipe[1], "X", 1); - mEndedSignal.wait(); -} - -void KqueueBackend::subscribe(WatcherRef watcher) { - // Build a full directory tree recursively, and watch each directory. - std::shared_ptr tree = getTree(watcher); - - for (auto it = tree->entries.begin(); it != tree->entries.end(); it++) { - bool success = watchDir(watcher, it->second.path, tree); - if (!success) { - throw WatcherError(std::string("error watching " + watcher->mDir + ": " + strerror(errno)), watcher); - } - } -} - -bool KqueueBackend::watchDir(WatcherRef watcher, std::string path, std::shared_ptr tree) { - if (watcher->isIgnored(path)) { - return false; - } - - DirEntry *entry = tree->find(path); - if (!entry) { - return false; - } - - KqueueSubscription sub = { - .watcher = watcher, - .path = path, - .tree = tree - }; - - if (!entry->state) { - int fd = open(path.c_str(), O_EVTONLY); - if (fd <= 0) { - return false; - } - - struct kevent event; - EV_SET( - &event, - fd, - EVFILT_VNODE, - EV_ADD | EV_CLEAR | EV_ENABLE, - NOTE_DELETE | NOTE_WRITE | NOTE_EXTEND | NOTE_ATTRIB | NOTE_RENAME | NOTE_REVOKE, - 0, - 0 - ); - - if (kevent(mKqueue, &event, 1, NULL, 0, 0)) { - close(fd); - return false; - } - - entry->state = (void *)(size_t)fd; - mFdToEntry.emplace(fd, entry); - } - - sub.fd = (int)(size_t)entry->state; - mSubscriptions.emplace(path, sub); - return true; -} - -std::vector KqueueBackend::findSubscriptions(std::string &path) { - // Find the subscriptions affected by this path. - // Copy pointers to them into a vector so that modifying mSubscriptions doesn't invalidate the iterator. - auto range = mSubscriptions.equal_range(path); - std::vector subs; - for (auto it = range.first; it != range.second; it++) { - subs.push_back(&it->second); - } - - return subs; -} - -bool KqueueBackend::compareDir(int fd, std::string &path, std::unordered_set &watchers) { - // macOS doesn't support fdclosedir, so we have to duplicate the file descriptor - // to ensure the closedir doesn't also stop watching. - #if __APPLE__ - fd = dup(fd); - #endif - - DIR *dir = fdopendir(fd); - if (dir == NULL) { - return false; - } - - // fdopendir doesn't rewind to the beginning. - rewinddir(dir); - - std::vector subs = findSubscriptions(path); - std::string dirStart = path + DIR_SEP; - - std::unordered_set> trees; - for (auto it = subs.begin(); it != subs.end(); it++) { - trees.emplace((*it)->tree); - } - - std::unordered_set entries; - struct dirent *entry; - while ((entry = readdir(dir))) { - if (strcmp(entry->d_name, ".") == 0 || strcmp(entry->d_name, "..") == 0) { - continue; - } - - std::string fullpath = dirStart + entry->d_name; - entries.emplace(fullpath); - - for (auto it = trees.begin(); it != trees.end(); it++) { - std::shared_ptr tree = *it; - if (!tree->find(fullpath)) { - struct stat st; - fstatat(fd, entry->d_name, &st, AT_SYMLINK_NOFOLLOW); - tree->add(fullpath, CONVERT_TIME(st.st_mtim), S_ISDIR(st.st_mode)); - - // Notify all watchers with the same tree. - for (auto i = subs.begin(); i != subs.end(); i++) { - KqueueSubscription *sub = *i; - if (sub->tree == tree) { - if (sub->watcher->isIgnored(fullpath)) { - continue; - } - - sub->watcher->mEvents.create(fullpath); - watchers.emplace(sub->watcher); - - bool success = watchDir(sub->watcher, fullpath, sub->tree); - if (!success) { - sub->tree->remove(fullpath); - return false; - } - } - } - } - } - } - - for (auto it = trees.begin(); it != trees.end(); it++) { - std::shared_ptr tree = *it; - for (auto entry = tree->entries.begin(); entry != tree->entries.end();) { - - if ( - entry->first.rfind(dirStart, 0) == 0 && - entry->first.find(DIR_SEP, dirStart.length()) == std::string::npos && - entries.count(entry->first) == 0 - ) { - // Notify all watchers with the same tree. - for (auto i = subs.begin(); i != subs.end(); i++) { - if ((*i)->tree == tree) { - KqueueSubscription *sub = *i; - if (!sub->watcher->isIgnored(entry->first)) { - sub->watcher->mEvents.remove(entry->first); - watchers.emplace(sub->watcher); - } - } - } - - mFdToEntry.erase((int)(size_t)entry->second.state); - mSubscriptions.erase(entry->first); - entry = tree->entries.erase(entry); - } else { - entry++; - } - } - } - - #if __APPLE__ - closedir(dir); - #else - fdclosedir(dir); - #endif - - return true; -} - -void KqueueBackend::unsubscribe(WatcherRef watcher) { - // Find any subscriptions pointing to this watcher, and remove them. - for (auto it = mSubscriptions.begin(); it != mSubscriptions.end();) { - if (it->second.watcher.get() == watcher.get()) { - if (mSubscriptions.count(it->first) == 1) { - // Closing the file descriptor automatically unwatches it in the kqueue. - close(it->second.fd); - mFdToEntry.erase(it->second.fd); - } - - it = mSubscriptions.erase(it); - } else { - it++; - } - } -} diff --git a/new_site/node_modules/@parcel/watcher/src/kqueue/KqueueBackend.hh b/new_site/node_modules/@parcel/watcher/src/kqueue/KqueueBackend.hh deleted file mode 100644 index 3c6a9cd..0000000 --- a/new_site/node_modules/@parcel/watcher/src/kqueue/KqueueBackend.hh +++ /dev/null @@ -1,35 +0,0 @@ -#ifndef KQUEUE_H -#define KQUEUE_H - -#include -#include -#include "../shared/BruteForceBackend.hh" -#include "../DirTree.hh" -#include "../Signal.hh" - -struct KqueueSubscription { - WatcherRef watcher; - std::string path; - std::shared_ptr tree; - int fd; -}; - -class KqueueBackend : public BruteForceBackend { -public: - void start() override; - ~KqueueBackend(); - void subscribe(WatcherRef watcher) override; - void unsubscribe(WatcherRef watcher) override; -private: - int mKqueue; - int mPipe[2]; - std::unordered_multimap mSubscriptions; - std::unordered_map mFdToEntry; - Signal mEndedSignal; - - bool watchDir(WatcherRef watcher, std::string path, std::shared_ptr tree); - bool compareDir(int fd, std::string &dir, std::unordered_set &watchers); - std::vector findSubscriptions(std::string &path); -}; - -#endif diff --git a/new_site/node_modules/@parcel/watcher/src/linux/InotifyBackend.cc b/new_site/node_modules/@parcel/watcher/src/linux/InotifyBackend.cc deleted file mode 100644 index ec92691..0000000 --- a/new_site/node_modules/@parcel/watcher/src/linux/InotifyBackend.cc +++ /dev/null @@ -1,232 +0,0 @@ -#include -#include -#include -#include -#include -#include "InotifyBackend.hh" - -#define INOTIFY_MASK \ - IN_ATTRIB | IN_CREATE | IN_DELETE | \ - IN_DELETE_SELF | IN_MODIFY | IN_MOVE_SELF | IN_MOVED_FROM | \ - IN_MOVED_TO | IN_DONT_FOLLOW | IN_ONLYDIR | IN_EXCL_UNLINK -#define BUFFER_SIZE 8192 -#define CONVERT_TIME(ts) ((uint64_t)ts.tv_sec * 1000000000 + ts.tv_nsec) - -void InotifyBackend::start() { - // Create a pipe that we will write to when we want to end the thread. - int err = pipe2(mPipe, O_CLOEXEC | O_NONBLOCK); - if (err == -1) { - throw std::runtime_error(std::string("Unable to open pipe: ") + strerror(errno)); - } - - // Init inotify file descriptor. - mInotify = inotify_init1(IN_NONBLOCK | IN_CLOEXEC); - if (mInotify == -1) { - throw std::runtime_error(std::string("Unable to initialize inotify: ") + strerror(errno)); - } - - pollfd pollfds[2]; - pollfds[0].fd = mPipe[0]; - pollfds[0].events = POLLIN; - pollfds[0].revents = 0; - pollfds[1].fd = mInotify; - pollfds[1].events = POLLIN; - pollfds[1].revents = 0; - - notifyStarted(); - - // Loop until we get an event from the pipe. - while (true) { - int result = poll(pollfds, 2, 500); - if (result < 0) { - throw std::runtime_error(std::string("Unable to poll: ") + strerror(errno)); - } - - if (pollfds[0].revents) { - break; - } - - if (pollfds[1].revents) { - handleEvents(); - } - } - - close(mPipe[0]); - close(mPipe[1]); - close(mInotify); - - mEndedSignal.notify(); -} - -InotifyBackend::~InotifyBackend() { - write(mPipe[1], "X", 1); - mEndedSignal.wait(); -} - -// This function is called by Backend::watch which takes a lock on mMutex -void InotifyBackend::subscribe(WatcherRef watcher) { - // Build a full directory tree recursively, and watch each directory. - std::shared_ptr tree = getTree(watcher); - - for (auto it = tree->entries.begin(); it != tree->entries.end(); it++) { - if (it->second.isDir) { - bool success = watchDir(watcher, it->second.path, tree); - if (!success) { - throw WatcherError(std::string("inotify_add_watch on '") + it->second.path + std::string("' failed: ") + strerror(errno), watcher); - } - } - } -} - -bool InotifyBackend::watchDir(WatcherRef watcher, std::string path, std::shared_ptr tree) { - int wd = inotify_add_watch(mInotify, path.c_str(), INOTIFY_MASK); - if (wd == -1) { - return false; - } - - std::shared_ptr sub = std::make_shared(); - sub->tree = tree; - sub->path = path; - sub->watcher = watcher; - mSubscriptions.emplace(wd, sub); - - return true; -} - -void InotifyBackend::handleEvents() { - char buf[BUFFER_SIZE] __attribute__ ((aligned(__alignof__(struct inotify_event))));; - struct inotify_event *event; - - // Track all of the watchers that are touched so we can notify them at the end of the events. - std::unordered_set watchers; - - while (true) { - int n = read(mInotify, &buf, BUFFER_SIZE); - if (n < 0) { - if (errno == EAGAIN || errno == EWOULDBLOCK) { - break; - } - - throw std::runtime_error(std::string("Error reading from inotify: ") + strerror(errno)); - } - - if (n == 0) { - break; - } - - for (char *ptr = buf; ptr < buf + n; ptr += sizeof(*event) + event->len) { - event = (struct inotify_event *)ptr; - - if ((event->mask & IN_Q_OVERFLOW) == IN_Q_OVERFLOW) { - // overflow - continue; - } - - handleEvent(event, watchers); - } - } - - for (auto it = watchers.begin(); it != watchers.end(); it++) { - (*it)->notify(); - } -} - -void InotifyBackend::handleEvent(struct inotify_event *event, std::unordered_set &watchers) { - std::unique_lock lock(mMutex); - - // Find the subscriptions for this watch descriptor - auto range = mSubscriptions.equal_range(event->wd); - std::unordered_set> set; - for (auto it = range.first; it != range.second; it++) { - set.insert(it->second); - } - - for (auto it = set.begin(); it != set.end(); it++) { - if (handleSubscription(event, *it)) { - watchers.insert((*it)->watcher); - } - } -} - -bool InotifyBackend::handleSubscription(struct inotify_event *event, std::shared_ptr sub) { - // Build full path and check if its in our ignore list. - std::shared_ptr watcher = sub->watcher; - std::string path = std::string(sub->path); - bool isDir = event->mask & IN_ISDIR; - - if (event->len > 0) { - path += "/" + std::string(event->name); - } - - if (watcher->isIgnored(path)) { - return false; - } - - // If this is a create, check if it's a directory and start watching if it is. - // In any case, keep the directory tree up to date. - if (event->mask & (IN_CREATE | IN_MOVED_TO)) { - watcher->mEvents.create(path); - - struct stat st; - // Use lstat to avoid resolving symbolic links that we cannot watch anyway - // https://github.com/parcel-bundler/watcher/issues/76 - lstat(path.c_str(), &st); - DirEntry *entry = sub->tree->add(path, CONVERT_TIME(st.st_mtim), S_ISDIR(st.st_mode)); - - if (entry->isDir) { - bool success = watchDir(watcher, path, sub->tree); - if (!success) { - sub->tree->remove(path); - return false; - } - } - } else if (event->mask & (IN_MODIFY | IN_ATTRIB)) { - watcher->mEvents.update(path); - - struct stat st; - stat(path.c_str(), &st); - sub->tree->update(path, CONVERT_TIME(st.st_mtim)); - } else if (event->mask & (IN_DELETE | IN_DELETE_SELF | IN_MOVED_FROM | IN_MOVE_SELF)) { - bool isSelfEvent = (event->mask & (IN_DELETE_SELF | IN_MOVE_SELF)); - // Ignore delete/move self events unless this is the recursive watch root - if (isSelfEvent && path != watcher->mDir) { - return false; - } - - // If the entry being deleted/moved is a directory, remove it from the list of subscriptions - // XXX: self events don't have the IN_ISDIR mask - if (isSelfEvent || isDir) { - for (auto it = mSubscriptions.begin(); it != mSubscriptions.end();) { - if (it->second->path == path) { - it = mSubscriptions.erase(it); - } else { - ++it; - } - } - } - - watcher->mEvents.remove(path); - sub->tree->remove(path); - } - - return true; -} - -// This function is called by Backend::unwatch which takes a lock on mMutex -void InotifyBackend::unsubscribe(WatcherRef watcher) { - // Find any subscriptions pointing to this watcher, and remove them. - for (auto it = mSubscriptions.begin(); it != mSubscriptions.end();) { - if (it->second->watcher.get() == watcher.get()) { - if (mSubscriptions.count(it->first) == 1) { - int err = inotify_rm_watch(mInotify, it->first); - if (err == -1) { - throw WatcherError(std::string("Unable to remove watcher: ") + strerror(errno), watcher); - } - } - - it = mSubscriptions.erase(it); - } else { - it++; - } - } -} diff --git a/new_site/node_modules/@parcel/watcher/src/linux/InotifyBackend.hh b/new_site/node_modules/@parcel/watcher/src/linux/InotifyBackend.hh deleted file mode 100644 index f34cd1f..0000000 --- a/new_site/node_modules/@parcel/watcher/src/linux/InotifyBackend.hh +++ /dev/null @@ -1,34 +0,0 @@ -#ifndef INOTIFY_H -#define INOTIFY_H - -#include -#include -#include "../shared/BruteForceBackend.hh" -#include "../DirTree.hh" -#include "../Signal.hh" - -struct InotifySubscription { - std::shared_ptr tree; - std::string path; - WatcherRef watcher; -}; - -class InotifyBackend : public BruteForceBackend { -public: - void start() override; - ~InotifyBackend(); - void subscribe(WatcherRef watcher) override; - void unsubscribe(WatcherRef watcher) override; -private: - int mPipe[2]; - int mInotify; - std::unordered_multimap> mSubscriptions; - Signal mEndedSignal; - - bool watchDir(WatcherRef watcher, std::string path, std::shared_ptr tree); - void handleEvents(); - void handleEvent(struct inotify_event *event, std::unordered_set &watchers); - bool handleSubscription(struct inotify_event *event, std::shared_ptr sub); -}; - -#endif diff --git a/new_site/node_modules/@parcel/watcher/src/macos/FSEventsBackend.cc b/new_site/node_modules/@parcel/watcher/src/macos/FSEventsBackend.cc deleted file mode 100644 index cfda962..0000000 --- a/new_site/node_modules/@parcel/watcher/src/macos/FSEventsBackend.cc +++ /dev/null @@ -1,338 +0,0 @@ -#include -#include -#include -#include -#include -#include "../Event.hh" -#include "../Backend.hh" -#include "./FSEventsBackend.hh" -#include "../Watcher.hh" - -#define CONVERT_TIME(ts) ((uint64_t)ts.tv_sec * 1000000000 + ts.tv_nsec) -#define IGNORED_FLAGS (kFSEventStreamEventFlagItemIsHardlink | kFSEventStreamEventFlagItemIsLastHardlink | kFSEventStreamEventFlagItemIsSymlink | kFSEventStreamEventFlagItemIsDir | kFSEventStreamEventFlagItemIsFile) - -void stopStream(FSEventStreamRef stream, CFRunLoopRef runLoop) { - FSEventStreamStop(stream); - FSEventStreamUnscheduleFromRunLoop(stream, runLoop, kCFRunLoopDefaultMode); - FSEventStreamInvalidate(stream); - FSEventStreamRelease(stream); -} - -// macOS has a case insensitive file system by default. In order to detect -// file renames that only affect case, we need to get the canonical path -// and compare it with the input path to determine if a file was created or deleted. -bool pathExists(char *path) { - int fd = open(path, O_RDONLY | O_SYMLINK); - if (fd == -1) { - return false; - } - - char buf[PATH_MAX]; - if (fcntl(fd, F_GETPATH, buf) == -1) { - close(fd); - return false; - } - - bool res = strncmp(path, buf, PATH_MAX) == 0; - close(fd); - return res; -} - -class State: public WatcherState { -public: - FSEventStreamRef stream; - std::shared_ptr tree; - uint64_t since; -}; - -void FSEventsCallback( - ConstFSEventStreamRef streamRef, - void *clientCallBackInfo, - size_t numEvents, - void *eventPaths, - const FSEventStreamEventFlags eventFlags[], - const FSEventStreamEventId eventIds[] -) { - char **paths = (char **)eventPaths; - std::shared_ptr& watcher = *static_cast *>(clientCallBackInfo); - - EventList& list = watcher->mEvents; - if (watcher->state == nullptr) { - return; - } - - auto stateGuard = watcher->state; - auto* state = static_cast(stateGuard.get()); - uint64_t since = state->since; - bool deletedRoot = false; - - for (size_t i = 0; i < numEvents; ++i) { - bool isCreated = (eventFlags[i] & kFSEventStreamEventFlagItemCreated) == kFSEventStreamEventFlagItemCreated; - bool isRemoved = (eventFlags[i] & kFSEventStreamEventFlagItemRemoved) == kFSEventStreamEventFlagItemRemoved; - bool isModified = (eventFlags[i] & kFSEventStreamEventFlagItemModified) == kFSEventStreamEventFlagItemModified || - (eventFlags[i] & kFSEventStreamEventFlagItemInodeMetaMod) == kFSEventStreamEventFlagItemInodeMetaMod || - (eventFlags[i] & kFSEventStreamEventFlagItemFinderInfoMod) == kFSEventStreamEventFlagItemFinderInfoMod || - (eventFlags[i] & kFSEventStreamEventFlagItemChangeOwner) == kFSEventStreamEventFlagItemChangeOwner || - (eventFlags[i] & kFSEventStreamEventFlagItemXattrMod) == kFSEventStreamEventFlagItemXattrMod; - bool isRenamed = (eventFlags[i] & kFSEventStreamEventFlagItemRenamed) == kFSEventStreamEventFlagItemRenamed; - bool isDone = (eventFlags[i] & kFSEventStreamEventFlagHistoryDone) == kFSEventStreamEventFlagHistoryDone; - bool isDir = (eventFlags[i] & kFSEventStreamEventFlagItemIsDir) == kFSEventStreamEventFlagItemIsDir; - - - if (eventFlags[i] & kFSEventStreamEventFlagMustScanSubDirs) { - if (eventFlags[i] & kFSEventStreamEventFlagUserDropped) { - list.error("Events were dropped by the FSEvents client. File system must be re-scanned."); - } else if (eventFlags[i] & kFSEventStreamEventFlagKernelDropped) { - list.error("Events were dropped by the kernel. File system must be re-scanned."); - } else { - list.error("Too many events. File system must be re-scanned."); - } - } - - if (isDone) { - watcher->notify(); - break; - } - - auto ignoredFlags = IGNORED_FLAGS; - if (__builtin_available(macOS 10.13, *)) { - ignoredFlags |= kFSEventStreamEventFlagItemCloned; - } - - // If we don't care about any of the flags that are set, ignore this event. - if ((eventFlags[i] & ~ignoredFlags) == 0) { - continue; - } - - // FSEvents exclusion paths only apply to files, not directories. - if (watcher->isIgnored(paths[i])) { - continue; - } - - // Handle unambiguous events first - if (isCreated && !(isRemoved || isModified || isRenamed)) { - state->tree->add(paths[i], 0, isDir); - list.create(paths[i]); - } else if (isRemoved && !(isCreated || isModified || isRenamed)) { - state->tree->remove(paths[i]); - list.remove(paths[i]); - if (paths[i] == watcher->mDir) { - deletedRoot = true; - } - } else if (isModified && !(isCreated || isRemoved || isRenamed)) { - struct stat file; - if (stat(paths[i], &file)) { - continue; - } - - // Ignore if mtime is the same as the last event. - // This prevents duplicate events from being emitted. - // If tv_nsec is zero, the file system probably only has second-level - // granularity so allow the even through in that case. - uint64_t mtime = CONVERT_TIME(file.st_mtimespec); - DirEntry *entry = state->tree->find(paths[i]); - if (entry && mtime == entry->mtime && file.st_mtimespec.tv_nsec != 0) { - continue; - } - - if (entry) { - // Update mtime. - entry->mtime = mtime; - } else { - // Add to tree if this path has not been discovered yet. - state->tree->add(paths[i], mtime, S_ISDIR(file.st_mode)); - } - - list.update(paths[i]); - } else { - // If multiple flags were set, then we need to call `stat` to determine if the file really exists. - // This helps disambiguate creates, updates, and deletes. - struct stat file; - if (stat(paths[i], &file) || !pathExists(paths[i])) { - // File does not exist, so we have to assume it was removed. This is not exact since the - // flags set by fsevents get coalesced together (e.g. created & deleted), so there is no way to - // know whether the create and delete both happened since our snapshot (in which case - // we'd rather ignore this event completely). This will result in some extra delete events - // being emitted for files we don't know about, but that is the best we can do. - state->tree->remove(paths[i]); - list.remove(paths[i]); - if (paths[i] == watcher->mDir) { - deletedRoot = true; - } - continue; - } - - // If the file was modified, and existed before, then this is an update, otherwise a create. - uint64_t ctime = CONVERT_TIME(file.st_birthtimespec); - uint64_t mtime = CONVERT_TIME(file.st_mtimespec); - DirEntry *entry = !since ? state->tree->find(paths[i]) : NULL; - if (entry && entry->mtime == mtime && file.st_mtimespec.tv_nsec != 0) { - continue; - } - - // Some mounted file systems report a creation time of 0/unix epoch which we special case. - if (isModified && (entry || (ctime <= since && ctime != 0))) { - state->tree->update(paths[i], mtime); - list.update(paths[i]); - } else { - state->tree->add(paths[i], mtime, S_ISDIR(file.st_mode)); - list.create(paths[i]); - } - } - } - - if (!since) { - watcher->notify(); - } - - // Stop watching if the root directory was deleted. - if (deletedRoot) { - stopStream((FSEventStreamRef)streamRef, CFRunLoopGetCurrent()); - watcher->state = nullptr; - } -} - -void checkWatcher(WatcherRef watcher) { - struct stat file; - if (stat(watcher->mDir.c_str(), &file)) { - throw WatcherError(strerror(errno), watcher); - } - - if (!S_ISDIR(file.st_mode)) { - throw WatcherError(strerror(ENOTDIR), watcher); - } -} - -void FSEventsBackend::startStream(WatcherRef watcher, FSEventStreamEventId id) { - checkWatcher(watcher); - - CFAbsoluteTime latency = 0.001; - CFStringRef fileWatchPath = CFStringCreateWithCString( - NULL, - watcher->mDir.c_str(), - kCFStringEncodingUTF8 - ); - - CFArrayRef pathsToWatch = CFArrayCreate( - NULL, - (const void **)&fileWatchPath, - 1, - NULL - ); - - // Make a watcher reference we can pass into the callback. This ensures bumped ref-count. - std::shared_ptr* callbackWatcher = new std::shared_ptr (watcher); - FSEventStreamContext callbackInfo {0, static_cast (callbackWatcher), nullptr, nullptr, nullptr}; - FSEventStreamRef stream = FSEventStreamCreate( - NULL, - &FSEventsCallback, - &callbackInfo, - pathsToWatch, - id, - latency, - kFSEventStreamCreateFlagFileEvents - ); - - CFMutableArrayRef exclusions = CFArrayCreateMutable(NULL, watcher->mIgnorePaths.size(), NULL); - for (auto it = watcher->mIgnorePaths.begin(); it != watcher->mIgnorePaths.end(); it++) { - CFStringRef path = CFStringCreateWithCString( - NULL, - it->c_str(), - kCFStringEncodingUTF8 - ); - - CFArrayAppendValue(exclusions, (const void *)path); - } - - FSEventStreamSetExclusionPaths(stream, exclusions); - - FSEventStreamScheduleWithRunLoop(stream, mRunLoop, kCFRunLoopDefaultMode); - bool started = FSEventStreamStart(stream); - - CFRelease(pathsToWatch); - CFRelease(fileWatchPath); - - if (!started) { - FSEventStreamRelease(stream); - throw WatcherError("Error starting FSEvents stream", watcher); - } - - auto stateGuard = watcher->state; - State* s = static_cast(stateGuard.get()); - s->tree = std::make_shared(watcher->mDir); - s->stream = stream; -} - -void FSEventsBackend::start() { - mRunLoop = CFRunLoopGetCurrent(); - CFRetain(mRunLoop); - - // Unlock once run loop has started. - CFRunLoopPerformBlock(mRunLoop, kCFRunLoopDefaultMode, ^ { - notifyStarted(); - }); - - CFRunLoopWakeUp(mRunLoop); - CFRunLoopRun(); -} - -FSEventsBackend::~FSEventsBackend() { - std::unique_lock lock(mMutex); - CFRunLoopStop(mRunLoop); - CFRelease(mRunLoop); -} - -void FSEventsBackend::writeSnapshot(WatcherRef watcher, std::string *snapshotPath) { - std::unique_lock lock(mMutex); - checkWatcher(watcher); - - FSEventStreamEventId id = FSEventsGetCurrentEventId(); - std::ofstream ofs(*snapshotPath); - ofs << id; - ofs << "\n"; - - struct timespec now; - clock_gettime(CLOCK_REALTIME, &now); - ofs << CONVERT_TIME(now); -} - -void FSEventsBackend::getEventsSince(WatcherRef watcher, std::string *snapshotPath) { - std::unique_lock lock(mMutex); - std::ifstream ifs(*snapshotPath); - if (ifs.fail()) { - return; - } - - FSEventStreamEventId id; - uint64_t since; - ifs >> id; - ifs >> since; - - auto s = std::make_shared(); - s->since = since; - watcher->state = s; - - startStream(watcher, id); - watcher->wait(); - stopStream(s->stream, mRunLoop); - - watcher->state = nullptr; -} - -// This function is called by Backend::watch which takes a lock on mMutex -void FSEventsBackend::subscribe(WatcherRef watcher) { - auto s = std::make_shared(); - s->since = 0; - watcher->state = s; - startStream(watcher, kFSEventStreamEventIdSinceNow); -} - -// This function is called by Backend::unwatch which takes a lock on mMutex -void FSEventsBackend::unsubscribe(WatcherRef watcher) { - auto stateGuard = watcher->state; - State* s = static_cast(stateGuard.get()); - if (s != nullptr) { - stopStream(s->stream, mRunLoop); - watcher->state = nullptr; - } -} diff --git a/new_site/node_modules/@parcel/watcher/src/macos/FSEventsBackend.hh b/new_site/node_modules/@parcel/watcher/src/macos/FSEventsBackend.hh deleted file mode 100644 index 57ded66..0000000 --- a/new_site/node_modules/@parcel/watcher/src/macos/FSEventsBackend.hh +++ /dev/null @@ -1,20 +0,0 @@ -#ifndef FS_EVENTS_H -#define FS_EVENTS_H - -#include -#include "../Backend.hh" - -class FSEventsBackend : public Backend { -public: - void start() override; - ~FSEventsBackend(); - void writeSnapshot(WatcherRef watcher, std::string *snapshotPath) override; - void getEventsSince(WatcherRef watcher, std::string *snapshotPath) override; - void subscribe(WatcherRef watcher) override; - void unsubscribe(WatcherRef watcher) override; -private: - void startStream(WatcherRef watcher, FSEventStreamEventId id); - CFRunLoopRef mRunLoop; -}; - -#endif diff --git a/new_site/node_modules/@parcel/watcher/src/shared/BruteForceBackend.cc b/new_site/node_modules/@parcel/watcher/src/shared/BruteForceBackend.cc deleted file mode 100644 index 0e9b84f..0000000 --- a/new_site/node_modules/@parcel/watcher/src/shared/BruteForceBackend.cc +++ /dev/null @@ -1,41 +0,0 @@ -#include -#include "../DirTree.hh" -#include "../Event.hh" -#include "./BruteForceBackend.hh" - -std::shared_ptr BruteForceBackend::getTree(WatcherRef watcher, bool shouldRead) { - auto tree = DirTree::getCached(watcher->mDir); - - // If the tree is not complete, read it if needed. - if (!tree->isComplete && shouldRead) { - readTree(watcher, tree); - tree->isComplete = true; - } - - return tree; -} - -void BruteForceBackend::writeSnapshot(WatcherRef watcher, std::string *snapshotPath) { - std::unique_lock lock(mMutex); - auto tree = getTree(watcher); - FILE *f = fopen(snapshotPath->c_str(), "w"); - if (!f) { - throw std::runtime_error(std::string("Unable to open snapshot file: ") + strerror(errno)); - } - - tree->write(f); - fclose(f); -} - -void BruteForceBackend::getEventsSince(WatcherRef watcher, std::string *snapshotPath) { - std::unique_lock lock(mMutex); - FILE *f = fopen(snapshotPath->c_str(), "r"); - if (!f) { - throw std::runtime_error(std::string("Unable to open snapshot file: ") + strerror(errno)); - } - - DirTree snapshot{watcher->mDir, f}; - auto now = getTree(watcher); - now->getChanges(&snapshot, watcher->mEvents); - fclose(f); -} diff --git a/new_site/node_modules/@parcel/watcher/src/shared/BruteForceBackend.hh b/new_site/node_modules/@parcel/watcher/src/shared/BruteForceBackend.hh deleted file mode 100644 index de7a73d..0000000 --- a/new_site/node_modules/@parcel/watcher/src/shared/BruteForceBackend.hh +++ /dev/null @@ -1,25 +0,0 @@ -#ifndef BRUTE_FORCE_H -#define BRUTE_FORCE_H - -#include "../Backend.hh" -#include "../DirTree.hh" -#include "../Watcher.hh" - -class BruteForceBackend : public Backend { -public: - void writeSnapshot(WatcherRef watcher, std::string *snapshotPath) override; - void getEventsSince(WatcherRef watcher, std::string *snapshotPath) override; - void subscribe(WatcherRef watcher) override { - throw "Brute force backend doesn't support subscriptions."; - } - - void unsubscribe(WatcherRef watcher) override { - throw "Brute force backend doesn't support subscriptions."; - } - - std::shared_ptr getTree(WatcherRef watcher, bool shouldRead = true); -private: - void readTree(WatcherRef watcher, std::shared_ptr tree); -}; - -#endif diff --git a/new_site/node_modules/@parcel/watcher/src/unix/fts.cc b/new_site/node_modules/@parcel/watcher/src/unix/fts.cc deleted file mode 100644 index d50c3e4..0000000 --- a/new_site/node_modules/@parcel/watcher/src/unix/fts.cc +++ /dev/null @@ -1,50 +0,0 @@ -#include - -// weird error on linux -#ifdef __THROW -#undef __THROW -#endif -#define __THROW - -#include -#include -#include "../DirTree.hh" -#include "../shared/BruteForceBackend.hh" - -#define CONVERT_TIME(ts) ((uint64_t)ts.tv_sec * 1000000000 + ts.tv_nsec) -#if __APPLE__ -#define st_mtim st_mtimespec -#endif - -void BruteForceBackend::readTree(WatcherRef watcher, std::shared_ptr tree) { - char *paths[2] {(char *)watcher->mDir.c_str(), NULL}; - FTS *fts = fts_open(paths, FTS_NOCHDIR | FTS_PHYSICAL, NULL); - if (!fts) { - throw WatcherError(strerror(errno), watcher); - } - - FTSENT *node; - bool isRoot = true; - - while ((node = fts_read(fts)) != NULL) { - if (node->fts_errno) { - fts_close(fts); - throw WatcherError(strerror(node->fts_errno), watcher); - } - - if (isRoot && !(node->fts_info & FTS_D)) { - fts_close(fts); - throw WatcherError(strerror(ENOTDIR), watcher); - } - - if (watcher->isIgnored(std::string(node->fts_path))) { - fts_set(fts, node, FTS_SKIP); - continue; - } - - tree->add(node->fts_path, CONVERT_TIME(node->fts_statp->st_mtim), (node->fts_info & FTS_D) == FTS_D); - isRoot = false; - } - - fts_close(fts); -} diff --git a/new_site/node_modules/@parcel/watcher/src/unix/legacy.cc b/new_site/node_modules/@parcel/watcher/src/unix/legacy.cc deleted file mode 100644 index 60490c6..0000000 --- a/new_site/node_modules/@parcel/watcher/src/unix/legacy.cc +++ /dev/null @@ -1,77 +0,0 @@ -#include - -// weird error on linux -#ifdef __THROW -#undef __THROW -#endif -#define __THROW - -#ifdef _LIBC -# include -#else -# include -#endif -#include -#include -#include - -#include "../DirTree.hh" -#include "../shared/BruteForceBackend.hh" - -#define CONVERT_TIME(ts) ((uint64_t)ts.tv_sec * 1000000000 + ts.tv_nsec) -#if __APPLE__ -#define st_mtim st_mtimespec -#endif -#define ISDOT(a) (a[0] == '.' && (!a[1] || (a[1] == '.' && !a[2]))) - -void iterateDir(WatcherRef watcher, const std::shared_ptr tree, const char *relative, int parent_fd, const std::string &dirname) { - int open_flags = (O_RDONLY | O_CLOEXEC | O_DIRECTORY | O_NOCTTY | O_NONBLOCK | O_NOFOLLOW); - int new_fd = openat(parent_fd, relative, open_flags); - if (new_fd == -1) { - if (errno == EACCES) { - return; // ignore insufficient permissions - } - - throw WatcherError(strerror(errno), watcher); - } - - struct stat rootAttributes; - fstatat(new_fd, ".", &rootAttributes, AT_SYMLINK_NOFOLLOW); - tree->add(dirname, CONVERT_TIME(rootAttributes.st_mtim), true); - - if (DIR *dir = fdopendir(new_fd)) { - while (struct dirent *ent = (errno = 0, readdir(dir))) { - if (ISDOT(ent->d_name)) continue; - - std::string fullPath = dirname + "/" + ent->d_name; - - if (!watcher->isIgnored(fullPath)) { - struct stat attrib; - fstatat(new_fd, ent->d_name, &attrib, AT_SYMLINK_NOFOLLOW); - bool isDir = ent->d_type == DT_DIR; - - if (isDir) { - iterateDir(watcher, tree, ent->d_name, new_fd, fullPath); - } else { - tree->add(fullPath, CONVERT_TIME(attrib.st_mtim), isDir); - } - } - } - - closedir(dir); - } else { - close(new_fd); - } - - if (errno) { - throw WatcherError(strerror(errno), watcher); - } -} - -void BruteForceBackend::readTree(WatcherRef watcher, std::shared_ptr tree) { - int fd = open(watcher->mDir.c_str(), O_RDONLY); - if (fd) { - iterateDir(watcher, tree, ".", fd, watcher->mDir); - close(fd); - } -} diff --git a/new_site/node_modules/@parcel/watcher/src/wasm/WasmBackend.cc b/new_site/node_modules/@parcel/watcher/src/wasm/WasmBackend.cc deleted file mode 100644 index 9514109..0000000 --- a/new_site/node_modules/@parcel/watcher/src/wasm/WasmBackend.cc +++ /dev/null @@ -1,132 +0,0 @@ -#include -#include "WasmBackend.hh" - -#define CONVERT_TIME(ts) ((uint64_t)ts.tv_sec * 1000000000 + ts.tv_nsec) - -void WasmBackend::start() { - notifyStarted(); -} - -void WasmBackend::subscribe(WatcherRef watcher) { - // Build a full directory tree recursively, and watch each directory. - std::shared_ptr tree = getTree(watcher); - - for (auto it = tree->entries.begin(); it != tree->entries.end(); it++) { - if (it->second.isDir) { - watchDir(watcher, it->second.path, tree); - } - } -} - -void WasmBackend::watchDir(WatcherRef watcher, std::string path, std::shared_ptr tree) { - int wd = wasm_backend_add_watch(path.c_str(), (void *)this); - std::shared_ptr sub = std::make_shared(); - sub->tree = tree; - sub->path = path; - sub->watcher = watcher; - mSubscriptions.emplace(wd, sub); -} - -extern "C" void wasm_backend_event_handler(void *backend, int wd, int type, char *filename) { - WasmBackend *b = (WasmBackend *)(backend); - b->handleEvent(wd, type, filename); -} - -void WasmBackend::handleEvent(int wd, int type, char *filename) { - // Find the subscriptions for this watch descriptor - auto range = mSubscriptions.equal_range(wd); - std::unordered_set> set; - for (auto it = range.first; it != range.second; it++) { - set.insert(it->second); - } - - for (auto it = set.begin(); it != set.end(); it++) { - if (handleSubscription(type, filename, *it)) { - (*it)->watcher->notify(); - } - } -} - -bool WasmBackend::handleSubscription(int type, char *filename, std::shared_ptr sub) { - // Build full path and check if its in our ignore list. - WatcherRef watcher = sub->watcher; - std::string path = std::string(sub->path); - - if (filename[0] != '\0') { - path += "/" + std::string(filename); - } - - if (watcher->isIgnored(path)) { - return false; - } - - if (type == 1) { - struct stat st; - stat(path.c_str(), &st); - sub->tree->update(path, CONVERT_TIME(st.st_mtim)); - watcher->mEvents.update(path); - } else if (type == 2) { - // Determine if this is a create or delete depending on if the file exists or not. - struct stat st; - if (lstat(path.c_str(), &st)) { - // If the entry being deleted/moved is a directory, remove it from the list of subscriptions - DirEntry *entry = sub->tree->find(path); - if (!entry) { - return false; - } - - if (entry->isDir) { - std::string pathStart = path + DIR_SEP; - for (auto it = mSubscriptions.begin(); it != mSubscriptions.end();) { - if (it->second->path == path || it->second->path.rfind(pathStart, 0) == 0) { - wasm_backend_remove_watch(it->first); - it = mSubscriptions.erase(it); - } else { - ++it; - } - } - - // Remove all sub-entries - for (auto it = sub->tree->entries.begin(); it != sub->tree->entries.end();) { - if (it->first.rfind(pathStart, 0) == 0) { - watcher->mEvents.remove(it->first); - it = sub->tree->entries.erase(it); - } else { - it++; - } - } - } - - watcher->mEvents.remove(path); - sub->tree->remove(path); - } else if (sub->tree->find(path)) { - sub->tree->update(path, CONVERT_TIME(st.st_mtim)); - watcher->mEvents.update(path); - } else { - watcher->mEvents.create(path); - - // If this is a create, check if it's a directory and start watching if it is. - DirEntry *entry = sub->tree->add(path, CONVERT_TIME(st.st_mtim), S_ISDIR(st.st_mode)); - if (entry->isDir) { - watchDir(watcher, path, sub->tree); - } - } - } - - return true; -} - -void WasmBackend::unsubscribe(WatcherRef watcher) { - // Find any subscriptions pointing to this watcher, and remove them. - for (auto it = mSubscriptions.begin(); it != mSubscriptions.end();) { - if (it->second->watcher.get() == watcher.get()) { - if (mSubscriptions.count(it->first) == 1) { - wasm_backend_remove_watch(it->first); - } - - it = mSubscriptions.erase(it); - } else { - it++; - } - } -} diff --git a/new_site/node_modules/@parcel/watcher/src/wasm/WasmBackend.hh b/new_site/node_modules/@parcel/watcher/src/wasm/WasmBackend.hh deleted file mode 100644 index 9facac8..0000000 --- a/new_site/node_modules/@parcel/watcher/src/wasm/WasmBackend.hh +++ /dev/null @@ -1,34 +0,0 @@ -#ifndef WASM_H -#define WASM_H - -#include -#include "../shared/BruteForceBackend.hh" -#include "../DirTree.hh" - -extern "C" { - int wasm_backend_add_watch(const char *filename, void *backend); - void wasm_backend_remove_watch(int wd); - void wasm_backend_event_handler(void *backend, int wd, int type, char *filename); -}; - -struct WasmSubscription { - std::shared_ptr tree; - std::string path; - WatcherRef watcher; -}; - -class WasmBackend : public BruteForceBackend { -public: - void start() override; - void subscribe(WatcherRef watcher) override; - void unsubscribe(WatcherRef watcher) override; - void handleEvent(int wd, int type, char *filename); -private: - int mWasm; - std::unordered_multimap> mSubscriptions; - - void watchDir(WatcherRef watcher, std::string path, std::shared_ptr tree); - bool handleSubscription(int type, char *filename, std::shared_ptr sub); -}; - -#endif diff --git a/new_site/node_modules/@parcel/watcher/src/wasm/include.h b/new_site/node_modules/@parcel/watcher/src/wasm/include.h deleted file mode 100644 index 60e4d65..0000000 --- a/new_site/node_modules/@parcel/watcher/src/wasm/include.h +++ /dev/null @@ -1,74 +0,0 @@ -/* -Copyright Node.js contributors. All rights reserved. - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to -deal in the Software without restriction, including without limitation the -rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -sell copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS -IN THE SOFTWARE. -*/ - -// Node does not include the headers for these functions when compiling for WASM, so add them here. -#ifdef __wasm32__ -extern "C" { -NAPI_EXTERN napi_status NAPI_CDECL -napi_create_threadsafe_function(napi_env env, - napi_value func, - napi_value async_resource, - napi_value async_resource_name, - size_t max_queue_size, - size_t initial_thread_count, - void* thread_finalize_data, - napi_finalize thread_finalize_cb, - void* context, - napi_threadsafe_function_call_js call_js_cb, - napi_threadsafe_function* result); - -NAPI_EXTERN napi_status NAPI_CDECL napi_get_threadsafe_function_context( - napi_threadsafe_function func, void** result); - -NAPI_EXTERN napi_status NAPI_CDECL -napi_call_threadsafe_function(napi_threadsafe_function func, - void* data, - napi_threadsafe_function_call_mode is_blocking); - -NAPI_EXTERN napi_status NAPI_CDECL -napi_acquire_threadsafe_function(napi_threadsafe_function func); - -NAPI_EXTERN napi_status NAPI_CDECL napi_release_threadsafe_function( - napi_threadsafe_function func, napi_threadsafe_function_release_mode mode); - -NAPI_EXTERN napi_status NAPI_CDECL -napi_unref_threadsafe_function(napi_env env, napi_threadsafe_function func); - -NAPI_EXTERN napi_status NAPI_CDECL -napi_ref_threadsafe_function(napi_env env, napi_threadsafe_function func); - -NAPI_EXTERN napi_status NAPI_CDECL -napi_create_async_work(napi_env env, - napi_value async_resource, - napi_value async_resource_name, - napi_async_execute_callback execute, - napi_async_complete_callback complete, - void* data, - napi_async_work* result); -NAPI_EXTERN napi_status NAPI_CDECL napi_delete_async_work(napi_env env, - napi_async_work work); -NAPI_EXTERN napi_status NAPI_CDECL napi_queue_async_work(napi_env env, - napi_async_work work); -NAPI_EXTERN napi_status NAPI_CDECL napi_cancel_async_work(napi_env env, - napi_async_work work); -} -#endif diff --git a/new_site/node_modules/@parcel/watcher/src/watchman/BSER.cc b/new_site/node_modules/@parcel/watcher/src/watchman/BSER.cc deleted file mode 100644 index 1fbcd45..0000000 --- a/new_site/node_modules/@parcel/watcher/src/watchman/BSER.cc +++ /dev/null @@ -1,302 +0,0 @@ -#include -#include "./BSER.hh" - -BSERType decodeType(std::istream &iss) { - int8_t type; - iss.read(reinterpret_cast(&type), sizeof(type)); - return (BSERType) type; -} - -void expectType(std::istream &iss, BSERType expected) { - BSERType got = decodeType(iss); - if (got != expected) { - throw std::runtime_error("Unexpected BSER type"); - } -} - -void encodeType(std::ostream &oss, BSERType type) { - int8_t t = (int8_t)type; - oss.write(reinterpret_cast(&t), sizeof(t)); -} - -template -class Value : public BSERValue { -public: - T value; - Value(T val) { - value = val; - } - - Value() {} -}; - -class BSERInteger : public Value { -public: - BSERInteger(int64_t value) : Value(value) {} - BSERInteger(std::istream &iss) { - int8_t int8; - int16_t int16; - int32_t int32; - int64_t int64; - - BSERType type = decodeType(iss); - - switch (type) { - case BSER_INT8: - iss.read(reinterpret_cast(&int8), sizeof(int8)); - value = int8; - break; - case BSER_INT16: - iss.read(reinterpret_cast(&int16), sizeof(int16)); - value = int16; - break; - case BSER_INT32: - iss.read(reinterpret_cast(&int32), sizeof(int32)); - value = int32; - break; - case BSER_INT64: - iss.read(reinterpret_cast(&int64), sizeof(int64)); - value = int64; - break; - default: - throw std::runtime_error("Invalid BSER int type"); - } - } - - int64_t intValue() override { - return value; - } - - void encode(std::ostream &oss) override { - if (value <= INT8_MAX) { - encodeType(oss, BSER_INT8); - int8_t v = (int8_t)value; - oss.write(reinterpret_cast(&v), sizeof(v)); - } else if (value <= INT16_MAX) { - encodeType(oss, BSER_INT16); - int16_t v = (int16_t)value; - oss.write(reinterpret_cast(&v), sizeof(v)); - } else if (value <= INT32_MAX) { - encodeType(oss, BSER_INT32); - int32_t v = (int32_t)value; - oss.write(reinterpret_cast(&v), sizeof(v)); - } else { - encodeType(oss, BSER_INT64); - oss.write(reinterpret_cast(&value), sizeof(value)); - } - } -}; - -class BSERArray : public Value { -public: - BSERArray() : Value() {} - BSERArray(BSER::Array value) : Value(value) {} - BSERArray(std::istream &iss) { - expectType(iss, BSER_ARRAY); - int64_t len = BSERInteger(iss).intValue(); - for (int64_t i = 0; i < len; i++) { - value.push_back(BSER(iss)); - } - } - - BSER::Array arrayValue() override { - return value; - } - - void encode(std::ostream &oss) override { - encodeType(oss, BSER_ARRAY); - BSERInteger(value.size()).encode(oss); - for (auto it = value.begin(); it != value.end(); it++) { - it->encode(oss); - } - } -}; - -class BSERString : public Value { -public: - BSERString(std::string value) : Value(value) {} - BSERString(std::istream &iss) { - expectType(iss, BSER_STRING); - int64_t len = BSERInteger(iss).intValue(); - value.resize(len); - iss.read(&value[0], len); - } - - std::string stringValue() override { - return value; - } - - void encode(std::ostream &oss) override { - encodeType(oss, BSER_STRING); - BSERInteger(value.size()).encode(oss); - oss << value; - } -}; - -class BSERObject : public Value { -public: - BSERObject() : Value() {} - BSERObject(BSER::Object value) : Value(value) {} - BSERObject(std::istream &iss) { - expectType(iss, BSER_OBJECT); - int64_t len = BSERInteger(iss).intValue(); - for (int64_t i = 0; i < len; i++) { - auto key = BSERString(iss).stringValue(); - auto val = BSER(iss); - value.emplace(key, val); - } - } - - BSER::Object objectValue() override { - return value; - } - - void encode(std::ostream &oss) override { - encodeType(oss, BSER_OBJECT); - BSERInteger(value.size()).encode(oss); - for (auto it = value.begin(); it != value.end(); it++) { - BSERString(it->first).encode(oss); - it->second.encode(oss); - } - } -}; - -class BSERDouble : public Value { -public: - BSERDouble(double value) : Value(value) {} - BSERDouble(std::istream &iss) { - expectType(iss, BSER_REAL); - iss.read(reinterpret_cast(&value), sizeof(value)); - } - - double doubleValue() override { - return value; - } - - void encode(std::ostream &oss) override { - encodeType(oss, BSER_REAL); - oss.write(reinterpret_cast(&value), sizeof(value)); - } -}; - -class BSERBoolean : public Value { -public: - BSERBoolean(bool value) : Value(value) {} - bool boolValue() override { return value; } - void encode(std::ostream &oss) override { - int8_t t = value == true ? BSER_BOOL_TRUE : BSER_BOOL_FALSE; - oss.write(reinterpret_cast(&t), sizeof(t)); - } -}; - -class BSERNull : public Value { -public: - BSERNull() : Value(false) {} - void encode(std::ostream &oss) override { - encodeType(oss, BSER_NULL); - } -}; - -std::shared_ptr decodeTemplate(std::istream &iss) { - expectType(iss, BSER_TEMPLATE); - auto keys = BSERArray(iss).arrayValue(); - auto len = BSERInteger(iss).intValue(); - std::shared_ptr arr = std::make_shared(); - for (int64_t i = 0; i < len; i++) { - BSER::Object obj; - for (auto it = keys.begin(); it != keys.end(); it++) { - if (iss.peek() == 0x0c) { - iss.ignore(1); - continue; - } - - auto val = BSER(iss); - obj.emplace(it->stringValue(), val); - } - arr->value.push_back(obj); - } - return arr; -} - -BSER::BSER(std::istream &iss) { - BSERType type = decodeType(iss); - iss.unget(); - - switch (type) { - case BSER_ARRAY: - m_ptr = std::make_shared(iss); - break; - case BSER_OBJECT: - m_ptr = std::make_shared(iss); - break; - case BSER_STRING: - m_ptr = std::make_shared(iss); - break; - case BSER_INT8: - case BSER_INT16: - case BSER_INT32: - case BSER_INT64: - m_ptr = std::make_shared(iss); - break; - case BSER_REAL: - m_ptr = std::make_shared(iss); - break; - case BSER_BOOL_TRUE: - iss.ignore(1); - m_ptr = std::make_shared(true); - break; - case BSER_BOOL_FALSE: - iss.ignore(1); - m_ptr = std::make_shared(false); - break; - case BSER_NULL: - iss.ignore(1); - m_ptr = std::make_shared(); - break; - case BSER_TEMPLATE: - m_ptr = decodeTemplate(iss); - break; - default: - throw std::runtime_error("unknown BSER type"); - } -} - -BSER::BSER() : m_ptr(std::make_shared()) {} -BSER::BSER(BSER::Array value) : m_ptr(std::make_shared(value)) {} -BSER::BSER(BSER::Object value) : m_ptr(std::make_shared(value)) {} -BSER::BSER(const char *value) : m_ptr(std::make_shared(value)) {} -BSER::BSER(std::string value) : m_ptr(std::make_shared(value)) {} -BSER::BSER(int64_t value) : m_ptr(std::make_shared(value)) {} -BSER::BSER(double value) : m_ptr(std::make_shared(value)) {} -BSER::BSER(bool value) : m_ptr(std::make_shared(value)) {} - -BSER::Array BSER::arrayValue() { return m_ptr->arrayValue(); } -BSER::Object BSER::objectValue() { return m_ptr->objectValue(); } -std::string BSER::stringValue() { return m_ptr->stringValue(); } -int64_t BSER::intValue() { return m_ptr->intValue(); } -double BSER::doubleValue() { return m_ptr->doubleValue(); } -bool BSER::boolValue() { return m_ptr->boolValue(); } -void BSER::encode(std::ostream &oss) { - m_ptr->encode(oss); -} - -int64_t BSER::decodeLength(std::istream &iss) { - char pdu[2]; - if (!iss.read(pdu, 2) || pdu[0] != 0 || pdu[1] != 1) { - throw std::runtime_error("Invalid BSER"); - } - - return BSERInteger(iss).intValue(); -} - -std::string BSER::encode() { - std::ostringstream oss(std::ios_base::binary); - encode(oss); - - std::ostringstream res(std::ios_base::binary); - res.write("\x00\x01", 2); - - BSERInteger(oss.str().size()).encode(res); - res << oss.str(); - return res.str(); -} diff --git a/new_site/node_modules/@parcel/watcher/src/watchman/BSER.hh b/new_site/node_modules/@parcel/watcher/src/watchman/BSER.hh deleted file mode 100644 index 6bd2025..0000000 --- a/new_site/node_modules/@parcel/watcher/src/watchman/BSER.hh +++ /dev/null @@ -1,69 +0,0 @@ -#ifndef BSER_H -#define BSER_H - -#include -#include -#include -#include -#include - -enum BSERType { - BSER_ARRAY = 0x00, - BSER_OBJECT = 0x01, - BSER_STRING = 0x02, - BSER_INT8 = 0x03, - BSER_INT16 = 0x04, - BSER_INT32 = 0x05, - BSER_INT64 = 0x06, - BSER_REAL = 0x07, - BSER_BOOL_TRUE = 0x08, - BSER_BOOL_FALSE = 0x09, - BSER_NULL = 0x0a, - BSER_TEMPLATE = 0x0b -}; - -class BSERValue; - -class BSER { -public: - typedef std::vector Array; - typedef std::unordered_map Object; - - BSER(); - BSER(BSER::Array value); - BSER(BSER::Object value); - BSER(std::string value); - BSER(const char *value); - BSER(int64_t value); - BSER(double value); - BSER(bool value); - BSER(std::istream &iss); - - BSER::Array arrayValue(); - BSER::Object objectValue(); - std::string stringValue(); - int64_t intValue(); - double doubleValue(); - bool boolValue(); - void encode(std::ostream &oss); - - static int64_t decodeLength(std::istream &iss); - std::string encode(); -private: - std::shared_ptr m_ptr; -}; - -class BSERValue { -protected: - friend class BSER; - virtual BSER::Array arrayValue() { return BSER::Array(); } - virtual BSER::Object objectValue() { return BSER::Object(); } - virtual std::string stringValue() { return std::string(); } - virtual int64_t intValue() { return 0; } - virtual double doubleValue() { return 0; } - virtual bool boolValue() { return false; } - virtual void encode(std::ostream &oss) {} - virtual ~BSERValue() {} -}; - -#endif diff --git a/new_site/node_modules/@parcel/watcher/src/watchman/IPC.hh b/new_site/node_modules/@parcel/watcher/src/watchman/IPC.hh deleted file mode 100644 index 6e852c8..0000000 --- a/new_site/node_modules/@parcel/watcher/src/watchman/IPC.hh +++ /dev/null @@ -1,175 +0,0 @@ -#ifndef IPC_H -#define IPC_H - -#include -#include - -#ifdef _WIN32 -#include -#include -#else -#include -#include -#include -#endif - -class IPC { -public: - IPC(std::string path) { - mStopped = false; - #ifdef _WIN32 - while (true) { - mPipe = CreateFile( - path.data(), // pipe name - GENERIC_READ | GENERIC_WRITE, // read and write access - 0, // no sharing - NULL, // default security attributes - OPEN_EXISTING, // opens existing pipe - FILE_FLAG_OVERLAPPED, // attributes - NULL // no template file - ); - - if (mPipe != INVALID_HANDLE_VALUE) { - break; - } - - if (GetLastError() != ERROR_PIPE_BUSY) { - throw std::runtime_error("Could not open pipe"); - } - - // Wait for pipe to become available if it is busy - if (!WaitNamedPipe(path.data(), 30000)) { - throw std::runtime_error("Error waiting for pipe"); - } - } - - mReader = CreateEvent(NULL, true, false, NULL); - mWriter = CreateEvent(NULL, true, false, NULL); - #else - struct sockaddr_un addr; - memset(&addr, 0, sizeof(addr)); - addr.sun_family = AF_UNIX; - strncpy(addr.sun_path, path.c_str(), sizeof(addr.sun_path) - 1); - - mSock = socket(AF_UNIX, SOCK_STREAM, 0); - if (connect(mSock, (struct sockaddr *) &addr, sizeof(struct sockaddr_un))) { - throw std::runtime_error("Error connecting to socket"); - } - #endif - } - - ~IPC() { - mStopped = true; - #ifdef _WIN32 - CancelIo(mPipe); - CloseHandle(mPipe); - CloseHandle(mReader); - CloseHandle(mWriter); - #else - shutdown(mSock, SHUT_RDWR); - #endif - } - - void write(std::string buf) { - #ifdef _WIN32 - OVERLAPPED overlapped; - overlapped.hEvent = mWriter; - bool success = WriteFile( - mPipe, // pipe handle - buf.data(), // message - buf.size(), // message length - NULL, // bytes written - &overlapped // overlapped - ); - - if (mStopped) { - return; - } - - if (!success) { - if (GetLastError() != ERROR_IO_PENDING) { - throw std::runtime_error("Write error"); - } - } - - DWORD written; - success = GetOverlappedResult(mPipe, &overlapped, &written, true); - if (!success) { - throw std::runtime_error("GetOverlappedResult failed"); - } - - if (written != buf.size()) { - throw std::runtime_error("Wrong number of bytes written"); - } - #else - int r = 0; - for (unsigned int i = 0; i != buf.size(); i += r) { - r = ::write(mSock, &buf[i], buf.size() - i); - if (r == -1) { - if (errno == EAGAIN) { - r = 0; - } else if (mStopped) { - return; - } else { - throw std::runtime_error("Write error"); - } - } - } - #endif - } - - int read(char *buf, size_t len) { - #ifdef _WIN32 - OVERLAPPED overlapped; - overlapped.hEvent = mReader; - bool success = ReadFile( - mPipe, // pipe handle - buf, // buffer to receive reply - len, // size of buffer - NULL, // number of bytes read - &overlapped // overlapped - ); - - if (!success && !mStopped) { - if (GetLastError() != ERROR_IO_PENDING) { - throw std::runtime_error("Read error"); - } - } - - DWORD read = 0; - success = GetOverlappedResult(mPipe, &overlapped, &read, true); - if (!success && !mStopped) { - throw std::runtime_error("GetOverlappedResult failed"); - } - - return read; - #else - int r = ::read(mSock, buf, len); - if (r == 0 && !mStopped) { - throw std::runtime_error("Socket ended unexpectedly"); - } - - if (r < 0) { - if (mStopped) { - return 0; - } - - throw std::runtime_error(strerror(errno)); - } - - return r; - #endif - } - -private: - bool mStopped; - #ifdef _WIN32 - HANDLE mPipe; - HANDLE mReader; - HANDLE mWriter; - #else - int mSock; - #endif -}; - -#endif diff --git a/new_site/node_modules/@parcel/watcher/src/watchman/WatchmanBackend.cc b/new_site/node_modules/@parcel/watcher/src/watchman/WatchmanBackend.cc deleted file mode 100644 index 82a23f5..0000000 --- a/new_site/node_modules/@parcel/watcher/src/watchman/WatchmanBackend.cc +++ /dev/null @@ -1,338 +0,0 @@ -#include -#include -#include -#include -#include "../DirTree.hh" -#include "../Event.hh" -#include "./BSER.hh" -#include "./WatchmanBackend.hh" - -#ifdef _WIN32 -#include "../windows/win_utils.hh" -#define S_ISDIR(mode) ((mode & _S_IFDIR) == _S_IFDIR) -#define popen _popen -#define pclose _pclose -#else -#include -#define normalizePath(dir) dir -#endif - -template -BSER readBSER(T &&do_read) { - std::stringstream oss; - char buffer[256]; - int r; - int64_t len = -1; - do { - // Start by reading a minimal amount of data in order to decode the length. - // After that, attempt to read the remaining length, up to the buffer size. - r = do_read(buffer, len == -1 ? 20 : (len < 256 ? len : 256)); - oss << std::string(buffer, r); - - if (len == -1) { - uint64_t l = BSER::decodeLength(oss); - len = l + oss.tellg(); - } - - len -= r; - } while (len > 0); - - return BSER(oss); -} - -std::string getSockPath() { - auto var = getenv("WATCHMAN_SOCK"); - if (var && *var) { - return std::string(var); - } - - FILE *fp = popen("watchman --output-encoding=bser get-sockname", "r"); - if (fp == NULL || errno == ECHILD) { - throw std::runtime_error("Failed to execute watchman"); - } - - BSER b = readBSER([fp] (char *buf, size_t len) { - return fread(buf, sizeof(char), len, fp); - }); - - pclose(fp); - - auto objValue = b.objectValue(); - auto foundSockname = objValue.find("sockname"); - if (foundSockname == objValue.end()) { - throw std::runtime_error("sockname not found"); - } - return foundSockname->second.stringValue(); -} - -std::unique_ptr watchmanConnect() { - std::string path = getSockPath(); - return std::unique_ptr(new IPC(path)); -} - -BSER watchmanRead(IPC *ipc) { - return readBSER([ipc] (char *buf, size_t len) { - return ipc->read(buf, len); - }); -} - -BSER::Object WatchmanBackend::watchmanRequest(BSER b) { - std::string cmd = b.encode(); - mIPC->write(cmd); - mRequestSignal.notify(); - - mResponseSignal.wait(); - mResponseSignal.reset(); - - if (!mError.empty()) { - std::runtime_error err = std::runtime_error(mError); - mError = std::string(); - throw err; - } - - return mResponse; -} - -void WatchmanBackend::watchmanWatch(std::string dir) { - std::vector cmd; - cmd.push_back("watch"); - cmd.push_back(normalizePath(dir)); - watchmanRequest(cmd); -} - -bool WatchmanBackend::checkAvailable() { - try { - watchmanConnect(); - return true; - } catch (std::exception &err) { - return false; - } -} - -void handleFiles(WatcherRef watcher, BSER::Object obj) { - auto found = obj.find("files"); - if (found == obj.end()) { - throw WatcherError("Error reading changes from watchman", watcher); - } - - auto files = found->second.arrayValue(); - for (auto it = files.begin(); it != files.end(); it++) { - auto file = it->objectValue(); - auto name = file.find("name")->second.stringValue(); - #ifdef _WIN32 - std::replace(name.begin(), name.end(), '/', '\\'); - #endif - auto mode = file.find("mode")->second.intValue(); - auto isNew = file.find("new")->second.boolValue(); - auto exists = file.find("exists")->second.boolValue(); - auto path = watcher->mDir + DIR_SEP + name; - if (watcher->isIgnored(path)) { - continue; - } - - if (isNew && exists) { - watcher->mEvents.create(path); - } else if (exists && !S_ISDIR(mode)) { - watcher->mEvents.update(path); - } else if (!isNew && !exists) { - watcher->mEvents.remove(path); - } - } -} - -void WatchmanBackend::handleSubscription(BSER::Object obj) { - std::unique_lock lock(mMutex); - auto subscription = obj.find("subscription")->second.stringValue(); - auto it = mSubscriptions.find(subscription); - if (it == mSubscriptions.end()) { - return; - } - - auto watcher = it->second; - try { - handleFiles(watcher, obj); - watcher->notify(); - } catch (WatcherError &err) { - handleWatcherError(err); - } -} - -void WatchmanBackend::start() { - mIPC = watchmanConnect(); - notifyStarted(); - - while (true) { - // If there are no subscriptions we are reading, wait for a request. - if (mSubscriptions.size() == 0) { - mRequestSignal.wait(); - mRequestSignal.reset(); - } - - // Break out of loop if we are stopped. - if (mStopped) { - break; - } - - // Attempt to read from the socket. - // If there is an error and we are stopped, break. - BSER b; - try { - b = watchmanRead(&*mIPC); - } catch (std::exception &err) { - if (mStopped) { - break; - } else if (mResponseSignal.isWaiting()) { - mError = err.what(); - mResponseSignal.notify(); - } else { - // Throwing causes the backend to be destroyed, but we never reach the code below to notify the signal - mEndedSignal.notify(); - throw; - } - } - - auto obj = b.objectValue(); - auto error = obj.find("error"); - if (error != obj.end()) { - mError = error->second.stringValue(); - mResponseSignal.notify(); - continue; - } - - // If this message is for a subscription, handle it, otherwise notify the request. - auto subscription = obj.find("subscription"); - if (subscription != obj.end()) { - handleSubscription(obj); - } else { - mResponse = obj; - mResponseSignal.notify(); - } - } - - mEndedSignal.notify(); -} - -WatchmanBackend::~WatchmanBackend() { - // Mark the watcher as stopped, close the socket, and trigger the lock. - // This will cause the read loop to be broken and the thread to exit. - mStopped = true; - mIPC.reset(); - mRequestSignal.notify(); - - // If not ended yet, wait. - mEndedSignal.wait(); -} - -std::string WatchmanBackend::clock(WatcherRef watcher) { - BSER::Array cmd; - cmd.push_back("clock"); - cmd.push_back(normalizePath(watcher->mDir)); - - BSER::Object obj = watchmanRequest(cmd); - auto found = obj.find("clock"); - if (found == obj.end()) { - throw WatcherError("Error reading clock from watchman", watcher); - } - - return found->second.stringValue(); -} - -void WatchmanBackend::writeSnapshot(WatcherRef watcher, std::string *snapshotPath) { - std::unique_lock lock(mMutex); - watchmanWatch(watcher->mDir); - - std::ofstream ofs(*snapshotPath); - ofs << clock(watcher); -} - -void WatchmanBackend::getEventsSince(WatcherRef watcher, std::string *snapshotPath) { - std::unique_lock lock(mMutex); - std::ifstream ifs(*snapshotPath); - if (ifs.fail()) { - return; - } - - watchmanWatch(watcher->mDir); - - std::string clock; - ifs >> clock; - - BSER::Array cmd; - cmd.push_back("since"); - cmd.push_back(normalizePath(watcher->mDir)); - cmd.push_back(clock); - - BSER::Object obj = watchmanRequest(cmd); - handleFiles(watcher, obj); -} - -std::string getId(WatcherRef watcher) { - std::ostringstream id; - id << "parcel-"; - id << static_cast(watcher.get()); - return id.str(); -} - -// This function is called by Backend::watch which takes a lock on mMutex -void WatchmanBackend::subscribe(WatcherRef watcher) { - watchmanWatch(watcher->mDir); - - std::string id = getId(watcher); - BSER::Array cmd; - cmd.push_back("subscribe"); - cmd.push_back(normalizePath(watcher->mDir)); - cmd.push_back(id); - - BSER::Array fields; - fields.push_back("name"); - fields.push_back("mode"); - fields.push_back("exists"); - fields.push_back("new"); - - BSER::Object opts; - opts.emplace("fields", fields); - opts.emplace("since", clock(watcher)); - - if (watcher->mIgnorePaths.size() > 0) { - BSER::Array ignore; - BSER::Array anyOf; - anyOf.push_back("anyof"); - - for (auto it = watcher->mIgnorePaths.begin(); it != watcher->mIgnorePaths.end(); it++) { - std::string pathStart = watcher->mDir + DIR_SEP; - if (it->rfind(pathStart, 0) == 0) { - auto relative = it->substr(pathStart.size()); - BSER::Array dirname; - dirname.push_back("dirname"); - dirname.push_back(relative); - anyOf.push_back(dirname); - } - } - - ignore.push_back("not"); - ignore.push_back(anyOf); - - opts.emplace("expression", ignore); - } - - cmd.push_back(opts); - watchmanRequest(cmd); - - mSubscriptions.emplace(id, watcher); - mRequestSignal.notify(); -} - -// This function is called by Backend::unwatch which takes a lock on mMutex -void WatchmanBackend::unsubscribe(WatcherRef watcher) { - std::string id = getId(watcher); - auto erased = mSubscriptions.erase(id); - - if (erased) { - BSER::Array cmd; - cmd.push_back("unsubscribe"); - cmd.push_back(normalizePath(watcher->mDir)); - cmd.push_back(id); - - watchmanRequest(cmd); - } -} diff --git a/new_site/node_modules/@parcel/watcher/src/watchman/WatchmanBackend.hh b/new_site/node_modules/@parcel/watcher/src/watchman/WatchmanBackend.hh deleted file mode 100644 index 699cded..0000000 --- a/new_site/node_modules/@parcel/watcher/src/watchman/WatchmanBackend.hh +++ /dev/null @@ -1,35 +0,0 @@ -#ifndef WATCHMAN_H -#define WATCHMAN_H - -#include "../Backend.hh" -#include "./BSER.hh" -#include "../Signal.hh" -#include "./IPC.hh" - -class WatchmanBackend : public Backend { -public: - static bool checkAvailable(); - void start() override; - WatchmanBackend() : mStopped(false) {}; - ~WatchmanBackend(); - void writeSnapshot(WatcherRef watcher, std::string *snapshotPath) override; - void getEventsSince(WatcherRef watcher, std::string *snapshotPath) override; - void subscribe(WatcherRef watcher) override; - void unsubscribe(WatcherRef watcher) override; -private: - std::unique_ptr mIPC; - Signal mRequestSignal; - Signal mResponseSignal; - BSER::Object mResponse; - std::string mError; - std::unordered_map mSubscriptions; - bool mStopped; - Signal mEndedSignal; - - std::string clock(WatcherRef watcher); - void watchmanWatch(std::string dir); - BSER::Object watchmanRequest(BSER cmd); - void handleSubscription(BSER::Object obj); -}; - -#endif diff --git a/new_site/node_modules/@parcel/watcher/src/windows/WindowsBackend.cc b/new_site/node_modules/@parcel/watcher/src/windows/WindowsBackend.cc deleted file mode 100644 index eabce1e..0000000 --- a/new_site/node_modules/@parcel/watcher/src/windows/WindowsBackend.cc +++ /dev/null @@ -1,282 +0,0 @@ -#include -#include -#include "../DirTree.hh" -#include "../shared/BruteForceBackend.hh" -#include "./WindowsBackend.hh" -#include "./win_utils.hh" - -#define DEFAULT_BUF_SIZE 1024 * 1024 -#define NETWORK_BUF_SIZE 64 * 1024 -#define CONVERT_TIME(ft) ULARGE_INTEGER{ft.dwLowDateTime, ft.dwHighDateTime}.QuadPart - -void BruteForceBackend::readTree(WatcherRef watcher, std::shared_ptr tree) { - std::stack directories; - - directories.push(watcher->mDir); - - while (!directories.empty()) { - HANDLE hFind = INVALID_HANDLE_VALUE; - - std::string path = directories.top(); - std::string spec = path + "\\*"; - directories.pop(); - - WIN32_FIND_DATA ffd; - hFind = FindFirstFile(spec.c_str(), &ffd); - - if (hFind == INVALID_HANDLE_VALUE) { - if (path == watcher->mDir) { - FindClose(hFind); - throw WatcherError("Error opening directory", watcher); - } - - tree->remove(path); - continue; - } - - do { - if (strcmp(ffd.cFileName, ".") != 0 && strcmp(ffd.cFileName, "..") != 0) { - std::string fullPath = path + "\\" + ffd.cFileName; - if (watcher->isIgnored(fullPath)) { - continue; - } - - tree->add(fullPath, CONVERT_TIME(ffd.ftLastWriteTime), ffd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY); - if (ffd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) { - directories.push(fullPath); - } - } - } while (FindNextFile(hFind, &ffd) != 0); - - FindClose(hFind); - } -} - -void WindowsBackend::start() { - mRunning = true; - notifyStarted(); - - while (mRunning) { - SleepEx(INFINITE, true); - } -} - -WindowsBackend::~WindowsBackend() { - // Mark as stopped, and queue a noop function in the thread to break the loop - mRunning = false; - QueueUserAPC([](__in ULONG_PTR) {}, mThread.native_handle(), (ULONG_PTR)this); -} - -class Subscription: public WatcherState { -public: - Subscription(WindowsBackend *backend, WatcherRef watcher, std::shared_ptr tree) { - mRunning = true; - mBackend = backend; - mWatcher = watcher; - mTree = tree; - ZeroMemory(&mOverlapped, sizeof(OVERLAPPED)); - mOverlapped.hEvent = this; - mReadBuffer.resize(DEFAULT_BUF_SIZE); - mWriteBuffer.resize(DEFAULT_BUF_SIZE); - - mDirectoryHandle = CreateFileW( - utf8ToUtf16(watcher->mDir).data(), - FILE_LIST_DIRECTORY, - FILE_SHARE_READ | FILE_SHARE_WRITE | FILE_SHARE_DELETE, - NULL, - OPEN_EXISTING, - FILE_FLAG_BACKUP_SEMANTICS | FILE_FLAG_OVERLAPPED, - NULL - ); - - if (mDirectoryHandle == INVALID_HANDLE_VALUE) { - throw WatcherError("Invalid handle", mWatcher); - } - - // Ensure that the path is a directory - BY_HANDLE_FILE_INFORMATION info; - bool success = GetFileInformationByHandle( - mDirectoryHandle, - &info - ); - - if (!success) { - throw WatcherError("Could not get file information", mWatcher); - } - - if (!(info.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)) { - throw WatcherError("Not a directory", mWatcher); - } - } - - virtual ~Subscription() { - stop(); - } - - void run() { - try { - poll(); - } catch (WatcherError &err) { - mBackend->handleWatcherError(err); - } - } - - void stop() { - if (mRunning) { - mRunning = false; - CancelIo(mDirectoryHandle); - CloseHandle(mDirectoryHandle); - } - } - - void poll() { - if (!mRunning) { - return; - } - - // Asynchronously wait for changes. - int success = ReadDirectoryChangesW( - mDirectoryHandle, - mWriteBuffer.data(), - static_cast(mWriteBuffer.size()), - TRUE, // recursive - FILE_NOTIFY_CHANGE_FILE_NAME | FILE_NOTIFY_CHANGE_DIR_NAME | FILE_NOTIFY_CHANGE_ATTRIBUTES - | FILE_NOTIFY_CHANGE_SIZE | FILE_NOTIFY_CHANGE_LAST_WRITE, - NULL, - &mOverlapped, - [](DWORD errorCode, DWORD numBytes, LPOVERLAPPED overlapped) { - auto subscription = reinterpret_cast(overlapped->hEvent); - try { - subscription->processEvents(errorCode); - } catch (WatcherError &err) { - subscription->mBackend->handleWatcherError(err); - } - } - ); - - if (!success) { - throw WatcherError("Failed to read changes", mWatcher); - } - } - - void processEvents(DWORD errorCode) { - if (!mRunning) { - return; - } - - switch (errorCode) { - case ERROR_OPERATION_ABORTED: - return; - case ERROR_INVALID_PARAMETER: - // resize buffers to network size (64kb), and try again - mReadBuffer.resize(NETWORK_BUF_SIZE); - mWriteBuffer.resize(NETWORK_BUF_SIZE); - poll(); - return; - case ERROR_NOTIFY_ENUM_DIR: - throw WatcherError("Buffer overflow. Some events may have been lost.", mWatcher); - case ERROR_ACCESS_DENIED: { - // This can happen if the watched directory is deleted. Check if that is the case, - // and if so emit a delete event. Otherwise, fall through to default error case. - DWORD attrs = GetFileAttributesW(utf8ToUtf16(mWatcher->mDir).data()); - bool isDir = attrs != INVALID_FILE_ATTRIBUTES && (attrs & FILE_ATTRIBUTE_DIRECTORY); - if (!isDir) { - mWatcher->mEvents.remove(mWatcher->mDir); - mTree->remove(mWatcher->mDir); - mWatcher->notify(); - stop(); - return; - } - } - default: - if (errorCode != ERROR_SUCCESS) { - throw WatcherError("Unknown error", mWatcher); - } - } - - // Swap read and write buffers, and poll again - std::swap(mWriteBuffer, mReadBuffer); - poll(); - - // Read change events - BYTE *base = mReadBuffer.data(); - while (true) { - PFILE_NOTIFY_INFORMATION info = (PFILE_NOTIFY_INFORMATION)base; - processEvent(info); - - if (info->NextEntryOffset == 0) { - break; - } - - base += info->NextEntryOffset; - } - - mWatcher->notify(); - } - - void processEvent(PFILE_NOTIFY_INFORMATION info) { - std::string path = mWatcher->mDir + "\\" + utf16ToUtf8(info->FileName, info->FileNameLength / sizeof(WCHAR)); - if (mWatcher->isIgnored(path)) { - return; - } - - switch (info->Action) { - case FILE_ACTION_ADDED: - case FILE_ACTION_RENAMED_NEW_NAME: { - WIN32_FILE_ATTRIBUTE_DATA data; - if (GetFileAttributesExW(utf8ToUtf16(path).data(), GetFileExInfoStandard, &data)) { - mWatcher->mEvents.create(path); - mTree->add(path, CONVERT_TIME(data.ftLastWriteTime), data.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY); - } - break; - } - case FILE_ACTION_MODIFIED: { - WIN32_FILE_ATTRIBUTE_DATA data; - if (GetFileAttributesExW(utf8ToUtf16(path).data(), GetFileExInfoStandard, &data)) { - mTree->update(path, CONVERT_TIME(data.ftLastWriteTime)); - if (!(data.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)) { - mWatcher->mEvents.update(path); - } - } - break; - } - case FILE_ACTION_REMOVED: - case FILE_ACTION_RENAMED_OLD_NAME: - mWatcher->mEvents.remove(path); - mTree->remove(path); - break; - } - } - -private: - WindowsBackend *mBackend; - std::shared_ptr mWatcher; - std::shared_ptr mTree; - bool mRunning; - HANDLE mDirectoryHandle; - std::vector mReadBuffer; - std::vector mWriteBuffer; - OVERLAPPED mOverlapped; -}; - -// This function is called by Backend::watch which takes a lock on mMutex -void WindowsBackend::subscribe(WatcherRef watcher) { - // Create a subscription for this watcher - auto sub = std::make_shared(this, watcher, getTree(watcher, false)); - watcher->state = sub; - - // Queue polling for this subscription in the correct thread. - bool success = QueueUserAPC([](__in ULONG_PTR ptr) { - Subscription *sub = (Subscription *)ptr; - sub->run(); - }, mThread.native_handle(), (ULONG_PTR)sub.get()); - - if (!success) { - throw std::runtime_error("Unable to queue APC"); - } -} - -// This function is called by Backend::unwatch which takes a lock on mMutex -void WindowsBackend::unsubscribe(WatcherRef watcher) { - watcher->state = nullptr; -} diff --git a/new_site/node_modules/@parcel/watcher/src/windows/WindowsBackend.hh b/new_site/node_modules/@parcel/watcher/src/windows/WindowsBackend.hh deleted file mode 100644 index d679782..0000000 --- a/new_site/node_modules/@parcel/watcher/src/windows/WindowsBackend.hh +++ /dev/null @@ -1,18 +0,0 @@ -#ifndef WINDOWS_H -#define WINDOWS_H - -#include -#include -#include "../shared/BruteForceBackend.hh" - -class WindowsBackend : public BruteForceBackend { -public: - void start() override; - ~WindowsBackend(); - void subscribe(WatcherRef watcher) override; - void unsubscribe(WatcherRef watcher) override; -private: - bool mRunning; -}; - -#endif diff --git a/new_site/node_modules/@parcel/watcher/src/windows/win_utils.cc b/new_site/node_modules/@parcel/watcher/src/windows/win_utils.cc deleted file mode 100644 index 986690f..0000000 --- a/new_site/node_modules/@parcel/watcher/src/windows/win_utils.cc +++ /dev/null @@ -1,44 +0,0 @@ -#include "./win_utils.hh" - -std::wstring utf8ToUtf16(std::string input) { - unsigned int len = MultiByteToWideChar(CP_UTF8, 0, input.c_str(), -1, NULL, 0); - WCHAR *output = new WCHAR[len]; - MultiByteToWideChar(CP_UTF8, 0, input.c_str(), -1, output, len); - std::wstring res(output); - delete output; - return res; -} - -std::string utf16ToUtf8(const WCHAR *input, size_t length) { - unsigned int len = WideCharToMultiByte(CP_UTF8, 0, input, length, NULL, 0, NULL, NULL); - char *output = new char[len + 1]; - WideCharToMultiByte(CP_UTF8, 0, input, length, output, len, NULL, NULL); - output[len] = '\0'; - std::string res(output); - delete output; - return res; -} - -std::string normalizePath(std::string path) { - // Prevent truncation to MAX_PATH characters by adding the \\?\ prefix - std::wstring p = utf8ToUtf16("\\\\?\\" + path); - - // Get the required length for the output - unsigned int len = GetLongPathNameW(p.data(), NULL, 0); - if (!len) { - return path; - } - - // Allocate output array and get long path - WCHAR *output = new WCHAR[len]; - len = GetLongPathNameW(p.data(), output, len); - if (!len) { - delete output; - return path; - } - - // Convert back to utf8 - std::string res = utf16ToUtf8(output + 4, len - 4); - delete output; - return res; -} diff --git a/new_site/node_modules/@parcel/watcher/src/windows/win_utils.hh b/new_site/node_modules/@parcel/watcher/src/windows/win_utils.hh deleted file mode 100644 index 2313493..0000000 --- a/new_site/node_modules/@parcel/watcher/src/windows/win_utils.hh +++ /dev/null @@ -1,11 +0,0 @@ -#ifndef WIN_UTILS_H -#define WIN_UTILS_H - -#include -#include - -std::wstring utf8ToUtf16(std::string input); -std::string utf16ToUtf8(const WCHAR *input, size_t length); -std::string normalizePath(std::string path); - -#endif diff --git a/new_site/node_modules/@parcel/watcher/wrapper.js b/new_site/node_modules/@parcel/watcher/wrapper.js deleted file mode 100644 index 496d56b..0000000 --- a/new_site/node_modules/@parcel/watcher/wrapper.js +++ /dev/null @@ -1,77 +0,0 @@ -const path = require('path'); -const micromatch = require('micromatch'); -const isGlob = require('is-glob'); - -function normalizeOptions(dir, opts = {}) { - const { ignore, ...rest } = opts; - - if (Array.isArray(ignore)) { - opts = { ...rest }; - - for (const value of ignore) { - if (isGlob(value)) { - if (!opts.ignoreGlobs) { - opts.ignoreGlobs = []; - } - - const regex = micromatch.makeRe(value, { - // We set `dot: true` to workaround an issue with the - // regular expression on Linux where the resulting - // negative lookahead `(?!(\\/|^)` was never matching - // in some cases. See also https://bit.ly/3UZlQDm - dot: true, - // C++ does not support lookbehind regex patterns, they - // were only added later to JavaScript engines - // (https://bit.ly/3V7S6UL) - lookbehinds: false - }); - opts.ignoreGlobs.push(regex.source); - } else { - if (!opts.ignorePaths) { - opts.ignorePaths = []; - } - - opts.ignorePaths.push(path.resolve(dir, value)); - } - } - } - - return opts; -} - -exports.createWrapper = (binding) => { - return { - writeSnapshot(dir, snapshot, opts) { - return binding.writeSnapshot( - path.resolve(dir), - path.resolve(snapshot), - normalizeOptions(dir, opts), - ); - }, - getEventsSince(dir, snapshot, opts) { - return binding.getEventsSince( - path.resolve(dir), - path.resolve(snapshot), - normalizeOptions(dir, opts), - ); - }, - async subscribe(dir, fn, opts) { - dir = path.resolve(dir); - opts = normalizeOptions(dir, opts); - await binding.subscribe(dir, fn, opts); - - return { - unsubscribe() { - return binding.unsubscribe(dir, fn, opts); - }, - }; - }, - unsubscribe(dir, fn, opts) { - return binding.unsubscribe( - path.resolve(dir), - fn, - normalizeOptions(dir, opts), - ); - } - }; -}; diff --git a/new_site/node_modules/@tailwindcss/cli/LICENSE b/new_site/node_modules/@tailwindcss/cli/LICENSE deleted file mode 100644 index d6a8229..0000000 --- a/new_site/node_modules/@tailwindcss/cli/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) Tailwind Labs, Inc. - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/new_site/node_modules/@tailwindcss/cli/README.md b/new_site/node_modules/@tailwindcss/cli/README.md deleted file mode 100644 index 95ec9d8..0000000 --- a/new_site/node_modules/@tailwindcss/cli/README.md +++ /dev/null @@ -1,40 +0,0 @@ -

- - - - - Tailwind CSS - - -

- -

- A utility-first CSS framework for rapidly building custom user interfaces. -

- -

- Build Status - Total Downloads - Latest Release - License -

- ---- - -## Documentation - -For full documentation, visit [tailwindcss.com](https://tailwindcss.com). - -## Community - -For help, discussion about best practices, or any other conversation that would benefit from being searchable: - -[Discuss Tailwind CSS on GitHub](https://github.com/tailwindcss/tailwindcss/discussions) - -For chatting with others using the framework: - -[Join the Tailwind CSS Discord Server](https://discord.gg/7NF8GNe) - -## Contributing - -If you're interested in contributing to Tailwind CSS, please read our [contributing docs](https://github.com/tailwindcss/tailwindcss/blob/next/.github/CONTRIBUTING.md) **before submitting a pull request**. diff --git a/new_site/node_modules/@tailwindcss/cli/dist/index.mjs b/new_site/node_modules/@tailwindcss/cli/dist/index.mjs deleted file mode 100755 index fbdee0a..0000000 --- a/new_site/node_modules/@tailwindcss/cli/dist/index.mjs +++ /dev/null @@ -1,8 +0,0 @@ -#!/usr/bin/env node -var it=(t,e)=>(e=Symbol[t])?e:Symbol.for("Symbol."+t),rt=t=>{throw TypeError(t)};var V=(t,e,n)=>{if(e!=null){typeof e!="object"&&typeof e!="function"&&rt("Object expected");var i,r;n&&(i=e[it("asyncDispose")]),i===void 0&&(i=e[it("dispose")],n&&(r=i)),typeof i!="function"&&rt("Object not disposable"),r&&(i=function(){try{r.call(this)}catch(o){return Promise.reject(o)}}),t.push([n,i,e])}else n&&t.push([n]);return e},q=(t,e,n)=>{var i=typeof SuppressedError=="function"?SuppressedError:function(a,s,l,u){return u=Error(l),u.name="SuppressedError",u.error=a,u.suppressed=s,u},r=a=>e=n?new i(a,e,"An error was suppressed during disposal"):(n=!0,a),o=a=>{for(;a=t.pop();)try{var s=a[1]&&a[1].call(a[2]);if(a[0])return Promise.resolve(s).then(o,l=>(r(l),o()))}catch(l){r(l)}if(n)throw e};return o()};import vt from"mri";function st(t,e=process.argv.slice(2)){for(let[r,o]of e.entries())o==="-"&&(e[r]="__IO_DEFAULT_VALUE__");let n=vt(e);for(let r in n)n[r]==="__IO_DEFAULT_VALUE__"&&(n[r]="-");let i={_:n._};for(let[r,{type:o,alias:a,default:s=o==="boolean"?!1:null}]of Object.entries(t)){if(i[r]=s,a){let l=a.slice(1);n[l]!==void 0&&(i[r]=ot(n[l],o))}{let l=r.slice(2);n[l]!==void 0&&(i[r]=ot(n[l],o))}}return i}function ot(t,e){switch(e){case"string":return B(t);case"boolean":return R(t);case"number":return O(t);case"boolean | string":return R(t)??B(t);case"number | string":return O(t)??B(t);case"boolean | number":return R(t)??O(t);case"boolean | number | string":return R(t)??O(t)??B(t);default:throw new Error(`Unhandled type: ${e}`)}}function R(t){if(t===!0||t===!1)return t;if(t==="true")return!0;if(t==="false")return!1}function O(t){if(typeof t=="number")return t;{let e=Number(t);if(!Number.isNaN(e))return e}}function B(t){return`${t}`}import Nt from"@parcel/watcher";import{compile as zt,env as Lt,Instrumentation as dt}from"@tailwindcss/node";import{clearRequireCache as Ut}from"@tailwindcss/node/require-cache";import{Scanner as Wt}from"@tailwindcss/oxide";import{Features as L,transform as It}from"lightningcss";import{existsSync as Et}from"node:fs";import Q from"node:fs/promises";import C from"node:path";var v=class{#t=new Set([]);queueMacrotask(e){let n=setTimeout(e,0);return this.add(()=>{clearTimeout(n)})}add(e){return this.#t.add(e),()=>{this.#t.delete(e),e()}}async dispose(){for(let e of this.#t)await e();this.#t.clear()}};import Rt from"node:fs";import pt from"node:path";import{stripVTControlCharacters as Ot}from"node:util";import g from"picocolors";import lt from"enhanced-resolve";import At from"node:fs";import{createRequire as Ft}from"node:module";var kt=Ft(import.meta.url).resolve;function at(t){if(typeof globalThis.__tw_resolve=="function"){let e=globalThis.__tw_resolve(t);if(e)return e}return kt(t)}var Yt=lt.ResolverFactory.createResolver({fileSystem:new lt.CachedInputFileSystem(At,4e3),useSyncFileSystemCalls:!0,extensions:[".css"],mainFields:["style"],conditionNames:["style"]});function ut(t){let e=typeof t=="number"?BigInt(t):t;return e<1000n?`${e}ns`:(e/=1000n,e<1000n?`${e}\xB5s`:(e/=1000n,e<1000n?`${e}ms`:(e/=1000n,e<60n?`${e}s`:(e/=60n,e<60n?`${e}m`:(e/=60n,e<24n?`${e}h`:(e/=24n,`${e}d`))))))}var D={indent:2};function A(){return`${g.italic(g.bold(g.blue("\u2248")))} tailwindcss ${g.blue(`v${Bt()}`)}`}function N(t){return`${g.dim(g.blue("`"))}${g.blue(t)}${g.dim(g.blue("`"))}`}function ct(t,e=process.cwd(),{preferAbsoluteIfShorter:n=!0}={}){let i=pt.relative(e,t);return i.startsWith("..")||(i=`.${pt.sep}${i}`),n&&i.length>t.length?t:i}function K(t,e){let n=t.split(" "),i=[],r="",o=0;for(let a of n){let s=Ot(a).length;o+s+1>e&&(i.push(r),r="",o=0),r+=(o?" ":"")+a,o+=s+(o?1:0)}return o&&i.push(r),i}function z(t){let e=ut(t);return t<=50*1e6?g.green(e):t<=300*1e6?g.blue(e):t<=1e3*1e6?g.yellow(e):g.red(e)}function F(t,e=0){return`${" ".repeat(e+D.indent)}${t}`}function w(t=""){process.stderr.write(`${t} -`)}function d(t=""){process.stdout.write(`${t} -`)}function Bt(){if(typeof globalThis.__tw_version=="string")return globalThis.__tw_version;let{version:t}=JSON.parse(Rt.readFileSync(at("tailwindcss/package.json"),"utf-8"));return t}import G from"node:fs/promises";import Dt from"node:path";function J(){return new Promise((t,e)=>{let n="";process.stdin.on("data",i=>{n+=i}),process.stdin.on("end",()=>t(n)),process.stdin.on("error",i=>e(i))})}async function ft(t,e){try{if(await G.readFile(t,"utf8")===e)return}catch{}await G.mkdir(Dt.dirname(t),{recursive:!0}),await G.writeFile(t,e,"utf8")}var mt=String.raw,p=Lt.DEBUG;function U(){return{"--input":{type:"string",description:"Input file",alias:"-i"},"--output":{type:"string",description:"Output file",alias:"-o",default:"-"},"--watch":{type:"boolean | string",description:"Watch for changes and rebuild as needed",alias:"-w"},"--minify":{type:"boolean",description:"Optimize and minify the output",alias:"-m"},"--optimize":{type:"boolean",description:"Optimize the output without minifying"},"--cwd":{type:"string",description:"The current working directory",default:"."}}}async function ht(t){try{return await t()}catch(e){e instanceof Error&&w(e.toString()),process.exit(1)}}async function bt(t){var Z=[];try{let e=V(Z,new dt);p&&e.start("[@tailwindcss/cli] (initial build)");let n=C.resolve(t["--cwd"]);t["--output"]&&t["--output"]!=="-"&&(t["--output"]=C.resolve(n,t["--output"]));t["--input"]&&t["--input"]!=="-"&&(t["--input"]=C.resolve(n,t["--input"]),Et(t["--input"])||(w(A()),w(),w(`Specified input file ${N(ct(t["--input"]))} does not exist.`),process.exit(1)));let i=process.hrtime.bigint();let r=t["--input"]?t["--input"]==="-"?await J():await Q.readFile(t["--input"],"utf-8"):mt` - @import 'tailwindcss'; - `;let o={css:"",optimizedCss:""};async function a(S,b,m){let x=S;if(b["--minify"]||b["--optimize"])if(S!==o.css){p&&m.start("Optimize CSS");let $=Pt(S,{file:b["--input"]??"input.css",minify:b["--minify"]??!1});p&&m.end("Optimize CSS"),o.css=S,o.optimizedCss=$,x=$}else x=o.optimizedCss;p&&m.start("Write output"),b["--output"]&&b["--output"]!=="-"?await ft(b["--output"],x):d(x),p&&m.end("Write output")}let s=t["--input"]&&t["--input"]!=="-"?C.resolve(t["--input"]):null;let l=s?C.dirname(s):process.cwd();let u=s?[s]:[];async function f(S,b){p&&b.start("Setup compiler");let m=await zt(S,{base:l,onDependency(E){u.push(E)}}),x=(m.root==="none"?[]:m.root===null?[{base:n,pattern:"**/*"}]:[m.root]).concat(m.globs),$=new Wt({sources:x});return p&&b.end("Setup compiler"),[m,$]}let[y,h]=await ht(()=>f(r,e));if(t["--watch"]){let S=await yt(gt(h),async function b(m){try{var x=[];try{if(m.length===1&&m[0]===t["--output"])return;let c=V(x,new dt);p&&c.start("[@tailwindcss/cli] (watcher)");let tt=process.hrtime.bigint();let et=[];let P="incremental";let nt=u;for(let T of m){if(nt.includes(T)){P="full";break}et.push({file:T,extension:C.extname(T).slice(1)})}let j="";if(P==="full"){let T=t["--input"]?t["--input"]==="-"?await J():await Q.readFile(t["--input"],"utf-8"):mt` - @import 'tailwindcss'; - `;Ut(nt),u=s?[s]:[],[y,h]=await f(T,c),p&&c.start("Scan for candidates");let M=h.scan();p&&c.end("Scan for candidates"),p&&c.start("Setup new watchers");let Ct=await yt(gt(h),b);p&&c.end("Setup new watchers"),p&&c.start("Cleanup old watchers"),await S(),p&&c.end("Cleanup old watchers"),S=Ct,p&&c.start("Build CSS"),j=y.build(M),p&&c.end("Build CSS")}else if(P==="incremental"){p&&c.start("Scan for candidates");let T=h.scanFiles(et);if(p&&c.end("Scan for candidates"),T.length<=0){let M=process.hrtime.bigint();w(`Done in ${z(M-tt)}`);return}p&&c.start("Build CSS"),j=y.build(T),p&&c.end("Build CSS")}await a(j,t,c);let $t=process.hrtime.bigint();w(`Done in ${z($t-tt)}`)}catch($){var E=$,_t=!0}finally{q(x,E,_t)}}catch(c){c instanceof Error&&w(c.toString())}});t["--watch"]!=="always"&&process.stdin.on("end",()=>{S().then(()=>process.exit(0),()=>process.exit(1))}),process.stdin.resume()}p&&e.start("Scan for candidates");let W=h.scan();p&&e.end("Scan for candidates");p&&e.start("Build CSS");let k=await ht(()=>y.build(W));p&&e.end("Build CSS");await a(k,t,e);let I=process.hrtime.bigint();w(A());w();w(`Done in ${z(I-i)}`)}catch(St){var xt=St,Tt=!0}finally{q(Z,xt,Tt)}}function gt(t){return t.globs.flatMap(e=>e.pattern[0]==="!"?[]:e.pattern===""?[]:e.base)}async function yt(t,e){t=t.sort((s,l)=>s.length-l.length);let n=[];for(let s=0;s!n.includes(s));let i=new v,r=new Set,o=new v;async function a(){await o.dispose(),o.queueMacrotask(()=>{e(Array.from(r)),r.clear()})}for(let s of t){let{unsubscribe:l}=await Nt.subscribe(s,async(u,f)=>{if(u){console.error(u);return}await Promise.all(f.map(async y=>{if(y.type==="delete")return;let h=null;try{h=await Q.lstat(y.path)}catch{}!h?.isFile()&&!h?.isSymbolicLink()||r.add(y.path)})),await a()});i.add(l)}return async()=>{await i.dispose(),await o.dispose()}}function Pt(t,{file:e="input.css",minify:n=!1}={}){function i(r){return It({filename:e,code:r,minify:n,sourceMap:!1,drafts:{customMedia:!0},nonStandard:{deepSelectorCombinator:!0},include:L.Nesting,exclude:L.LogicalProperties|L.DirSelector|L.LightDark,targets:{safari:16<<16|1024,ios_saf:16<<16|1024,firefox:8388608,chrome:7274496},errorRecovery:!0}).code}return i(i(Buffer.from(t))).toString()}import _ from"picocolors";function Y({invalid:t,usage:e,options:n}){let i=process.stdout.columns;if(d(A()),t&&(d(),d(`${_.dim("Invalid command:")} ${t}`)),e&&e.length>0){d(),d(_.dim("Usage:"));for(let[r,o]of e.entries()){let a=o.slice(0,o.indexOf("[")),s=o.slice(o.indexOf("["));s=s.replace(/\[.*?\]/g,f=>_.dim(f));let u=K(s,i-D.indent-a.length-1);u.length>1&&r!==0&&d(),d(F(`${a}${u.shift()}`));for(let f of u)d(F(f,a.length))}}if(n){let r=0;for(let{alias:l}of Object.values(n))l&&(r=Math.max(r,l.length));let o=[],a=0;for(let[l,{alias:u}]of Object.entries(n)){let f=[u&&`${u.padStart(r)}`,u?l:" ".repeat(r+2)+l].filter(Boolean).join(", ");o.push(f),a=Math.max(a,f.length)}d(),d(_.dim("Options:"));let s=8;for(let{description:l,default:u=null}of Object.values(n)){let f=o.shift(),y=s+(a-f.length),h=2,W=i-f.length-y-h-D.indent,k=K(u!==null?`${l} ${_.dim(`[default:\u202F${N(`${u}`)}]`)}`:l,W);d(F(`${_.blue(f)} ${_.dim(_.gray("\xB7")).repeat(y)} ${k.shift()}`));for(let I of k)d(F(`${" ".repeat(f.length+y+h)}${I}`))}}}var H={"--help":{type:"boolean",description:"Display usage information",alias:"-h"}},X=st({...U(),...H}),wt=X._[0];wt&&(Y({invalid:wt,usage:["tailwindcss [options]"],options:{...U(),...H}}),process.exit(1));(process.stdout.isTTY&&process.argv[2]===void 0||X["--help"])&&(Y({usage:["tailwindcss [--input input.css] [--output output.css] [--watch] [options\u2026]"],options:{...U(),...H}}),process.exit(0));bt(X); diff --git a/new_site/node_modules/@tailwindcss/cli/package.json b/new_site/node_modules/@tailwindcss/cli/package.json deleted file mode 100644 index 4b7e407..0000000 --- a/new_site/node_modules/@tailwindcss/cli/package.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "name": "@tailwindcss/cli", - "version": "4.0.5", - "description": "A utility-first CSS framework for rapidly building custom user interfaces.", - "license": "MIT", - "repository": { - "type": "git", - "url": "https://github.com/tailwindlabs/tailwindcss.git", - "directory": "packages/@tailwindcss-cli" - }, - "bugs": "https://github.com/tailwindlabs/tailwindcss/issues", - "homepage": "https://tailwindcss.com", - "bin": { - "tailwindcss": "./dist/index.mjs" - }, - "exports": { - "./package.json": "./package.json" - }, - "files": [ - "dist" - ], - "publishConfig": { - "provenance": true, - "access": "public" - }, - "dependencies": { - "@parcel/watcher": "^2.5.1", - "enhanced-resolve": "^5.18.0", - "lightningcss": "^1.29.1", - "mri": "^1.2.0", - "picocolors": "^1.1.1", - "@tailwindcss/node": "^4.0.5", - "@tailwindcss/oxide": "^4.0.5", - "tailwindcss": "4.0.5" - }, - "scripts": { - "lint": "tsc --noEmit", - "build": "tsup-node", - "dev": "pnpm run build -- --watch" - } -} \ No newline at end of file diff --git a/new_site/node_modules/@tailwindcss/node/LICENSE b/new_site/node_modules/@tailwindcss/node/LICENSE deleted file mode 100644 index d6a8229..0000000 --- a/new_site/node_modules/@tailwindcss/node/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) Tailwind Labs, Inc. - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/new_site/node_modules/@tailwindcss/node/README.md b/new_site/node_modules/@tailwindcss/node/README.md deleted file mode 100644 index 95ec9d8..0000000 --- a/new_site/node_modules/@tailwindcss/node/README.md +++ /dev/null @@ -1,40 +0,0 @@ -

- - - - - Tailwind CSS - - -

- -

- A utility-first CSS framework for rapidly building custom user interfaces. -

- -

- Build Status - Total Downloads - Latest Release - License -

- ---- - -## Documentation - -For full documentation, visit [tailwindcss.com](https://tailwindcss.com). - -## Community - -For help, discussion about best practices, or any other conversation that would benefit from being searchable: - -[Discuss Tailwind CSS on GitHub](https://github.com/tailwindcss/tailwindcss/discussions) - -For chatting with others using the framework: - -[Join the Tailwind CSS Discord Server](https://discord.gg/7NF8GNe) - -## Contributing - -If you're interested in contributing to Tailwind CSS, please read our [contributing docs](https://github.com/tailwindcss/tailwindcss/blob/next/.github/CONTRIBUTING.md) **before submitting a pull request**. diff --git a/new_site/node_modules/@tailwindcss/node/dist/esm-cache.loader.d.mts b/new_site/node_modules/@tailwindcss/node/dist/esm-cache.loader.d.mts deleted file mode 100644 index 55f2bad..0000000 --- a/new_site/node_modules/@tailwindcss/node/dist/esm-cache.loader.d.mts +++ /dev/null @@ -1,5 +0,0 @@ -import { ResolveHook } from 'node:module'; - -declare let resolve: ResolveHook; - -export { resolve }; diff --git a/new_site/node_modules/@tailwindcss/node/dist/esm-cache.loader.mjs b/new_site/node_modules/@tailwindcss/node/dist/esm-cache.loader.mjs deleted file mode 100644 index 85ad74e..0000000 --- a/new_site/node_modules/@tailwindcss/node/dist/esm-cache.loader.mjs +++ /dev/null @@ -1 +0,0 @@ -import{isBuiltin as i}from"node:module";var o=async(a,e,u)=>{let r=await u(a,e);if(r.url===import.meta.url||i(r.url)||!e.parentURL)return r;let t=new URL(e.parentURL).searchParams.get("id");if(t===null)return r;let l=new URL(r.url);return l.searchParams.set("id",t),{...r,url:`${l}`}};export{o as resolve}; diff --git a/new_site/node_modules/@tailwindcss/node/dist/index.d.mts b/new_site/node_modules/@tailwindcss/node/dist/index.d.mts deleted file mode 100644 index cf88972..0000000 --- a/new_site/node_modules/@tailwindcss/node/dist/index.d.mts +++ /dev/null @@ -1,117 +0,0 @@ -import { Candidate, Variant } from './candidate'; -import { compileAstNodes } from './compile'; -import { ClassEntry, VariantEntry } from './intellisense'; -import { Theme } from './theme'; -import { Utilities } from './utilities'; -import { Variants } from './variants'; -import { Features } from 'tailwindcss'; -export { Features } from 'tailwindcss'; - -declare const DEBUG: boolean; - -declare const env_DEBUG: typeof DEBUG; -declare namespace env { - export { env_DEBUG as DEBUG }; -} - -type DesignSystem = { - theme: Theme; - utilities: Utilities; - variants: Variants; - invalidCandidates: Set; - important: boolean; - getClassOrder(classes: string[]): [string, bigint | null][]; - getClassList(): ClassEntry[]; - getVariants(): VariantEntry[]; - parseCandidate(candidate: string): Readonly[]; - parseVariant(variant: string): Readonly | null; - compileAstNodes(candidate: Candidate): ReturnType; - getVariantOrder(): Map; - resolveThemeValue(path: string): string | undefined; - trackUsedVariables(raw: string): void; - candidatesToCss(classes: string[]): (string | null)[]; -}; - -type StyleRule = { - kind: 'rule'; - selector: string; - nodes: AstNode[]; -}; -type AtRule = { - kind: 'at-rule'; - name: string; - params: string; - nodes: AstNode[]; -}; -type Declaration = { - kind: 'declaration'; - property: string; - value: string | undefined; - important: boolean; -}; -type Comment = { - kind: 'comment'; - value: string; -}; -type Context = { - kind: 'context'; - context: Record; - nodes: AstNode[]; -}; -type AtRoot = { - kind: 'at-root'; - nodes: AstNode[]; -}; -type AstNode = StyleRule | AtRule | Declaration | Comment | Context | AtRoot; - -type Resolver = (id: string, base: string) => Promise; -interface CompileOptions { - base: string; - onDependency: (path: string) => void; - shouldRewriteUrls?: boolean; - customCssResolver?: Resolver; - customJsResolver?: Resolver; -} -declare function compileAst(ast: AstNode[], options: CompileOptions): Promise<{ - globs: { - base: string; - pattern: string; - }[]; - root: "none" | { - base: string; - pattern: string; - } | null; - features: Features; - build(candidates: string[]): AstNode[]; -}>; -declare function compile(css: string, options: CompileOptions): Promise<{ - globs: { - base: string; - pattern: string; - }[]; - root: "none" | { - base: string; - pattern: string; - } | null; - features: Features; - build(candidates: string[]): string; -}>; -declare function __unstable__loadDesignSystem(css: string, { base }: { - base: string; -}): Promise; - -declare class Instrumentation implements Disposable { - #private; - private defaultFlush; - constructor(defaultFlush?: (message: string) => undefined); - hit(label: string): void; - start(label: string): void; - end(label: string): void; - reset(): void; - report(flush?: (message: string) => undefined): void; - [Symbol.dispose](): void; -} - -declare function normalizePath(originalPath: string): string; - -export { Instrumentation, __unstable__loadDesignSystem, compile, compileAst, env, normalizePath }; diff --git a/new_site/node_modules/@tailwindcss/node/dist/index.d.ts b/new_site/node_modules/@tailwindcss/node/dist/index.d.ts deleted file mode 100644 index afa0774..0000000 --- a/new_site/node_modules/@tailwindcss/node/dist/index.d.ts +++ /dev/null @@ -1,121 +0,0 @@ -import { Candidate, Variant } from './candidate'; -import { compileAstNodes } from './compile'; -import { ClassEntry, VariantEntry } from './intellisense'; -import { Theme } from './theme'; -import { Utilities } from './utilities'; -import { Variants } from './variants'; -import { Features } from 'tailwindcss'; -export { Features } from 'tailwindcss'; - -declare const DEBUG: boolean; - -declare const env_DEBUG: typeof DEBUG; -declare namespace env { - export { env_DEBUG as DEBUG }; -} - -type DesignSystem = { - theme: Theme; - utilities: Utilities; - variants: Variants; - invalidCandidates: Set; - important: boolean; - getClassOrder(classes: string[]): [string, bigint | null][]; - getClassList(): ClassEntry[]; - getVariants(): VariantEntry[]; - parseCandidate(candidate: string): Readonly[]; - parseVariant(variant: string): Readonly | null; - compileAstNodes(candidate: Candidate): ReturnType; - getVariantOrder(): Map; - resolveThemeValue(path: string): string | undefined; - trackUsedVariables(raw: string): void; - candidatesToCss(classes: string[]): (string | null)[]; -}; - -type StyleRule = { - kind: 'rule'; - selector: string; - nodes: AstNode[]; -}; -type AtRule = { - kind: 'at-rule'; - name: string; - params: string; - nodes: AstNode[]; -}; -type Declaration = { - kind: 'declaration'; - property: string; - value: string | undefined; - important: boolean; -}; -type Comment = { - kind: 'comment'; - value: string; -}; -type Context = { - kind: 'context'; - context: Record; - nodes: AstNode[]; -}; -type AtRoot = { - kind: 'at-root'; - nodes: AstNode[]; -}; -type AstNode = StyleRule | AtRule | Declaration | Comment | Context | AtRoot; - -type Resolver = (id: string, base: string) => Promise; -interface CompileOptions { - base: string; - onDependency: (path: string) => void; - shouldRewriteUrls?: boolean; - customCssResolver?: Resolver; - customJsResolver?: Resolver; -} -declare function compileAst(ast: AstNode[], options: CompileOptions): Promise<{ - globs: { - base: string; - pattern: string; - }[]; - root: "none" | { - base: string; - pattern: string; - } | null; - features: Features; - build(candidates: string[]): AstNode[]; -}>; -declare function compile(css: string, options: CompileOptions): Promise<{ - globs: { - base: string; - pattern: string; - }[]; - root: "none" | { - base: string; - pattern: string; - } | null; - features: Features; - build(candidates: string[]): string; -}>; -declare function __unstable__loadDesignSystem(css: string, { base }: { - base: string; -}): Promise; -declare function loadModule(id: string, base: string, onDependency: (path: string) => void, customJsResolver?: Resolver): Promise<{ - base: string; - module: any; -}>; - -declare class Instrumentation implements Disposable { - #private; - private defaultFlush; - constructor(defaultFlush?: (message: string) => undefined); - hit(label: string): void; - start(label: string): void; - end(label: string): void; - reset(): void; - report(flush?: (message: string) => undefined): void; - [Symbol.dispose](): void; -} - -declare function normalizePath(originalPath: string): string; - -export { type CompileOptions, Instrumentation, type Resolver, __unstable__loadDesignSystem, compile, compileAst, env, loadModule, normalizePath }; diff --git a/new_site/node_modules/@tailwindcss/node/dist/index.js b/new_site/node_modules/@tailwindcss/node/dist/index.js deleted file mode 100644 index 8f92891..0000000 --- a/new_site/node_modules/@tailwindcss/node/dist/index.js +++ /dev/null @@ -1,15 +0,0 @@ -"use strict";var Ce=Object.create;var N=Object.defineProperty;var Ne=Object.getOwnPropertyDescriptor;var $e=Object.getOwnPropertyNames;var ke=Object.getPrototypeOf,Te=Object.prototype.hasOwnProperty;var X=(e,t)=>{for(var r in t)N(e,r,{get:t[r],enumerable:!0})},Z=(e,t,r,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of $e(t))!Te.call(e,i)&&i!==r&&N(e,i,{get:()=>t[i],enumerable:!(s=Ne(t,i))||s.enumerable});return e};var g=(e,t,r)=>(r=e!=null?Ce(ke(e)):{},Z(t||!e||!e.__esModule?N(r,"default",{value:e,enumerable:!0}):r,e)),_e=e=>Z(N({},"__esModule",{value:!0}),e);var dt={};X(dt,{Features:()=>h.Features,Instrumentation:()=>Y,__unstable__loadDesignSystem:()=>at,compile:()=>ot,compileAst:()=>lt,env:()=>$,loadModule:()=>q,normalizePath:()=>U});module.exports=_e(dt);var Re=g(require("module")),Ee=require("url");var $={};X($,{DEBUG:()=>K});var K=be(process.env.DEBUG);function be(e){if(e===void 0)return!1;if(e==="true"||e==="1")return!0;if(e==="false"||e==="0")return!1;if(e==="*")return!0;let t=e.split(",").map(r=>r.split(":")[0]);return t.includes("-tailwindcss")?!1:!!t.includes("tailwindcss")}var y=g(require("enhanced-resolve")),ye=require("jiti"),I=g(require("fs")),J=g(require("fs/promises")),v=g(require("path")),H=require("url"),h=require("tailwindcss");var k=g(require("fs/promises")),w=g(require("path")),De=[/import[\s\S]*?['"](.{3,}?)['"]/gi,/import[\s\S]*from[\s\S]*?['"](.{3,}?)['"]/gi,/export[\s\S]*from[\s\S]*?['"](.{3,}?)['"]/gi,/require\(['"`](.+)['"`]\)/gi],Oe=[".js",".cjs",".mjs"],Ue=["",".js",".cjs",".mjs",".ts",".cts",".mts",".jsx",".tsx"],Ie=["",".ts",".cts",".mts",".tsx",".js",".cjs",".mjs",".jsx"];async function Pe(e,t){for(let r of t){let s=`${e}${r}`;if((await k.default.stat(s).catch(()=>null))?.isFile())return s}for(let r of t){let s=`${e}/index${r}`;if(await k.default.access(s).then(()=>!0,()=>!1))return s}return null}async function ee(e,t,r,s){let i=Oe.includes(s)?Ue:Ie,l=await Pe(w.default.resolve(r,t),i);if(l===null||e.has(l))return;e.add(l),r=w.default.dirname(l),s=w.default.extname(l);let n=await k.default.readFile(l,"utf-8"),a=[];for(let o of De)for(let u of n.matchAll(o))u[1].startsWith(".")&&a.push(ee(e,u[1],r,s));await Promise.all(a)}async function te(e){let t=new Set;return await ee(t,e,w.default.dirname(e),w.default.extname(e)),Array.from(t)}var z=g(require("path"));var R=92,T=47,_=42,Fe=34,Ke=39,je=58,b=59,x=10,E=32,D=9,re=123,j=125,W=40,se=41,Le=91,Me=93,ie=45,L=64,We=33;function ne(e){e=e.replaceAll(`\r -`,` -`);let t=[],r=[],s=[],i=null,l=null,n="",a="",o;for(let u=0;u0&&e[m]===c[c.length-1]&&(c=c.slice(0,-1));let F=M(n,d);if(!F)throw new Error("Invalid custom property, expected a value");i?i.nodes.push(F):t.push(F),n=""}else if(f===b&&n.charCodeAt(0)===L)l=C(n),i?i.nodes.push(l):t.push(l),n="",l=null;else if(f===b&&a[a.length-1]!==")"){let c=M(n);if(!c)throw n.length===0?new Error("Unexpected semicolon"):new Error(`Invalid declaration: \`${n.trim()}\``);i?i.nodes.push(c):t.push(c),n=""}else if(f===re&&a[a.length-1]!==")")a+="}",l=le(n.trim()),i&&i.nodes.push(l),s.push(i),i=l,n="",l=null;else if(f===j&&a[a.length-1]!==")"){if(a==="")throw new Error("Missing opening {");if(a=a.slice(0,-1),n.length>0)if(n.charCodeAt(0)===L)l=C(n),i?i.nodes.push(l):t.push(l),n="",l=null;else{let p=n.indexOf(":");if(i){let d=M(n,p);if(!d)throw new Error(`Invalid declaration: \`${n.trim()}\``);i.nodes.push(d)}}let c=s.pop()??null;c===null&&i&&t.push(i),i=c,n="",l=null}else if(f===W)a+=")",n+="(";else if(f===se){if(a[a.length-1]!==")")throw new Error("Missing opening (");a=a.slice(0,-1),n+=")"}else{if(n.length===0&&(f===E||f===x||f===D))continue;n+=String.fromCharCode(f)}}}if(n.charCodeAt(0)===L&&t.push(C(n)),a.length>0&&i){if(i.kind==="rule")throw new Error(`Missing closing } at ${i.selector}`);if(i.kind==="at-rule")throw new Error(`Missing closing } at ${i.name} ${i.params}`)}return r.length>0?r.concat(t):t}function C(e,t=[]){for(let r=5;r4&&e[3]==="\\"){var i=e[2];(i==="?"||i===".")&&e.slice(0,2)==="\\\\"&&(e=e.slice(2),s="//")}var l=e.split(/[/\\]+/);return t!==!1&&l[l.length-1]===""&&l.pop(),s+l.join("/")}function U(e){let t=Ge(e);return e.startsWith("\\\\")&&t.startsWith("/")&&!t.startsWith("//")?`/${t}`:t}var G=/(?[\w-]+\([^)]*\)|"[^"]*"|'[^']*'|[^,]\S*[^,])\s*(?:\s(?\w[^,]+))?(?:,|$)/g,Ye=/(?Ve.test(e),et=e=>Je.test(e);async function ce({css:e,base:t,root:r}){if(!e.includes("url(")&&!e.includes("image-set("))return e;let s=ne(e),i=[];function l(n){if(n[0]==="/")return n;let a=z.posix.join(U(t),n),o=z.posix.relative(U(r),a);return o.startsWith(".")||(o="./"+o),o}return O(s,n=>{if(n.kind!=="declaration"||!n.value)return;let a=G.test(n.value),o=ue.test(n.value);if(a||o){let u=o?tt:pe;i.push(u(n.value,l).then(f=>{n.value=f}))}}),i.length&&await Promise.all(i),fe(s)}function pe(e,t){return de(e,G,async r=>{let[s,i]=r;return await me(i.trim(),s,t)})}async function tt(e,t){return await de(e,ue,async r=>{let[,s]=r;return await st(s,async({url:l})=>G.test(l)?await pe(l,t):He.test(l)?l:await me(l,l,t))})}async function me(e,t,r,s="url"){let i="",l=e[0];if((l==='"'||l==="'")&&(i=l,e=e.slice(1,-1)),rt(e))return t;let n=await r(e);return i===""&&n!==encodeURI(n)&&(i='"'),i==="'"&&n.includes("'")&&(i='"'),i==='"'&&n.includes('"')&&(n=n.replace(Ye,'\\"')),`${s}(${i}${n}${i})`}function rt(e,t){return et(e)||Ze(e)||!e[0].match(/[\.a-zA-Z0-9_]/)||qe.test(e)}function st(e,t){return Promise.all(it(e).map(async({url:r,descriptor:s})=>({url:await t({url:r,descriptor:s}),descriptor:s}))).then(nt)}function it(e){let t=e.trim().replace(Xe," ").replace(/\r?\n/,"").replace(/,\s+/,", ").replaceAll(/\s+/g," ").matchAll(Qe);return Array.from(t,({groups:r})=>({url:r?.url?.trim()??"",descriptor:r?.descriptor?.trim()??""})).filter(({url:r})=>!!r)}function nt(e){return e.map(({url:t,descriptor:r})=>t+(r?` ${r}`:"")).join(", ")}async function de(e,t,r){let s,i=e,l="";for(;s=t.exec(i);)l+=i.slice(0,s.index),l+=await r(s),i=i.slice(s.index+s[0].length);return l+=i,l}var mt={};function ve({base:e,onDependency:t,shouldRewriteUrls:r,customCssResolver:s,customJsResolver:i}){return{base:e,async loadModule(l,n){return q(l,n,t,i)},async loadStylesheet(l,n){let a=await we(l,n,t,s);return r&&(a.content=await ce({css:a.content,root:n,base:a.base})),a}}}async function Ae(e,t){if(e.root&&e.root!=="none"){let r=/[*{]/,s=[];for(let l of e.root.pattern.split("/")){if(r.test(l))break;s.push(l)}if(!await J.default.stat(v.default.resolve(t,s.join("/"))).then(l=>l.isDirectory()).catch(()=>!1))throw new Error(`The \`source(${e.root.pattern})\` does not exist`)}}async function lt(e,t){let r=await(0,h.compileAst)(e,ve(t));return await Ae(r,t.base),r}async function ot(e,t){let r=await(0,h.compile)(e,ve(t));return await Ae(r,t.base),r}async function at(e,{base:t}){return(0,h.__unstable__loadDesignSystem)(e,{base:t,async loadModule(r,s){return q(r,s,()=>{})},async loadStylesheet(r,s){return we(r,s,()=>{})}})}async function q(e,t,r,s){if(e[0]!=="."){let a=await xe(e,t,s);if(!a)throw new Error(`Could not resolve '${e}' from '${t}'`);let o=await he((0,H.pathToFileURL)(a).href);return{base:(0,v.dirname)(a),module:o.default??o}}let i=await xe(e,t,s);if(!i)throw new Error(`Could not resolve '${e}' from '${t}'`);let[l,n]=await Promise.all([he((0,H.pathToFileURL)(i).href+"?id="+Date.now()),te(i)]);for(let a of n)r(a);return{base:(0,v.dirname)(i),module:l.default??l}}async function we(e,t,r,s){let i=await ut(e,t,s);if(!i)throw new Error(`Could not resolve '${e}' from '${t}'`);if(r(i),typeof globalThis.__tw_readFile=="function"){let n=await globalThis.__tw_readFile(i,"utf-8");if(n)return{base:v.default.dirname(i),content:n}}let l=await J.default.readFile(i,"utf-8");return{base:v.default.dirname(i),content:l}}var ge=null;async function he(e){if(typeof globalThis.__tw_load=="function"){let t=await globalThis.__tw_load(e);if(t)return t}try{return await import(e)}catch{return ge??=(0,ye.createJiti)(mt.url,{moduleCache:!1,fsCache:!1}),await ge.import(e)}}var Q=["node_modules",...process.env.NODE_PATH?[process.env.NODE_PATH]:[]],ft=y.default.ResolverFactory.createResolver({fileSystem:new y.default.CachedInputFileSystem(I.default,4e3),useSyncFileSystemCalls:!0,extensions:[".css"],mainFields:["style"],conditionNames:["style"],modules:Q});async function ut(e,t,r){if(typeof globalThis.__tw_resolve=="function"){let s=globalThis.__tw_resolve(e,t);if(s)return Promise.resolve(s)}if(r){let s=await r(e,t);if(s)return s}return V(ft,e,t)}var ct=y.default.ResolverFactory.createResolver({fileSystem:new y.default.CachedInputFileSystem(I.default,4e3),useSyncFileSystemCalls:!0,extensions:[".js",".json",".node",".ts"],conditionNames:["node","import"],modules:Q}),pt=y.default.ResolverFactory.createResolver({fileSystem:new y.default.CachedInputFileSystem(I.default,4e3),useSyncFileSystemCalls:!0,extensions:[".js",".json",".node",".ts"],conditionNames:["node","require"],modules:Q});async function xe(e,t,r){if(typeof globalThis.__tw_resolve=="function"){let s=globalThis.__tw_resolve(e,t);if(s)return Promise.resolve(s)}if(r){let s=await r(e,t);if(s)return s}return V(ct,e,t).catch(()=>V(pt,e,t))}function V(e,t,r){return new Promise((s,i)=>e.resolve({},r,t,{},(l,n)=>{if(l)return i(l);s(n)}))}Symbol.dispose??=Symbol("Symbol.dispose");Symbol.asyncDispose??=Symbol("Symbol.asyncDispose");var Y=class{constructor(t=r=>void process.stderr.write(`${r} -`)){this.defaultFlush=t}#r=new S(()=>({value:0}));#t=new S(()=>({value:0n}));#e=[];hit(t){this.#r.get(t).value++}start(t){let r=this.#e.map(i=>i.label).join("//"),s=`${r}${r.length===0?"":"//"}${t}`;this.#r.get(s).value++,this.#t.get(s),this.#e.push({id:s,label:t,namespace:r,value:process.hrtime.bigint()})}end(t){let r=process.hrtime.bigint();if(this.#e[this.#e.length-1].label!==t)throw new Error(`Mismatched timer label: \`${t}\`, expected \`${this.#e[this.#e.length-1].label}\``);let s=this.#e.pop(),i=r-s.value;this.#t.get(s.id).value+=i}reset(){this.#r.clear(),this.#t.clear(),this.#e.splice(0)}report(t=this.defaultFlush){let r=[],s=!1;for(let n=this.#e.length-1;n>=0;n--)this.end(this.#e[n].label);for(let[n,{value:a}]of this.#r.entries()){if(this.#t.has(n))continue;r.length===0&&(s=!0,r.push("Hits:"));let o=n.split("//").length;r.push(`${" ".repeat(o)}${n} ${P(Se(`\xD7 ${a}`))}`)}this.#t.size>0&&s&&r.push(` -Timers:`);let i=-1/0,l=new Map;for(let[n,{value:a}]of this.#t){let o=`${(Number(a)/1e6).toFixed(2)}ms`;l.set(n,o),i=Math.max(i,o.length)}for(let n of this.#t.keys()){let a=n.split("//").length;r.push(`${P(`[${l.get(n).padStart(i," ")}]`)}${" ".repeat(a-1)}${a===1?" ":P(" \u21B3 ")}${n.split("//").pop()} ${this.#r.get(n).value===1?"":P(Se(`\xD7 ${this.#r.get(n).value}`))}`.trimEnd())}t(` -${r.join(` -`)} -`),this.reset()}[Symbol.dispose](){K&&this.report()}};function P(e){return`\x1B[2m${e}\x1B[22m`}function Se(e){return`\x1B[34m${e}\x1B[39m`}process.versions.bun||Re.register?.((0,Ee.pathToFileURL)(require.resolve("@tailwindcss/node/esm-cache-loader")));0&&(module.exports={Features,Instrumentation,__unstable__loadDesignSystem,compile,compileAst,env,loadModule,normalizePath}); diff --git a/new_site/node_modules/@tailwindcss/node/dist/index.mjs b/new_site/node_modules/@tailwindcss/node/dist/index.mjs deleted file mode 100644 index 5eff826..0000000 --- a/new_site/node_modules/@tailwindcss/node/dist/index.mjs +++ /dev/null @@ -1,15 +0,0 @@ -var ve=Object.defineProperty;var Ae=(e,t)=>{for(var r in t)ve(e,r,{get:t[r],enumerable:!0})};import*as k from"node:module";import{pathToFileURL as at}from"node:url";var D={};Ae(D,{DEBUG:()=>b});var b=we(process.env.DEBUG);function we(e){if(e===void 0)return!1;if(e==="true"||e==="1")return!0;if(e==="false"||e==="0")return!1;if(e==="*")return!0;let t=e.split(",").map(r=>r.split(":")[0]);return t.includes("-tailwindcss")?!1:!!t.includes("tailwindcss")}import y from"enhanced-resolve";import{createJiti as Qe}from"jiti";import z from"node:fs";import me from"node:fs/promises";import W,{dirname as oe}from"node:path";import{pathToFileURL as ae}from"node:url";import{__unstable__loadDesignSystem as Ye,compile as Xe,compileAst as Ze,Features as et}from"tailwindcss";import O from"node:fs/promises";import v from"node:path";var Se=[/import[\s\S]*?['"](.{3,}?)['"]/gi,/import[\s\S]*from[\s\S]*?['"](.{3,}?)['"]/gi,/export[\s\S]*from[\s\S]*?['"](.{3,}?)['"]/gi,/require\(['"`](.+)['"`]\)/gi],Re=[".js",".cjs",".mjs"],Ee=["",".js",".cjs",".mjs",".ts",".cts",".mts",".jsx",".tsx"],Ce=["",".ts",".cts",".mts",".tsx",".js",".cjs",".mjs",".jsx"];async function Ne(e,t){for(let r of t){let s=`${e}${r}`;if((await O.stat(s).catch(()=>null))?.isFile())return s}for(let r of t){let s=`${e}/index${r}`;if(await O.access(s).then(()=>!0,()=>!1))return s}return null}async function H(e,t,r,s){let i=Re.includes(s)?Ee:Ce,l=await Ne(v.resolve(r,t),i);if(l===null||e.has(l))return;e.add(l),r=v.dirname(l),s=v.extname(l);let n=await O.readFile(l,"utf-8"),a=[];for(let o of Se)for(let f of n.matchAll(o))f[1].startsWith(".")&&a.push(H(e,f[1],r,s));await Promise.all(a)}async function V(e){let t=new Set;return await H(t,e,v.dirname(e),v.extname(e)),Array.from(t)}import*as L from"node:path";var A=92,R=47,E=42,$e=34,_e=39,ke=58,C=59,g=10,w=32,N=9,q=123,U=125,F=40,J=41,Te=91,be=93,Q=45,I=64,De=33;function Y(e){e=e.replaceAll(`\r -`,` -`);let t=[],r=[],s=[],i=null,l=null,n="",a="",o;for(let f=0;f0&&e[p]===c[c.length-1]&&(c=c.slice(0,-1));let T=P(n,d);if(!T)throw new Error("Invalid custom property, expected a value");i?i.nodes.push(T):t.push(T),n=""}else if(u===C&&n.charCodeAt(0)===I)l=S(n),i?i.nodes.push(l):t.push(l),n="",l=null;else if(u===C&&a[a.length-1]!==")"){let c=P(n);if(!c)throw n.length===0?new Error("Unexpected semicolon"):new Error(`Invalid declaration: \`${n.trim()}\``);i?i.nodes.push(c):t.push(c),n=""}else if(u===q&&a[a.length-1]!==")")a+="}",l=X(n.trim()),i&&i.nodes.push(l),s.push(i),i=l,n="",l=null;else if(u===U&&a[a.length-1]!==")"){if(a==="")throw new Error("Missing opening {");if(a=a.slice(0,-1),n.length>0)if(n.charCodeAt(0)===I)l=S(n),i?i.nodes.push(l):t.push(l),n="",l=null;else{let m=n.indexOf(":");if(i){let d=P(n,m);if(!d)throw new Error(`Invalid declaration: \`${n.trim()}\``);i.nodes.push(d)}}let c=s.pop()??null;c===null&&i&&t.push(i),i=c,n="",l=null}else if(u===F)a+=")",n+="(";else if(u===J){if(a[a.length-1]!==")")throw new Error("Missing opening (");a=a.slice(0,-1),n+=")"}else{if(n.length===0&&(u===w||u===g||u===N))continue;n+=String.fromCharCode(u)}}}if(n.charCodeAt(0)===I&&t.push(S(n)),a.length>0&&i){if(i.kind==="rule")throw new Error(`Missing closing } at ${i.selector}`);if(i.kind==="at-rule")throw new Error(`Missing closing } at ${i.name} ${i.params}`)}return r.length>0?r.concat(t):t}function S(e,t=[]){for(let r=5;r4&&e[3]==="\\"){var i=e[2];(i==="?"||i===".")&&e.slice(0,2)==="\\\\"&&(e=e.slice(2),s="//")}var l=e.split(/[/\\]+/);return t!==!1&&l[l.length-1]===""&&l.pop(),s+l.join("/")}function j(e){let t=Ie(e);return e.startsWith("\\\\")&&t.startsWith("/")&&!t.startsWith("//")?`/${t}`:t}var M=/(?[\w-]+\([^)]*\)|"[^"]*"|'[^']*'|[^,]\S*[^,])\s*(?:\s(?\w[^,]+))?(?:,|$)/g,Me=/(?Fe.test(e),ze=e=>Ke.test(e);async function se({css:e,base:t,root:r}){if(!e.includes("url(")&&!e.includes("image-set("))return e;let s=Y(e),i=[];function l(n){if(n[0]==="/")return n;let a=L.posix.join(j(t),n),o=L.posix.relative(j(r),a);return o.startsWith(".")||(o="./"+o),o}return $(s,n=>{if(n.kind!=="declaration"||!n.value)return;let a=M.test(n.value),o=re.test(n.value);if(a||o){let f=o?Ge:ie;i.push(f(n.value,l).then(u=>{n.value=u}))}}),i.length&&await Promise.all(i),te(s)}function ie(e,t){return le(e,M,async r=>{let[s,i]=r;return await ne(i.trim(),s,t)})}async function Ge(e,t){return await le(e,re,async r=>{let[,s]=r;return await Ve(s,async({url:l})=>M.test(l)?await ie(l,t):Pe.test(l)?l:await ne(l,l,t))})}async function ne(e,t,r,s="url"){let i="",l=e[0];if((l==='"'||l==="'")&&(i=l,e=e.slice(1,-1)),He(e))return t;let n=await r(e);return i===""&&n!==encodeURI(n)&&(i='"'),i==="'"&&n.includes("'")&&(i='"'),i==='"'&&n.includes('"')&&(n=n.replace(Me,'\\"')),`${s}(${i}${n}${i})`}function He(e,t){return ze(e)||Be(e)||!e[0].match(/[\.a-zA-Z0-9_]/)||je.test(e)}function Ve(e,t){return Promise.all(qe(e).map(async({url:r,descriptor:s})=>({url:await t({url:r,descriptor:s}),descriptor:s}))).then(Je)}function qe(e){let t=e.trim().replace(We," ").replace(/\r?\n/,"").replace(/,\s+/,", ").replaceAll(/\s+/g," ").matchAll(Le);return Array.from(t,({groups:r})=>({url:r?.url?.trim()??"",descriptor:r?.descriptor?.trim()??""})).filter(({url:r})=>!!r)}function Je(e){return e.map(({url:t,descriptor:r})=>t+(r?` ${r}`:"")).join(", ")}async function le(e,t,r){let s,i=e,l="";for(;s=t.exec(i);)l+=i.slice(0,s.index),l+=await r(s),i=i.slice(s.index+s[0].length);return l+=i,l}function pe({base:e,onDependency:t,shouldRewriteUrls:r,customCssResolver:s,customJsResolver:i}){return{base:e,async loadModule(l,n){return ge(l,n,t,i)},async loadStylesheet(l,n){let a=await he(l,n,t,s);return r&&(a.content=await se({css:a.content,root:n,base:a.base})),a}}}async function de(e,t){if(e.root&&e.root!=="none"){let r=/[*{]/,s=[];for(let l of e.root.pattern.split("/")){if(r.test(l))break;s.push(l)}if(!await me.stat(W.resolve(t,s.join("/"))).then(l=>l.isDirectory()).catch(()=>!1))throw new Error(`The \`source(${e.root.pattern})\` does not exist`)}}async function tt(e,t){let r=await Ze(e,pe(t));return await de(r,t.base),r}async function rt(e,t){let r=await Xe(e,pe(t));return await de(r,t.base),r}async function st(e,{base:t}){return Ye(e,{base:t,async loadModule(r,s){return ge(r,s,()=>{})},async loadStylesheet(r,s){return he(r,s,()=>{})}})}async function ge(e,t,r,s){if(e[0]!=="."){let a=await ce(e,t,s);if(!a)throw new Error(`Could not resolve '${e}' from '${t}'`);let o=await fe(ae(a).href);return{base:oe(a),module:o.default??o}}let i=await ce(e,t,s);if(!i)throw new Error(`Could not resolve '${e}' from '${t}'`);let[l,n]=await Promise.all([fe(ae(i).href+"?id="+Date.now()),V(i)]);for(let a of n)r(a);return{base:oe(i),module:l.default??l}}async function he(e,t,r,s){let i=await nt(e,t,s);if(!i)throw new Error(`Could not resolve '${e}' from '${t}'`);if(r(i),typeof globalThis.__tw_readFile=="function"){let n=await globalThis.__tw_readFile(i,"utf-8");if(n)return{base:W.dirname(i),content:n}}let l=await me.readFile(i,"utf-8");return{base:W.dirname(i),content:l}}var ue=null;async function fe(e){if(typeof globalThis.__tw_load=="function"){let t=await globalThis.__tw_load(e);if(t)return t}try{return await import(e)}catch{return ue??=Qe(import.meta.url,{moduleCache:!1,fsCache:!1}),await ue.import(e)}}var G=["node_modules",...process.env.NODE_PATH?[process.env.NODE_PATH]:[]],it=y.ResolverFactory.createResolver({fileSystem:new y.CachedInputFileSystem(z,4e3),useSyncFileSystemCalls:!0,extensions:[".css"],mainFields:["style"],conditionNames:["style"],modules:G});async function nt(e,t,r){if(typeof globalThis.__tw_resolve=="function"){let s=globalThis.__tw_resolve(e,t);if(s)return Promise.resolve(s)}if(r){let s=await r(e,t);if(s)return s}return B(it,e,t)}var lt=y.ResolverFactory.createResolver({fileSystem:new y.CachedInputFileSystem(z,4e3),useSyncFileSystemCalls:!0,extensions:[".js",".json",".node",".ts"],conditionNames:["node","import"],modules:G}),ot=y.ResolverFactory.createResolver({fileSystem:new y.CachedInputFileSystem(z,4e3),useSyncFileSystemCalls:!0,extensions:[".js",".json",".node",".ts"],conditionNames:["node","require"],modules:G});async function ce(e,t,r){if(typeof globalThis.__tw_resolve=="function"){let s=globalThis.__tw_resolve(e,t);if(s)return Promise.resolve(s)}if(r){let s=await r(e,t);if(s)return s}return B(lt,e,t).catch(()=>B(ot,e,t))}function B(e,t,r){return new Promise((s,i)=>e.resolve({},r,t,{},(l,n)=>{if(l)return i(l);s(n)}))}Symbol.dispose??=Symbol("Symbol.dispose");Symbol.asyncDispose??=Symbol("Symbol.asyncDispose");var xe=class{constructor(t=r=>void process.stderr.write(`${r} -`)){this.defaultFlush=t}#r=new x(()=>({value:0}));#t=new x(()=>({value:0n}));#e=[];hit(t){this.#r.get(t).value++}start(t){let r=this.#e.map(i=>i.label).join("//"),s=`${r}${r.length===0?"":"//"}${t}`;this.#r.get(s).value++,this.#t.get(s),this.#e.push({id:s,label:t,namespace:r,value:process.hrtime.bigint()})}end(t){let r=process.hrtime.bigint();if(this.#e[this.#e.length-1].label!==t)throw new Error(`Mismatched timer label: \`${t}\`, expected \`${this.#e[this.#e.length-1].label}\``);let s=this.#e.pop(),i=r-s.value;this.#t.get(s.id).value+=i}reset(){this.#r.clear(),this.#t.clear(),this.#e.splice(0)}report(t=this.defaultFlush){let r=[],s=!1;for(let n=this.#e.length-1;n>=0;n--)this.end(this.#e[n].label);for(let[n,{value:a}]of this.#r.entries()){if(this.#t.has(n))continue;r.length===0&&(s=!0,r.push("Hits:"));let o=n.split("//").length;r.push(`${" ".repeat(o)}${n} ${_(ye(`\xD7 ${a}`))}`)}this.#t.size>0&&s&&r.push(` -Timers:`);let i=-1/0,l=new Map;for(let[n,{value:a}]of this.#t){let o=`${(Number(a)/1e6).toFixed(2)}ms`;l.set(n,o),i=Math.max(i,o.length)}for(let n of this.#t.keys()){let a=n.split("//").length;r.push(`${_(`[${l.get(n).padStart(i," ")}]`)}${" ".repeat(a-1)}${a===1?" ":_(" \u21B3 ")}${n.split("//").pop()} ${this.#r.get(n).value===1?"":_(ye(`\xD7 ${this.#r.get(n).value}`))}`.trimEnd())}t(` -${r.join(` -`)} -`),this.reset()}[Symbol.dispose](){b&&this.report()}};function _(e){return`\x1B[2m${e}\x1B[22m`}function ye(e){return`\x1B[34m${e}\x1B[39m`}if(!process.versions.bun){let e=k.createRequire(import.meta.url);k.register?.(at(e.resolve("@tailwindcss/node/esm-cache-loader")))}export{et as Features,xe as Instrumentation,st as __unstable__loadDesignSystem,rt as compile,tt as compileAst,D as env,j as normalizePath}; diff --git a/new_site/node_modules/@tailwindcss/node/dist/require-cache.d.ts b/new_site/node_modules/@tailwindcss/node/dist/require-cache.d.ts deleted file mode 100644 index de970b9..0000000 --- a/new_site/node_modules/@tailwindcss/node/dist/require-cache.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -declare function clearRequireCache(files: string[]): void; - -export { clearRequireCache }; diff --git a/new_site/node_modules/@tailwindcss/node/dist/require-cache.js b/new_site/node_modules/@tailwindcss/node/dist/require-cache.js deleted file mode 100644 index 398995f..0000000 --- a/new_site/node_modules/@tailwindcss/node/dist/require-cache.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";var i=Object.defineProperty;var a=Object.getOwnPropertyDescriptor;var f=Object.getOwnPropertyNames;var l=Object.prototype.hasOwnProperty;var n=(r,e)=>{for(var t in e)i(r,t,{get:e[t],enumerable:!0})},u=(r,e,t,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let c of f(e))!l.call(r,c)&&c!==t&&i(r,c,{get:()=>e[c],enumerable:!(o=a(e,c))||o.enumerable});return r};var h=r=>u(i({},"__esModule",{value:!0}),r);var d={};n(d,{clearRequireCache:()=>q});module.exports=h(d);function q(r){for(let e of r)delete require.cache[e]}0&&(module.exports={clearRequireCache}); diff --git a/new_site/node_modules/@tailwindcss/node/package.json b/new_site/node_modules/@tailwindcss/node/package.json deleted file mode 100644 index 68e1eef..0000000 --- a/new_site/node_modules/@tailwindcss/node/package.json +++ /dev/null @@ -1,44 +0,0 @@ -{ - "name": "@tailwindcss/node", - "version": "4.0.5", - "description": "A utility-first CSS framework for rapidly building custom user interfaces.", - "license": "MIT", - "repository": { - "type": "git", - "url": "https://github.com/tailwindlabs/tailwindcss.git", - "directory": "packages/@tailwindcss-node" - }, - "bugs": "https://github.com/tailwindlabs/tailwindcss/issues", - "homepage": "https://tailwindcss.com", - "files": [ - "dist/" - ], - "publishConfig": { - "provenance": true, - "access": "public" - }, - "exports": { - ".": { - "types": "./dist/index.d.ts", - "import": "./dist/index.mjs", - "require": "./dist/index.js" - }, - "./require-cache": { - "types": "./dist/require-cache.d.ts", - "default": "./dist/require-cache.js" - }, - "./esm-cache-loader": { - "types": "./dist/esm-cache.loader.d.mts", - "default": "./dist/esm-cache.loader.mjs" - } - }, - "dependencies": { - "enhanced-resolve": "^5.18.0", - "jiti": "^2.4.2", - "tailwindcss": "4.0.5" - }, - "scripts": { - "build": "tsup-node", - "dev": "pnpm run build -- --watch" - } -} \ No newline at end of file diff --git a/new_site/node_modules/@tailwindcss/oxide-linux-x64-gnu/LICENSE b/new_site/node_modules/@tailwindcss/oxide-linux-x64-gnu/LICENSE deleted file mode 100644 index d6a8229..0000000 --- a/new_site/node_modules/@tailwindcss/oxide-linux-x64-gnu/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) Tailwind Labs, Inc. - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/new_site/node_modules/@tailwindcss/oxide-linux-x64-gnu/README.md b/new_site/node_modules/@tailwindcss/oxide-linux-x64-gnu/README.md deleted file mode 100644 index f129c11..0000000 --- a/new_site/node_modules/@tailwindcss/oxide-linux-x64-gnu/README.md +++ /dev/null @@ -1,3 +0,0 @@ -# `@tailwindcss/oxide-linux-x64-gnu` - -This is the **x86_64-unknown-linux-gnu** binary for `@tailwindcss/oxide` diff --git a/new_site/node_modules/@tailwindcss/oxide-linux-x64-gnu/package.json b/new_site/node_modules/@tailwindcss/oxide-linux-x64-gnu/package.json deleted file mode 100644 index c6c348d..0000000 --- a/new_site/node_modules/@tailwindcss/oxide-linux-x64-gnu/package.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "name": "@tailwindcss/oxide-linux-x64-gnu", - "version": "4.0.5", - "repository": { - "type": "git", - "url": "git+https://github.com/tailwindlabs/tailwindcss.git", - "directory": "crates/node/npm/linux-x64-gnu" - }, - "os": [ - "linux" - ], - "cpu": [ - "x64" - ], - "main": "tailwindcss-oxide.linux-x64-gnu.node", - "files": [ - "tailwindcss-oxide.linux-x64-gnu.node" - ], - "publishConfig": { - "provenance": true, - "access": "public" - }, - "license": "MIT", - "engines": { - "node": ">= 10" - }, - "libc": [ - "glibc" - ] -} \ No newline at end of file diff --git a/new_site/node_modules/@tailwindcss/oxide-linux-x64-gnu/tailwindcss-oxide.linux-x64-gnu.node b/new_site/node_modules/@tailwindcss/oxide-linux-x64-gnu/tailwindcss-oxide.linux-x64-gnu.node deleted file mode 100644 index 9aa9a8feaa7b844ec047df343d22612df35f8bf4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2249776 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 dr6ggsLcZL;SxG+JBp;st%?`3$t_ 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%0DnA=P5WU*?9>+VBC~o0~=qe(> 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�@uV8}wYlU_(Q>yUfhv_x{TlILdNtvnt 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