Commit Graph

91 Commits

Author SHA1 Message Date
absidue
da0c06902b
Use smaller Vue esm runtime build (#3271) 2023-03-07 07:06:42 +01:00
absidue
291aeff1a6
Migrate channel related functionality to YouTube.js (#3143)
* Migrate channel related functionality to YouTube.js

* Better alert handling

* Add support for special autogenerated channels

* Add support for latest YouTube.js changes

* Add support for age restricted channels

* Update YouTube.js to 3.0.0

* Obey hide search bar setting for the tag searching

* Choose a better parameter name

* Allow sharing terminated and age restricted channels

* Add handle support for handles on Invidious

* Fix the backend fallback

* Use a positive parameter name

Co-authored-by: PikachuEXE <pikachuexe@gmail.com>

* Fix duplicate tags causing errors

* Fix sorting for the Invidious API

* Move URL resolving to the channel page

* Update YouTube.js to 3.1.0

---------

Co-authored-by: PikachuEXE <pikachuexe@gmail.com>
2023-03-01 08:39:33 +08:00
absidue
0eeac4699b
Only load the necessary configs in the dev-runner (#3146) 2023-02-04 15:04:44 +08:00
absidue
15bd1cb958
Set the Vue compiler whitespace option to condense (#3101) 2023-01-25 15:58:51 -05:00
absidue
e140d5ef98
Use smaller web version of linkedom (#3115) 2023-01-25 21:21:31 +01:00
absidue
7becd36120
Add an IS_ELECTRON_MAIN define instead of runtime detection (#3056) 2023-01-13 17:54:05 +01:00
absidue
fe85a17b4e
Use webpack externals to exclude dependencies (#3036) 2023-01-07 20:45:27 +01:00
absidue
15b15026b6
Migrate the watch page to YouTube.js (#3035)
* Migrate the watch page to YouTube.js

* Fix YouTube.js exclusion in the web build
2023-01-07 02:52:59 +01:00
absidue
156176aca8
Migrate search to YouTube.js (#3028)
* Migrate search to YouTube.js

* Fix linting issue
2023-01-05 04:54:08 +01:00
ChunkyProgrammer
43a25f8738
update linters & add stylelint (#3023)
* update linters, add stylelint, switch from sass to scss

* remove unused babel-eslint module

* fix spacing in scss files

* dont use npm in script calls

* dont error for `:deep` selector in css
2023-01-03 19:19:41 +01:00
PikachuEXE
f91395de85
Update copyleft year to 2023 (#3017) 2022-12-31 07:30:43 -05:00
absidue
1d1e6eacea
Switch from sync fs APIs to fs/promises (#2991)
* Switch from sync fs APIs to fs/promises

* Fix error and await storyboard creation

* Start a new file for filesystem helpers starting with pathExists
2022-12-29 01:19:48 +00:00
absidue
bef610f91b
Import the product name instead of using a define for it (#3003) 2022-12-27 10:15:15 +08:00
absidue
c9124359a5
Migrate playlists on the watch page to YouTube.js (#2969) 2022-12-16 18:08:56 +01:00
absidue
b33af1c812
Make the process locales plugin properly async (#2940) 2022-12-11 08:42:35 +01:00
absidue
ecb9128731
Migrate search suggestions to youtubei.js (#2855)
* Migrate search suggestions to youtubei.js

* Rename functions to indicate that they are for the local API

* Implement and use a lightweight Innertube session

* Fix typo in comment

Co-authored-by: ChunkyProgrammer <78101139+ChunkyProgrammer@users.noreply.github.com>

* Fix another typo in a comment

Co-authored-by: ChunkyProgrammer <78101139+ChunkyProgrammer@users.noreply.github.com>
2022-11-28 12:52:47 +01:00
absidue
e02594629e
Cleanup webpack aliases (#2846) 2022-11-09 07:34:40 -05:00
absidue
cf30154e51
Remove unused worker (#2804) 2022-11-06 08:17:33 +00:00
absidue
56416700bc
Allow webpack to omit development only dependencies properly (#2828) 2022-11-05 14:44:21 +00:00
absidue
9b38d1dc0d
Update copyleft year to 2022 (#2810) 2022-11-04 07:17:00 +00:00
PrestonN
32c9964050 Add zlib to web build 2022-11-01 22:08:28 -04:00
absidue
697bed23ed
Disable http disk cache and implempent in-memory image cache (#2498)
* Disable http disk cache and implempent in-memory image cache

* Add comment about removing URL scheme prefix

Co-authored-by: PikachuEXE <pikachuexe@gmail.com>

* Add early return to clean up the code

* Rewrite cache expiry logic with fallbacks

* Move this change behind a CLI argument --experiments-disable-disk-cache

* Replace CLI flag with a GUI setting

* Improve warning message styling

* ! Fix incompatibility with latest settings code

* Use CSS instead of sass for the experimental settings

* Return the error as JSON instead of throwing it

* Inline restart prompt label and option names and values

* Mention crash risk and recommend backups in the warning

Co-authored-by: PikachuEXE <pikachuexe@gmail.com>
2022-10-25 02:33:08 +00:00
Emma
6e693c6c37
Implement getRegionData in web (#2743)
* Implement `getRegionData` in web

- Adjust __dirname to be a more sensible value
- Add `process.env.GEOLOCATION_NAMES` for web builds to avoid having
to blindly try and fetch

* Reverting webpack changes

* Change `indexOf` to `includes`

Co-authored-by: absidue <48293849+absidue@users.noreply.github.com>

* Adding a new helper `createWebURL`

It takes a given path to a resource, and it returns an
 easily fetch-able absolute path

* Using `createWebUrl` inside of the locale fetch

* Using `createWebURL` inside of `getRegionData`

* Removing an unnecessary leftover import

* Wait, no I was mistaken

Co-authored-by: absidue <48293849+absidue@users.noreply.github.com>
2022-10-22 10:31:34 +02:00
absidue
d8f7d073ce
Remove unused ft-grid component and __static variable (#2744)
* Remove unused ft-grid component

* Remove unused __static variable
2022-10-19 09:09:49 +08:00
Emma
b453b01b81
Adding web support to dev-runner (#2729)
* Adding ytpl and ytsr as externals in web.config

This should get rid of those two warnings that were
showing up on web builds

* Reducing discrepancies between dev and prod in web builds

* Removing  a line which would prevent hot reloading

`this.locales` is retained between hot reloads, so it shouldn't
be set to `null`.

* Adding a new flag to the dev runner

Adding a new command: `run dev:web`

* Running `loadLocale` in development web builds

* Adding a line back which was removed

* Removing a line which was added
2022-10-18 08:50:32 -04:00
absidue
aa4a01b9ab
Cleanup the web webpack config (#2690) 2022-10-09 09:09:56 -04:00
Emma
2e84b442bc
Making pack:web work by adding polyfill (#2678)
* Making `pack:web` work

* Removing unnecessary extra line

* Ran `yarn install` to update the lock file

* I'm pretty sure that my lockfile was dirty

* Fixing an incorrect dependency resolution

`buffer` doesn't have to be included through browserify
2022-10-06 14:47:47 +00:00
absidue
dc2cc746cf
Fix the development only js-yaml dependency being included in the release builds (#2646) 2022-10-02 08:12:13 +08:00
absidue
9de1a5e4dc
Small build config cleanup (#2621) 2022-09-26 16:17:04 -04:00
absidue
ac4cc4a611
Compress and lazy load locales (#2603)
* Compress and lazy load locales

* Remove index.html when loading the locales on the web

* Fix locale output path for web build
2022-09-24 11:06:50 -04:00
absidue
77c26638e1
Fully replace electron-debug with our own implementation (#2585) 2022-09-19 09:36:40 -04:00
absidue
62829b736a
Electron variable at build time instead of at runtime (#2574) 2022-09-15 08:59:09 +00:00
absidue
bbd1dba867
Remove node-loader as we don't have any binary/native node modules (#2576) 2022-09-15 08:52:46 +08:00
absidue
a69cbd3b55
Optimise CSS and JSON files (#2569) 2022-09-13 09:28:36 +08:00
absidue
97e3813182
Update css-loader and switch to webpack 5's asset modules (#2566) 2022-09-11 20:34:58 -04:00
absidue
19bf3880a4
Build and release 7zip artifacts (#2558) 2022-09-10 14:24:22 +00:00
Jai A P
ce77d16ff5
Add linux armv7l and win/osx arm64 builds (#2113)
* Add linux armv7l

* Add linux armv7l

* Update release.yml

* Update build.yml

* Update release.yml

* Update build.js

* Update release.yml

* Update build.yml

* Update release.yml

* Update release.yml

* Update build.yml

* Update _scripts/build.js

Co-authored-by: ChunkyProgrammer <78101139+ChunkyProgrammer@users.noreply.github.com>

* Update _scripts/build.js

Co-authored-by: ChunkyProgrammer <78101139+ChunkyProgrammer@users.noreply.github.com>

* Update _scripts/build.js

Co-authored-by: ChunkyProgrammer <78101139+ChunkyProgrammer@users.noreply.github.com>

* Update build.yml

* Update build.yml

* Update release.yml

* Remove squirrel build from windows as unused

* Update build.yml

* Update release.yml

* Update build.yml

* Update release.yml

* Update build.yml

* Update release.yml

* Update .github/workflows/release.yml

Co-authored-by: PikachuEXE <pikachuexe@gmail.com>

* Update .github/workflows/build.yml

Co-authored-by: PikachuEXE <pikachuexe@gmail.com>

Co-authored-by: ChunkyProgrammer <78101139+ChunkyProgrammer@users.noreply.github.com>
Co-authored-by: PikachuEXE <pikachuexe@gmail.com>
2022-09-06 21:18:29 +00:00
absidue
eaa15ea833
Webpack bundle dependencies (#2511)
* Allow webpack to bundle *most* dependencies

* Exclude *most* node_modules from getting packaged by electron-builder

* Import only the required icons instead of bundling the whole icon pack

* Reduce packaging blacklist to only include the few things that still need blacklisting
2022-09-06 02:29:10 +00:00
absidue
9961183c1b
Only generate the web assets directory during web builds (#2528)
* Webpack 5 optimises productions builds by default, no need for the LoaderOptionsPlugin

* Only create web assets during web build
2022-09-02 09:19:06 -04:00
absidue
a2eceffcc8
Stop electron-builder trying to create GitHub releases in CI workflow (#2407) 2022-08-12 08:35:26 +08:00
absidue
3dc7a8c549
Fix FreeTube's index.html file not being packaged (#2403) 2022-07-18 15:58:37 -04:00
absidue
903f3a2241
Prevent packaging unneeded dependency files (#2303)
* Prevent packaging unneeded dependency files

* Exclude even more dependency files from being packaged
2022-07-14 10:43:07 -04:00
absidue
7287e0011e
Fix webpack deprecation warnings in the dev-runner (#2282) 2022-06-01 07:12:30 -04:00
absidue
331f65ec26
Remove unused dependencies (#2278)
* Remove the bulma-pro and videojs-abloop dependencies

* Remove typescript

* Remove the jest development dependency
2022-05-31 16:15:44 -04:00
PikachuEXE
713738b5ff
* Implement divider for video "more dropdown menu" (#1748)
* * Implement divider for video "more dropdown menu"

* * Update API for ft-icon-button

* * Update existing ft-icon-button user to use new API for dropdown options

* * Update ft-icon-button to remove unused old API

* * Update divider to be less visible

* * Update padding of list item

* * Update WebpackDevServer option to avoid app reloading on MacOS .DS_Store file change
2022-05-29 18:33:27 -04:00
PikachuEXE
80b1e436f8
Update build script to build ARM64 version on Apple Silicon machines (#1918)
* $ Refactor build script

* * Update build script to build ARM64 on Apple Silicon
2022-05-14 12:53:08 -04:00
PikachuEXE
07fd93d3aa
Fix watching video in development (#1668)
* Fix watching watched video in development

* Fix removing a file even when it does not exist (and would raise error)

* Fix infinite reload in video watching

File updates (e.g. dashFiles) in static folder triggers app reload (web-dev-server)
But the a file is created/updated/deleted on before playing any video
So it goes into a loop of loading a video
2021-09-23 07:04:00 +00:00
PikachuEXE
5c83dd8790
Update webpack config to remove explicit HMR plugin (#1729)
This change suppresses warning
"<w> [webpack-dev-server] "hot: true" automatically applies HMR plugin, you don't have to add it manually to your webpack configuration."
2021-09-23 06:43:52 +00:00
Svallinn
d55be8dcc5
Build: Bump copyright year 2021-07-02 17:54:59 +01:00
Svallinn
52f35e5be3
Chore: Update webpack-dev-server to its next version (4.0.0-beta3) 2021-06-19 19:12:42 +01:00