mirror of
https://github.com/angular/angular
synced 2026-05-24 09:28:37 +00:00
The AIO search index is built in a WebWorker on the browser from a set of page information that is downloaded as a JSON file (`search-data.json`). We want to keep this file as small as possible while providing enough data to generate a useful index to query against. Previously, we only included one copy of each (non-ignored) term from each doc but this prevents more subtle ranking of query results, since the number of occurences of a term in a doc is lost. This commit changes the generated file in the following ways: - All non-ignored terms are now included in the order in which they appear in the doc. - The terms are indexed into a dictonary to avoid the text of the term being repeated in every doc that contains the term. - Each term is pre-"stemmed" using the same Porter Stemming algorith that the Lunr search engine uses. The web-worker has been updated to decode the new format of the file. Now that all terms are included, it may enable some level of phrase based matching in the future. The size of the generated file is considerably larger than previously, but on production HTTP servers the data is sent compressed, which reduces the size dramatically. PR Close #41368
185 lines
8.6 KiB
JSON
185 lines
8.6 KiB
JSON
{
|
|
"name": "angular.io",
|
|
"version": "0.0.0",
|
|
"main": "index.js",
|
|
"repository": "git@github.com:angular/angular.git",
|
|
"author": "Angular",
|
|
"license": "MIT",
|
|
"scripts": {
|
|
"preinstall": "node ../tools/yarn/check-yarn.js",
|
|
"postinstall": "node tools/cli-patches/patch.js",
|
|
"aio-use-local": "node tools/ng-packages-installer overwrite . --debug --force --build-packages",
|
|
"aio-use-npm": "node tools/ng-packages-installer restore .",
|
|
"aio-check-local": "node tools/ng-packages-installer check .",
|
|
"ng": "yarn check-env && ng",
|
|
"start": "yarn check-env && ng serve --configuration=fast",
|
|
"prebuild": "yarn setup",
|
|
"build": "yarn ~~build",
|
|
"prebuild-local": "yarn setup-local",
|
|
"build-local": "yarn ~~build",
|
|
"prebuild-local-ci": "yarn setup-local-ci",
|
|
"build-local-ci": "yarn ~~build --progress=false",
|
|
"prebuild-local-with-viewengine": "node scripts/switch-to-viewengine && yarn setup-local",
|
|
"build-local-with-viewengine": "yarn ~~build",
|
|
"prebuild-local-with-viewengine-ci": "node scripts/switch-to-viewengine && yarn setup-local-ci",
|
|
"build-local-with-viewengine-ci": "yarn ~~build --progress=false",
|
|
"extract-cli-command-docs": "node tools/transforms/cli-docs-package/extract-cli-commands.js b6effecae",
|
|
"lint": "yarn check-env && yarn docs-lint && ng lint && yarn example-lint && yarn tools-lint",
|
|
"test": "yarn check-env && ng test",
|
|
"pree2e": "yarn check-env && yarn update-webdriver",
|
|
"e2e": "ng e2e --no-webdriver-update",
|
|
"presetup": "yarn --cwd .. install && yarn install --frozen-lockfile && yarn ~~check-env && yarn ~~clean-generated && yarn boilerplate:remove",
|
|
"setup": "yarn example-use-npm && yarn aio-use-npm",
|
|
"postsetup": "yarn boilerplate:add && yarn extract-cli-command-docs && yarn docs",
|
|
"presetup-local": "yarn presetup",
|
|
"setup-local": "yarn aio-use-local && yarn example-use-local",
|
|
"postsetup-local": "yarn postsetup",
|
|
"presetup-local-ci": "yarn presetup-local",
|
|
"setup-local-ci": "yarn aio-use-local --no-build-packages && yarn example-use-local",
|
|
"postsetup-local-ci": "yarn postsetup-local",
|
|
"set-opensearch-url": "node --eval \"const sh = require('shelljs'); sh.set('-e'); sh.sed('-i', /PLACEHOLDER_URL/g, process.argv[1], 'dist/assets/opensearch.xml');\"",
|
|
"presmoke-tests": "yarn update-webdriver",
|
|
"smoke-tests": "protractor tests/deployment/e2e/protractor.conf.js --suite smoke --baseUrl",
|
|
"test-a11y-score": "node scripts/test-aio-a11y",
|
|
"test-a11y-score-localhost": "run-p --race \"~~light-server -s dist -p 4200 --quiet\" \"test-a11y-score http://localhost:4200\" --",
|
|
"test-pwa-score": "run-s \"~~audit-web-app {1} all:0,pwa:{2} {3}\" --",
|
|
"test-pwa-score-localhost": "run-p --race \"~~light-server -s dist -p 4200 --quiet\" \"test-pwa-score http://localhost:4200 {1} {2}\" --",
|
|
"example-e2e": "yarn example-check-local && node ./tools/examples/run-example-e2e",
|
|
"example-lint": "tslint --config \"content/examples/tslint.json\" \"content/examples/**/*.ts\" --exclude \"content/examples/styleguide/**/*.avoid.ts\"",
|
|
"example-use-local": "node tools/ng-packages-installer overwrite ./tools/examples/shared --debug --force",
|
|
"example-use-npm": "node tools/ng-packages-installer restore ./tools/examples/shared",
|
|
"example-check-local": "node tools/ng-packages-installer check ./tools/examples/shared",
|
|
"deploy-production": "node scripts/deploy-to-firebase",
|
|
"check-env": "yarn ~~check-env",
|
|
"postcheck-env": "yarn aio-check-local",
|
|
"payload-size": "scripts/payload.sh",
|
|
"predocs": "node scripts/contributors/validate-data && yarn generate-stackblitz && yarn generate-zips",
|
|
"docs": "yarn docs-only",
|
|
"docs-only": "dgeni ./tools/transforms/angular.io-package",
|
|
"docs-watch": "node tools/transforms/authors-package/watchr.js",
|
|
"docs-lint": "eslint --ignore-path=\"tools/transforms/.eslintignore\" tools/transforms",
|
|
"docs-test": "node tools/transforms/test.js",
|
|
"redirects-test": "node tests/deployment/unit/test",
|
|
"firebase-utils-test": "node tools/firebase-test-utils/test",
|
|
"tools-lint": "tslint --config \"tools/tslint.json\" --project \"tools/firebase-test-utils\"",
|
|
"tools-test": "yarn docs-test && yarn boilerplate:test && jasmine tools/ng-packages-installer/index.spec.js && jasmine scripts/deploy-to-firebase.spec.js && yarn firebase-utils-test",
|
|
"preserve-and-sync": "yarn docs",
|
|
"serve-and-sync": "run-p \"docs-watch --watch-only\" \"start {@}\" --",
|
|
"boilerplate:add": "node ./tools/examples/example-boilerplate add",
|
|
"boilerplate:add:viewengine": "yarn boilerplate:add --viewengine",
|
|
"boilerplate:remove": "node ./tools/examples/example-boilerplate remove",
|
|
"boilerplate:test": "node tools/examples/test.js",
|
|
"generate-stackblitz": "node ./tools/stackblitz-builder/generateStackblitz",
|
|
"generate-zips": "node ./tools/example-zipper/generateZips",
|
|
"create-example": "node ./tools/examples/create-example.js",
|
|
"build-404-page": "node scripts/build-404-page",
|
|
"update-webdriver": "node ../scripts/webdriver-manager-update.js",
|
|
"~~audit-web-app": "node scripts/audit-web-app",
|
|
"~~check-env": "node scripts/check-environment",
|
|
"~~clean-generated": "node --eval \"require('shelljs').rm('-rf', 'src/generated')\"",
|
|
"pre~~build": "yarn ~~build-ce-es5-polyfills",
|
|
"~~build": "ng build --configuration=stable",
|
|
"post~~build": "yarn build-404-page",
|
|
"~~build-ce-es5-polyfills": "esbuild src/custom-elements-es5-polyfills.js --bundle --minify | swc --config=minify=true --filename=custom-elements-es5-polyfills.js --out-file=src/generated/js/custom-elements-es5-polyfills.js --no-swcrc",
|
|
"~~light-server": "light-server --bind=localhost --historyindex=/index.html --no-reload"
|
|
},
|
|
"//engines-comment": "Keep this in sync with /package.json and /aio/tools/examples/shared/package.json",
|
|
"engines": {
|
|
"node": ">=10.9.0 <13.0.0",
|
|
"yarn": ">=1.22.4 <2"
|
|
},
|
|
"private": true,
|
|
"dependencies": {
|
|
"@angular/animations": "11.2.3",
|
|
"@angular/cdk": "11.2.2",
|
|
"@angular/common": "11.2.3",
|
|
"@angular/compiler": "11.2.3",
|
|
"@angular/core": "11.2.3",
|
|
"@angular/elements": "11.2.3",
|
|
"@angular/forms": "11.2.3",
|
|
"@angular/material": "11.2.2",
|
|
"@angular/platform-browser": "11.2.3",
|
|
"@angular/platform-browser-dynamic": "11.2.3",
|
|
"@angular/router": "11.2.3",
|
|
"@angular/service-worker": "11.2.3",
|
|
"@webcomponents/custom-elements": "1.2.1",
|
|
"rxjs": "^6.5.3",
|
|
"tslib": "^2.1.0",
|
|
"zone.js": "~0.11.4"
|
|
},
|
|
"devDependencies": {
|
|
"@angular-devkit/build-angular": "0.1102.2",
|
|
"@angular/cli": "11.2.2",
|
|
"@angular/compiler-cli": "11.2.3",
|
|
"@swc/cli": "^0.1.35",
|
|
"@swc/core": "^1.2.50",
|
|
"@types/jasmine": "~3.6.0",
|
|
"@types/lunr": "^2.3.2",
|
|
"@types/node": "^12.7.9",
|
|
"@types/stemmer": "^1.0.2",
|
|
"@types/xregexp": "^3.0.30",
|
|
"@yarnpkg/lockfile": "^1.1.0",
|
|
"archiver": "^1.3.0",
|
|
"canonical-path": "1.0.0",
|
|
"chalk": "^2.1.0",
|
|
"cjson": "^0.5.0",
|
|
"codelyzer": "^6.0.0",
|
|
"cross-spawn": "^5.1.0",
|
|
"css-selector-parser": "^1.3.0",
|
|
"dgeni": "^0.4.13",
|
|
"dgeni-packages": "^0.28.4",
|
|
"entities": "^1.1.1",
|
|
"esbuild": "^0.9.0",
|
|
"eslint": "^3.19.0",
|
|
"eslint-plugin-jasmine": "^2.2.0",
|
|
"find-free-port": "^2.0.0",
|
|
"firebase-tools": "^8.14.1",
|
|
"fs-extra": "^2.1.2",
|
|
"globby": "^6.1.0",
|
|
"hast-util-is-element": "^1.0.0",
|
|
"hast-util-to-string": "^1.0.0",
|
|
"html": "^1.0.0",
|
|
"ignore": "^3.3.3",
|
|
"image-size": "^0.5.1",
|
|
"jasmine": "~3.6.0",
|
|
"jasmine-core": "~3.6.0",
|
|
"jasmine-spec-reporter": "~5.0.0",
|
|
"jsdom": "^9.12.0",
|
|
"json-schema-traverse": "^0.4.1",
|
|
"json5": "^1.0.1",
|
|
"karma": "~6.1.0",
|
|
"karma-chrome-launcher": "~3.1.0",
|
|
"karma-coverage": "~2.0.3",
|
|
"karma-jasmine": "~4.0.0",
|
|
"karma-jasmine-html-reporter": "^1.5.0",
|
|
"light-server": "^2.6.2",
|
|
"lighthouse": "^7.2.0",
|
|
"lighthouse-logger": "^1.2.0",
|
|
"lodash": "^4.17.4",
|
|
"lunr": "^2.1.0",
|
|
"npm-run-all": "^4.1.5",
|
|
"protractor": "~7.0.0",
|
|
"puppeteer": "5.4.1",
|
|
"rehype": "^6.0.0",
|
|
"rehype-slug": "^2.0.0",
|
|
"remark": "^9.0.0",
|
|
"remark-html": "^8.0.0",
|
|
"rimraf": "^2.6.1",
|
|
"semver": "^5.3.0",
|
|
"shelljs": "^0.8.4",
|
|
"stemmer": "^1.0.5",
|
|
"timezone-mock": "^1.1.3",
|
|
"tree-kill": "^1.1.0",
|
|
"ts-node": "^8.4.1",
|
|
"tslint": "~6.1.0",
|
|
"typescript": "~4.2.3",
|
|
"uglify-js": "^3.0.15",
|
|
"unist-util-filter": "^0.2.1",
|
|
"unist-util-source": "^1.0.1",
|
|
"unist-util-visit": "^1.1.1",
|
|
"unist-util-visit-parents": "^1.1.1",
|
|
"watchr": "^3.0.1",
|
|
"xregexp": "^4.0.0",
|
|
"yargs": "^16.2.0"
|
|
}
|
|
}
|