├── .browserslistrc ├── .editorconfig ├── .gitattributes ├── .github ├── CODEOWNERS.md ├── CONTRIBUTING.md ├── ISSUE_TEMPLATE.md ├── PULL_REQUEST_TEMPLATE.md └── workflows │ ├── ci-cd.yml │ ├── commitlint.yml │ └── signature-assistant.yml ├── .gitignore ├── .husky ├── .gitattributes └── commit-msg ├── .npmignore ├── .nvmrc ├── LICENSE ├── README.md ├── TRADEMARK ├── commitlint.config.js ├── eslint.config.mjs ├── jest.config.js ├── package.json ├── release.config.js ├── renovate.json5 ├── src ├── Asset.ts ├── AssetType.ts ├── BuiltinHelper.ts ├── DataFormat.ts ├── FetchTool.ts ├── FetchWorkerTool.ts ├── FetchWorkerTool.worker.js ├── Helper.ts ├── ProxyTool.ts ├── ScratchStorage.ts ├── Tool.ts ├── WebHelper.ts ├── builtins │ ├── defaultBitmap.png │ ├── defaultSound.wav │ └── defaultVector.svg ├── index.ts ├── log.ts ├── memoizedToString.ts ├── scratchFetch.js └── types.d.ts ├── test ├── __mocks__ │ └── cross-fetch.js ├── fixtures │ ├── .gitattributes │ ├── assets │ │ ├── 117504922.json │ │ ├── 66895930177178ea01d9e610917f8acf.png │ │ ├── 6e8bd9ae68fdb02b7e1e3df656a75635.svg │ │ ├── 7e24c99c1b853e52f8e7f9004416fa34.png │ │ ├── 83c36d806dc92327b9e7049a565c6bff.wav │ │ ├── f88bf1935daea28f8ca098462a31dbb0.svg │ │ └── fe5e3566965f9de793beeffce377d054.jpg │ └── known-assets.js ├── integration │ └── download-known-assets.test.js ├── transformers │ └── arraybuffer-loader.js └── unit │ ├── add-helper.test.js │ ├── fetch-tool.test.js │ ├── load-default-assets.test.js │ └── metadata.test.js ├── tsconfig.json ├── tsconfig.test.json └── webpack.config.js /.browserslistrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/.browserslistrc -------------------------------------------------------------------------------- /.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/.editorconfig -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/.gitattributes -------------------------------------------------------------------------------- /.github/CODEOWNERS.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/.github/CODEOWNERS.md -------------------------------------------------------------------------------- /.github/CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/.github/CONTRIBUTING.md -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/.github/ISSUE_TEMPLATE.md -------------------------------------------------------------------------------- /.github/PULL_REQUEST_TEMPLATE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/.github/PULL_REQUEST_TEMPLATE.md -------------------------------------------------------------------------------- /.github/workflows/ci-cd.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/.github/workflows/ci-cd.yml -------------------------------------------------------------------------------- /.github/workflows/commitlint.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/.github/workflows/commitlint.yml -------------------------------------------------------------------------------- /.github/workflows/signature-assistant.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/.github/workflows/signature-assistant.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/.gitignore -------------------------------------------------------------------------------- /.husky/.gitattributes: -------------------------------------------------------------------------------- 1 | * text eol=lf 2 | -------------------------------------------------------------------------------- /.husky/commit-msg: -------------------------------------------------------------------------------- 1 | npx --no-install commitlint --edit "$1" 2 | -------------------------------------------------------------------------------- /.npmignore: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.nvmrc: -------------------------------------------------------------------------------- 1 | v20 2 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/README.md -------------------------------------------------------------------------------- /TRADEMARK: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/TRADEMARK -------------------------------------------------------------------------------- /commitlint.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/commitlint.config.js -------------------------------------------------------------------------------- /eslint.config.mjs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/eslint.config.mjs -------------------------------------------------------------------------------- /jest.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/jest.config.js -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/package.json -------------------------------------------------------------------------------- /release.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/release.config.js -------------------------------------------------------------------------------- /renovate.json5: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/renovate.json5 -------------------------------------------------------------------------------- /src/Asset.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/src/Asset.ts -------------------------------------------------------------------------------- /src/AssetType.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/src/AssetType.ts -------------------------------------------------------------------------------- /src/BuiltinHelper.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/src/BuiltinHelper.ts -------------------------------------------------------------------------------- /src/DataFormat.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/src/DataFormat.ts -------------------------------------------------------------------------------- /src/FetchTool.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/src/FetchTool.ts -------------------------------------------------------------------------------- /src/FetchWorkerTool.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/src/FetchWorkerTool.ts -------------------------------------------------------------------------------- /src/FetchWorkerTool.worker.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/src/FetchWorkerTool.worker.js -------------------------------------------------------------------------------- /src/Helper.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/src/Helper.ts -------------------------------------------------------------------------------- /src/ProxyTool.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/src/ProxyTool.ts -------------------------------------------------------------------------------- /src/ScratchStorage.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/src/ScratchStorage.ts -------------------------------------------------------------------------------- /src/Tool.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/src/Tool.ts -------------------------------------------------------------------------------- /src/WebHelper.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/src/WebHelper.ts -------------------------------------------------------------------------------- /src/builtins/defaultBitmap.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/src/builtins/defaultBitmap.png -------------------------------------------------------------------------------- /src/builtins/defaultSound.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/src/builtins/defaultSound.wav -------------------------------------------------------------------------------- /src/builtins/defaultVector.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/src/builtins/defaultVector.svg -------------------------------------------------------------------------------- /src/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/src/index.ts -------------------------------------------------------------------------------- /src/log.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/src/log.ts -------------------------------------------------------------------------------- /src/memoizedToString.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/src/memoizedToString.ts -------------------------------------------------------------------------------- /src/scratchFetch.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/src/scratchFetch.js -------------------------------------------------------------------------------- /src/types.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/src/types.d.ts -------------------------------------------------------------------------------- /test/__mocks__/cross-fetch.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/test/__mocks__/cross-fetch.js -------------------------------------------------------------------------------- /test/fixtures/.gitattributes: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/test/fixtures/.gitattributes -------------------------------------------------------------------------------- /test/fixtures/assets/117504922.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/test/fixtures/assets/117504922.json -------------------------------------------------------------------------------- /test/fixtures/assets/66895930177178ea01d9e610917f8acf.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/test/fixtures/assets/66895930177178ea01d9e610917f8acf.png -------------------------------------------------------------------------------- /test/fixtures/assets/6e8bd9ae68fdb02b7e1e3df656a75635.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/test/fixtures/assets/6e8bd9ae68fdb02b7e1e3df656a75635.svg -------------------------------------------------------------------------------- /test/fixtures/assets/7e24c99c1b853e52f8e7f9004416fa34.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/test/fixtures/assets/7e24c99c1b853e52f8e7f9004416fa34.png -------------------------------------------------------------------------------- /test/fixtures/assets/83c36d806dc92327b9e7049a565c6bff.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/test/fixtures/assets/83c36d806dc92327b9e7049a565c6bff.wav -------------------------------------------------------------------------------- /test/fixtures/assets/f88bf1935daea28f8ca098462a31dbb0.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/test/fixtures/assets/f88bf1935daea28f8ca098462a31dbb0.svg -------------------------------------------------------------------------------- /test/fixtures/assets/fe5e3566965f9de793beeffce377d054.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/test/fixtures/assets/fe5e3566965f9de793beeffce377d054.jpg -------------------------------------------------------------------------------- /test/fixtures/known-assets.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/test/fixtures/known-assets.js -------------------------------------------------------------------------------- /test/integration/download-known-assets.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/test/integration/download-known-assets.test.js -------------------------------------------------------------------------------- /test/transformers/arraybuffer-loader.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/test/transformers/arraybuffer-loader.js -------------------------------------------------------------------------------- /test/unit/add-helper.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/test/unit/add-helper.test.js -------------------------------------------------------------------------------- /test/unit/fetch-tool.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/test/unit/fetch-tool.test.js -------------------------------------------------------------------------------- /test/unit/load-default-assets.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/test/unit/load-default-assets.test.js -------------------------------------------------------------------------------- /test/unit/metadata.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/test/unit/metadata.test.js -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/tsconfig.json -------------------------------------------------------------------------------- /tsconfig.test.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/tsconfig.test.json -------------------------------------------------------------------------------- /webpack.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scratchfoundation/scratch-storage/HEAD/webpack.config.js --------------------------------------------------------------------------------