Commit Graph

200 Commits

Author SHA1 Message Date
Claire 7208edbd37 Replace `use_pack`, `layouts/theme` and `@theme` by new helpers
Packs are now loaded from views, just like upstream, and are
identified by their filenames. The definition of `theme.yml` has
changed as such:
- `pack_directory` is now required
- `pack` is now unused
- `signed_in_preload` has been introduced
2024-04-28 15:45:42 +02:00
Claire c3e12a4dfa Change how theme style packs are loaded
Load the `common` style pack, and then charge the style pack for the current
skin, independent from any selected JS pack.
2024-04-28 15:45:41 +02:00
Claire 62bc36416f Get rid of `app/javascript/core`
Have all flavors implement everything they need instead.
2024-04-28 15:04:52 +02:00
Claire e4d07c7bcc Merge commit '01b6c83c369061c2175d50dfb3ae1db502862664' into glitch-soc/merge-upstream 2024-01-16 12:04:11 +01:00
Renaud Chaput 01b6c83c36
Add a new `@/` alias for the root frontend directory and use it where possible (#28753) 2024-01-16 10:27:26 +00:00
Claire 01df34b9db Remove bypass and use use glitch-soc's theming system for inert.css 2024-01-15 22:16:26 +01:00
Claire 2f521bc84a Merge commit 'a2f02a07758c32f0dcc6388b4f30ca5a84e762f3' into glitch-soc/merge-upstream 2024-01-15 20:27:41 +01:00
Claire 464051c2d2 Merge commit '1070804a1a6121170f7bba923789d73b978e6fe7' into glitch-soc/merge-upstream 2024-01-15 20:06:31 +01:00
Claire 60298af3c4 Merge commit 'c6684aa1e392f2dd86af4362b4259809549abaad' into glitch-soc/merge-upstream
Conflicts:
- `app/views/layouts/application.html.haml`:
  Upstream changed how the `inert.css` file is included.
  The conflict is caused by glitch-soc's theming system.
  Ported the upstream change.

Additional changes:
- `config/webpack/shared.js`: bypass glitch-soc's theming
  system for `inert` pack.
2024-01-15 20:01:36 +01:00
Claire 6bbcd9348e
Switch from 48px weight 600 material symbol icons to 24px weight 400 icons (#28064) 2024-01-12 20:16:48 +00:00
Renaud Chaput 608f66f978
Change icon SVG imports to use a default import (#28709) 2024-01-12 10:31:24 +00:00
Claire 51d2d98174 Merge commit 'a0e237a96fca2774d3c9ed43063a45e395bb7f40' into glitch-soc/merge-upstream 2024-01-10 18:26:47 +01:00
Renaud Chaput a0e237a96f
Upgrade Redux packages (#28585) 2024-01-08 10:57:40 +00:00
Claire a111fd7a0b Merge commit 'b2c5b20ef27edd948eca8d6bd2014b7a5efaec11' into glitch-soc/merge-upstream 2023-12-18 20:47:27 +01:00
Claire cd2ee0ec5f Merge commit '757d7c73c0ca3750ac9e74a7e962f71c535a7bd0' into glitch-soc/merge-upstream
Conflicts:
- `README.md`:
  Upstream updated its README, we have a completely different one.
  Kept ours.
- `yarn.lock`:
  Upstream changed from yarn 1 to yarn 4, but we had some different
  dependencies.
  Updated to yarn 4 and re-added our dependencies.
2023-12-18 18:25:33 +01:00
Claire ddf3ad9541 Merge commit '3bf896c973404261f4f7b25c25ea22adb1a85e7d' into glitch-soc/main
Conflicts:
- `package.json`:
  Upstream removed a dependency textually close to a glitch-only dependency.
  Updated as upstream while keeping our dependency.
2023-12-17 17:43:30 +01:00
Eugen Rochko 7e3c10dec6
Add icons for private and disabled boost in web UI (#27817)
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2023-11-13 14:39:45 +00:00
Renaud Chaput 757d7c73c0
Upgrade to Yarn 4, remove support for Node 16 (#27073) 2023-11-08 10:57:21 +00:00
Renaud Chaput 0e3401bc1c
Improve Babel configuration and automatically load polyfills (#27333) 2023-10-31 10:55:13 +00:00
Claire ba527c071f Merge commit '134de736dcbc6aa613fd5aec21d983d92d8b0be8' into glitch-soc/merge-upstream
Conflicts:
- `app/javascript/mastodon/features/compose/components/poll_form.jsx`:
  Upstream changed how icons are handled, including on a line modified by
  glitch-soc to bump the number of poll options.
  Applied upstream's change, while keeping the increased number of poll
  options.
2023-10-25 12:14:24 +02:00
Eugen Rochko 134de736dc
Change icons in web UI (#27385)
Co-authored-by: Renaud Chaput <renchap@gmail.com>
2023-10-24 17:45:08 +00:00
Claire 08b495d95c Merge commit 'b1d89071384ef028c97a3d28cf8cf6bc0ca6c4ce' into glitch-soc/merge-upstream 2023-09-15 21:06:45 +02:00
Renaud Chaput e9b528eaee
Use NodeJS v20 by default (#26830) 2023-09-08 13:45:34 +02:00
Claire 296b3d1560 Merge commit 'dc09c10fa8cc9230bf14e48d790c8f0c26043f8f' into glitch-soc/merge-upstream
Conflicts:
- `.rubocop_todo.yml`:
  Upstream re-generated the file, while glitch-soc has a specific ignore
  for some file.
  Updated the file as upstream did and kept our extra ignore.
- `config/webpack/shared.js`:
  Upstream added a plugin, but our files are pretty different.
  Added the plugin as well.
- `spec/helpers/application_helper_spec.rb`:
  Upstream refactored tests, but part of them were different because
  of glitch-soc's theming system.
  Applied the refactoring to glitch-soc's change.
2023-08-24 21:26:27 +02:00
Renaud Chaput bb2db2aec0
Add `circular-dependency-plugin` to detect any circular deps issues (#26600) 2023-08-22 13:24:16 +02:00
Claire 44a5f1b64a Merge commit '425d77f8124a50fc033e8fb3bdf7b89a6a25f4fa' into glitch-soc/merge-upstream
Conflicts:
- `.rubocop_todo.yml`:
  Upstream regenerated this file, glitch-soc had a specific ignore.
- `README.md`:
  Upstream updated its README, but glitch-soc has a completely different one.
  Kept glitch-soc's README
2023-08-11 22:15:41 +02:00
Eugen Rochko 2cbdff97ce
Change design of role badges in web UI (#26281)
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2023-08-02 17:24:32 +02:00
Claire 7635c67450 Merge commit '144a406d332b034caa812ade2629df03ed4898d7' into glitch-soc/merge-upstream
Conflicts:
- `app/views/layouts/application.html.haml`:
  Upstream removed the `crossorigin` attribute from `preload_pack_asset`.
  Glitch-soc had different calls to `preload_pack_asset` because of the
  different theming system.
  Ported the change.
- `app/views/layouts/embedded.html.haml`:
  Upstream removed the `crossorigin` attribute from `preload_pack_asset`.
  Glitch-soc had different calls to `preload_pack_asset` because of the
  different theming system.
  Ported the change.
2023-07-30 13:42:06 +02:00
Renaud Chaput 4d1b67f664
Add end-to-end (system) tests (#25461) 2023-07-28 23:09:49 +02:00
Renaud Chaput 42698b4c5c
Fix the crossorigin attribute (#26096) 2023-07-21 11:14:26 +02:00
Claire 34efd1a24c Switch to using a `common` runtime chunk rather than `locales` 2023-06-10 17:43:13 +02:00
Claire d8b0a732aa Merge commit '1483a3ddfe74e4fb81d87447a1781943eab86c60' into glitch-soc/merge-upstream
Conflicts:
- `config/initializers/simple_form.rb`:
  Upstream added a new simple_form component, where we had an extra one.
  Kept both components.
2023-06-10 16:22:14 +02:00
Claire 85722a918d Merge commit '44cd88adc4e2f4028dcc2b08b98368f0dc90cee4' into glitch-soc/merge-upstream
Conflicts:
- `.github/dependabot.yml`:
  Updated upstream, but we've deleted it.
  Keep it deleted.
- `app/javascript/mastodon/locales/index.js`:
  Reworked upstream, but the code was mostly in
  `app/javascript/locales/index.js` in glitch-soc.
  Updated that file accordingly.
- `app/javascript/packs/public.jsx`:
  Not a real conflict, but different imports in
  glitch-soc and upstream.
- `app/views/layouts/application.html.haml`:
  Conflict due to locales loading and theme system
  discrepancies.
  Updated in our own way.
- `app/views/layouts/embedded.html.haml`:
  Conflict due to locales loading and theme system
  discrepancies.
  Updated in our own way.
- `config/webpack/generateLocalePacks.js`:
  Deleted upstream, as upstream now directly loads the
  JSON at runtime.
  Deleted as well, will switch to runtime loading in
  an upcoming commit.
- `config/webpack/shared.js`:
  Not a real conflict, but different imports in
  glitch-soc and upstream.
- `config/webpack/translationRunner.js`:
  Mostly deleted upstream, to be replaced with `formatjs-formatter.js`
  instead.
  Moved the glitch-soc logic there and deleted the file.
2023-06-10 12:38:33 +02:00
Nick Schonning aea67d448b
Cleanup old translationRunner (#25241) 2023-06-02 20:01:36 +02:00
Renaud Chaput 44cd88adc4
Upgrade react-intl (#24906) 2023-05-31 23:43:39 +02:00
Claire 1cd7f5ff17 Merge commit 'd27216dc4616d80659c0cc5d2a55394e0e1ae874' into glitch-soc/merge-upstream
Conflicts:
- `.eslintrc.js`:
  Upstream moved a configuration block in which we had added a glitch-only
  path.
  Moved the configuration block as upstream did.
- other files:
  Upstream reordered imports, and those files had different ones.
  Kept our version and reordered imports using the same rules.
2023-05-28 15:54:31 +02:00
Claire b735954971 Merge commit '2ce0b666a139726dc406e6c1887728553b947e59' into glitch-soc/merge-upstream
Conflicts:
- `config/webpack/generateLocalePacks.js`:
  A dependency update changed how functions are imported.
  Also, some linting fixes not applicable to glitch-soc.
2023-05-25 20:43:25 +02:00
Renaud Chaput d27216dc46
Enforce import order with ESLint (#25096) 2023-05-23 17:15:17 +02:00
Renaud Chaput 2e1c6e93ad
Bump `mkdirp` major version (#24978) 2023-05-15 09:40:24 +02:00
Claire c81d1b0d38 Merge commit 'c8181eb0a41c4f5c1655d4e400cab071aee4182a' into glitch-soc/merge-upstream
Conflicts:
- `app/javascript/packs/admin.jsx`:
  Upstream reworked imports, but we had many changes.
  Reworked imports as upstream did.
- `app/javascript/packs/public.jsx`:
  Upstream reworked imports, but we had many changes.
  Reworked imports as upstream did.
2023-05-09 22:12:05 +02:00
Renaud Chaput 64ec41d89c
Make Webpack fail on failed imports (#24908) 2023-05-09 03:10:04 +02:00
Claire 3fb7fe14c6
Fix some of the Javascript linting issues, as well as bugs and unneeded divergences with upstream (#2208)
* Run eslint --fix

* Fix linting issues in video player and reduce divergences with upstream

This includes a behavior change of not auto-looping videos anymore. I don't
remember loops being ever intended, and they have been removed from upstream
a while ago, but we somehow missed the change.

* Fix lint issues in `app/javascript/flavours/glitch/selectors/index.js`

Those were basically caused by dead code that isn't present upstream, so
that brings us closer to upstream as well.

* Fix linting issue and bug in streaming/index.js

* Fix linting issues in config/webpack/shared.js

* Fix unused import in flavours/glitch/features/ui/index.js

* Fix linting issues and reduce divergences from upstream in flavours/glitch/features/ui/components/video_modal.jsx

* Fix linting issues in flavours/glitch/reducers

* Fix linting issues in glitch-soc onboarding modal

* Fix linting issues in flavours/glitch/features/ui/components/navigation_panel.jsx

* Remove dead code for unused local setting navbar_under

* Fix various linting issues

* Fix linting issues in flavours/glitch/components/scrollable_list.jsx and reduce divergences with upstream
2023-05-07 18:22:25 +02:00
Claire 10469a0b85
Move locale-data back to `app/javascript/mastodon/locales/locale-data` (#2169)
This reduces differences with upstream and fixes a bunch of locale-data
files having been forgotten.
2023-04-08 14:11:40 +02:00
Claire 4d5b4dacd6 Merge branch 'main' into glitch-soc/merge-upstream 2023-04-03 17:40:59 +02:00
fusagiko / takayamaki 4520e6473a
[Proposal] Make able to write React in Typescript (#16210)
Co-authored-by: berlysia <berlysia@gmail.com>
Co-authored-by: fusagiko / takayamaki <takayamaki@users.noreply.github.com>
2023-04-03 03:31:39 +02:00
Claire ce84d163cc Merge branch 'main' into glitch-soc/merge-upstream
Conflicts:
- `.prettierignore`:
  Upstream added a line at the end, glitch-soc had extra entries at the end.
  Added upstream's new line before glitch-soc's.
- `Gemfile.lock`:
  Upstream updated dependencies while glitch-soc has an extra one (hcaptcha).
  Updated dependencies like upstream did.
- `app/controllers/api/v1/statuses_controller.rb`:
  Not a real conflict, upstream added a parameter (`allowed_mentions`) where
  glitch-soc already had an extra one (`content_type`).
  Added upstream's new parameter.
- `app/javascript/styles/fonts/roboto-mono.scss`:
  A lot of lines were changed upstream due to code style changes, and a lot
  of those lines had path changes to accomodate glitch-soc's theming system.
  Applied upstream's style changes.
- `app/javascript/styles/fonts/roboto.scss`:
  A lot of lines were changed upstream due to code style changes, and a lot
  of those lines had path changes to accomodate glitch-soc's theming system.
  Applied upstream's style changes.
2023-02-13 19:35:35 +01:00
Nick Schonning db2c58d47a
Enable ESLint no-useless-escape (#23311) 2023-02-13 15:12:14 +01:00
Claire a5e446a4a0
Change locales file generation to use JSON sources (#2028)
* Change locales file generation to use JSON sources

Instead of inheriting in JS files, set locale inheritance in the
theme's YML file, and inherit in the generated locale file, rather
than the source file.

* Convert glitch-soc JS translation files to JSON

Obtained running the following:

```sh
sed -i -z "s/import inherited from '.*';\s*\nconst messages = //" *.js
sed -i "s/\s*\/\/.*//" *.js
sed -i -z "s/;\s*export default .*/\n/" *.js
for i in *.js; do
  json5 $i | json_pp > ${i}on;
done
```

* Change `yarn manage:translations` to exclude any translation already defined upstream

* Run yarn manage:translations
2022-12-21 22:13:14 +01:00
Claire f3a4d57be1 Merge branch 'main' into glitch-soc/merge-upstream
Conflicts:
- `README.md`:
  Discarded upstream changes: we have our own README
- `app/controllers/follower_accounts_controller.rb`:
  Port upstream's minor refactoring
2022-12-15 20:25:25 +01:00
Yurii Izorkin 7972e5981c
Add brotli compression (#19025) 2022-12-15 17:07:36 +01:00