FreeTube/package.json

133 lines
5.0 KiB
JSON
Raw Normal View History

2020-02-16 19:30:00 +01:00
{
"name": "freetube",
"productName": "FreeTube",
"description": "A private YouTube client",
2022-11-02 03:43:40 +01:00
"version": "0.18.0",
"license": "AGPL-3.0-or-later",
"main": "./dist/main.js",
"private": true,
2020-02-16 19:30:00 +01:00
"author": {
"name": "PrestonN",
"email": "FreeTubeApp@protonmail.com",
"url": "https://github.com/FreeTubeApp/FreeTube"
},
"repository": {
"type": "git",
"url": "git+https://github.com/FreeTubeApp/FreeTube.git"
},
2020-02-16 19:30:00 +01:00
"bugs": {
"url": "https://github.com/FreeTubeApp/FreeTube/issues"
},
"scripts": {
"build": "run-s rebuild:electron pack build-release",
"build:arm64": "run-s rebuild:electron pack build-release:arm64",
"build:arm32": "run-s rebuild:electron pack build-release:arm32",
"build-release": "node _scripts/build.js",
"build-release:arm64": "node _scripts/build.js arm64",
"build-release:arm32": "node _scripts/build.js arm32",
"clean": "rimraf build/ static/dashFiles/ dist/ static/storyboards/",
"debug": "run-s rebuild:electron debug-runner",
"debug-runner": "node _scripts/dev-runner.js --remote-debug",
"dev": "run-s rebuild:electron dev-runner",
"dev:web": "node _scripts/dev-runner.js --web",
"dev-runner": "node _scripts/dev-runner.js",
"get-instances": "node _scripts/getInstances.js",
"get-regions": "node _scripts/getRegions.mjs",
"lint-all": "run-p lint lint-json lint-style",
"lint-fix": "eslint --fix --ext .js,.vue ./",
"lint": "eslint --ext .js,.vue ./",
"lint-json": "eslint --ext .json ./",
"lint-style": "run-p lint-style:scss lint-style:css",
"lint-style:scss": "stylelint \"**/*.scss\"",
"lint-style:css": "stylelint \"**/*.css\"",
"lint-style-fix:scss": "stylelint --fix \"**/*.scss\"",
"lint-style-fix:css": "stylelint --fix \"**/*.css\"",
2023-05-13 13:10:32 +02:00
"lint-yml": "eslint --ext .yml,.yaml ./",
2022-11-06 09:17:33 +01:00
"pack": "run-p pack:main pack:renderer",
"pack:main": "webpack --mode=production --node-env=production --config _scripts/webpack.main.config.js",
"pack:renderer": "webpack --mode=production --node-env=production --config _scripts/webpack.renderer.config.js",
"pack:web": "webpack --mode=production --node-env=production --config _scripts/webpack.web.config.js",
"postinstall": "yarn run --silent rebuild:electron",
"prettier": "prettier --write \"{src,_scripts}/**/*.{js,vue}\"",
"rebuild:electron": "electron-builder install-app-deps",
"release": "run-s test build",
"ci": "yarn install --silent --frozen-lockfile"
},
2020-02-16 19:30:00 +01:00
"dependencies": {
"@fortawesome/fontawesome-svg-core": "^6.4.0",
"@fortawesome/free-brands-svg-icons": "^6.4.0",
"@fortawesome/free-solid-svg-icons": "^6.4.0",
"@fortawesome/vue-fontawesome": "^2.0.10",
"@silvermine/videojs-quality-selector": "^1.3.0",
2022-09-09 03:10:10 +02:00
"autolinker": "^4.0.0",
"electron-context-menu": "^3.6.1",
"lodash.debounce": "^4.0.8",
"marked": "^4.3.0",
"nedb-promises": "^6.2.1",
2023-04-12 15:39:28 +02:00
"path-browserify": "^1.0.1",
"process": "^0.11.10",
"video.js": "7.21.4",
"videojs-contrib-quality-levels": "^3.0.0",
"videojs-http-source-selector": "^1.1.6",
Improving touch input by bringing in `videojs-mobile-ui` (#2719) * Adding videojs-mobile-ui as a dependency - Using the beta because it fixes an issue with multiple version of videojs loading at once. This is related to MarmadileManteater#56. * Mapping defaultSkipInterval to seekSeconds * Adding CSS to prevent showing duplicate buttons - Added a new variable `usingTouch` to selectively hide the existing `vjs-big-play-button` when the `touch-overlay` is visible. * Renaming CSS class to something more specific * Adding text-shadow behind play / pause button This should make it more visually distinct against a light or colorful background. * Enabling touch-overlay anytime a touch is detected Disabling it whenever mouse input is detected The default behavior of `videojs-mobile-ui` is to only work in Android and iOS, but by forcing the touch behavior to be enabled and selectively showing it only when touch input is detected, it should work on any device with touch input even if the browser doesn't detect that it is running in Android or iOS. * Removing unnecessary code * Removing unintentionally leftover variable * Removing an unnecessary assignment Adding comments to explain why a flag called `forceForTesting` is set to true Disabling the `lockOnRotate` flag. * Moving this flag and wrapper class * Adding whitespace * Making my comment a little more consistent * Changing the punctuation of a comment * Adjusting the CSS to fix a firefox discrepancy * Adding a check for mobile firefox For whatever reason, mobile firefox sometimes triggers onmouseover when a touch occurs, and this is unwanted behavior. * Adding a drop-shadow to the ff and rw icons This should make them easier to see on top of light videos * Hiding the mobile play button according to setting - Added CSS to hide the videojs-mobile-ui play button when the `Display Play Button In Video Player` setting is disabled. * Replacing long computed string with class binding Co-authored-by: absidue <48293849+absidue@users.noreply.github.com> * Adding newline at the end of videoJS.css Co-authored-by: absidue <48293849+absidue@users.noreply.github.com>
2022-10-24 19:49:52 +02:00
"videojs-mobile-ui": "^0.8.0",
"videojs-overlay": "^3.1.0",
"videojs-vtt-thumbnails-freetube": "0.0.15",
"vue": "^2.7.14",
"vue-i18n": "^8.28.2",
2021-01-11 21:32:35 +01:00
"vue-observe-visibility": "^1.0.0",
"vue-router": "^3.6.5",
Channel community page (#1568) * Comunity page strings, Communtiy tab, Community initial API call Added: 1) Community page strings - the first few strings are now available 2) Community tab - A clickable tab is now displayed on channel pages 3) Community initial API call - on loading the page, the initial access * Comunity page strings, Communtiy tab, Community initial API call Added: 1) Community page strings - the first few strings are now available 2) Community tab - A clickable tab is now displayed on channel pages 3) Community initial API call - on loading the page, the initial access * Data returning added * Comunity page strings, Communtiy tab, Community initial API call Added: 1) Community page strings - the first few strings are now available 2) Community tab - A clickable tab is now displayed on channel pages 3) Community initial API call - on loading the page, the initial access * Data returning added * Images are now displayed in the community tab * Comunity page strings, Communtiy tab, Community initial API call Added: 1) Community page strings - the first few strings are now available 2) Community tab - A clickable tab is now displayed on channel pages 3) Community initial API call - on loading the page, the initial access * Data returning added * Images are now displayed in the community tab * Added primitive video display * Current changes * Added preston's change with the ftcard and started on some layout basics * Created Community Post Component and added fetch more button + functionality * Fixed problem with videothumbnails not loading and adjusted their height to 100% in the ft-list sass file * Added poll and ft-list-video to the community page * Added author name placeholder (missing in module), the published date, the likes and dislikes as well as comment counts to posts. Additionally scaling of images was added * Added basis for community page playlists * Finalized a setup for playlists when wide enough * Fix for missing key in custom list * Added publish date translation * Add empty alt tags Co-authored-by: Jason <84899178+jasonhenriquez@users.noreply.github.com> * fix accessibility issue Co-authored-by: Jason <84899178+jasonhenriquez@users.noreply.github.com> * change: ununique ids to classes * add missing alt tag * Redirect channel/id/community to the channel's community tab * update yt-channel-info * update to 3.0.1 * Update yarn.lock * add basic multiImage support * use tiny-slider for multiImage community posts * update getChannelCommunityPostsMore * Update yarn.lock * fix yarn lock * swap community and about tab * Update yarn.lock * Fix missing comma * Removed trailing spaces * Clearing all community post data when changing to another channel * Restructuring of how the post cards are added, Empty page text, ft-element-list props customization 1) Now the community page uses the same setup of ft-element-list as the other pages on the channel. 2) If no posts are available, now it displays a message saying so 3) The ft-element-list component's display style can now be forced into a certain display mode (list/grid) with the new prop. It will overwrite the corresponding default value for list display * Fixed display text path * Fix lint" * Adjusted css to fit to new layout * Final touches community page to tidy up the console * fix icons, fix linter * fix hiding showmore button for community page * fix showToast calls * change all this.showToast to showToaast * reinstall tinyslider * use helpers * small fixes * fix: getting continuation of community posts * remove unused code * improve slider style import * fix hiding 'ShowMore' button * fix weird typo in css * add invidous community tab support * remove console testing code * Apply suggestions from code review Co-authored-by: absidue <48293849+absidue@users.noreply.github.com> * implement suggestions, improve thumbnail replacement * use flip horizontal * readd invidious fallback code, remove author name workaround * replace another google domain when using invidious * suppport invidious multiImage posts * Use youtube.js for community posts * add invidious polls, remove support for fetching more * reorder icons alpabetically * re-allow loading more when using localapi * fix styling of multiImage, hide NA text * fix loading playlist * fix spacing of items * fix issue with direct url to community tab * make review recommendations Co-Authored-By: absidue <48293849+absidue@users.noreply.github.com> * fix displaying selected tab, get best quality image --------- Co-authored-by: Preston <freetubeapp@protonmail.com> Co-authored-by: ChunkyProgrammer <78101139+ChunkyProgrammer@users.noreply.github.com> Co-authored-by: Jason <84899178+jasonhenriquez@users.noreply.github.com> Co-authored-by: absidue <48293849+absidue@users.noreply.github.com>
2023-03-04 09:56:04 +01:00
"vue-tiny-slider": "^0.1.39",
2021-03-03 04:51:01 +01:00
"vuex": "^3.6.2",
"youtubei.js": "^5.2.1"
2020-02-16 19:30:00 +01:00
},
"devDependencies": {
"@babel/core": "^7.22.8",
"@babel/eslint-parser": "^7.22.7",
"@babel/plugin-proposal-class-properties": "^7.18.6",
"@babel/preset-env": "^7.22.7",
"@double-great/stylelint-a11y": "^2.0.2",
"babel-loader": "^9.1.3",
"copy-webpack-plugin": "^11.0.0",
"css-loader": "^6.8.1",
"css-minimizer-webpack-plugin": "^5.0.1",
"electron": "^22.3.16",
"electron-builder": "^23.6.0",
"eslint": "^8.44.0",
"eslint-config-prettier": "^8.8.0",
"eslint-config-standard": "^17.1.0",
"eslint-plugin-import": "^2.27.5",
"eslint-plugin-jsonc": "^2.9.0",
"eslint-plugin-n": "^16.0.1",
"eslint-plugin-prettier": "^4.2.1",
"eslint-plugin-promise": "^6.1.1",
"eslint-plugin-unicorn": "^47.0.0",
"eslint-plugin-vue": "^9.15.1",
"eslint-plugin-vuejs-accessibility": "^2.1.0",
"eslint-plugin-yml": "^1.8.0",
"html-webpack-plugin": "^5.5.3",
"js-yaml": "^4.1.0",
2022-09-13 03:28:36 +02:00
"json-minimizer-webpack-plugin": "^4.0.0",
"lefthook": "^1.4.3",
"mini-css-extract-plugin": "^2.7.6",
2020-02-16 19:30:00 +01:00
"npm-run-all": "^4.1.5",
"postcss": "^8.4.25",
"postcss-scss": "^4.0.6",
"prettier": "^3.0.0",
"rimraf": "^5.0.1",
"sass": "^1.63.6",
"sass-loader": "^13.3.2",
"stylelint": "^15.10.1",
"stylelint-config-sass-guidelines": "^10.0.0",
"stylelint-config-standard": "^34.0.0",
"stylelint-high-performance-animation": "^1.8.0",
2020-02-16 19:30:00 +01:00
"tree-kill": "1.2.2",
"vue-devtools": "^5.1.4",
"vue-eslint-parser": "^9.3.1",
"vue-loader": "^15.10.0",
"webpack": "^5.88.1",
"webpack-cli": "^5.1.4",
"webpack-dev-server": "^4.15.1",
2023-05-13 13:10:32 +02:00
"yaml-eslint-parser": "^1.2.2"
}
2020-02-16 19:30:00 +01:00
}