diff --git a/package-lock.json b/package-lock.json index 47a8dcb7f6a..2e1311e92a1 100644 --- a/package-lock.json +++ b/package-lock.json @@ -7,6 +7,7 @@ "": { "name": "blockly-repo", "version": "0.0.0", + "hasInstallScript": true, "license": "Apache-2.0", "workspaces": [ "packages/*" @@ -5688,57 +5689,42 @@ } }, "node_modules/@microsoft/api-documenter": { - "version": "7.22.4", - "resolved": "https://registry.npmjs.org/@microsoft/api-documenter/-/api-documenter-7.22.4.tgz", - "integrity": "sha512-d4htEhBd8UkFKff/+/nAi/z7rrspm1DanFmsRHLUp4gKMo/8hYDH/IQBWB4r9X/8X72jCv3I++VVWAfichL1rw==", + "version": "7.30.5", + "resolved": "https://registry.npmjs.org/@microsoft/api-documenter/-/api-documenter-7.30.5.tgz", + "integrity": "sha512-Ui+QDj54dMGvAfVJ3D4wmIW3sfsvgXohPvlnMqIrZPGM3dVBjqnC3g/8oG4Mue+Kui/JwRom5YpZgTnVjcKNdg==", "dev": true, "license": "MIT", "dependencies": { - "@microsoft/api-extractor-model": "7.26.8", - "@microsoft/tsdoc": "0.14.2", - "@rushstack/node-core-library": "3.58.0", - "@rushstack/ts-command-line": "4.13.2", - "colors": "~1.2.1", - "js-yaml": "~3.13.1", + "@microsoft/api-extractor-model": "7.33.8", + "@microsoft/tsdoc": "~0.16.0", + "@rushstack/node-core-library": "5.23.1", + "@rushstack/terminal": "0.24.0", + "@rushstack/ts-command-line": "5.3.9", + "js-yaml": "~4.1.0", "resolve": "~1.22.1" }, "bin": { "api-documenter": "bin/api-documenter" } }, - "node_modules/@microsoft/api-documenter/node_modules/js-yaml": { - "version": "3.13.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", - "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", - "dev": true, - "license": "MIT", - "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, "node_modules/@microsoft/api-extractor": { - "version": "7.58.0", - "resolved": "https://registry.npmjs.org/@microsoft/api-extractor/-/api-extractor-7.58.0.tgz", - "integrity": "sha512-XcHlDylX5GblbGbs1eBoexjVyvdJMioTPuBCgCorE2rqijzTYxi6eudXyez3xACRxtH9aDtahoL9fYM4XTvQmg==", + "version": "7.58.7", + "resolved": "https://registry.npmjs.org/@microsoft/api-extractor/-/api-extractor-7.58.7.tgz", + "integrity": "sha512-yK6OycD46gIzLRpj6ueVUWPk1ACSpkN1LBo05gY1qPTylbWyUCanXfH7+VgkI5LJrJoRSQR5F04XuCffCXLOBw==", "dev": true, "license": "MIT", "dependencies": { - "@microsoft/api-extractor-model": "7.33.5", + "@microsoft/api-extractor-model": "7.33.8", "@microsoft/tsdoc": "~0.16.0", "@microsoft/tsdoc-config": "~0.18.1", - "@rushstack/node-core-library": "5.21.0", - "@rushstack/rig-package": "0.7.2", - "@rushstack/terminal": "0.22.4", - "@rushstack/ts-command-line": "5.3.4", + "@rushstack/node-core-library": "5.23.1", + "@rushstack/rig-package": "0.7.3", + "@rushstack/terminal": "0.24.0", + "@rushstack/ts-command-line": "5.3.9", "diff": "~8.0.2", - "lodash": "~4.17.23", "minimatch": "10.2.3", "resolve": "~1.22.1", - "semver": "~7.5.4", + "semver": "~7.7.4", "source-map": "~0.6.1", "typescript": "5.9.3" }, @@ -5747,177 +5733,15 @@ } }, "node_modules/@microsoft/api-extractor-model": { - "version": "7.26.8", - "resolved": "https://registry.npmjs.org/@microsoft/api-extractor-model/-/api-extractor-model-7.26.8.tgz", - "integrity": "sha512-ESj3bBJkiMg/8tS0PW4+2rUgTVwOEfy41idTnFgdbVX+O50bN6S99MV6FIPlCZWCnRDcBfwxRXLdAkOQQ0JqGw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@microsoft/tsdoc": "0.14.2", - "@microsoft/tsdoc-config": "~0.16.1", - "@rushstack/node-core-library": "3.58.0" - } - }, - "node_modules/@microsoft/api-extractor-model/node_modules/@microsoft/tsdoc-config": { - "version": "0.16.2", - "resolved": "https://registry.npmjs.org/@microsoft/tsdoc-config/-/tsdoc-config-0.16.2.tgz", - "integrity": "sha512-OGiIzzoBLgWWR0UdRJX98oYO+XKGf7tiK4Zk6tQ/E4IJqGCe7dvkTvgDZV5cFJUzLGDOjeAXrnZoA6QkVySuxw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@microsoft/tsdoc": "0.14.2", - "ajv": "~6.12.6", - "jju": "~1.4.0", - "resolve": "~1.19.0" - } - }, - "node_modules/@microsoft/api-extractor-model/node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "license": "MIT", - "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/@microsoft/api-extractor-model/node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true, - "license": "MIT" - }, - "node_modules/@microsoft/api-extractor-model/node_modules/resolve": { - "version": "1.19.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.19.0.tgz", - "integrity": "sha512-rArEXAgsBG4UgRGcynxWIWKFvh/XZCcS8UJdHhwy91zwAvCZIbcs+vAbflgBnNjYMs/i/i+/Ux6IZhML1yPvxg==", - "dev": true, - "license": "MIT", - "dependencies": { - "is-core-module": "^2.1.0", - "path-parse": "^1.0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/@microsoft/api-extractor/node_modules/@microsoft/api-extractor-model": { - "version": "7.33.5", - "resolved": "https://registry.npmjs.org/@microsoft/api-extractor-model/-/api-extractor-model-7.33.5.tgz", - "integrity": "sha512-Xh4dXuusndVQqVz4nEN9xOp0DyzsKxeD2FFJkSPg4arAjDSKPcy6cAc7CaeBPA7kF2wV1fuDlo2p/bNMpVr8yg==", + "version": "7.33.8", + "resolved": "https://registry.npmjs.org/@microsoft/api-extractor-model/-/api-extractor-model-7.33.8.tgz", + "integrity": "sha512-aIcoQggPyer3B6Ze3usz0YWC/oBwUHfRH5ETUsr+oT2BRA6SfTJl7IKPcPZkX4UR+PohowzW4uMxsvjrn8vm+w==", "dev": true, "license": "MIT", "dependencies": { "@microsoft/tsdoc": "~0.16.0", "@microsoft/tsdoc-config": "~0.18.1", - "@rushstack/node-core-library": "5.21.0" - } - }, - "node_modules/@microsoft/api-extractor/node_modules/@microsoft/tsdoc": { - "version": "0.16.0", - "resolved": "https://registry.npmjs.org/@microsoft/tsdoc/-/tsdoc-0.16.0.tgz", - "integrity": "sha512-xgAyonlVVS+q7Vc7qLW0UrJU7rSFcETRWsqdXZtjzRU8dF+6CkozTK4V4y1LwOX7j8r/vHphjDeMeGI4tNGeGA==", - "dev": true, - "license": "MIT" - }, - "node_modules/@microsoft/api-extractor/node_modules/@rushstack/node-core-library": { - "version": "5.21.0", - "resolved": "https://registry.npmjs.org/@rushstack/node-core-library/-/node-core-library-5.21.0.tgz", - "integrity": "sha512-LFzN+1lyWROit/P8Md6yxAth7lLYKn37oCKJHirEE2TQB25NDUM7bALf0ar+JAtwFfRCH+D+DGOA7DAzIi2r+g==", - "dev": true, - "license": "MIT", - "dependencies": { - "ajv": "~8.18.0", - "ajv-draft-04": "~1.0.0", - "ajv-formats": "~3.0.1", - "fs-extra": "~11.3.0", - "import-lazy": "~4.0.0", - "jju": "~1.4.0", - "resolve": "~1.22.1", - "semver": "~7.5.4" - }, - "peerDependencies": { - "@types/node": "*" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - } - } - }, - "node_modules/@microsoft/api-extractor/node_modules/@rushstack/ts-command-line": { - "version": "5.3.4", - "resolved": "https://registry.npmjs.org/@rushstack/ts-command-line/-/ts-command-line-5.3.4.tgz", - "integrity": "sha512-MLkVKVEN6/2clKTrjN2B2KqKCuPxRwnNsWY7a+FCAq2EMdkj10cM8YgiBSMeGFfzM0mDMzargpHNnNzaBi9Whg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@rushstack/terminal": "0.22.4", - "@types/argparse": "1.0.38", - "argparse": "~1.0.9", - "string-argv": "~0.3.1" - } - }, - "node_modules/@microsoft/api-extractor/node_modules/ajv-formats": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-3.0.1.tgz", - "integrity": "sha512-8iUql50EUR+uUcdRQ3HDqa6EVyo3docL8g5WJ3FNcWmu62IbkGUue/pEyLBW8VGKKucTPgqeks4fIU1DA4yowQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "ajv": "^8.0.0" - }, - "peerDependencies": { - "ajv": "^8.0.0" - }, - "peerDependenciesMeta": { - "ajv": { - "optional": true - } - } - }, - "node_modules/@microsoft/api-extractor/node_modules/lodash": { - "version": "4.17.23", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.23.tgz", - "integrity": "sha512-LgVTMpQtIopCi79SJeDiP0TfWi5CNEc/L/aRdTh3yIvmZXTnheWpKjSZhnvMl8iXbC1tFg9gdHHDMLoV7CnG+w==", - "dev": true, - "license": "MIT" - }, - "node_modules/@microsoft/api-extractor/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "license": "ISC", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@microsoft/api-extractor/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "license": "ISC", - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" + "@rushstack/node-core-library": "5.23.1" } }, "node_modules/@microsoft/api-extractor/node_modules/source-map": { @@ -5930,17 +5754,10 @@ "node": ">=0.10.0" } }, - "node_modules/@microsoft/api-extractor/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true, - "license": "ISC" - }, "node_modules/@microsoft/tsdoc": { - "version": "0.14.2", - "resolved": "https://registry.npmjs.org/@microsoft/tsdoc/-/tsdoc-0.14.2.tgz", - "integrity": "sha512-9b8mPpKrfeGRuhFH5iO1iwCLeIIsV6+H1sRfxbkoGXIyQE2BTsPd9zqSqQJ+pv5sJ/hT5M1zvOFL02MnEezFug==", + "version": "0.16.0", + "resolved": "https://registry.npmjs.org/@microsoft/tsdoc/-/tsdoc-0.16.0.tgz", + "integrity": "sha512-xgAyonlVVS+q7Vc7qLW0UrJU7rSFcETRWsqdXZtjzRU8dF+6CkozTK4V4y1LwOX7j8r/vHphjDeMeGI4tNGeGA==", "dev": true, "license": "MIT" }, @@ -5957,13 +5774,6 @@ "resolve": "~1.22.2" } }, - "node_modules/@microsoft/tsdoc-config/node_modules/@microsoft/tsdoc": { - "version": "0.16.0", - "resolved": "https://registry.npmjs.org/@microsoft/tsdoc/-/tsdoc-0.16.0.tgz", - "integrity": "sha512-xgAyonlVVS+q7Vc7qLW0UrJU7rSFcETRWsqdXZtjzRU8dF+6CkozTK4V4y1LwOX7j8r/vHphjDeMeGI4tNGeGA==", - "dev": true, - "license": "MIT" - }, "node_modules/@noble/hashes": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.4.0.tgz", @@ -6761,19 +6571,20 @@ } }, "node_modules/@rushstack/node-core-library": { - "version": "3.58.0", - "resolved": "https://registry.npmjs.org/@rushstack/node-core-library/-/node-core-library-3.58.0.tgz", - "integrity": "sha512-DHAZ3LTOEq2/EGURznpTJDnB3SNE2CKMDXuviQ6afhru6RykE3QoqXkeyjbpLb5ib5cpIRCPE/wykNe0xmQj3w==", + "version": "5.23.1", + "resolved": "https://registry.npmjs.org/@rushstack/node-core-library/-/node-core-library-5.23.1.tgz", + "integrity": "sha512-wlKmIKIYCKuCASbITvOxLZXepPbwXvrv7S6ig6XNWFchSyhL/E2txmVXspHY49Wu2dzf7nI27a2k/yV5BA3EiA==", "dev": true, "license": "MIT", "dependencies": { - "colors": "~1.2.1", - "fs-extra": "~7.0.1", + "ajv": "~8.18.0", + "ajv-draft-04": "~1.0.0", + "ajv-formats": "~3.0.1", + "fs-extra": "~11.3.0", "import-lazy": "~4.0.0", "jju": "~1.4.0", "resolve": "~1.22.1", - "semver": "~7.3.0", - "z-schema": "~5.0.2" + "semver": "~7.7.4" }, "peerDependencies": { "@types/node": "*" @@ -6784,77 +6595,24 @@ } } }, - "node_modules/@rushstack/node-core-library/node_modules/fs-extra": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz", - "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", - "dev": true, - "license": "MIT", - "dependencies": { - "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - }, - "engines": { - "node": ">=6 <7 || >=8" - } - }, - "node_modules/@rushstack/node-core-library/node_modules/jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", + "node_modules/@rushstack/node-core-library/node_modules/ajv-formats": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-3.0.1.tgz", + "integrity": "sha512-8iUql50EUR+uUcdRQ3HDqa6EVyo3docL8g5WJ3FNcWmu62IbkGUue/pEyLBW8VGKKucTPgqeks4fIU1DA4yowQ==", "dev": true, "license": "MIT", - "optionalDependencies": { - "graceful-fs": "^4.1.6" - } - }, - "node_modules/@rushstack/node-core-library/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "license": "ISC", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@rushstack/node-core-library/node_modules/semver": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", - "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", - "dev": true, - "license": "ISC", "dependencies": { - "lru-cache": "^6.0.0" + "ajv": "^8.0.0" }, - "bin": { - "semver": "bin/semver.js" + "peerDependencies": { + "ajv": "^8.0.0" }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@rushstack/node-core-library/node_modules/universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 4.0.0" + "peerDependenciesMeta": { + "ajv": { + "optional": true + } } }, - "node_modules/@rushstack/node-core-library/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true, - "license": "ISC" - }, "node_modules/@rushstack/problem-matcher": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/@rushstack/problem-matcher/-/problem-matcher-0.2.1.tgz", @@ -6871,24 +6629,24 @@ } }, "node_modules/@rushstack/rig-package": { - "version": "0.7.2", - "resolved": "https://registry.npmjs.org/@rushstack/rig-package/-/rig-package-0.7.2.tgz", - "integrity": "sha512-9XbFWuqMYcHUso4mnETfhGVUSaADBRj6HUAAEYk50nMPn8WRICmBuCphycQGNB3duIR6EEZX3Xj3SYc2XiP+9A==", + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/@rushstack/rig-package/-/rig-package-0.7.3.tgz", + "integrity": "sha512-aAA518n6wxxjCfnTAOjQnm7ngNE0FVHxHAw2pxKlIhxrMn0XQjGcXKF0oKWpjBgJOmsaJpVob/v+zr3zxgPWuA==", "dev": true, "license": "MIT", "dependencies": { - "resolve": "~1.22.1", - "strip-json-comments": "~3.1.1" + "jju": "~1.4.0", + "resolve": "~1.22.1" } }, "node_modules/@rushstack/terminal": { - "version": "0.22.4", - "resolved": "https://registry.npmjs.org/@rushstack/terminal/-/terminal-0.22.4.tgz", - "integrity": "sha512-fhtLjnXCc/4WleVbVl6aoc7jcWnU6yqjS1S8WoaNREG3ycu/viZ9R/9QM7Y/b4CDvcXoiDyMNIay7JMwBptM3g==", + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@rushstack/terminal/-/terminal-0.24.0.tgz", + "integrity": "sha512-8ZQS4MMaGsv27EXCBiH7WMPkRZrffeDoIevs6z9TM5dzqiY6+Hn4evfK/G+gvgBTjfvfkHIZPQQmalmI2sM4TQ==", "dev": true, "license": "MIT", "dependencies": { - "@rushstack/node-core-library": "5.21.0", + "@rushstack/node-core-library": "5.23.1", "@rushstack/problem-matcher": "0.2.1", "supports-color": "~8.1.1" }, @@ -6901,95 +6659,16 @@ } } }, - "node_modules/@rushstack/terminal/node_modules/@rushstack/node-core-library": { - "version": "5.21.0", - "resolved": "https://registry.npmjs.org/@rushstack/node-core-library/-/node-core-library-5.21.0.tgz", - "integrity": "sha512-LFzN+1lyWROit/P8Md6yxAth7lLYKn37oCKJHirEE2TQB25NDUM7bALf0ar+JAtwFfRCH+D+DGOA7DAzIi2r+g==", - "dev": true, - "license": "MIT", - "dependencies": { - "ajv": "~8.18.0", - "ajv-draft-04": "~1.0.0", - "ajv-formats": "~3.0.1", - "fs-extra": "~11.3.0", - "import-lazy": "~4.0.0", - "jju": "~1.4.0", - "resolve": "~1.22.1", - "semver": "~7.5.4" - }, - "peerDependencies": { - "@types/node": "*" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - } - } - }, - "node_modules/@rushstack/terminal/node_modules/ajv-formats": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-3.0.1.tgz", - "integrity": "sha512-8iUql50EUR+uUcdRQ3HDqa6EVyo3docL8g5WJ3FNcWmu62IbkGUue/pEyLBW8VGKKucTPgqeks4fIU1DA4yowQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "ajv": "^8.0.0" - }, - "peerDependencies": { - "ajv": "^8.0.0" - }, - "peerDependenciesMeta": { - "ajv": { - "optional": true - } - } - }, - "node_modules/@rushstack/terminal/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "license": "ISC", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@rushstack/terminal/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "license": "ISC", - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@rushstack/terminal/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true, - "license": "ISC" - }, "node_modules/@rushstack/ts-command-line": { - "version": "4.13.2", - "resolved": "https://registry.npmjs.org/@rushstack/ts-command-line/-/ts-command-line-4.13.2.tgz", - "integrity": "sha512-bCU8qoL9HyWiciltfzg7GqdfODUeda/JpI0602kbN5YH22rzTxyqYvv7aRLENCM7XCQ1VRs7nMkEqgJUOU8Sag==", + "version": "5.3.9", + "resolved": "https://registry.npmjs.org/@rushstack/ts-command-line/-/ts-command-line-5.3.9.tgz", + "integrity": "sha512-GIHqU+sRGQ3LGWAZu1O+9Yh++qwtyNIIGuNbcWHJjBTm2qRez0cwINUHZ+pQLR8UuzZDcMajrDaNbUYoaL/XtQ==", "dev": true, "license": "MIT", "dependencies": { + "@rushstack/terminal": "0.24.0", "@types/argparse": "1.0.38", "argparse": "~1.0.9", - "colors": "~1.2.1", "string-argv": "~0.3.1" } }, @@ -10743,16 +10422,6 @@ "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", "license": "MIT" }, - "node_modules/colors": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.2.5.tgz", - "integrity": "sha512-erNRLao/Y3Fv54qUa0LBB+//Uf3YwMUmdJinN20yMXm9zdKKqH9wt7R9IIVZ+K7ShzfpLV/Zg8+VyrBJYB4lpg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.1.90" - } - }, "node_modules/combine-promises": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/combine-promises/-/combine-promises-1.2.0.tgz", @@ -17294,14 +16963,6 @@ "dev": true, "license": "MIT" }, - "node_modules/lodash.isequal": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", - "integrity": "sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==", - "deprecated": "This package is deprecated. Use require('node:util').isDeepStrictEqual instead.", - "dev": true, - "license": "MIT" - }, "node_modules/lodash.kebabcase": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/lodash.kebabcase/-/lodash.kebabcase-4.1.1.tgz", @@ -27411,16 +27072,6 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/validator": { - "version": "13.15.35", - "resolved": "https://registry.npmjs.org/validator/-/validator-13.15.35.tgz", - "integrity": "sha512-TQ5pAGhd5whStmqWvYF4OjQROlmv9SMFVt37qoCBdqRffuuklWYQlCNnEs2ZaIBD1kZRNnikiZOS1eqgkar0iw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.10" - } - }, "node_modules/value-equal": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/value-equal/-/value-equal-1.0.1.tgz", @@ -28783,38 +28434,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/z-schema": { - "version": "5.0.5", - "resolved": "https://registry.npmjs.org/z-schema/-/z-schema-5.0.5.tgz", - "integrity": "sha512-D7eujBWkLa3p2sIpJA0d1pr7es+a7m0vFAnZLlCEKq/Ij2k0MLi9Br2UPxoxdYystm5K1yeBGzub0FlYUEWj2Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "lodash.get": "^4.4.2", - "lodash.isequal": "^4.5.0", - "validator": "^13.7.0" - }, - "bin": { - "z-schema": "bin/z-schema" - }, - "engines": { - "node": ">=8.0.0" - }, - "optionalDependencies": { - "commander": "^9.4.1" - } - }, - "node_modules/z-schema/node_modules/commander": { - "version": "9.5.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz", - "integrity": "sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==", - "dev": true, - "license": "MIT", - "optional": true, - "engines": { - "node": "^12.20.0 || >=14" - } - }, "node_modules/zip-stream": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/zip-stream/-/zip-stream-6.0.1.tgz", @@ -28900,7 +28519,6 @@ }, "packages/blockly": { "version": "12.5.1", - "hasInstallScript": true, "license": "Apache-2.0", "dependencies": { "jsdom": "26.1.0" @@ -28912,8 +28530,8 @@ "@blockly/theme-modern": "^7.0.1", "@hyperjump/browser": "^1.1.4", "@hyperjump/json-schema": "^1.5.0", - "@microsoft/api-documenter": "7.22.4", - "@microsoft/api-extractor": "^7.29.5", + "@microsoft/api-documenter": "7.30.5", + "@microsoft/api-extractor": "7.58.7", "ajv": "^8.17.1", "async-done": "^2.0.0", "chai": "^6.0.1", diff --git a/package.json b/package.json index 6f279b21bf4..d55a9016ff8 100644 --- a/package.json +++ b/package.json @@ -31,6 +31,7 @@ "test": "npm run test --ws --if-present", "lint": "npm run lint --ws --if-present", "build": "npm run build --ws --if-present", - "format:check": "npm run format:check --ws --if-present" + "format:check": "npm run format:check --ws --if-present", + "postinstall": "patch-package" } } diff --git a/packages/blockly/package.json b/packages/blockly/package.json index d3ff244fdbf..002fdcad5f0 100644 --- a/packages/blockly/package.json +++ b/packages/blockly/package.json @@ -34,7 +34,6 @@ "langfiles": "gulp langfiles", "minify": "gulp minify", "package": "gulp pack", - "postinstall": "patch-package", "prepareDemos": "gulp prepareDemos", "publish": "npm ci && gulp publish", "publish:beta": "npm ci && gulp publishBeta", @@ -105,8 +104,8 @@ "@blockly/theme-modern": "^7.0.1", "@hyperjump/browser": "^1.1.4", "@hyperjump/json-schema": "^1.5.0", - "@microsoft/api-documenter": "7.22.4", - "@microsoft/api-extractor": "^7.29.5", + "@microsoft/api-documenter": "7.30.5", + "@microsoft/api-extractor": "7.58.7", "ajv": "^8.17.1", "async-done": "^2.0.0", "chai": "^6.0.1", diff --git a/packages/blockly/scripts/gulpfiles/docs_tasks.mjs b/packages/blockly/scripts/gulpfiles/docs_tasks.mjs index 68d29065132..1d739b1d729 100644 --- a/packages/blockly/scripts/gulpfiles/docs_tasks.mjs +++ b/packages/blockly/scripts/gulpfiles/docs_tasks.mjs @@ -368,38 +368,39 @@ const buildAlternatePathsMap = function(allFiles) { } /** - * Parse HTML tables from the blockly.md file to extract classes, interfaces, etc. - * @param {string} fileContent The content of blockly.md + * Parse HTML tables from blockly.mdx to extract classes, interfaces, etc. + * Each ## section contains an HTML table with markdown links in the first column. + * @param {string} fileContent The content of blockly.mdx * @returns {Object} Object with sections as keys and arrays of {name, path} as values */ const parseHtmlTables = function(fileContent) { const result = {}; - - // Split by ## headings + const linkRegex = /\[([^\]]+)\]\(\/reference\/([^\)]+)\)/g; + const tableRegex = /][\s\S]*?<\/table>/gi; + + // Split by ## headings (skip preamble before the first heading) const sections = fileContent.split('##'); - - for (let section of sections) { - const lines = section.split('\n'); - const sectionName = lines[0].trim(); - + + for (let i = 1; i < sections.length; i++) { + const section = sections[i]; + const sectionName = section.split('\n')[0].trim(); + if (!sectionName || sectionName === 'blockly package') continue; - - // Match links in markdown pipe tables: | [Name](/reference/path) | ... - const tableRowRegex = /\|\s*\[([^\]]+)\]\(\/reference\/([^\)]+)\)/g; + const items = []; - - let match; - while ((match = tableRowRegex.exec(section)) !== null) { - const name = match[1]; - const href = match[2]; - items.push({ name, path: href }); + let tableMatch; + while ((tableMatch = tableRegex.exec(section)) !== null) { + let linkMatch; + while ((linkMatch = linkRegex.exec(tableMatch[0])) !== null) { + items.push({name: linkMatch[1], path: linkMatch[2]}); + } } - + if (items.length > 0) { result[sectionName] = items; } } - + return result; } diff --git a/packages/docs/docs/codelabs/context-menu-option/add-a-context-menu-item.mdx b/packages/docs/docs/codelabs/context-menu-option/add-a-context-menu-item.mdx index cd2625d654b..4f12f6b35e5 100644 --- a/packages/docs/docs/codelabs/context-menu-option/add-a-context-menu-item.mdx +++ b/packages/docs/docs/codelabs/context-menu-option/add-a-context-menu-item.mdx @@ -1,5 +1,4 @@ --- -slug: /codelabs/context-menu-option/add-a-context-menu-item description: How to add a context menu item to the registry. --- diff --git a/packages/docs/docs/codelabs/context-menu-option/callback.mdx b/packages/docs/docs/codelabs/context-menu-option/callback.mdx index 6189aca00d1..97687e25a81 100644 --- a/packages/docs/docs/codelabs/context-menu-option/callback.mdx +++ b/packages/docs/docs/codelabs/context-menu-option/callback.mdx @@ -1,5 +1,4 @@ --- -slug: /codelabs/context-menu-option/callback description: How to add a callback to a context menu item. --- diff --git a/packages/docs/docs/codelabs/context-menu-option/codelab-overview.mdx b/packages/docs/docs/codelabs/context-menu-option/codelab-overview.mdx index 6261807baca..a4ce8f7fd2a 100644 --- a/packages/docs/docs/codelabs/context-menu-option/codelab-overview.mdx +++ b/packages/docs/docs/codelabs/context-menu-option/codelab-overview.mdx @@ -1,6 +1,5 @@ --- pagination_prev: null -slug: /codelabs/context-menu-option/codelab-overview description: Overview of the "Customizing context menus" codelab. --- diff --git a/packages/docs/docs/codelabs/context-menu-option/display-text.mdx b/packages/docs/docs/codelabs/context-menu-option/display-text.mdx index 98ec7ef9e0a..7d80adfd313 100644 --- a/packages/docs/docs/codelabs/context-menu-option/display-text.mdx +++ b/packages/docs/docs/codelabs/context-menu-option/display-text.mdx @@ -1,5 +1,4 @@ --- -slug: /codelabs/context-menu-option/display-text description: How to set the display text of a context menu item. --- diff --git a/packages/docs/docs/codelabs/context-menu-option/precondition-blockly-state.mdx b/packages/docs/docs/codelabs/context-menu-option/precondition-blockly-state.mdx index 75fdc20c8bf..f08bb07bbc5 100644 --- a/packages/docs/docs/codelabs/context-menu-option/precondition-blockly-state.mdx +++ b/packages/docs/docs/codelabs/context-menu-option/precondition-blockly-state.mdx @@ -1,5 +1,4 @@ --- -slug: /codelabs/context-menu-option/precondition-blockly-state description: How to include a context menu item based on Blockly's state. --- diff --git a/packages/docs/docs/codelabs/context-menu-option/precondition-external-state.mdx b/packages/docs/docs/codelabs/context-menu-option/precondition-external-state.mdx index 5701d9dfc4b..ba6f998f561 100644 --- a/packages/docs/docs/codelabs/context-menu-option/precondition-external-state.mdx +++ b/packages/docs/docs/codelabs/context-menu-option/precondition-external-state.mdx @@ -1,5 +1,4 @@ --- -slug: /codelabs/context-menu-option/precondition-external-state description: How to include a context menu item based on an external condition. --- diff --git a/packages/docs/docs/codelabs/context-menu-option/precondition-node-type.mdx b/packages/docs/docs/codelabs/context-menu-option/precondition-node-type.mdx index 40014af018f..53245713521 100644 --- a/packages/docs/docs/codelabs/context-menu-option/precondition-node-type.mdx +++ b/packages/docs/docs/codelabs/context-menu-option/precondition-node-type.mdx @@ -1,5 +1,4 @@ --- -slug: /codelabs/context-menu-option/precondition-node-type description: How to include a context menu item based on the node type. --- diff --git a/packages/docs/docs/codelabs/context-menu-option/separators.mdx b/packages/docs/docs/codelabs/context-menu-option/separators.mdx index c2ac0b69847..8dd3ea959e1 100644 --- a/packages/docs/docs/codelabs/context-menu-option/separators.mdx +++ b/packages/docs/docs/codelabs/context-menu-option/separators.mdx @@ -1,5 +1,4 @@ --- -slug: /codelabs/context-menu-option/separators description: How to add a separator to a context menu. --- diff --git a/packages/docs/docs/codelabs/context-menu-option/setup.mdx b/packages/docs/docs/codelabs/context-menu-option/setup.mdx index d3d0d3cefa2..12a5160377a 100644 --- a/packages/docs/docs/codelabs/context-menu-option/setup.mdx +++ b/packages/docs/docs/codelabs/context-menu-option/setup.mdx @@ -1,5 +1,4 @@ --- -slug: /codelabs/context-menu-option/setup description: Setting up the "Customizing context menus" codelab. --- diff --git a/packages/docs/docs/codelabs/context-menu-option/summary.mdx b/packages/docs/docs/codelabs/context-menu-option/summary.mdx index 5ccc32261c3..70f146c4d05 100644 --- a/packages/docs/docs/codelabs/context-menu-option/summary.mdx +++ b/packages/docs/docs/codelabs/context-menu-option/summary.mdx @@ -1,6 +1,5 @@ --- pagination_next: null -slug: /codelabs/context-menu-option/summary description: Summary of the "Customizing context menus" codelab. --- diff --git a/packages/docs/docs/codelabs/context-menu-option/weight-and-id.mdx b/packages/docs/docs/codelabs/context-menu-option/weight-and-id.mdx index 28d3acb1df7..137a65017eb 100644 --- a/packages/docs/docs/codelabs/context-menu-option/weight-and-id.mdx +++ b/packages/docs/docs/codelabs/context-menu-option/weight-and-id.mdx @@ -1,5 +1,4 @@ --- -slug: /codelabs/context-menu-option/weight-and-id description: How to set the weight and ID of a context menu item. --- diff --git a/packages/docs/docs/codelabs/css/blocks.mdx b/packages/docs/docs/codelabs/css/blocks.mdx index 30ecc9589ed..b1ec168e699 100644 --- a/packages/docs/docs/codelabs/css/blocks.mdx +++ b/packages/docs/docs/codelabs/css/blocks.mdx @@ -1,6 +1,5 @@ --- title: Use CSS in Blockly - Blocks -slug: /codelabs/css/blocks description: Styling blocks with CSS --- diff --git a/packages/docs/docs/codelabs/css/categories.mdx b/packages/docs/docs/codelabs/css/categories.mdx index 4d5fc7d1526..a23958fbd5d 100644 --- a/packages/docs/docs/codelabs/css/categories.mdx +++ b/packages/docs/docs/codelabs/css/categories.mdx @@ -1,6 +1,5 @@ --- title: Use CSS in Blockly - Toolbox Categories -slug: /codelabs/css/categories description: Styling toolbox categories with CSS --- diff --git a/packages/docs/docs/codelabs/css/codelab-overview.mdx b/packages/docs/docs/codelabs/css/codelab-overview.mdx index 49c5795d47e..e5cc8ae4e33 100644 --- a/packages/docs/docs/codelabs/css/codelab-overview.mdx +++ b/packages/docs/docs/codelabs/css/codelab-overview.mdx @@ -1,7 +1,6 @@ --- pagination_prev: null title: Use CSS in Blockly - Codelab Overview -slug: /codelabs/css/codelab-overview description: Overview of the CSS in Blockly codelab --- diff --git a/packages/docs/docs/codelabs/css/components.mdx b/packages/docs/docs/codelabs/css/components.mdx index 16e8bc92d18..92a35cbf493 100644 --- a/packages/docs/docs/codelabs/css/components.mdx +++ b/packages/docs/docs/codelabs/css/components.mdx @@ -1,6 +1,5 @@ --- title: Use CSS in Blockly - Components -slug: /codelabs/css/components description: Styling Blockly components with CSS --- diff --git a/packages/docs/docs/codelabs/css/setup.mdx b/packages/docs/docs/codelabs/css/setup.mdx index 39b80bf03a7..b20fce6d786 100644 --- a/packages/docs/docs/codelabs/css/setup.mdx +++ b/packages/docs/docs/codelabs/css/setup.mdx @@ -1,6 +1,5 @@ --- title: Use CSS in Blockly - Setup -slug: /codelabs/css/setup description: Setup for the CSS in Blockly codelab --- diff --git a/packages/docs/docs/codelabs/css/summary.mdx b/packages/docs/docs/codelabs/css/summary.mdx index 8732d0e7095..473400a3370 100644 --- a/packages/docs/docs/codelabs/css/summary.mdx +++ b/packages/docs/docs/codelabs/css/summary.mdx @@ -1,7 +1,6 @@ --- pagination_next: null title: Use CSS in Blockly - Summary -slug: /codelabs/css/summary description: Summary of the CSS in Blockly codelab --- diff --git a/packages/docs/docs/codelabs/css/tour.mdx b/packages/docs/docs/codelabs/css/tour.mdx index a2a6ab8f350..af131db330c 100644 --- a/packages/docs/docs/codelabs/css/tour.mdx +++ b/packages/docs/docs/codelabs/css/tour.mdx @@ -1,6 +1,5 @@ --- title: Use CSS in Blockly - A tour of Blockly's elements -slug: /codelabs/css/tour description: Explore Blockly's HTML and SVG elements in the CSS codelab --- diff --git a/packages/docs/docs/codelabs/custom-generator/array-block-generator.mdx b/packages/docs/docs/codelabs/custom-generator/array-block-generator.mdx index 2ff9f48ac3e..436b91da212 100644 --- a/packages/docs/docs/codelabs/custom-generator/array-block-generator.mdx +++ b/packages/docs/docs/codelabs/custom-generator/array-block-generator.mdx @@ -1,5 +1,4 @@ --- -slug: /codelabs/custom-generator/array-block-generator description: How to write a block code generator that creates an array. --- diff --git a/packages/docs/docs/codelabs/custom-generator/block-generator-overview.mdx b/packages/docs/docs/codelabs/custom-generator/block-generator-overview.mdx index edcbca74398..613e60b05ef 100644 --- a/packages/docs/docs/codelabs/custom-generator/block-generator-overview.mdx +++ b/packages/docs/docs/codelabs/custom-generator/block-generator-overview.mdx @@ -1,5 +1,4 @@ --- -slug: /codelabs/custom-generator/block-generator-overview description: Introduction to block generators. --- diff --git a/packages/docs/docs/codelabs/custom-generator/codelab-overview.mdx b/packages/docs/docs/codelabs/custom-generator/codelab-overview.mdx index 730e958f0cd..a0b80bc93cc 100644 --- a/packages/docs/docs/codelabs/custom-generator/codelab-overview.mdx +++ b/packages/docs/docs/codelabs/custom-generator/codelab-overview.mdx @@ -1,6 +1,5 @@ --- pagination_prev: null -slug: /codelabs/custom-generator/codelab-overview description: Overview of the "Build a custom generator" codelab. --- diff --git a/packages/docs/docs/codelabs/custom-generator/generating-a-stack.mdx b/packages/docs/docs/codelabs/custom-generator/generating-a-stack.mdx index 064674ade43..c4878f89659 100644 --- a/packages/docs/docs/codelabs/custom-generator/generating-a-stack.mdx +++ b/packages/docs/docs/codelabs/custom-generator/generating-a-stack.mdx @@ -1,5 +1,4 @@ --- -slug: /codelabs/custom-generator/generating-a-stack description: How to generate code for the blocks in a stack. --- diff --git a/packages/docs/docs/codelabs/custom-generator/member-block-generator.mdx b/packages/docs/docs/codelabs/custom-generator/member-block-generator.mdx index 5696af73467..f6c09e25044 100644 --- a/packages/docs/docs/codelabs/custom-generator/member-block-generator.mdx +++ b/packages/docs/docs/codelabs/custom-generator/member-block-generator.mdx @@ -1,5 +1,4 @@ --- -slug: /codelabs/custom-generator/member-block-generator description: How to write a block code generator using field and input values. --- diff --git a/packages/docs/docs/codelabs/custom-generator/object-block-generator.mdx b/packages/docs/docs/codelabs/custom-generator/object-block-generator.mdx index a5b684a03d1..4c663445dee 100644 --- a/packages/docs/docs/codelabs/custom-generator/object-block-generator.mdx +++ b/packages/docs/docs/codelabs/custom-generator/object-block-generator.mdx @@ -1,5 +1,4 @@ --- -slug: /codelabs/custom-generator/object-block-generator description: How to write a block code generator that creates an object. --- diff --git a/packages/docs/docs/codelabs/custom-generator/setup.mdx b/packages/docs/docs/codelabs/custom-generator/setup.mdx index d7d035687dc..625363a002f 100644 --- a/packages/docs/docs/codelabs/custom-generator/setup.mdx +++ b/packages/docs/docs/codelabs/custom-generator/setup.mdx @@ -1,5 +1,4 @@ --- -slug: /codelabs/custom-generator/setup description: Setting up the "Build a custom generator" codelab. --- diff --git a/packages/docs/docs/codelabs/custom-generator/summary.mdx b/packages/docs/docs/codelabs/custom-generator/summary.mdx index 9eb9dbd22e3..4f73963db53 100644 --- a/packages/docs/docs/codelabs/custom-generator/summary.mdx +++ b/packages/docs/docs/codelabs/custom-generator/summary.mdx @@ -1,6 +1,5 @@ --- pagination_next: null -slug: /codelabs/custom-generator/summary description: Summary of the "Build a custom generator" codelab. --- diff --git a/packages/docs/docs/codelabs/custom-generator/the-basics.mdx b/packages/docs/docs/codelabs/custom-generator/the-basics.mdx index 0fea1a5be3f..4c98bda1812 100644 --- a/packages/docs/docs/codelabs/custom-generator/the-basics.mdx +++ b/packages/docs/docs/codelabs/custom-generator/the-basics.mdx @@ -1,5 +1,4 @@ --- -slug: /codelabs/custom-generator/the-basics description: How to define and call a language generator. --- diff --git a/packages/docs/docs/codelabs/custom-generator/value-block-generators.mdx b/packages/docs/docs/codelabs/custom-generator/value-block-generators.mdx index 372a29d5cfb..7f74071b1c3 100644 --- a/packages/docs/docs/codelabs/custom-generator/value-block-generators.mdx +++ b/packages/docs/docs/codelabs/custom-generator/value-block-generators.mdx @@ -1,5 +1,4 @@ --- -slug: /codelabs/custom-generator/value-block-generators description: How to write a block code generator for a simple value block. --- diff --git a/packages/docs/docs/codelabs/custom-renderer/change-connection-shapes.mdx b/packages/docs/docs/codelabs/custom-renderer/change-connection-shapes.mdx index 9144dc60489..ff3065067ec 100644 --- a/packages/docs/docs/codelabs/custom-renderer/change-connection-shapes.mdx +++ b/packages/docs/docs/codelabs/custom-renderer/change-connection-shapes.mdx @@ -1,5 +1,4 @@ --- -slug: /codelabs/custom-renderer/change-connection-shapes description: How to change connection shapes. --- diff --git a/packages/docs/docs/codelabs/custom-renderer/codelab-overview.mdx b/packages/docs/docs/codelabs/custom-renderer/codelab-overview.mdx index 6c434633274..f03afd7e304 100644 --- a/packages/docs/docs/codelabs/custom-renderer/codelab-overview.mdx +++ b/packages/docs/docs/codelabs/custom-renderer/codelab-overview.mdx @@ -1,6 +1,5 @@ --- pagination_prev: null -slug: /codelabs/custom-renderer/codelab-overview description: Overview of the "Build custom renderers" codelab. --- diff --git a/packages/docs/docs/codelabs/custom-renderer/define-and-register-a-custom-renderer.mdx b/packages/docs/docs/codelabs/custom-renderer/define-and-register-a-custom-renderer.mdx index d8bf1ea390a..4751a607f60 100644 --- a/packages/docs/docs/codelabs/custom-renderer/define-and-register-a-custom-renderer.mdx +++ b/packages/docs/docs/codelabs/custom-renderer/define-and-register-a-custom-renderer.mdx @@ -1,5 +1,4 @@ --- -slug: /codelabs/custom-renderer/define-and-register-a-custom-renderer description: How to register a custom renderer. --- diff --git a/packages/docs/docs/codelabs/custom-renderer/observe-the-built-in-renderers.mdx b/packages/docs/docs/codelabs/custom-renderer/observe-the-built-in-renderers.mdx index da9de7df2b4..6fc617432f0 100644 --- a/packages/docs/docs/codelabs/custom-renderer/observe-the-built-in-renderers.mdx +++ b/packages/docs/docs/codelabs/custom-renderer/observe-the-built-in-renderers.mdx @@ -1,5 +1,4 @@ --- -slug: /codelabs/custom-renderer/observe-the-built-in-renderers description: Introduction to the built-in renderers. --- diff --git a/packages/docs/docs/codelabs/custom-renderer/override-constants.mdx b/packages/docs/docs/codelabs/custom-renderer/override-constants.mdx index 530beb4e347..1c683abdc46 100644 --- a/packages/docs/docs/codelabs/custom-renderer/override-constants.mdx +++ b/packages/docs/docs/codelabs/custom-renderer/override-constants.mdx @@ -1,5 +1,4 @@ --- -slug: /codelabs/custom-renderer/override-constants description: How to override the constants in a renderer. --- diff --git a/packages/docs/docs/codelabs/custom-renderer/setup.mdx b/packages/docs/docs/codelabs/custom-renderer/setup.mdx index 8eb3e157600..6d62959715d 100644 --- a/packages/docs/docs/codelabs/custom-renderer/setup.mdx +++ b/packages/docs/docs/codelabs/custom-renderer/setup.mdx @@ -1,5 +1,4 @@ --- -slug: /codelabs/custom-renderer/setup description: Setting up the "Build custom renderers" codelab. --- diff --git a/packages/docs/docs/codelabs/custom-renderer/summary.mdx b/packages/docs/docs/codelabs/custom-renderer/summary.mdx index bc5a5de5d71..46061913682 100644 --- a/packages/docs/docs/codelabs/custom-renderer/summary.mdx +++ b/packages/docs/docs/codelabs/custom-renderer/summary.mdx @@ -1,6 +1,5 @@ --- pagination_next: null -slug: /codelabs/custom-renderer/summary description: Summary of the "Build custom renderers" codelab. --- diff --git a/packages/docs/docs/codelabs/custom-renderer/typed-connection-shapes.mdx b/packages/docs/docs/codelabs/custom-renderer/typed-connection-shapes.mdx index 216e72cb848..3890aac03ad 100644 --- a/packages/docs/docs/codelabs/custom-renderer/typed-connection-shapes.mdx +++ b/packages/docs/docs/codelabs/custom-renderer/typed-connection-shapes.mdx @@ -1,5 +1,4 @@ --- -slug: /codelabs/custom-renderer/typed-connection-shapes description: How to set connection shapes based on connection types. --- diff --git a/packages/docs/docs/codelabs/custom-renderer/understand-connection-shapes.mdx b/packages/docs/docs/codelabs/custom-renderer/understand-connection-shapes.mdx index 3a497550ca2..13572842109 100644 --- a/packages/docs/docs/codelabs/custom-renderer/understand-connection-shapes.mdx +++ b/packages/docs/docs/codelabs/custom-renderer/understand-connection-shapes.mdx @@ -1,5 +1,4 @@ --- -slug: /codelabs/custom-renderer/understand-connection-shapes description: Introduction to connection shapes. --- diff --git a/packages/docs/docs/codelabs/custom-toolbox/add-an-icon-to-your-category.mdx b/packages/docs/docs/codelabs/custom-toolbox/add-an-icon-to-your-category.mdx index b072f3180ad..35d225de29b 100644 --- a/packages/docs/docs/codelabs/custom-toolbox/add-an-icon-to-your-category.mdx +++ b/packages/docs/docs/codelabs/custom-toolbox/add-an-icon-to-your-category.mdx @@ -1,5 +1,4 @@ --- -slug: /codelabs/custom-toolbox/add-an-icon-to-your-category description: How to add an icon to your category. --- diff --git a/packages/docs/docs/codelabs/custom-toolbox/adding-a-custom-toolbox-item.mdx b/packages/docs/docs/codelabs/custom-toolbox/adding-a-custom-toolbox-item.mdx index e89f5f1fe09..140955f6a7c 100644 --- a/packages/docs/docs/codelabs/custom-toolbox/adding-a-custom-toolbox-item.mdx +++ b/packages/docs/docs/codelabs/custom-toolbox/adding-a-custom-toolbox-item.mdx @@ -1,5 +1,4 @@ --- -slug: /codelabs/custom-toolbox/adding-a-custom-toolbox-item description: How to add a custom item to a toolbox. --- diff --git a/packages/docs/docs/codelabs/custom-toolbox/change-the-category-HTML.mdx b/packages/docs/docs/codelabs/custom-toolbox/change-the-category-HTML.mdx index cb7e73d4440..85633a143c9 100644 --- a/packages/docs/docs/codelabs/custom-toolbox/change-the-category-HTML.mdx +++ b/packages/docs/docs/codelabs/custom-toolbox/change-the-category-HTML.mdx @@ -1,5 +1,4 @@ --- -slug: /codelabs/custom-toolbox/change-the-category-HTML description: How to change the HTML used by a category. --- diff --git a/packages/docs/docs/codelabs/custom-toolbox/change-the-look-of-a-category.mdx b/packages/docs/docs/codelabs/custom-toolbox/change-the-look-of-a-category.mdx index f2212d07d4a..ecc0bd94fdf 100644 --- a/packages/docs/docs/codelabs/custom-toolbox/change-the-look-of-a-category.mdx +++ b/packages/docs/docs/codelabs/custom-toolbox/change-the-look-of-a-category.mdx @@ -1,5 +1,4 @@ --- -slug: /codelabs/custom-toolbox/change-the-look-of-a-category description: How to change the look of a category. --- diff --git a/packages/docs/docs/codelabs/custom-toolbox/change-the-look-of-a-selected-category.mdx b/packages/docs/docs/codelabs/custom-toolbox/change-the-look-of-a-selected-category.mdx index 08a84de4262..033e3151719 100644 --- a/packages/docs/docs/codelabs/custom-toolbox/change-the-look-of-a-selected-category.mdx +++ b/packages/docs/docs/codelabs/custom-toolbox/change-the-look-of-a-selected-category.mdx @@ -1,5 +1,4 @@ --- -slug: /codelabs/custom-toolbox/change-the-look-of-a-selected-category description: How to change the look of a selected category. --- diff --git a/packages/docs/docs/codelabs/custom-toolbox/codelab-overview.mdx b/packages/docs/docs/codelabs/custom-toolbox/codelab-overview.mdx index edd370ba7d0..e61f2816964 100644 --- a/packages/docs/docs/codelabs/custom-toolbox/codelab-overview.mdx +++ b/packages/docs/docs/codelabs/custom-toolbox/codelab-overview.mdx @@ -1,6 +1,5 @@ --- pagination_prev: null -slug: /codelabs/custom-toolbox/codelab-overview description: Overview of the "Customizing a Blockly toolbox" codelab. --- diff --git a/packages/docs/docs/codelabs/custom-toolbox/setup.mdx b/packages/docs/docs/codelabs/custom-toolbox/setup.mdx index 0e210d3f54b..e5f17a131ea 100644 --- a/packages/docs/docs/codelabs/custom-toolbox/setup.mdx +++ b/packages/docs/docs/codelabs/custom-toolbox/setup.mdx @@ -1,5 +1,4 @@ --- -slug: /codelabs/custom-toolbox/setup description: Setting up the "Customizing a Blockly toolbox" codelab. --- diff --git a/packages/docs/docs/codelabs/custom-toolbox/summary.mdx b/packages/docs/docs/codelabs/custom-toolbox/summary.mdx index 367eff8b9fd..e58b8b26013 100644 --- a/packages/docs/docs/codelabs/custom-toolbox/summary.mdx +++ b/packages/docs/docs/codelabs/custom-toolbox/summary.mdx @@ -1,6 +1,5 @@ --- pagination_next: null -slug: /codelabs/custom-toolbox/summary description: Summary of the "Customizing a Blockly toolbox" codelab. --- diff --git a/packages/docs/docs/codelabs/getting-started/add-blockly-libraries.mdx b/packages/docs/docs/codelabs/getting-started/add-blockly-libraries.mdx index d58661a1e19..6603041dbee 100644 --- a/packages/docs/docs/codelabs/getting-started/add-blockly-libraries.mdx +++ b/packages/docs/docs/codelabs/getting-started/add-blockly-libraries.mdx @@ -1,5 +1,4 @@ --- -slug: /codelabs/getting-started/add-blockly-libraries description: How to add Blockly libraries to an app. --- diff --git a/packages/docs/docs/codelabs/getting-started/codelab-overview.mdx b/packages/docs/docs/codelabs/getting-started/codelab-overview.mdx index 89df5690fab..72d6ea81606 100644 --- a/packages/docs/docs/codelabs/getting-started/codelab-overview.mdx +++ b/packages/docs/docs/codelabs/getting-started/codelab-overview.mdx @@ -1,6 +1,5 @@ --- pagination_prev: null -slug: /codelabs/getting-started/codelab-overview description: Overview of the "Getting started with Blockly" codelab. --- diff --git a/packages/docs/docs/codelabs/getting-started/create-a-blockly-workspace.mdx b/packages/docs/docs/codelabs/getting-started/create-a-blockly-workspace.mdx index 4671d42f03b..8df69a0ab33 100644 --- a/packages/docs/docs/codelabs/getting-started/create-a-blockly-workspace.mdx +++ b/packages/docs/docs/codelabs/getting-started/create-a-blockly-workspace.mdx @@ -1,5 +1,4 @@ --- -slug: /codelabs/getting-started/create-a-blockly-workspace description: How to add a workspace to your app. --- diff --git a/packages/docs/docs/codelabs/getting-started/create-a-custom-block.mdx b/packages/docs/docs/codelabs/getting-started/create-a-custom-block.mdx index 0900044794e..3b1787d33cb 100644 --- a/packages/docs/docs/codelabs/getting-started/create-a-custom-block.mdx +++ b/packages/docs/docs/codelabs/getting-started/create-a-custom-block.mdx @@ -1,5 +1,4 @@ --- -slug: /codelabs/getting-started/create-a-custom-block description: How to create a custom block. --- diff --git a/packages/docs/docs/codelabs/getting-started/explore-the-app.mdx b/packages/docs/docs/codelabs/getting-started/explore-the-app.mdx index 9b93ecbf357..ef864e56e69 100644 --- a/packages/docs/docs/codelabs/getting-started/explore-the-app.mdx +++ b/packages/docs/docs/codelabs/getting-started/explore-the-app.mdx @@ -1,5 +1,4 @@ --- -slug: /codelabs/getting-started/explore-the-app description: Explore Blockly's getting started app. --- diff --git a/packages/docs/docs/codelabs/getting-started/generate-javaScript-code.mdx b/packages/docs/docs/codelabs/getting-started/generate-javaScript-code.mdx index 6b9c3f70e48..ad874d7a640 100644 --- a/packages/docs/docs/codelabs/getting-started/generate-javaScript-code.mdx +++ b/packages/docs/docs/codelabs/getting-started/generate-javaScript-code.mdx @@ -1,5 +1,4 @@ --- -slug: /codelabs/getting-started/generate-javaScript-code description: How to generate JavaScript code. --- diff --git a/packages/docs/docs/codelabs/getting-started/run-generated-code.mdx b/packages/docs/docs/codelabs/getting-started/run-generated-code.mdx index f628fa64d10..52a6986dd3a 100644 --- a/packages/docs/docs/codelabs/getting-started/run-generated-code.mdx +++ b/packages/docs/docs/codelabs/getting-started/run-generated-code.mdx @@ -1,5 +1,4 @@ --- -slug: /codelabs/getting-started/run-generated-code description: How to run generated code. --- diff --git a/packages/docs/docs/codelabs/getting-started/save-load-workspace.mdx b/packages/docs/docs/codelabs/getting-started/save-load-workspace.mdx index cb18f67fb62..039ea389558 100644 --- a/packages/docs/docs/codelabs/getting-started/save-load-workspace.mdx +++ b/packages/docs/docs/codelabs/getting-started/save-load-workspace.mdx @@ -1,5 +1,4 @@ --- -slug: /codelabs/getting-started/save-load-workspace description: How to save and load your workspace. --- diff --git a/packages/docs/docs/codelabs/getting-started/setup.mdx b/packages/docs/docs/codelabs/getting-started/setup.mdx index 1ee6fac229c..bb1b653ee7d 100644 --- a/packages/docs/docs/codelabs/getting-started/setup.mdx +++ b/packages/docs/docs/codelabs/getting-started/setup.mdx @@ -1,5 +1,4 @@ --- -slug: /codelabs/getting-started/setup description: Setting up the "Getting started with Blockly" codelab. --- diff --git a/packages/docs/docs/codelabs/getting-started/the-end.mdx b/packages/docs/docs/codelabs/getting-started/the-end.mdx index 078e7e8c89c..3ef945ecccc 100644 --- a/packages/docs/docs/codelabs/getting-started/the-end.mdx +++ b/packages/docs/docs/codelabs/getting-started/the-end.mdx @@ -1,6 +1,5 @@ --- pagination_next: null -slug: /codelabs/getting-started/the-end description: Summary of the "Getting started with Blockly" codelab. --- diff --git a/packages/docs/docs/codelabs/index.mdx b/packages/docs/docs/codelabs/index.mdx index de98704ec5a..8269dc98fa6 100644 --- a/packages/docs/docs/codelabs/index.mdx +++ b/packages/docs/docs/codelabs/index.mdx @@ -2,7 +2,6 @@ title: Welcome to the Blockly Codelabs pagination_next: null pagination_prev: null -slug: /codelabs --- import { CodelabGrid, CodelabCard } from '@site/src/components/CodelabCards'; diff --git a/packages/docs/docs/codelabs/theme-extension-identifier/codelab-overview.mdx b/packages/docs/docs/codelabs/theme-extension-identifier/codelab-overview.mdx index fba7e0f40cb..5c1b3fb3677 100644 --- a/packages/docs/docs/codelabs/theme-extension-identifier/codelab-overview.mdx +++ b/packages/docs/docs/codelabs/theme-extension-identifier/codelab-overview.mdx @@ -1,6 +1,5 @@ --- pagination_prev: null -slug: /codelabs/theme-extension-identifier/codelab-overview description: Overview of the "Customizing your themes" codelab. --- diff --git a/packages/docs/docs/codelabs/theme-extension-identifier/customize-block-styles.mdx b/packages/docs/docs/codelabs/theme-extension-identifier/customize-block-styles.mdx index 84a53eecf97..af66725dca3 100644 --- a/packages/docs/docs/codelabs/theme-extension-identifier/customize-block-styles.mdx +++ b/packages/docs/docs/codelabs/theme-extension-identifier/customize-block-styles.mdx @@ -1,5 +1,4 @@ --- -slug: /codelabs/theme-extension-identifier/customize-block-styles description: How to use a theme to set the colours of blocks. --- diff --git a/packages/docs/docs/codelabs/theme-extension-identifier/customize-category-styles.mdx b/packages/docs/docs/codelabs/theme-extension-identifier/customize-category-styles.mdx index 0a213251476..2927b430f62 100644 --- a/packages/docs/docs/codelabs/theme-extension-identifier/customize-category-styles.mdx +++ b/packages/docs/docs/codelabs/theme-extension-identifier/customize-category-styles.mdx @@ -1,5 +1,4 @@ --- -slug: /codelabs/theme-extension-identifier/customize-category-styles description: How to use a theme to set the colours of categories. --- diff --git a/packages/docs/docs/codelabs/theme-extension-identifier/customize-components.mdx b/packages/docs/docs/codelabs/theme-extension-identifier/customize-components.mdx index 707d2b07846..f07bdfd88a5 100644 --- a/packages/docs/docs/codelabs/theme-extension-identifier/customize-components.mdx +++ b/packages/docs/docs/codelabs/theme-extension-identifier/customize-components.mdx @@ -1,5 +1,4 @@ --- -slug: /codelabs/theme-extension-identifier/customize-components description: How to use a theme to set the colours of components. --- diff --git a/packages/docs/docs/codelabs/theme-extension-identifier/setup.mdx b/packages/docs/docs/codelabs/theme-extension-identifier/setup.mdx index 5086103a954..d864ea70e92 100644 --- a/packages/docs/docs/codelabs/theme-extension-identifier/setup.mdx +++ b/packages/docs/docs/codelabs/theme-extension-identifier/setup.mdx @@ -1,5 +1,4 @@ --- -slug: /codelabs/theme-extension-identifier/setup description: Setting up the "Customizing your themes" codelab. --- diff --git a/packages/docs/docs/codelabs/theme-extension-identifier/summary.mdx b/packages/docs/docs/codelabs/theme-extension-identifier/summary.mdx index d04e7b7e90a..673c0958d08 100644 --- a/packages/docs/docs/codelabs/theme-extension-identifier/summary.mdx +++ b/packages/docs/docs/codelabs/theme-extension-identifier/summary.mdx @@ -1,6 +1,5 @@ --- pagination_next: null -slug: /codelabs/theme-extension-identifier/summary description: Summary of the "Customizing your themes" codelab. --- diff --git a/packages/docs/docs/codelabs/theme-extension-identifier/workspace-theme.mdx b/packages/docs/docs/codelabs/theme-extension-identifier/workspace-theme.mdx index b8a9a9879e1..f89fc07943c 100644 --- a/packages/docs/docs/codelabs/theme-extension-identifier/workspace-theme.mdx +++ b/packages/docs/docs/codelabs/theme-extension-identifier/workspace-theme.mdx @@ -1,5 +1,4 @@ --- -slug: /codelabs/theme-extension-identifier/workspace-theme description: How to create a theme. --- diff --git a/packages/docs/docs/codelabs/validation-and-warnings/codelab-overview.mdx b/packages/docs/docs/codelabs/validation-and-warnings/codelab-overview.mdx index 836214712f3..cff867a1497 100644 --- a/packages/docs/docs/codelabs/validation-and-warnings/codelab-overview.mdx +++ b/packages/docs/docs/codelabs/validation-and-warnings/codelab-overview.mdx @@ -1,6 +1,5 @@ --- pagination_prev: null -slug: /codelabs/validation-and-warnings/codelab-overview description: Overview of the "Block validation and warnings" codelab. --- diff --git a/packages/docs/docs/codelabs/validation-and-warnings/displaying-warnings.mdx b/packages/docs/docs/codelabs/validation-and-warnings/displaying-warnings.mdx index f2bbe2108b6..8616484aa13 100644 --- a/packages/docs/docs/codelabs/validation-and-warnings/displaying-warnings.mdx +++ b/packages/docs/docs/codelabs/validation-and-warnings/displaying-warnings.mdx @@ -1,5 +1,4 @@ --- -slug: /codelabs/validation-and-warnings/displaying-warnings description: How to display a warning when a block fails validation. --- diff --git a/packages/docs/docs/codelabs/validation-and-warnings/setup.mdx b/packages/docs/docs/codelabs/validation-and-warnings/setup.mdx index 83a788cafd7..3154e4e78c2 100644 --- a/packages/docs/docs/codelabs/validation-and-warnings/setup.mdx +++ b/packages/docs/docs/codelabs/validation-and-warnings/setup.mdx @@ -1,5 +1,4 @@ --- -slug: /codelabs/validation-and-warnings/setup description: Setting up the "Block validation and warnings" codelab. --- diff --git a/packages/docs/docs/codelabs/validation-and-warnings/summary.mdx b/packages/docs/docs/codelabs/validation-and-warnings/summary.mdx index d6cca3368ad..1d75c241f3d 100644 --- a/packages/docs/docs/codelabs/validation-and-warnings/summary.mdx +++ b/packages/docs/docs/codelabs/validation-and-warnings/summary.mdx @@ -1,6 +1,5 @@ --- pagination_next: null -slug: /codelabs/validation-and-warnings/summary description: Summary of the "Block validation and warnings" codelab. --- diff --git a/packages/docs/docs/codelabs/validation-and-warnings/validating-blocks.mdx b/packages/docs/docs/codelabs/validation-and-warnings/validating-blocks.mdx index 657bcbd2f74..9ed7bb85c00 100644 --- a/packages/docs/docs/codelabs/validation-and-warnings/validating-blocks.mdx +++ b/packages/docs/docs/codelabs/validation-and-warnings/validating-blocks.mdx @@ -1,5 +1,4 @@ --- -slug: /codelabs/validation-and-warnings/validating-blocks description: How to validate the fields in a block. --- diff --git a/packages/docs/docs/guides/contribute/core/index.mdx b/packages/docs/docs/guides/contribute/core/index.mdx index 36750cf537d..514e5ba46d1 100644 --- a/packages/docs/docs/guides/contribute/core/index.mdx +++ b/packages/docs/docs/guides/contribute/core/index.mdx @@ -2,7 +2,6 @@ description: Learn how to contribute changes to Blockly Core. title: Contribute to core image: images/blockly_banner.png -slug: /guides/contribute/core/index --- # Contribute to core diff --git a/packages/docs/docs/guides/contribute/get-started/index.mdx b/packages/docs/docs/guides/contribute/get-started/index.mdx index f3f62b46367..9e261c254e5 100644 --- a/packages/docs/docs/guides/contribute/get-started/index.mdx +++ b/packages/docs/docs/guides/contribute/get-started/index.mdx @@ -2,7 +2,6 @@ description: Learn about contributing to Blockly. title: Get started contributing to Blockly image: images/blockly_banner.png -slug: /guides/contribute/get-started/index --- # Get started contributing to Blockly @@ -15,8 +14,8 @@ you are new to open source development. For information specific to Blockly that you should read before making a contribution, see the -[Contributing to Core](/guides/contribute/core/index) and -[Contributing to Samples](/guides/contribute/samples/index) sections. +[Contributing to Core](/guides/contribute/core) and +[Contributing to Samples](/guides/contribute/samples) sections. ## Which repository? @@ -53,8 +52,8 @@ These are the general steps you will follow any time you make a change. terminal. The name should help you remember what you're working on. 1. **Make your changes.** 1. **Validate your changes,** following the guide for - [core](/guides/contribute/core/index) or - [samples](/guides/contribute/samples/index). + [core](/guides/contribute/core) or + [samples](/guides/contribute/samples). 1. **Save your changes** with `git commit -am "fix: My commit message"`. [Read more about commit messages](#). 1. **Push your changes** to GitHub with `git push origin myBranchName`. diff --git a/packages/docs/docs/guides/contribute/get-started/write_a_good_issue.mdx b/packages/docs/docs/guides/contribute/get-started/write_a_good_issue.mdx index fef42fdfecb..d633196f37b 100644 --- a/packages/docs/docs/guides/contribute/get-started/write_a_good_issue.mdx +++ b/packages/docs/docs/guides/contribute/get-started/write_a_good_issue.mdx @@ -151,7 +151,7 @@ requests we will pursue. Here are the guidelines for each of the different categories of projects: -- [Blockly core](/guides/contribute/index) +- [Blockly core](/guides/contribute) - [Plugins](/guides/contribute/samples/add_a_plugin#first-party-criteria) - Examples: Show how to use only one or two Blockly features. - Codelabs: Show how to complete a single task or implement a single behaviour. diff --git a/packages/docs/docs/guides/contribute/index.mdx b/packages/docs/docs/guides/contribute/index.mdx index 4ed12daad09..c4d3689ea08 100644 --- a/packages/docs/docs/guides/contribute/index.mdx +++ b/packages/docs/docs/guides/contribute/index.mdx @@ -2,7 +2,6 @@ description: How to contribute (not just code!) to Blockly. title: Contribute to Blockly image: images/blockly_banner.png -slug: /guides/contribute/index --- # Contribute to Blockly @@ -24,11 +23,11 @@ contributions. - If you're new to open source development, or you want to get more background knowledge, head over to the - [Getting Started contributing](/guides/contribute/get-started/index) + [Getting Started contributing](/guides/contribute/get-started) guides. - If you are ready to jump in, check out the - [Contributing to Core](/guides/contribute/core/index) or - [Contributing to Samples](/guides/contribute/samples/index) guides. + [Contributing to Core](/guides/contribute/core) or + [Contributing to Samples](/guides/contribute/samples) guides. ### Talk to us! diff --git a/packages/docs/docs/guides/contribute/samples/block_factory.mdx b/packages/docs/docs/guides/contribute/samples/block_factory.mdx index f130dea28ad..a5a5f111bac 100644 --- a/packages/docs/docs/guides/contribute/samples/block_factory.mdx +++ b/packages/docs/docs/guides/contribute/samples/block_factory.mdx @@ -234,7 +234,7 @@ to an input on a block, and watch the output change. Check that the preview of the block looks right, and that the code for each of the output sections is correct. -[blockly-samples-development]: /guides/contribute/samples/index +[blockly-samples-development]: /guides/contribute/samples [source-developer-tools]: https://github.com/RaspberryPiFoundation/blockly-samples/blob/main/examples/developer-tools [source-blocks-index]: https://github.com/RaspberryPiFoundation/blockly-samples/blob/main/examples/developer-tools/src/blocks/index.ts [source-blocks-fields]: https://github.com/RaspberryPiFoundation/blockly-samples/blob/main/examples/developer-tools/src/blocks/fields.ts diff --git a/packages/docs/docs/guides/contribute/samples/index.mdx b/packages/docs/docs/guides/contribute/samples/index.mdx index 759f27372c3..a40e666f517 100644 --- a/packages/docs/docs/guides/contribute/samples/index.mdx +++ b/packages/docs/docs/guides/contribute/samples/index.mdx @@ -2,7 +2,6 @@ description: Learn how to contribute changes to Blockly Samples. title: Contribute to samples image: images/blockly_banner.png -slug: /guides/contribute/samples/index --- # Contribute to samples diff --git a/packages/docs/docs/guides/programming/forking_blockly.mdx b/packages/docs/docs/guides/programming/forking_blockly.mdx index 5a1ba6af593..6afb9eba41e 100644 --- a/packages/docs/docs/guides/programming/forking_blockly.mdx +++ b/packages/docs/docs/guides/programming/forking_blockly.mdx @@ -49,7 +49,7 @@ Blockly welcomes contributions! If your change is general-purpose, your best bet may be to make a pull request. Blockly improves, you don't have to maintain a fork, and everyone wins. -Check out the [contributing](/guides/contribute/index) page to learn +Check out the [contributing](/guides/contribute) page to learn more. ## Updating a fork diff --git a/packages/docs/docusaurus.config.js b/packages/docs/docusaurus.config.js index abe15e604b2..badc91451a0 100644 --- a/packages/docs/docusaurus.config.js +++ b/packages/docs/docusaurus.config.js @@ -13,8 +13,11 @@ const config = { v4: true, }, - url: 'https://raspberrypifoundation.github.io', - baseUrl: process.env.BASE_URL || '/docs/', + // CloudFlare Pages requires a trailing slash for index pages to work correctly. + trailingSlash: true, + + url: 'https://docs.blockly.com', + baseUrl: process.env.BASE_URL || '/', // GitHub pages deployment config organizationName: 'RaspberryPiFoundation', @@ -102,7 +105,7 @@ const config = { }, { label: 'Contribute to Blockly', - to: 'guides/contribute/index', + to: 'guides/contribute', }, ], }, diff --git a/packages/docs/static/_redirects b/packages/docs/static/_redirects index 63a16db93b3..50fd0514c5f 100644 --- a/packages/docs/static/_redirects +++ b/packages/docs/static/_redirects @@ -2,9 +2,14 @@ # Syntax: source destination [status_code] # https://developers.cloudflare.com/pages/configuration/redirects/ -# Legacy /reference/js/* paths redirect to canonical /reference/* URLs -/reference/js/* /reference/:splat 302 +# Legacy Google reference URLs used /reference/js/ and may end in .md. +# Canonical URLs are /reference// (trailingSlash: true, no /js/, no extension). +# More specific rules must appear before broader /reference/js/*. -# Strip .md/.mdx extensions if someone lands on the raw filename -/reference/*.md /reference/:splat 302 -/reference/*.mdx /reference/:splat 302 +/reference/js/*.md /reference/:splat/ 302 +/reference/js/*.mdx /reference/:splat/ 302 +/reference/js/* /reference/:splat/ 302 + +# Strip .md/.mdx extensions on canonical /reference/* paths +/reference/*.md /reference/:splat/ 302 +/reference/*.mdx /reference/:splat/ 302 diff --git a/patches/@microsoft+api-documenter+7.22.4.patch b/patches/@microsoft+api-documenter+7.22.4.patch deleted file mode 100644 index 3cc97035da6..00000000000 --- a/patches/@microsoft+api-documenter+7.22.4.patch +++ /dev/null @@ -1,76 +0,0 @@ -diff --git a/node_modules/@microsoft/api-documenter/lib/documenters/MarkdownDocumenter.js b/node_modules/@microsoft/api-documenter/lib/documenters/MarkdownDocumenter.js -index 5284d10..4f8b439 100644 ---- a/node_modules/@microsoft/api-documenter/lib/documenters/MarkdownDocumenter.js -+++ b/node_modules/@microsoft/api-documenter/lib/documenters/MarkdownDocumenter.js -@@ -877,12 +877,14 @@ class MarkdownDocumenter { - } - _writeBreadcrumb(output, apiItem) { - const configuration = this._tsdocConfiguration; -- output.appendNodeInParagraph(new tsdoc_1.DocLinkTag({ -- configuration, -- tagName: '@link', -- linkText: 'Home', -- urlDestination: this._getLinkFilenameForApiItem(this._apiModel) -- })); -+ // Don't print the first breadcrumb, because there's only one package, so we don't need the Home link. -+ // output.appendNodeInParagraph(new tsdoc_1.DocLinkTag({ -+ // configuration, -+ // tagName: '@link', -+ // linkText: 'Home', -+ // urlDestination: this._getLinkFilenameForApiItem(this._apiModel) -+ // })); -+ let first = true; - for (const hierarchyItem of apiItem.getHierarchy()) { - switch (hierarchyItem.kind) { - case api_extractor_model_1.ApiItemKind.Model: -@@ -892,18 +894,23 @@ class MarkdownDocumenter { - // this may change in the future. - break; - default: -- output.appendNodesInParagraph([ -+ if (!first) { -+ // Only print the breadcrumb separator if it's not the first item we're printing. -+ output.appendNodeInParagraph( - new tsdoc_1.DocPlainText({ - configuration, - text: ' > ' -- }), -+ })); -+ } -+ first = false; -+ output.appendNodeInParagraph( - new tsdoc_1.DocLinkTag({ - configuration, - tagName: '@link', - linkText: hierarchyItem.displayName, - urlDestination: this._getLinkFilenameForApiItem(hierarchyItem) - }) -- ]); -+ ); - } - } - } -@@ -968,11 +975,8 @@ class MarkdownDocumenter { - // For overloaded methods, add a suffix such as "MyClass.myMethod_2". - let qualifiedName = Utilities_1.Utilities.getSafeFilenameForName(hierarchyItem.displayName); - if (api_extractor_model_1.ApiParameterListMixin.isBaseClassOf(hierarchyItem)) { -- if (hierarchyItem.overloadIndex > 1) { -- // Subtract one for compatibility with earlier releases of API Documenter. -- // (This will get revamped when we fix GitHub issue #1308) -- qualifiedName += `_${hierarchyItem.overloadIndex - 1}`; -- } -+ // https://github.com/microsoft/rushstack/issues/1921 -+ qualifiedName += `_${hierarchyItem.overloadIndex}`; - } - switch (hierarchyItem.kind) { - case api_extractor_model_1.ApiItemKind.Model: -@@ -983,7 +987,8 @@ class MarkdownDocumenter { - baseName = Utilities_1.Utilities.getSafeFilenameForName(node_core_library_1.PackageName.getUnscopedName(hierarchyItem.displayName)); - break; - default: -- baseName += '.' + qualifiedName; -+ // https://github.com/microsoft/rushstack/issues/1921 -+ baseName += '.' + qualifiedName + '_' + hierarchyItem.kind.toLowerCase(); - } - } - return baseName + '.md'; diff --git a/patches/@microsoft+api-documenter+7.28.2.patch b/patches/@microsoft+api-documenter+7.28.2.patch deleted file mode 100644 index 1ceaaf58a4b..00000000000 --- a/patches/@microsoft+api-documenter+7.28.2.patch +++ /dev/null @@ -1,80 +0,0 @@ -diff --git a/node_modules/@microsoft/api-documenter/lib/documenters/MarkdownDocumenter.js b/node_modules/@microsoft/api-documenter/lib/documenters/MarkdownDocumenter.js -index 716b861..853a6b1 100644 ---- a/node_modules/@microsoft/api-documenter/lib/documenters/MarkdownDocumenter.js -+++ b/node_modules/@microsoft/api-documenter/lib/documenters/MarkdownDocumenter.js -@@ -893,12 +893,14 @@ class MarkdownDocumenter { - } - _writeBreadcrumb(output, apiItem) { - const configuration = this._tsdocConfiguration; -- output.appendNodeInParagraph(new tsdoc_1.DocLinkTag({ -- configuration, -- tagName: '@link', -- linkText: 'Home', -- urlDestination: this._getLinkFilenameForApiItem(this._apiModel) -- })); -+ // Don't print the first breadcrumb, because there's only one package, so we don't need the Home link. -+ // output.appendNodeInParagraph(new tsdoc_1.DocLinkTag({ -+ // configuration, -+ // tagName: '@link', -+ // linkText: 'Home', -+ // urlDestination: this._getLinkFilenameForApiItem(this._apiModel) -+ // })); -+ let first = true; - for (const hierarchyItem of apiItem.getHierarchy()) { - switch (hierarchyItem.kind) { - case api_extractor_model_1.ApiItemKind.Model: -@@ -908,18 +910,24 @@ class MarkdownDocumenter { - // this may change in the future. - break; - default: -- output.appendNodesInParagraph([ -- new tsdoc_1.DocPlainText({ -- configuration, -- text: ' > ' -- }), -+ if (!first) { -+ // Only print the breadcrumb separator if it's not the first item we're printing. -+ output.appendNodeInParagraph( -+ new tsdoc_1.DocPlainText({ -+ configuration, -+ text: ' > ' -+ }) -+ ); -+ } -+ first = false; -+ output.appendNodeInParagraph( - new tsdoc_1.DocLinkTag({ - configuration, - tagName: '@link', - linkText: hierarchyItem.displayName, - urlDestination: this._getLinkFilenameForApiItem(hierarchyItem) - }) -- ]); -+ ); - } - } - } -@@ -992,11 +1000,8 @@ class MarkdownDocumenter { - // For overloaded methods, add a suffix such as "MyClass.myMethod_2". - let qualifiedName = Utilities_1.Utilities.getSafeFilenameForName(hierarchyItem.displayName); - if (api_extractor_model_1.ApiParameterListMixin.isBaseClassOf(hierarchyItem)) { -- if (hierarchyItem.overloadIndex > 1) { -- // Subtract one for compatibility with earlier releases of API Documenter. -- // (This will get revamped when we fix GitHub issue #1308) -- qualifiedName += `_${hierarchyItem.overloadIndex - 1}`; -- } -+ // https://github.com/microsoft/rushstack/issues/1921 -+ qualifiedName += `_${hierarchyItem.overloadIndex}`; - } - switch (hierarchyItem.kind) { - case api_extractor_model_1.ApiItemKind.Model: -@@ -1007,7 +1012,8 @@ class MarkdownDocumenter { - baseName = Utilities_1.Utilities.getSafeFilenameForName(node_core_library_1.PackageName.getUnscopedName(hierarchyItem.displayName)); - break; - default: -- baseName += '.' + qualifiedName; -+ // https://github.com/microsoft/rushstack/issues/1921 -+ baseName += '.' + qualifiedName + '_' + hierarchyItem.kind.toLowerCase(); - } - } - return baseName + '.md'; diff --git a/patches/@microsoft+api-documenter+7.30.5+001+initial.patch b/patches/@microsoft+api-documenter+7.30.5+001+initial.patch new file mode 100644 index 00000000000..9e9218382ca --- /dev/null +++ b/patches/@microsoft+api-documenter+7.30.5+001+initial.patch @@ -0,0 +1,161 @@ +diff --git a/node_modules/@microsoft/api-documenter/lib-commonjs/documenters/MarkdownDocumenter.js b/node_modules/@microsoft/api-documenter/lib-commonjs/documenters/MarkdownDocumenter.js +index 026a528..1ebdc8f 100644 +--- a/node_modules/@microsoft/api-documenter/lib-commonjs/documenters/MarkdownDocumenter.js ++++ b/node_modules/@microsoft/api-documenter/lib-commonjs/documenters/MarkdownDocumenter.js +@@ -914,12 +914,14 @@ class MarkdownDocumenter { + } + _writeBreadcrumb(output, apiItem) { + const configuration = this._tsdocConfiguration; +- output.appendNodeInParagraph(new tsdoc_1.DocLinkTag({ +- configuration, +- tagName: '@link', +- linkText: 'Home', +- urlDestination: this._getLinkFilenameForApiItem(this._apiModel) +- })); ++ // Don't print the first breadcrumb, because there's only one package, so we don't need the Home link. ++ // output.appendNodeInParagraph(new tsdoc_1.DocLinkTag({ ++ // configuration, ++ // tagName: '@link', ++ // linkText: 'Home', ++ // urlDestination: this._getLinkFilenameForApiItem(this._apiModel) ++ // })); ++ let first = true; + for (const hierarchyItem of apiItem.getHierarchy()) { + switch (hierarchyItem.kind) { + case api_extractor_model_1.ApiItemKind.Model: +@@ -929,18 +931,24 @@ class MarkdownDocumenter { + // this may change in the future. + break; + default: +- output.appendNodesInParagraph([ +- new tsdoc_1.DocPlainText({ +- configuration, +- text: ' > ' +- }), ++ if (!first) { ++ // Only print the breadcrumb separator if it's not the first item we're printing. ++ output.appendNodeInParagraph( ++ new tsdoc_1.DocPlainText({ ++ configuration, ++ text: ' > ' ++ }) ++ ); ++ } ++ first = false; ++ output.appendNodeInParagraph( + new tsdoc_1.DocLinkTag({ + configuration, + tagName: '@link', + linkText: hierarchyItem.displayName, + urlDestination: this._getLinkFilenameForApiItem(hierarchyItem) + }) +- ]); ++ ); + } + } + } +@@ -1014,9 +1022,8 @@ class MarkdownDocumenter { + let qualifiedName = Utilities_1.Utilities.getSafeFilenameForName(hierarchyItem.displayName); + if (api_extractor_model_1.ApiParameterListMixin.isBaseClassOf(hierarchyItem)) { + if (hierarchyItem.overloadIndex > 1) { +- // Subtract one for compatibility with earlier releases of API Documenter. +- // (This will get revamped when we fix GitHub issue #1308) +- qualifiedName += `_${hierarchyItem.overloadIndex - 1}`; ++ // https://github.com/microsoft/rushstack/issues/1921 ++ qualifiedName += `_${hierarchyItem.overloadIndex}`; + } + } + switch (hierarchyItem.kind) { +@@ -1028,7 +1035,8 @@ class MarkdownDocumenter { + baseName = Utilities_1.Utilities.getSafeFilenameForName(node_core_library_1.PackageName.getUnscopedName(hierarchyItem.displayName)); + break; + default: +- baseName += '.' + qualifiedName; ++ // https://github.com/microsoft/rushstack/issues/1921 ++ baseName += '.' + qualifiedName + '_' + hierarchyItem.kind.toLowerCase(); + } + } + return baseName + '.md'; +diff --git a/node_modules/@microsoft/api-documenter/lib-esm/documenters/MarkdownDocumenter.js b/node_modules/@microsoft/api-documenter/lib-esm/documenters/MarkdownDocumenter.js +index f08d6e8..0d28f73 100644 +--- a/node_modules/@microsoft/api-documenter/lib-esm/documenters/MarkdownDocumenter.js ++++ b/node_modules/@microsoft/api-documenter/lib-esm/documenters/MarkdownDocumenter.js +@@ -878,33 +878,41 @@ export class MarkdownDocumenter { + } + _writeBreadcrumb(output, apiItem) { + const configuration = this._tsdocConfiguration; +- output.appendNodeInParagraph(new DocLinkTag({ +- configuration, +- tagName: '@link', +- linkText: 'Home', +- urlDestination: this._getLinkFilenameForApiItem(this._apiModel) +- })); ++ // Don't print the first breadcrumb, because there's only one package, so we don't need the Home link. ++ // output.appendNodeInParagraph(new tsdoc_1.DocLinkTag({ ++ // configuration, ++ // tagName: '@link', ++ // linkText: 'Home', ++ // urlDestination: this._getLinkFilenameForApiItem(this._apiModel) ++ // })); ++ let first = true; + for (const hierarchyItem of apiItem.getHierarchy()) { + switch (hierarchyItem.kind) { +- case ApiItemKind.Model: +- case ApiItemKind.EntryPoint: ++ case api_extractor_model_1.ApiItemKind.Model: ++ case api_extractor_model_1.ApiItemKind.EntryPoint: + // We don't show the model as part of the breadcrumb because it is the root-level container. + // We don't show the entry point because today API Extractor doesn't support multiple entry points; + // this may change in the future. + break; + default: +- output.appendNodesInParagraph([ +- new DocPlainText({ +- configuration, +- text: ' > ' +- }), +- new DocLinkTag({ ++ if (!first) { ++ // Only print the breadcrumb separator if it's not the first item we're printing. ++ output.appendNodeInParagraph( ++ new tsdoc_1.DocPlainText({ ++ configuration, ++ text: ' > ' ++ }) ++ ); ++ } ++ first = false; ++ output.appendNodeInParagraph( ++ new tsdoc_1.DocLinkTag({ + configuration, + tagName: '@link', + linkText: hierarchyItem.displayName, + urlDestination: this._getLinkFilenameForApiItem(hierarchyItem) + }) +- ]); ++ ); + } + } + } +@@ -978,9 +986,8 @@ export class MarkdownDocumenter { + let qualifiedName = Utilities.getSafeFilenameForName(hierarchyItem.displayName); + if (ApiParameterListMixin.isBaseClassOf(hierarchyItem)) { + if (hierarchyItem.overloadIndex > 1) { +- // Subtract one for compatibility with earlier releases of API Documenter. +- // (This will get revamped when we fix GitHub issue #1308) +- qualifiedName += `_${hierarchyItem.overloadIndex - 1}`; ++ // https://github.com/microsoft/rushstack/issues/1921 ++ qualifiedName += `_${hierarchyItem.overloadIndex}`; + } + } + switch (hierarchyItem.kind) { +@@ -992,7 +999,8 @@ export class MarkdownDocumenter { + baseName = Utilities.getSafeFilenameForName(PackageName.getUnscopedName(hierarchyItem.displayName)); + break; + default: +- baseName += '.' + qualifiedName; ++ // https://github.com/microsoft/rushstack/issues/1921 ++ baseName += '.' + qualifiedName + '_' + hierarchyItem.kind.toLowerCase(); + } + } + return baseName + '.md';