Commit Graph

10 Commits

Author SHA1 Message Date
Jonathan Rainville 6d78ba83a2
fix(permissions): fix hang when all channel perm check return (#14259)
* fix(permissions): fix hang when all channel perm check return

Fixes #14234

The problem was that we updated **all** the models from **all** the channels of a community each time the channel requirement checks returned.

The fix is to first of all, make sure we don't call that check too often. It sometimes got called twice in a row by accident.

The other better fix is to check if anything actually changed before updating. This solves the issue almost entirely.  Since the permissions almost never change, the updates now take only a second.

* fix(permisisons): never run permission checks for privileged users

Also fixes #14234 but for admins, TMs and Owners.

Admins+ were still getting the hang, because the permission checks always returned something different than the models, because the models knew that admins have access to everything, but the permission check was running as if it were a normal user (I think, un-tested).

Anyway, the solution is more simple, we never need  to run the permission checks on admins+, because they always have access to everything!

* fix(Communities): prevent channels model from emitting unnecessary signals

Closes: #14274

* chore(Communities): improve channels metadata lookup performance

ChannelsSelectionModel is removed, replaced with plain LeftJoinModel.
Transformations of left-side model are done in a single place, not in
every delegate making the join.

* only call update functions when there is something to update + move permission model creation when needed

---------

Co-authored-by: Michał Cieślak <michalcieslak@status.im>
2024-04-03 17:55:33 -04:00
Lukáš Tinkl 5eb825cbe3 fix(permissions): Unable to Confirm Changes to Existing Community Permission
- distinguish between `permissionTypeLimitReached` and the new
`permissionTypeLimitExceeded`
- the latter is used to enable/disable the "Save" button when editting
the permissions as we're not going to add a new one (going over the
limit), and to also hide the warning texts

Fixes #13989
2024-03-19 12:22:03 +01:00
Alex Jbanca 87d3dcb113 fix(ChannelPermissions): Fixing duplicate permission detection and save button state
The duplicate permission detection was not working because the channel selection cannot be dirty when the channel selector is disabled.
2024-02-07 19:54:47 +02:00
Alex Jbanca cf82772aed feat(ChannelPermissions): Add permissions section in create/edit channel popup
Changes:
1. Make PermissionsView/EditPermissionsView configurable to support channel permissions config
2. Adding channel permissions support in the create/edit channel popup
3. Connect the channel permissions to backend
4. Cleaning unneeded emojiPopup
2024-02-07 19:54:47 +02:00
Michał Cieślak 16f3f0b2eb chore(Community Permissions): Mint asset button enabled in holdings dropdown
Closes: #11363
2023-07-06 00:53:11 +02:00
Michał Cieślak fcbc86d882 chore(Community Settings): unused SettingsPageLayout removed, minor naming adjustments
Closes: #11177
2023-07-03 12:47:35 +02:00
Michał Cieślak cd142a74fc chore(Community Settings): Squish tests fixed 2023-07-03 12:47:35 +02:00
Michał Cieślak 6ccb832800 PermissionsSettingsPanel refactored and simplified, storybook pages fixed and improved
- header buttions/title/subtitle simplified
- no need to use states
- no need to use internal `d` object to pass data between pages
- permissions list scroll position preserved when navigation back from
  other views
- storybook: allow "back" navigation to cover whole flow in sb
- fix some regressions in permissions-related pages
2023-07-03 12:47:35 +02:00
Michał Cieślak f363397f77 chore(PermissionsSettingsPanel): welcome view moved to PermissionsView
to simplify states management

Storybook page updated to cover case when permissions model is empty.
2023-07-03 12:47:35 +02:00
Noelia d763a09cac feat(Communities): File renames
- Removed redundant `community` word in some files from: `controls`, `views`, `popups`, `helpers ` and `panels` folders.
- Updated storybook.
- Updated squish files.

Closes #6204
2023-06-28 14:28:47 +02:00