docs: 仓库链接指向本镜像仓库
Dev Build / cleanup (push) Waiting to run
Dev Build / typecheck (push) Waiting to run

This commit is contained in:
TanTan committed 2026-11-13 09:27:07 +08:00
1 parent fa9c73363d
commit 2a69b23b47
18210 files changed
+5101211 -16

No files matched your search

@@ -0,0 +1 @@
{"version":3,"file":"metadata.js","sourceRoot":"","sources":["../../../../../src/server/auth/handlers/metadata.ts"],"names":[],"mappings":"AAAA,OAAO,OAA2B,MAAM,SAAS,CAAC;AAElD,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAEjE,MAAM,UAAU,eAAe,CAAC,QAAwD;IACpF,wEAAwE;IACxE,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAEhC,kFAAkF;IAClF,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;IAEnB,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC;IAC/C,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QACzB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAClB,CAAC"}
@@ -0,0 +1,18 @@
"use strict";
module.exports = function ({ ruleIds, language }) {
return `
The following rules do not support the language "${language}":
${ruleIds.map(id => `\t- "${id}"`).join("\n")}
To fix this error, either:
- Remove the rule from your configuration, or set its severity to "off".
- Use the "files" option to apply the rule only to files of the supported language, for example:
{
files: ["**/*.js"],
rules: { "${ruleIds[0]}": "error" }
}
See https://eslint.org/docs/latest/use/configure/rules for more information.
`.trimStart();
};
@@ -0,0 +1,65 @@
{
"name": "@radix-ui/react-use-effect-event",
"version": "0.0.3",
"license": "MIT",
"source": "./src/index.ts",
"main": "./dist/index.js",
"module": "./dist/index.mjs",
"files": [
"src",
"dist",
"README.md"
],
"sideEffects": false,
"peerDependencies": {
"@types/react": "*",
"react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
},
"peerDependenciesMeta": {
"@types/react": {
"optional": true
}
},
"dependencies": {
"@radix-ui/react-use-layout-effect": "1.1.2"
},
"devDependencies": {
"@types/react": "^19.2.2",
"@types/react-dom": "^19.2.2",
"@types/use-sync-external-store": "^0.0.6",
"react": "^19.2.0",
"react-dom": "^19.2.0",
"typescript": "^5.9.3",
"@repo/builder": "0.0.0",
"@repo/typescript-config": "0.0.0"
},
"homepage": "https://radix-ui.com/primitives",
"repository": {
"type": "git",
"url": "git+https://github.com/radix-ui/primitives.git",
"directory": "packages/react/use-effect-event"
},
"bugs": {
"url": "https://github.com/radix-ui/primitives/issues"
},
"scripts": {
"lint": "oxlint --max-warnings 0 src",
"clean": "rm -rf dist",
"reset": "rm -rf dist node_modules",
"typecheck": "tsc --noEmit",
"build": "radix-build"
},
"types": "./dist/index.d.ts",
"exports": {
".": {
"import": {
"types": "./dist/index.d.mts",
"default": "./dist/index.mjs"
},
"require": {
"types": "./dist/index.d.ts",
"default": "./dist/index.js"
}
}
}
}
@@ -0,0 +1,36 @@
# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [v1.0.1](https://github.com/ljharb/side-channel-list.git
/compare/v1.0.0...v1.0.1) - 2026-04-08
### Fixed
- [Fix] `delete`: do not reset the list when deleting the head node of a multi-node list [`#3`](https://github.com/ljharb/side-channel-list.git
/issues/3)
### Commits
- [actions] update workflows [`9e79e6b`](https://github.com/ljharb/side-channel-list.git
/commit/9e79e6bf845532fafbf03b547429fe4f737214a3)
- [Deps] update `@arethetypeswrong/cli`, `@ljharb/eslint-config`, `@ljharb/tsconfig`, `@types/tape`, `eslint`, `npmignore` [`babf3ca`](https://github.com/ljharb/side-channel-list.git
/commit/babf3ca4849d2fd893a470a6b82c62a80ccc9307)
- [Deps] update `object-inspect` [`9f0f4b8`](https://github.com/ljharb/side-channel-list.git
/commit/9f0f4b88ff2aa8b7b7c9e589ac1513f133d64b9f)
## v1.0.0 - 2024-12-10
### Commits
- Initial implementation, tests, readme, types [`5d6baee`](https://github.com/ljharb/side-channel-list.git
/commit/5d6baee5c9054a1238007f5a1dfc109a7a816251)
- Initial commit [`3ae784c`](https://github.com/ljharb/side-channel-list.git
/commit/3ae784c63a47895fbaeed2a91ab54a8029a7a100)
- npm init [`07055a4`](https://github.com/ljharb/side-channel-list.git
/commit/07055a4d139895565b199dba5fe2479c1a1b9e28)
- Only apps should have lockfiles [`9573058`](https://github.com/ljharb/side-channel-list.git
/commit/9573058a47494e2d68f8c6c77b5d7fbe441949c1)
@@ -0,0 +1 @@
{"version":3,"file":"getCleanPasswords.cjs","sources":["../../../../../../src/matcher/dictionary/variants/matching/unmunger/getCleanPasswords.ts"],"sourcesContent":[null],"names":["CleanPasswords","constructor","substr","limit","trieRoot","buffer","finalPasswords","getAllPossibleSubsAtIndex","index","nodes","cur","i","length","character","charAt","getChild","push","helper","onlyFullSub","isFullSub","subIndex","changes","lastSubLetter","consecutiveSubCount","password","join","isFullSubstitution","hasSubs","sub","parents","isTerminal","letters","subs","letter","newSubs","concat","substitution","pop","firstChar","getAll","undefined","getCleanPasswords"],"mappings":"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"}
@@ -0,0 +1,44 @@
import { useCallback } from 'react'
import { useSyncExternalStoreWithSelector } from 'use-sync-external-store/shim/with-selector'
import type { AnyAtom } from '@tanstack/store'
type SyncExternalStoreSubscribe = Parameters<
typeof useSyncExternalStoreWithSelector
>[0]
function defaultCompare<T>(a: T, b: T) {
return a === b
}
export function useStore<TAtom extends AnyAtom | undefined, T>(
atom: TAtom,
selector: (
snapshot: TAtom extends { get: () => infer TSnapshot }
? TSnapshot
: undefined,
) => T,
compare: (a: T, b: T) => boolean = defaultCompare,
): T {
const subscribe: SyncExternalStoreSubscribe = useCallback(
(handleStoreChange) => {
if (!atom) {
return () => {}
}
const { unsubscribe } = atom.subscribe(handleStoreChange)
return unsubscribe
},
[atom],
)
const boundGetSnapshot = useCallback(() => atom?.get(), [atom])
const selectedSnapshot = useSyncExternalStoreWithSelector(
subscribe,
boundGetSnapshot,
boundGetSnapshot,
selector,
compare,
)
return selectedSnapshot
}
@@ -0,0 +1,3 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
//# sourceMappingURL=types.js.map
@@ -0,0 +1,125 @@
import { tryDecodeURIComponent } from "./url.js";
//#region src/utils/cookie.ts
/**
* @module
* Cookie utility.
*/
const algorithm = {
name: "HMAC",
hash: "SHA-256"
};
const getCryptoKey = async (secret) => {
const secretBuf = typeof secret === "string" ? new TextEncoder().encode(secret) : secret;
return await crypto.subtle.importKey("raw", secretBuf, algorithm, false, ["sign", "verify"]);
};
const makeSignature = async (value, secret) => {
const key = await getCryptoKey(secret);
const signature = await crypto.subtle.sign(algorithm.name, key, new TextEncoder().encode(value));
return btoa(String.fromCharCode(...new Uint8Array(signature)));
};
const verifySignature = async (base64Signature, value, secret) => {
try {
const signatureBinStr = atob(base64Signature);
const signature = new Uint8Array(signatureBinStr.length);
for (let i = 0, len = signatureBinStr.length; i < len; i++) signature[i] = signatureBinStr.charCodeAt(i);
return await crypto.subtle.verify(algorithm, secret, signature, new TextEncoder().encode(value));
} catch {
return false;
}
};
const validCookieNameRegEx = /^[\w!#$%&'*.^`|~+-]+$/;
const relaxedCookieNameRegEx = /^[!#-:<>-[\]-~]+$/;
const validCookieValueRegEx = /^[ !#-:<-[\]-~]*$/;
const trimCookieWhitespace = (value) => {
let start = 0;
let end = value.length;
while (start < end) {
const charCode = value.charCodeAt(start);
if (charCode !== 32 && charCode !== 9) break;
start++;
}
while (end > start) {
const charCode = value.charCodeAt(end - 1);
if (charCode !== 32 && charCode !== 9) break;
end--;
}
return start === 0 && end === value.length ? value : value.slice(start, end);
};
const parse = (cookie, name) => {
if (name && cookie.indexOf(name) === -1) return {};
const pairs = cookie.split(";");
const parsedCookie = Object.create(null);
for (const pairStr of pairs) {
const valueStartPos = pairStr.indexOf("=");
if (valueStartPos === -1) continue;
const cookieName = trimCookieWhitespace(pairStr.substring(0, valueStartPos));
if (name && name !== cookieName || !relaxedCookieNameRegEx.test(cookieName) || cookieName in parsedCookie) continue;
let cookieValue = trimCookieWhitespace(pairStr.substring(valueStartPos + 1));
if (cookieValue.startsWith("\"") && cookieValue.endsWith("\"")) cookieValue = cookieValue.slice(1, -1);
if (validCookieValueRegEx.test(cookieValue)) {
parsedCookie[cookieName] = tryDecodeURIComponent(cookieValue);
if (name) break;
}
}
return parsedCookie;
};
const parseSigned = async (cookie, secret, name) => {
const parsedCookie = Object.create(null);
const secretKey = await getCryptoKey(secret);
for (const [key, value] of Object.entries(parse(cookie, name))) {
const signatureStartPos = value.lastIndexOf(".");
if (signatureStartPos < 0) continue;
const signedValue = value.substring(0, signatureStartPos);
const signature = value.substring(signatureStartPos + 1);
if (signature.length !== 44 || !signature.endsWith("=")) continue;
parsedCookie[key] = await verifySignature(signature, signedValue, secretKey) ? signedValue : false;
}
return parsedCookie;
};
const _serialize = (name, value, opt = {}) => {
if (!validCookieNameRegEx.test(name)) throw new Error("Invalid cookie name");
let cookie = `${name}=${value}`;
if (name.startsWith("__Secure-") && !opt.secure) throw new Error("__Secure- Cookie must have Secure attributes");
if (name.startsWith("__Host-")) {
if (!opt.secure) throw new Error("__Host- Cookie must have Secure attributes");
if (opt.path !== "/") throw new Error("__Host- Cookie must have Path attributes with \"/\"");
if (opt.domain) throw new Error("__Host- Cookie must not have Domain attributes");
}
for (const key of [
"domain",
"path",
"sameSite",
"priority"
]) if (opt[key] && /[;\r\n]/.test(opt[key])) throw new Error(`${key} must not contain ";", "\\r", or "\\n"`);
if (opt && typeof opt.maxAge === "number" && opt.maxAge >= 0) {
if (opt.maxAge > 3456e4) throw new Error("Cookies Max-Age SHOULD NOT be greater than 400 days (34560000 seconds) in duration.");
cookie += `; Max-Age=${opt.maxAge | 0}`;
}
if (opt.domain && opt.prefix !== "host") cookie += `; Domain=${opt.domain}`;
if (opt.path) cookie += `; Path=${opt.path}`;
if (opt.expires) {
if (opt.expires.getTime() - Date.now() > 3456e7) throw new Error("Cookies Expires SHOULD NOT be greater than 400 days (34560000 seconds) in the future.");
cookie += `; Expires=${opt.expires.toUTCString()}`;
}
if (opt.httpOnly) cookie += "; HttpOnly";
if (opt.secure) cookie += "; Secure";
if (opt.sameSite) cookie += `; SameSite=${opt.sameSite.charAt(0).toUpperCase() + opt.sameSite.slice(1)}`;
if (opt.priority) cookie += `; Priority=${opt.priority.charAt(0).toUpperCase() + opt.priority.slice(1)}`;
if (opt.partitioned) {
if (!opt.secure) throw new Error("Partitioned Cookie must have Secure attributes");
cookie += "; Partitioned";
}
return cookie;
};
const serialize = (name, value, opt) => {
value = encodeURIComponent(value);
return _serialize(name, value, opt);
};
const serializeSigned = async (name, value, secret, opt = {}) => {
const signature = await makeSignature(value, secret);
value = `${value}.${signature}`;
value = encodeURIComponent(value);
return _serialize(name, value, opt);
};
//#endregion
export { parse, parseSigned, serialize, serializeSigned };
@@ -0,0 +1,20 @@
/**
* @license lucide-react v0.469.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/
import createLucideIcon from '../createLucideIcon.js';
const FileSpreadsheet = createLucideIcon("FileSpreadsheet", [
["path", { d: "M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z", key: "1rqfz7" }],
["path", { d: "M14 2v4a2 2 0 0 0 2 2h4", key: "tnqrlb" }],
["path", { d: "M8 13h2", key: "yr2amv" }],
["path", { d: "M14 13h2", key: "un5t4a" }],
["path", { d: "M8 17h2", key: "2yhykz" }],
["path", { d: "M14 17h2", key: "10kma7" }]
]);
export { FileSpreadsheet as default };
//# sourceMappingURL=file-spreadsheet.js.map
@@ -0,0 +1,38 @@
{
"name": "ms",
"version": "2.1.3",
"description": "Tiny millisecond conversion utility",
"repository": "vercel/ms",
"main": "./index",
"files": [
"index.js"
],
"scripts": {
"precommit": "lint-staged",
"lint": "eslint lib/* bin/*",
"test": "mocha tests.js"
},
"eslintConfig": {
"extends": "eslint:recommended",
"env": {
"node": true,
"es6": true
}
},
"lint-staged": {
"*.js": [
"npm run lint",
"prettier --single-quote --write",
"git add"
]
},
"license": "MIT",
"devDependencies": {
"eslint": "4.18.2",
"expect.js": "0.3.1",
"husky": "0.14.3",
"lint-staged": "5.0.0",
"mocha": "4.0.1",
"prettier": "2.0.5"
}
}
@@ -0,0 +1 @@
{"version":3,"names":[],"sources":["../../src/config/cache-contexts.ts"],"sourcesContent":["import type { ConfigContext } from \"./config-chain.ts\";\nimport type {\n CallerMetadata,\n TargetsListOrObject,\n} from \"./validation/options.ts\";\n\nexport type { ConfigContext as FullConfig };\n\nexport type FullPreset = {\n targets: TargetsListOrObject;\n} & ConfigContext;\nexport type FullPlugin = {\n assumptions: Record<string, boolean>;\n} & FullPreset;\n\n// Context not including filename since it is used in places that cannot\n// process 'ignore'/'only' and other filename-based logic.\nexport type SimpleConfig = {\n envName: string;\n caller: CallerMetadata | undefined;\n};\nexport type SimplePreset = {\n targets: TargetsListOrObject;\n} & SimpleConfig;\nexport type SimplePlugin = {\n assumptions: Record<string, boolean>;\n} & SimplePreset;\n"],"mappings":"","ignoreList":[]}
@@ -0,0 +1,200 @@
/*
MIT License http://www.opensource.org/licenses/mit-license.php
Author Tobias Koppers @sokra
*/
"use strict";
const forEachBail = require("./forEachBail");
/** @typedef {import("./Resolver")} Resolver */
/** @typedef {import("./Resolver").JsonObject} JsonObject */
/** @typedef {import("./Resolver").JsonValue} JsonValue */
/** @typedef {import("./Resolver").ResolveContext} ResolveContext */
/** @typedef {import("./Resolver").ResolveRequest} ResolveRequest */
/**
* @typedef {object} DescriptionFileInfo
* @property {JsonObject=} content content
* @property {string} path path
* @property {string} directory directory
*/
/**
* @callback ErrorFirstCallback
* @param {Error | null=} error
* @param {DescriptionFileInfo=} result
*/
/**
* @typedef {object} Result
* @property {string} path path to description file
* @property {string} directory directory of description file
* @property {JsonObject} content content of description file
*/
/**
* @param {string} directory directory
* @returns {string | null} parent directory or null
*/
function cdUp(directory) {
if (directory === "/") return null;
const i = directory.lastIndexOf("/");
const j = directory.lastIndexOf("\\");
const path = i < 0 ? j : j < 0 ? i : i < j ? j : i;
if (path < 0) return null;
return directory.slice(0, path || 1);
}
/**
* @param {Resolver} resolver resolver
* @param {string} directory directory
* @param {string[]} filenames filenames
* @param {DescriptionFileInfo | undefined} oldInfo oldInfo
* @param {ResolveContext} resolveContext resolveContext
* @param {ErrorFirstCallback} callback callback
*/
function loadDescriptionFile(
resolver,
directory,
filenames,
oldInfo,
resolveContext,
callback,
) {
(function findDescriptionFile() {
if (oldInfo && oldInfo.directory === directory) {
// We already have info for this directory and can reuse it
return callback(null, oldInfo);
}
forEachBail(
filenames,
/**
* @param {string} filename filename
* @param {(err?: null | Error, result?: null | Result) => void} callback callback
* @returns {void}
*/
(filename, callback) => {
const descriptionFilePath = resolver.join(directory, filename);
/**
* @param {(null | Error)=} err error
* @param {JsonObject=} resolvedContent content
* @returns {void}
*/
function onJson(err, resolvedContent) {
if (err) {
if (resolveContext.log) {
resolveContext.log(
`${descriptionFilePath} (directory description file): ${err}`,
);
} else {
err.message = `${descriptionFilePath} (directory description file): ${err}`;
}
return callback(err);
}
callback(null, {
content: /** @type {JsonObject} */ (resolvedContent),
directory,
path: descriptionFilePath,
});
}
if (resolver.fileSystem.readJson) {
resolver.fileSystem.readJson(descriptionFilePath, (err, content) => {
if (err) {
if (
typeof (/** @type {NodeJS.ErrnoException} */ (err).code) !==
"undefined"
) {
if (resolveContext.missingDependencies) {
resolveContext.missingDependencies.add(descriptionFilePath);
}
return callback();
}
if (resolveContext.fileDependencies) {
resolveContext.fileDependencies.add(descriptionFilePath);
}
return onJson(err);
}
if (resolveContext.fileDependencies) {
resolveContext.fileDependencies.add(descriptionFilePath);
}
onJson(null, content);
});
} else {
resolver.fileSystem.readFile(descriptionFilePath, (err, content) => {
if (err) {
if (resolveContext.missingDependencies) {
resolveContext.missingDependencies.add(descriptionFilePath);
}
return callback();
}
if (resolveContext.fileDependencies) {
resolveContext.fileDependencies.add(descriptionFilePath);
}
/** @type {JsonObject | undefined} */
let json;
if (content) {
try {
json = JSON.parse(content.toString());
} catch (/** @type {unknown} */ err_) {
return onJson(/** @type {Error} */ (err_));
}
} else {
return onJson(new Error("No content in file"));
}
onJson(null, json);
});
}
},
/**
* @param {(null | Error)=} err error
* @param {(null | Result)=} result result
* @returns {void}
*/
(err, result) => {
if (err) return callback(err);
if (result) return callback(null, result);
const dir = cdUp(directory);
if (!dir) {
return callback();
}
directory = dir;
return findDescriptionFile();
},
);
})();
}
/**
* @param {JsonObject} content content
* @param {string | string[]} field field
* @returns {JsonValue | undefined} field data
*/
function getField(content, field) {
if (!content) return undefined;
if (Array.isArray(field)) {
/** @type {JsonValue} */
let current = content;
for (let j = 0; j < field.length; j++) {
if (current === null || typeof current !== "object") {
current = null;
break;
}
current = /** @type {JsonValue} */ (
/** @type {JsonObject} */
(current)[field[j]]
);
}
return current;
}
return content[field];
}
module.exports.cdUp = cdUp;
module.exports.getField = getField;
module.exports.loadDescriptionFile = loadDescriptionFile;
@@ -0,0 +1 @@
module.exports={C:{"60":0.00486,"102":0.00972,"105":0.00972,"115":0.23824,"120":0.15072,"121":0.32575,"128":0.05348,"140":0.54454,"149":0.01459,"150":0.16045,"151":0.00972,"152":0.04376,"153":0.08265,"154":0.15072,"155":0.61747,"156":0.30144,_:"2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 103 104 106 107 108 109 110 111 112 113 114 116 117 118 119 122 123 124 125 126 127 129 130 131 132 133 134 135 136 137 138 139 141 142 143 144 145 146 147 148 157 158 159 160 3.5 3.6"},D:{"72":0.00486,"76":0.00486,"79":0.00486,"83":0.01459,"86":0.03403,"87":0.02431,"92":0.11669,"95":0.00486,"98":0.17989,"103":0.05348,"104":0.06321,"105":0.07293,"106":0.04862,"107":0.04376,"108":0.02431,"109":0.1021,"110":0.07779,"111":0.06321,"112":0.03403,"113":0.00972,"116":0.08265,"117":0.04376,"118":1.38081,"119":0.27227,"120":0.42299,"124":0.06321,"125":0.00486,"128":0.02431,"130":0.00486,"131":0.18962,"132":0.02917,"133":0.39382,"134":0.2431,"135":0.30144,"136":0.35006,"137":0.32089,"138":0.27713,"139":0.26255,"140":0.53482,"141":0.31603,"142":0.91892,"143":0.10696,"144":0.72444,"145":0.01459,"146":0.141,"147":0.01459,"148":0.15072,"149":0.14586,"150":1.15229,"151":14.6249,"152":6.58315,"153":5.07593,"154":0.73416,"155":0.00486,_:"4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 73 74 75 77 78 80 81 84 85 88 89 90 91 93 94 96 97 99 100 101 102 114 115 121 122 123 126 127 129 156 157"},F:{"46":0.02431,"53":0.00486,"133":0.02431,"134":0.0389,"135":0.17989,_:"9 11 12 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 47 48 49 50 51 52 54 55 56 57 58 60 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 131 132 9.5-9.6 10.0-10.1 10.5 10.6 11.1 11.5 11.6 12.1"},B:{"100":0.01459,"109":0.01459,"119":0.15558,"120":0.16531,"121":0.00486,"122":0.00486,"137":0.00972,"141":0.00486,"143":0.00486,"145":0.00972,"148":0.00972,"149":0.07293,"150":0.04376,"151":0.18476,"152":2.06635,"153":1.75032,"154":0.26741,_:"12 13 14 15 16 17 18 79 80 81 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 101 102 103 104 105 106 107 108 110 111 112 113 114 115 116 117 118 123 124 125 126 127 128 129 130 131 132 133 134 135 136 138 139 140 142 144 146 147"},E:{"27":0.19934,_:"4 5 6 7 8 9 10 11 12 13 14 15 3.1 3.2 5.1 6.1 7.1 9.1 10.1 11.1 12.1 13.1 14.1 15.1 15.2-15.3 15.4 15.5 16.0 16.1 16.2 16.3 16.4 16.5 17.0 17.2 17.3 17.4 18.0 18.1 18.2 18.3 18.4 18.5-18.7 26.0 26.1 26.2 27.1 27.2 TP","15.6":0.00486,"16.6":0.3452,"17.1":0.00486,"17.5":0.00972,"17.6":0.00972,"26.3":0.01459,"26.4":0.00972,"26.5":0.00486,"26.6":0.35006},G:{"8":0,"3.2":0,"4.0-4.1":0,"4.2-4.3":0.00065,"5.0-5.1":0.00065,"6.0-6.1":0,"7.0-7.1":0.0013,"8.1-8.4":0,"9.0-9.2":0,"9.3":0,"10.0-10.2":0,"10.3":0.00649,"11.0-11.2":0.00065,"11.3-11.4":0.0013,"12.0-12.1":0,"12.2-12.5":0.01689,"13.0-13.1":0,"13.2":0.00325,"13.3":0,"13.4-13.7":0.00065,"14.0-14.4":0.0026,"14.5-14.8":0.0039,"15.0-15.1":0.0039,"15.2-15.3":0.0026,"15.4":0.00325,"15.5":0.0039,"15.6-15.8":0.08443,"16.0":0.00649,"16.1":0.01169,"16.2":0.00649,"16.3":0.01429,"16.4":0.00325,"16.5":0.0052,"16.6-16.7":0.11755,"17.0":0.00455,"17.1":0.00649,"17.2":0.00649,"17.3":0.00974,"17.4":0.01364,"17.5":0.02663,"17.6-17.7":0.06884,"18.0":0.01429,"18.1":0.02858,"18.2":0.03897,"18.3":0.06754,"18.4":0.04221,"18.5-18.7":0.8722,"26.0":0.04221,"26.1":0.04286,"26.2":0.1117,"26.3":0.1208,"26.4":0.08832,"26.5":0.59164,"26.6":3.65052,"27.0":0.27991,"27.1":0,"27.2":0.00714},P:{"24":0.00905,"26":0.00905,"27":0.06335,"28":0.0724,"29":0.0181,"30":1.29413,_:"4 20 21 22 23 25 5.0-5.4 6.2-6.4 8.2 9.2 10.1 11.1-11.2 12.0 13.0 15.0 16.0 17.0 18.0","7.2-7.4":0.0181,"14.0":0.00905,"19.0":0.09955},I:{"0":0.02054,"3":0,"4":0,"2.1":0,"2.2":0,"2.3":0,"4.1":0,"4.2-4.3":0,"4.4":0,"4.4.3-4.4.4":0.00001},K:{"0":1.0687,_:"10 11 12 11.1 11.5 12.1"},A:{_:"6 7 8 9 10 11 5.5"},S:{_:"2.5 3.0-3.1"},J:{_:"7 10"},N:{_:"10 11"},L:{"0":42.79506},R:{_:"0"},M:{"0":0.97622},Q:{_:"14.9"},O:{"0":0.08221},H:{all:0}};
@@ -0,0 +1,27 @@
extends: eslint:recommended
env:
node: true
browser: true
rules:
block-scoped-var: 2
complexity: [2, 15]
curly: [2, multi-or-nest, consistent]
dot-location: [2, property]
dot-notation: 2
indent: [2, 2, SwitchCase: 1]
linebreak-style: [2, unix]
new-cap: 2
no-console: [2, allow: [warn, error]]
no-else-return: 2
no-eq-null: 2
no-fallthrough: 2
no-invalid-this: 2
no-return-assign: 2
no-shadow: 1
no-trailing-spaces: 2
no-use-before-define: [2, nofunc]
quotes: [2, single, avoid-escape]
semi: [2, always]
strict: [2, global]
valid-jsdoc: [2, requireReturn: false]
no-control-regex: 0
@@ -0,0 +1,171 @@
import { f as createRule, g as import_ast_utils } from "../utils.js";
var comma_style_default = createRule({
name: "comma-style",
meta: {
type: "layout",
docs: { description: "Enforce consistent comma style" },
fixable: "code",
schema: [{
type: "string",
enum: ["first", "last"]
}, {
type: "object",
properties: { exceptions: {
type: "object",
additionalProperties: { type: "boolean" }
} },
additionalProperties: false
}],
defaultOptions: ["last"],
messages: {
unexpectedLineBeforeAndAfterComma: "Bad line breaking before and after ','.",
expectedCommaFirst: "',' should be placed first.",
expectedCommaLast: "',' should be placed last."
}
},
create(context, [style, options]) {
const sourceCode = context.sourceCode;
const exceptions = options?.exceptions ?? {};
function getReplacedText(styleType, text) {
switch (styleType) {
case "between": return `,${text.replace(import_ast_utils.LINEBREAK_MATCHER, "")}`;
case "first": return `${text},`;
case "last": return `,${text}`;
default: return "";
}
}
function getFixerFunction(styleType, tokenBeforeComma, commaToken, tokenAfterComma) {
const text = sourceCode.text.slice(tokenBeforeComma.range[1], commaToken.range[0]) + sourceCode.text.slice(commaToken.range[1], tokenAfterComma.range[0]);
const range = [tokenBeforeComma.range[1], tokenAfterComma.range[0]];
return function(fixer) {
return fixer.replaceTextRange(range, getReplacedText(styleType, text));
};
}
function validateCommaItemSpacing(tokenBeforeComma, commaToken, tokenAfterComma) {
if ((0, import_ast_utils.isTokenOnSameLine)(commaToken, tokenAfterComma) && (0, import_ast_utils.isTokenOnSameLine)(tokenBeforeComma, commaToken)) {} else if (!(0, import_ast_utils.isTokenOnSameLine)(commaToken, tokenAfterComma) && !(0, import_ast_utils.isTokenOnSameLine)(tokenBeforeComma, commaToken)) {
const comment = sourceCode.getCommentsAfter(commaToken)[0];
const styleType = comment && comment.type === "Block" && (0, import_ast_utils.isTokenOnSameLine)(commaToken, comment) ? style : "between";
context.report({
node: commaToken,
messageId: "unexpectedLineBeforeAndAfterComma",
fix: getFixerFunction(styleType, tokenBeforeComma, commaToken, tokenAfterComma)
});
} else if (style === "first" && !(0, import_ast_utils.isTokenOnSameLine)(commaToken, tokenAfterComma)) context.report({
node: commaToken,
messageId: "expectedCommaFirst",
fix: getFixerFunction(style, tokenBeforeComma, commaToken, tokenAfterComma)
});
else if (style === "last" && (0, import_ast_utils.isTokenOnSameLine)(commaToken, tokenAfterComma)) context.report({
node: commaToken,
messageId: "expectedCommaLast",
fix: getFixerFunction(style, tokenBeforeComma, commaToken, tokenAfterComma)
});
}
function extractCommaTokens(node, items) {
if (items.length === 0) return [];
const definedItems = items.filter((item) => Boolean(item));
if (definedItems.length === 0) return sourceCode.getTokens(node).filter(import_ast_utils.isCommaToken);
const commaTokens = [];
const firstItem = definedItems[0];
let prevToken = sourceCode.getTokenBefore(firstItem);
while (prevToken && node.range[0] <= prevToken.range[0]) {
if ((0, import_ast_utils.isCommaToken)(prevToken)) commaTokens.unshift(prevToken);
else if ((0, import_ast_utils.isNotOpeningParenToken)(prevToken)) break;
prevToken = sourceCode.getTokenBefore(prevToken);
}
let prevItem = null;
for (const item of definedItems) {
if (prevItem) commaTokens.push(...sourceCode.getTokensBetween(prevItem, item).filter(import_ast_utils.isCommaToken));
const tokenLastItem = sourceCode.getLastToken(item);
if (tokenLastItem && (0, import_ast_utils.isCommaToken)(tokenLastItem)) commaTokens.push(tokenLastItem);
prevItem = item;
}
let nextToken = sourceCode.getTokenAfter(prevItem);
while (nextToken && nextToken.range[1] <= node.range[1]) {
if ((0, import_ast_utils.isCommaToken)(nextToken)) commaTokens.push(nextToken);
else if ((0, import_ast_utils.isNotClosingParenToken)(nextToken)) break;
nextToken = sourceCode.getTokenAfter(nextToken);
}
return commaTokens;
}
function validateComma(node, items) {
extractCommaTokens(node, items).forEach((commaToken) => {
const tokenBeforeComma = sourceCode.getTokenBefore(commaToken);
const tokenAfterComma = sourceCode.getTokenAfter(commaToken);
if ((0, import_ast_utils.isOpeningBracketToken)(tokenBeforeComma)) return;
if ((0, import_ast_utils.isCommaToken)(tokenBeforeComma) && (0, import_ast_utils.isOpeningBracketToken)(sourceCode.getTokenBefore(tokenBeforeComma, import_ast_utils.isNotCommaToken))) return;
if ((0, import_ast_utils.isCommaToken)(tokenAfterComma) && !(0, import_ast_utils.isTokenOnSameLine)(commaToken, tokenAfterComma)) return;
validateCommaItemSpacing(tokenBeforeComma, commaToken, tokenAfterComma);
});
}
const nodes = {};
if (!exceptions.VariableDeclaration) nodes.VariableDeclaration = (node) => validateComma(node, node.declarations);
if (!exceptions.ObjectExpression) nodes.ObjectExpression = validateObjectProperties;
if (!exceptions.ObjectPattern) nodes.ObjectPattern = validateObjectProperties;
if (!exceptions.ArrayExpression) nodes.ArrayExpression = validateArrayElements;
if (!exceptions.ArrayPattern) nodes.ArrayPattern = validateArrayElements;
if (!exceptions.FunctionDeclaration) nodes.FunctionDeclaration = validateFunctionParams;
if (!exceptions.FunctionExpression) nodes.FunctionExpression = validateFunctionParams;
if (!exceptions.ArrowFunctionExpression) nodes.ArrowFunctionExpression = validateFunctionParams;
if (!exceptions.CallExpression) nodes.CallExpression = validateCallArguments;
if (!exceptions.ImportDeclaration) nodes.ImportDeclaration = (node) => {
validateComma(node, node.specifiers);
visitImportAttributes(node);
};
if (!exceptions.NewExpression) nodes.NewExpression = validateCallArguments;
if (!exceptions.ExportAllDeclaration) nodes.ExportAllDeclaration = visitImportAttributes;
if (!exceptions.ExportNamedDeclaration) nodes.ExportNamedDeclaration = (node) => {
validateComma(node, node.specifiers);
visitImportAttributes(node);
};
if (!exceptions.ImportExpression) nodes.ImportExpression = (node) => {
validateComma(node, [node.source, node.options ?? null]);
};
if (!exceptions.SequenceExpression) nodes.SequenceExpression = (node) => validateComma(node, node.expressions);
if (!exceptions.ClassDeclaration) nodes.ClassDeclaration = visitClassImplements;
if (!exceptions.ClassExpression) nodes.ClassExpression = visitClassImplements;
if (!exceptions.TSDeclareFunction) nodes.TSDeclareFunction = validateFunctionParams;
if (!exceptions.TSFunctionType) nodes.TSFunctionType = validateFunctionParams;
if (!exceptions.TSConstructorType) nodes.TSConstructorType = validateFunctionParams;
if (!exceptions.TSEmptyBodyFunctionExpression) nodes.TSEmptyBodyFunctionExpression = validateFunctionParams;
if (!exceptions.TSMethodSignature) nodes.TSMethodSignature = validateFunctionParams;
if (!exceptions.TSCallSignatureDeclaration) nodes.TSCallSignatureDeclaration = validateFunctionParams;
if (!exceptions.TSConstructSignatureDeclaration) nodes.TSConstructSignatureDeclaration = validateFunctionParams;
if (!exceptions.TSTypeParameterDeclaration) nodes.TSTypeParameterDeclaration = validateTypeParams;
if (!exceptions.TSTypeParameterInstantiation) nodes.TSTypeParameterInstantiation = validateTypeParams;
if (!exceptions.TSEnumBody) nodes.TSEnumBody = visitMembers;
if (!exceptions.TSTypeLiteral) nodes.TSTypeLiteral = visitMembers;
if (!exceptions.TSIndexSignature) nodes.TSIndexSignature = (node) => validateComma(node, node.parameters);
if (!exceptions.TSInterfaceDeclaration) nodes.TSInterfaceDeclaration = (node) => validateComma(node, node.extends);
if (!exceptions.TSInterfaceBody) nodes.TSInterfaceBody = (node) => validateComma(node, node.body);
if (!exceptions.TSTupleType) nodes.TSTupleType = (node) => validateComma(node, node.elementTypes);
return nodes;
function validateObjectProperties(node) {
validateComma(node, node.properties);
}
function validateArrayElements(node) {
validateComma(node, node.elements);
}
function validateFunctionParams(node) {
validateComma(node, node.params);
}
function validateCallArguments(node) {
validateComma(node, node.arguments);
}
function visitImportAttributes(node) {
if (!node.attributes) return;
validateComma(node, node.attributes);
}
function visitClassImplements(node) {
if (!node.implements) return;
validateComma(node, node.implements);
}
function visitMembers(node) {
validateComma(node, node.members);
}
function validateTypeParams(node) {
validateComma(node, node.params);
}
}
});
export { comma_style_default as t };
@@ -0,0 +1,298 @@
/*
Copyright 2012-2015, Yahoo Inc.
Copyrights licensed under the New BSD License. See the accompanying LICENSE
file for terms.
*/
'use strict';
const { ReportBase } = require('istanbul-lib-report');
const NAME_COL = 4;
const PCT_COLS = 7;
const MISSING_COL = 17;
const TAB_SIZE = 1;
const DELIM = ' | ';
function padding(num, ch) {
let str = '';
let i;
ch = ch || ' ';
for (i = 0; i < num; i += 1) {
str += ch;
}
return str;
}
function fill(str, width, right, tabs) {
tabs = tabs || 0;
str = String(str);
const leadingSpaces = tabs * TAB_SIZE;
const remaining = width - leadingSpaces;
const leader = padding(leadingSpaces);
let fmtStr = '';
if (remaining > 0) {
const strlen = str.length;
let fillStr;
if (remaining >= strlen) {
fillStr = padding(remaining - strlen);
} else {
fillStr = '...';
const length = remaining - fillStr.length;
str = str.substring(strlen - length);
right = true;
}
fmtStr = right ? fillStr + str : str + fillStr;
}
return leader + fmtStr;
}
function formatName(name, maxCols, level) {
return fill(name, maxCols, false, level);
}
function formatPct(pct, width) {
return fill(pct, width || PCT_COLS, true, 0);
}
function nodeMissing(node) {
if (node.isSummary()) {
return '';
}
const metrics = node.getCoverageSummary();
const isEmpty = metrics.isEmpty();
const lines = isEmpty ? 0 : metrics.lines.pct;
let coveredLines;
const fileCoverage = node.getFileCoverage();
if (lines === 100) {
const branches = fileCoverage.getBranchCoverageByLine();
coveredLines = Object.entries(branches).map(([key, { coverage }]) => [
key,
coverage === 100
]);
} else {
coveredLines = Object.entries(fileCoverage.getLineCoverage());
}
let newRange = true;
const ranges = coveredLines
.reduce((acum, [line, hit]) => {
if (hit) newRange = true;
else {
line = parseInt(line);
if (newRange) {
acum.push([line]);
newRange = false;
} else acum[acum.length - 1][1] = line;
}
return acum;
}, [])
.map(range => {
const { length } = range;
if (length === 1) return range[0];
return `${range[0]}-${range[1]}`;
});
return [].concat(...ranges).join(',');
}
function nodeName(node) {
return node.getRelativeName() || 'All files';
}
function depthFor(node) {
let ret = 0;
node = node.getParent();
while (node) {
ret += 1;
node = node.getParent();
}
return ret;
}
function nullDepthFor() {
return 0;
}
function findWidth(node, context, nodeExtractor, depthFor = nullDepthFor) {
let last = 0;
function compareWidth(node) {
last = Math.max(
last,
TAB_SIZE * depthFor(node) + nodeExtractor(node).length
);
}
const visitor = {
onSummary: compareWidth,
onDetail: compareWidth
};
node.visit(context.getVisitor(visitor));
return last;
}
function makeLine(nameWidth, missingWidth) {
const name = padding(nameWidth, '-');
const pct = padding(PCT_COLS, '-');
const elements = [];
elements.push(name);
elements.push(pct);
elements.push(padding(PCT_COLS + 1, '-'));
elements.push(pct);
elements.push(pct);
elements.push(padding(missingWidth, '-'));
return elements.join(DELIM.replace(/ /g, '-')) + '-';
}
function tableHeader(maxNameCols, missingWidth) {
const elements = [];
elements.push(formatName('File', maxNameCols, 0));
elements.push(formatPct('% Stmts'));
elements.push(formatPct('% Branch', PCT_COLS + 1));
elements.push(formatPct('% Funcs'));
elements.push(formatPct('% Lines'));
elements.push(formatName('Uncovered Line #s', missingWidth));
return elements.join(DELIM) + ' ';
}
function isFull(metrics) {
return (
metrics.statements.pct === 100 &&
metrics.branches.pct === 100 &&
metrics.functions.pct === 100 &&
metrics.lines.pct === 100
);
}
function tableRow(
node,
context,
colorizer,
maxNameCols,
level,
skipEmpty,
skipFull,
missingWidth
) {
const name = nodeName(node);
const metrics = node.getCoverageSummary();
const isEmpty = metrics.isEmpty();
if (skipEmpty && isEmpty) {
return '';
}
if (skipFull && isFull(metrics)) {
return '';
}
const mm = {
statements: isEmpty ? 0 : metrics.statements.pct,
branches: isEmpty ? 0 : metrics.branches.pct,
functions: isEmpty ? 0 : metrics.functions.pct,
lines: isEmpty ? 0 : metrics.lines.pct
};
const colorize = isEmpty
? function(str) {
return str;
}
: function(str, key) {
return colorizer(str, context.classForPercent(key, mm[key]));
};
const elements = [];
elements.push(colorize(formatName(name, maxNameCols, level), 'statements'));
elements.push(colorize(formatPct(mm.statements), 'statements'));
elements.push(colorize(formatPct(mm.branches, PCT_COLS + 1), 'branches'));
elements.push(colorize(formatPct(mm.functions), 'functions'));
elements.push(colorize(formatPct(mm.lines), 'lines'));
elements.push(
colorizer(
formatName(nodeMissing(node), missingWidth),
mm.lines === 100 ? 'medium' : 'low'
)
);
return elements.join(DELIM) + ' ';
}
class TextReport extends ReportBase {
constructor(opts) {
super(opts);
opts = opts || {};
const { maxCols } = opts;
this.file = opts.file || null;
this.maxCols = maxCols != null ? maxCols : process.stdout.columns || 80;
this.cw = null;
this.skipEmpty = opts.skipEmpty;
this.skipFull = opts.skipFull;
}
onStart(root, context) {
this.cw = context.writer.writeFile(this.file);
this.nameWidth = Math.max(
NAME_COL,
findWidth(root, context, nodeName, depthFor)
);
this.missingWidth = Math.max(
MISSING_COL,
findWidth(root, context, nodeMissing)
);
if (this.maxCols > 0) {
const pct_cols = DELIM.length + 4 * (PCT_COLS + DELIM.length) + 2;
const maxRemaining = this.maxCols - (pct_cols + MISSING_COL);
if (this.nameWidth > maxRemaining) {
this.nameWidth = maxRemaining;
this.missingWidth = MISSING_COL;
} else if (this.nameWidth < maxRemaining) {
const maxRemaining = this.maxCols - (this.nameWidth + pct_cols);
if (this.missingWidth > maxRemaining) {
this.missingWidth = maxRemaining;
}
}
}
const line = makeLine(this.nameWidth, this.missingWidth);
this.cw.println(line);
this.cw.println(tableHeader(this.nameWidth, this.missingWidth));
this.cw.println(line);
}
onSummary(node, context) {
const nodeDepth = depthFor(node);
const row = tableRow(
node,
context,
this.cw.colorize.bind(this.cw),
this.nameWidth,
nodeDepth,
this.skipEmpty,
this.skipFull,
this.missingWidth
);
if (row) {
this.cw.println(row);
}
}
onDetail(node, context) {
return this.onSummary(node, context);
}
onEnd() {
this.cw.println(makeLine(this.nameWidth, this.missingWidth));
this.cw.close();
}
}
module.exports = TextReport;
@@ -0,0 +1,20 @@
/**
* This should only ever be modified on the client otherwise it'll
* persist through server requests. If we need instanced states we
* could lazy-init via root.
*/
const globalProjectionState = {
/**
* Global flag as to whether the tree has animated since the last time
* we resized the window
*/
hasAnimatedSinceResize: true,
/**
* We set this to true once, on the first update. Any nodes added to the tree beyond that
* update will be given a `data-projection-id` attribute.
*/
hasEverUpdated: false,
};
export { globalProjectionState };
//# sourceMappingURL=state.mjs.map
@@ -0,0 +1,9 @@
import { AlgorithmTypes } from "../../utils/jwt/jwa.js";
import { JwtVariables, decode, jwt, sign, verify, verifyWithJwks } from "./jwt.js";
//#region src/middleware/jwt/index.d.ts
declare module '../..' {
interface ContextVariableMap extends JwtVariables<unknown> {}
}
//#endregion
export { AlgorithmTypes, type JwtVariables, decode, jwt, sign, verify, verifyWithJwks };
export {};
@@ -0,0 +1 @@
module.exports={A:{A:{"2":"_E"},B:{"1":"_2D","16":"C"},C:{"1":"_PI","2":"_LP"},D:{"1":"_6J","2":"_aD"},E:{"1":"_A _5I _oP","2":"_CI","129":"C"},F:{"1":"_XO","2":"_RS"},G:{"1":"_CP _mC","2":"_3","129":"oD"},H:{"2":"1D"},I:{"1":"I","2":"_G"},J:{"2":"_B"},K:{"1":"H","2":"_D"},L:{"1":"I"},M:{"1":"YC"},N:{"2":"_A"},O:{"1":"bC"},P:{"1":"_F"},Q:{"1":"JE"},R:{"1":"KE"},S:{"1":"_C"}},B:6,C:"ES6 Template Literals (Template Strings)",D:true};
@@ -0,0 +1,21 @@
/**
* @license lucide-react v0.469.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/
import createLucideIcon from '../createLucideIcon.js';
const Flame = createLucideIcon("Flame", [
[
"path",
{
d: "M8.5 14.5A2.5 2.5 0 0 0 11 12c0-1.38-.5-2-1-3-1.072-2.143-.224-4.054 2-6 .5 2.5 2 4.9 4 6.5 2 1.6 3 3.5 3 5.5a7 7 0 1 1-14 0c0-1.153.433-2.294 1-3a2.5 2.5 0 0 0 2.5 2.5z",
key: "96xj49"
}
]
]);
export { Flame as default };
//# sourceMappingURL=flame.js.map
@@ -0,0 +1,33 @@
https://github.com/vallezw/sonner/assets/50796600/59b95cb7-9068-4f3e-8469-0b35d9de5cf0
[Sonner](https://sonner.emilkowal.ski/) is an opinionated toast component for React. You can read more about why and how it was built [here](https://emilkowal.ski/ui/building-a-toast-component).
## Usage
To start using the library, install it in your project:
```bash
npm install sonner
```
Add `<Toaster />` to your app, it will be the place where all your toasts will be rendered.
After that you can use `toast()` from anywhere in your app.
```jsx
import { Toaster, toast } from 'sonner';
// ...
function App() {
return (
<div>
<Toaster />
<button onClick={() => toast('My first toast')}>Give me a toast</button>
</div>
);
}
```
## Documentation
Find the full API reference in the [documentation](https://sonner.emilkowal.ski/getting-started).
@@ -0,0 +1,244 @@
'use strict'
const assert = require('node:assert')
const { AsyncResource } = require('node:async_hooks')
const { Readable } = require('./readable')
const { InvalidArgumentError, RequestAbortedError } = require('../core/errors')
const util = require('../core/util')
function noop () {}
class RequestHandler extends AsyncResource {
constructor (opts, callback) {
if (!opts || typeof opts !== 'object') {
throw new InvalidArgumentError('invalid opts')
}
const { signal, method, opaque, body, onInfo, responseHeaders, highWaterMark } = opts
try {
if (typeof callback !== 'function') {
throw new InvalidArgumentError('invalid callback')
}
if (highWaterMark != null && (!Number.isFinite(highWaterMark) || highWaterMark < 0)) {
throw new InvalidArgumentError('invalid highWaterMark')
}
if (signal && typeof signal.on !== 'function' && typeof signal.addEventListener !== 'function') {
throw new InvalidArgumentError('signal must be an EventEmitter or EventTarget')
}
if (method === 'CONNECT') {
throw new InvalidArgumentError('invalid method')
}
if (onInfo && typeof onInfo !== 'function') {
throw new InvalidArgumentError('invalid onInfo callback')
}
super('UNDICI_REQUEST')
} catch (err) {
if (util.isStream(body)) {
util.destroy(body.on('error', noop), err)
}
throw err
}
this.method = method
this.responseHeaders = responseHeaders || null
this.opaque = opaque || null
this.callback = callback
this.res = null
this.abort = null
this.body = body
this.trailers = {}
this.context = null
this.controller = null
this.onInfo = onInfo || null
this.highWaterMark = highWaterMark
this.reason = null
this.removeAbortListener = null
if (signal?.aborted) {
this.reason = signal.reason ?? new RequestAbortedError()
} else if (signal) {
this.removeAbortListener = util.addAbortListener(signal, () => {
this.reason = signal.reason ?? new RequestAbortedError()
if (this.res) {
// Null the reference before destroying, mirroring onResponseError, so
// that chunks flushed after the abort (e.g. an async decompressor
// flush) are dropped by the `!this.res` guard in onResponseData
// instead of being pushed into the torn-down stream.
const res = this.res
this.res = null
util.destroy(res.on('error', noop), this.reason)
} else if (this.abort) {
this.abort(this.reason)
}
})
}
}
onRequestStart (controller, context) {
if (this.reason) {
controller.abort(this.reason)
return
}
assert(this.callback)
this.controller = controller
this.abort = (reason) => controller.abort(reason)
this.context = context
}
onResponseStart (controller, statusCode, headers, statusText) {
const { callback, opaque, context, responseHeaders, highWaterMark } = this
const rawHeaders = controller?.rawHeaders
const responseHeaderData = responseHeaders === 'raw'
? util.parseRawHeaders(rawHeaders)
: headers
if (statusCode < 200) {
if (this.onInfo) {
this.onInfo({ statusCode, headers: responseHeaderData })
}
return
}
const parsedHeaders = headers
const contentType = parsedHeaders?.['content-type']
const contentLength = parsedHeaders?.['content-length']
const res = new Readable({
resume: () => controller.resume(),
abort: (reason) => controller.abort(reason),
contentType,
contentLength: this.method !== 'HEAD' && contentLength
? Number(contentLength)
: null,
highWaterMark
})
if (this.removeAbortListener) {
res.on('close', this.removeAbortListener)
this.removeAbortListener = null
}
this.callback = null
this.res = res
if (callback !== null) {
try {
this.runInAsyncScope(callback, null, null, {
statusCode,
statusText,
headers: responseHeaderData,
trailers: this.trailers,
opaque,
body: res,
context
})
} catch (err) {
// If the callback throws synchronously, we need to handle it
// Remove reference to res to allow res being garbage collected
this.res = null
// Destroy the response stream
util.destroy(res.on('error', noop), err)
// Use queueMicrotask to re-throw the error so it reaches uncaughtException
queueMicrotask(() => {
throw err
})
}
}
}
onResponseData (controller, chunk) {
if (!this.res) {
return
}
if (this.res.push(chunk) === false) {
controller.pause()
}
}
onResponseEnd (_controller, trailers) {
if (trailers && typeof trailers === 'object') {
for (const key of Object.keys(trailers)) {
if (key === '__proto__') {
Object.defineProperty(this.trailers, key, {
value: trailers[key],
enumerable: true,
configurable: true,
writable: true
})
} else {
this.trailers[key] = trailers[key]
}
}
}
this.res?.push(null)
}
onResponseError (_controller, err) {
const { res, callback, body, opaque } = this
if (callback) {
// TODO: Does this need queueMicrotask?
this.callback = null
queueMicrotask(() => {
this.runInAsyncScope(callback, null, err, { opaque })
})
}
if (res) {
this.res = null
// Ensure all queued handlers are invoked before destroying res.
queueMicrotask(() => {
util.destroy(res.on('error', noop), err)
})
}
if (body) {
this.body = null
if (util.isStream(body)) {
body.on('error', noop)
util.destroy(body, err)
}
}
if (this.removeAbortListener) {
this.removeAbortListener()
this.removeAbortListener = null
}
}
}
function request (opts, callback) {
if (callback === undefined) {
return new Promise((resolve, reject) => {
request.call(this, opts, (err, data) => {
return err ? reject(err) : resolve(data)
})
})
}
try {
const handler = new RequestHandler(opts, callback)
this.dispatch(opts, handler)
} catch (err) {
if (typeof callback !== 'function') {
throw err
}
const opaque = opts?.opaque
queueMicrotask(() => callback(err, { opaque }))
}
}
module.exports = request
module.exports.RequestHandler = RequestHandler
@@ -0,0 +1,189 @@
'use strict';
/*
Copyright 2012-2015, Yahoo Inc.
Copyrights licensed under the New BSD License. See the accompanying LICENSE file for terms.
*/
const path = require('path');
const fs = require('fs');
const mkdirp = require('make-dir');
const supportsColor = require('supports-color');
/**
* Base class for writing content
* @class ContentWriter
* @constructor
*/
class ContentWriter {
/**
* returns the colorized version of a string. Typically,
* content writers that write to files will return the
* same string and ones writing to a tty will wrap it in
* appropriate escape sequences.
* @param {String} str the string to colorize
* @param {String} clazz one of `high`, `medium` or `low`
* @returns {String} the colorized form of the string
*/
colorize(str /*, clazz*/) {
return str;
}
/**
* writes a string appended with a newline to the destination
* @param {String} str the string to write
*/
println(str) {
this.write(`${str}\n`);
}
/**
* closes this content writer. Should be called after all writes are complete.
*/
close() {}
}
/**
* a content writer that writes to a file
* @param {Number} fd - the file descriptor
* @extends ContentWriter
* @constructor
*/
class FileContentWriter extends ContentWriter {
constructor(fd) {
super();
this.fd = fd;
}
write(str) {
fs.writeSync(this.fd, str);
}
close() {
fs.closeSync(this.fd);
}
}
// allow stdout to be captured for tests.
let capture = false;
let output = '';
/**
* a content writer that writes to the console
* @extends ContentWriter
* @constructor
*/
class ConsoleWriter extends ContentWriter {
write(str) {
if (capture) {
output += str;
} else {
process.stdout.write(str);
}
}
colorize(str, clazz) {
const colors = {
low: '31;1',
medium: '33;1',
high: '32;1'
};
/* istanbul ignore next: different modes for CI and local */
if (supportsColor.stdout && colors[clazz]) {
return `\u001b[${colors[clazz]}m${str}\u001b[0m`;
}
return str;
}
}
/**
* utility for writing files under a specific directory
* @class FileWriter
* @param {String} baseDir the base directory under which files should be written
* @constructor
*/
class FileWriter {
constructor(baseDir) {
if (!baseDir) {
throw new Error('baseDir must be specified');
}
this.baseDir = baseDir;
}
/**
* static helpers for capturing stdout report output;
* super useful for tests!
*/
static startCapture() {
capture = true;
}
static stopCapture() {
capture = false;
}
static getOutput() {
return output;
}
static resetOutput() {
output = '';
}
/**
* returns a FileWriter that is rooted at the supplied subdirectory
* @param {String} subdir the subdirectory under which to root the
* returned FileWriter
* @returns {FileWriter}
*/
writerForDir(subdir) {
if (path.isAbsolute(subdir)) {
throw new Error(
`Cannot create subdir writer for absolute path: ${subdir}`
);
}
return new FileWriter(`${this.baseDir}/${subdir}`);
}
/**
* copies a file from a source directory to a destination name
* @param {String} source path to source file
* @param {String} dest relative path to destination file
* @param {String} [header=undefined] optional text to prepend to destination
* (e.g., an "this file is autogenerated" comment, copyright notice, etc.)
*/
copyFile(source, dest, header) {
if (path.isAbsolute(dest)) {
throw new Error(`Cannot write to absolute path: ${dest}`);
}
dest = path.resolve(this.baseDir, dest);
mkdirp.sync(path.dirname(dest));
let contents;
if (header) {
contents = header + fs.readFileSync(source, 'utf8');
} else {
contents = fs.readFileSync(source);
}
fs.writeFileSync(dest, contents);
}
/**
* returns a content writer for writing content to the supplied file.
* @param {String|null} file the relative path to the file or the special
* values `"-"` or `null` for writing to the console
* @returns {ContentWriter}
*/
writeFile(file) {
if (file === null || file === '-') {
return new ConsoleWriter();
}
if (path.isAbsolute(file)) {
throw new Error(`Cannot write to absolute path: ${file}`);
}
file = path.resolve(this.baseDir, file);
mkdirp.sync(path.dirname(file));
return new FileContentWriter(fs.openSync(file, 'w'));
}
}
module.exports = FileWriter;
@@ -0,0 +1,116 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const utils_1 = require("@typescript-eslint/utils");
const util_1 = require("../util");
exports.default = (0, util_1.createRule)({
name: 'prefer-literal-enum-member',
meta: {
type: 'suggestion',
docs: {
description: 'Require all enum members to be literal values',
recommended: 'strict',
requiresTypeChecking: false,
},
messages: {
notLiteral: `Explicit enum value must only be a literal value (string or number).`,
notLiteralOrBitwiseExpression: `Explicit enum value must only be a literal value (string or number) or a bitwise expression.`,
},
schema: [
{
type: 'object',
additionalProperties: false,
properties: {
allowBitwiseExpressions: {
type: 'boolean',
description: 'Whether to allow using bitwise expressions in enum initializers.',
},
},
},
],
},
defaultOptions: [
{
allowBitwiseExpressions: false,
},
],
create(context, [{ allowBitwiseExpressions }]) {
function isIdentifierWithName(node, name) {
return node.type === utils_1.AST_NODE_TYPES.Identifier && node.name === name;
}
function hasEnumMember(decl, name) {
return decl.body.members.some(member => isIdentifierWithName(member.id, name) ||
(member.id.type === utils_1.AST_NODE_TYPES.Literal &&
(0, util_1.getStaticStringValue)(member.id) === name));
}
function isSelfEnumMember(decl, node) {
if (node.type === utils_1.AST_NODE_TYPES.Identifier) {
return hasEnumMember(decl, node.name);
}
if (node.type === utils_1.AST_NODE_TYPES.MemberExpression &&
isIdentifierWithName(node.object, decl.id.name)) {
if (node.property.type === utils_1.AST_NODE_TYPES.Identifier) {
return hasEnumMember(decl, node.property.name);
}
if (node.computed) {
const propertyName = (0, util_1.getStaticStringValue)(node.property);
if (propertyName) {
return hasEnumMember(decl, propertyName);
}
}
}
return false;
}
return {
TSEnumMember(node) {
// If there is no initializer, then this node is just the name of the member, so ignore.
if (node.initializer == null) {
return;
}
const declaration = node.parent.parent;
function isAllowedInitializerExpressionRecursive(node, partOfBitwiseComputation) {
// You can only refer to an enum member if it's part of a bitwise computation.
// so C = B isn't allowed (special case), but C = A | B is.
if (partOfBitwiseComputation && isSelfEnumMember(declaration, node)) {
return true;
}
switch (node.type) {
// any old literal
case utils_1.AST_NODE_TYPES.Literal:
return true;
// TemplateLiteral without expressions
case utils_1.AST_NODE_TYPES.TemplateLiteral:
return node.expressions.length === 0;
case utils_1.AST_NODE_TYPES.UnaryExpression:
// +123, -123, etc.
if (['-', '+'].includes(node.operator)) {
return isAllowedInitializerExpressionRecursive(node.argument, partOfBitwiseComputation);
}
if (allowBitwiseExpressions) {
return (node.operator === '~' &&
isAllowedInitializerExpressionRecursive(node.argument, true));
}
return false;
case utils_1.AST_NODE_TYPES.BinaryExpression:
if (allowBitwiseExpressions) {
return (['&', '^', '<<', '>>', '>>>', '|'].includes(node.operator) &&
isAllowedInitializerExpressionRecursive(node.left, true) &&
isAllowedInitializerExpressionRecursive(node.right, true));
}
return false;
default:
return false;
}
}
if (isAllowedInitializerExpressionRecursive(node.initializer, false)) {
return;
}
context.report({
node: node.id,
messageId: allowBitwiseExpressions
? 'notLiteralOrBitwiseExpression'
: 'notLiteral',
});
},
};
},
});
@@ -0,0 +1,425 @@
/**
* @fileoverview Rule to flag statements without curly braces
* @author Nicholas C. Zakas
*/
"use strict";
//------------------------------------------------------------------------------
// Requirements
//------------------------------------------------------------------------------
const astUtils = require("./utils/ast-utils");
//------------------------------------------------------------------------------
// Rule Definition
//------------------------------------------------------------------------------
/** @type {import('../types').Rule.RuleModule} */
module.exports = {
meta: {
type: "suggestion",
docs: {
description:
"Enforce consistent brace style for all control statements",
recommended: false,
frozen: true,
url: "https://eslint.org/docs/latest/rules/curly",
},
schema: {
anyOf: [
{
type: "array",
items: [
{
enum: ["all"],
},
],
minItems: 0,
maxItems: 1,
},
{
type: "array",
items: [
{
enum: ["multi", "multi-line", "multi-or-nest"],
},
{
enum: ["consistent"],
},
],
minItems: 0,
maxItems: 2,
},
],
},
defaultOptions: ["all"],
fixable: "code",
messages: {
missingCurlyAfter: "Expected { after '{{name}}'.",
missingCurlyAfterCondition:
"Expected { after '{{name}}' condition.",
unexpectedCurlyAfter: "Unnecessary { after '{{name}}'.",
unexpectedCurlyAfterCondition:
"Unnecessary { after '{{name}}' condition.",
},
},
create(context) {
const multiOnly = context.options[0] === "multi";
const multiLine = context.options[0] === "multi-line";
const multiOrNest = context.options[0] === "multi-or-nest";
const consistent = context.options[1] === "consistent";
const sourceCode = context.sourceCode;
//--------------------------------------------------------------------------
// Helpers
//--------------------------------------------------------------------------
/**
* Determines if a given node is a one-liner that's on the same line as it's preceding code.
* @param {ASTNode} node The node to check.
* @returns {boolean} True if the node is a one-liner that's on the same line as it's preceding code.
* @private
*/
function isCollapsedOneLiner(node) {
const before = sourceCode.getTokenBefore(node);
const last = sourceCode.getLastToken(node);
const lastExcludingSemicolon = astUtils.isSemicolonToken(last)
? sourceCode.getTokenBefore(last)
: last;
return (
before.loc.start.line === lastExcludingSemicolon.loc.end.line
);
}
/**
* Determines if a given node is a one-liner.
* @param {ASTNode} node The node to check.
* @returns {boolean} True if the node is a one-liner.
* @private
*/
function isOneLiner(node) {
if (node.type === "EmptyStatement") {
return true;
}
const first = sourceCode.getFirstToken(node);
const last = sourceCode.getLastToken(node);
const lastExcludingSemicolon = astUtils.isSemicolonToken(last)
? sourceCode.getTokenBefore(last)
: last;
return first.loc.start.line === lastExcludingSemicolon.loc.end.line;
}
/**
* Determines if a semicolon needs to be inserted after removing a set of curly brackets, in order to avoid a SyntaxError.
* @param {Token} closingBracket The } token
* @returns {boolean} `true` if a semicolon needs to be inserted after the last statement in the block.
*/
function needsSemicolon(closingBracket) {
const tokenBefore = sourceCode.getTokenBefore(closingBracket);
const tokenAfter = sourceCode.getTokenAfter(closingBracket);
const lastBlockNode = sourceCode.getNodeByRangeIndex(
tokenBefore.range[0],
);
if (astUtils.isSemicolonToken(tokenBefore)) {
// If the last statement already has a semicolon, don't add another one.
return false;
}
if (!tokenAfter) {
// If there are no statements after this block, there is no need to add a semicolon.
return false;
}
if (
lastBlockNode.type === "BlockStatement" &&
lastBlockNode.parent.type !== "FunctionExpression" &&
lastBlockNode.parent.type !== "ArrowFunctionExpression"
) {
/*
* If the last node surrounded by curly brackets is a BlockStatement (other than a FunctionExpression or an ArrowFunctionExpression),
* don't insert a semicolon. Otherwise, the semicolon would be parsed as a separate statement, which would cause
* a SyntaxError if it was followed by `else`.
*/
return false;
}
if (tokenBefore.loc.end.line === tokenAfter.loc.start.line) {
// If the next token is on the same line, insert a semicolon.
return true;
}
if (/^[([/`+-]/u.test(tokenAfter.value)) {
// If the next token starts with a character that would disrupt ASI, insert a semicolon.
return true;
}
if (
tokenBefore.type === "Punctuator" &&
(tokenBefore.value === "++" || tokenBefore.value === "--")
) {
// If the last token is ++ or --, insert a semicolon to avoid disrupting ASI.
return true;
}
// Otherwise, do not insert a semicolon.
return false;
}
/**
* Prepares to check the body of a node to see if it's a block statement.
* @param {ASTNode} node The node to report if there's a problem.
* @param {ASTNode} body The body node to check for blocks.
* @param {string} name The name to report if there's a problem.
* @param {{ condition: boolean }} opts Options to pass to the report functions
* @returns {Object} a prepared check object, with "actual", "expected", "check" properties.
* "actual" will be `true` or `false` whether the body is already a block statement.
* "expected" will be `true` or `false` if the body should be a block statement or not, or
* `null` if it doesn't matter, depending on the rule options. It can be modified to change
* the final behavior of "check".
* "check" will be a function reporting appropriate problems depending on the other
* properties.
*/
function prepareCheck(node, body, name, opts) {
const hasBlock = body.type === "BlockStatement";
let expected = null;
if (
hasBlock &&
(body.body.length !== 1 ||
astUtils.areBracesNecessary(body, sourceCode))
) {
expected = true;
} else if (multiOnly) {
expected = false;
} else if (multiLine) {
if (!isCollapsedOneLiner(body)) {
expected = true;
}
// otherwise, the body is allowed to have braces or not to have braces
} else if (multiOrNest) {
if (hasBlock) {
const statement = body.body[0];
const leadingCommentsInBlock =
sourceCode.getCommentsBefore(statement);
expected =
!isOneLiner(statement) ||
leadingCommentsInBlock.length > 0;
} else {
expected = !isOneLiner(body);
}
} else {
// default "all"
expected = true;
}
return {
actual: hasBlock,
expected,
check() {
if (
this.expected !== null &&
this.expected !== this.actual
) {
if (this.expected) {
context.report({
node,
loc: body.loc,
messageId:
opts && opts.condition
? "missingCurlyAfterCondition"
: "missingCurlyAfter",
data: {
name,
},
fix: fixer =>
fixer.replaceText(
body,
`{${sourceCode.getText(body)}}`,
),
});
} else {
context.report({
node,
loc: body.loc,
messageId:
opts && opts.condition
? "unexpectedCurlyAfterCondition"
: "unexpectedCurlyAfter",
data: {
name,
},
fix(fixer) {
/*
* `do while` expressions sometimes need a space to be inserted after `do`.
* e.g. `do{foo()} while (bar)` should be corrected to `do foo() while (bar)`
*/
const needsPrecedingSpace =
node.type === "DoWhileStatement" &&
sourceCode.getTokenBefore(body)
.range[1] === body.range[0] &&
!astUtils.canTokensBeAdjacent(
"do",
sourceCode.getFirstToken(body, {
skip: 1,
}),
);
const openingBracket =
sourceCode.getFirstToken(body);
const closingBracket =
sourceCode.getLastToken(body);
const lastTokenInBlock =
sourceCode.getTokenBefore(
closingBracket,
);
if (needsSemicolon(closingBracket)) {
/*
* If removing braces would cause a SyntaxError due to multiple statements on the same line (or
* change the semantics of the code due to ASI), don't perform a fix.
*/
return null;
}
const resultingBodyText =
sourceCode
.getText()
.slice(
openingBracket.range[1],
lastTokenInBlock.range[0],
) +
sourceCode.getText(lastTokenInBlock) +
sourceCode
.getText()
.slice(
lastTokenInBlock.range[1],
closingBracket.range[0],
);
return fixer.replaceText(
body,
(needsPrecedingSpace ? " " : "") +
resultingBodyText,
);
},
});
}
}
},
};
}
/**
* Prepares to check the bodies of a "if", "else if" and "else" chain.
* @param {ASTNode} node The first IfStatement node of the chain.
* @returns {Object[]} prepared checks for each body of the chain. See `prepareCheck` for more
* information.
*/
function prepareIfChecks(node) {
const preparedChecks = [];
for (
let currentNode = node;
currentNode;
currentNode = currentNode.alternate
) {
preparedChecks.push(
prepareCheck(currentNode, currentNode.consequent, "if", {
condition: true,
}),
);
if (
currentNode.alternate &&
currentNode.alternate.type !== "IfStatement"
) {
preparedChecks.push(
prepareCheck(
currentNode,
currentNode.alternate,
"else",
),
);
break;
}
}
if (consistent) {
/*
* If any node should have or already have braces, make sure they
* all have braces.
* If all nodes shouldn't have braces, make sure they don't.
*/
const expected = preparedChecks.some(preparedCheck => {
if (preparedCheck.expected !== null) {
return preparedCheck.expected;
}
return preparedCheck.actual;
});
preparedChecks.forEach(preparedCheck => {
preparedCheck.expected = expected;
});
}
return preparedChecks;
}
//--------------------------------------------------------------------------
// Public
//--------------------------------------------------------------------------
return {
IfStatement(node) {
const parent = node.parent;
const isElseIf =
parent.type === "IfStatement" && parent.alternate === node;
if (!isElseIf) {
// This is a top `if`, check the whole `if-else-if` chain
prepareIfChecks(node).forEach(preparedCheck => {
preparedCheck.check();
});
}
// Skip `else if`, it's already checked (when the top `if` was visited)
},
WhileStatement(node) {
prepareCheck(node, node.body, "while", {
condition: true,
}).check();
},
DoWhileStatement(node) {
prepareCheck(node, node.body, "do").check();
},
ForStatement(node) {
prepareCheck(node, node.body, "for", {
condition: true,
}).check();
},
ForInStatement(node) {
prepareCheck(node, node.body, "for-in").check();
},
ForOfStatement(node) {
prepareCheck(node, node.body, "for-of").check();
},
};
},
};
@@ -0,0 +1,735 @@
export default `flf2a$ 7 6 20 0 19
"Red Phoenix" font by Red Phoenix
====================================
-> Conversion to FigLet font by MEPH. (Part of ASCII Editor Service Pack I)
(http://studenten.freepage.de/meph/ascii/ascii/editor/_index.htm)
-> Defined: ASCII code alphanumeric + most used symbols
ScarecrowsASCIIArtArchive
From: Purdie@zeus.usq.edu.au (Red Phoenix)
[Here's a nice font, which I've used (in a modified form) for one of my sigs.]
---
Font modified June 17, 2007 by patorjk
I changed the "smushing" rules from the original font, so the letters would
fit together.
$ $@
$ $@
$ $@
$ $@
$ $@
$ $@
$ $@@
._. @
| | @
| | @
\\| @
__ @
\\/ @
@@
/\\/\\ @
)/)/ @
@
@
@
@
@@
_ _ @
__| || |__ @
\\ __ / @
| || | @
/_ ~~ _\\ @
|_||_| @
@@
____/\\__ @
/ / /_/ @
\\__/ / \\ @
/ / / \\ @
/_/ /__ / @
\\/ \\/ @
@@
_ /\\ @
/ \\ / / @
\\_// /_ @
/ // \\ @
/ / \\_/ @
\\/ @
@@
____ @
/ _ \\ @
> _ </\\ @
/ <_\\ \\/ @
\\_____\\ \\ @
\\/ @
@@
/\\ @
\\( @
@
@
@
@
@@
___ @
/ / @
/ / @
( ( @
\\ \\ @
\\__\\ @
@@
___ @
\\ \\ @
\\ \\ @
) ) @
/ / @
/__/ @
@@
@
/\\|\\/\\ @
_) (__ @
\\_ _/ @
) \\ @
\\/\\|\\/ @
@@
@
.__ @
__| |___ @
__ __/ @
|__| @
@
@@
@
@
@
@
/\\ @
)/ @
@@
@
@
______ @
/_____/ @
@
@
@@
@
@
@
@
/\\ @
\\/ @
@@
/\\ @
/ / @
/ / @
/ / @
/ / @
\\/ @
@@
_______ @
\\ _ \\ @
/ /_\\ \\ @
\\ \\_/ \\ @
\\_____ / @
\\/ @
@@
____ @
/_ | @
| | @
| | @
|___| @
@
@@
________ @
\\_____ \\ @
/ ____/ @
/ \\ @
\\_______ \\ @
\\/ @
@@
________ @
\\_____ \\ @
_(__ < @
/ \\ @
/______ / @
\\/ @
@@
_____ @
/ | | @
/ | |_ @
/ ^ / @
\\____ | @
|__| @
@@
.________ @
| ____/ @
|____ \\ @
/ \\ @
/______ / @
\\/ @
@@
________ @
/ _____/ @
/ __ \\ @
\\ |__\\ \\ @
\\_____ / @
\\/ @
@@
_________ @
\\______ \\ @
/ / @
/ / @
/____/ @
@
@@
______ @
/ __ \\ @
> < @
/ -- \\ @
\\______ / @
\\/ @
@@
________ @
/ __ \\ @
\\____ / @
/ / @
/____/ @
@
@@
@
/\\ @
\\/ @
/\\ @
\\/ @
@
@@
@
/\\ @
\\/ @
/\\ @
)/ @
@
@@
__ @
/ / @
/ / @
\\ \\ @
\\_\\ @
@
@@
@
______ @
/_____/ @
/_____/ @
@
@
@@
__ @
\\ \\ @
\\ \\ @
/ / @
/_/ @
@
@@
_________ @
\\_____ \\ @
/ __/ @
| | @
|___| @
<___> @
@@
_____ @
/ ___ \\ @
/ / ._\\ \\ @
< \\_____/ @
\\_____\\ @
@
@@
_____ @
/ _ \\ @
/ /_\\ \\ @
/ | \\ @
\\____|__ / @
\\/ @
@@
__________ @
\\______ \\ @
| | _/ @
| | \\ @
|______ / @
\\/ @
@@
_________ @
\\_ ___ \\ @
/ \\ \\/ @
\\ \\____ @
\\______ / @
\\/ @
@@
________ @
\\______ \\ @
| | \\ @
| \` \\ @
/_______ / @
\\/ @
@@
___________ @
\\_ _____/ @
| __)_ @
| \\ @
/_______ / @
\\/ @
@@
___________ @
\\_ _____/ @
| __) @
| \\ @
\\___ / @
\\/ @
@@
________ @
/ _____/ @
/ \\ ___ @
\\ \\_\\ \\ @
\\______ / @
\\/ @
@@
___ ___ @
/ | \\ @
/ ~ \\ @
\\ Y / @
\\___|_ / @
\\/ @
@@
.___ @
| | @
| | @
| | @
|___| @
@
@@
____. @
| | @
| | @
/\\__| | @
\\________| @
@
@@
____ __. @
| |/ _| @
| < @
| | \\ @
|____|__ \\ @
\\/ @
@@
.____ @
| | @
| | @
| |___ @
|_______ \\ @
\\/ @
@@
_____ @
/ \\ @
/ \\ / \\ @
/ Y \\ @
\\____|__ / @
\\/ @
@@
_______ @
\\ \\ @
/ | \\ @
/ | \\ @
\\____|__ / @
\\/ @
@@
________ @
\\_____ \\ @
/ | \\ @
/ | \\ @
\\_______ / @
\\/ @
@@
__________ @
\\______ \\ @
| ___/ @
| | @
|____| @
@
@@
________ @
\\_____ \\ @
/ / \\ \\ @
/ \\_/. \\ @
\\_____\\ \\_/ @
\\__> @
@@
__________ @
\\______ \\ @
| _/ @
| | \\ @
|____|_ / @
\\/ @
@@
_________ @
/ _____/ @
\\_____ \\ @
/ \\ @
/_______ / @
\\/ @
@@
___________ @
\\__ ___/ @
| | @
| | @
|____| @
@
@@
____ ___ @
| | \\ @
| | / @
| | / @
|______/ @
@
@@
____ ____ @
\\ \\ / / @
\\ Y / @
\\ / @
\\___/ @
@
@@
__ __ @
/ \\ / \\ @
\\ \\/\\/ / @
\\ / @
\\__/\\ / @
\\/ @
@@
____ ___ @
\\ \\/ / @
\\ / @
/ \\ @
/___/\\ \\ @
\\_/ @
@@
_____.___. @
\\__ | | @
/ | | @
\\____ | @
/ ______| @
\\/ @
@@
__________ @
\\____ / @
/ / @
/ /_ @
/_______ \\ @
\\/ @
@@
.____ @
| _| @
| | @
| | @
| |_ @
|____| @
@@
/\\ @
\\ \\ @
\\ \\ @
\\ \\ @
\\ \\ @
\\/ @
@@
____. @
|_ | @
| | @
| | @
_| | @
|____| @
@@
/\\ @
/ \\ @
\\/\\/ @
@
@
@
@@
@
@
@
@
______ @
/_____/ @
@@
/\\ @
\\( @
@
@
@
@
@@
@
_____ @
\\__ \\ @
/ __ \\_ @
(____ / @
\\/ @
@@
___. @
\\_ |__ @
| __ \\ @
| \\_\\ \\ @
|___ / @
\\/ @
@@
@
____ @
_/ ___\\ @
\\ \\___ @
\\___ > @
\\/ @
@@
.___ @
__| _/ @
/ __ | @
/ /_/ | @
\\____ | @
\\/ @
@@
@
____ @
_/ __ \\ @
\\ ___/ @
\\___ > @
\\/ @
@@
_____ @
_/ ____\\ @
\\ __\\ @
| | @
|__| @
@
@@
____ @
/ ___\\ @
/ /_/ > @
\\___ / @
/_____/ @
@
@@
.__ @
| |__ @
| | \\ @
| Y \\ @
|___| / @
\\/ @
@@
.__ @
|__| @
| | @
| | @
|__| @
@
@@
__ @
|__| @
| | @
| | @
/\\__| | @
\\______| @
@@
__ @
| | __ @
| |/ / @
| < @
|__|_ \\ @
\\/ @
@@
.__ @
| | @
| | @
| |__ @
|____/ @
@
@@
@
_____ @
/ \\ @
| Y Y \\ @
|__|_| / @
\\/ @
@@
@
____ @
/ \\ @
| | \\ @
|___| / @
\\/ @
@@
@
____ @
/ _ \\ @
( <_> ) @
\\____/ @
@
@@
@
______ @
\\____ \\ @
| |_> > @
| __/ @
|__| @
@@
@
______ @
/ ____/ @
< <_| | @
\\__ | @
|__| @
@@
@
_______ @
\\_ __ \\ @
| | \\/ @
|__| @
@
@@
@
______ @
/ ___/ @
\\___ \\ @
/____ > @
\\/ @
@@
__ @
_/ |_ @
\\ __\\ @
| | @
|__| @
@
@@
@
__ __ @
| | \\ @
| | / @
|____/ @
@
@@
@
___ __ @
\\ \\/ / @
\\ / @
\\_/ @
@
@@
@
__ _ __ @
\\ \\/ \\/ / @
\\ / @
\\/\\_/ @
@
@@
@
___ ___ @
\\ \\/ / @
> < @
/__/\\_ \\ @
\\/ @
@@
@
___.__. @
< | | @
\\___ | @
/ ____| @
\\/ @
@@
@
________ @
\\___ / @
/ / @
/_____ \\ @
\\/ @
@@
___ @
/ / @
\\ \\ @
< < @
/ / @
\\_\\_ @
@@
._. @
| | @
|_| @
|-| @
| | @
|_| @
@@
___ @
\\ \\ @
/ / @
> > @
\\ \\ @
_/_/ @
@@
___ @
/ _ \\_/\\ @
\\/ \\___/ @
@
@
@
@@
@
@
@
@
@
@
@@
@
@
@
@
@
@
@@
@
@
@
@
@
@
@@
@
@
@
@
@
@
@@
@
@
@
@
@
@
@@
@
@
@
@
@
@
@@
@
@
@
@
@
@
@@
`
@@ -0,0 +1,5 @@
import { getConnInfo } from "./conninfo.js";
import { serveStatic } from "./serve-static.js";
import { denoFileSystemModule, toSSG } from "./ssg.js";
import { upgradeWebSocket } from "./websocket.js";
export { denoFileSystemModule, getConnInfo, serveStatic, toSSG, upgradeWebSocket };
@@ -0,0 +1,615 @@
flf2a$ 6 5 20 -1 2
Contrast Font by Dennis Monk 7/94
Original font, I think. Maybe inspired by one of Scarecrow's .sigs.
........@
........@
........@
........@
........@
........@@
...%%...@
...%%...@
...%%...@
........@
...%%...@
........@@
.%%..%%.@
.%%..%%.@
..%..%..@
........@
........@
........@@
..%..%..@
.%%%%%%.@
..%..%..@
.%%%%%%.@
..%..%..@
........@@
..%%%%%.@
.%%.%...@
..%%%%..@
...%.%%.@
.%%%%%..@
........@@
.%%..%%.@
.%..%%..@
...%%...@
..%%..%.@
.%%..%%.@
........@@
..%%%%%..@
.%%...%%.@
..%%.%%..@
.%%.%%.%.@
..%%%%%..@
.........@@
...%%...@
...%%...@
....%...@
........@
........@
........@@
....%%%.@
..%%....@
.%......@
..%%....@
....%%%.@
........@@
.%%%....@
....%%..@
......%.@
....%%..@
.%%%....@
........@@
.%..%..%.@
..%.%.%..@
.%%%%%%%.@
..%.%.%..@
.%..%..%.@
.........@@
...%%...@
...%%...@
.%%%%%%.@
...%%...@
...%%...@
........@@
........@
........@
...%%...@
...%%...@
....%...@
........@@
........@
........@
.%%%%%%.@
........@
........@
........@@
........@
........@
........@
...%%...@
...%%...@
........@@
.....%%.@
....%%..@
...%%...@
..%%....@
.%%.....@
........@@
..%%%%..@
.%%..%%.@
.%%%%%%.@
.%%..%%.@
..%%%%..@
........@@
...%%...@
..%%%...@
...%%...@
...%%...@
.%%%%%%.@
........@@
..%%%%..@
.....%%.@
..%%%%..@
.%%.....@
.%%%%%%.@
........@@
.%%%%%%.@
....%%..@
...%%%..@
.....%%.@
.%%%%%..@
........@@
.....%%.@
.%%..%%.@
.%%%%%%.@
.....%%.@
.....%%.@
........@@
.%%%%%%.@
.%%.....@
..%%%%..@
.....%%.@
.%%%%%..@
........@@
...%%...@
..%%....@
.%%%%%..@
.%%..%%.@
..%%%%..@
........@@
.%%%%%%.@
....%%..@
...%%...@
..%%....@
.%%.....@
........@@
..%%%%..@
.%%..%%.@
..%%%%..@
.%%..%%.@
..%%%%..@
........@@
..%%%%..@
.%%..%%.@
..%%%%..@
...%%...@
..%%....@
........@@
........@
...%%...@
........@
...%%...@
........@
........@@
........@
...%%...@
........@
...%%...@
....%...@
........@@
.....%%.@
...%%...@
.%%.....@
...%%...@
.....%%.@
........@@
........@
.%%%%%%.@
........@
.%%%%%%.@
........@
........@@
.%%.....@
...%%...@
.....%%.@
...%%...@
.%%.....@
........@@
..%%%%..@
.%%..%%.@
....%%..@
...%%...@
...%%...@
........@@
..%%%%..@
.%.%%.%.@
.%.%%.%.@
.%..%.%.@
..%%%%..@
........@@
..%%%%..@
.%%..%%.@
.%%%%%%.@
.%%..%%.@
.%%..%%.@
........@@
.%%%%%..@
.%%..%%.@
.%%%%%..@
.%%..%%.@
.%%%%%..@
........@@
..%%%%..@
.%%..%%.@
.%%.....@
.%%..%%.@
..%%%%..@
........@@
.%%%%%..@
.%%..%%.@
.%%..%%.@
.%%..%%.@
.%%%%%..@
........@@
.%%%%%%.@
.%%.....@
.%%%%...@
.%%.....@
.%%%%%%.@
........@@
.%%%%%%.@
.%%.....@
.%%%%...@
.%%.....@
.%%.....@
........@@
..%%%%..@
.%%.....@
.%%.%%%.@
.%%..%%.@
..%%%%..@
........@@
.%%..%%.@
.%%..%%.@
.%%%%%%.@
.%%..%%.@
.%%..%%.@
........@@
.%%%%%%.@
...%%...@
...%%...@
...%%...@
.%%%%%%.@
........@@
.%%%%%%.@
.....%%.@
.....%%.@
.%%..%%.@
..%%%%..@
........@@
.%%..%%.@
.%%.%%..@
.%%%%...@
.%%.%%..@
.%%..%%.@
........@@
.%%.....@
.%%.....@
.%%.....@
.%%.....@
.%%%%%%.@
........@@
.%%...%%.@
.%%%.%%%.@
.%%.%.%%.@
.%%...%%.@
.%%...%%.@
.........@@
.%%..%%.@
.%%%.%%.@
.%%.%%%.@
.%%..%%.@
.%%..%%.@
........@@
..%%%%..@
.%%..%%.@
.%%..%%.@
.%%..%%.@
..%%%%..@
........@@
.%%%%%..@
.%%..%%.@
.%%%%%..@
.%%.....@
.%%.....@
........@@
..%%%%..@
.%%..%%.@
.%%.%%%.@
.%%..%%.@
..%%%%%.@
........@@
.%%%%%..@
.%%..%%.@
.%%%%%..@
.%%..%%.@
.%%..%%.@
........@@
..%%%%..@
.%%.....@
..%%%%..@
.....%%.@
..%%%%..@
........@@
.%%%%%%.@
...%%...@
...%%...@
...%%...@
...%%...@
........@@
.%%..%%.@
.%%..%%.@
.%%..%%.@
.%%..%%.@
..%%%%..@
........@@
.%%..%%.@
.%%..%%.@
.%%..%%.@
..%%%%..@
...%%...@
........@@
.%%...%%.@
.%%...%%.@
.%%.%.%%.@
.%%%%%%%.@
..%%.%%..@
.........@@
.%%..%%.@
..%%%%..@
...%%...@
..%%%%..@
.%%..%%.@
........@@
.%%..%%.@
..%%%%..@
...%%...@
...%%...@
...%%...@
........@@
.%%%%%%.@
....%%..@
...%%...@
..%%....@
.%%%%%%.@
........@@
.%%%%%%.@
.%%.....@
.%%.....@
.%%.....@
.%%%%%%.@
........@@
.%%.....@
..%%....@
...%%...@
....%%..@
.....%%.@
........@@
.%%%%%%.@
.....%%.@
.....%%.@
.....%%.@
.%%%%%%.@
........@@
...%%...@
..%%%%..@
.%%..%%.@
........@
........@
........@@
........@
........@
........@
........@
.%%%%%%.@
........@@
...%%...@
...%%...@
...%....@
........@
........@
........@@
..%%%%..@
.%%..%%.@
.%%%%%%.@
.%%..%%.@
.%%..%%.@
........@@
.%%%%%..@
.%%..%%.@
.%%%%%..@
.%%..%%.@
.%%%%%..@
........@@
..%%%%..@
.%%..%%.@
.%%.....@
.%%..%%.@
..%%%%..@
........@@
.%%%%%..@
.%%..%%.@
.%%..%%.@
.%%..%%.@
.%%%%%..@
........@@
.%%%%%%.@
.%%.....@
.%%%%...@
.%%.....@
.%%%%%%.@
........@@
.%%%%%%.@
.%%.....@
.%%%%...@
.%%.....@
.%%.....@
........@@
..%%%%..@
.%%.....@
.%%.%%%.@
.%%..%%.@
..%%%%..@
........@@
.%%..%%.@
.%%..%%.@
.%%%%%%.@
.%%..%%.@
.%%..%%.@
........@@
.%%%%%%.@
...%%...@
...%%...@
...%%...@
.%%%%%%.@
........@@
.%%%%%%.@
.....%%.@
.....%%.@
.%%..%%.@
..%%%%..@
........@@
.%%..%%.@
.%%.%%..@
.%%%%...@
.%%.%%..@
.%%..%%.@
........@@
.%%.....@
.%%.....@
.%%.....@
.%%.....@
.%%%%%%.@
........@@
.%%...%%.@
.%%%.%%%.@
.%%.%.%%.@
.%%...%%.@
.%%...%%.@
.........@@
.%%..%%.@
.%%%.%%.@
.%%.%%%.@
.%%..%%.@
.%%..%%.@
........@@
..%%%%..@
.%%..%%.@
.%%..%%.@
.%%..%%.@
..%%%%..@
........@@
.%%%%%..@
.%%..%%.@
.%%%%%..@
.%%.....@
.%%.....@
........@@
..%%%%..@
.%%..%%.@
.%%.%%%.@
.%%..%%.@
..%%%%%.@
........@@
.%%%%%..@
.%%..%%.@
.%%%%%..@
.%%..%%.@
.%%..%%.@
........@@
..%%%%..@
.%%.....@
..%%%%..@
.....%%.@
..%%%%..@
........@@
.%%%%%%.@
...%%...@
...%%...@
...%%...@
...%%...@
........@@
.%%..%%.@
.%%..%%.@
.%%..%%.@
.%%..%%.@
..%%%%..@
........@@
.%%..%%.@
.%%..%%.@
.%%..%%.@
..%%%%..@
...%%...@
........@@
.%%...%%.@
.%%...%%.@
.%%.%.%%.@
.%%%%%%%.@
..%%.%%..@
.........@@
.%%..%%.@
..%%%%..@
...%%...@
..%%%%..@
.%%..%%.@
........@@
.%%..%%.@
..%%%%..@
...%%...@
...%%...@
...%%...@
........@@
.%%%%%%.@
....%%..@
...%%...@
..%%....@
.%%%%%%.@
........@@
...%%%%.@
...%%...@
.%%%....@
...%%...@
...%%%%.@
........@@
...%%...@
...%%...@
...%%...@
...%%...@
...%%...@
...%%...@@
.%%%%...@
...%%...@
....%%%.@
...%%...@
.%%%%...@
........@@
..%%%.%.@
.%.%%%..@
........@
........@
........@
........@@
.%%..%%.@
........@
..%%%%%.@
.%%..%%.@
..%%%%%.@
........@@
.%%..%%.@
........@
..%%%%..@
.%%..%%.@
..%%%%..@
........@@
.%%..%%.@
........@
.%%..%%.@
.%%..%%.@
..%%%%..@
........@@
.%%..%%.@
........@
..%%%%%.@
.%%..%%.@
..%%%%%.@
........@@
.%%..%%.@
........@
..%%%%..@
.%%..%%.@
..%%%%..@
........@@
.%%..%%.@
........@
.%%..%%.@
.%%..%%.@
..%%%%..@
........@@
..%%%%%..@
.%%...%%.@
.%%.%%%..@
.%%...%%.@
.%%.%%%..@
.%%......@@
@@ -0,0 +1 @@
{"version":3,"file":"arrow-down-up.js","sources":["../../../src/icons/arrow-down-up.ts"],"sourcesContent":["import createLucideIcon from '../createLucideIcon';\n\n/**\n * @component @name ArrowDownUp\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJtMyAxNiA0IDQgNC00IiAvPgogIDxwYXRoIGQ9Ik03IDIwVjQiIC8+CiAgPHBhdGggZD0ibTIxIDgtNC00LTQgNCIgLz4KICA8cGF0aCBkPSJNMTcgNHYxNiIgLz4KPC9zdmc+Cg==) - https://lucide.dev/icons/arrow-down-up\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst ArrowDownUp = createLucideIcon('ArrowDownUp', [\n ['path', { d: 'm3 16 4 4 4-4', key: '1co6wj' }],\n ['path', { d: 'M7 20V4', key: '1yoxec' }],\n ['path', { d: 'm21 8-4-4-4 4', key: '1c9v7m' }],\n ['path', { d: 'M17 4v16', key: '7dpous' }],\n]);\n\nexport default ArrowDownUp;\n"],"names":[],"mappings":";;;;;;;;;AAaM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAc,iBAAiB,aAAe,CAAA,CAAA,CAAA;AAAA,CAAA,CAClD,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAA,CAAE,GAAG,CAAiB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,UAAU,CAAA,CAAA;AAAA,CAAA,CAC9C,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAA,CAAE,GAAG,CAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,UAAU,CAAA,CAAA;AAAA,CAAA,CACxC,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAA,CAAE,GAAG,CAAiB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,UAAU,CAAA,CAAA;AAAA,CAAA,CAC9C,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAA,CAAE,GAAG,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,UAAU,CAAA;AAC3C,CAAC,CAAA,CAAA;;"}
@@ -0,0 +1,2 @@
import type { LibDefinition } from '../variable';
export declare const esnext_temporal: LibDefinition;
@@ -0,0 +1,21 @@
import * as React from 'react';
declare type Props = {
/**
* styles to apply
*/
styles: string;
/**
* marks style as dynamic, so it will be reapplied on styles change
* note: this is not expected behavior from a "singleton"
* @default false
*/
dynamic?: boolean;
};
/**
* create a Component to add styles on demand
* - styles are added when first instance is mounted
* - styles are removed when the last instance is unmounted
* - changing styles in runtime does nothing unless dynamic is set. But with multiple components that can lead to the undefined behavior
*/
export declare const styleSingleton: () => React.FC<Props>;
export {};
@@ -0,0 +1,24 @@
/*! *****************************************************************************
Copyright (c) Microsoft Corporation. All rights reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use
this file except in compliance with the License. You may obtain a copy of the
License at http://www.apache.org/licenses/LICENSE-2.0
THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
MERCHANTABILITY OR NON-INFRINGEMENT.
See the Apache Version 2.0 License for specific language governing permissions
and limitations under the License.
***************************************************************************** */
/// <reference lib="es2023" />
/// <reference lib="es2024.arraybuffer" />
/// <reference lib="es2024.collection" />
/// <reference lib="es2024.object" />
/// <reference lib="es2024.promise" />
/// <reference lib="es2024.regexp" />
/// <reference lib="es2024.sharedmemory" />
/// <reference lib="es2024.string" />
@@ -0,0 +1 @@
module.exports={C:{"115":2.94289,"135":0.06329,"140":0.24524,"148":0.06329,"153":0.24524,"154":0.85439,"155":4.04252,"156":10.97256,"157":0.36391,_:"2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 136 137 138 139 141 142 143 144 145 146 147 149 150 151 152 158 159 160 3.5 3.6"},D:{"103":0.30853,"109":0.06329,"116":1.28949,"122":2.76094,"137":0.06329,"148":0.11867,"150":0.18195,"151":1.53473,"152":18.93102,"153":11.94561,"154":3.25142,_:"4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 104 105 106 107 108 110 111 112 113 114 115 117 118 119 120 121 123 124 125 126 127 128 129 130 131 132 133 134 135 136 138 139 140 141 142 143 144 145 146 147 149 155 156 157"},F:{_:"9 11 12 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 60 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 131 132 133 134 135 9.5-9.6 10.0-10.1 10.5 10.6 11.1 11.5 11.6 12.1"},B:{"92":0.18195,"150":0.06329,"152":4.77824,"153":4.65958,"154":0.85439,_:"12 13 14 15 16 17 18 79 80 81 83 84 85 86 87 88 89 90 91 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 151"},E:{"27":0.55377,_:"4 5 6 7 8 9 10 11 12 13 14 15 3.1 3.2 5.1 6.1 7.1 9.1 10.1 12.1 13.1 15.1 15.2-15.3 15.4 15.5 16.0 16.1 16.2 16.3 16.4 16.5 16.6 17.0 17.2 17.3 17.4 17.6 18.1 18.2 18.5-18.7 26.0 26.1 26.2 26.3 26.4 27.1 27.2 TP","11.1":4.04252,"14.1":0.11867,"15.6":0.06329,"17.1":0.98096,"17.5":0.06329,"18.0":0.11867,"18.3":0.06329,"18.4":0.06329,"26.5":0.11867,"26.6":0.55377},G:{"8":0,"3.2":0,"4.0-4.1":0,"4.2-4.3":0.00057,"5.0-5.1":0.00057,"6.0-6.1":0,"7.0-7.1":0.00113,"8.1-8.4":0,"9.0-9.2":0,"9.3":0,"10.0-10.2":0,"10.3":0.00565,"11.0-11.2":0.00057,"11.3-11.4":0.00113,"12.0-12.1":0,"12.2-12.5":0.0147,"13.0-13.1":0,"13.2":0.00283,"13.3":0,"13.4-13.7":0.00057,"14.0-14.4":0.00226,"14.5-14.8":0.00339,"15.0-15.1":0.00339,"15.2-15.3":0.00226,"15.4":0.00283,"15.5":0.00339,"15.6-15.8":0.07351,"16.0":0.00565,"16.1":0.01018,"16.2":0.00565,"16.3":0.01244,"16.4":0.00283,"16.5":0.00452,"16.6-16.7":0.10235,"17.0":0.00396,"17.1":0.00565,"17.2":0.00565,"17.3":0.00848,"17.4":0.01188,"17.5":0.02319,"17.6-17.7":0.05994,"18.0":0.01244,"18.1":0.02488,"18.2":0.03393,"18.3":0.05881,"18.4":0.03676,"18.5-18.7":0.75946,"26.0":0.03676,"26.1":0.03732,"26.2":0.09726,"26.3":0.10518,"26.4":0.07691,"26.5":0.51516,"26.6":3.17863,"27.0":0.24373,"27.1":0,"27.2":0.00622},P:{"30":0.86485,_:"4 20 21 22 23 24 25 26 27 28 29 5.0-5.4 6.2-6.4 7.2-7.4 8.2 9.2 10.1 11.1-11.2 12.0 13.0 14.0 15.0 16.0 17.0 18.0 19.0"},I:{"0":0,"3":0,"4":0,"2.1":0,"2.2":0,"2.3":0,"4.1":0,"4.2-4.3":0,"4.4":0,"4.4.3-4.4.4":0},K:{"0":0,_:"10 11 12 11.1 11.5 12.1"},A:{_:"6 7 8 9 10 11 5.5"},S:{_:"2.5 3.0-3.1"},J:{_:"7 10"},N:{_:"10 11"},L:{"0":10.69024},R:{_:"0"},M:{"0":3.92523},Q:{_:"14.9"},O:{_:"0"},H:{all:0}};
@@ -0,0 +1,117 @@
/*
Copyright (C) 2014 Yusuke Suzuki <utatane.tea@gmail.com>
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
(function () {
'use strict';
var estraverse = require('estraverse');
function isNode(node) {
if (node == null) {
return false;
}
return typeof node === 'object' && typeof node.type === 'string';
}
function isProperty(nodeType, key) {
return (nodeType === estraverse.Syntax.ObjectExpression || nodeType === estraverse.Syntax.ObjectPattern) && key === 'properties';
}
function Visitor(visitor, options) {
options = options || {};
this.__visitor = visitor || this;
this.__childVisitorKeys = options.childVisitorKeys
? Object.assign({}, estraverse.VisitorKeys, options.childVisitorKeys)
: estraverse.VisitorKeys;
if (options.fallback === 'iteration') {
this.__fallback = Object.keys;
} else if (typeof options.fallback === 'function') {
this.__fallback = options.fallback;
}
}
/* Default method for visiting children.
* When you need to call default visiting operation inside custom visiting
* operation, you can use it with `this.visitChildren(node)`.
*/
Visitor.prototype.visitChildren = function (node) {
var type, children, i, iz, j, jz, child;
if (node == null) {
return;
}
type = node.type || estraverse.Syntax.Property;
children = this.__childVisitorKeys[type];
if (!children) {
if (this.__fallback) {
children = this.__fallback(node);
} else {
throw new Error('Unknown node type ' + type + '.');
}
}
for (i = 0, iz = children.length; i < iz; ++i) {
child = node[children[i]];
if (child) {
if (Array.isArray(child)) {
for (j = 0, jz = child.length; j < jz; ++j) {
if (child[j]) {
if (isNode(child[j]) || isProperty(type, children[i])) {
this.visit(child[j]);
}
}
}
} else if (isNode(child)) {
this.visit(child);
}
}
}
};
/* Dispatching node. */
Visitor.prototype.visit = function (node) {
var type;
if (node == null) {
return;
}
type = node.type || estraverse.Syntax.Property;
if (this.__visitor[type]) {
this.__visitor[type].call(this, node);
return;
}
this.visitChildren(node);
};
exports.version = require('./package.json').version;
exports.Visitor = Visitor;
exports.visit = function (node, visitor, options) {
var v = new Visitor(visitor, options);
v.visit(node);
};
}());
/* vim: set sw=4 ts=4 et tw=80 : */
@@ -0,0 +1,15 @@
import TrieNode from './TrieNode';
export interface PasswordChanges {
letter: string;
substitution: string;
}
export type IndexedPasswordChanges = PasswordChanges & {
i: number;
};
export interface PasswordWithSubs {
password: string;
changes: IndexedPasswordChanges[];
isFullSubstitution: boolean;
}
declare const getCleanPasswords: (password: string, limit: number, trieRoot: TrieNode) => PasswordWithSubs[];
export default getCleanPasswords;
@@ -0,0 +1,15 @@
import { components_exports } from "./intrinsic-element/components.js";
//#region src/jsx/dom/jsx-dev-runtime.ts
const jsxDEV = (tag, props, key) => {
if (typeof tag === "string" && components_exports[tag]) tag = components_exports[tag];
return {
tag,
type: tag,
props,
key,
ref: props.ref
};
};
const Fragment = (props) => jsxDEV("", props, void 0);
//#endregion
export { Fragment, jsxDEV };
@@ -0,0 +1,2 @@
import type { LibDefinition } from '../variable';
export declare const es2018_regexp: LibDefinition;
@@ -0,0 +1 @@
{"version":3,"file":"settings.js","sources":["../../../src/icons/settings.ts"],"sourcesContent":["import createLucideIcon from '../createLucideIcon';\n\n/**\n * @component @name Settings\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNMTIuMjIgMmgtLjQ0YTIgMiAwIDAgMC0yIDJ2LjE4YTIgMiAwIDAgMS0xIDEuNzNsLS40My4yNWEyIDIgMCAwIDEtMiAwbC0uMTUtLjA4YTIgMiAwIDAgMC0yLjczLjczbC0uMjIuMzhhMiAyIDAgMCAwIC43MyAyLjczbC4xNS4xYTIgMiAwIDAgMSAxIDEuNzJ2LjUxYTIgMiAwIDAgMS0xIDEuNzRsLS4xNS4wOWEyIDIgMCAwIDAtLjczIDIuNzNsLjIyLjM4YTIgMiAwIDAgMCAyLjczLjczbC4xNS0uMDhhMiAyIDAgMCAxIDIgMGwuNDMuMjVhMiAyIDAgMCAxIDEgMS43M1YyMGEyIDIgMCAwIDAgMiAyaC40NGEyIDIgMCAwIDAgMi0ydi0uMThhMiAyIDAgMCAxIDEtMS43M2wuNDMtLjI1YTIgMiAwIDAgMSAyIDBsLjE1LjA4YTIgMiAwIDAgMCAyLjczLS43M2wuMjItLjM5YTIgMiAwIDAgMC0uNzMtMi43M2wtLjE1LS4wOGEyIDIgMCAwIDEtMS0xLjc0di0uNWEyIDIgMCAwIDEgMS0xLjc0bC4xNS0uMDlhMiAyIDAgMCAwIC43My0yLjczbC0uMjItLjM4YTIgMiAwIDAgMC0yLjczLS43M2wtLjE1LjA4YTIgMiAwIDAgMS0yIDBsLS40My0uMjVhMiAyIDAgMCAxLTEtMS43M1Y0YTIgMiAwIDAgMC0yLTJ6IiAvPgogIDxjaXJjbGUgY3g9IjEyIiBjeT0iMTIiIHI9IjMiIC8+Cjwvc3ZnPgo=) - https://lucide.dev/icons/settings\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Settings = createLucideIcon('Settings', [\n [\n 'path',\n {\n d: 'M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z',\n key: '1qme2f',\n },\n ],\n ['circle', { cx: '12', cy: '12', r: '3', key: '1v7zrd' }],\n]);\n\nexport default Settings;\n"],"names":[],"mappings":";;;;;;;;;AAaM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAW,iBAAiB,UAAY,CAAA,CAAA,CAAA;AAAA,CAC5C,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CACE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CACA,CAAA,CAAA,CAAA,CAAA;AAAA,CACE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAG,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CALine truncated
@@ -0,0 +1,327 @@
// Generated by LiveScript 1.6.0
(function(){
var parsedTypeCheck, types, toString$ = {}.toString;
parsedTypeCheck = require('type-check').parsedTypeCheck;
types = {
'*': function(value, options){
switch (toString$.call(value).slice(8, -1)) {
case 'Array':
return typeCast(value, {
type: 'Array'
}, options);
case 'Object':
return typeCast(value, {
type: 'Object'
}, options);
default:
return {
type: 'Just',
value: typesCast(value, [
{
type: 'Undefined'
}, {
type: 'Null'
}, {
type: 'NaN'
}, {
type: 'Boolean'
}, {
type: 'Number'
}, {
type: 'Date'
}, {
type: 'RegExp'
}, {
type: 'Array'
}, {
type: 'Object'
}, {
type: 'String'
}
], (options.explicit = true, options))
};
}
},
Undefined: function(it){
if (it === 'undefined' || it === void 8) {
return {
type: 'Just',
value: void 8
};
} else {
return {
type: 'Nothing'
};
}
},
Null: function(it){
if (it === 'null') {
return {
type: 'Just',
value: null
};
} else {
return {
type: 'Nothing'
};
}
},
NaN: function(it){
if (it === 'NaN') {
return {
type: 'Just',
value: NaN
};
} else {
return {
type: 'Nothing'
};
}
},
Boolean: function(it){
if (it === 'true') {
return {
type: 'Just',
value: true
};
} else if (it === 'false') {
return {
type: 'Just',
value: false
};
} else {
return {
type: 'Nothing'
};
}
},
Number: function(it){
return {
type: 'Just',
value: +it
};
},
Int: function(it){
return {
type: 'Just',
value: +it
};
},
Float: function(it){
return {
type: 'Just',
value: +it
};
},
Date: function(value, options){
var that;
if (that = /^\#([\s\S]*)\#$/.exec(value)) {
return {
type: 'Just',
value: new Date(+that[1] || that[1])
};
} else if (options.explicit) {
return {
type: 'Nothing'
};
} else {
return {
type: 'Just',
value: new Date(+value || value)
};
}
},
RegExp: function(value, options){
var that;
if (that = /^\/([\s\S]*)\/([gimy]*)$/.exec(value)) {
return {
type: 'Just',
value: new RegExp(that[1], that[2])
};
} else if (options.explicit) {
return {
type: 'Nothing'
};
} else {
return {
type: 'Just',
value: new RegExp(value)
};
}
},
Array: function(value, options){
return castArray(value, {
of: [{
type: '*'
}]
}, options);
},
Object: function(value, options){
return castFields(value, {
of: {}
}, options);
},
String: function(it){
var replace, that;
if (toString$.call(it).slice(8, -1) !== 'String') {
return {
type: 'Nothing'
};
}
replace = function(value, quote){
return value.replace(/\\([^u]|u[0-9a-fA-F]{4})/g, function(all, escaped){
switch (escaped[0]) {
case quote:
return quote;
case '\\':
return '\\';
case 'b':
return '\b';
case 'f':
return '\f';
case 'n':
return '\n';
case 'r':
return '\r';
case 't':
return '\t';
case 'u':
return JSON.parse("\"" + all + "\"");
default:
return escaped;
}
});
};
if (that = it.match(/^'([\s\S]*)'$/)) {
return {
type: 'Just',
value: replace(that[1], "'")
};
} else if (that = it.match(/^"([\s\S]*)"$/)) {
return {
type: 'Just',
value: replace(that[1], '"')
};
} else {
return {
type: 'Just',
value: it
};
}
}
};
function castArray(node, type, options){
var typeOf, element;
if (toString$.call(node).slice(8, -1) !== 'Array') {
return {
type: 'Nothing'
};
}
typeOf = type.of;
return {
type: 'Just',
value: (function(){
var i$, ref$, len$, results$ = [];
for (i$ = 0, len$ = (ref$ = node).length; i$ < len$; ++i$) {
element = ref$[i$];
results$.push(typesCast(element, typeOf, options));
}
return results$;
}())
};
}
function castTuple(node, type, options){
var result, i, i$, ref$, len$, types, cast;
if (toString$.call(node).slice(8, -1) !== 'Array') {
return {
type: 'Nothing'
};
}
result = [];
i = 0;
for (i$ = 0, len$ = (ref$ = type.of).length; i$ < len$; ++i$) {
types = ref$[i$];
cast = typesCast(node[i], types, options);
if (toString$.call(cast).slice(8, -1) !== 'Undefined') {
result.push(cast);
}
i++;
}
if (node.length <= i) {
return {
type: 'Just',
value: result
};
} else {
return {
type: 'Nothing'
};
}
}
function castFields(node, type, options){
var typeOf, key, value;
if (toString$.call(node).slice(8, -1) !== 'Object') {
return {
type: 'Nothing'
};
}
typeOf = type.of;
return {
type: 'Just',
value: (function(){
var ref$, resultObj$ = {};
for (key in ref$ = node) {
value = ref$[key];
resultObj$[typesCast(key, [{
type: 'String'
}], options)] = typesCast(value, typeOf[key] || [{
type: '*'
}], options);
}
return resultObj$;
}())
};
}
function typeCast(node, typeObj, options){
var type, structure, castFunc, ref$;
type = typeObj.type, structure = typeObj.structure;
if (type) {
castFunc = ((ref$ = options.customTypes[type]) != null ? ref$.cast : void 8) || types[type];
if (!castFunc) {
throw new Error("Type not defined: " + type + ".");
}
return castFunc(node, options, typesCast);
} else {
switch (structure) {
case 'array':
return castArray(node, typeObj, options);
case 'tuple':
return castTuple(node, typeObj, options);
case 'fields':
return castFields(node, typeObj, options);
}
}
}
function typesCast(node, types, options){
var i$, len$, type, ref$, valueType, value;
for (i$ = 0, len$ = types.length; i$ < len$; ++i$) {
type = types[i$];
ref$ = typeCast(node, type, options), valueType = ref$.type, value = ref$.value;
if (valueType === 'Nothing') {
continue;
}
if (parsedTypeCheck([type], value, {
customTypes: options.customTypes
})) {
return value;
}
}
throw new Error("Value " + JSON.stringify(node) + " does not type check against " + JSON.stringify(types) + ".");
}
module.exports = function(node, types, options){
if (!options.explicit && types.length === 1 && types[0].type === 'String') {
return node;
}
return typesCast(node, types, options);
};
}).call(this);
@@ -0,0 +1,15 @@
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = _setPrototypeOf;
function _setPrototypeOf(o, p) {
exports.default = _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {
o.__proto__ = p;
return o;
};
return _setPrototypeOf(o, p);
}
//# sourceMappingURL=setPrototypeOf.js.map
@@ -0,0 +1,25 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.parseOptionalDef = void 0;
const parseDef_js_1 = require("../parseDef.js");
const any_js_1 = require("./any.js");
const parseOptionalDef = (def, refs) => {
if (refs.currentPath.toString() === refs.propertyPath?.toString()) {
return (0, parseDef_js_1.parseDef)(def.innerType._def, refs);
}
const innerSchema = (0, parseDef_js_1.parseDef)(def.innerType._def, {
...refs,
currentPath: [...refs.currentPath, "anyOf", "1"],
});
return innerSchema
? {
anyOf: [
{
not: (0, any_js_1.parseAnyDef)(refs),
},
innerSchema,
],
}
: (0, any_js_1.parseAnyDef)(refs);
};
exports.parseOptionalDef = parseOptionalDef;
@@ -0,0 +1 @@
{"version":3,"sources":[],"names":[],"mappings":"","file":"index.js"}
@@ -0,0 +1,7 @@
import { noop } from 'motion-utils';
import { createRenderBatcher } from './batcher.mjs';
const { schedule: frame, cancel: cancelFrame, state: frameData, steps: frameSteps, } = /* @__PURE__ */ createRenderBatcher(typeof requestAnimationFrame !== "undefined" ? requestAnimationFrame : noop, true);
export { cancelFrame, frame, frameData, frameSteps };
//# sourceMappingURL=frame.mjs.map
@@ -0,0 +1 @@
{"version":3,"file":"align-horizontal-justify-end.js","sources":["../../../src/icons/align-horizontal-justify-end.ts"],"sourcesContent":["import createLucideIcon from '../createLucideIcon';\n\n/**\n * @component @name AlignHorizontalJustifyEnd\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cmVjdCB3aWR0aD0iNiIgaGVpZ2h0PSIxNCIgeD0iMiIgeT0iNSIgcng9IjIiIC8+CiAgPHJlY3Qgd2lkdGg9IjYiIGhlaWdodD0iMTAiIHg9IjEyIiB5PSI3IiByeD0iMiIgLz4KICA8cGF0aCBkPSJNMjIgMnYyMCIgLz4KPC9zdmc+Cg==) - https://lucide.dev/icons/align-horizontal-justify-end\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst AlignHorizontalJustifyEnd = createLucideIcon('AlignHorizontalJustifyEnd', [\n ['rect', { width: '6', height: '14', x: '2', y: '5', rx: '2', key: 'dy24zr' }],\n ['rect', { width: '6', height: '10', x: '12', y: '7', rx: '2', key: '1ht384' }],\n ['path', { d: 'M22 2v20', key: '40qfg1' }],\n]);\n\nexport default AlignHorizontalJustifyEnd;\n"],"names":[],"mappings":";;;;;;;;;AAaM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAA4B,iBAAiB,2BAA6B,CAAA,CAAA,CAAA;AAAA,CAAA,CAC9E,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,KAAK,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,GAAG,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,UAAU,CAAA,CAAA;AAAA,CAAA,CAC7E,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,KAAK,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,GAAG,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,UAAU,CAAA,CAAA;AAAA,CAAA,CAC9E,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAA,CAAE,GAAG,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,UAAU,CAAA;AAC3C,CAAC,CAAA,CAAA;;"}
@@ -0,0 +1,13 @@
// packages/react/use-callback-ref/src/use-callback-ref.tsx
import * as React from "react";
function useCallbackRef(callback) {
const callbackRef = React.useRef(callback);
React.useEffect(() => {
callbackRef.current = callback;
});
return React.useMemo(() => (...args) => callbackRef.current?.(...args), []);
}
export {
useCallbackRef
};
//# sourceMappingURL=index.mjs.map
@@ -0,0 +1,52 @@
"use strict";
var __create = Object.create;
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __getProtoOf = Object.getPrototypeOf;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __export = (target, all) => {
for (var name in all)
__defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
if (from && typeof from === "object" || typeof from === "function") {
for (let key of __getOwnPropNames(from))
if (!__hasOwnProp.call(to, key) && key !== except)
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
}
return to;
};
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
// If the importer is in node compatibility mode or this is not an ESM
// file that has been converted to a CommonJS file using a Babel-
// compatible transform (i.e. "__esModule" has not been set), then set
// "default" to the CommonJS "module.exports" for node compatibility.
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
mod
));
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
// packages/react/use-escape-keydown/src/index.ts
var index_exports = {};
__export(index_exports, {
useEscapeKeydown: () => useEscapeKeydown
});
module.exports = __toCommonJS(index_exports);
// packages/react/use-escape-keydown/src/use-escape-keydown.tsx
var React = __toESM(require("react"));
var import_react_use_callback_ref = require("@radix-ui/react-use-callback-ref");
function useEscapeKeydown(onEscapeKeyDownProp, ownerDocument = globalThis?.document) {
const onEscapeKeyDown = (0, import_react_use_callback_ref.useCallbackRef)(onEscapeKeyDownProp);
React.useEffect(() => {
const handleKeyDown = (event) => {
if (event.key === "Escape") {
onEscapeKeyDown(event);
}
};
ownerDocument.addEventListener("keydown", handleKeyDown, { capture: true });
return () => ownerDocument.removeEventListener("keydown", handleKeyDown, { capture: true });
}, [onEscapeKeyDown, ownerDocument]);
}
//# sourceMappingURL=index.js.map
@@ -0,0 +1,30 @@
import Pool from './pool'
import Dispatcher from './dispatcher'
import { URL } from 'node:url'
export default BalancedPool
type BalancedPoolConnectOptions = Omit<Dispatcher.ConnectOptions, 'origin'>
declare class BalancedPool extends Dispatcher {
constructor (url: string | string[] | URL | URL[], options?: Pool.Options)
addUpstream (upstream: string | URL): BalancedPool
removeUpstream (upstream: string | URL): BalancedPool
getUpstream (upstream: string | URL): Pool | undefined
upstreams: Array<string>
/** `true` after `pool.close()` has been called. */
closed: boolean
/** `true` after `pool.destroyed()` has been called or `pool.close()` has been called and the pool shutdown has completed. */
destroyed: boolean
// Override dispatcher APIs.
override connect (
options: BalancedPoolConnectOptions
): Promise<Dispatcher.ConnectData>
override connect (
options: BalancedPoolConnectOptions,
callback: (err: Error | null, data: Dispatcher.ConnectData) => void
): void
}
@@ -0,0 +1,18 @@
import { HonoBase as Hono$1 } from "../hono-base.js";
import { SmartRouter } from "../router/smart-router/router.js";
import { TrieRouter } from "../router/trie-router/router.js";
import "../router/trie-router/index.js";
import { LinearRouter } from "../router/linear-router/router.js";
//#region src/preset/quick.ts
/**
* @module
* The preset that uses `LinearRouter`.
*/
var Hono = class extends Hono$1 {
constructor(options = {}) {
super(options);
this.router = new SmartRouter({ routers: [new LinearRouter(), new TrieRouter()] });
}
};
//#endregion
export { Hono };
@@ -0,0 +1,34 @@
"use client";
import { Await, useAwaited } from "./awaited.js";
import { CatchBoundary, ErrorComponent } from "./CatchBoundary.js";
import { ClientOnly, useHydrated } from "./ClientOnly.js";
import { useRouter } from "./useRouter.js";
import { useMatch } from "./useMatch.js";
import { useLoaderData } from "./useLoaderData.js";
import { useLoaderDeps } from "./useLoaderDeps.js";
import { useParams } from "./useParams.js";
import { useSearch } from "./useSearch.js";
import { Navigate, useNavigate } from "./useNavigate.js";
import { useRouteContext } from "./useRouteContext.js";
import { Link, createLink, linkOptions, useLinkProps } from "./link.js";
import { NotFoundRoute, RootRoute, Route, RouteApi, createRootRoute, createRootRouteWithContext, createRoute, createRouteMask, getRouteApi, rootRouteWithContext } from "./route.js";
import { FileRoute, FileRouteLoader, LazyRoute, createFileRoute, createLazyFileRoute, createLazyRoute } from "./fileRoute.js";
import { lazyRouteComponent } from "./lazyRouteComponent.js";
import { CatchNotFound, DefaultGlobalNotFound } from "./not-found.js";
import { ScriptOnce } from "./ScriptOnce.js";
import { Match, Outlet } from "./Match.js";
import { MatchRoute, Matches, useChildMatches, useMatchRoute, useMatches, useParentMatches } from "./Matches.js";
import { Router, createRouter } from "./router.js";
import { RouterContextProvider, RouterProvider } from "./RouterProvider.js";
import { ScrollRestoration, useElementScrollRestoration } from "./ScrollRestoration.js";
import { Block, useBlocker } from "./useBlocker.js";
import { useRouterState } from "./useRouterState.js";
import { useLocation } from "./useLocation.js";
import { useCanGoBack } from "./useCanGoBack.js";
import { Asset } from "./Asset.js";
import { useTags } from "./headContentUtils.js";
import { HeadContent } from "./HeadContent.js";
import { Scripts } from "./Scripts.js";
import { DEFAULT_PROTOCOL_ALLOWLIST, SearchParamError, cleanPath, composeRewrites, createControlledPromise, createRouterConfig, createSerializationAdapter, deepEqual, defaultParseSearch, defaultStringifySearch, defer, functionalUpdate, interpolatePath, isMatch, isNotFound, isPlainArray, isPlainObject, isRedirect, joinPaths, lazyFn, notFound, parseSearchWith, redirect, replaceEqualDeep, resolvePath, retainSearchParams, rootRouteId, stringifySearchWith, stripSearchParams, trimPath, trimPathLeft, trimPathRight } from "@tanstack/router-core";
import { createBrowserHistory, createHashHistory, createHistory, createMemoryHistory } from "@tanstack/history";
export { Asset, Await, Block, CatchBoundary, CatchNotFound, ClientOnly, DEFAULT_PROTOCOL_ALLOWLIST, DefaultGlobalNotFound, ErrorComponent, FileRoute, FileRouteLoader, HeadContent, LazyRoute, Link, Match, MatchRoute, Matches, Navigate, NotFoundRoute, Outlet, RootRoute, Route, RouteApi, Router, RouterContextProvider, RouterProvider, ScriptOnce, Scripts, ScrollRestoration, SearchParamError, cleanPath, composeRewrites, createBrowserHistory, createControlledPromise, createFileRoute, createHashHistory, createHistory, createLazyFileRoute, createLazyRoute, createLink, createMemoryHistory, createRootRoute, createRootRouteWithContext, createRoute, createRouteMask, createRouter, createRouterConfig, createSerializationAdapter, deepEqual, defaultParseSearch, defaultStringifySearch, defer, functionalUpdate, getRouteApi, interpolatePath, isMatch, isNotFound, isPlainArray, isPlainObject, isRedirect, joinPaths, lazyFn, lazyRouteComponent, linkOptions, notFound, parseSearchWith, redirect, replaceEqualDeep, resolvePath, retainSearchParams, rootRouteId, rootRouteWithContext, stringifySearchWith, stripSearchParams, trimPath, trimPathLeft, trimPathRight, useAwaited, useBlocker, useCanGoBack, useChildMatches, useElementScrollRestoration, useHydrated, useLinkProps, useLoaderData, useLoaderDeps, useLocation, useMatch, useMatchRoute, useMatches, useNavigate, useParams, useParentMatches, useRouteContext, useRouter, useRouterState, useSearch, useTags };
@@ -0,0 +1,46 @@
import * as path from "node:path";
import { fileURLToPath } from "node:url";
import { build, transform } from "esbuild";
import { expect, test } from "vitest";
import * as core from "zod/v4/core";
// Browser polyfills for node globals land as raw text in the bundle's top scope — an esbuild `banner`, a scope-unaware injector — so the bundler never sees the collision and the browser is the first thing to read both declarations. zod must therefore declare none of these names at module scope. The JSON Schema pass shipped an `export function process` for three minors before #6397 reported the white screen it caused.
const INJECTED = ["process", "Buffer", "global", "__dirname", "__filename"];
const here = path.dirname(fileURLToPath(import.meta.url));
const CLASSIC = path.resolve(here, "../../../index.ts");
const MINI = path.resolve(here, "../../../mini/index.ts");
const polyfills = INJECTED.map((name) => `const ${name} = {};`).join("\n");
// toJSONSchema has to be reachable: a bundle that only parses a schema tree-shakes the offending module away and would pass no matter what it declares. `z.core.process` is the pre-rename export name, read as a namespace property so the entry itself declares no `process` binding.
const ENTRY = `import * as z from "%ENTRY%";\nglobalThis.__out = [z.toJSONSchema(z.string()), z.core.process];`;
test.each([
["classic", CLASSIC],
["mini", MINI],
])(
"a %s bundle reaching toJSONSchema parses beside polyfilled node globals",
async (_flavor, entrypoint) => {
const result = await build({
stdin: { contents: ENTRY.replace("%ENTRY%", entrypoint), loader: "ts", resolveDir: here },
bundle: true,
format: "esm",
target: "es2020",
write: false,
logLevel: "silent",
banner: { js: polyfills },
});
const out = result.outputFiles[0]!.text;
expect(out).toContain("https://json-schema.org/draft/2020-12/schema");
// the banner is appended after esbuild has already renamed its own symbols, so this second pass is where a duplicate surfaces: `The symbol "process" has already been declared`
await expect(transform(out, { loader: "js", format: "esm" })).resolves.toBeTruthy();
},
30000
);
test("the pre-rename `process` export still resolves to the helper", () => {
expect(core.process).toBe(core.processSchema);
});
@@ -0,0 +1,36 @@
"use strict";
const units = require("./units.js");
const { YEAR, MONTH, DATE, HOUR, MINUTE, SECOND, MILLISECOND, UTC_OFFSET } = units;
function escapeRegex(str) {
return str.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
}
const TOKEN_MAP = {
YYYY: { pattern: "(\\d{1,4})", key: YEAR },
// 年份
// YY: { pattern: '(\\d{1,2})', key: YEAR }, // 年份
MM: { pattern: "(\\d{1,2})", key: MONTH },
// 月份
DD: { pattern: "(\\d{1,2})", key: DATE },
// 日期
HH: { pattern: "(\\d{1,2})", key: HOUR },
// 小时
mm: { pattern: "(\\d{1,2})", key: MINUTE },
// 分钟
ss: { pattern: "(\\d{1,2})", key: SECOND },
// 秒
SSS: { pattern: "(\\d{1,3})", key: MILLISECOND },
// 毫秒
Z: { pattern: "(Z|[+-]\\d{2}(?::?\\d{2})?)", key: UTC_OFFSET }
// 时区
};
const TOKEN_KEYS = Object.keys(TOKEN_MAP).sort((a, b) => b.length - a.length);
const TOKEN_PATTERN = new RegExp(`(${TOKEN_KEYS.join("|")})`, "g");
function compile(formatString) {
const matchedTokens = [];
const pattern = escapeRegex(formatString).replace(TOKEN_PATTERN, (m) => {
matchedTokens.push(m);
return TOKEN_MAP[m].pattern;
});
return { pattern, tokens: matchedTokens };
}
module.exports = compile;
@@ -0,0 +1,81 @@
{
"name": "@radix-ui/react-dialog",
"version": "1.1.15",
"license": "MIT",
"source": "./src/index.ts",
"main": "./dist/index.js",
"module": "./dist/index.mjs",
"files": [
"dist",
"README.md"
],
"sideEffects": false,
"dependencies": {
"aria-hidden": "^1.2.4",
"react-remove-scroll": "^2.6.3",
"@radix-ui/primitive": "1.1.3",
"@radix-ui/react-compose-refs": "1.1.2",
"@radix-ui/react-dismissable-layer": "1.1.11",
"@radix-ui/react-focus-scope": "1.1.7",
"@radix-ui/react-id": "1.1.1",
"@radix-ui/react-focus-guards": "1.1.3",
"@radix-ui/react-context": "1.1.2",
"@radix-ui/react-portal": "1.1.9",
"@radix-ui/react-presence": "1.1.5",
"@radix-ui/react-primitive": "2.1.3",
"@radix-ui/react-slot": "1.2.3",
"@radix-ui/react-use-controllable-state": "1.2.2"
},
"devDependencies": {
"@types/react": "^19.0.7",
"@types/react-dom": "^19.0.3",
"eslint": "^9.18.0",
"react": "^19.1.0",
"react-dom": "^19.1.0",
"typescript": "^5.7.3",
"@repo/builder": "0.0.0",
"@repo/eslint-config": "0.0.0",
"@repo/typescript-config": "0.0.0"
},
"peerDependencies": {
"@types/react": "*",
"@types/react-dom": "*",
"react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc",
"react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
},
"peerDependenciesMeta": {
"@types/react": {
"optional": true
},
"@types/react-dom": {
"optional": true
}
},
"homepage": "https://radix-ui.com/primitives",
"repository": {
"type": "git",
"url": "git+https://github.com/radix-ui/primitives.git"
},
"bugs": {
"url": "https://github.com/radix-ui/primitives/issues"
},
"scripts": {
"lint": "eslint --max-warnings 0 src",
"clean": "rm -rf dist",
"typecheck": "tsc --noEmit",
"build": "radix-build"
},
"types": "./dist/index.d.ts",
"exports": {
".": {
"import": {
"types": "./dist/index.d.mts",
"default": "./dist/index.mjs"
},
"require": {
"types": "./dist/index.d.ts",
"default": "./dist/index.js"
}
}
}
}
@@ -0,0 +1 @@
{"version":3,"file":"simpleSseServer.js","sourceRoot":"","sources":["../../../../src/examples/server/simpleSseServer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
# @babel/helper-globals
> A collection of JavaScript globals for Babel internal usage
See our website [@babel/helper-globals](https://babeljs.io/docs/babel-helper-globals) for more information.
## Install
Using npm:
```sh
npm install --save @babel/helper-globals
```
or using yarn:
```sh
yarn add @babel/helper-globals
```
@@ -0,0 +1 @@
{"version":3,"file":"feedback.mjs","sources":["../../../src/matcher/bruteforce/feedback.ts"],"sourcesContent":[null],"names":[],"mappings":"AAAA,wBAAe,MAAK;AAClB,EAAA,OAAO,IAAI;AACb,CAAC;;;;"}
@@ -0,0 +1,629 @@
flf2a$ 6 5 10 16 16
Avatar by Claude Martins 02/95
Figlet release 2.1 -- 12 Aug 1994
Permission is hereby given to modify this font, as long as the
modifier's name is placed on a comment line.
Explanation of first line:
flf2 - "magic number" for file identification
a - should always be `a', for now
$ - the "hardblank" -- prints as a blank, but can't be smushed
6 - height of a character
5 - height of a character, not including descenders
10 - max line length (excluding comment lines) + a fudge factor
16 - default smushmode for this font
16 - number of comment lines
$$@
$$@
$$@
$$@
$$@
$$@@
_ @
/ \@
| |@
\_/@
(_)@
@@
_ _@
\||/@
@
@
@
@@
@
_/|_|\_@
\ _ /@
/ _ \@
\| |/ @
@@
/| @
/ _\@
\ \ @
_\ \@
\ /@
|/ @@
_ @
\|/\ @
/ / @
/ /_ @
\/ \|@
@@
_ @
/.\ @
\ _\_@
/|/ /@
\__/\@
@@
_@
|/@
@
@
@
@@
___@
/ _/@
|/ @
|\_ @
\__\@
@@
___ @
\_ \@
\|@
_/|@
/__/@
@@
@
_/||\_@
\ /@
/ \@
\||/ @
@@
_ @
_| |_ @
|_ _|@
|_| @
@
@@
@
@
@
@
_@
|/@@
@
@
_____ @
\____\@
@
@@
@
@
@
__@
\/@
@@
@
/\@
/ /@
/ / @
\/ @
@@
____ @
/ _ \@
| / \|@
| \_/|@
\____/@
@@
_ @
/ \@
| |@
| |@
\_/@
@@
____ @
/_ \@
/ /@
/ /_@
\____/@
@@
_____ @
\__ \@
/ |@
_\ |@
/____/@
@@
_ @
/\ / |@
\_\| |@
| |@
\_|@
@@
____ @
/ ___\@
| \@
\___ |@
\____/@
@@
_ @
__/ \@
/__ |@
|\/ |@
\____/@
@@
____ @
/ _ \@
\/ | |@
| |@
\_/@
@@
____ @
/ ___\@
\ \ //@
/ /_\\@
\____/@
@@
____ @
/__ \@
|\/ |@
\__ |@
\_/@
@@
@
__@
\/@
__@
\/@
@@
@
@
__@
\/@
_@
|/@@
___@
/ _/@
/ / @
\ \_ @
\__\@
@@
@
_____ @
\____\@
_____ @
\____\@
@@
___ @
\_ \ @
\ \@
_/ /@
/__/ @
@@
____ @
/ _ \@
\/ \ |@
/ /@
\/ @
\/ @@
____ @
/ __\@
| /_//@
| \\/_@
\____/@
@@
____ @
/ _ \@
| / \|@
| |-||@
\_/ \|@
@@
____ @
/ __\@
| | //@
| |_\\@
\____/@
@@
____ @
/ _\@
| / @
| \__@
\____/@
@@
____ @
/ _ \@
| | \|@
| |_/|@
\____/@
@@
_____@
/ __/@
| \ @
| /_ @
\____\@
@@
_____@
/ /@
| __\@
| | @
\_/ @
@@
_____@
/ __/@
| | _@
| |_//@
\____\@
@@
_ @
/ \ /|@
| |_||@
| | ||@
\_/ \|@
@@
_ @
/ \@
| |@
| |@
\_/@
@@
_ @
/ |@
| |@
/\_| |@
\____/@
@@
_ __@
/ |/ /@
| / @
| \ @
\_|\_\@
@@
_ @
/ \ @
| | @
| |_/\@
\____/@
@@
_ @
/ \__/|@
| |\/||@
| | ||@
\_/ \|@
@@
_ @
/ \ /|@
| |\ ||@
| | \||@
\_/ \|@
@@
____ @
/ _ \@
| / \|@
| \_/|@
\____/@
@@
____ @
/ __\@
| \/|@
| __/@
\_/ @
@@
____ @
/ _ \@
| / \|@
| \_\|@
\____\@
@@
____ @
/ __\@
| \/|@
| /@
\_/\_\@
@@
____ @
/ ___\@
| \@
\___ |@
\____/@
@@
_____ @
/__ __\@
/ \ @
| | @
\_/ @
@@
_ @
/ \ /\@
| | ||@
| \_/|@
\____/@
@@
_ @
/ \ |\@
| | //@
| \// @
\__/ @
@@
_ @
/ \ /|@
| | ||@
| |/\||@
\_/ \|@
@@
___ _@
\ \//@
\ / @
/ \ @
/__/\\@
@@
___ _@
\ \//@
\ / @
/ / @
/_/ @
@@
____ @
/_ \@
/ /@
/ /_@
\____/@
@@
___@
/ _/@
|| @
||_ @
\__\@
@@
@
/\ @
\ \ @
\ \@
\/@
@@
___ @
\_ \@
||@
_||@
/__/@
@@
/\@
$$@
$$@
$$@
$$@
$$@@
@
@
@
@
_____ @
\____\@@
_ @
\|@
@
@
@
@@
____ @
/ _ \@
| / \|@
| |-||@
\_/ \|@
@@
____ @
/ _ \@
| | //@
| |_\\@
\____/@
@@
____ @
/ _\@
| / @
| \_ @
\____/@
@@
____ @
/ _ \@
| | \|@
| |_/|@
\____/@
@@
_____@
/ __/@
| \ @
| /_ @
\____\@
@@
_____@
/ /@
| __\@
| | @
\_/ @
@@
_____@
/ __/@
| | _@
| |_//@
\____\@
@@
_ @
/ \ /|@
| |_||@
| | ||@
\_/ \|@
@@
_ @
/ \@
| |@
| |@
\_/@
@@
_ @
/ |@
| |@
/\_| |@
\____/@
@@
_ __@
/ |/ /@
| / @
| \ @
\_|\_\@
@@
_ @
/ \ @
| | @
| |_/\@
\____/@
@@
_ @
/ \__/|@
| |\/||@
| | ||@
\_/ \|@
@@
_ @
/ \ /|@
| |\ ||@
| | \||@
\_/ \|@
@@
____ @
/ _ \@
| / \|@
| \_/|@
\____/@
@@
____ @
/ __\@
| \/|@
| __/@
\_/ @
@@
____ @
/ _ \@
| / \|@
| \_\|@
\____\@
@@
____ @
/ __\@
| \/|@
| /@
\_/\_\@
@@
____ @
/ ___\@
| \@
\___ |@
\____/@
@@
_____ @
/__ __\@
/ \ @
| | @
\_/ @
@@
_ @
/ \ /\@
| | ||@
| \_/|@
\____/@
@@
_ @
/ \ |\@
| | //@
| \// @
\__/ @
@@
_ @
/ \ /|@
| | ||@
| |/\||@
\_/ \|@
@@
___ _@
\ \//@
\ / @
/ \ @
/__/\\@
@@
___ _@
\ \//@
\ / @
/ / @
/_/ @
@@
____ @
/_ \@
/ /@
/ /_@
\____/@
@@
____@
\ _/@
// @
\\_ @
/__\@
@@
_ @
| |@
\_/@
_ @
/ \@
|_|@@
____@
\_ /@
\\@
_//@
/__\@
@@
/\//@
$\/$@
@
@
@
@@
\/\/ @
/ _ \@
| / \|@
| |-||@
\_/ \|@
@@
\/\/ @
/ _ \@
| / \|@
| \_/|@
\____/@
@@
\/\/ @
/ \ /\@
| | ||@
| \_/|@
\____/@
@@
\/\/ @
/ _ \@
| / \|@
| |-||@
\_/ \|@
@@
\/\/ @
/ _ \@
| / \|@
| \_/|@
\____/@
@@
\/\/ @
/ \ /\@
| | ||@
| \_/|@
\____/@
@@
____ @
/ _ \@
| | //@
| |_\\@
\_/\_/@
@@
@@ -0,0 +1,26 @@
"use strict";
// THIS CODE WAS AUTOMATICALLY GENERATED
// DO NOT EDIT THIS CODE BY HAND
// RUN THE FOLLOWING COMMAND FROM THE WORKSPACE ROOT TO REGENERATE:
// npx nx generate-lib repo
Object.defineProperty(exports, "__esModule", { value: true });
exports.es2022 = void 0;
const es2021_1 = require("./es2021");
const es2022_array_1 = require("./es2022.array");
const es2022_error_1 = require("./es2022.error");
const es2022_intl_1 = require("./es2022.intl");
const es2022_object_1 = require("./es2022.object");
const es2022_regexp_1 = require("./es2022.regexp");
const es2022_string_1 = require("./es2022.string");
exports.es2022 = {
libs: [
es2021_1.es2021,
es2022_array_1.es2022_array,
es2022_error_1.es2022_error,
es2022_intl_1.es2022_intl,
es2022_object_1.es2022_object,
es2022_regexp_1.es2022_regexp,
es2022_string_1.es2022_string,
],
variables: [],
};
@@ -0,0 +1 @@
{"version":3,"file":"defaultAttributes.js","sources":["../../src/defaultAttributes.ts"],"sourcesContent":["export default {\n xmlns: 'http://www.w3.org/2000/svg',\n width: 24,\n height: 24,\n viewBox: '0 0 24 24',\n fill: 'none',\n stroke: 'currentColor',\n strokeWidth: 2,\n strokeLinecap: 'round',\n strokeLinejoin: 'round',\n};\n"],"names":[],"mappings":";;;;;;;AAAA,CAAe,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CACb,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CACP,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,EAAA,CAAA,CAAA,CAAA;AAAA,CACP,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,EAAA,CAAA,CAAA,CAAA;AAAA,CACR,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CACT,CAAA,CAAA,CAAA,CAAA,CAAM,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CACN,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CACR,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAa,EAAA,CAAA,CAAA;AAAA,CACb,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAe,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CACf,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAgB,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAClB,CAAA,CAAA;;"}
@@ -0,0 +1 @@
{"version":3,"file":"escape.js","sourceRoot":"https://raw.githubusercontent.com/fb55/entities/61afd4701eaa736978b13c7351cd3de9a96b04bc/src/","sources":["escape.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
{"version":3,"file":"monitor-speaker.js","sources":["../../../src/icons/monitor-speaker.ts"],"sourcesContent":["import createLucideIcon from '../createLucideIcon';\n\n/**\n * @component @name MonitorSpeaker\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNNS41IDIwSDgiIC8+CiAgPHBhdGggZD0iTTE3IDloLjAxIiAvPgogIDxyZWN0IHdpZHRoPSIxMCIgaGVpZ2h0PSIxNiIgeD0iMTIiIHk9IjQiIHJ4PSIyIiAvPgogIDxwYXRoIGQ9Ik04IDZINGEyIDIgMCAwIDAtMiAydjZhMiAyIDAgMCAwIDIgMmg0IiAvPgogIDxjaXJjbGUgY3g9IjE3IiBjeT0iMTUiIHI9IjEiIC8+Cjwvc3ZnPgo=) - https://lucide.dev/icons/monitor-speaker\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst MonitorSpeaker = createLucideIcon('MonitorSpeaker', [\n ['path', { d: 'M5.5 20H8', key: '1k40s5' }],\n ['path', { d: 'M17 9h.01', key: '1j24nn' }],\n ['rect', { width: '10', height: '16', x: '12', y: '4', rx: '2', key: 'ixliua' }],\n ['path', { d: 'M8 6H4a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2h4', key: '1mp6e1' }],\n ['circle', { cx: '17', cy: '15', r: '1', key: 'tqvash' }],\n]);\n\nexport default MonitorSpeaker;\n"],"names":[],"mappings":";;;;;;;;;AAaM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAiB,iBAAiB,gBAAkB,CAAA,CAAA,CAAA;AAAA,CAAA,CACxD,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAA,CAAE,GAAG,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,UAAU,CAAA,CAAA;AAAA,CAAA,CAC1C,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAA,CAAE,GAAG,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,UAAU,CAAA,CAAA;AAAA,CAAA,CAC1C,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,MAAM,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,GAAG,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,UAAU,CAAA,CAAA;AAAA,CAAA,CAC/E,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAA,CAAE,GAAG,CAA0C,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,UAAU,CAAA,CAAA;AAAA,CACvE,CAAA,CAAC,QAAU,CAAA,CAAA,CAAA,CAAE,EAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAM,CAAI,CAAA,CAAA,CAAA,IAAA,CAAM,CAAA,CAAG,EAAA,CAAA,CAAA,CAAA,CAAA,CAAK,GAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAU,CAAA;AAC1D,CAAC,CAAA,CAAA;;"}