@utilix-tech/sdk 0.80.0 → 0.82.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +7 -0
- package/README.md +18 -5
- package/dist/{chunk-RYSN5JNA.js → chunk-FPFA4ZHC.js} +345 -1
- package/dist/{chunk-KWS4ZCYG.js → chunk-SW3J5CAI.js} +36 -1
- package/dist/{code-C4n621_i.d.cts → code-B8yHwP3m.d.cts} +55 -2
- package/dist/{code-C4n621_i.d.ts → code-B8yHwP3m.d.ts} +55 -2
- package/dist/index.cjs +379 -0
- package/dist/index.d.cts +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/index.js +2 -2
- package/dist/{network-BskZe1n2.d.cts → network-ylRtLPEs.d.cts} +29 -2
- package/dist/{network-BskZe1n2.d.ts → network-ylRtLPEs.d.ts} +29 -2
- package/dist/tools/code.cjs +344 -0
- package/dist/tools/code.d.cts +1 -1
- package/dist/tools/code.d.ts +1 -1
- package/dist/tools/code.js +1 -1
- package/dist/tools/network.cjs +35 -0
- package/dist/tools/network.d.cts +1 -1
- package/dist/tools/network.d.ts +1 -1
- package/dist/tools/network.js +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,13 @@
|
|
|
2
2
|
|
|
3
3
|
Full release notes for all Utilix surfaces (browser tools, REST API, SDKs, MCP server) live at [utilix.tech/changelog](https://utilix.tech/changelog). This file tracks just this package.
|
|
4
4
|
|
|
5
|
+
## 0.82.0
|
|
6
|
+
- Add `generateRobotsTxt` (robots-txt-generator): build a robots.txt file from User-agent groups with Allow/Disallow rules and an optional Crawl-delay, plus a list of Sitemap URLs. The generator-side sibling of `validateRobotsTxt`.
|
|
7
|
+
|
|
8
|
+
## 0.81.0
|
|
9
|
+
- Add `validateFenceLanguageTags` (markdown-fence-lang-validator): scan a Markdown document's fenced code blocks and flag a missing, unknown, or inconsistently-cased language tag against a curated list of common syntax-highlighter identifiers.
|
|
10
|
+
- Add `countSqlPlaceholders` (sql-placeholder-counter): count positional (`?`, `$1`) and named (`:name`, `@name`) parameter placeholders in a SQL query, flagging mixed styles and numbered-sequence gaps or duplicates.
|
|
11
|
+
|
|
5
12
|
## 0.80.0
|
|
6
13
|
- Add `diffJsonPatch`, `applyJsonPatch`, `generateJsonPatch` (json-patch): diff two JSON documents into an RFC 6902 JSON Patch operation list (add/remove/replace/move/copy/test), or apply a patch to a target document.
|
|
7
14
|
- Add `parseConnectionString` (connection-string-parser): parse a database connection URI (postgres, mysql, mongodb, redis, amqp, and similar) into its scheme, credentials, hosts, database, and query parameters.
|
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# @utilix-tech/sdk
|
|
2
2
|
|
|
3
|
-
**
|
|
3
|
+
**716 developer utility functions for Node.js: runs locally, no API key required.**
|
|
4
4
|
|
|
5
5
|
[](https://www.npmjs.com/package/@utilix-tech/sdk)
|
|
6
6
|
[](https://www.npmjs.com/package/@utilix-tech/sdk)
|
|
@@ -550,7 +550,7 @@ calculateRealRateOfReturn({ nominalRatePercent: 5, inflationRatePercent: 2 });
|
|
|
550
550
|
```ts
|
|
551
551
|
import { getStatusCode, isValidIp, isValidIpv4, isValidIpv6,
|
|
552
552
|
searchStatusCodes, buildGeoUrl, countryCodeToFlag,
|
|
553
|
-
parseHar, validateSitemap, splitSitemap, validateRobotsTxt,
|
|
553
|
+
parseHar, validateSitemap, splitSitemap, validateRobotsTxt, generateRobotsTxt,
|
|
554
554
|
parseUserAgent, buildCacheControl, buildReferrerPolicy, parseIpv6Address, buildLinkHeader, checkSetCookieHeader, analyzeEmailHeaders,
|
|
555
555
|
buildRangeHeader, parseContentRangeHeader, buildVaryHeader, parseVaryHeader, validateManifest,
|
|
556
556
|
buildPermissionsPolicy, parsePermissionsPolicy, buildClientHints, parseClientHintHeaders,
|
|
@@ -594,6 +594,10 @@ splitSitemap("https://example.com/a\nhttps://example.com/b\nhttps://example.com/
|
|
|
594
594
|
validateRobotsTxt("User-agent: *\nDisallow: /admin\nSitemap: https://example.com/sitemap.xml");
|
|
595
595
|
// { groups: [...], sitemaps: [...], issues: [...], valid: true }
|
|
596
596
|
|
|
597
|
+
// Generate a robots.txt file from User-agent groups + sitemap URLs (the inverse of validateRobotsTxt)
|
|
598
|
+
generateRobotsTxt({ groups: [{ userAgents: ["*"], disallow: ["/admin"] }], sitemaps: ["https://example.com/sitemap.xml"] });
|
|
599
|
+
// { text: "User-agent: *\nDisallow: /admin\n\nSitemap: https://example.com/sitemap.xml\n" }
|
|
600
|
+
|
|
597
601
|
// Build and explain a Cache-Control response header from directives
|
|
598
602
|
buildCacheControl({ visibility: "public", maxAge: 3600, mustRevalidate: true });
|
|
599
603
|
// { header: "public, max-age=3600, must-revalidate", directives: [...], warnings: [] }
|
|
@@ -780,7 +784,8 @@ generateCspHeader({ "default-src": ["'self'"], "script-src": ["'self'", "cdn.exa
|
|
|
780
784
|
import { formatSql, minifySql, testRegex, formatHtml, formatGql,
|
|
781
785
|
detectDialect, splitStatements, lookupMime, parseGithubUrl,
|
|
782
786
|
detectRedos, analyzeRegexGroups, testGitignorePatterns, validateEditorConfig,
|
|
783
|
-
validateTsconfig, validatePackageExports, parseConnectionString
|
|
787
|
+
validateTsconfig, validatePackageExports, parseConnectionString,
|
|
788
|
+
validateFenceLanguageTags, countSqlPlaceholders } from "@utilix-tech/sdk/code";
|
|
784
789
|
|
|
785
790
|
// SQL
|
|
786
791
|
formatSql("SELECT id,name FROM users WHERE active=1 ORDER BY name");
|
|
@@ -817,6 +822,14 @@ parseGithubUrl("https://github.com/facebook/react/pull/1234");
|
|
|
817
822
|
parseConnectionString("postgres://user:pass@localhost:5432/mydb?sslmode=require");
|
|
818
823
|
// { scheme: "postgres", user: "user", password: "pass", hosts: [{ host: "localhost", port: 5432 }], database: "mydb", params: { sslmode: "require" } }
|
|
819
824
|
|
|
825
|
+
// Markdown code fence language tag validation
|
|
826
|
+
validateFenceLanguageTags("```JS\nconsole.log(1)\n```\n");
|
|
827
|
+
// { totalFences: 1, issues: [{ line: 1, tag: "JS", issue: "inconsistent-case", suggestion: "js" }] }
|
|
828
|
+
|
|
829
|
+
// SQL query parameter placeholder counting
|
|
830
|
+
countSqlPlaceholders("SELECT * FROM users WHERE id = ? AND age > $1");
|
|
831
|
+
// { placeholders: [...], counts: { anonymous: 1, numbered: 1, "named-colon": 0, "named-at": 0 }, mixedStyles: true, numberedGaps: [], numberedDuplicates: [] }
|
|
832
|
+
|
|
820
833
|
// Regex ReDoS (catastrophic-backtracking) detection
|
|
821
834
|
detectRedos("(a+)+");
|
|
822
835
|
// { risk: "high", safe: false, findings: [{ type: "nested-quantifier", ... }] }
|
|
@@ -1035,9 +1048,9 @@ readMidiInfo(new Uint8Array(midiBytes));
|
|
|
1035
1048
|
| `@utilix-tech/sdk/generators` | UUID v4/v7, ULID, passwords, strength check, entropy estimator, fake data, CSP nonce generator |
|
|
1036
1049
|
| `@utilix-tech/sdk/time` | Date diff, timezone convert, cron parse, relative time |
|
|
1037
1050
|
| `@utilix-tech/sdk/units` | Bytes, CSS px/rem, number bases, currency format, credit card/IBAN/barcode/ISBN/VIN/ISIN validation, loan calculator, EMI calculator, compound/simple interest calculators, VAT/sales tax calculator, tip/bill split calculator, break-even point calculator, Rule of 72 calculator, savings goal calculator, ROI calculator, cash denomination/till calculator, payback period calculator, CD maturity calculator, debt-to-income ratio calculator, freelancer hourly rate calculator, debt snowball/avalanche payoff planner, tax-equivalent yield calculator, mortgage discount points break-even calculator, loan prepayment penalty calculator, data transfer time / required bandwidth estimator, real rate of return (Fisher equation) calculator |
|
|
1038
|
-
| `@utilix-tech/sdk/network` | HTTP status codes, IP validation, country flags, geolocation URLs, HAR file parsing, User-Agent parsing, IPv6 address compress/expand, Permissions-Policy header builder, Client Hints header builder/parser, Content-Disposition header builder/parser, X-Content-Type-Options header builder/risk assessor, sitemap.xml validator, sitemap index splitter, Prefer header builder/parser (RFC 7240), Retry-After header builder/parser (RFC 9110), Priority header builder/parser (RFC 9218), WebSocket close code reference/lookup, Strict-Transport-Security (HSTS) header builder/parser, X-Robots-Tag header builder/parser, WebSocket frame opcode reference/lookup, robots meta tag builder/parser, Cookie header byte-size budget calculator |
|
|
1051
|
+
| `@utilix-tech/sdk/network` | HTTP status codes, IP validation, country flags, geolocation URLs, HAR file parsing, User-Agent parsing, IPv6 address compress/expand, Permissions-Policy header builder, Client Hints header builder/parser, Content-Disposition header builder/parser, X-Content-Type-Options header builder/risk assessor, sitemap.xml validator, sitemap index splitter, robots.txt validator, robots.txt generator, Prefer header builder/parser (RFC 7240), Retry-After header builder/parser (RFC 9110), Priority header builder/parser (RFC 9218), WebSocket close code reference/lookup, Strict-Transport-Security (HSTS) header builder/parser, X-Robots-Tag header builder/parser, WebSocket frame opcode reference/lookup, robots meta tag builder/parser, Cookie header byte-size budget calculator |
|
|
1039
1052
|
| `@utilix-tech/sdk/api` | cURL build/parse, JWT decode/sign, JWKS parse, CORS headers, CSP header, TOTP/HOTP code generator, webhook HMAC signature verifier |
|
|
1040
|
-
| `@utilix-tech/sdk/code` | SQL format/minify, HTML format/minify, regex tester, GraphQL format, MIME type lookup, GitHub URL parsing, regex ReDoS detector, Conventional Commits linter, package.json exports field validator, package.json dependency range auditor, regex capture group/backreference visualizer, SVG sprite symbol extractor, ARIA role & attribute validator |
|
|
1053
|
+
| `@utilix-tech/sdk/code` | SQL format/minify, HTML format/minify, regex tester, GraphQL format, MIME type lookup, GitHub URL parsing, regex ReDoS detector, Conventional Commits linter, package.json exports field validator, package.json dependency range auditor, regex capture group/backreference visualizer, SVG sprite symbol extractor, ARIA role & attribute validator, database connection string parser, Markdown code fence language tag validator, SQL query parameter placeholder counter |
|
|
1041
1054
|
| `@utilix-tech/sdk/color` | Hex/RGB/HSL/HSV/CMYK convert, palette generation, contrast check |
|
|
1042
1055
|
| `@utilix-tech/sdk/css` | CSS gradient, box-shadow, border-radius, keyframe animation generators |
|
|
1043
1056
|
| `@utilix-tech/sdk/misc` | SVG optimize/sanitize, file size format, Unicode inspector |
|
|
@@ -7,6 +7,7 @@ __export(code_exports, {
|
|
|
7
7
|
ALL_FLAGS: () => ALL_FLAGS,
|
|
8
8
|
CHEATSHEET: () => CHEATSHEET,
|
|
9
9
|
DEFAULT_COMMIT_TYPES: () => DEFAULT_COMMIT_TYPES,
|
|
10
|
+
KNOWN_LANGUAGE_TAGS: () => KNOWN_LANGUAGE_TAGS,
|
|
10
11
|
MIME_TABLE: () => MIME_TABLE,
|
|
11
12
|
OPERATIONS: () => OPERATIONS,
|
|
12
13
|
SQL_DEFAULT_OPTIONS: () => SQL_DEFAULT_OPTIONS,
|
|
@@ -19,6 +20,7 @@ __export(code_exports, {
|
|
|
19
20
|
collapseJsWhitespace: () => collapseJsWhitespace,
|
|
20
21
|
countProperties: () => countProperties,
|
|
21
22
|
countRules: () => countRules,
|
|
23
|
+
countSqlPlaceholders: () => countSqlPlaceholders,
|
|
22
24
|
detectDialect: () => detectDialect,
|
|
23
25
|
detectOperationType: () => detectOperationType,
|
|
24
26
|
detectRedos: () => detectRedos,
|
|
@@ -64,6 +66,7 @@ __export(code_exports, {
|
|
|
64
66
|
validateAria: () => validateAria,
|
|
65
67
|
validateEditorConfig: () => validateEditorConfig,
|
|
66
68
|
validateEnvKey: () => validateEnvKey,
|
|
69
|
+
validateFenceLanguageTags: () => validateFenceLanguageTags,
|
|
67
70
|
validatePackageExports: () => validatePackageExports,
|
|
68
71
|
validateTsconfig: () => validateTsconfig
|
|
69
72
|
});
|
|
@@ -3924,5 +3927,346 @@ function parseConnectionString(input) {
|
|
|
3924
3927
|
}
|
|
3925
3928
|
return { scheme, user, password, hosts, database, params };
|
|
3926
3929
|
}
|
|
3930
|
+
var KNOWN_LANGUAGE_TAGS = /* @__PURE__ */ new Set([
|
|
3931
|
+
"js",
|
|
3932
|
+
"jsx",
|
|
3933
|
+
"mjs",
|
|
3934
|
+
"cjs",
|
|
3935
|
+
"javascript",
|
|
3936
|
+
"ts",
|
|
3937
|
+
"tsx",
|
|
3938
|
+
"typescript",
|
|
3939
|
+
"json",
|
|
3940
|
+
"json5",
|
|
3941
|
+
"jsonc",
|
|
3942
|
+
"jsonl",
|
|
3943
|
+
"ndjson",
|
|
3944
|
+
"yaml",
|
|
3945
|
+
"yml",
|
|
3946
|
+
"toml",
|
|
3947
|
+
"ini",
|
|
3948
|
+
"cfg",
|
|
3949
|
+
"conf",
|
|
3950
|
+
"properties",
|
|
3951
|
+
"env",
|
|
3952
|
+
"dotenv",
|
|
3953
|
+
"html",
|
|
3954
|
+
"htm",
|
|
3955
|
+
"xml",
|
|
3956
|
+
"svg",
|
|
3957
|
+
"xhtml",
|
|
3958
|
+
"css",
|
|
3959
|
+
"scss",
|
|
3960
|
+
"sass",
|
|
3961
|
+
"less",
|
|
3962
|
+
"stylus",
|
|
3963
|
+
"styl",
|
|
3964
|
+
"markdown",
|
|
3965
|
+
"md",
|
|
3966
|
+
"mdx",
|
|
3967
|
+
"bash",
|
|
3968
|
+
"sh",
|
|
3969
|
+
"shell",
|
|
3970
|
+
"zsh",
|
|
3971
|
+
"fish",
|
|
3972
|
+
"console",
|
|
3973
|
+
"powershell",
|
|
3974
|
+
"ps1",
|
|
3975
|
+
"bat",
|
|
3976
|
+
"cmd",
|
|
3977
|
+
"python",
|
|
3978
|
+
"py",
|
|
3979
|
+
"py3",
|
|
3980
|
+
"ipynb",
|
|
3981
|
+
"ruby",
|
|
3982
|
+
"rb",
|
|
3983
|
+
"erb",
|
|
3984
|
+
"php",
|
|
3985
|
+
"java",
|
|
3986
|
+
"kotlin",
|
|
3987
|
+
"kt",
|
|
3988
|
+
"kts",
|
|
3989
|
+
"groovy",
|
|
3990
|
+
"gradle",
|
|
3991
|
+
"swift",
|
|
3992
|
+
"objectivec",
|
|
3993
|
+
"objc",
|
|
3994
|
+
"go",
|
|
3995
|
+
"golang",
|
|
3996
|
+
"rust",
|
|
3997
|
+
"rs",
|
|
3998
|
+
"c",
|
|
3999
|
+
"h",
|
|
4000
|
+
"cpp",
|
|
4001
|
+
"cc",
|
|
4002
|
+
"cxx",
|
|
4003
|
+
"hpp",
|
|
4004
|
+
"c++",
|
|
4005
|
+
"csharp",
|
|
4006
|
+
"cs",
|
|
4007
|
+
"fsharp",
|
|
4008
|
+
"fs",
|
|
4009
|
+
"perl",
|
|
4010
|
+
"pl",
|
|
4011
|
+
"lua",
|
|
4012
|
+
"r",
|
|
4013
|
+
"matlab",
|
|
4014
|
+
"m",
|
|
4015
|
+
"scala",
|
|
4016
|
+
"nim",
|
|
4017
|
+
"zig",
|
|
4018
|
+
"julia",
|
|
4019
|
+
"jl",
|
|
4020
|
+
"haskell",
|
|
4021
|
+
"hs",
|
|
4022
|
+
"elixir",
|
|
4023
|
+
"ex",
|
|
4024
|
+
"exs",
|
|
4025
|
+
"erlang",
|
|
4026
|
+
"erl",
|
|
4027
|
+
"clojure",
|
|
4028
|
+
"clj",
|
|
4029
|
+
"cljs",
|
|
4030
|
+
"dart",
|
|
4031
|
+
"ocaml",
|
|
4032
|
+
"ml",
|
|
4033
|
+
"sql",
|
|
4034
|
+
"mysql",
|
|
4035
|
+
"postgresql",
|
|
4036
|
+
"plsql",
|
|
4037
|
+
"sqlite",
|
|
4038
|
+
"graphql",
|
|
4039
|
+
"gql",
|
|
4040
|
+
"dockerfile",
|
|
4041
|
+
"docker",
|
|
4042
|
+
"makefile",
|
|
4043
|
+
"make",
|
|
4044
|
+
"cmake",
|
|
4045
|
+
"nginx",
|
|
4046
|
+
"apache",
|
|
4047
|
+
"diff",
|
|
4048
|
+
"patch",
|
|
4049
|
+
"git",
|
|
4050
|
+
"http",
|
|
4051
|
+
"proto",
|
|
4052
|
+
"protobuf",
|
|
4053
|
+
"csv",
|
|
4054
|
+
"tsv",
|
|
4055
|
+
"vim",
|
|
4056
|
+
"viml",
|
|
4057
|
+
"tex",
|
|
4058
|
+
"latex",
|
|
4059
|
+
"bibtex",
|
|
4060
|
+
"plaintext",
|
|
4061
|
+
"text",
|
|
4062
|
+
"txt",
|
|
4063
|
+
"nohighlight",
|
|
4064
|
+
"none",
|
|
4065
|
+
"asciidoc",
|
|
4066
|
+
"adoc",
|
|
4067
|
+
"rst",
|
|
4068
|
+
"vue",
|
|
4069
|
+
"svelte",
|
|
4070
|
+
"astro",
|
|
4071
|
+
"wasm",
|
|
4072
|
+
"wat",
|
|
4073
|
+
"handlebars",
|
|
4074
|
+
"hbs",
|
|
4075
|
+
"pug",
|
|
4076
|
+
"jade",
|
|
4077
|
+
"coffee",
|
|
4078
|
+
"coffeescript",
|
|
4079
|
+
"actionscript",
|
|
4080
|
+
"terraform",
|
|
4081
|
+
"tf",
|
|
4082
|
+
"hcl",
|
|
4083
|
+
"puppet",
|
|
4084
|
+
"ansible"
|
|
4085
|
+
]);
|
|
4086
|
+
function _parseFenceLine(line) {
|
|
4087
|
+
const match = line.match(/^( {0,3})(`{3,}|~{3,})(.*)$/);
|
|
4088
|
+
if (!match) return null;
|
|
4089
|
+
const [, indent, marker, rest] = match;
|
|
4090
|
+
const char = marker[0];
|
|
4091
|
+
if (char === "`" && rest.includes("`")) return null;
|
|
4092
|
+
return { indent: indent.length, char, length: marker.length, infoString: rest.trim() };
|
|
4093
|
+
}
|
|
4094
|
+
function _isClosingFence(line, fenceChar, fenceLength) {
|
|
4095
|
+
const match = line.match(/^ {0,3}(`+|~+)\s*$/);
|
|
4096
|
+
if (!match) return false;
|
|
4097
|
+
const marker = match[1];
|
|
4098
|
+
return marker[0] === fenceChar && marker.length >= fenceLength;
|
|
4099
|
+
}
|
|
4100
|
+
function validateFenceLanguageTags(markdown) {
|
|
4101
|
+
const lines = markdown.split("\n");
|
|
4102
|
+
const issues = [];
|
|
4103
|
+
let totalFences = 0;
|
|
4104
|
+
let open = null;
|
|
4105
|
+
for (let i = 0; i < lines.length; i++) {
|
|
4106
|
+
const lineNumber = i + 1;
|
|
4107
|
+
const line = lines[i];
|
|
4108
|
+
if (open) {
|
|
4109
|
+
if (_isClosingFence(line, open.char, open.length)) open = null;
|
|
4110
|
+
continue;
|
|
4111
|
+
}
|
|
4112
|
+
const fence = _parseFenceLine(line);
|
|
4113
|
+
if (!fence) continue;
|
|
4114
|
+
totalFences++;
|
|
4115
|
+
const tag = fence.infoString.split(/\s+/)[0] ?? "";
|
|
4116
|
+
open = { char: fence.char, length: fence.length };
|
|
4117
|
+
if (tag === "") {
|
|
4118
|
+
issues.push({ line: lineNumber, tag, issue: "missing" });
|
|
4119
|
+
continue;
|
|
4120
|
+
}
|
|
4121
|
+
const lower = tag.toLowerCase();
|
|
4122
|
+
if (!KNOWN_LANGUAGE_TAGS.has(lower)) {
|
|
4123
|
+
issues.push({ line: lineNumber, tag, issue: "unknown" });
|
|
4124
|
+
continue;
|
|
4125
|
+
}
|
|
4126
|
+
if (tag !== lower) {
|
|
4127
|
+
issues.push({ line: lineNumber, tag, issue: "inconsistent-case", suggestion: lower });
|
|
4128
|
+
}
|
|
4129
|
+
}
|
|
4130
|
+
return { totalFences, issues };
|
|
4131
|
+
}
|
|
4132
|
+
var _IDENT_START = /[A-Za-z_]/;
|
|
4133
|
+
var _IDENT_CHAR = /[A-Za-z0-9_]/;
|
|
4134
|
+
function _readIdentifier(sql, start) {
|
|
4135
|
+
let end = start;
|
|
4136
|
+
while (end < sql.length && _IDENT_CHAR.test(sql[end])) end++;
|
|
4137
|
+
return sql.slice(start, end);
|
|
4138
|
+
}
|
|
4139
|
+
function countSqlPlaceholders(sql) {
|
|
4140
|
+
const placeholders = [];
|
|
4141
|
+
let state = "normal";
|
|
4142
|
+
let i = 0;
|
|
4143
|
+
while (i < sql.length) {
|
|
4144
|
+
const ch = sql[i];
|
|
4145
|
+
const next = sql[i + 1];
|
|
4146
|
+
if (state === "single") {
|
|
4147
|
+
if (ch === "'" && next === "'") {
|
|
4148
|
+
i += 2;
|
|
4149
|
+
continue;
|
|
4150
|
+
}
|
|
4151
|
+
if (ch === "'") {
|
|
4152
|
+
state = "normal";
|
|
4153
|
+
i++;
|
|
4154
|
+
continue;
|
|
4155
|
+
}
|
|
4156
|
+
i++;
|
|
4157
|
+
continue;
|
|
4158
|
+
}
|
|
4159
|
+
if (state === "double") {
|
|
4160
|
+
if (ch === '"' && next === '"') {
|
|
4161
|
+
i += 2;
|
|
4162
|
+
continue;
|
|
4163
|
+
}
|
|
4164
|
+
if (ch === '"') {
|
|
4165
|
+
state = "normal";
|
|
4166
|
+
i++;
|
|
4167
|
+
continue;
|
|
4168
|
+
}
|
|
4169
|
+
i++;
|
|
4170
|
+
continue;
|
|
4171
|
+
}
|
|
4172
|
+
if (state === "line-comment") {
|
|
4173
|
+
if (ch === "\n") state = "normal";
|
|
4174
|
+
i++;
|
|
4175
|
+
continue;
|
|
4176
|
+
}
|
|
4177
|
+
if (state === "block-comment") {
|
|
4178
|
+
if (ch === "*" && next === "/") {
|
|
4179
|
+
state = "normal";
|
|
4180
|
+
i += 2;
|
|
4181
|
+
continue;
|
|
4182
|
+
}
|
|
4183
|
+
i++;
|
|
4184
|
+
continue;
|
|
4185
|
+
}
|
|
4186
|
+
if (ch === "'") {
|
|
4187
|
+
state = "single";
|
|
4188
|
+
i++;
|
|
4189
|
+
continue;
|
|
4190
|
+
}
|
|
4191
|
+
if (ch === '"') {
|
|
4192
|
+
state = "double";
|
|
4193
|
+
i++;
|
|
4194
|
+
continue;
|
|
4195
|
+
}
|
|
4196
|
+
if (ch === "-" && next === "-") {
|
|
4197
|
+
state = "line-comment";
|
|
4198
|
+
i += 2;
|
|
4199
|
+
continue;
|
|
4200
|
+
}
|
|
4201
|
+
if (ch === "/" && next === "*") {
|
|
4202
|
+
state = "block-comment";
|
|
4203
|
+
i += 2;
|
|
4204
|
+
continue;
|
|
4205
|
+
}
|
|
4206
|
+
if (ch === "?") {
|
|
4207
|
+
placeholders.push({ style: "anonymous", raw: "?", index: i });
|
|
4208
|
+
i++;
|
|
4209
|
+
continue;
|
|
4210
|
+
}
|
|
4211
|
+
if (ch === "$" && /[0-9]/.test(next ?? "")) {
|
|
4212
|
+
let end = i + 1;
|
|
4213
|
+
while (end < sql.length && /[0-9]/.test(sql[end])) end++;
|
|
4214
|
+
const raw = sql.slice(i, end);
|
|
4215
|
+
placeholders.push({ style: "numbered", raw, index: i, number: parseInt(raw.slice(1), 10) });
|
|
4216
|
+
i = end;
|
|
4217
|
+
continue;
|
|
4218
|
+
}
|
|
4219
|
+
if (ch === ":") {
|
|
4220
|
+
if (next === ":") {
|
|
4221
|
+
i += 2;
|
|
4222
|
+
continue;
|
|
4223
|
+
}
|
|
4224
|
+
if (next && _IDENT_START.test(next)) {
|
|
4225
|
+
const name = _readIdentifier(sql, i + 1);
|
|
4226
|
+
placeholders.push({ style: "named-colon", raw: `:${name}`, index: i, name });
|
|
4227
|
+
i += 1 + name.length;
|
|
4228
|
+
continue;
|
|
4229
|
+
}
|
|
4230
|
+
i++;
|
|
4231
|
+
continue;
|
|
4232
|
+
}
|
|
4233
|
+
if (ch === "@") {
|
|
4234
|
+
if (next === "@") {
|
|
4235
|
+
i += 2;
|
|
4236
|
+
continue;
|
|
4237
|
+
}
|
|
4238
|
+
if (next && _IDENT_START.test(next)) {
|
|
4239
|
+
const name = _readIdentifier(sql, i + 1);
|
|
4240
|
+
placeholders.push({ style: "named-at", raw: `@${name}`, index: i, name });
|
|
4241
|
+
i += 1 + name.length;
|
|
4242
|
+
continue;
|
|
4243
|
+
}
|
|
4244
|
+
i++;
|
|
4245
|
+
continue;
|
|
4246
|
+
}
|
|
4247
|
+
i++;
|
|
4248
|
+
}
|
|
4249
|
+
const counts = { anonymous: 0, numbered: 0, "named-colon": 0, "named-at": 0 };
|
|
4250
|
+
for (const p of placeholders) counts[p.style]++;
|
|
4251
|
+
const stylesUsed = ["anonymous", "numbered", "named-colon", "named-at"].filter((s) => counts[s] > 0);
|
|
4252
|
+
const numbers = placeholders.filter((p) => p.style === "numbered").map((p) => p.number);
|
|
4253
|
+
const maxNumber = numbers.length > 0 ? Math.max(...numbers) : 0;
|
|
4254
|
+
const seen = new Set(numbers);
|
|
4255
|
+
const numberedGaps = [];
|
|
4256
|
+
for (let n = 1; n < maxNumber; n++) {
|
|
4257
|
+
if (!seen.has(n)) numberedGaps.push(n);
|
|
4258
|
+
}
|
|
4259
|
+
const countedMap = /* @__PURE__ */ new Map();
|
|
4260
|
+
for (const n of numbers) countedMap.set(n, (countedMap.get(n) ?? 0) + 1);
|
|
4261
|
+
const numberedDuplicates = [...countedMap.entries()].filter(([, c]) => c > 1).map(([n]) => n).sort((a, b) => a - b);
|
|
4262
|
+
return {
|
|
4263
|
+
placeholders,
|
|
4264
|
+
counts,
|
|
4265
|
+
stylesUsed,
|
|
4266
|
+
mixedStyles: stylesUsed.length > 1,
|
|
4267
|
+
numberedGaps,
|
|
4268
|
+
numberedDuplicates
|
|
4269
|
+
};
|
|
4270
|
+
}
|
|
3927
4271
|
|
|
3928
|
-
export { ALL_FLAGS, CHEATSHEET, DEFAULT_COMMIT_TYPES, MIME_TABLE, OPERATIONS, SQL_DEFAULT_OPTIONS, analyzeRegexGroups, auditDependencyRanges, buildDockerPull, buildDockerRun, buildGitCommand, code_exports, collapseHtmlWhitespace, collapseJsWhitespace, countProperties, countRules, detectDialect, detectOperationType, detectRedos, envToExport, envToJson, extractMarkdownFootnotes, extractSvgSpriteSymbols, formatCss, formatGql, formatHtml, formatSql, getEndpointsByTag, getHtmlStats, getJsStats, getMethodColor, isValidTag, lintConventionalCommit, lookupMime, minifyCss, minifyGql, minifyHtml, minifyJs, minifySql, normalizeRef, parseCommitTrailers, parseConnectionString, parseDockerImage, parseEnv, parseGitCommand, parseGithubUrl, parseSpec, removeConsoleCalls, removeEmptyAttributes, removeHtmlComments, removeJsComments, removeRedundantAttributes, searchCheatsheet, searchEndpoints, splitStatements, testGitignorePatterns, testPattern, testRegex, validateAria, validateEditorConfig, validateEnvKey, validatePackageExports, validateTsconfig };
|
|
4272
|
+
export { ALL_FLAGS, CHEATSHEET, DEFAULT_COMMIT_TYPES, KNOWN_LANGUAGE_TAGS, MIME_TABLE, OPERATIONS, SQL_DEFAULT_OPTIONS, analyzeRegexGroups, auditDependencyRanges, buildDockerPull, buildDockerRun, buildGitCommand, code_exports, collapseHtmlWhitespace, collapseJsWhitespace, countProperties, countRules, countSqlPlaceholders, detectDialect, detectOperationType, detectRedos, envToExport, envToJson, extractMarkdownFootnotes, extractSvgSpriteSymbols, formatCss, formatGql, formatHtml, formatSql, getEndpointsByTag, getHtmlStats, getJsStats, getMethodColor, isValidTag, lintConventionalCommit, lookupMime, minifyCss, minifyGql, minifyHtml, minifyJs, minifySql, normalizeRef, parseCommitTrailers, parseConnectionString, parseDockerImage, parseEnv, parseGitCommand, parseGithubUrl, parseSpec, removeConsoleCalls, removeEmptyAttributes, removeHtmlComments, removeJsComments, removeRedundantAttributes, searchCheatsheet, searchEndpoints, splitStatements, testGitignorePatterns, testPattern, testRegex, validateAria, validateEditorConfig, validateEnvKey, validateFenceLanguageTags, validatePackageExports, validateTsconfig };
|
|
@@ -38,6 +38,7 @@ __export(network_exports, {
|
|
|
38
38
|
extractMultipartBoundary: () => extractMultipartBoundary,
|
|
39
39
|
formatCoordinates: () => formatCoordinates,
|
|
40
40
|
formatTtl: () => formatTtl,
|
|
41
|
+
generateRobotsTxt: () => generateRobotsTxt,
|
|
41
42
|
getByCategory: () => getByCategory,
|
|
42
43
|
getHeader: () => getHeader,
|
|
43
44
|
getHeadersByCategory: () => getHeadersByCategory,
|
|
@@ -1711,6 +1712,40 @@ function validateRobotsTxt(text) {
|
|
|
1711
1712
|
const valid = !issues.some((i) => i.severity === "error");
|
|
1712
1713
|
return { groups, sitemaps, issues, valid };
|
|
1713
1714
|
}
|
|
1715
|
+
function generateRobotsTxt(options) {
|
|
1716
|
+
if (!options || !Array.isArray(options.groups) || options.groups.length === 0) {
|
|
1717
|
+
return { error: "At least one group with a user-agent is required" };
|
|
1718
|
+
}
|
|
1719
|
+
const lines = [];
|
|
1720
|
+
for (const group of options.groups) {
|
|
1721
|
+
const userAgents = (group.userAgents ?? []).map((a) => a.trim()).filter(Boolean);
|
|
1722
|
+
if (userAgents.length === 0) return { error: "Each group needs at least one non-empty user-agent" };
|
|
1723
|
+
for (const ua of userAgents) lines.push(`User-agent: ${ua}`);
|
|
1724
|
+
const disallow = group.disallow ?? [];
|
|
1725
|
+
const allow = group.allow ?? [];
|
|
1726
|
+
if (disallow.length === 0 && allow.length === 0) {
|
|
1727
|
+
lines.push("Disallow:");
|
|
1728
|
+
} else {
|
|
1729
|
+
for (const value of disallow) lines.push(`Disallow: ${value}`);
|
|
1730
|
+
for (const value of allow) lines.push(`Allow: ${value}`);
|
|
1731
|
+
}
|
|
1732
|
+
if (group.crawlDelay !== void 0) {
|
|
1733
|
+
if (!Number.isFinite(group.crawlDelay) || group.crawlDelay < 0) {
|
|
1734
|
+
return { error: "crawlDelay must be a non-negative number" };
|
|
1735
|
+
}
|
|
1736
|
+
lines.push(`Crawl-delay: ${group.crawlDelay}`);
|
|
1737
|
+
}
|
|
1738
|
+
lines.push("");
|
|
1739
|
+
}
|
|
1740
|
+
for (const sitemap of options.sitemaps ?? []) {
|
|
1741
|
+
if (!/^https?:\/\//i.test(sitemap)) {
|
|
1742
|
+
return { error: `Sitemap URL "${sitemap}" must be absolute (start with http:// or https://)` };
|
|
1743
|
+
}
|
|
1744
|
+
lines.push(`Sitemap: ${sitemap}`);
|
|
1745
|
+
}
|
|
1746
|
+
while (lines.length > 0 && lines[lines.length - 1] === "") lines.pop();
|
|
1747
|
+
return { text: lines.join("\n") + "\n" };
|
|
1748
|
+
}
|
|
1714
1749
|
var UA_BOT_PATTERNS = [
|
|
1715
1750
|
[/googlebot/i, "Googlebot"],
|
|
1716
1751
|
[/bingbot/i, "Bingbot"],
|
|
@@ -3630,4 +3665,4 @@ function scoreSecurityHeaders(rawHeaders) {
|
|
|
3630
3665
|
return { checks, score, grade, passCount, warningCount, missingCount, totalChecks };
|
|
3631
3666
|
}
|
|
3632
3667
|
|
|
3633
|
-
export { CLIENT_HINTS, DNS_RECORD_TYPES, HTTP_HEADERS, LINK_REL_VALUES, PERMISSIONS_POLICY_FEATURES, REFERRER_POLICY_VALUES, STATUS_CODES, X_CONTENT_TYPE_OPTIONS_HEADER, analyzeEmailHeaders, assessContentTypeRisk, buildAcceptLanguage, buildCacheControl, buildClientHints, buildContentDisposition, buildDnsQueryUrl, buildGeoUrl, buildHsts, buildLinkHeader, buildMapUrl, buildPermissionsPolicy, buildPreferHeader, buildPriorityHeader, buildRangeHeader, buildReferrerPolicy, buildRetryAfterHeader, buildRobotsMetaTag, buildVaryHeader, buildXContentTypeOptionsHeader, buildXRobotsTag, calculateCookieSizeBudget, checkSetCookieHeader, countryCodeToFlag, extractMultipartBoundary, formatCoordinates, formatTtl, getByCategory, getHeader, getHeadersByCategory, getStatusByCategory, getStatusCode, isClientError, isServerError, isSuccess, isValidIp, isValidIpv4, isValidIpv6, listCloseCodes, listOpcodes, lookupCloseCode, lookupOpcode, network_exports, parseAcceptLanguage, parseClientHintHeaders, parseContentDisposition, parseContentRangeHeader, parseDnsResponse, parseGeoResponse, parseHar, parseHsts, parseIpv6Address, parseMultipartFormData, parsePermissionsPolicy, parsePreferHeader, parsePriorityHeader, parseRetryAfterHeader, parseRobotsMetaTag, parseUserAgent, parseVaryHeader, parseXContentTypeOptionsHeader, parseXRobotsTag, scoreSecurityHeaders, searchHeaders, searchStatusCodes, splitSitemap, statusCodeToText, typeNumberToLabel, validateDomain, validateHeaderName, validateHeaderValue, validateManifest, validateRobotsTxt, validateSitemap };
|
|
3668
|
+
export { CLIENT_HINTS, DNS_RECORD_TYPES, HTTP_HEADERS, LINK_REL_VALUES, PERMISSIONS_POLICY_FEATURES, REFERRER_POLICY_VALUES, STATUS_CODES, X_CONTENT_TYPE_OPTIONS_HEADER, analyzeEmailHeaders, assessContentTypeRisk, buildAcceptLanguage, buildCacheControl, buildClientHints, buildContentDisposition, buildDnsQueryUrl, buildGeoUrl, buildHsts, buildLinkHeader, buildMapUrl, buildPermissionsPolicy, buildPreferHeader, buildPriorityHeader, buildRangeHeader, buildReferrerPolicy, buildRetryAfterHeader, buildRobotsMetaTag, buildVaryHeader, buildXContentTypeOptionsHeader, buildXRobotsTag, calculateCookieSizeBudget, checkSetCookieHeader, countryCodeToFlag, extractMultipartBoundary, formatCoordinates, formatTtl, generateRobotsTxt, getByCategory, getHeader, getHeadersByCategory, getStatusByCategory, getStatusCode, isClientError, isServerError, isSuccess, isValidIp, isValidIpv4, isValidIpv6, listCloseCodes, listOpcodes, lookupCloseCode, lookupOpcode, network_exports, parseAcceptLanguage, parseClientHintHeaders, parseContentDisposition, parseContentRangeHeader, parseDnsResponse, parseGeoResponse, parseHar, parseHsts, parseIpv6Address, parseMultipartFormData, parsePermissionsPolicy, parsePreferHeader, parsePriorityHeader, parseRetryAfterHeader, parseRobotsMetaTag, parseUserAgent, parseVaryHeader, parseXContentTypeOptionsHeader, parseXRobotsTag, scoreSecurityHeaders, searchHeaders, searchStatusCodes, splitSitemap, statusCodeToText, typeNumberToLabel, validateDomain, validateHeaderName, validateHeaderValue, validateManifest, validateRobotsTxt, validateSitemap };
|
|
@@ -32,6 +32,8 @@
|
|
|
32
32
|
* - markdown-footnote-extractor (extractMarkdownFootnotes)
|
|
33
33
|
* - aria-validator (validateAria)
|
|
34
34
|
* - connection-string-parser (parseConnectionString)
|
|
35
|
+
* - markdown-fence-lang-validator (validateFenceLanguageTags, KNOWN_LANGUAGE_TAGS)
|
|
36
|
+
* - sql-placeholder-counter (countSqlPlaceholders)
|
|
35
37
|
*/
|
|
36
38
|
type RegexFlag = 'g' | 'i' | 'm' | 's' | 'u';
|
|
37
39
|
declare const ALL_FLAGS: RegexFlag[];
|
|
@@ -674,6 +676,48 @@ interface ConnectionStringResult {
|
|
|
674
676
|
declare function parseConnectionString(input: string): ConnectionStringResult | {
|
|
675
677
|
error: string;
|
|
676
678
|
};
|
|
679
|
+
type FenceTagIssueType = 'missing' | 'unknown' | 'inconsistent-case';
|
|
680
|
+
interface FenceTagIssue {
|
|
681
|
+
line: number;
|
|
682
|
+
tag: string;
|
|
683
|
+
issue: FenceTagIssueType;
|
|
684
|
+
suggestion?: string;
|
|
685
|
+
}
|
|
686
|
+
interface FenceValidationResult {
|
|
687
|
+
totalFences: number;
|
|
688
|
+
issues: FenceTagIssue[];
|
|
689
|
+
}
|
|
690
|
+
declare const KNOWN_LANGUAGE_TAGS: Set<string>;
|
|
691
|
+
/**
|
|
692
|
+
* Scans a Markdown document's fenced code blocks and flags ones with a
|
|
693
|
+
* missing, unknown, or inconsistently-cased language tag (compared against
|
|
694
|
+
* a curated list of common syntax-highlighter language identifiers).
|
|
695
|
+
*/
|
|
696
|
+
declare function validateFenceLanguageTags(markdown: string): FenceValidationResult;
|
|
697
|
+
type PlaceholderStyle = 'anonymous' | 'numbered' | 'named-colon' | 'named-at';
|
|
698
|
+
interface SqlPlaceholder {
|
|
699
|
+
style: PlaceholderStyle;
|
|
700
|
+
raw: string;
|
|
701
|
+
index: number;
|
|
702
|
+
name?: string;
|
|
703
|
+
number?: number;
|
|
704
|
+
}
|
|
705
|
+
interface SqlPlaceholderResult {
|
|
706
|
+
placeholders: SqlPlaceholder[];
|
|
707
|
+
counts: Record<PlaceholderStyle, number>;
|
|
708
|
+
stylesUsed: PlaceholderStyle[];
|
|
709
|
+
mixedStyles: boolean;
|
|
710
|
+
numberedGaps: number[];
|
|
711
|
+
numberedDuplicates: number[];
|
|
712
|
+
}
|
|
713
|
+
/**
|
|
714
|
+
* Scans a SQL query string for positional (`?`, `$1`) and named (`:name`,
|
|
715
|
+
* `@name`) parameter placeholders, skipping over single/double-quoted
|
|
716
|
+
* string literals and line/block comments so a placeholder-looking
|
|
717
|
+
* character inside either is never counted. Postgres dollar-quoted string
|
|
718
|
+
* bodies (`$$...$$`) are not specially recognized.
|
|
719
|
+
*/
|
|
720
|
+
declare function countSqlPlaceholders(sql: string): SqlPlaceholderResult;
|
|
677
721
|
|
|
678
722
|
declare const code_ALL_FLAGS: typeof ALL_FLAGS;
|
|
679
723
|
type code_ApiEndpoint = ApiEndpoint;
|
|
@@ -710,6 +754,9 @@ type code_EnvParseResult = EnvParseResult;
|
|
|
710
754
|
type code_ExportsIssue = ExportsIssue;
|
|
711
755
|
type code_ExportsShape = ExportsShape;
|
|
712
756
|
type code_ExportsValidationResult = ExportsValidationResult;
|
|
757
|
+
type code_FenceTagIssue = FenceTagIssue;
|
|
758
|
+
type code_FenceTagIssueType = FenceTagIssueType;
|
|
759
|
+
type code_FenceValidationResult = FenceValidationResult;
|
|
713
760
|
type code_GitCommandConfig = GitCommandConfig;
|
|
714
761
|
type code_GitCommandResult = GitCommandResult;
|
|
715
762
|
type code_GitOperation = GitOperation;
|
|
@@ -722,6 +769,7 @@ type code_HtmlMinifyOptions = HtmlMinifyOptions;
|
|
|
722
769
|
type code_HtmlMinifyResult = HtmlMinifyResult;
|
|
723
770
|
type code_JsMinifyOptions = JsMinifyOptions;
|
|
724
771
|
type code_JsMinifyResult = JsMinifyResult;
|
|
772
|
+
declare const code_KNOWN_LANGUAGE_TAGS: typeof KNOWN_LANGUAGE_TAGS;
|
|
725
773
|
declare const code_MIME_TABLE: typeof MIME_TABLE;
|
|
726
774
|
type code_MarkdownFootnoteDefinition = MarkdownFootnoteDefinition;
|
|
727
775
|
type code_MarkdownFootnoteReference = MarkdownFootnoteReference;
|
|
@@ -731,6 +779,7 @@ type code_MimeEntry = MimeEntry;
|
|
|
731
779
|
type code_MimeLookupResult = MimeLookupResult;
|
|
732
780
|
declare const code_OPERATIONS: typeof OPERATIONS;
|
|
733
781
|
type code_ParsedSpec = ParsedSpec;
|
|
782
|
+
type code_PlaceholderStyle = PlaceholderStyle;
|
|
734
783
|
type code_RedosFinding = RedosFinding;
|
|
735
784
|
type code_RedosResult = RedosResult;
|
|
736
785
|
type code_RedosSeverity = RedosSeverity;
|
|
@@ -748,6 +797,8 @@ type code_Segment = Segment;
|
|
|
748
797
|
type code_SpecVersion = SpecVersion;
|
|
749
798
|
type code_SqlDialect = SqlDialect;
|
|
750
799
|
type code_SqlFormatOptions = SqlFormatOptions;
|
|
800
|
+
type code_SqlPlaceholder = SqlPlaceholder;
|
|
801
|
+
type code_SqlPlaceholderResult = SqlPlaceholderResult;
|
|
751
802
|
type code_SvgSpriteResult = SvgSpriteResult;
|
|
752
803
|
type code_SvgSpriteSymbol = SvgSpriteSymbol;
|
|
753
804
|
type code_TestPatternResult = TestPatternResult;
|
|
@@ -762,6 +813,7 @@ declare const code_collapseHtmlWhitespace: typeof collapseHtmlWhitespace;
|
|
|
762
813
|
declare const code_collapseJsWhitespace: typeof collapseJsWhitespace;
|
|
763
814
|
declare const code_countProperties: typeof countProperties;
|
|
764
815
|
declare const code_countRules: typeof countRules;
|
|
816
|
+
declare const code_countSqlPlaceholders: typeof countSqlPlaceholders;
|
|
765
817
|
declare const code_detectDialect: typeof detectDialect;
|
|
766
818
|
declare const code_detectOperationType: typeof detectOperationType;
|
|
767
819
|
declare const code_detectRedos: typeof detectRedos;
|
|
@@ -807,10 +859,11 @@ declare const code_testRegex: typeof testRegex;
|
|
|
807
859
|
declare const code_validateAria: typeof validateAria;
|
|
808
860
|
declare const code_validateEditorConfig: typeof validateEditorConfig;
|
|
809
861
|
declare const code_validateEnvKey: typeof validateEnvKey;
|
|
862
|
+
declare const code_validateFenceLanguageTags: typeof validateFenceLanguageTags;
|
|
810
863
|
declare const code_validatePackageExports: typeof validatePackageExports;
|
|
811
864
|
declare const code_validateTsconfig: typeof validateTsconfig;
|
|
812
865
|
declare namespace code {
|
|
813
|
-
export { code_ALL_FLAGS as ALL_FLAGS, type code_ApiEndpoint as ApiEndpoint, type code_ApiInfo as ApiInfo, type code_AriaIssue as AriaIssue, type code_AriaValidationResult as AriaValidationResult, code_CHEATSHEET as CHEATSHEET, type code_CheatsheetEntry as CheatsheetEntry, type code_CommitTrailer as CommitTrailer, type code_CommitTrailerResult as CommitTrailerResult, type code_ConnectionStringHost as ConnectionStringHost, type code_ConnectionStringResult as ConnectionStringResult, type code_ConventionalCommitFinding as ConventionalCommitFinding, type code_ConventionalCommitFooter as ConventionalCommitFooter, type code_ConventionalCommitOptions as ConventionalCommitOptions, type code_ConventionalCommitParsed as ConventionalCommitParsed, type code_ConventionalCommitResult as ConventionalCommitResult, type code_ConventionalCommitSeverity as ConventionalCommitSeverity, type code_CssResult as CssResult, code_DEFAULT_COMMIT_TYPES as DEFAULT_COMMIT_TYPES, type code_DependencyAuditDuplicate as DependencyAuditDuplicate, type code_DependencyAuditEntry as DependencyAuditEntry, type code_DependencyAuditIssue as DependencyAuditIssue, type code_DependencyAuditResult as DependencyAuditResult, type code_DependencyRangeType as DependencyRangeType, type code_DependencySection as DependencySection, type code_DockerImageRef as DockerImageRef, type code_EditorConfigIssue as EditorConfigIssue, type code_EditorConfigProperty as EditorConfigProperty, type code_EditorConfigSection as EditorConfigSection, type code_EditorConfigValidationResult as EditorConfigValidationResult, type code_EnvEntry as EnvEntry, type code_EnvParseResult as EnvParseResult, type code_ExportsIssue as ExportsIssue, type code_ExportsShape as ExportsShape, type code_ExportsValidationResult as ExportsValidationResult, type code_GitCommandConfig as GitCommandConfig, type code_GitCommandResult as GitCommandResult, type code_GitOperation as GitOperation, type code_GithubUrlInfo as GithubUrlInfo, type code_GithubUrlType as GithubUrlType, type code_GitignoreTestResult as GitignoreTestResult, type code_GqlFormatResult as GqlFormatResult, type code_HtmlFormatResult as HtmlFormatResult, type code_HtmlMinifyOptions as HtmlMinifyOptions, type code_HtmlMinifyResult as HtmlMinifyResult, type code_JsMinifyOptions as JsMinifyOptions, type code_JsMinifyResult as JsMinifyResult, code_MIME_TABLE as MIME_TABLE, type code_MarkdownFootnoteDefinition as MarkdownFootnoteDefinition, type code_MarkdownFootnoteReference as MarkdownFootnoteReference, type code_MarkdownFootnoteResult as MarkdownFootnoteResult, type code_MatchResult as MatchResult, type code_MimeEntry as MimeEntry, type code_MimeLookupResult as MimeLookupResult, code_OPERATIONS as OPERATIONS, type code_ParsedSpec as ParsedSpec, type code_RedosFinding as RedosFinding, type code_RedosResult as RedosResult, type code_RedosSeverity as RedosSeverity, type code_RegexBackreferenceInfo as RegexBackreferenceInfo, type code_RegexError as RegexError, type code_RegexFlag as RegexFlag, type code_RegexGroupAnalysis as RegexGroupAnalysis, type code_RegexGroupInfo as RegexGroupInfo, type code_RegexGroupIssue as RegexGroupIssue, type code_RegexMatch as RegexMatch, type code_RegexResult as RegexResult, type code_RegexSuccess as RegexSuccess, code_SQL_DEFAULT_OPTIONS as SQL_DEFAULT_OPTIONS, type code_Segment as Segment, type code_SpecVersion as SpecVersion, type code_SqlDialect as SqlDialect, type code_SqlFormatOptions as SqlFormatOptions, type code_SvgSpriteResult as SvgSpriteResult, type code_SvgSpriteSymbol as SvgSpriteSymbol, type code_TestPatternResult as TestPatternResult, type code_TsconfigIssue as TsconfigIssue, type code_TsconfigValidationResult as TsconfigValidationResult, code_analyzeRegexGroups as analyzeRegexGroups, code_auditDependencyRanges as auditDependencyRanges, code_buildDockerPull as buildDockerPull, code_buildDockerRun as buildDockerRun, code_buildGitCommand as buildGitCommand, code_collapseHtmlWhitespace as collapseHtmlWhitespace, code_collapseJsWhitespace as collapseJsWhitespace, code_countProperties as countProperties, code_countRules as countRules, code_detectDialect as detectDialect, code_detectOperationType as detectOperationType, code_detectRedos as detectRedos, code_envToExport as envToExport, code_envToJson as envToJson, code_extractMarkdownFootnotes as extractMarkdownFootnotes, code_extractSvgSpriteSymbols as extractSvgSpriteSymbols, code_formatCss as formatCss, code_formatGql as formatGql, code_formatHtml as formatHtml, code_formatSql as formatSql, code_getEndpointsByTag as getEndpointsByTag, code_getHtmlStats as getHtmlStats, code_getJsStats as getJsStats, code_getMethodColor as getMethodColor, code_isValidTag as isValidTag, code_lintConventionalCommit as lintConventionalCommit, code_lookupMime as lookupMime, code_minifyCss as minifyCss, code_minifyGql as minifyGql, code_minifyHtml as minifyHtml, code_minifyJs as minifyJs, code_minifySql as minifySql, code_normalizeRef as normalizeRef, code_parseCommitTrailers as parseCommitTrailers, code_parseConnectionString as parseConnectionString, code_parseDockerImage as parseDockerImage, code_parseEnv as parseEnv, code_parseGitCommand as parseGitCommand, code_parseGithubUrl as parseGithubUrl, code_parseSpec as parseSpec, code_removeConsoleCalls as removeConsoleCalls, code_removeEmptyAttributes as removeEmptyAttributes, code_removeHtmlComments as removeHtmlComments, code_removeJsComments as removeJsComments, code_removeRedundantAttributes as removeRedundantAttributes, code_searchCheatsheet as searchCheatsheet, code_searchEndpoints as searchEndpoints, code_splitStatements as splitStatements, code_testGitignorePatterns as testGitignorePatterns, code_testPattern as testPattern, code_testRegex as testRegex, code_validateAria as validateAria, code_validateEditorConfig as validateEditorConfig, code_validateEnvKey as validateEnvKey, code_validatePackageExports as validatePackageExports, code_validateTsconfig as validateTsconfig };
|
|
866
|
+
export { code_ALL_FLAGS as ALL_FLAGS, type code_ApiEndpoint as ApiEndpoint, type code_ApiInfo as ApiInfo, type code_AriaIssue as AriaIssue, type code_AriaValidationResult as AriaValidationResult, code_CHEATSHEET as CHEATSHEET, type code_CheatsheetEntry as CheatsheetEntry, type code_CommitTrailer as CommitTrailer, type code_CommitTrailerResult as CommitTrailerResult, type code_ConnectionStringHost as ConnectionStringHost, type code_ConnectionStringResult as ConnectionStringResult, type code_ConventionalCommitFinding as ConventionalCommitFinding, type code_ConventionalCommitFooter as ConventionalCommitFooter, type code_ConventionalCommitOptions as ConventionalCommitOptions, type code_ConventionalCommitParsed as ConventionalCommitParsed, type code_ConventionalCommitResult as ConventionalCommitResult, type code_ConventionalCommitSeverity as ConventionalCommitSeverity, type code_CssResult as CssResult, code_DEFAULT_COMMIT_TYPES as DEFAULT_COMMIT_TYPES, type code_DependencyAuditDuplicate as DependencyAuditDuplicate, type code_DependencyAuditEntry as DependencyAuditEntry, type code_DependencyAuditIssue as DependencyAuditIssue, type code_DependencyAuditResult as DependencyAuditResult, type code_DependencyRangeType as DependencyRangeType, type code_DependencySection as DependencySection, type code_DockerImageRef as DockerImageRef, type code_EditorConfigIssue as EditorConfigIssue, type code_EditorConfigProperty as EditorConfigProperty, type code_EditorConfigSection as EditorConfigSection, type code_EditorConfigValidationResult as EditorConfigValidationResult, type code_EnvEntry as EnvEntry, type code_EnvParseResult as EnvParseResult, type code_ExportsIssue as ExportsIssue, type code_ExportsShape as ExportsShape, type code_ExportsValidationResult as ExportsValidationResult, type code_FenceTagIssue as FenceTagIssue, type code_FenceTagIssueType as FenceTagIssueType, type code_FenceValidationResult as FenceValidationResult, type code_GitCommandConfig as GitCommandConfig, type code_GitCommandResult as GitCommandResult, type code_GitOperation as GitOperation, type code_GithubUrlInfo as GithubUrlInfo, type code_GithubUrlType as GithubUrlType, type code_GitignoreTestResult as GitignoreTestResult, type code_GqlFormatResult as GqlFormatResult, type code_HtmlFormatResult as HtmlFormatResult, type code_HtmlMinifyOptions as HtmlMinifyOptions, type code_HtmlMinifyResult as HtmlMinifyResult, type code_JsMinifyOptions as JsMinifyOptions, type code_JsMinifyResult as JsMinifyResult, code_KNOWN_LANGUAGE_TAGS as KNOWN_LANGUAGE_TAGS, code_MIME_TABLE as MIME_TABLE, type code_MarkdownFootnoteDefinition as MarkdownFootnoteDefinition, type code_MarkdownFootnoteReference as MarkdownFootnoteReference, type code_MarkdownFootnoteResult as MarkdownFootnoteResult, type code_MatchResult as MatchResult, type code_MimeEntry as MimeEntry, type code_MimeLookupResult as MimeLookupResult, code_OPERATIONS as OPERATIONS, type code_ParsedSpec as ParsedSpec, type code_PlaceholderStyle as PlaceholderStyle, type code_RedosFinding as RedosFinding, type code_RedosResult as RedosResult, type code_RedosSeverity as RedosSeverity, type code_RegexBackreferenceInfo as RegexBackreferenceInfo, type code_RegexError as RegexError, type code_RegexFlag as RegexFlag, type code_RegexGroupAnalysis as RegexGroupAnalysis, type code_RegexGroupInfo as RegexGroupInfo, type code_RegexGroupIssue as RegexGroupIssue, type code_RegexMatch as RegexMatch, type code_RegexResult as RegexResult, type code_RegexSuccess as RegexSuccess, code_SQL_DEFAULT_OPTIONS as SQL_DEFAULT_OPTIONS, type code_Segment as Segment, type code_SpecVersion as SpecVersion, type code_SqlDialect as SqlDialect, type code_SqlFormatOptions as SqlFormatOptions, type code_SqlPlaceholder as SqlPlaceholder, type code_SqlPlaceholderResult as SqlPlaceholderResult, type code_SvgSpriteResult as SvgSpriteResult, type code_SvgSpriteSymbol as SvgSpriteSymbol, type code_TestPatternResult as TestPatternResult, type code_TsconfigIssue as TsconfigIssue, type code_TsconfigValidationResult as TsconfigValidationResult, code_analyzeRegexGroups as analyzeRegexGroups, code_auditDependencyRanges as auditDependencyRanges, code_buildDockerPull as buildDockerPull, code_buildDockerRun as buildDockerRun, code_buildGitCommand as buildGitCommand, code_collapseHtmlWhitespace as collapseHtmlWhitespace, code_collapseJsWhitespace as collapseJsWhitespace, code_countProperties as countProperties, code_countRules as countRules, code_countSqlPlaceholders as countSqlPlaceholders, code_detectDialect as detectDialect, code_detectOperationType as detectOperationType, code_detectRedos as detectRedos, code_envToExport as envToExport, code_envToJson as envToJson, code_extractMarkdownFootnotes as extractMarkdownFootnotes, code_extractSvgSpriteSymbols as extractSvgSpriteSymbols, code_formatCss as formatCss, code_formatGql as formatGql, code_formatHtml as formatHtml, code_formatSql as formatSql, code_getEndpointsByTag as getEndpointsByTag, code_getHtmlStats as getHtmlStats, code_getJsStats as getJsStats, code_getMethodColor as getMethodColor, code_isValidTag as isValidTag, code_lintConventionalCommit as lintConventionalCommit, code_lookupMime as lookupMime, code_minifyCss as minifyCss, code_minifyGql as minifyGql, code_minifyHtml as minifyHtml, code_minifyJs as minifyJs, code_minifySql as minifySql, code_normalizeRef as normalizeRef, code_parseCommitTrailers as parseCommitTrailers, code_parseConnectionString as parseConnectionString, code_parseDockerImage as parseDockerImage, code_parseEnv as parseEnv, code_parseGitCommand as parseGitCommand, code_parseGithubUrl as parseGithubUrl, code_parseSpec as parseSpec, code_removeConsoleCalls as removeConsoleCalls, code_removeEmptyAttributes as removeEmptyAttributes, code_removeHtmlComments as removeHtmlComments, code_removeJsComments as removeJsComments, code_removeRedundantAttributes as removeRedundantAttributes, code_searchCheatsheet as searchCheatsheet, code_searchEndpoints as searchEndpoints, code_splitStatements as splitStatements, code_testGitignorePatterns as testGitignorePatterns, code_testPattern as testPattern, code_testRegex as testRegex, code_validateAria as validateAria, code_validateEditorConfig as validateEditorConfig, code_validateEnvKey as validateEnvKey, code_validateFenceLanguageTags as validateFenceLanguageTags, code_validatePackageExports as validatePackageExports, code_validateTsconfig as validateTsconfig };
|
|
814
867
|
}
|
|
815
868
|
|
|
816
|
-
export { type
|
|
869
|
+
export { type MarkdownFootnoteDefinition as $, ALL_FLAGS as A, type EditorConfigValidationResult as B, CHEATSHEET as C, DEFAULT_COMMIT_TYPES as D, type EditorConfigIssue as E, type EnvEntry as F, type EnvParseResult as G, type ExportsIssue as H, type ExportsShape as I, type ExportsValidationResult as J, type FenceTagIssue as K, type FenceTagIssueType as L, type FenceValidationResult as M, type GitCommandConfig as N, type GitCommandResult as O, type GitOperation as P, type GithubUrlInfo as Q, type GithubUrlType as R, type GitignoreTestResult as S, type GqlFormatResult as T, type HtmlFormatResult as U, type HtmlMinifyOptions as V, type HtmlMinifyResult as W, type JsMinifyOptions as X, type JsMinifyResult as Y, KNOWN_LANGUAGE_TAGS as Z, MIME_TABLE as _, type ApiEndpoint as a, minifyJs as a$, type MarkdownFootnoteReference as a0, type MarkdownFootnoteResult as a1, type MatchResult as a2, type MimeEntry as a3, type MimeLookupResult as a4, OPERATIONS as a5, type ParsedSpec as a6, type PlaceholderStyle as a7, type RedosFinding as a8, type RedosResult as a9, buildGitCommand as aA, collapseHtmlWhitespace as aB, collapseJsWhitespace as aC, countProperties as aD, countRules as aE, countSqlPlaceholders as aF, detectDialect as aG, detectOperationType as aH, detectRedos as aI, envToExport as aJ, envToJson as aK, extractMarkdownFootnotes as aL, extractSvgSpriteSymbols as aM, formatCss as aN, formatGql as aO, formatHtml as aP, formatSql as aQ, getEndpointsByTag as aR, getHtmlStats as aS, getJsStats as aT, getMethodColor as aU, isValidTag as aV, lintConventionalCommit as aW, lookupMime as aX, minifyCss as aY, minifyGql as aZ, minifyHtml as a_, type RedosSeverity as aa, type RegexBackreferenceInfo as ab, type RegexError as ac, type RegexFlag as ad, type RegexGroupAnalysis as ae, type RegexGroupInfo as af, type RegexGroupIssue as ag, type RegexMatch as ah, type RegexResult as ai, type RegexSuccess as aj, SQL_DEFAULT_OPTIONS as ak, type Segment as al, type SpecVersion as am, type SqlDialect as an, type SqlFormatOptions as ao, type SqlPlaceholder as ap, type SqlPlaceholderResult as aq, type SvgSpriteResult as ar, type SvgSpriteSymbol as as, type TestPatternResult as at, type TsconfigIssue as au, type TsconfigValidationResult as av, analyzeRegexGroups as aw, auditDependencyRanges as ax, buildDockerPull as ay, buildDockerRun as az, type ApiInfo as b, minifySql as b0, normalizeRef as b1, parseCommitTrailers as b2, parseConnectionString as b3, parseDockerImage as b4, parseEnv as b5, parseGitCommand as b6, parseGithubUrl as b7, parseSpec as b8, removeConsoleCalls as b9, removeEmptyAttributes as ba, removeHtmlComments as bb, removeJsComments as bc, removeRedundantAttributes as bd, searchCheatsheet as be, searchEndpoints as bf, splitStatements as bg, testGitignorePatterns as bh, testPattern as bi, testRegex as bj, validateAria as bk, validateEditorConfig as bl, validateEnvKey as bm, validateFenceLanguageTags as bn, validatePackageExports as bo, validateTsconfig as bp, code as c, type AriaIssue as d, type AriaValidationResult as e, type CheatsheetEntry as f, type CommitTrailer as g, type CommitTrailerResult as h, type ConnectionStringHost as i, type ConnectionStringResult as j, type ConventionalCommitFinding as k, type ConventionalCommitFooter as l, type ConventionalCommitOptions as m, type ConventionalCommitParsed as n, type ConventionalCommitResult as o, type ConventionalCommitSeverity as p, type CssResult as q, type DependencyAuditDuplicate as r, type DependencyAuditEntry as s, type DependencyAuditIssue as t, type DependencyAuditResult as u, type DependencyRangeType as v, type DependencySection as w, type DockerImageRef as x, type EditorConfigProperty as y, type EditorConfigSection as z };
|