198 lines
6.8 KiB
JSON
198 lines
6.8 KiB
JSON
{
|
|
"name": "pinafore",
|
|
"description": "Alternative web client for Mastodon",
|
|
"version": "1.24.5",
|
|
"type": "module",
|
|
"engines": {
|
|
"node": "^12.20.0 || ^14.13.1 || >=16.0.0"
|
|
},
|
|
"scripts": {
|
|
"lint": "standard && standard --plugin html 'src/routes/**/*.html'",
|
|
"lint-fix": "standard --fix && standard --fix --plugin html 'src/routes/**/*.html'",
|
|
"dev": "run-s before-build serve-dev",
|
|
"serve-dev": "run-p --race build-template-html-watch sapper-dev",
|
|
"sapper-dev": "cross-env NODE_ENV=development PORT=4002 WEBPACK_CONFIG_FILE=webpack/webpack.config.cjs SERVER_FILE_EXT=cjs node ./node_modules/sapper/sapper dev",
|
|
"before-build": "run-p build-template-html build-assets build-webpack-config",
|
|
"build": "cross-env NODE_ENV=production run-s build-steps",
|
|
"build-steps": "run-s before-build sapper-export build-vercel-json",
|
|
"sapper-build": "cross-env WEBPACK_CONFIG_FILE=webpack/webpack.config.cjs SERVER_FILE_EXT=cjs node ./node_modules/sapper/sapper build",
|
|
"start": "node server.js",
|
|
"build-and-start": "run-s build start",
|
|
"build-template-html": "node ./bin/build-template-html.js",
|
|
"build-template-html-watch": "node ./bin/build-template-html.js --watch",
|
|
"build-assets": "node ./bin/build-assets.js",
|
|
"build-webpack-config": "rollup -c ./webpack/rollup.config.js",
|
|
"clone-mastodon": "node ./bin/clone-mastodon.js",
|
|
"install-mastodon": "node ./bin/install-mastodon.js",
|
|
"run-mastodon": "node ./bin/run-mastodon.js",
|
|
"test": "cross-env BROWSER=chrome:headless run-s test-browser",
|
|
"test-browser": "run-p --race run-mastodon build-and-start test-mastodon",
|
|
"test-mastodon": "run-s wait-for-mastodon-to-start wait-for-mastodon-data testcafe",
|
|
"test-mastodon-suite0": "run-s wait-for-mastodon-to-start wait-for-mastodon-data testcafe-suite0",
|
|
"test-mastodon-suite1": "run-s wait-for-mastodon-to-start wait-for-mastodon-data testcafe-suite1",
|
|
"testcafe": "run-s testcafe-suite0 testcafe-suite1",
|
|
"testcafe-suite0": "cross-env-shell testcafe -c 2 $BROWSER tests/spec/0*",
|
|
"testcafe-suite1": "cross-env-shell testcafe $BROWSER tests/spec/1*",
|
|
"test-unit": "NODE_ENV=test mocha -r bin/browser-shim.js tests/unit/",
|
|
"test-in-ci-suite0": "cross-env BROWSER=chrome:headless run-p --race run-mastodon start test-mastodon-suite0",
|
|
"test-in-ci-suite1": "cross-env BROWSER=chrome:headless run-p --race run-mastodon start test-mastodon-suite1",
|
|
"wait-for-mastodon-to-start": "node bin/wait-for-mastodon-to-start.js",
|
|
"wait-for-mastodon-data": "node bin/wait-for-mastodon-data.js",
|
|
"backup-mastodon-data": "./bin/backup-mastodon-data.sh",
|
|
"sapper-export": "cross-env PORT=22939 WEBPACK_CONFIG_FILE=webpack/webpack.config.cjs SERVER_FILE_EXT=cjs node ./node_modules/sapper/sapper export",
|
|
"print-export-info": "node ./bin/print-export-info.js",
|
|
"export-steps": "run-s before-build sapper-export print-export-info",
|
|
"export": "cross-env NODE_ENV=production run-s export-steps",
|
|
"now-build": "run-s export",
|
|
"build-vercel-json": "node bin/build-vercel-json.js"
|
|
},
|
|
"dependencies": {
|
|
"@formatjs/intl-listformat": "^6.2.6",
|
|
"@formatjs/intl-locale": "^2.4.33",
|
|
"@formatjs/intl-pluralrules": "^4.0.28",
|
|
"@formatjs/intl-relativetimeformat": "^9.1.7",
|
|
"@rollup/plugin-json": "^4.1.0",
|
|
"@rollup/plugin-replace": "^2.4.2",
|
|
"@stdlib/utils-noop": "^0.0.6",
|
|
"arrow-key-navigation": "^1.2.0",
|
|
"blurhash": "^1.1.3",
|
|
"cheerio": "1.0.0-rc.10",
|
|
"child-process-promise": "^2.2.1",
|
|
"chokidar": "^3.5.2",
|
|
"circular-dependency-plugin": "^5.2.2",
|
|
"compression": "^1.7.4",
|
|
"cross-env": "^7.0.3",
|
|
"css-dedoupe": "^0.1.1",
|
|
"emoji-picker-element": "^1.6.1",
|
|
"emoji-picker-element-data": "^1.2.0",
|
|
"emoji-regex": "^9.2.2",
|
|
"encoding": "^0.1.13",
|
|
"es-main": "^1.0.2",
|
|
"escape-html": "^1.0.3",
|
|
"esm": "^3.2.25",
|
|
"events-light": "^1.0.5",
|
|
"express": "^4.17.1",
|
|
"file-api": "^0.10.4",
|
|
"file-drop-element": "^1.0.1",
|
|
"file-loader": "^6.2.0",
|
|
"focus-visible": "^5.2.0",
|
|
"form-data": "^4.0.0",
|
|
"format-message-interpret": "^6.2.3",
|
|
"format-message-parse": "^6.2.3",
|
|
"glob": "^7.1.7",
|
|
"is-emoji-supported": "^0.0.5",
|
|
"li": "^1.3.0",
|
|
"localstorage-memory": "^1.0.3",
|
|
"mkdirp": "^1.0.4",
|
|
"node-fetch": "^2.6.1",
|
|
"npm-run-all": "^4.1.5",
|
|
"p-any": "^3.0.0",
|
|
"page-lifecycle": "^0.1.2",
|
|
"pinch-zoom-element": "^1.1.1",
|
|
"promise-worker": "^2.0.1",
|
|
"prop-types": "^15.7.2",
|
|
"requestidlecallback": "^0.3.0",
|
|
"rollup": "^2.52.7",
|
|
"rollup-plugin-terser": "^7.0.2",
|
|
"rtl-detect": "^1.0.3",
|
|
"safari-14-idb-fix": "^1.0.3",
|
|
"sapper": "nolanlawson/sapper#for-pinafore-26",
|
|
"sass": "^1.35.1",
|
|
"stringz": "^2.1.0",
|
|
"svelte": "^2.16.1",
|
|
"svelte-extras": "^2.0.2",
|
|
"svelte-loader": "^2.13.6",
|
|
"svelte-transitions": "^1.2.0",
|
|
"svgo": "^2.3.1",
|
|
"terser-webpack-plugin": "^5.1.4",
|
|
"tesseract.js": "^2.1.4",
|
|
"tesseract.js-core": "^2.2.0",
|
|
"text-encoding": "^0.7.0",
|
|
"tiny-queue": "^0.2.1",
|
|
"webpack": "^5.42.0",
|
|
"webpack-bundle-analyzer": "^4.4.2",
|
|
"worker-loader": "^3.0.8"
|
|
},
|
|
"devDependencies": {
|
|
"assert": "^2.0.0",
|
|
"eslint-plugin-html": "^6.1.2",
|
|
"fake-indexeddb": "^3.1.3",
|
|
"globby": "^11.0.4",
|
|
"husky": "^7.0.0",
|
|
"lint-staged": "^11.0.0",
|
|
"mocha": "^9.0.2",
|
|
"standard": "^16.0.3",
|
|
"testcafe": "^1.15.0-rc.3"
|
|
},
|
|
"standard": {
|
|
"ignore": [
|
|
"webpack/*.cjs"
|
|
],
|
|
"globals": [
|
|
"AbortController",
|
|
"Blob",
|
|
"CSS",
|
|
"DOMParser",
|
|
"Element",
|
|
"Element",
|
|
"Event",
|
|
"FormData",
|
|
"HTMLElement",
|
|
"IDBKeyRange",
|
|
"IDBObjectStore",
|
|
"Image",
|
|
"ImageData",
|
|
"IntersectionObserver",
|
|
"MessageChannel",
|
|
"NodeList",
|
|
"NotificationEvent",
|
|
"OffscreenCanvas",
|
|
"PointerEvent",
|
|
"Response",
|
|
"URL",
|
|
"WebSocket",
|
|
"__assets__",
|
|
"__routes__",
|
|
"__shell__",
|
|
"atob",
|
|
"btoa",
|
|
"caches",
|
|
"customElements",
|
|
"fetch",
|
|
"fixture",
|
|
"getComputedStyle",
|
|
"history",
|
|
"indexedDB",
|
|
"localStorage",
|
|
"location",
|
|
"matchMedia",
|
|
"performance",
|
|
"postMessage",
|
|
"queueMicrotask",
|
|
"requestAnimationFrame",
|
|
"requestIdleCallback",
|
|
"self",
|
|
"test"
|
|
]
|
|
},
|
|
"esm": {
|
|
"mode": "auto",
|
|
"cjs": "vars"
|
|
},
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "git+https://github.com/nolanlawson/pinafore.git"
|
|
},
|
|
"keywords": [],
|
|
"author": "Nolan Lawson <nolan@nolanlawson.com>",
|
|
"license": "AGPL-3.0-only",
|
|
"bugs": {
|
|
"url": "https://github.com/nolanlawson/pinafore/issues"
|
|
},
|
|
"homepage": "https://github.com/nolanlawson/pinafore#readme",
|
|
"lint-staged": {
|
|
"*.js": "standard --fix",
|
|
"*.html": "standard --fix --plugin html 'src/routes/**/*.html'"
|
|
}
|
|
}
|