# ## Format of this file # # The top-level keys in this file correspond with directories under resources/lib/. # These in turn are registered as module bundles in Resources.php. # # ## How to install a foreign resource # # 1. Add or update the url(s) for the upstream module to this YAML file. # # Look at other modules for examples. To install a module from npm, # we use the tarball distribution from npmjs.org. This is the same as what # the npm CLI uses. For example, to install jquery-client@9.2.0, use: # . # # 2. If the upstream maintainers publish an integrity hash, set that as well. # Otherwise, use manageForeignResources.php to compute the integrity hash. # # Run `php manageForeignResources.php make-sri "my module name"` # # This will download the specified file(s) and print their integrity hashes, # already formatted in YAML, ready for copying to this file. # # 3. Last but not least, decide where files go. # # If you specified a direct url to JavaScript or CSS file, this step is # optional. See the corresponding documentation section below for more # information and examples for "dest" keys. Once you've set any "dest" keys, # run `php manageForeignResources.php update "my module name"`. # # ## Package formats # # Each top-level key must use one of these types: # # - `file`: For a plain file. # - `multi-file`: For multiple plain files. # - `tar`: For a tarball archive (file may be compressed). # - `doc-only`: For documenting that a package is used, without managing it # # ### Shared fields # # The following fields are shared by all package types: # * `license` : SPDX license identifier # * `homepage` : [optional] Homepage URL of library, to be shown on Special:Version # * `authors` : [optional] Authors string of library, to be shown on Special:Version # * `version` : [optional] Version string of library, to be shown on Special:Version # # ### The "file" type # # Besides the shared ones, the following fields are used: # * `src`: Full URL to the remote resource. # * `integrity`: Cryptographic hash (integrity metadata format per ). # * `dest`: [optional] The file name to use in the module directory. Default: Basename of URL. # * `transforms`: [optional] File transformations (see below). # # For example, the following would produce resources/lib/mymodule/x.js: # # mymodule: # type: file # src: https://mymodule.example/1.2.3/x.js # integrity: sha384-Je+NE+saisQuoi # # ### The "multi-file" type # # Besides the shared ones, the following fields are used: # * `files`: An object mapping destination paths to `src` and `integrity` keys. # * `transforms`: [optional] File transformations (see below). # # For example: # # mymodule: # type: multi-file # files: # x.js: # src: https://mymodule.example/1.2.3/x.js # integrity: sha384-Je+NE+saisQuoi # x.css: # src: https://mymodule.example/1.2.3/x.css # integrity: sha384-Je+NE+saisQuoi # # ### The "tar" type # # Besides the shared ones, the following fields are used: # * `src`: Full URL to the remote resource. # * `integrity`: Cryptographic hash (integrity metadata format per ). # * `dest`: [optional] The default is to extract all files from the package. # To only extract some of the files or directories, use "dest" to specify # files, directories, and/or glob patterns. You can use a site like https://unpkg.com/ # to easily inspect an npm package, like . # This field can also be used to extract files to a subdirectory (by default the files and # directories listed in "dest" are extracted to the module directory root). # * `transforms`: [optional] File transformations (see below). This field is experimental # and might end up being removed. # # For example: # # mymodule: # type: tar # src: https://registry.npmjs.org/jquery-client/-/jquery-client-9.2.0.tgz # integrity: sha384-Je+NE+saisQuoi # dest: # package/dist/x.js: # package/dist/i18n: # package/dist/style/*.css: themes # # This would extract the "x.js" file, the "i18n" directory (recursive), # and any "*.css" files from the "style" directory. They will end up in mymodule/x.js, # mymodule/i18n and mymodule/themes, respectively. # # ### The "doc-only" type # # This type can be used for packages which are managed in some custom way (e.g. they require a # manual build step). manageForeignResources.php will ignore these records, but they will still # be shown on Special:Version. Only the shared fields are used. # # ### File transformations # # Modification of upstream files is discouraged but sometimes unavoidable. The `transforms` key # lets you define per-file transformations, to be applied after fetching the upstream file. # It takes a map where the keys are destination file names, and the values are transformation # definitions or arrays of transformation definitions. # # IMPORTANT: File transformations are experimental and might end up being removed. Using them # is not recommended at this point. # # Currently only one transformation is supported: adding /*@nomin*/ to the beginning of a file # (which prevents the ResourceLoader minifier from touching it). Example: # # mymodule: # ... # transforms: # foo.min.js: nomin # CLDRPluralRuleParser: license: MIT homepage: https://github.com/santhoshtr/CLDRPluralRuleParser authors: Santhosh Thottingal version: 1.3.1-0dda851 type: file src: https://raw.githubusercontent.com/santhoshtr/CLDRPluralRuleParser/0dda851/src/CLDRPluralRuleParser.js integrity: sha384-M4taeYYG2+9Ob1/La16iO+zlRRmBV5lBR3xUKkQT6kfkJ0aLbCi6yc0RYI1BDzdh codex: license: GPL-2.0+ homepage: https://doc.wikimedia.org/codex/ authors: Design Systems team, Wikimedia Foundation version: 0.14.0 type: tar src: https://registry.npmjs.org/@wikimedia/codex/-/codex-0.14.0.tgz integrity: sha384-oDYSMKmO/RI9rFo2X5Kp0aSWziuwvvHouAfWiqrtYgjeQg1yIRYHZ1QPHZUE2lDk dest: package/dist/codex.mjs: package/dist/codex.umd.js: package/dist/codex.style.css: package/dist/codex.style-rtl.css: package/dist/codex.style-legacy.css: package/dist/codex.style-legacy-rtl.css: package/dist/mixins/*: mixins package/LICENSE: package/README.md: codex-design-tokens: license: GPL-2.0+ homepage: https://doc.wikimedia.org/codex/ authors: Design Systems team, Wikimedia Foundation version: 0.14.0 type: tar src: https://registry.npmjs.org/@wikimedia/codex-design-tokens/-/codex-design-tokens-0.14.0.tgz integrity: sha384-gjKTkYbE1BYjFRB/gJpcUDtJbErrToB+z0uR/ciXo2Ripoo+4Z/OSXPNgsx/S+3G dest: package/dist/theme-wikimedia-ui.less: package/dist/theme-wikimedia-ui-legacy.less: package/LICENSE: package/README.md: codex-icons: license: MIT homepage: https://doc.wikimedia.org/codex/ authors: Design Systems team, Wikimedia Foundation version: 0.14.0 type: tar src: https://registry.npmjs.org/@wikimedia/codex-icons/-/codex-icons-0.14.0.tgz integrity: sha384-4TNEjUM766byEYtstKiPfhbgpgNEk5orUTkrjvy+s6UzF6q2Gifnr3g8vqaKHZmD dest: package/dist/codex-icons.json: package/dist/codex-icon-paths.less: package/LICENSE: package/README.md: codex-search: license: GPL-2.0+ homepage: https://doc.wikimedia.org/codex/ authors: Design Systems team, Wikimedia Foundation version: 0.14.0 type: tar src: https://registry.npmjs.org/@wikimedia/codex-search/-/codex-search-0.14.0.tgz integrity: sha384-mI50KTrPGunfdjWvm38C/FEjOTdhiTxMQcq6Asrs7VLysvlGbMA+ik4P2AC/ptXf dest: package/dist/codex-search.mjs: package/dist/codex-search.umd.js: package/dist/codex-search.style.css: package/dist/codex-search.style-rtl.css: package/dist/codex-search.style-legacy.css: package/dist/codex-search.style-legacy-rtl.css: package/LICENSE: package/README.md: url: license: MIT homepage: https://github.com/financial-times/polyfill-library authors: Financial Times version: 3.111.0-0ece79ce32 type: multi-file files: URL.js: src: https://raw.githubusercontent.com/Financial-Times/polyfill-library/0ece79ce32/polyfills/URL/polyfill.js integrity: sha384-ZAFKMtnv4166IfCOoSoxGM1b4JQx/njgDOWwnaSQPESHAqvjE0e5gXmYBYyjQEl8 URL-toJSON.js: src: https://raw.githubusercontent.com/Financial-Times/polyfill-library/0ece79ce32/polyfills/URL/prototype/toJSON/polyfill.js integrity: sha384-Fy884Llzghu/2ag7WG9GtW4BhSprpT9ZdbSKfetBSoD7V6VW1AE5hx1PA0LXVqlC LICENSE.md: src: https://raw.githubusercontent.com/Financial-Times/polyfill-library/0ece79ce32/LICENSE.md integrity: sha384-kXXDJ+mVdRawUrEAkIAPr1Lz40TzWjVxllGDCxB9+fHcLXtNsSYrKIvzNgTBF+En fetch-polyfill: license: MIT homepage: https://github.com/github/fetch#readme authors: GitHub, Inc. version: 3.6.2 type: tar src: https://registry.npmjs.com/whatwg-fetch/-/whatwg-fetch-3.6.2.tgz integrity: sha384-MKKGEwKprHZSo8G05laATm+iES1Lbsp/Dy7riDibahMr2TyJS7HClsxKjcGk+3FJ dest: package/dist/fetch.umd.js: package/LICENSE: package/README.md: intersection-observer: license: Apache-2.0 homepage: https://github.com/GoogleChromeLabs/intersection-observer authors: Philip Walton version: 0.12.0 type: tar src: https://registry.npmjs.org/intersection-observer/-/intersection-observer-0.12.0.tgz integrity: sha384-zCaiM7krKokKgwmrn87MtEtBUfsddhfofL0x+6KiGr+nHRa4b/ZdcfkBUSEtuEUw dest: package/intersection-observer.js: package/README.md: jquery: license: MIT homepage: https://jquery.com authors: OpenJS Foundation and other contributors version: 3.6.1 type: multi-file files: # Integrities from link modals https://code.jquery.com/jquery/ jquery.js: src: https://code.jquery.com/jquery-3.6.1.js integrity: sha256-3zlB5s2uwoUzrXK3BT7AX3FyvojsraNFxCc2vC/7pNI= jquery.chosen: license: MIT homepage: https://harvesthq.github.io/chosen/ authors: Patrick Filler for Harvest, Matthew Lettini, Patrick Filler, Ken Earley, Christophe Coevoet, Koen Punt, and T.J. Schuck. version: 1.8.2 type: multi-file files: LICENSE: src: https://raw.githubusercontent.com/harvesthq/chosen/v1.8.2/LICENSE.md integrity: sha384-hxUqOVbJZTd9clMlf9yV18PjyKQ2rUOCXLgFNYlV/blpyeCyiUCpmVjAmNP0yc8M README.md: src: https://raw.githubusercontent.com/harvesthq/chosen/v1.8.2/README.md integrity: sha384-ps8fQiOF1anPibj6QMNii4OcAbZNcy+dkmdJUZzqBgmfjaPth9YDe0TRIk89lfID # Following files taken from CDN because they're built, and don't exist in the repo chosen-sprite.png: src: https://cdnjs.cloudflare.com/ajax/libs/chosen/1.8.2/chosen-sprite.png integrity: sha384-QL0lDMjIhfcd5uzKEIPehkhx7l0gHWxFo1taNsY2hdDuYdGAadNhiwKueQ91R8KW chosen-sprite@2x.png: src: https://cdnjs.cloudflare.com/ajax/libs/chosen/1.8.2/chosen-sprite%402x.png integrity: sha384-MSDzP+ofFO+lRrCZQn3dztHS/GdR8Ai907bxrRZeuGSi87G8XffEKTxxM99GTvr1 chosen.css: src: https://cdnjs.cloudflare.com/ajax/libs/chosen/1.8.2/chosen.css integrity: sha384-VeNz/jFhcqEG5UB40sPZW8Bg8sdtbtXW1038aqBPAZy/z/6j1XsSQjRUJ7NEM3nE chosen.jquery.js: src: https://cdnjs.cloudflare.com/ajax/libs/chosen/1.8.2/chosen.jquery.js integrity: sha384-EzfvMGW4mwDo/InJrmR/UvtxTUUYUA0cfybfS8aqPG1ItoAQYYYDImWl1gaBzMfQ jquery.client: license: MIT homepage: https://www.npmjs.com/package/jquery-client authors: Trevor Parscal, Timo Tijhof, and Roan Kattouw version: 3.0.0 type: tar src: https://registry.npmjs.org/jquery-client/-/jquery-client-3.0.0.tgz integrity: sha256-BRPTsJn7fViZ2ip0YUBT9L90wJ8s0BFE17ccpmLfPUk= dest: package/AUTHORS.txt: package/jquery.client.js: package/LICENSE-MIT: package/README.md: jquery.form: license: GPL-2.0+ OR MIT homepage: https://github.com/jquery-form/form authors: Mike Alsup and Kevin Morris version: 3.14-ff80d9ddf4 type: file src: https://raw.githubusercontent.com/jquery-form/form/ff80d9ddf4/jquery.form.js integrity: sha384-h4G2CrcSbixzMvrrK259cNBYaL/vS1D4+KdUN9NJDzQnTU1bQ6Avluget+Id13M7 jquery.fullscreen: license: GPL-2.0+ homepage: https://github.com/theopolisme/jquery-fullscreen authors: Theo Patt, Timo Tijhof, Gilles Dubuc version: 2.1.0 type: file src: https://raw.githubusercontent.com/theopolisme/jquery-fullscreen/v2.1.0/jquery.fullscreen.js integrity: sha384-G4KPs2d99tgcsyUnJ3eeZ1r2hEKDwZfc4+/xowL/LIemq2VVwEE8HpVAWt4WYNLR jquery.i18n: license: MIT OR GPL-2.0-or-later homepage: https://github.com/wikimedia/jquery.i18n authors: Language Engineering team, Wikimedia Foundation version: 1.0.7 type: tar src: https://codeload.github.com/wikimedia/jquery.i18n/tar.gz/70b5ee20a638cb8fe36baef8d51ac2eb577ce012 integrity: sha384-/Upo+6ih5h5v7/GW4zzuaMNZfAHmV7cYVhORdjwT9qFTHzmIStN9mPQ+VD0niknE dest: jquery.i18n-*/CODE_OF_CONDUCT.md: jquery.i18n-*/CREDITS: jquery.i18n-*/GPL-LICENSE: jquery.i18n-*/MIT-LICENSE: jquery.i18n-*/README.md: jquery.i18n-*/src: # Heavily modified; see the PATCHES file jquery.ui: license: MIT homepage: https://jqueryui.com authors: OpenJS Foundation and other contributors version: 1.9.2 type: doc-only moment: license: MIT homepage: https://momentjs.com authors: JS Foundation and other contributors version: 2.25.2 type: tar src: https://codeload.github.com/moment/moment/tar.gz/2.25.2 integrity: sha384-Kdi8+psMUggMYwnp+uBCuy03sBfDbKFyjzdLWJks/4O8x4DwOFWzYbtm7RbJ4ISU dest: moment-2.25.2/moment.js: moment-2.25.2/CHANGELOG.md: moment-2.25.2/README.md: moment-2.25.2/LICENSE: moment-2.25.2/locale/*.js: locale mustache: license: MIT homepage: https://github.com/janl/mustache.js authors: Michael Jackson, Jan Lehnardt, Phillip Johnsen, and other contributors version: 4.2.0 type: tar src: https://registry.npmjs.org/mustache/-/mustache-4.2.0.tgz integrity: sha384-JKpbW4FTGK4zdRNitERF8271K0N5EMpnxY9/yrm8CEUPUE+DZsiBstkkzGd89uJG dest: package/mustache.js: package/LICENSE: oojs: license: MIT homepage: https://www.mediawiki.org/wiki/OOjs authors: OOjs Team and other contributors version: 7.0.1 type: tar src: https://registry.npmjs.org/oojs/-/oojs-7.0.1.tgz integrity: sha384-2O0mmkNNV9RilbKtQjCL8wUfIf3Eb+/5CKQEsC4yCbf1NAV1MM67O2GxcC1/cj9Q dest: package/dist/oojs.js: package/AUTHORS.txt: package/LICENSE-MIT: package/README.md: oojs-router: license: MIT homepage: https://www.mediawiki.org/wiki/OOjs_Router authors: OOjs Team and other contributors version: 0.3.0 type: tar src: https://registry.npmjs.org/oojs-router/-/oojs-router-0.3.0.tgz integrity: sha384-FeAuFD6G2sGGXCWvxncx9QOTEAoq5VQdNWkXEhvi4XAoOSqe8RGms5JgmL8Fl8FB dest: package/dist/oojs-router.js: package/LICENSE: package/AUTHORS.txt: package/History.md: ooui: license: MIT homepage: https://www.mediawiki.org/wiki/OOUI authors: OOUI Team and other contributors version: 0.47.5 type: tar src: https://registry.npmjs.org/oojs-ui/-/oojs-ui-0.47.5.tgz integrity: sha384-dRoluw0xt0U+s2yrziK23LyGVSS4kzIOo4HgmDjNzs2QCXGrEjpwasRiI0JnfOdZ dest: # Main stuff package/dist/oojs-ui-core.js{,.map.json}: package/dist/oojs-ui-core-{wikimediaui,apex}.css: package/dist/oojs-ui-widgets.js{,.map.json}: package/dist/oojs-ui-widgets-{wikimediaui,apex}.css: package/dist/oojs-ui-toolbars.js{,.map.json}: package/dist/oojs-ui-toolbars-{wikimediaui,apex}.css: package/dist/oojs-ui-windows.js{,.map.json}: package/dist/oojs-ui-windows-{wikimediaui,apex}.css: package/dist/oojs-ui-{wikimediaui,apex}.js{,.map.json}: package/dist/i18n: # For jsduck/eg-iframe package/dist/oojs-ui-images-wikimediaui.css: # WikimediaUI theme package/dist/themes/wikimediaui/images/icons/*.{svg,png}: themes/wikimediaui/images/icons package/dist/themes/wikimediaui/images/indicators/*.{svg,png}: themes/wikimediaui/images/indicators package/dist/themes/wikimediaui/*.json: themes/wikimediaui package/dist/wikimedia-ui-base.less: # Apex theme (icons and indicators) package/dist/themes/apex/*.json: themes/apex # Misc stuff package/dist/AUTHORS.txt: package/dist/History.md: package/dist/LICENSE-MIT: package/dist/README.md: pako: license: MIT AND Zlib homepage: https://github.com/nodeca/pako authors: Andrei Tuputcyn, Vitaly Puzrin, Friedel Ziegelmayer, Kirill Efimov, Jean-loup Gailly, and Mark Adler version: 2.0.4 type: multi-file files: pako_deflate.es5.js: src: https://raw.githubusercontent.com/nodeca/pako/2.0.4/dist/pako_deflate.es5.js integrity: sha384-msHzmf3Olqx90vEgQHrbqpn7Kx6Tv0L5VXKPQoq+yDnkrvKwzlufduA/rLk1suNV README.md: src: https://raw.githubusercontent.com/nodeca/pako/2.0.4/README.md integrity: sha384-mQ9cShSJ6yG8JTPL7LkbnfUnTmc7LA2hnBMSNfb5X7xk6pTFzVTurK9gcSMgJu3B LICENSE: src: https://raw.githubusercontent.com/nodeca/pako/2.0.4/LICENSE integrity: sha384-9tg5LwdfxM6Fpdp6Sep9VI0qXS7Eg5gQRPvNrfV3DKIkVVL3EwSK2atu+zRoEwJg pinia: license: MIT homepage: https://pinia.vuejs.org/ authors: Eduardo San Martin Morote version: 2.0.16 type: tar src: https://registry.npmjs.org/pinia/-/pinia-2.0.16.tgz integrity: sha512-9/LMVO+/epny1NBfC77vnps4g3JRezxhhoF1xLUk8mZkUIxVnwfEAIRiAX8mYBTD/KCwZqnDMqXc8w3eU0FQGg== dest: package/README.md: package/LICENSE: package/dist/pinia.iife.js: package/dist/pinia.iife.prod.js: qunitjs: license: MIT homepage: https://qunitjs.com authors: OpenJS Foundation and other contributors version: 2.19.4 type: multi-file # Integrity from link modals at https://code.jquery.com/qunit/ files: qunit.js: src: https://code.jquery.com/qunit/qunit-2.19.4.js integrity: sha256-ZFjYNVAOk8Ozw+xXXCfNuf87Knngp3BVxFk3lBLD/Uc= qunit.css: src: https://code.jquery.com/qunit/qunit-2.19.4.css integrity: sha256-qwmW00heo7d+2GZQ2eKAsTbPZ/Tw5emPGigowFrXpVk= sinonjs: license: BSD-3-Clause homepage: https://sinonjs.org/ authors: Christian Johansen and other contributors version: 1.17.7 type: file src: https://sinonjs.org/releases/sinon-1.17.7.js integrity: sha384-wR63Jwy75KqwBfzCmXd6gYws6uj3qV/XMAybzXrkEYGYG3AQ58ZWwr1fVpkHa5e8 dest: sinon.js vue: license: MIT homepage: https://vuejs.org/ authors: Yuxi (Evan) You version: 3.2.37 type: tar # This is the migration build of Vue 3.2.37 which provides compatibility for Vue 2 code src: https://registry.npmjs.org/@vue/compat/-/compat-3.2.37.tgz integrity: sha512-MIYkFAz3Fur1mtZBqrNMYTymlohCQ0ol6vtNb58cqExLSCt63xZaXyiZZYPvS6WaMXfbNBDPXMvU9tO922eFCA== dest: package/README.md: package/LICENSE: package/dist/vue.global.js: package/dist/vue.global.prod.js: vuex: license: MIT homepage: https://vuex.vuejs.org/ authors: Yuxi (Evan) You version: 4.0.2 type: tar src: https://registry.npmjs.org/vuex/-/vuex-4.0.2.tgz integrity: sha512-M6r8uxELjZIK8kTKDGgZTYX/ahzblnzC4isU1tpmEuOIIKmV+TRdc+H4s8ds2NuZ7wpUTdGRzJRtoj+lI+pc0Q== dest: package/README.md: package/LICENSE: package/dist/vuex.global.js: package/dist/vuex.global.prod.js: