Commit Graph

1651 Commits

Author SHA1 Message Date
mogaminsk
5b46345459
Prevent duplicate concurrent calls of /api/*/instance in web UI (#25663) 2023-07-02 11:12:16 +02:00
Eugen Rochko
0512537eb6
Change dropdown icon above compose form from ellipsis to bars in web UI (#25661) 2023-07-02 10:39:55 +02:00
Claire
cea9db5a0b
Change local and federated timelines to be in a single firehose column (#25641) 2023-07-02 00:05:10 +02:00
Claire
9934949fc4
Fix onboarding prompt being displayed because of disconnection gaps (#25617) 2023-06-30 16:32:12 +02:00
Claire
285a691936
Remove the search button from UI header when logged out (#25631) 2023-06-28 14:57:51 +02:00
Claire
80a5c16ae1 Merge branch 'main' into glitch-soc/merge-upstream 2023-06-27 13:15:41 +02:00
Renaud Chaput
ae30a60b1f
Improve dismissable banner buttons when they dont fit on 1 line (#25580)
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2023-06-26 12:31:48 +02:00
Eugen Rochko
65aa04647a
Fix onboarding prompt flashing while home feed is loading in web UI (#25579) 2023-06-26 05:26:54 +02:00
Eugen Rochko
2b78c07ef1
Fix search not being easily findable on smaller screens in web UI (#25576) 2023-06-26 05:26:41 +02:00
Claire
178e151019 Merge commit '55e7c08a83547424024bac311d5459cb82cf6dae' into glitch-soc/merge-upstream
Conflicts:
- `app/models/user_settings.rb`:
  Upstream added a constraint on a setting textually close
  to glitch-soc-only settings.
  Applied upstream's change.
- `lib/sanitize_ext/sanitize_config.rb`:
  Upstream added support for the `translate` attribute on a few elements,
  where glitch-soc had a different set of allowed elements and attributes.
  Extended glitch-soc's allowed attributes with `translate` as upstream did.
- `spec/validators/status_length_validator_spec.rb`:
  Upstream refactored to use RSpec's `instance_double` instead of `double`,
  but glitch-soc had changes to tests due to configurable max toot chars.
  Applied upstream's changes while keeping tests against configurable max
  toot chars.
2023-06-25 14:27:38 +02:00
Eugen Rochko
a985d587e1
Change labels and styles on the onboarding screen in web UI (#25559) 2023-06-23 16:34:27 +02:00
Claire
0842a68532
Remove unique accounts condition from Home onboarding prompt (#25556) 2023-06-23 14:44:54 +02:00
Eugen Rochko
00ec43914a
Add onboarding prompt when home feed too slow in web UI (#25267) 2023-06-22 23:48:40 +02:00
Claire
a8c1c8bd37
Fix j/k keyboard shortcuts on some status lists (#25554) 2023-06-22 17:54:43 +02:00
mogaminsk
8d2c26834f
Fix custom signup URL may not loaded (#25531) 2023-06-22 12:10:49 +02:00
Ian
69db507924
Change emoji picker icon (#25479) 2023-06-21 17:58:00 +02:00
Claire
6c99479ef4 Merge commit '9e245d147bcb2c72cc552ff8c276a1c34e2f686d' into glitch-soc/merge-upstream
Conflicts:
- `app/views/settings/profiles/show.html.haml`:
  Upstream redesigned the settings page, where glitch-soc had changes because of
  the ability to set some custom limits.
  Went with upstream's design while keeping our custom limits.
- `yarn.lock`:
  Upstream updated dependencies textually close to a glitch-soc-only dependency.
  Updated the dependnencies as well.
2023-06-18 13:41:33 +02:00
Claire
65cbcce997 Merge commit '39110d1d0af5e3d9cf452ae47496a52797249fd0' into glitch-soc/merge-upstream 2023-06-18 10:36:14 +02:00
Claire
c9d06d10d4
Fix non-interactive upload container being given a button role and tabIndex (#25462) 2023-06-16 12:03:06 +02:00
Eugen Rochko
f20698000f
Fix always redirecting to onboarding in web UI (#25396) 2023-06-14 09:05:03 +02:00
たいち ひ
3b5e302f7f
Rewrite emoji_mart_data_light as TS (#25138) 2023-06-13 19:28:31 +02:00
alfe
a86886b1fd
Rewrite <LoadingIndicator/> as FC and TS (#25364) 2023-06-13 19:26:25 +02:00
Renaud Chaput
1cb4514d0e
Add missing report category translation (#25400) 2023-06-13 15:05:40 +02:00
Eugen Rochko
432a5d2d4b
Change "bot" label to "automated" (#25356) 2023-06-11 04:47:07 +02:00
Claire
c48ec9cb8c Merge commit 'b85c387c5c0527b0ad31c27031a09d361826c5fc' into glitch-soc/merge-upstream
Conflicts:
- `config/initializers/content_security_policy.rb`:
  Kept our version, it was not affected by upstream's bug.
2023-06-10 16:48:01 +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
93c714417f Merge commit 'b922ad7a1b4bc8d968d0df2c7f307d4fec53435d' into glitch-soc/merge-upstream
Conflicts:
- `package.json`:
  Upstream changed various script definitions in lines surrounding the one for
  `i18n:extract`, which had glitch-soc-specific changes.
  Updated the scripts as upstream did, while keeping our changes to
  `i18n:extract`.
2023-06-10 14:38:04 +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
Eugen Rochko
67d17ce194
Add legal as report category (#23941) 2023-06-06 23:41:59 +02:00
Eugen Rochko
e4fd9503ec
Change design of dropdowns in web UI (#25107) 2023-06-06 21:49:49 +02:00
alfe
fb5bf5cbf8
Rewrite <LoadMore /> as FC and TS (#25259) 2023-06-06 11:28:50 +02:00
Claire
1483a3ddfe
Add data-nosnippet so Google doesn't use trending posts in snippets for / (#25279) 2023-06-05 17:32:24 +02:00
Claire
c22fc2fa80 Merge commit '00c222377db0e305ac3f4a15bf1c18eb89c1f45f' into glitch-soc/merge-upstream
Conflicts:
- `.rubocop_todo.yml`:
  Took upstream's changes.
2023-06-05 13:25:22 +02:00
Darius Kazemi
bacb674921
Add exclusive lists (#22048)
Co-authored-by: Liam Cooke <liam@liamcooke.com>
Co-authored-by: John Holdun <john@johnholdun.com>
Co-authored-by: Effy Elden <effy@effy.space>
Co-authored-by: Lina Reyne <git@lina.pizza>
Co-authored-by: Lina <20880695+necropolina@users.noreply.github.com>
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2023-06-05 09:37:02 +02:00
Eugen Rochko
4a5464f360
Change "Follow 7 people" to "Find at least 7 people to follow" in web UI (#24954) 2023-06-05 01:42:17 +02:00
Jed Fox
acc419b81b
Fix spacing of middle dots in the detailed status meta section (#25247) 2023-06-02 15:40:23 +02:00
Christian Schmidt
69057467cb
Translate CW, poll options and media descriptions (#24175)
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2023-06-01 00:10:21 +02:00
Renaud Chaput
44cd88adc4
Upgrade react-intl (#24906) 2023-05-31 23:43:39 +02:00
Claire
14bb6bb29a
Fix null signUp URL in various places (#25190) 2023-05-30 19:01:42 +02:00
y.takahashi
64b960b6b3
Handle Surrogate Pairs in truncate() (#25148) 2023-05-29 11:55:16 +02:00
Claire
0669783da8 Merge branch 'main' into glitch-soc/merge-upstream 2023-05-28 17:01:25 +02:00
Claire
0e7466717f Merge commit '391c089d0db58d731765dba730a5e1f2fe8570a6' into glitch-soc/merge-upstream
Conflicts:
- `.github/dependabot.yml`:
  We removed it from glitch-soc.
  Keep it deleted.
2023-05-28 16:41:14 +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
6dbd44faea Merge commit 'b896b16cb3c8626fbee12a7eda7f882114b1a040' into glitch-soc/merge-upstream 2023-05-28 15:01:53 +02:00
Claire
8278907ff7 Merge commit '5a16bd7bf4591feb852364da9b84407438c9b7d6' into glitch-soc/merge-upstream 2023-05-28 14:32:26 +02:00
Claire
9381f78166 Merge commit '8f66126b1010e0aaaa8b5f2a2f4ea8a28824e2b7' into glitch-soc/merge-upstream 2023-05-28 13:55:30 +02:00
Claire
e2ab9d4dad Merge commit 'e387175fc9a3ebfd72ab45ebfe43ecfabef7b0c3' into glitch-soc/merge-upstream 2023-05-25 23:47:28 +02:00
Claire
45d7358100 Merge commit '8d6aea33260dedeacb3d22ac1a6d2f9cc3856a5e' into glitch-soc/merge-upstream 2023-05-25 23:18:57 +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
fusagiko / takayamaki
38c6216082
Rewrite actions/modal and reducers/modal with typescript (#24833) 2023-05-25 15:42:37 +02:00
Renaud Chaput
e58c36d308
Update inconsistent defaultMessage (#25114) 2023-05-24 12:38:50 +02:00
Eugen Rochko
1caa5ff39e
Change share action from being in action bar to being in dropdown in web UI (#25105)
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2023-05-24 11:04:43 +02:00
Renaud Chaput
40b948a1fb
Fix null signUp URL handling from #25014 (#25108) 2023-05-24 09:49:26 +02:00
たいち ひ
7336f3648b
Rewrite <LoadGap /> as FC and TS (#25042) 2023-05-24 09:20:39 +02:00
Renaud Chaput
d27216dc46
Enforce import order with ESLint (#25096) 2023-05-23 17:15:17 +02:00
Claire
ca66e61b93
Add support for custom sign-up URLs (#25014) 2023-05-23 15:17:09 +02:00
Renaud Chaput
5a16bd7bf4
Use JSX syntax for Fragments (#25093) 2023-05-23 11:47:36 +02:00
Renaud Chaput
8f66126b10
Use the new JSX transform (#25064) 2023-05-23 10:52:27 +02:00
たいち ひ
9a472efe7c
Rewrite <TimelineHint /> as FC and TS (#25091) 2023-05-23 10:04:10 +02:00
たいち ひ
8066118d1f
Rewrite <Skeleton/> as FC and TS (#25055) 2023-05-23 08:58:08 +02:00
Claire
711a037660
Allow scripts in post embed previews (#25071) 2023-05-22 21:18:21 +02:00
Renaud Chaput
8d6aea3326
Upgrade to React 18 (#24916) 2023-05-22 15:48:01 +02:00
Claire
7b54e47d03
Fix being unable to load past a full page of filtered posts in Home timeline (#24930) 2023-05-16 15:36:25 +02:00
Steven Munn
52d36f0f98
Fix spelling of "Lets" on the onboarding page after clicking the confirmation email (#24959)
Co-authored-by: Steven Munn <stevenjmunn@gmail.com>
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2023-05-15 22:42:07 +02:00
Christian Schmidt
5241f7b2fd
Fix UI crash in moderation interface when opening the media modal (#24816) 2023-05-11 12:41:55 +02:00
Emelia Smith
b8a2430642
Fix Onboarding Errors (#24883) 2023-05-11 07:55:10 +02:00
Eugen Rochko
3869e8c210
Change "Sign in" to "Login" (#24942) 2023-05-10 20:17:55 +02:00
Renaud Chaput
5eeb40bdbe
Add stricter ESLint rules for Typescript files (#24926) 2023-05-10 12:59:29 +02:00
Nick Schonning
b878e3d8df
Enable ESLint react/no-deprecated (#24471) 2023-05-10 09:05:32 +02:00
たいち ひ
2d5e257938
Rewrite logo.tsx as FC (#24909) 2023-05-10 08:58:21 +02:00
fusagiko / takayamaki
349cae0b57
Add type annotation for DisplayName component (#24752) 2023-05-09 23:08:54 +02:00
fusagiko / takayamaki
ab7716cff4
Rename Image component to ServerHeroImage (#24894) 2023-05-09 23:08:28 +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
c8181eb0a4
Enforce stricter rules for Typescript files (#24910) 2023-05-09 03:11:56 +02:00
Renaud Chaput
d9b93bd15e
Enforce React Rules of Hooks with eslint (#24911) 2023-05-09 03:09:11 +02:00
Renaud Chaput
955179fc55
Dont use CommonJS (require, module.exports) anywhere (#24913) 2023-05-09 03:08:47 +02:00
Claire
d77fbbed73 Merge commit 'f877aa9d70d0d600961989b8e97c0e0ce3ac1db6' into glitch-soc/merge-upstream
Conflicts:
- `.github/dependabot.yml`:
  Upstream made changes, but we had removed it.
  Discarded upstream changes.
- `.rubocop_todo.yml`:
  Upstream regenerated the file, we had some glitch-soc-specific ignores.
- `app/models/account_statuses_filter.rb`:
  Minor upstream code style change where glitch-soc had slightly different code
  due to handling of local-only posts.
  Updated to match upstream's code style.
- `app/models/status.rb`:
  Upstream moved ActiveRecord callback definitions, glitch-soc had an extra one.
  Moved the definitions as upstream did.
- `app/services/backup_service.rb`:
  Upstream rewrote a lot of the backup service, glitch-soc had changes because
  of exporting local-only posts.
  Took upstream changes and added back code to deal with local-only posts.
- `config/routes.rb`:
  Upstream split the file into different files, while glitch-soc had a few
  extra routes.
  Extra routes added to `config/routes/settings.rb`, `config/routes/api.rb`
  and `config/routes/admin.rb`
- `db/schema.rb`:
  Upstream has new migrations, while glitch-soc had an extra migration.
  Updated the expected serial number to match upstream's.
- `lib/mastodon/version.rb`:
  Upstream added support to set version tags from environment variables, while
  glitch-soc has an extra `+glitch` tag.
  Changed the code to support upstream's feature but prepending a `+glitch`.
- `spec/lib/activitypub/activity/create_spec.rb`:
  Minor code style change upstream, while glitch-soc has extra tests due to
  `directMessage` handling.
  Applied upstream's changes while keeping glitch-soc's extra tests.
- `spec/models/concerns/account_interactions_spec.rb`:
  Minor code style change upstream, while glitch-soc has extra tests.
  Applied upstream's changes while keeping glitch-soc's extra tests.
2023-05-08 19:28:21 +02:00
Claire
2d029dedd9 Merge commit '0ad2413b35287958f59073a5b63aecc659a64d98' into glitch-soc/merge-upstream
Conflicts:
- `app/javascript/styles/mastodon/forms.scss`:
  Conflict because we ran eslint autofix on upstream files.
- `config/initializers/content_security_policy.rb`:
  Code style changes but we have a different version.
  Kept our version.
- `streaming/index.js`:
  Upstream fixed a typo close to glitch-soc-only code.
  Applied upstream's changes.
2023-05-08 15:28:36 +02:00
fusagiko / takayamaki
0999cb4601
Rewrite actions/app.ts and reducers/missed_updates.ts with createAction (#24801) 2023-05-03 15:28:39 +02:00
Claire
598e63dad2
Change media elements to use aspect-ratio rather than compute height themselves (#24686) 2023-05-02 13:58:48 +02:00
Claire
cf1bc4bb93
Fix audio player width in thread view (#24713) 2023-04-30 06:42:22 +02:00
Claire
12b935fadf Merge branch 'main' into glitch-soc/merge-upstream
Conflicts:
- `.github/dependabot.yml`:
  Updated upstream, removed in glitch-soc to disable noise.
  Kept removed.
- `CODE_OF_CONDUCT.md`:
  Upstream updated to a new version of the covenant, but I have not read it
  yet, so kept unchanged.
- `Gemfile.lock`:
  Not a real conflict, one upstream dependency updated textually too close to
  the glitch-soc only `hcaptcha` dependency.
  Applied upstream changes.
- `app/controllers/admin/base_controller.rb`:
  Minor conflict due to glitch-soc's theming system.
  Applied upstream changes.
- `app/controllers/application_controller.rb`:
  Minor conflict due to glitch-soc's theming system.
  Applied upstream changes.
- `app/controllers/disputes/base_controller.rb`:
  Minor conflict due to glitch-soc's theming system.
  Applied upstream changes.
- `app/controllers/relationships_controller.rb`:
  Minor conflict due to glitch-soc's theming system.
  Applied upstream changes.
- `app/controllers/statuses_cleanup_controller.rb`:
  Minor conflict due to glitch-soc's theming system.
  Applied upstream changes.
- `app/helpers/application_helper.rb`:
  Minor conflict due to glitch-soc's theming system.
  Applied upstream changes.
- `app/javascript/mastodon/features/compose/components/compose_form.jsx`:
  Upstream added a highlight animation for onboarding, while we changed the
  max character limit.
  Applied our local changes on top of upstream's new version.
- `app/views/layouts/application.html.haml`:
  Minor conflict due to glitch-soc's theming system.
  Applied upstream changes.
- `stylelint.config.js`:
  Upstream added ignore paths, glitch-soc had extra ignore paths.
  Added the same paths as upstream.
2023-04-29 10:44:56 +02:00
Eugen Rochko
8979b70975
Add default post text to onboarding flow in web UI (#24705) 2023-04-28 10:05:34 +02:00
Eugen Rochko
6028d047b9
Change logo version in header based on screen size in web UI (#24707) 2023-04-28 10:00:33 +02:00
Eugen Rochko
7cf963eec2
Change label from "For you" to "People" on explore screen in web UI (#24706) 2023-04-28 08:54:20 +02:00
Eugen Rochko
c35e3cb6ac
Add more tips to onboarding flow in web UI (#24646) 2023-04-25 11:12:37 +02:00
Eugen Rochko
8099ba04be
Change hashtags and mentions in bios to open in-app in web UI (#24643) 2023-04-25 06:33:21 +02:00
Nick Schonning
2daa5a1549
Enable formatjs/prefer-pound-in-plural (#24622) 2023-04-24 08:07:19 +02:00
Eugen Rochko
290e4aba31
Add lines to threads in web UI (#24549) 2023-04-24 08:07:03 +02:00
Christian Schmidt
e713c545b8
Use CSS to trim long card descriptions (#24265) 2023-04-23 22:32:47 +02:00
Eugen Rochko
0461f83320
Add new onboarding flow to web UI (#24619) 2023-04-23 22:24:53 +02:00
Claire
abfdafef1e Merge branch 'main' into glitch-soc/merge-upstream
Conflicts:
- `app/controllers/auth/setup_controller.rb`:
  Upstream removed a method close to a glitch-soc theming-related method.
  Removed the method like upstream did.
2023-04-22 10:06:11 +02:00
Claire
fbb4de3dbc
Fix infinite loop in emoji replacement code (#24615) 2023-04-21 18:08:28 +02:00
Claire
37886c28da
Fix characters being emojified even when using Variation Selector 15 (text) (#20949) 2023-04-20 16:43:55 +02:00
Claire
bc4745f482
Fix crash when trying to open the filter modal (#24556) 2023-04-17 10:15:21 +02:00
Claire
f9a9f9344b Merge branch 'main' into glitch-soc/merge-upstream 2023-04-16 17:52:44 +02:00
fusagiko / takayamaki
cf3fa1e814
Rewrite GIFV component with React hooks (#24552) 2023-04-16 16:09:04 +02:00
Ivan Rodriguez
f05fb51ecb
Fix status title for statuses without text (#24359) 2023-04-14 17:29:09 +02:00
Nick Schonning
d02aa274be
typo: collapsable -> collapsible (#24521) 2023-04-14 11:01:23 +02:00
Claire
86ad43173f
Add “In Memoriam” banner back to profiles (#23614) 2023-04-12 14:50:02 +02:00
Eugen Rochko
cee357d538
Change all components to use the same error page in web UI (#24512) 2023-04-12 12:44:58 +02:00
Claire
ce12934f5b Merge branch 'main' into glitch-soc/merge-upstream
Conflicts:
- `package.json`:
  Upstream removed a dependency that was textually close to a glitch-soc-only
  dependency.
  Removed the dependency as upstream did, while keeping the glitch-soc-only
  dependency.
2023-04-09 11:45:08 +02:00
Christian Schmidt
9ef9974ff2
Fix loading spinner + infinite scroll for private mentions (#24446) 2023-04-07 15:44:31 +02:00
Christian Schmidt
ffd5b2eea4
Fix height of announcements not being updated when using reduced animations (#24354) 2023-04-05 14:58:10 +02:00
Nick Schonning
927b2fd138
Set marginRight as string (#24422) 2023-04-05 10:57:36 +02:00
Nick Schonning
ec0c104bf2
Ensure tabIndex is number instead of string (#24409) 2023-04-04 16:33:44 +02:00
Nick Schonning
a425915ce7
HTML string attributes set as booleans (#24408) 2023-04-04 16:33:33 +02:00
Claire
4d5b4dacd6 Merge branch 'main' into glitch-soc/merge-upstream 2023-04-03 17:40:59 +02:00
Christian Schmidt
77bd32a26a
Add colour to follow button when hashtag is being followed (#24361) 2023-04-03 16:25:15 +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
7b15f4006a Merge branch 'main' into glitch-soc/merge-upstream 2023-04-01 14:31:05 +02:00
Eugen Rochko
2b11376411
Change search pop-out in web UI (#24305) 2023-04-01 09:59:10 +02:00
Eugen Rochko
46483ae849
Fix regressions from change in account row design in web UI (#24343) 2023-04-01 09:27:23 +02:00
Claire
01d6f7529f Merge branch 'main' into glitch-soc/merge-upstream
Conflicts:
- `README.md`:
  Upstream added a link to the roadmap, but we have a completely different README.
  Kept ours.
- `app/models/media_attachment.rb`:
  Upstream upped media attachment limits.
  Updated the default according to upstream's.
- `db/migrate/20180831171112_create_bookmarks.rb`:
  Upstream changed the migration compatibility level.
  Did so too.
- `config/initializers/content_security_policy.rb`:
  Upstream refactored this file but we have a different version.
  Kept our version.
- `app/controllers/settings/preferences_controller.rb`:
  Upstream completely refactored user settings storage, and glitch-soc has a
  different set of settings.
  The file does not directly references individual settings anymore.
  Applied upstream changes.
- `app/lib/user_settings_decorator.rb`:
  Upstream completely refactored user settings storage, and glitch-soc has a
  different set of settings.
  The file got removed entirely.
  Removed it as well.
- `app/models/user.rb`:
  Upstream completely refactored user settings storage, and glitch-soc has a
  different set of settings.
  References to individual settings have been removed from the file.
  Removed them as well.
- `app/views/settings/preferences/appearance/show.html.haml`:
  Upstream completely refactored user settings storage, and glitch-soc has a
  different set of settings.
  Applied upstream's changes and ported ours back.
- `app/views/settings/preferences/notifications/show.html.haml`:
  Upstream completely refactored user settings storage, and glitch-soc has a
  different set of settings.
  Applied upstream's changes and ported ours back.
- `app/views/settings/preferences/other/show.html.haml`:
  Upstream completely refactored user settings storage, and glitch-soc has a
  different set of settings.
  Applied upstream's changes and ported ours back.
- `config/settings.yml`:
  Upstream completely refactored user settings storage, and glitch-soc has a
  different set of settings.
  In particular, upstream removed user-specific and unused settings.
  Did the same in glitch-soc.
- `spec/controllers/application_controller_spec.rb`:
  Conflicts due to glitch-soc's theming system.
  Mostly kept our version, as upstream messed up the tests.
2023-03-31 21:30:27 +02:00
Eugen Rochko
68a192e718
Change "direct message" nomenclature to "private mention" in web UI (#24248) 2023-03-30 15:16:20 +02:00
Tdxdxoz
74f56c64fc
Fix: set multiColumn value for /explore Statuses (#24314) 2023-03-30 10:14:49 +02:00
Claire
14b0311029 Merge branch 'main' into glitch-soc/main 2023-03-26 15:47:12 +02:00
Yamagishi Kazutoshi
6e8711ff91
Add missing parenthesis (#24238) 2023-03-24 04:35:43 +01:00
Yamagishi Kazutoshi
d1b057a0ac
Remove legacy decorators syntax (#18357) 2023-03-24 03:17:53 +01:00
Christian Schmidt
16da4a09e8
Fix broken links in account gallery (#24218) 2023-03-23 05:17:29 +01:00
Claire
193250556c Merge branch 'main' into glitch-soc/merge-upstream
Conflicts:
- `README.md`:
  Upstream changed their README, we have our own.
  Kept ours.
- `app/helpers/application_helper.rb`:
  Minor code style fix upstream, on a line that is different in glitch-soc
  due to the different theming system.
  Applied the code style fix to our own code.
- `app/views/settings/preferences/appearance/show.html.haml`:
  Code style fix on a line next to lines exclusive to glitch-soc.
  Applied upstream changes.
- `yarn.lock`:
  Upstream updated a dependency textually close to a glitch-soc-only
  dependency.
  Updated the dependency like upstream did.
2023-03-16 23:12:59 +01:00
Christian Schmidt
bd047acc35
Replace Status#translatable? with language matrix in separate endpoint (#24037) 2023-03-16 11:07:24 +01:00
Claire
7623e18124 Merge branch 'main' into glitch-soc/merge-upstream
Conflicts:
- `README.md`:
  Upstream README has been changed, but we have a completely different one.
  Kept our `README.md`.
- `lib/sanitize_ext/sanitize_config.rb`:
  Upstream added support for more incoming HTML tags (a large subset of what
  glitch-soc accepts).
  Change the code style to match upstream's but otherwise do not change our
  code.
- `spec/lib/sanitize_config_spec.rb`:
  Upstream added support for more incoming HTML tags (a large subset of what
  glitch-soc accepts).
  Kept our version, since the tests are mostly glitch-soc's, except for cases
  which are purposefuly different.
2023-03-05 20:46:56 +01:00
Christian Schmidt
cb868228bd
Do not leave Mastodon when clicking “Back” (#23953) 2023-03-04 23:18:19 +01:00
Terry Garcia
a1347f456e
Switched bookmark and favourites around (#23701) 2023-03-03 20:37:49 +01:00
Claire
b55fc883b6
Fix duplicate “Publish” button on mobile (#23804) 2023-03-03 20:25:36 +01:00
Claire
276c1d32d6 Merge branch 'main' into glitch-soc/merge-upstream 2023-03-02 17:32:38 +01:00
Christian Schmidt
d3eefead30
Add lang attribute to media and poll options (#23891) 2023-02-26 20:13:27 +01:00
Claire
4ed09276d5 Merge branch 'main' into glitch-soc/merge-upstream
Conflicts:
- `.prettierignore`:
  Upstream added a line at the end of the file, while glitch-soc had its own
  extra lines.
  Took upstream's change.
- `CONTRIBUTING.md`:
  We have our custom CONTRIBUTING.md quoting upstream. Upstream made changes.
  Ported upstream changes.
- `app/controllers/application_controller.rb`:
  Upstream made code style changes in a method that is entirely replaced
  in glitch-soc.
  Ignored the change.
- `app/models/account.rb`:
  Code style changes textually close to glitch-soc-specific changes.
  Ported upstream changes.
- `lib/sanitize_ext/sanitize_config.rb`:
  Upstream code style changes.
  Ignored them.
2023-02-25 14:00:40 +01:00
Christian Schmidt
8000a8f230
Add lang attribute to preview card (#23869) 2023-02-24 20:04:38 +01:00
Claire
7207a98d39
Add lang tag to native language names in language picker (#23749) 2023-02-21 09:23:39 +01:00
Claire
d3b4d4d4f3
Change compose form checkbox to native input with appearance: none (#22949) 2023-02-20 11:32:27 +01:00
Renaud Chaput
44a7d87cb1
Rename JSX files with proper .jsx extension (#23733) 2023-02-20 03:20:59 +01: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
eddfb33dfe
Enable ESLint import recommended rules (#23315) 2023-02-13 15:12:31 +01:00
Nick Schonning
db2c58d47a
Enable ESLint no-useless-escape (#23311) 2023-02-13 15:12:14 +01:00
Claire
87419f9307 Merge branch 'main' into glitch-soc/merge-upstream 2023-02-10 22:49:59 +01:00
Claire
bae17ebe5e
Fix attached media uploads not being cleared when replying to a post (#23504) 2023-02-10 22:03:35 +01:00
Claire
85558a5e18 Merge branch 'main' into glitch-soc/merge-upstream
Conflicts:
- `README.md`:
  Minor upstream change, our README is completely different.
  Kept ours.
- `lib/tasks/assets.rake`:
  glitch-soc has extra code to deal with its theming system,
  upstream changed a line that exists in glitch-soc.
  Applied upstream changes.
2023-02-09 12:46:12 +01:00
Christian Schmidt
c1f32c9c14
Show spinner while loading follow requests (#23386) 2023-02-06 16:50:08 +01:00
Christian Schmidt
67744ee779
Spell check input fields (#23395) 2023-02-04 16:34:21 +01:00
Eugen Rochko
8f590b0a21
Add setting for status page URL (#23390) 2023-02-04 04:56:06 +01:00
Claire
aeacebb3d7 Merge branch 'main' into glitch-soc/merge-upstream
Conflicts:
- `.github/workflows/build-image.yml`:
  Upstream updated `docker/build-push-action`, and we a different config
  for `docker/metadata-action` so the lines directly above were different,
  but it's not a real conflict.
  Upgraded `docker/build-push-action` as upstream did.
- `app/javascript/mastodon/features/compose/components/compose_form.js`:
  Upstream changed the codestyle near a line we had modified to accommodate
  configurable character count.
  Kept our change.
2023-02-03 19:23:27 +01:00
Akira Ouchi
e73b55184b
autofocus the compose form again on /share (#23094) 2023-01-30 14:49:10 +01:00
Nick Schonning
131e6403cc
Update hasOwnProperty calls for ESLint (#23307) 2023-01-30 03:07:51 +01:00
Nick Schonning
c49213f0ea
Upgrade ESlint to v8 (#23305) 2023-01-30 01:45:35 +01:00
Nick Schonning
d9088ef327
Separate ESLint CI from Superlinter (#23029)
* Separate ESLint CI from Superlinter

* Correct JS indenting level

* Remove extra semicolons with ESLint autofix
2023-01-29 23:44:03 +01:00
Christian Schmidt
2a4f2216d6
Add lang attribute to image description textarea and poll option field (#23293) 2023-01-29 19:00:19 +01:00
Claire
3074338d79 Merge branch 'main' into glitch-soc/merge-upstream 2023-01-24 20:32:31 +01:00
Claire
83a8efa9ca
Add lang attribute to compose textarea and CW field (#23240)
Fixes #19858
2023-01-24 18:49:21 +01:00
Mina Her
3cf60ba267
Make <Audio> to handle volume change (#23187) 2023-01-24 16:24:46 +01:00
Claire
98779535fe
Fix missing filtering on some notification types (#23211)
* Fix missing warning-type filtering on some notification types

* Fix missing hide-type filtering on some notification types
2023-01-23 13:21:50 +01:00
Claire
60abcb3c4c Merge branch 'main' into glitch-soc/merge-upstream
Conflicts:
- `config/i18n-tasks.yml`:
  Upstream added new ignored strings, glitch-soc has extra ignored strings
  because of the theming system.
  Added upstream's changes.
2023-01-18 17:38:11 +01:00
Claire
3588fbc766
Fix confusing wording in the sign in banner (#22490)
* Fix confusing wording in the sign in banner

* Split into two sentences
2023-01-18 17:15:23 +01:00
Connor Shea
30e895299c
Add listing of followed hashtags (#21773)
* Add followed_tags route.

This at least gets us to the point where the page can actually be
rendered, although it doesn't display any hashtags (yet?).

Attempting to implement #20763.

* Fix minor issues.

* I've got the followed tags data partially working

But the Hashtag component errors for some reason. Something about the
value of the history attribute being invalid.

* Fix a mistake in the code

* Minor change.

* Get the followed hashtags list fully working.

Still need to add the Follow/Unfollow buttons, though.

* Resolve JS linter issues.

* Add pagination logic to followed tags list view.

However, it currently loads further pages immediately on page load, so
that's not ideal. Need to figure that one out.

* Appease the linter.

* Apply suggestions from code review

Co-authored-by: Claire <claire.github-309c@sitedethib.com>

* Fixes and resolve some other feedback.

* Use set/update instead of setIn/updateIn.

Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2023-01-18 16:44:33 +01:00
Claire
3970a6f433
Add option to make the landing page be /about even when trends are enabled (#20808)
* Add option to make the landing page be /about even when trends are enabled

* Restablish /explore as landing page by default
2023-01-18 16:43:58 +01:00
Claire
4b92e59f4f
Add support for editing media description and focus point of already-posted statuses (#20878)
* Add backend support for editing media attachments of existing posts

* Allow editing media attachments of already-posted toots

* Add tests
2023-01-18 16:33:55 +01:00
Jeong Arm
1b2ef60cec
Make visible change for new post notification setting icon (#22541) 2023-01-18 16:29:07 +01:00
Claire
cef87ba86c Merge branch 'main' into glitch-soc/merge-upstream 2023-01-12 17:47:42 +01:00
Claire
f4a6365f55
Remove hardcoded width from dropdown overlays (#23062)
* Remove hardcoded width from dropdown overlays

* Fix emoji picker position
2023-01-12 16:43:02 +01:00
Claire
3e63fcd4f0 Merge branch 'main' into glitch-soc/merge-upstream
Conflicts:
- `app/models/status.rb`:
  Minor upstream refactor moved hook definitions around,
  and glitch-soc has an extra `before_create`.
  Moved the `before_create` accordingly.
- `app/services/batched_remove_status_service.rb`:
  Minor upstream refactor changed a block in which glitch-soc
  had one extra call to handle direct timelines.
  Adapted changes to keep glitch-soc's extra call.
2023-01-12 10:15:46 +01:00
Peter Simonsson
fd33bcb3b2
Fix dropdown menu positions when scrolling (#22916)
* Update react-overlays to latest version

* Fix breaking changes in dropdown menus

* Use react-overlays built-in arrow positioning feature
* Re-implemented `.dropdown-menu__arrow` to have a defined width and height to improve positioning
* Moved wrapping div (`.dropdown-menu` from `DropdownMenu` to `Dropdown`)
* Wrap button in a span to solve issue with ref
* Temporarily remove animations

* Fix breaking changes in emoji picker

* Wrap EmojiPickerMenu in a div where react-overlays’ ref is added

* Fix breaking changes in language dropdown

* Fix breaking changes in privacy dropdown

* Fix breaking changes in search form

* Add animations back using `@keyframes`

* Fix arrow color in light theme

* Fix linting issue

* Remove unused `mounted` state

* Remove `placement` state from components and redux

And remove the placement state from props of the menu components.

* Remove abolution position to fix flip issue

* Remove z-index to fix modals and overlay positions

* Fix lint issues

* Set placement in privacy and language components

Copy the placement state into the `PrivacyDropdown` and `LanguageDropdown` components, to apply correct styling to the buttons depending on which placement the Overlay has.

* Move `placement` state to correct component
2023-01-11 21:58:46 +01:00
Claire
9765d2b3f8 Merge branch 'main' into glitch-soc/merge-upstream
Conflicts:
- `config/environments/production.rb`:
  Upstream changed headers, and we have different ones.
  Ported upstream's change.
2023-01-10 09:39:15 +01:00
Holden Foreman
2bcb081ce8
Fix footer link circle dividers' screen reader accessibility by adding aria-hidden (#22576)
* Fix footer link circle dividers' screen reader accessibility by adding aria-hidden

* Remove a circle erroneously added in prev commit, and make code more DRY
2023-01-09 03:54:03 +01:00
Akira Ouchi
2195f21524
Add variable autoFocus to video (#15281) (#22778)
* add variable autoFocus to video
* set autoFocus in video_modal.js
2023-01-09 03:52:37 +01:00
Claire
6c20dad201 Merge branch 'main' into glitch-soc/merge-upstream
Conflicts:
- `README.md`:
  Upstream updated its README, while we have a completely different one.
  Kept our README.
- `app/controllers/concerns/web_app_controller_concern.rb`:
  Conflict because of glitch-soc's theming system.
  Additionally, glitch-soc has different behavior regarding moved accounts.
  Ported some of the changes, but kept our overall behavior.
- `app/javascript/packs/admin.js`:
  Code changes actually applied to `app/javascript/core/admin.js`
2023-01-05 14:16:25 +01:00
Claire
18d00055f4
Add dropdown menu item to open admin interface for remote domains (#21895)
* Allow /admin/instances/:domain to handle IDNs

* Add dropdown menu item to open admin interface for remote domains
2023-01-05 14:03:46 +01:00
Holden Foreman
83888739fd
Add aria-hidden to content warning field when dimmed so that it is not confusing to screen reader users (#22568) 2023-01-05 13:39:58 +01:00
Claire
b248aa4d3e Merge branch 'main' into glitch-soc/merge-upstream 2022-12-21 15:59:39 +01:00
Nick Schonning
06b68490d1
Enable eslint:recommended ruleset (#22433)
* Enable ESLint recommended ruleset

* Disable failing ESLint recommended rules

* Remove rules shadowed by eslint:recommended
2022-12-19 00:51:37 +09: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
Claire
70415714f1
Add follow request banner on account header (#20785)
* Add requested_by to relationship maps

* Display whether an account has requested to follow you on their profile
2022-12-15 18:50:11 +01:00
Holden Foreman
c761e7a5ef
Fix language surrounding disability in prompts for alt text and other media descriptions (#20923) 2022-12-15 18:46:13 +01:00
Bramus!
7fbc17afa2
Fix media markup (#21420)
This brings the markup of the MediaItem component on par with the Item component from media_gallery.

Co-authored-by: Effy Elden <effy@effy.space>
2022-12-15 18:37:47 +01:00
Rens Groothuijsen
726c7dea31
Display search popout at fixed screen position (#16463)
* Display search popout at fixed screen position

* Attach search popout to search box
2022-12-15 17:38:50 +01:00
Arnout Engelen
9f63c428e1
Don't autofocus the compose form (#16517)
When opening a page such as /web/timelines/home in a desktop browser, the
cursor was automatically placed in the textarea of the compose form.

When using the keyboard for navigation (using a browser plugin like vimium or
vim vixen, or just to hit 'space' to scroll down a page), you have remember to
leave the field before using that.

Since you only visit the page to write a new post some of the time, this PR
attempts to have nothing focused initially (and require the user to click or
e.g. use 'tab' to focus the textarea).

Tested:
* /web/timeslines/home no longer autofocuses the compose box
* pressing the 'n' hotkey still focuses the compose box
* clicking 'reply' for a post still focuses the compose box
* replying to a CW'ed post still focuses the compose box
* introducing the CW field still focuses the CW field
* introducing the CW field for a reply still focuses the CW field
* removing the CW field still focuses the compose box
* /web/statuses/new still autofocuses the compose box

fixes #15862
2022-12-15 17:37:05 +01:00
Meisam
059d64a59e
set activation for tag follow button (#21629)
Co-authored-by: meisam <meisam@noreply.codeberg.org>
2022-12-15 17:04:52 +01:00
Nick Schonning
72a8af8088
Fix typo in handler function call name (#21829) 2022-12-15 16:37:17 +01:00
Yamagishi Kazutoshi
58200132d0
FormattedMessage must be used directly (#20982)
* `FormattedMessage` must be used directly

* rollback
2022-12-15 16:20:46 +01:00
Pleclown
3a59ffde8d
Adding 12 hours option for polls (#21131)
* Adding 12 hours option for polls

Adding 12 hours option for polls

* Adding 12 hours option for polls

Missing > on a line
2022-12-15 16:20:34 +01:00
Alex Stine
903e5a3f45
Fix hidden label causing accessibility issue for search inputs (#21275)
* Try unhiding search label.

* Use aria-label. Remove label as empty labels are useless.

* Remove addition of package-lock.json.
2022-12-15 16:20:21 +01:00
Claire
47c75c29da Merge branch 'main' into glitch-soc/merge-upstream 2022-12-14 09:10:49 +01:00
cadars
52a50c5e43
Make handle more easily selectable on profile page (#21479)
* Make handle more easily selectable on profile page

* Wrap handle in a span

* Add `user-select: all` to span

* remove whitespace
2022-12-13 19:43:03 +01:00
Claire
9a3d91f629 Merge branch 'main' into glitch-soc/merge-upstream
Conflicts:
- `app/models/concerns/domain_materializable.rb`:
  Fixed a code style issue upstream in a PR that got merged in glitch-soc
  earlier.
  Changed the code to match upstream's.
2022-12-07 09:03:42 +01:00
Claire
51098035ed
Fix “Sign up” button with closed registrations not opening modal on mobile (#22060)
Fixes #20840
2022-12-07 00:25:40 +01:00
Claire
fe111a8bad Merge branch 'main' into glitch-soc/merge-upstream 2022-11-30 10:29:19 +01:00
Claire
2d4d99f135
Fix expanded statuses not always being scrolled into view (#21797) 2022-11-28 16:42:04 +01:00
Claire
a2e7997592 Merge branch 'main' into glitch-soc/merge-upstream
Conflicts:
- `README.md`:
  Our README is completely different.
  Discarded upstream changes.
2022-11-28 11:33:34 +01:00
Connor Shea
cec1e902e0
Make the 'Trending now' header a link to Explore. (#21759)
This keeps the same design that exists currently, but makes "Trending
now" into a link to the Hashtags section of "Explore".

Resolves #21758.
2022-11-27 23:49:32 +01:00
Claire
3ffaa966b0
Fix infinite loading instead of soft 404 for non-existing remote accounts (#21303)
Fixes #21278, #21021
2022-11-27 20:48:12 +01:00
James Adney
c0dcf15d1e
fix gif autoplay on iOS (#21422) 2022-11-27 20:46:23 +01:00
Claire
fe421257e5
Fix “Share @{name}'s profile” profile menu item (#21490) 2022-11-27 20:42:17 +01:00
Claire
aec61a703f Merge branch 'main' into glitch-soc/merge-upstream
Conflicts:
- `.github/workflows/build-image.yml`:
  Upstream changed how docker images were built, including how
  they were cached.
  I don't know much about it, so applied upstream's changes.
- `app/controllers/admin/domain_blocks_controller.rb`:
  The feature, that was in glitch-soc, got backported upstream.
  It also had a few fixes upstream, so those have been ported!
- `app/javascript/packs/admin.js`:
  Glitch-soc changes have been backported upstream. As a result,
  some code from `app/javascript/core/admin.js` got added upstream.
  Kept our version since our shared Javascript already has that feature.
- `app/models/user.rb`:
  Upstream added something to distinguish unusable and unusable-because-moved
  accounts, while glitch-soc considers moved accounts usable.
  Took upstream's code for `functional_or_moved?` and made `functional?`
  call it.
- `app/views/statuses/_simple_status.html.haml`:
  Upstream cleaned up code style a bit, on a line that we had custom changes
  for.
  Applied upstream's change while keeping our change.
- `config/initializers/content_security_policy.rb`:
  Upstream adopted one CSP directive we already had.
  The conflict is because of our files being structurally different, but the
  change itself was already part of glitch-soc.
  Kept our version.
2022-11-17 12:01:37 +01:00
Claire
585cc1a604
Remove use of DOMParser in front-end emoji rewriting code (#20758)
* Add jstest for node ordering in emojify

* Remove use of DOMParser in front-end emoji rewriting code
2022-11-17 11:24:59 +01:00
Levi Bard
654d348aac
Make the button that expands the publish form differentiable from the button that publishes a post (#20864) 2022-11-17 10:53:38 +01:00
nyura123dev
aaca78da78
Fix safari explore disappearing tabs (#20917)
* fix disappearing Explore tabs on Safari

* fix lint

Co-authored-by: nyura <nyura@hidden.com>
2022-11-17 08:54:43 +01:00
Claire
b5698af25f Merge branch 'main' into glitch-soc/merge-upstream 2022-11-14 22:30:30 +01:00
Claire
ccbca50a25
Fix nodes order being sometimes mangled when rewriting emoji (#20677)
* Fix front-end emoji tests

* Fix nodes order being sometimes mangled when rewriting emoji
2022-11-14 22:14:55 +01:00
Claire
767630be24 Merge branch 'main' into glitch-soc/merge-upstream
Conflicts:
- `Gemfile`:
  Upstream removed blank lines.
2022-11-14 20:27:31 +01:00
Claire
625e086996
Fix emoji substitution not applying only to text nodes in Web UI (#20640)
Signed-off-by: Claire <claire.github-309c@sitedethib.com>

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2022-11-14 20:26:03 +01:00