@intlayer/engine 9.5.10 → 9.5.12
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/dist/assets/installSkills/skills/bundle-optimization.md +123 -0
- package/dist/assets/installSkills/skills/compat.md +0 -4
- package/dist/assets/installSkills/skills/content.md +8 -2
- package/dist/assets/installSkills/skills/next-js.md +2 -2
- package/dist/assets/installSkills/skills/usage.md +1 -1
- package/dist/cjs/build.cjs +5 -0
- package/dist/cjs/cli.cjs +1 -0
- package/dist/cjs/docReview/alignBlocks.cjs +53 -36
- package/dist/cjs/docReview/alignBlocks.cjs.map +1 -1
- package/dist/cjs/docReview/rebuildDocument.cjs +3 -1
- package/dist/cjs/docReview/rebuildDocument.cjs.map +1 -1
- package/dist/cjs/docReview/segmentDocument.cjs +8 -5
- package/dist/cjs/docReview/segmentDocument.cjs.map +1 -1
- package/dist/cjs/init/frameworkSetup/nextAppRouter/transforms.cjs +4 -1
- package/dist/cjs/init/frameworkSetup/nextAppRouter/transforms.cjs.map +1 -1
- package/dist/cjs/init/index.cjs +2 -12
- package/dist/cjs/init/index.cjs.map +1 -1
- package/dist/cjs/init/utils/backendPackages.cjs +15 -0
- package/dist/cjs/init/utils/backendPackages.cjs.map +1 -0
- package/dist/cjs/init/utils/index.cjs +2 -3
- package/dist/cjs/installMCP/installMCP.cjs +1 -1
- package/dist/cjs/installMCP/installMCP.cjs.map +1 -1
- package/dist/cjs/installSkills/index.cjs +2 -0
- package/dist/cjs/installSkills/index.cjs.map +1 -1
- package/dist/cjs/loadDictionaries/loadDictionaries.cjs +9 -8
- package/dist/cjs/loadDictionaries/loadDictionaries.cjs.map +1 -1
- package/dist/cjs/loadDictionaries/loadLocalDictionaries.cjs +3 -1
- package/dist/cjs/loadDictionaries/loadLocalDictionaries.cjs.map +1 -1
- package/dist/cjs/loadDictionaries/loadRemoteDictionaries.cjs +4 -6
- package/dist/cjs/loadDictionaries/loadRemoteDictionaries.cjs.map +1 -1
- package/dist/cjs/loadDictionaries/log.cjs +1 -1
- package/dist/cjs/loadDictionaries/log.cjs.map +1 -1
- package/dist/cjs/loadDictionaries/logTypeScriptErrors.cjs +19 -12
- package/dist/cjs/loadDictionaries/logTypeScriptErrors.cjs.map +1 -1
- package/dist/cjs/loadDictionaries/remoteDictionaryClient.cjs +18 -0
- package/dist/cjs/loadDictionaries/remoteDictionaryClient.cjs.map +1 -0
- package/dist/cjs/prepareIntlayerServer.cjs +132 -0
- package/dist/cjs/prepareIntlayerServer.cjs.map +1 -0
- package/dist/cjs/scan/analyzeBundleContent.cjs +26 -12
- package/dist/cjs/scan/analyzeBundleContent.cjs.map +1 -1
- package/dist/cjs/scan/calculateScore.cjs +4 -1
- package/dist/cjs/scan/calculateScore.cjs.map +1 -1
- package/dist/cjs/scan/checks.cjs +394 -221
- package/dist/cjs/scan/checks.cjs.map +1 -1
- package/dist/cjs/scan/detection/checkDetails.cjs +56 -0
- package/dist/cjs/scan/detection/checkDetails.cjs.map +1 -0
- package/dist/cjs/scan/detection/classifyInternalLinks.cjs +47 -0
- package/dist/cjs/scan/detection/classifyInternalLinks.cjs.map +1 -0
- package/dist/cjs/scan/detection/detectRoutingStrategy.cjs +143 -0
- package/dist/cjs/scan/detection/detectRoutingStrategy.cjs.map +1 -0
- package/dist/cjs/scan/detection/detectTechnologies.cjs +89 -0
- package/dist/cjs/scan/detection/detectTechnologies.cjs.map +1 -0
- package/dist/cjs/scan/detection/index.cjs +36 -0
- package/dist/cjs/scan/detection/localeCode.cjs +118 -0
- package/dist/cjs/scan/detection/localeCode.cjs.map +1 -0
- package/dist/cjs/scan/detection/localizedPages.cjs +48 -0
- package/dist/cjs/scan/detection/localizedPages.cjs.map +1 -0
- package/dist/cjs/scan/detection/technologySignatures.cjs +564 -0
- package/dist/cjs/scan/detection/technologySignatures.cjs.map +1 -0
- package/dist/cjs/scan/detection/url.cjs +53 -0
- package/dist/cjs/scan/detection/url.cjs.map +1 -0
- package/dist/cjs/scan/fetchText.cjs +56 -0
- package/dist/cjs/scan/fetchText.cjs.map +1 -0
- package/dist/cjs/scan/index.cjs +59 -3
- package/dist/cjs/scan/parseHtml.cjs +55 -10
- package/dist/cjs/scan/parseHtml.cjs.map +1 -1
- package/dist/cjs/scan/robots.cjs +65 -0
- package/dist/cjs/scan/robots.cjs.map +1 -0
- package/dist/cjs/scan/runScanChecks.cjs +89 -0
- package/dist/cjs/scan/runScanChecks.cjs.map +1 -0
- package/dist/cjs/scan/scanWebsite.cjs +58 -52
- package/dist/cjs/scan/scanWebsite.cjs.map +1 -1
- package/dist/cjs/scan/sitemap.cjs +109 -0
- package/dist/cjs/scan/sitemap.cjs.map +1 -0
- package/dist/cjs/utils/chunkJSON.cjs +24 -9
- package/dist/cjs/utils/chunkJSON.cjs.map +1 -1
- package/dist/cjs/utils/getChunk.cjs +2 -2
- package/dist/cjs/utils/getChunk.cjs.map +1 -1
- package/dist/cjs/utils/getProcessChainCommands.cjs +117 -0
- package/dist/cjs/utils/getProcessChainCommands.cjs.map +1 -0
- package/dist/cjs/utils/index.cjs +2 -0
- package/dist/cjs/utils/runParallel/index.cjs +1 -1
- package/dist/cjs/utils/runParallel/index.cjs.map +1 -1
- package/dist/cjs/utils/runParallel/pidTree.cjs +23 -11
- package/dist/cjs/utils/runParallel/pidTree.cjs.map +1 -1
- package/dist/cjs/utils/runParallel/ps.cjs +8 -3
- package/dist/cjs/utils/runParallel/ps.cjs.map +1 -1
- package/dist/cjs/utils/runParallel/runTask.cjs +2 -1
- package/dist/cjs/utils/runParallel/runTask.cjs.map +1 -1
- package/dist/cjs/utils/runParallel/wmic.cjs +8 -3
- package/dist/cjs/utils/runParallel/wmic.cjs.map +1 -1
- package/dist/cjs/utils/startContentWatcher.cjs +99 -0
- package/dist/cjs/utils/startContentWatcher.cjs.map +1 -0
- package/dist/cjs/watcher.cjs +2 -2
- package/dist/cjs/watcher.cjs.map +1 -1
- package/dist/cjs/writeContentDeclaration/detectExportedComponentName.cjs +7 -4
- package/dist/cjs/writeContentDeclaration/detectExportedComponentName.cjs.map +1 -1
- package/dist/cjs/writeContentDeclaration/writeMarkdownFile.cjs +2 -2
- package/dist/cjs/writeContentDeclaration/writeMarkdownFile.cjs.map +1 -1
- package/dist/cjs/writeJsonIfChanged.cjs.map +1 -1
- package/dist/esm/build.mjs +2 -1
- package/dist/esm/cli.mjs +2 -2
- package/dist/esm/docReview/alignBlocks.mjs +53 -36
- package/dist/esm/docReview/alignBlocks.mjs.map +1 -1
- package/dist/esm/docReview/rebuildDocument.mjs +3 -1
- package/dist/esm/docReview/rebuildDocument.mjs.map +1 -1
- package/dist/esm/docReview/segmentDocument.mjs +8 -5
- package/dist/esm/docReview/segmentDocument.mjs.map +1 -1
- package/dist/esm/init/frameworkSetup/nextAppRouter/transforms.mjs +4 -1
- package/dist/esm/init/frameworkSetup/nextAppRouter/transforms.mjs.map +1 -1
- package/dist/esm/init/index.mjs +1 -11
- package/dist/esm/init/index.mjs.map +1 -1
- package/dist/esm/init/utils/backendPackages.mjs +14 -0
- package/dist/esm/init/utils/backendPackages.mjs.map +1 -0
- package/dist/esm/init/utils/index.mjs +2 -2
- package/dist/esm/installMCP/installMCP.mjs +1 -1
- package/dist/esm/installMCP/installMCP.mjs.map +1 -1
- package/dist/esm/installSkills/index.mjs +2 -0
- package/dist/esm/installSkills/index.mjs.map +1 -1
- package/dist/esm/loadDictionaries/loadDictionaries.mjs +9 -8
- package/dist/esm/loadDictionaries/loadDictionaries.mjs.map +1 -1
- package/dist/esm/loadDictionaries/loadLocalDictionaries.mjs +3 -1
- package/dist/esm/loadDictionaries/loadLocalDictionaries.mjs.map +1 -1
- package/dist/esm/loadDictionaries/loadRemoteDictionaries.mjs +3 -5
- package/dist/esm/loadDictionaries/loadRemoteDictionaries.mjs.map +1 -1
- package/dist/esm/loadDictionaries/log.mjs +1 -1
- package/dist/esm/loadDictionaries/log.mjs.map +1 -1
- package/dist/esm/loadDictionaries/logTypeScriptErrors.mjs +19 -12
- package/dist/esm/loadDictionaries/logTypeScriptErrors.mjs.map +1 -1
- package/dist/esm/loadDictionaries/remoteDictionaryClient.mjs +16 -0
- package/dist/esm/loadDictionaries/remoteDictionaryClient.mjs.map +1 -0
- package/dist/esm/prepareIntlayerServer.mjs +128 -0
- package/dist/esm/prepareIntlayerServer.mjs.map +1 -0
- package/dist/esm/scan/analyzeBundleContent.mjs +26 -12
- package/dist/esm/scan/analyzeBundleContent.mjs.map +1 -1
- package/dist/esm/scan/calculateScore.mjs +4 -1
- package/dist/esm/scan/calculateScore.mjs.map +1 -1
- package/dist/esm/scan/checks.mjs +387 -220
- package/dist/esm/scan/checks.mjs.map +1 -1
- package/dist/esm/scan/detection/checkDetails.mjs +54 -0
- package/dist/esm/scan/detection/checkDetails.mjs.map +1 -0
- package/dist/esm/scan/detection/classifyInternalLinks.mjs +46 -0
- package/dist/esm/scan/detection/classifyInternalLinks.mjs.map +1 -0
- package/dist/esm/scan/detection/detectRoutingStrategy.mjs +141 -0
- package/dist/esm/scan/detection/detectRoutingStrategy.mjs.map +1 -0
- package/dist/esm/scan/detection/detectTechnologies.mjs +87 -0
- package/dist/esm/scan/detection/detectTechnologies.mjs.map +1 -0
- package/dist/esm/scan/detection/index.mjs +10 -0
- package/dist/esm/scan/detection/localeCode.mjs +108 -0
- package/dist/esm/scan/detection/localeCode.mjs.map +1 -0
- package/dist/esm/scan/detection/localizedPages.mjs +46 -0
- package/dist/esm/scan/detection/localizedPages.mjs.map +1 -0
- package/dist/esm/scan/detection/technologySignatures.mjs +563 -0
- package/dist/esm/scan/detection/technologySignatures.mjs.map +1 -0
- package/dist/esm/scan/detection/url.mjs +47 -0
- package/dist/esm/scan/detection/url.mjs.map +1 -0
- package/dist/esm/scan/fetchText.mjs +55 -0
- package/dist/esm/scan/fetchText.mjs.map +1 -0
- package/dist/esm/scan/index.mjs +15 -3
- package/dist/esm/scan/parseHtml.mjs +52 -11
- package/dist/esm/scan/parseHtml.mjs.map +1 -1
- package/dist/esm/scan/robots.mjs +63 -0
- package/dist/esm/scan/robots.mjs.map +1 -0
- package/dist/esm/scan/runScanChecks.mjs +88 -0
- package/dist/esm/scan/runScanChecks.mjs.map +1 -0
- package/dist/esm/scan/scanWebsite.mjs +59 -53
- package/dist/esm/scan/scanWebsite.mjs.map +1 -1
- package/dist/esm/scan/sitemap.mjs +105 -0
- package/dist/esm/scan/sitemap.mjs.map +1 -0
- package/dist/esm/utils/chunkJSON.mjs +24 -9
- package/dist/esm/utils/chunkJSON.mjs.map +1 -1
- package/dist/esm/utils/getChunk.mjs +2 -2
- package/dist/esm/utils/getChunk.mjs.map +1 -1
- package/dist/esm/utils/getProcessChainCommands.mjs +115 -0
- package/dist/esm/utils/getProcessChainCommands.mjs.map +1 -0
- package/dist/esm/utils/index.mjs +2 -1
- package/dist/esm/utils/runParallel/index.mjs +1 -1
- package/dist/esm/utils/runParallel/index.mjs.map +1 -1
- package/dist/esm/utils/runParallel/pidTree.mjs +23 -11
- package/dist/esm/utils/runParallel/pidTree.mjs.map +1 -1
- package/dist/esm/utils/runParallel/ps.mjs +8 -3
- package/dist/esm/utils/runParallel/ps.mjs.map +1 -1
- package/dist/esm/utils/runParallel/runTask.mjs +2 -1
- package/dist/esm/utils/runParallel/runTask.mjs.map +1 -1
- package/dist/esm/utils/runParallel/wmic.mjs +8 -3
- package/dist/esm/utils/runParallel/wmic.mjs.map +1 -1
- package/dist/esm/utils/startContentWatcher.mjs +98 -0
- package/dist/esm/utils/startContentWatcher.mjs.map +1 -0
- package/dist/esm/watcher.mjs +1 -1
- package/dist/esm/watcher.mjs.map +1 -1
- package/dist/esm/writeContentDeclaration/detectExportedComponentName.mjs +7 -4
- package/dist/esm/writeContentDeclaration/detectExportedComponentName.mjs.map +1 -1
- package/dist/esm/writeContentDeclaration/writeMarkdownFile.mjs +2 -2
- package/dist/esm/writeContentDeclaration/writeMarkdownFile.mjs.map +1 -1
- package/dist/esm/writeJsonIfChanged.mjs +1 -1
- package/dist/esm/writeJsonIfChanged.mjs.map +1 -1
- package/dist/types/build.d.ts +2 -1
- package/dist/types/cli.d.ts +2 -2
- package/dist/types/docReview/rebuildDocument.d.ts.map +1 -1
- package/dist/types/docReview/segmentDocument.d.ts.map +1 -1
- package/dist/types/init/frameworkSetup/nextAppRouter/transforms.d.ts.map +1 -1
- package/dist/types/init/index.d.ts +1 -1
- package/dist/types/init/index.d.ts.map +1 -1
- package/dist/types/init/utils/backendPackages.d.ts +5 -0
- package/dist/types/init/utils/backendPackages.d.ts.map +1 -0
- package/dist/types/init/utils/index.d.ts +2 -2
- package/dist/types/installSkills/index.d.ts +1 -0
- package/dist/types/installSkills/index.d.ts.map +1 -1
- package/dist/types/loadDictionaries/loadRemoteDictionaries.d.ts.map +1 -1
- package/dist/types/loadDictionaries/logTypeScriptErrors.d.ts.map +1 -1
- package/dist/types/loadDictionaries/remoteDictionaryClient.d.ts +14 -0
- package/dist/types/loadDictionaries/remoteDictionaryClient.d.ts.map +1 -0
- package/dist/types/prepareIntlayerServer.d.ts +67 -0
- package/dist/types/prepareIntlayerServer.d.ts.map +1 -0
- package/dist/types/scan/analyzeBundleContent.d.ts.map +1 -1
- package/dist/types/scan/calculateScore.d.ts +4 -1
- package/dist/types/scan/calculateScore.d.ts.map +1 -1
- package/dist/types/scan/checks.d.ts +114 -21
- package/dist/types/scan/checks.d.ts.map +1 -1
- package/dist/types/scan/detection/checkDetails.d.ts +29 -0
- package/dist/types/scan/detection/checkDetails.d.ts.map +1 -0
- package/dist/types/scan/detection/classifyInternalLinks.d.ts +44 -0
- package/dist/types/scan/detection/classifyInternalLinks.d.ts.map +1 -0
- package/dist/types/scan/detection/detectRoutingStrategy.d.ts +60 -0
- package/dist/types/scan/detection/detectRoutingStrategy.d.ts.map +1 -0
- package/dist/types/scan/detection/detectTechnologies.d.ts +60 -0
- package/dist/types/scan/detection/detectTechnologies.d.ts.map +1 -0
- package/dist/types/scan/detection/index.d.ts +9 -0
- package/dist/types/scan/detection/localeCode.d.ts +49 -0
- package/dist/types/scan/detection/localeCode.d.ts.map +1 -0
- package/dist/types/scan/detection/localizedPages.d.ts +40 -0
- package/dist/types/scan/detection/localizedPages.d.ts.map +1 -0
- package/dist/types/scan/detection/technologySignatures.d.ts +48 -0
- package/dist/types/scan/detection/technologySignatures.d.ts.map +1 -0
- package/dist/types/scan/detection/url.d.ts +27 -0
- package/dist/types/scan/detection/url.d.ts.map +1 -0
- package/dist/types/scan/fetchText.d.ts +30 -0
- package/dist/types/scan/fetchText.d.ts.map +1 -0
- package/dist/types/scan/index.d.ts +16 -4
- package/dist/types/scan/parseHtml.d.ts +17 -0
- package/dist/types/scan/parseHtml.d.ts.map +1 -1
- package/dist/types/scan/robots.d.ts +23 -0
- package/dist/types/scan/robots.d.ts.map +1 -0
- package/dist/types/scan/runScanChecks.d.ts +43 -0
- package/dist/types/scan/runScanChecks.d.ts.map +1 -0
- package/dist/types/scan/scanWebsite.d.ts.map +1 -1
- package/dist/types/scan/sitemap.d.ts +49 -0
- package/dist/types/scan/sitemap.d.ts.map +1 -0
- package/dist/types/scan/types.d.ts +15 -0
- package/dist/types/scan/types.d.ts.map +1 -1
- package/dist/types/utils/chunkJSON.d.ts.map +1 -1
- package/dist/types/utils/getProcessChainCommands.d.ts +35 -0
- package/dist/types/utils/getProcessChainCommands.d.ts.map +1 -0
- package/dist/types/utils/index.d.ts +2 -1
- package/dist/types/utils/runParallel/pidTree.d.ts.map +1 -1
- package/dist/types/utils/startContentWatcher.d.ts +40 -0
- package/dist/types/utils/startContentWatcher.d.ts.map +1 -0
- package/dist/types/watcher.d.ts.map +1 -1
- package/dist/types/writeContentDeclaration/writeMarkdownFile.d.ts.map +1 -1
- package/package.json +15 -7
- package/dist/cjs/init/utils/devScript.cjs +0 -57
- package/dist/cjs/init/utils/devScript.cjs.map +0 -1
- package/dist/esm/init/utils/devScript.mjs +0 -55
- package/dist/esm/init/utils/devScript.mjs.map +0 -1
- package/dist/types/init/utils/devScript.d.ts +0 -48
- package/dist/types/init/utils/devScript.d.ts.map +0 -1
package/dist/types/cli.d.ts
CHANGED
|
@@ -7,7 +7,7 @@ import { writeJSFile } from "./writeContentDeclaration/writeJSFile.js";
|
|
|
7
7
|
import "./writeContentDeclaration/index.js";
|
|
8
8
|
import { detectFormatCommand } from "./detectFormatCommand.js";
|
|
9
9
|
import { getContentDeclarationFileTemplate } from "./getContentDeclarationFileTemplate/getContentDeclarationFileTemplate.js";
|
|
10
|
-
import { COMPAT_I18N_LIBRARIES, CompatI18nLibrary, PackageManager, detectCompatI18nLibraries, detectPackageManager, hasLintTooling, installPackages } from "./init/utils/packageManager.js";
|
|
10
|
+
import { COMPAT_I18N_LIBRARIES, CompatI18nLibrary, PackageManager, detectCompatI18nLibraries, detectPackageManager, findLockFileDir, hasLintTooling, installPackages } from "./init/utils/packageManager.js";
|
|
11
11
|
import { RoutingMode } from "./init/utils/configManipulation.js";
|
|
12
12
|
import { CmsCredentials, enableEditorInConfig, setupCmsCredentials, writeCmsCredentialsToEnv } from "./init/cms.js";
|
|
13
13
|
import { DocumentationRouter, DocumentationRouterType, getDocumentationUrl } from "./init/documentationRouter.js";
|
|
@@ -23,4 +23,4 @@ import { listDictionaries, listDictionariesWithStats } from "./listDictionariesP
|
|
|
23
23
|
import { DiffMode, ListGitFilesOptions, ListGitLinesOptions, listGitFiles, listGitLines } from "./listGitFiles.js";
|
|
24
24
|
import { ListProjectsOptions, getGitRootDir, listProjects } from "./listProjects.js";
|
|
25
25
|
import { logConfigDetails } from "./logConfigDetails.js";
|
|
26
|
-
export { COMPAT_I18N_LIBRARIES, type CmsCredentials, type CompatI18nLibrary, ContentStrategy, DictionaryStatus, DiffMode, DocumentationRouter, type DocumentationRouterType, InitOptions, ListGitFilesOptions, ListGitLinesOptions, ListProjectsOptions, MCPTransport, NEXT_INTLAYER_BABEL_CONFIG_CONTENT, PLATFORMS, PLATFORMS_METADATA, type PackageManager, Platform, PlatformMetadata, type RoutingMode, SKILLS, SKILLS_METADATA, Skill, UpgradeIntlayerPackagesOptions, UpgradeIntlayerPackagesResult, detectCompatI18nLibraries, detectExportedComponentName, detectFormatCommand, detectPackageManager, enableEditorInConfig, getContentDeclarationFileTemplate, getDefaultApplicationURL, getDocumentationUrl, getGitRootDir, getInitialSkills, hasLintTooling, hasUrlRoutingFramework, initIntlayer, installLSP, installMCP, installPackages, installSkills, listDictionaries, listDictionariesWithStats, listGitFiles, listGitLines, listProjects, logConfigDetails, logInitSuccessMessage, prepareIntlayer, setupCmsCredentials, transformJSFile, upgradeIntlayerPackages, writeCmsCredentialsToEnv, writeContentDeclaration, writeJSFile };
|
|
26
|
+
export { COMPAT_I18N_LIBRARIES, type CmsCredentials, type CompatI18nLibrary, ContentStrategy, DictionaryStatus, DiffMode, DocumentationRouter, type DocumentationRouterType, InitOptions, ListGitFilesOptions, ListGitLinesOptions, ListProjectsOptions, MCPTransport, NEXT_INTLAYER_BABEL_CONFIG_CONTENT, PLATFORMS, PLATFORMS_METADATA, type PackageManager, Platform, PlatformMetadata, type RoutingMode, SKILLS, SKILLS_METADATA, Skill, UpgradeIntlayerPackagesOptions, UpgradeIntlayerPackagesResult, detectCompatI18nLibraries, detectExportedComponentName, detectFormatCommand, detectPackageManager, enableEditorInConfig, findLockFileDir, getContentDeclarationFileTemplate, getDefaultApplicationURL, getDocumentationUrl, getGitRootDir, getInitialSkills, hasLintTooling, hasUrlRoutingFramework, initIntlayer, installLSP, installMCP, installPackages, installSkills, listDictionaries, listDictionariesWithStats, listGitFiles, listGitLines, listProjects, logConfigDetails, logInitSuccessMessage, prepareIntlayer, setupCmsCredentials, transformJSFile, upgradeIntlayerPackages, writeCmsCredentialsToEnv, writeContentDeclaration, writeJSFile };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rebuildDocument.d.ts","names":[],"sources":["../../../src/docReview/rebuildDocument.ts"],"mappings":";;;;;;YAMY;;EAEV,WAAW;;EAEX;;EAEA;;YAGU;EACV,YAAY;EACZ,cAAc;EACd,MAAM;;YAGI;EACV,kBAAkB;;;;;;;;;;qBAWP,6BAAwB,YAAA,cAAA,QAIlC,iBAAe;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"rebuildDocument.d.ts","names":[],"sources":["../../../src/docReview/rebuildDocument.ts"],"mappings":";;;;;;YAMY;;EAEV,WAAW;;EAEX;;EAEA;;YAGU;EACV,YAAY;EACZ,cAAc;EACd,MAAM;;YAGI;EACV,kBAAkB;;;;;;;;;;qBAWP,6BAAwB,YAAA,cAAA,QAIlC,iBAAe;;;;;;;;;;qBAwDL,wBAAqB,MAC1B,eAAa,cACL,sBAAoB,kBAChB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"segmentDocument.d.ts","names":[],"sources":["../../../src/docReview/segmentDocument.ts"],"mappings":";;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"segmentDocument.d.ts","names":[],"sources":["../../../src/docReview/segmentDocument.ts"],"mappings":";;;;;;;;;;;;;;;;qBAuDa,kBAAe,iBAAmB;;;;;;;;;;;;;;;;;;;qBAwIlC,kBAAe,iBAAmB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transforms.d.ts","names":[],"sources":["../../../../../src/init/frameworkSetup/nextAppRouter/transforms.ts"],"mappings":";;YAWY;EACV;EACA;;;
|
|
1
|
+
{"version":3,"file":"transforms.d.ts","names":[],"sources":["../../../../../src/init/frameworkSetup/nextAppRouter/transforms.ts"],"mappings":";;YAWY;EACV;EACA;;;YA6KU;;;;;;EAMV;;;;;;;;;;;;;qBAcW,yBAAsB,gBACrB,uBACmB,sBAC9B"}
|
|
@@ -39,7 +39,7 @@ export type InitOptions = {
|
|
|
39
39
|
noEslint?: boolean;
|
|
40
40
|
/**
|
|
41
41
|
* Skip the project setup: tsconfig types/aliases, the Intlayer config file,
|
|
42
|
-
* bundler/framework configs
|
|
42
|
+
* bundler/framework configs and framework-specific
|
|
43
43
|
* scaffolding (middleware/proxy, providers in layout/page). Defaults to
|
|
44
44
|
* enabled.
|
|
45
45
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","names":[],"sources":["../../../src/init/index.ts"],"mappings":";;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../../../src/init/index.ts"],"mappings":";;;;;;;;;;qBA4Ea,2BAAwB,cACrB;;;;;;;;;;YAsBJ;;;;YAQA;EACV;;EAEA;;;;;EAKA;;EAEA;;EAEA;;EAEA;;;;;;;EAOA;;EAEA;;;;;;EAMA;;;;;;EAMA,cAAc;;;;;;;EAOd;;;;;;;EAOA,kBAAkB;;;;;qBAMP,eAAY,iBAAyB,UAAY,gBAAW;;;qBAqjC5D,wBAAqB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"backendPackages.d.ts","names":[],"sources":["../../../../src/init/utils/backendPackages.ts"],"mappings":";;qBACa"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { COMPAT_I18N_LIBRARIES, COMPAT_PACKAGE_REPLACEMENTS, CompatI18nLibrary, CompatSyncConfig, CompatVitePluginConfig, DetectMissingPackagesOptions, IntlayerPackageAnalysis, MINIMUM_ESLINT_MAJOR, PENDING_COMPAT_ADAPTERS, PackageManager, detectCompatI18nLibraries, detectMissingIntlayerPackages, detectPackageManager, findLockFileDir, hasLegacyEslint, hasLintTooling, installPackages, isIntlayerPackageName, moveCompatPackagesToDevDependencies, normalizeVersion, runPackageInstall } from "./packageManager.js";
|
|
2
2
|
import { RoutingMode, enableIntlayerEditorConfig, getMetroConfigTemplate, hasIntlayerVitePlugin, replaceViteConfigPluginImportSource, setIntlayerConfigCompilerOutput, setIntlayerConfigEnableProxy, setIntlayerConfigRoutingMode, setIntlayerConfigRoutingStorageOnly, updateAstroConfig, updateIntlayerConfigWithSyncPlugin, updateMetroConfig, updateNextConfig, updateNextConfigForNextI18next, updateNextConfigForNextIntl, updateNextConfigForNextTranslate, updateNuxtConfig, updateNuxtConfigForNuxtjsI18n, updateViteConfig, updateViteConfigForCompatPlugin, updateViteConfigForVueI18n } from "./configManipulation.js";
|
|
3
3
|
import { ensureNamedImport, firstInsertIndex, isModuleScopeBinding } from "./astImports.js";
|
|
4
|
-
import { BACKEND_INTLAYER_PACKAGES
|
|
4
|
+
import { BACKEND_INTLAYER_PACKAGES } from "./backendPackages.js";
|
|
5
5
|
import { JsonLocalePattern, JsonLocalePatternType, LinguiCatalogPattern, NextIntlMessagesPattern, detectJsonLocalePattern, detectLinguiCatalogPattern, detectNextIntlMessagesPattern, ensureDirectory, exists, readFileFromRoot, writeFileToRoot } from "./fileSystem.js";
|
|
6
6
|
import { GITHUB_FILL_WORKFLOW_PATH, GITHUB_TEST_WORKFLOW_PATH, GithubWorkflowFile, GithubWorkflowsContext, GithubWorkflowsOptions, getGithubWorkflows, resolveGithubWorkflowsContext } from "./githubActions.js";
|
|
7
7
|
import { IntlayerDependency, IntlayerDependencyUpgrade, PackageJsonIntlayerDependencies, fetchLatestPackageVersion, findPackageJsonFiles, getIntlayerDependencies, getIntlayerDependencyUpgrades, listIntlayerDependencies, toRange, writeIntlayerDependencyUpgrades } from "./intlayerDependencies.js";
|
|
@@ -11,4 +11,4 @@ import { NEXT_INTLAYER_BABEL_CONFIG_CONTENT, setupNextCompilerBabelConfig } from
|
|
|
11
11
|
import { findTsConfigFiles } from "./tsConfig.js";
|
|
12
12
|
import { hasUrlRoutingFramework } from "./urlRoutingFramework.js";
|
|
13
13
|
import { isVersionAtLeast } from "./version.js";
|
|
14
|
-
export { BACKEND_INTLAYER_PACKAGES, COMPAT_I18N_LIBRARIES, COMPAT_PACKAGE_REPLACEMENTS, CompatI18nLibrary, CompatSyncConfig, CompatVitePluginConfig, DetectMissingPackagesOptions, GITHUB_FILL_WORKFLOW_PATH, GITHUB_TEST_WORKFLOW_PATH, GithubWorkflowFile, GithubWorkflowsContext, GithubWorkflowsOptions, IntlayerDependency, IntlayerDependencyUpgrade, IntlayerPackageAnalysis, JsonLocalePattern, JsonLocalePatternType, LINT_PLUGIN_PACKAGE_NAME, LinguiCatalogPattern, MINIMUM_ESLINT_MAJOR, NEXT_INTLAYER_BABEL_CONFIG_CONTENT, NextIntlMessagesPattern, OxlintConfig, PENDING_COMPAT_ADAPTERS, PackageJsonIntlayerDependencies, PackageManager,
|
|
14
|
+
export { BACKEND_INTLAYER_PACKAGES, COMPAT_I18N_LIBRARIES, COMPAT_PACKAGE_REPLACEMENTS, CompatI18nLibrary, CompatSyncConfig, CompatVitePluginConfig, DetectMissingPackagesOptions, GITHUB_FILL_WORKFLOW_PATH, GITHUB_TEST_WORKFLOW_PATH, GithubWorkflowFile, GithubWorkflowsContext, GithubWorkflowsOptions, IntlayerDependency, IntlayerDependencyUpgrade, IntlayerPackageAnalysis, JsonLocalePattern, JsonLocalePatternType, LINT_PLUGIN_PACKAGE_NAME, LinguiCatalogPattern, MINIMUM_ESLINT_MAJOR, NEXT_INTLAYER_BABEL_CONFIG_CONTENT, NextIntlMessagesPattern, OxlintConfig, PENDING_COMPAT_ADAPTERS, PackageJsonIntlayerDependencies, PackageManager, RoutingMode, addIntlayerRulesToOxlintConfig, detectCompatI18nLibraries, detectJsonLocalePattern, detectLinguiCatalogPattern, detectMissingIntlayerPackages, detectNextIntlMessagesPattern, detectPackageManager, enableIntlayerEditorConfig, ensureDirectory, ensureNamedImport, exists, fetchLatestPackageVersion, findLockFileDir, findPackageJsonFiles, findTsConfigFiles, firstInsertIndex, getGithubWorkflows, getIntlayerDependencies, getIntlayerDependencyUpgrades, getMetroConfigTemplate, hasIntlayerVitePlugin, hasLegacyEslint, hasLintTooling, hasUrlRoutingFramework, installPackages, isIntlayerPackageName, isModuleScopeBinding, isVersionAtLeast, listIntlayerDependencies, moveCompatPackagesToDevDependencies, normalizeVersion, parseJSONWithComments, readFileFromRoot, replaceViteConfigPluginImportSource, resolveGithubWorkflowsContext, runPackageInstall, setIntlayerConfigCompilerOutput, setIntlayerConfigEnableProxy, setIntlayerConfigRoutingMode, setIntlayerConfigRoutingStorageOnly, setupNextCompilerBabelConfig, toRange, updateAstroConfig, updateIntlayerConfigWithSyncPlugin, updateMetroConfig, updateNextConfig, updateNextConfigForNextI18next, updateNextConfigForNextIntl, updateNextConfigForNextTranslate, updateNuxtConfig, updateNuxtConfigForNuxtjsI18n, updateViteConfig, updateViteConfigForCompatPlugin, updateViteConfigForVueI18n, writeFileToRoot, writeIntlayerDependencyUpgrades };
|
|
@@ -9,6 +9,7 @@ export declare const SKILLS_METADATA: {
|
|
|
9
9
|
readonly Usage: 'How to use Intlayer in your project';
|
|
10
10
|
readonly CLI: 'Intlayer CLI commands and usage';
|
|
11
11
|
readonly Compiler: 'Intlayer Compiler setup and usage for automatic content extraction without .content files';
|
|
12
|
+
readonly BundleOptimization: 'Purge, minify and import modes; writing code the bundle optimizer can follow';
|
|
12
13
|
readonly RemoteContent: 'How to use Intlayer with Remote/CMS/Server-side content';
|
|
13
14
|
readonly DevTools: 'ESLint, LSP, VS Code & Chrome extensions, MCP server and CI/CD';
|
|
14
15
|
readonly Compat: 'Migrate from i18next, next-intl, react-intl, vue-i18n, Lingui… keeping their API';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","names":[],"sources":["../../../src/installSkills/index.ts"],"mappings":";;;;qBASa;WACX;WACA;WACA;WAEA;WACA;WACA;WAEA;WACA;WACA;WAEA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;;YAIU,qBAAqB;qBAEpB,QAAyC;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../../../src/installSkills/index.ts"],"mappings":";;;;qBASa;WACX;WACA;WACA;WAEA;WACA;WACA;WAEA;WAEA;WACA;WACA;WAEA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;;YAIU,qBAAqB;qBAEpB,QAAyC;;;;;;;qBAqFzC,mBAAgB,cACb,2BACb;iBAUc;EACf;EACA;EACA;;;;;qBAMW,oBAAoB,eAAe;YA6JpC,wBAAwB;qBAEvB,WAA+C;;;;;qBA8G/C,gBAAa,qBACL,UACT,UAAQ,QACV,YACP"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loadRemoteDictionaries.d.ts","names":[],"sources":["../../../src/loadDictionaries/loadRemoteDictionaries.ts"],"mappings":";;;;
|
|
1
|
+
{"version":3,"file":"loadRemoteDictionaries.d.ts","names":[],"sources":["../../../src/loadDictionaries/loadRemoteDictionaries.ts"],"mappings":";;;;qBAYa,4BAAyB,eACrB,gBAAgB,kBAC9B;qBAOU,yBAAsB,0CAAA,gBAAA,kBAEf,QAAQ,+BAA6B;EAErD;EACA;EACA,WAAW,OAAO;MAEnB,QAAQ"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logTypeScriptErrors.d.ts","names":[],"sources":["../../../src/loadDictionaries/logTypeScriptErrors.ts"],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"file":"logTypeScriptErrors.d.ts","names":[],"sources":["../../../src/loadDictionaries/logTypeScriptErrors.ts"],"mappings":";;;;;;qBAsRa,sBAAmB,qBACX,eACJ,mBACd"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { fetchDistantDictionaries } from "../fetchDistantDictionaries.js";
|
|
2
|
+
import { IntlayerConfig } from "@intlayer/types/config";
|
|
3
|
+
import { dictionaryEndpoint } from "@intlayer/api/dictionary";
|
|
4
|
+
//#region src/loadDictionaries/remoteDictionaryClient.d.ts
|
|
5
|
+
/**
|
|
6
|
+
* Creates the CMS dictionary client.
|
|
7
|
+
*
|
|
8
|
+
* Kept in its own module so `loadRemoteDictionaries` can import it lazily:
|
|
9
|
+
* `@intlayer/api` is only loaded when remote credentials are configured.
|
|
10
|
+
*/
|
|
11
|
+
export declare const createRemoteDictionaryClient: (configuration: IntlayerConfig) => ReturnType<typeof dictionaryEndpoint>;
|
|
12
|
+
//#endregion
|
|
13
|
+
export { fetchDistantDictionaries };
|
|
14
|
+
//# sourceMappingURL=remoteDictionaryClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"remoteDictionaryClient.d.ts","names":[],"sources":["../../../src/loadDictionaries/remoteDictionaryClient.ts"],"mappings":";;;;;;;;;;qBAYa,+BAA4B,eACxB,mBACd,kBAAkB"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { IntlayerConfig } from "@intlayer/types/config";
|
|
2
|
+
//#region src/prepareIntlayerServer.d.ts
|
|
3
|
+
/**
|
|
4
|
+
* Explicit override, for any setup the detection below does not recognise:
|
|
5
|
+
* `INTLAYER_WATCH=true` forces the content watcher on, `INTLAYER_WATCH=false`
|
|
6
|
+
* forces it off.
|
|
7
|
+
*/
|
|
8
|
+
export declare const INTLAYER_WATCH_ENV_VAR = "INTLAYER_WATCH";
|
|
9
|
+
/**
|
|
10
|
+
* Whether a command line is a watcher that restarts its child on changes.
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* ```ts
|
|
14
|
+
* getIsDevWatcherCommand('node /app/node_modules/.bin/nodemon src/index.ts'); // → true
|
|
15
|
+
* getIsDevWatcherCommand('node dist/index.js'); // → false
|
|
16
|
+
* ```
|
|
17
|
+
*/
|
|
18
|
+
export declare const getIsDevWatcherCommand: (command: string) => boolean;
|
|
19
|
+
/**
|
|
20
|
+
* Whether a server process runs in development, and so should watch the
|
|
21
|
+
* content declarations.
|
|
22
|
+
*
|
|
23
|
+
* `INTLAYER_WATCH=true|false` decides first, then `NODE_ENV` when set. An unset
|
|
24
|
+
* `NODE_ENV` is not a sign of development (`bun dist/index.mjs` rarely sets
|
|
25
|
+
* it), so the process must then show a positive signal, cheapest first:
|
|
26
|
+
* 1. a runtime watch flag or marker (`bun --watch`/`--hot`, `node --watch`,
|
|
27
|
+
* `ts-node-dev`);
|
|
28
|
+
* 2. a `dev`-like package script;
|
|
29
|
+
* 3. a restarting watcher in its own command line or its ancestors'
|
|
30
|
+
* (`deno run --watch`, `nodemon`, `tsx watch`…), for those started
|
|
31
|
+
* directly rather than through a script.
|
|
32
|
+
*/
|
|
33
|
+
export declare const getIsServerDevelopment: () => Promise<boolean>;
|
|
34
|
+
export type PrepareIntlayerServerOptions = {
|
|
35
|
+
/**
|
|
36
|
+
* How the integration names itself in the watcher lock and in messages, e.g.
|
|
37
|
+
* `express-intlayer`.
|
|
38
|
+
*/
|
|
39
|
+
label: string;
|
|
40
|
+
/**
|
|
41
|
+
* Whether to watch the content declarations after preparing them.
|
|
42
|
+
* Defaults to {@link getIsServerDevelopment}.
|
|
43
|
+
*/
|
|
44
|
+
watch?: boolean;
|
|
45
|
+
};
|
|
46
|
+
/**
|
|
47
|
+
* Prepares the dictionaries for a server integration (Express, Fastify, Hono…)
|
|
48
|
+
* and, in development, keeps them in sync with the content declarations.
|
|
49
|
+
*
|
|
50
|
+
* Replaces wrapping the dev server in `intlayer watch --with`: the watcher runs
|
|
51
|
+
* inside the server, deduplicated through the project's watcher lock, so a
|
|
52
|
+
* server restarted by `tsx watch` / `node --watch` hands it over to its
|
|
53
|
+
* successor, and a remaining `intlayer watch` makes it stand down.
|
|
54
|
+
*
|
|
55
|
+
* Fire-and-forget: the server must not wait on the build to start listening.
|
|
56
|
+
*
|
|
57
|
+
* @param configuration - The resolved Intlayer configuration.
|
|
58
|
+
* @param options - How the integration identifies itself, and whether to watch.
|
|
59
|
+
*
|
|
60
|
+
* @example
|
|
61
|
+
* ```ts
|
|
62
|
+
* prepareIntlayerServer(getConfiguration(), { label: 'express-intlayer' });
|
|
63
|
+
* ```
|
|
64
|
+
*/
|
|
65
|
+
export declare const prepareIntlayerServer: (configuration: IntlayerConfig, { label, watch }: PrepareIntlayerServerOptions) => void;
|
|
66
|
+
//#endregion
|
|
67
|
+
//# sourceMappingURL=prepareIntlayerServer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prepareIntlayerServer.d.ts","names":[],"sources":["../../src/prepareIntlayerServer.ts"],"mappings":";;;;;;;qBAWa;;;;;;;;;;qBAiDA,yBAAsB;;;;;;;;;;;;;;;qBA4BtB,8BAAmC;YAkCpC;;;;;EAKV;;;;;EAKA;;;;;;;;;;;;;;;;;;;;;qBAsBW,wBAAqB,eACjB,kBAAc,OAAA,SACX"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analyzeBundleContent.d.ts","names":[],"sources":["../../../src/scan/analyzeBundleContent.ts"],"mappings":";;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"analyzeBundleContent.d.ts","names":[],"sources":["../../../src/scan/analyzeBundleContent.ts"],"mappings":";;;;;;;;;;;qBAkNa,uBAAoB,QACvB,oBAAkB,qBACP,uBACE,0BAEpB"}
|
|
@@ -37,10 +37,13 @@ export declare const scoreRecord: {
|
|
|
37
37
|
readonly url_htmlDir: 3;
|
|
38
38
|
readonly url_hasCanonical: 10;
|
|
39
39
|
readonly url_hreflang: 9;
|
|
40
|
+
readonly url_hreflangReciprocal: 8;
|
|
40
41
|
readonly url_hasLocalizedLinks: 8;
|
|
41
42
|
readonly url_hasXDefault: 7;
|
|
42
43
|
readonly url_allAnchorsLocalized: 6;
|
|
43
|
-
readonly
|
|
44
|
+
readonly url_hasLangSelector: 6;
|
|
45
|
+
readonly url_currentLocale: 5;
|
|
46
|
+
readonly url_ogLocale: 3;
|
|
44
47
|
readonly url_unusedBundleContent: 8;
|
|
45
48
|
};
|
|
46
49
|
/** Identifier of a scorable check (without the URL suffix). */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"calculateScore.d.ts","names":[],"sources":["../../../src/scan/calculateScore.ts"],"mappings":";;;;;;;;;;YAUY;;EAEV;;EAEA;;;;;;;;;YAUU;EACV;EACA;;;qBAgBW;WACX;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;;;YAIU,8BAA8B;;;;;;;;;;qBAW7B,cAAW,OAAW,OAAK,OAAS,kBAAgB;;;;;;;qBAyBpD,iBAAc,OAAW"}
|
|
1
|
+
{"version":3,"file":"calculateScore.d.ts","names":[],"sources":["../../../src/scan/calculateScore.ts"],"mappings":";;;;;;;;;;YAUY;;EAEV;;EAEA;;;;;;;;;YAUU;EACV;EACA;;;qBAgBW;WACX;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;;;YAIU,8BAA8B;;;;;;;;;;qBAW7B,cAAW,OAAW,OAAK,OAAS,kBAAgB;;;;;;;qBAyBpD,iBAAc,OAAW"}
|
|
@@ -1,36 +1,129 @@
|
|
|
1
|
+
import { RoutingDetection } from "./detection/detectRoutingStrategy.js";
|
|
1
2
|
import { BundleChunkInput, BundleContentAnalysis, ScanEvent } from "./types.js";
|
|
2
|
-
import {
|
|
3
|
+
import { ScanFetchOptions } from "./fetchText.js";
|
|
4
|
+
import { Anchor, HreflangLink } from "./parseHtml.js";
|
|
3
5
|
//#region src/scan/checks.d.ts
|
|
6
|
+
/** Receives every check result as soon as it is produced. */
|
|
7
|
+
export type EmitScanEvent = (event: ScanEvent) => void;
|
|
8
|
+
/** Signals of the scanned page shared by the page-level checks. */
|
|
9
|
+
export type PageSignals = {
|
|
10
|
+
targetUrl: string;
|
|
11
|
+
langTag?: string;
|
|
12
|
+
dirTag?: string;
|
|
13
|
+
ogLocale?: string;
|
|
14
|
+
/** `og:locale:alternate` values. */
|
|
15
|
+
ogLocaleAlternates?: string[];
|
|
16
|
+
/** Raw `href` of the canonical link (`''` when present but empty). */
|
|
17
|
+
canonicalHref?: string;
|
|
18
|
+
hreflangs: HreflangLink[];
|
|
19
|
+
anchors: Anchor[];
|
|
20
|
+
routing: RoutingDetection;
|
|
21
|
+
/** Locale of the page: from its URL when possible, else `<html lang>`. */
|
|
22
|
+
pageLocale?: string;
|
|
23
|
+
};
|
|
4
24
|
/** Format a byte count as a human-readable size. */
|
|
5
25
|
export declare const formatSize: (bytes: number) => string;
|
|
26
|
+
/** `url_htmlLang`: `<html lang>` is present and a valid BCP 47 tag. */
|
|
27
|
+
export declare const checkHtmlLang: ({ targetUrl, langTag }: PageSignals, emit: EmitScanEvent) => void;
|
|
28
|
+
/**
|
|
29
|
+
* `url_htmlDir`: the text direction matches the language. `dir` is only
|
|
30
|
+
* required for right-to-left languages, `ltr` being the browser default.
|
|
31
|
+
*/
|
|
32
|
+
export declare const checkHtmlDir: ({ targetUrl, langTag, dirTag }: PageSignals, emit: EmitScanEvent) => void;
|
|
33
|
+
/**
|
|
34
|
+
* `url_currentLocale`: the locale announced by `<html lang>`, the URL and the
|
|
35
|
+
* self hreflang entry agree.
|
|
36
|
+
*/
|
|
37
|
+
export declare const checkLocaleConsistency: ({ targetUrl, langTag, hreflangs, routing }: PageSignals, emit: EmitScanEvent) => void;
|
|
38
|
+
/**
|
|
39
|
+
* `url_ogLocale`: `og:locale` is set, uses the Open Graph `language_TERRITORY`
|
|
40
|
+
* format (`en_GB`, not `en` nor `en-GB`) and matches `<html lang>`.
|
|
41
|
+
* `og:locale:alternate` values must use the same format.
|
|
42
|
+
*/
|
|
43
|
+
export declare const checkOgLocale: ({ targetUrl, ogLocale, ogLocaleAlternates, langTag }: PageSignals, emit: EmitScanEvent) => void;
|
|
44
|
+
/**
|
|
45
|
+
* `url_hasCanonical`: a canonical link exists and does not point to another
|
|
46
|
+
* locale version (which would de-index the current one).
|
|
47
|
+
*/
|
|
48
|
+
export declare const checkCanonical: ({ targetUrl, canonicalHref, hreflangs, routing, pageLocale }: PageSignals, emit: EmitScanEvent) => void;
|
|
49
|
+
/**
|
|
50
|
+
* `url_hreflang`: hreflang tags exist, use valid codes and absolute URLs, have
|
|
51
|
+
* no duplicates, and include a self reference.
|
|
52
|
+
*/
|
|
53
|
+
export declare const checkHreflang: ({ targetUrl, hreflangs, canonicalHref }: PageSignals, emit: EmitScanEvent) => void;
|
|
54
|
+
/** `url_hasXDefault`: an `x-default` hreflang is declared. */
|
|
55
|
+
export declare const checkXDefault: ({ targetUrl, hreflangs }: PageSignals, emit: EmitScanEvent) => void;
|
|
56
|
+
/**
|
|
57
|
+
* `url_hreflangReciprocal`: every alternate answers with a 200, is not
|
|
58
|
+
* redirected, links back to this page and declares the expected language.
|
|
59
|
+
* Search engines ignore hreflang pairs without a return link.
|
|
60
|
+
*/
|
|
61
|
+
export declare const checkHreflangReciprocity: ({ targetUrl, hreflangs, canonicalHref }: PageSignals, fetchOptions: ScanFetchOptions, emit: EmitScanEvent) => Promise<void>;
|
|
6
62
|
/**
|
|
7
|
-
*
|
|
8
|
-
*
|
|
63
|
+
* Link checks, interpreted through the detected routing strategy (so an
|
|
64
|
+
* unprefixed link is correct on the default locale of a `prefix-no-default`
|
|
65
|
+
* site, and `?lang=` links are understood on `search-params` sites):
|
|
66
|
+
*
|
|
67
|
+
* - `url_hasLocalizedLinks`: internal links keep the page locale
|
|
68
|
+
* - `url_allAnchorsLocalized`: no internal link loses or switches the locale
|
|
69
|
+
* - `url_hasLangSelector`: crawlable links to the other locale versions exist
|
|
9
70
|
*/
|
|
10
|
-
export declare const
|
|
11
|
-
|
|
71
|
+
export declare const checkInternalLinks: (signals: PageSignals, emit: EmitScanEvent) => void;
|
|
72
|
+
/** Human-readable version of a {@link BundleContentAnalysis}, for display. */
|
|
73
|
+
export declare const formatBundleAnalysis: (analysis: BundleContentAnalysis) => {
|
|
74
|
+
currentLocale: string;
|
|
75
|
+
totalPageSize: string;
|
|
76
|
+
renderedContentSize: string;
|
|
77
|
+
contentSize: string;
|
|
78
|
+
totalLocaleSize: string;
|
|
79
|
+
totalUnusedLocaleSize: string;
|
|
80
|
+
unusedPercentOfLocale: string;
|
|
81
|
+
mainBundleChunks: {
|
|
82
|
+
filename: string;
|
|
83
|
+
url: string;
|
|
84
|
+
fileSize: string;
|
|
85
|
+
totalLocaleSize: string;
|
|
86
|
+
usedLocaleSize: string;
|
|
87
|
+
unusedLocaleSize: string;
|
|
88
|
+
dictionariesFound: number;
|
|
89
|
+
unusedPercent: string;
|
|
90
|
+
}[];
|
|
91
|
+
lazyBundleChunks: {
|
|
92
|
+
filename: string;
|
|
93
|
+
url: string;
|
|
94
|
+
fileSize: string;
|
|
95
|
+
totalLocaleSize: string;
|
|
96
|
+
usedLocaleSize: string;
|
|
97
|
+
unusedLocaleSize: string;
|
|
98
|
+
dictionariesFound: number;
|
|
99
|
+
unusedPercent: string;
|
|
100
|
+
}[];
|
|
12
101
|
};
|
|
13
|
-
/** Check the presence of a canonical link. */
|
|
14
|
-
export declare const checkCanonical: (html: string, targetUrl: string, events: ScanEvent[]) => void;
|
|
15
102
|
/**
|
|
16
|
-
*
|
|
17
|
-
*
|
|
103
|
+
* `url_unusedBundleContent`: share of other-locale translations shipped in the
|
|
104
|
+
* eagerly loaded bundles. Returns the raw analysis for reporting.
|
|
18
105
|
*/
|
|
19
|
-
export declare const
|
|
106
|
+
export declare const checkBundleContent: (chunks: BundleChunkInput[], html: string, currentLocale: string | undefined, targetUrl: string, totalPageSize: number, emit: EmitScanEvent) => BundleContentAnalysis | undefined;
|
|
20
107
|
/**
|
|
21
|
-
*
|
|
22
|
-
*
|
|
23
|
-
*
|
|
108
|
+
* Fetch `robots.txt` and check that neither the site nor its localized URLs
|
|
109
|
+
* are blocked for Googlebot.
|
|
110
|
+
*
|
|
111
|
+
* - `robots_robotsPresent`
|
|
112
|
+
* - `robots_noLocalizedUrlsForgotten`
|
|
113
|
+
*
|
|
114
|
+
* @param localizedUrls - URLs of every locale version (hreflang alternates).
|
|
115
|
+
* @returns The sitemaps declared in `robots.txt`.
|
|
24
116
|
*/
|
|
25
|
-
export declare const
|
|
117
|
+
export declare const checkRobots: (origin: string, localizedUrls: string[], fetchOptions: ScanFetchOptions, emit: EmitScanEvent) => Promise<string[]>;
|
|
26
118
|
/**
|
|
27
|
-
*
|
|
28
|
-
*
|
|
119
|
+
* Read the sitemaps (declared in `robots.txt`, else the default locations,
|
|
120
|
+
* following sitemap indexes) and check their locale coverage.
|
|
121
|
+
*
|
|
122
|
+
* - `sitemap_sitemapPresent`
|
|
123
|
+
* - `sitemap_noLocalizedUrlsForgotten`: every locale is listed, and entries
|
|
124
|
+
* declaring alternates declare all of them
|
|
125
|
+
* - `sitemap_hasAlternates` / `sitemap_hasXDefault`
|
|
29
126
|
*/
|
|
30
|
-
export declare const
|
|
31
|
-
/** Fetch and check `robots.txt`, emitting robots-related events. */
|
|
32
|
-
export declare const checkRobots: (origin: string, discoveredLocales: Set<string>, userAgent: string, events: ScanEvent[]) => Promise<void>;
|
|
33
|
-
/** Fetch and check `sitemap.xml`, emitting sitemap-related events. */
|
|
34
|
-
export declare const checkSitemap: (origin: string, discoveredLocales: Set<string>, userAgent: string, events: ScanEvent[]) => Promise<void>;
|
|
127
|
+
export declare const checkSitemap: (origin: string, declaredSitemapUrls: string[], routing: RoutingDetection, fetchOptions: ScanFetchOptions, emit: EmitScanEvent) => Promise<void>;
|
|
35
128
|
//#endregion
|
|
36
129
|
//# sourceMappingURL=checks.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checks.d.ts","names":[],"sources":["../../../src/scan/checks.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"checks.d.ts","names":[],"sources":["../../../src/scan/checks.ts"],"mappings":";;;;;;YAkCY,iBAAiB,OAAO;;YAGxB;EACV;EACA;EACA;EACA;;EAEA;;EAEA;EACA,WAAW;EACX,SAAS;EACT,SAAS;;EAET;;;qBAWW,aAAU;;qBAgCV,kBAAa,WAAA,WACA,aAAW,MAC7B;;;;;qBAqBK,iBAAY,WAAA,SAAA,UACS,aAAW,MACrC;;;;;qBAuCK,2BAAsB,WAAA,SAAA,WAAA,WACW,aAAW,MACjD;;;;;;qBA4DK,kBAAa,WAAA,UAAA,oBAAA,WACmC,aAAW,MAChE;;;;;qBAmEK,mBAAc,WAAA,eAAA,WAAA,SAAA,cACqC,aAAW,MACnE;;;;;qBAgDK,kBAAa,WAAA,WAAA,iBACiB,aAAW,MAC9C;;qBAgFK,kBAAa,WAAA,aACE,aAAW,MAC/B;;;;;;qBA4EK,6BAAwB,WAAA,WAAA,iBACM,aAAW,cACtC,kBAAgB,MACxB,kBACL;;;;;;;;;;qBAkFU,qBAAkB,SACpB,aAAW,MACd;;qBAwFK,uBAAoB,UAAc;EAC7C;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;;;;;;;;EACA;;;;;;;;;;;;;;;qBAOW,qBAAkB,QACrB,oBAAkB,cACd,mCACqB,mBAChB,uBACI,MACf,kBACL;;;;;;;;;;;qBAoDU,cAAW,gBACR,yBACS,cACT,kBAAgB,MACxB,kBACL;;;;;;;;;;qBAwDU,eAAY,gBACT,+BACe,SACpB,kBAAgB,cACX,kBAAgB,MACxB,kBACL"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
//#region src/scan/detection/checkDetails.d.ts
|
|
2
|
+
/** Details of a scan check, split for display. */
|
|
3
|
+
export type CheckDetailParts = {
|
|
4
|
+
/** Explanation of the check result. */
|
|
5
|
+
message?: string;
|
|
6
|
+
/** Offending `<a>` elements, as HTML source. */
|
|
7
|
+
links: string[];
|
|
8
|
+
/** Other listed items: issues, hreflang alternates, URLs… */
|
|
9
|
+
items: string[];
|
|
10
|
+
};
|
|
11
|
+
/**
|
|
12
|
+
* Split the details attached to a scan check into its message, the listed
|
|
13
|
+
* links (HTML source) and the other listed items. Shapes without any of them
|
|
14
|
+
* (bundle summaries, hreflang lists…) return empty lists.
|
|
15
|
+
*
|
|
16
|
+
* @param details - The `success` / `warning` / `error` payload of a check.
|
|
17
|
+
*/
|
|
18
|
+
export declare const splitCheckDetails: (details: unknown) => CheckDetailParts;
|
|
19
|
+
/**
|
|
20
|
+
* Turn the details attached to a scan check into short printable lines: its
|
|
21
|
+
* message, then the listed issues / links / URLs. Shared by the CLI report and
|
|
22
|
+
* the Chrome extension popup.
|
|
23
|
+
*
|
|
24
|
+
* @param details - The `success` / `warning` / `error` payload of a check.
|
|
25
|
+
* @returns The message first, then one line per listed item.
|
|
26
|
+
*/
|
|
27
|
+
export declare const getCheckDetailLines: (details: unknown) => string[];
|
|
28
|
+
//#endregion
|
|
29
|
+
//# sourceMappingURL=checkDetails.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"checkDetails.d.ts","names":[],"sources":["../../../../src/scan/detection/checkDetails.ts"],"mappings":";;YACY;;EAEV;;EAEA;;EAEA;;;;;;;;;qBAUW,oBAAiB,qBAAuB;;;;;;;;;qBAkCxC,sBAAmB"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { RoutingDetection } from "./detectRoutingStrategy.js";
|
|
2
|
+
//#region src/scan/detection/classifyInternalLinks.d.ts
|
|
3
|
+
/** A page anchor, as parsed from HTML or read from a live DOM. */
|
|
4
|
+
export type LinkAnchor = {
|
|
5
|
+
href: string;
|
|
6
|
+
text: string;
|
|
7
|
+
/** `hreflang` attribute, set on language-switcher links. */
|
|
8
|
+
hreflang?: string;
|
|
9
|
+
};
|
|
10
|
+
/** Input of {@link classifyInternalLinks}. */
|
|
11
|
+
export type LinkClassificationInput<Anchor extends LinkAnchor> = {
|
|
12
|
+
/** Absolute URL of the page holding the anchors. */
|
|
13
|
+
targetUrl: string;
|
|
14
|
+
anchors: Anchor[];
|
|
15
|
+
hreflangs: {
|
|
16
|
+
hreflang: string;
|
|
17
|
+
href: string;
|
|
18
|
+
}[];
|
|
19
|
+
routing: RoutingDetection;
|
|
20
|
+
/** Locale of the page. */
|
|
21
|
+
pageLocale?: string;
|
|
22
|
+
};
|
|
23
|
+
/** Internal anchors of a page, grouped by the locale they lead to. */
|
|
24
|
+
export type LinkClassification<Anchor extends LinkAnchor> = {
|
|
25
|
+
/** Internal page links, language-switcher links excluded. */
|
|
26
|
+
internalLinks: Anchor[];
|
|
27
|
+
/** Internal links keeping the page locale. */
|
|
28
|
+
sameLocaleLinks: Anchor[];
|
|
29
|
+
/** Internal links leading to another locale. */
|
|
30
|
+
otherLocaleLinks: Anchor[];
|
|
31
|
+
/** Internal links whose URL carries no locale. */
|
|
32
|
+
unlocalizedLinks: Anchor[];
|
|
33
|
+
/** Links to the other locale versions (hreflang alternates). */
|
|
34
|
+
switcherLinks: Anchor[];
|
|
35
|
+
};
|
|
36
|
+
/**
|
|
37
|
+
* Group the internal anchors of a page by the locale they lead to, reading
|
|
38
|
+
* each URL through the detected routing strategy (so unprefixed links count as
|
|
39
|
+
* the default locale on a `prefix-no-default` site, and `?lang=` is understood
|
|
40
|
+
* on a `search-params` site).
|
|
41
|
+
*/
|
|
42
|
+
export declare const classifyInternalLinks: <Anchor extends LinkAnchor>({ targetUrl, anchors, hreflangs, routing, pageLocale }: LinkClassificationInput<Anchor>) => LinkClassification<Anchor>;
|
|
43
|
+
//#endregion
|
|
44
|
+
//# sourceMappingURL=classifyInternalLinks.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"classifyInternalLinks.d.ts","names":[],"sources":["../../../../src/scan/detection/classifyInternalLinks.ts"],"mappings":";;;YAKY;EACV;EACA;;EAEA;;;YAIU,wBAAwB,eAAe;;EAEjD;EACA,SAAS;EACT;IAAa;IAAkB;;EAC/B,SAAS;;EAET;;;YAIU,mBAAmB,eAAe;;EAE5C,eAAe;;EAEf,iBAAiB;;EAEjB,kBAAkB;;EAElB,kBAAkB;;EAElB,eAAe;;;;;;;;qBAYJ,wBAAyB,eAAe,cAAU,WAAA,SAAA,WAAA,SAAA,cAM5D,wBAAwB,YAAU,mBAAmB"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
//#region src/scan/detection/detectRoutingStrategy.d.ts
|
|
2
|
+
/**
|
|
3
|
+
* How a website exposes its locales in URLs. Mirrors Intlayer's
|
|
4
|
+
* `routing.mode` values, plus the domain-based strategies.
|
|
5
|
+
*
|
|
6
|
+
* - `prefix-all`: every locale is prefixed (`/en/about`, `/fr/about`)
|
|
7
|
+
* - `prefix-no-default`: the default locale is not prefixed (`/about`, `/fr/about`)
|
|
8
|
+
* - `search-params`: the locale is a query parameter (`/about?lang=fr`)
|
|
9
|
+
* - `subdomain`: the locale is a subdomain (`fr.example.com`)
|
|
10
|
+
* - `domain`: one domain per locale (`example.fr`, `example.de`)
|
|
11
|
+
* - `no-prefix`: a single URL serves every locale (cookie / header based)
|
|
12
|
+
* - `unknown`: not enough signals to decide
|
|
13
|
+
*/
|
|
14
|
+
export type RoutingStrategy = 'prefix-all' | 'prefix-no-default' | 'search-params' | 'subdomain' | 'domain' | 'no-prefix' | 'unknown';
|
|
15
|
+
/** Result of {@link detectRoutingStrategy}. */
|
|
16
|
+
export type RoutingDetection = {
|
|
17
|
+
strategy: RoutingStrategy;
|
|
18
|
+
/**
|
|
19
|
+
* `high` when inferred from the hreflang alternates, `low` when guessed from
|
|
20
|
+
* the scanned URL alone.
|
|
21
|
+
*/
|
|
22
|
+
confidence: 'high' | 'low';
|
|
23
|
+
/** Locales known to the site (hreflang values, else the page `lang`). */
|
|
24
|
+
locales: string[];
|
|
25
|
+
/** Locale served without any marker (`prefix-no-default`, `search-params`…). */
|
|
26
|
+
defaultLocale?: string;
|
|
27
|
+
/** Query parameter carrying the locale, for `search-params`. */
|
|
28
|
+
searchParamName?: string;
|
|
29
|
+
/** Hostname → locale map, for `subdomain` / `domain`. */
|
|
30
|
+
hostLocales?: Record<string, string>;
|
|
31
|
+
/** Locale of the scanned page according to its URL alone. */
|
|
32
|
+
urlLocale?: string;
|
|
33
|
+
/** Human-readable explanation of the decision. */
|
|
34
|
+
evidence: string;
|
|
35
|
+
};
|
|
36
|
+
/** Input of {@link detectRoutingStrategy}. */
|
|
37
|
+
export type RoutingDetectionInput = {
|
|
38
|
+
/** Absolute URL of the scanned page. */
|
|
39
|
+
pageUrl: string;
|
|
40
|
+
/** Value of `<html lang>`, when present. */
|
|
41
|
+
htmlLang?: string;
|
|
42
|
+
/** `<link rel="alternate" hreflang>` entries of the page. */
|
|
43
|
+
hreflangs: {
|
|
44
|
+
hreflang: string;
|
|
45
|
+
href: string;
|
|
46
|
+
}[];
|
|
47
|
+
};
|
|
48
|
+
/** Locale of a URL according to an already-detected routing strategy. */
|
|
49
|
+
export declare const getUrlLocale: (url: string, routing: RoutingDetection) => string | undefined;
|
|
50
|
+
/**
|
|
51
|
+
* Detect how the site encodes the locale in its URLs (path prefix, query
|
|
52
|
+
* parameter, subdomain, domain or nothing).
|
|
53
|
+
*
|
|
54
|
+
* The hreflang alternates are the most reliable signal: each one pairs a
|
|
55
|
+
* locale with its URL, so the shared pattern reveals the strategy. Without
|
|
56
|
+
* alternates the scanned URL alone is used, with `confidence: 'low'`.
|
|
57
|
+
*/
|
|
58
|
+
export declare const detectRoutingStrategy: ({ pageUrl, htmlLang, hreflangs }: RoutingDetectionInput) => RoutingDetection;
|
|
59
|
+
//#endregion
|
|
60
|
+
//# sourceMappingURL=detectRoutingStrategy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"detectRoutingStrategy.d.ts","names":[],"sources":["../../../../src/scan/detection/detectRoutingStrategy.ts"],"mappings":";;;;;;;;;;;;;YAoBY;;YAUA;EACV,UAAU;;;;;EAKV;;EAEA;;EAEA;;EAEA;;EAEA,cAAc;;EAEd;;EAEA;;;YAIU;;EAEV;;EAEA;;EAEA;IAAa;IAAkB;;;;qBAMpB,eAAY,aACZ,SACF;;;;;;;;;qBA+ME,0BAAqB,SAAA,UAAA,aAI/B,0BAAwB"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { TechnologyCategory, TechnologySignature } from "./technologySignatures.js";
|
|
2
|
+
//#region src/scan/detection/detectTechnologies.d.ts
|
|
3
|
+
/** A technology detected on the scanned page. */
|
|
4
|
+
export type DetectedTechnology = {
|
|
5
|
+
/** Stable identifier, e.g. `nextjs`, `crowdin`. */
|
|
6
|
+
id: string;
|
|
7
|
+
/** Human-readable name, e.g. `Next.js`. */
|
|
8
|
+
name: string;
|
|
9
|
+
category: TechnologyCategory;
|
|
10
|
+
/** Version when it can be read from the page, e.g. `14.2.3`. */
|
|
11
|
+
version?: string;
|
|
12
|
+
/** Short explanation of the signal that triggered the detection. */
|
|
13
|
+
evidence: string;
|
|
14
|
+
};
|
|
15
|
+
/**
|
|
16
|
+
* Raw signals collected from a page. Every field is optional so each consumer
|
|
17
|
+
* provides what it can: the CLI basic mode only has HTML + scripts, the
|
|
18
|
+
* backend and the extension also read window globals and storage keys.
|
|
19
|
+
*/
|
|
20
|
+
export type TechnologyDetectionInput = {
|
|
21
|
+
/**
|
|
22
|
+
* URL of the scanned page. Resource URLs on its own site are ignored for
|
|
23
|
+
* third-party services, so the Crowdin website is not reported as using
|
|
24
|
+
* Crowdin because it loads its own favicon.
|
|
25
|
+
*/
|
|
26
|
+
pageUrl?: string;
|
|
27
|
+
/** HTML document, inline scripts included. */
|
|
28
|
+
html?: string;
|
|
29
|
+
/** Script / stylesheet / iframe / network request URLs. */
|
|
30
|
+
resourceUrls?: string[];
|
|
31
|
+
/** Contents of the same-origin JavaScript chunks. */
|
|
32
|
+
scripts?: string[];
|
|
33
|
+
/** Names of the window globals that exist on the page. */
|
|
34
|
+
globals?: string[];
|
|
35
|
+
/** Cookie / web-storage keys found on the page. */
|
|
36
|
+
storageKeys?: string[];
|
|
37
|
+
/** Live-DOM markers, see {@link TechnologySignature.domMarkers}. */
|
|
38
|
+
domMarkers?: string[];
|
|
39
|
+
/** Values read from {@link TechnologySignature.versionGlobal} paths. */
|
|
40
|
+
globalVersions?: Record<string, string>;
|
|
41
|
+
};
|
|
42
|
+
/**
|
|
43
|
+
* Every window global and version path referenced by the signatures. Live-page
|
|
44
|
+
* collectors (extension, puppeteer) read these and pass back the ones present.
|
|
45
|
+
*/
|
|
46
|
+
export declare const getTechnologyGlobalNames: () => {
|
|
47
|
+
globals: string[];
|
|
48
|
+
versionGlobals: string[];
|
|
49
|
+
};
|
|
50
|
+
/**
|
|
51
|
+
* Detect the frameworks, i18n libraries, TMS and translation proxies used by a
|
|
52
|
+
* page from the raw signals collected on it.
|
|
53
|
+
*
|
|
54
|
+
* @param input - The {@link TechnologyDetectionInput} signals.
|
|
55
|
+
* @param signatures - Fingerprints to test, defaults to {@link technologySignatures}.
|
|
56
|
+
* @returns Detected technologies, in signature order.
|
|
57
|
+
*/
|
|
58
|
+
export declare const detectTechnologies: (input: TechnologyDetectionInput, signatures?: readonly TechnologySignature[]) => DetectedTechnology[];
|
|
59
|
+
//#endregion
|
|
60
|
+
//# sourceMappingURL=detectTechnologies.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"detectTechnologies.d.ts","names":[],"sources":["../../../../src/scan/detection/detectTechnologies.ts"],"mappings":";;;YAQY;;EAEV;;EAEA;EACA,UAAU;;EAEV;;EAEA;;;;;;;YAQU;;;;;;EAMV;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA,iBAAiB;;;;;;qBAmGN;EACX;EACA;;;;;;;;;;qBAoBW,qBAAkB,OACtB,0BAAwB,sBACV,0BACpB"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { RoutingDetection, RoutingDetectionInput, RoutingStrategy, detectRoutingStrategy, getUrlLocale } from "./detectRoutingStrategy.js";
|
|
2
|
+
import { TechnologyCategory, TechnologySignature, technologySignatures } from "./technologySignatures.js";
|
|
3
|
+
import { DetectedTechnology, TechnologyDetectionInput, detectTechnologies, getTechnologyGlobalNames } from "./detectTechnologies.js";
|
|
4
|
+
import { CheckDetailParts, getCheckDetailLines, splitCheckDetails } from "./checkDetails.js";
|
|
5
|
+
import { LinkAnchor, LinkClassification, LinkClassificationInput, classifyInternalLinks } from "./classifyInternalLinks.js";
|
|
6
|
+
import { findMatchingLocale, getLanguageCode, isRightToLeftLocale, isSameLanguage, isSameLocale, isValidLocaleCode, isValidOpenGraphLocale, looksLikeLocaleCode, normalizeLocaleCode, toOpenGraphLocale } from "./localeCode.js";
|
|
7
|
+
import { BaseLocalePageInput, LocalizedPage, getLocalizedPages, isBaseLocalePage } from "./localizedPages.js";
|
|
8
|
+
import { getFirstPathSegment, getSiteDomain, isAbsoluteUrl, normalizeHostname, normalizeUrl, parseUrl } from "./url.js";
|
|
9
|
+
export { BaseLocalePageInput, CheckDetailParts, DetectedTechnology, LinkAnchor, LinkClassification, LinkClassificationInput, LocalizedPage, RoutingDetection, RoutingDetectionInput, RoutingStrategy, TechnologyCategory, TechnologyDetectionInput, TechnologySignature, classifyInternalLinks, detectRoutingStrategy, detectTechnologies, findMatchingLocale, getCheckDetailLines, getFirstPathSegment, getLanguageCode, getLocalizedPages, getSiteDomain, getTechnologyGlobalNames, getUrlLocale, isAbsoluteUrl, isBaseLocalePage, isRightToLeftLocale, isSameLanguage, isSameLocale, isValidLocaleCode, isValidOpenGraphLocale, looksLikeLocaleCode, normalizeHostname, normalizeLocaleCode, normalizeUrl, parseUrl, splitCheckDetails, technologySignatures, toOpenGraphLocale };
|