86 строки
3.6 KiB
YAML
86 строки
3.6 KiB
YAML
# This file compiles to package.json scripts.
|
|
# When you add or modify anything, you *MUST* run:
|
|
# npm run yamscripts
|
|
# to compile your changes.
|
|
|
|
scripts:
|
|
# Run the activity-stream mochitests
|
|
mochitest: (cd $npm_package_config_mc_dir && ./mach mochitest browser/components/newtab/test/browser --headless)
|
|
|
|
# Run the activity-stream mochitests with the browser toolbox debugger.
|
|
# Often handy in combination with adding a "debugger" statement in your
|
|
# mochitest somewhere.
|
|
mochitest-debug: (cd $npm_package_config_mc_dir && ./mach mochitest --jsdebugger browser/components/newtab/test/browser)
|
|
|
|
# bundle: Build all assets for activity stream
|
|
bundle:
|
|
webpack: webpack --config webpack.system-addon.config.js
|
|
css: node-sass content-src/styles -o css
|
|
html: rimraf prerendered && node ./bin/render-activity-stream-html.js
|
|
|
|
# buildmc: Export code to mozilla central
|
|
buildmc:
|
|
pre: rimraf $npm_package_config_mc_dir/browser/components/newtab/
|
|
bundle: => bundle
|
|
copy: rsync --exclude-from .mcignore -a . $npm_package_config_mc_dir/browser/components/newtab/
|
|
fluentExport: cpx "$npm_package_config_locales_dir/*.ftl" $npm_package_config_mc_dir/browser/locales/$npm_package_config_default_locale/browser/newtab/
|
|
copyPingCentre: cpx "ping-centre/PingCentre.jsm" $npm_package_config_mc_dir/browser/modules
|
|
|
|
# builduplift: Build and export to mozilla central for uplifts without exporting strings to browser/locales
|
|
builduplift:
|
|
pre: =>prebuildmc
|
|
bundle: => bundle
|
|
copy: =>buildmc:copy
|
|
|
|
# buildlibrary: Export about:library code to mozilla-central - intentionally not included in buildmc for now
|
|
buildlibrary:
|
|
webpack: webpack --config webpack.aboutlibrary.config.js
|
|
css: node-sass --source-map true --source-map-contents content-src/aboutlibrary -o aboutlibrary/content
|
|
copy: cpx "aboutlibrary/**/{,.}*" $npm_package_config_mc_dir/browser/components/library
|
|
|
|
# startmc: Automatically rebuild/export to mozilla central when files are changed. NOTE: Includes sourcemaps, do not use for profiling/perf testing.
|
|
startmc:
|
|
_parallel: true
|
|
pre: =>buildmc
|
|
# This copies only the system addon sub-folder; changing anything outside of it will need a full rebuild.
|
|
copy: cpx "{{,.}*,!(node_modules)/**/{,.}*}" $npm_package_config_mc_dir/browser/components/newtab/ -w
|
|
copyFluent: =>buildmc:fluentExport -- -w
|
|
copyPingCentre: =>buildmc:copyPingCentre -- -w
|
|
webpack: =>bundle:webpack -- --env.development -w
|
|
css: =>bundle:css && =>bundle:css -- --source-map-embed --source-map-contents -w
|
|
|
|
# importmc: Import changes from mc to github repo
|
|
importmc:
|
|
src: rsync --exclude-from .mcignore -a $npm_package_config_mc_dir/browser/components/newtab/ .
|
|
ftl: rsync -a $npm_package_config_mc_dir/browser/locales/$npm_package_config_default_locale/browser/newtab/ $npm_package_config_locales_dir
|
|
|
|
testmc:
|
|
lint: =>lint
|
|
build: =>bundle:webpack
|
|
unit: karma start karma.mc.config.js
|
|
|
|
tddmc: karma start karma.mc.config.js --tdd
|
|
|
|
debugcoverage: open logs/coverage/index.html
|
|
|
|
# lint: Run eslint and sass-lint
|
|
lint:
|
|
eslint-check: eslint --cache --print-config AboutNewTabService.jsm | eslint-config-prettier-check
|
|
eslint: eslint --cache --ext=.js,.jsm,.jsx .
|
|
sasslint: sass-lint -v -q
|
|
|
|
# test: Run all tests once
|
|
test: =>testmc
|
|
|
|
# tdd: Run content tests continuously
|
|
tdd: =>tddmc
|
|
|
|
# Utility scripts for use when vendoring in Node packages
|
|
vendor:
|
|
react: node ./bin/vendor-react.js
|
|
|
|
fix:
|
|
# Note that since we're currently running eslint-plugin-prettier,
|
|
# running fix:eslint will also reformat changed JS files using prettier.
|
|
eslint: =>lint:eslint -- --fix
|