Commit graph

535 commits

Author SHA1 Message Date
Jesús Espino
bc37e97ae9
Applying migration changes (#2752)
* Applying migration changes

* Fixing linter erros

* Restoring userID

* Updated user id length

* Update server/app/category_boards.go

* Skiped creating categories for boards belonging to DMs

* Handled private group messages as well

* fix sql error for insert_at

* fix timestamp parsing

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
Co-authored-by: Harshil Sharma <harshilsharma63@gmail.com>
Co-authored-by: Doug Lauder <wiggin77@warpmail.net>
2022-04-13 16:10:53 -06:00
Doug Lauder
89cc947a21
Implement permissions specs for mentions. (#2758)
* Implement permissions specs for mentions.
- public boards: admin, editor, commenter can mention team members and auto-add them to board; guests can mention board members
- private boards:  admin, editor, commenter, guest can mention board members
- viewers cannot mention
2022-04-13 18:09:55 -04:00
Miguel de la Cruz
4c61ae9623
Update focalboard endpoints to v2 namespace (#2781) 2022-04-13 15:24:32 -05:00
Chen-I Lim
8433b9eada
Fix CI: Data tamper attempt (#2782)
* Upgrade npm in build-ubuntu

* npm i -S moment

* Don't upgrade npm

* macos-latest on build-mac

* Update dev-release.yml

* Expected update time is right after insert returns
2022-04-13 12:17:30 -07:00
Chen-I Lim
3264902131
Fix #2770: Handle Windows path in import and tests (#2771)
* Upgrade npm in build-ubuntu

* npm i -S moment

* Don't upgrade npm

* macos-latest on build-mac

* Update dev-release.yml

* Support Windows in import archive and tests

* Run CI on Windows too

* CI: Windows SQLite only

* Remove npm ci fromn Windows CI
2022-04-13 10:17:04 -07:00
Scott Bishel
3e9ad7b9e1
Merge pull request #2743 from mattermost/category-websocket-broadcast-fix
Broadcasting category changes only to the correct user
2022-04-13 10:07:36 -06:00
Miguel de la Cruz
59b387035f
Remove export archive from plugin header (#2779)
* Remove export archive from plugin header

* Update snapshot
2022-04-13 17:52:11 +02:00
Scott Bishel
4fb14bc653
Merge pull request #2778 from wiggin77/GH-2744_export_with_pound
GH-2744 Fix export with hash sign (#) in block title breaks export to CSV
2022-04-13 09:49:25 -06:00
Scott Bishel
a69a6f65f5
Merge pull request #2774 from mattermost/mysql-5.7-uuid-fix
Avoided using UUID() as function param for MySQL migration
2022-04-13 08:39:54 -06:00
Miguel de la Cruz
9c03838840 Use the correct endpoint for exporting all boards on a team 2022-04-13 15:04:47 +02:00
Harshil Sharma
d744d69b43 Added category change broaadcast to cluster 2022-04-13 15:46:35 +05:30
Harshil Sharma
280e38604f Merge branch 'main' into category-websocket-broadcast-fix 2022-04-13 15:09:49 +05:30
Harshil Sharma
15cac1b066 Avoided using UUID() as function param for MySQL migration 2022-04-13 12:12:50 +05:30
wiggin77
2c75097680 unit test for export board 2022-04-12 23:41:32 -04:00
Spiros Economakis
539aee6a46
Fix configuration for prometheus address (#2763)
The env variable for prometheus address is not respected as it should be set as
viper default config.

Ticket: https://mattermost.atlassian.net/browse/43295
2022-04-12 17:43:29 -04:00
Chen-I Lim
af35a8e2c2
GH 2593: Fix Windows migration (#2767)
* Upgrade npm in build-ubuntu

* npm i -S moment

* Don't upgrade npm

* macos-latest on build-mac

* Update dev-release.yml

* Fix #2593: Fix Windows migration
2022-04-12 12:17:58 -07:00
Miguel de la Cruz
c5f8b7f142
Add coalesce to template version migration (#2764) 2022-04-12 08:47:45 -04:00
Miguel de la Cruz
5f963af701 Use the right single user ID on the WS implementation 2022-04-11 19:16:16 +02:00
Scott Bishel
a19840a76a
Merge pull request #2756 from wiggin77/add_remove_unit_tests
Add unit test for GetAllBlocksForBoard; remove integration test GetSubtree
2022-04-09 08:43:31 -06:00
wiggin77
43662e3a9a Add unit test for GetAllBlocksForBoard; remove integration test GetSubtree 2022-04-08 15:57:37 -04:00
Jesús Espino
f3267e2458
Fixing delete/undelete boards (#2571)
* Fixing delete/undelete boards

* Adding permissions checks for undelete board and undelete block

* Fixing server-lint

* Handling permissions for deleted boards

* Fixing linter errors

* Fixing tests

* Update server/services/store/sqlstore/board.go

Co-authored-by: Doug Lauder <wiggin77@warpmail.net>

* Fixing error message

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
Co-authored-by: Doug Lauder <wiggin77@warpmail.net>
2022-04-08 13:31:28 -04:00
Doug Lauder
30e6bc477d
GH-2745 Don't init default templates when unit testing (#2748)
* Don't warn when  appears in card followed by text that is not a username

* Selectively initalize default templates for unit tests that need them to reduce test times. Reduce log noise.
2022-04-08 13:46:16 +02:00
Doug Lauder
68b623ff29
Don't warn when appears in card followed by text that is not a username (#2747) 2022-04-07 17:39:35 -04:00
Doug Lauder
ff020d85e3
Don't notify non-board members of card changes (#2718)
* Don't notify non-board members of card changes
- include permissions service in notifications backends
- use permissions service to ensure @mentions are to users on team
- use permissions service to ensure subscribers are members of board
2022-04-07 11:42:32 -04:00
Harshil Sharma
2358e3e792 Broadcasting category changes only to the correct user 2022-04-07 15:33:56 +05:30
Jesús Espino
0363357209
Simplifying the categories migration (#2739)
* Simplifying the categories migration

* A bit more of simplification

* Leaving the channel_id there because sqlite doesn't support drop columns

* Update server/services/store/sqlstore/migrations/000018_populate_categories.up.sql

* Update server/services/store/sqlstore/migrations/000019_populate_category_blocks.up.sql

* Update server/services/store/sqlstore/migrations/000018_populate_categories.up.sql

Co-authored-by: Doug Lauder <wiggin77@warpmail.net>
2022-04-06 16:15:50 -04:00
Jesús Espino
6fef5f0c92
Avoid possible problem of block history with null in the title (#2721)
* Avoid possible problem of block history with null in the title

* Making title not nullable
2022-04-06 18:55:03 +02:00
Scott Bishel
dc72e3d3bd
Merge pull request #2664 from jespino/issue-2617
Adding file size limit
2022-04-06 10:43:41 -06:00
Scott Bishel
e9ab26a641
Merge pull request #2735 from jespino/removing-unussed-methods
Removing not used code
2022-04-06 10:35:12 -06:00
Scott Bishel
286f7f0663
Merge pull request #2737 from jespino/smallfix
Removing duplicated logic
2022-04-06 10:32:38 -06:00
Jesús Espino
f9f269c21a Removing duplicated logic 2022-04-06 16:58:01 +02:00
Jesús Espino
87e84589ba Fixing cypress tests 2022-04-06 16:22:47 +02:00
Jesús Espino
c3cb4a1491 Fixing tests 2022-04-06 16:04:21 +02:00
João Aldeano
263bd92424
Refactor errorResponse to set the logger to debug if the response cod… (#2719)
* Refactor errorResponse to set the logger to debug if the response code is set to unauthorised. Fixes #2488

* Fix merge conflicts
2022-04-06 07:54:40 -04:00
Jesús Espino
bc52b2f044 Fixing golangci-lint errors 2022-04-06 13:01:45 +02:00
Jesús Espino
af5193bbd0 Removing not used code 2022-04-06 12:57:30 +02:00
Jesús Espino
e2648f516a Making error handling more precise in the server (and fixing tests) 2022-04-06 10:35:26 +02:00
Scott Bishel
140af2e52f
Merge branch 'main' into issue-2617 2022-04-05 11:56:29 -06:00
Jesús Espino
a4ef8ec6bc
Permissions integration tests (#2697)
* Initial permissions review infrastructure

* Adding more tests cases

* Modifying a bit the tests approach and adding more tests

* Adding more tests

* Adding more tests for permissions

* Adding more tests

* Adding more permissions tests

* Adding more tests

* Adding more permission checks

* Adding more permissions tests

* Adding more permission tests

* Adding more tests

* Adding subscriptions tests

* Adding more permissions tests

* Adding tests for read tokens in the files

* Update APIs and fix unit tests

* Fix linter errors

* Auto-assign category id from the database (as expected because is serial/auto_increment integer field)

* Revert "Auto-assign category id from the database (as expected because is serial/auto_increment integer field)"

This reverts commit 5c98fd76a3.

* Fixing Category scheme in postgres and MySQL

* Removing restriction about the channel_id and add it to all the databases

* Moving everything to a new migration

* Fix bad merge (?)

* Update 000021_fix_categories.up.sql

Fix Postgres ALTER COLUMN syntax

* Update 000021_fix_categories.down.sql

Fix Postgres ALTER COLUMN syntax

* Update 000021_fix_categories.up.sql

Remove unnecessary, and unsupported MODIFY COLUMNs for SQLite.

* Update 000021_fix_categories.up.sql

Remove not null from categories.channel_id

* Update 000021_fix_categories.down.sql

Migrate down removing not null from categories.channel_id

* Update 000021_fix_categories.up.sql

Fix drop not null on categories.channel_id

* Update 000021_fix_categories.down.sql

Fix down migration of drop not null from categories.channel_id.

* Restore default notification level to debug

Co-authored-by: Chen-I Lim <chenilim@gmail.com>
Co-authored-by: Chen-I Lim <46905241+chenilim@users.noreply.github.com>
2022-04-05 08:00:04 -07:00
Scott Bishel
0cff6e10b1
Merge pull request #2687 from mattermost/private-onboarding-board
Set type as private for onboarding board
2022-04-04 15:11:16 -06:00
Scott Bishel
3757c19a6d
Merge pull request #2716 from mattermost/gh-2712-fix-templates
GH-2712:Don't check team permission for GlobalTeamID
2022-04-04 09:48:09 -06:00
Jesús Espino
3eb9e469d4 Revert "Removing restriction about the channel_id and add it to all the databases"
This reverts commit b9be81b900.
2022-04-04 17:45:18 +02:00
Jesús Espino
b9be81b900 Removing restriction about the channel_id and add it to all the databases 2022-04-04 17:45:00 +02:00
Mattermod
e1dd866fba
Merge branch 'main' into private-onboarding-board 2022-04-04 18:43:24 +03:00
Jesús Espino
67dfb4e118 Merge remote-tracking branch 'origin/main' into issue-2617 2022-04-04 17:23:31 +02:00
Scott Bishel
43722df412 update formatting 2022-04-04 09:18:39 -06:00
Jesús Espino
dc5f387fb8
Add code to disble guest account access (#2690)
* Disabling guest accounts

* Using the plugin api to improve get user queries

* Fix linter errors

Co-authored-by: Scott Bishel <scott.bishel@mattermost.com>
2022-04-04 16:00:40 +02:00
Jesús Espino
c11c6e9b3f
Merge branch 'main' into gh-2712-fix-templates 2022-04-04 10:15:34 +02:00
Scott Bishel
e1c894b7bb
GH-2675 Remove deprecated Apis (#2685)
* remove deprecated apis and related code

* remove unused api from octoclient

* remove unused api from client

* remove unused code
2022-04-04 09:53:24 +02:00
Scott Bishel
c19ac24fe6
update apis to return 501 if not available for plugin (#2684) 2022-04-04 09:49:27 +02:00
Scott Bishel
283d7669f3
remove read token check from unnecessary functions (#2682) 2022-04-04 09:39:29 +02:00
Scott Bishel
e46b9749d1 lint fixes 2022-04-01 14:41:31 -06:00
Scott Bishel
f20b0cdca6 don't check team permission for GlobalTeamID 2022-04-01 13:42:30 -06:00
Mattermod
1e1ad3994f
Merge branch 'main' into GH-2443_follow_button_broken 2022-04-01 17:29:34 +03:00
wiggin77
9a2cea7113 fix broken Follow button 2022-03-31 19:15:46 -04:00
Scott Bishel
2d356c696b
Merge pull request #2702 from mattermost/gh-2678-shared-files
GH-2678 Update handleServeFile to allow readtoken
2022-03-31 16:34:21 -06:00
Scott Bishel
c098eda254 update handleServeFile to allow readtoken 2022-03-31 15:02:49 -06:00
wiggin77
92a5c3605e fix unit test 2 2022-03-31 15:11:44 -04:00
wiggin77
69b4baa7ec fix unit test 2022-03-31 14:45:41 -04:00
wiggin77
d862e66af4 fix archive import 2022-03-31 14:04:20 -04:00
Harshil Sharma
806bb8e1a6 Fixed tests 2022-03-31 15:14:57 +05:30
Harshil Sharma
03cf9f815f Fixed tests 2022-03-31 13:58:30 +05:30
Harshil Sharma
bc5b7437aa Merge branch 'main' into private-onboarding-board 2022-03-31 11:32:40 +05:30
Harshil Sharma
fa1860a4a8 lint fix 2022-03-31 10:52:21 +05:30
Harshil Sharma
31c027afe1 Used gobal team ID 2022-03-31 10:38:23 +05:30
Harshil Sharma
eedfe427e2 Used gobal team ID 2022-03-31 10:33:40 +05:30
Doug Lauder
fb52a7fa1d
Merge branch 'main' into private-templates 2022-03-30 18:17:44 -04:00
Doug Lauder
a5565dcfa1
Generate templates archive at build time (#2577) 2022-03-30 18:10:11 -04:00
Mattermod
5a8665d2a1
Merge branch 'main' into private-templates 2022-03-30 18:10:16 +03:00
Harshil Sharma
90081cfdaa Minor comment 2022-03-30 14:16:11 +05:30
Harshil Sharma
d82fb1127f Set type as private for onboarding board 2022-03-30 14:15:07 +05:30
Doug Lauder
8541c3a356
Merge branch 'main' into issue-2617 2022-03-29 21:59:10 -04:00
Chen-I Lim
9f82537f9e
Add TestGetTemplates integration test (#2635)
* Add TestGetTemplates integration test

* Use t.Logf instead of fmt

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-03-29 15:55:39 -07:00
Chen-I Lim
c3a4921ac3
GetBoardMetadata API (#2569)
* wip

* Added data migration for populating categories

* wip

* Added data migration for populating categories

* Store WIP

* migration WIP

* category CRUD APIs complete

* category block API WIP

* block category update API done

* Fetcehed data into store

* Started displayting sidebar data

* sidebar WIP

* Dashboard - basic changes

* Sidebar dashboard btn and board switcher UI only

* Sidebar dashboard btn and board switcher UI only

* create category dialog WIP

* Create category webapp side done

* Integrated move card to other category

* board to block

* Disabled dashboard route for now as we'll implement it in phase 2

* WIP

* Added logic to open last board/view on per team level

* Add workspace to teams and boards migrations (#1986)

* Add workspace to teams and boards migrations

* Update json annotations on board models

* boards search dialog WIP

* Seach dialog WIP

* Implemented opening boiard from search results

* Boards switcher styliung

* Handled update category WS event

* Template support

* personal server support and styling fixes

* test fix WIP

* Fixed a bug causing boards to not be moved correctly beteen categories

* Fixed webapp tests

* fix

* Store changes (#2011)

* Permissions phase 1 - Websocket updates (#2014)

* Store changes

* Websockets changes

* Permissions phase 1 - Permissions service (#2015)

* Store changes

* Websockets changes

* Permissions service

* Api and app updates (#2016)

* Store changes

* Websockets changes

* Permissions service

* New API and App changes

* Delete and Patch boards and blocks endpoints

* Used correct variable

* Webapp changes WIP

* Open correct team URL

* Fixed get block API

* Used React context for workspace users

* WIP

* On load navigation sorted out

* WIP

* Nav fix

* categories WS broadcast

* Used real search API

* Fixed unfurl ppreview

* set active team in sidebar

* IMplemented navigation on changing team in sidebar

* Misc fixes

* close rows inside transaction (#2045)

* update syntax for mysql (#2044)

* Upadted mutator for new patchBlock API

* Updated patchBlock API to use new URL

* Listeining to correct event in plugin mode

* Implemented WS messages for category operations:

* Fix duplicated build tags on Makefile

* Sidebar enhancements

* Add missing prefix to SQLite migration and fix flaky tests

* Sidebar boards menu enhancement

* Fix board page interactions (#2144)

* Fix patch board card properties error

* Fix board interactions

* Fix insert blocks interactions

* Fix app tests (#2104)

* Add json1 tag to vscode launch (#2157)

* Fix add, delete and update boards and add board patch generation (#2146)

* Fix update boards and add board patch generation

* Make add board and add template work, as well as deleting a board

* Update the state on board deletion

* Delete unused variable

* Fix bad parenthesis

* Fix board creation inside plugin, options were coming null due websocket message serialization

* update property type mutators to use boards API (#2168)

* Add permissions modal (#2196)

* Initial integration

* Permissions modal, websocket updates and API tests implemented

* Avoid updating/removing user if there is only one admin left

* Fix duplicates on board search

* Adds integration test

* Addressing PR review comments

Co-authored-by: Jesús Espino <jespinog@gmail.com>

* Merge

* I'm able to compile now

* Some fixes around tests execution

* Fixing migrations

* Fixing migrations order

* WIP

* Fixing some other compilation problems on tests

* Some typescript tests fixed

* Fixing javascript tests

* Fixing compilation

* Fixing some problems to create boards

* Load the templates on initial load

* Improvements over initial team templates import

* Adding new fields in the database

* Working on adding duplicate board api

* Removing RootID concept entirely

* Improving a bit the subscriptions

* Fixing store tests for notificationHints

* Fixing more tests

* fixing tests

* Fixing tests

* Fixing tests

* Fixing some small bugs related to templates

* Fixing registration link generation/regeneration

* Fixing cypress tests

* Adding store tests for duplicateBoard and duplicateBlock

* Addressing some TODO comments

* Making the export api simpler

* Add redirect component for old workspace urls

* Removing Dashboard code

* Delete only the built-in templates on update

* fixing tests

* Adding users autocompletion

* Updating snapshots

* Fixing bad merge

* fix panic when creating new card in notifysubscriptions (#2352)

* fix lint errors (#2353)

* fix lint errors

* fix panic when creating new card in notifysubscriptions (#2352)

* fix lint errors

* fix unit test

* Revert "fix unit test"

This reverts commit 0ad78aed65.

Co-authored-by: Doug Lauder <wiggin77@warpmail.net>

* fix sql syntax error for SearchUsersByTeam (#2357)

* Fix mentions delivery (#2358)

* fix sql syntax error for SearchUsersByTeam

* fix mentions delivery

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>

* update api for octoClient calls, pass correct variables to mutator (#2359)

* Fixing tests after merge

* Fix sidebar context menu UI issue (#2399)

* Fix notification diff for text blocks (#2386)

* fix notification diff for text blocks; fix various linter errors.

* fix URLs to cards

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>

* Permissions branch: Fix card links (#2391)

* fix notification diff for text blocks; fix various linter errors.

* fix URLs to cards

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>

* Fixing sqlite tests

* Fixing server tests

* Update migrations to create global templates. (#2397)

* fix duplicate templates

* revert migrate.go

* update UI for empty templates

* implement updating built-in templates as global (teamId = 0)

* handle error if board not found

* update unit test

* fix more tests

* Update blocks_test.go

Fix merge issue

* fix migration sql error (#2414)

* Fixing frontend tests

* Set target team ID when using a global template (#2419)

* Fix some server tests

* Fixing onboarding creation

* Permissions branch: Fix unit tests and CI errors (part 1) (#2425)

* Fixing some small memory leaks (#2400)

* Fixing some small memory leaks

* fixing tests

* passing the tags to all test targets

* Increasing the timeout of the tests

* Fix some type checkings

* Permissions branch: Fixes all the linter errors (#2429)

* fix linter errors

* Reestructuring the router and splitting in more subcomponents (#2403)

* Reestructuring the router and splitting in more subcomponents

* Removing console.log calls

* Removing unneeded selector

* Addressing PR comment

* Fix redirection to one team when you load directly the boards home path

* Using properly the lastTeamID to redirect the user if needed

* don't allow last admin change/deleted (#2416)

* don't allow last admin change/deleted

* update for i18-extract

* fixed en.json

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
Co-authored-by: Harshil Sharma <harshilsharma63@gmail.com>

* Splitting BoardPage component into simpler/smaller components (#2435)

* Splitting BoardPage component into simpler/smaller components

* Removing unneeded import

* Replace go migrate with morph permissions (#2424)

* merge origin/replace-go-migrate-with-morph

* run go mod tidy on mattermost-plugin and increase test timeout

* fix merge issue temprorarily

* remove some debug changes

* fixing the linter

* Allow always team 0 (global) templates fetch (#2472)

* Fix problem with viewId 0 in the URL (#2473)

* Migrate from binddata to goembed (#2471)

* Adding join logic to the board switcher (#2434)

* Adding join logic to the board switcher

* Using already existing client function and removing the joinBoard one

* Adding support for autojoin based on url

* Fixing frontend tests

* fix webapp compile error, missing enableSharedBoards (#2501)

* Fixing duplication on postgres

* Adding back views to the sidebar (#2494)

* Fix #2507. Update Swagger comments (#2508)

* Fix the flash of the template selector on board/team switch (#2490)

* Fix the flash of the template selector on board/team switch

* More fixes specially around error handling

* Fixing the bot badge (#2487)

* simplifying a bit the team store sync between channels and focalboard (#2481)

* Fix menu tests (#2528)

* fix failing menu tests

* fix lint error

* Added keyboard shortcut for boards switcher (#2407)

* Added keyboard shortcut for boards switcher

* Fixed a type error

* Added some inline comments

* Fixed lint

* Fixed bug with scroll jumping when the card is opened: (#2477)

- avoid remounting of `ScrollingComponent` for each render of `Kanban` component
  - property `autoFocus` set to false for `CalculationOptions` because it triggers `blur` even for the button in Jest tests and closes the menu
  - snapshots for tests with `CalculationOptions` updated

* Adding the frontend support for permissions and applying it to a big part of the interface. (#2536)

* Initial work on permissions gates

* Applying permissions gates in more places

* Adding more checks to the interface

* Adding more permissions gates and keeping the store up to date

* fixing some tests

* Fixing some more tests

* Fixing another test

* Fixing all tests and adding some more

* Adding no-permission snapshot tests

* Addressing PR review comments

* Fixing invert behavior

* Permissions branch:  No sqlstore calls after app shutdown (#2530)

* fix webapp compile error, missing enableSharedBoards

* refactor app init wip

* - ensure all block change notifications are finished before shutting down app
- fix unit tests for mysql (insert_at only has 1 second resolution!)

* adjust logging

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>

* Fixed migrations to allow upgrading from previous version (#2535)

* Added mechanism to check if schema migration is needed

* WIP

* WIP

* WIP

* WIP

* Fixed migration

* Fixed for SQLite

* minor cleaniup

* Deleted old schema migration table after running migrations

* Removed a debug log

* Fixed a bug where the code always tried to delete a table which may or may not exist

* Show properly the user avatar in the ShareBoard component (#2542)

* Fixing the last CI problems from the permissions-branch (#2541)

* Fix history ordering

* Giving some times to avoid possible race conditions

* Empty

* Reverting accidental change in the config.json

* Optimizing table view (#2540)

* Optimizing table view

* Reducing the amount of rendering for tables

* Some other performance improvements

* Improve the activeView updates

* Some extra simplifications

* Another small improvement

* Fixing tests

* Fixing linter errors

* Reducing a bit the amount of dependency with big objects in the store

* Small simplification

* Removing Commenter role from the user role selector (#2561)

* Shareboard cleanup (#2550)

* Initial work on permissions gates

* Applying permissions gates in more places

* Adding more checks to the interface

* Adding more permissions gates and keeping the store up to date

* fixing some tests

* Fixing some more tests

* Fixing another test

* Fixing all tests and adding some more

* Adding no-permission snapshot tests

* Addressing PR review comments

* cleanup some shareboard settings

* remove unused property, fix for user items being displayed for non admin

* revert change, allow users to show

Co-authored-by: Jesús Espino <jespinog@gmail.com>
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>

* GetBoardMetadata API

* Integration tests. WIP

* getBoardHistory

* Working integration test

* Fix ordering, add store tests

* Fix: Update board_history update_at on patch

* sqltests

* Fix unmarshall delete boards_history

* testGetBlockMetadata with delete and undelete

* Handle board not found

* Fixing comments and cards with the new optimizations in the store (#2560)

* Fixing property creation (#2563)

* Cleanup

* Fix user selection in table view (#2565)

* Fixing focus new row in table view (#2567)

* Permissions branch: Fix sqlite table lock (CI) (#2568)

* fix sqlite table lock

* remove test db on teardown

* revert .gitignore

* fix goimport on migration code

* fix typo

* more linter fixes

* clean up tmp db for sqlstore tests

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>

* Fixing snapshots

* Remove debug log

* Return metadata for deleted boards

* Migrating center panel to functional component (#2562)

* Migrating center panel to functional component

* Fixing some tests

* Fixing another test

* Fixing linter errors

* Fixing types errors

* Fixing linter error

* Fixing cypress tests

* Fixing the last cypress test

* Simpliying a bit the code

* Making property insertion more robust

* Updating checkbox test

* License check

* Cleanup and update Swagger docs

* Merge from main

* Fix bad merge

* Fix Linux-app build break

* do mod tidy

* Fix server lint

* Require credentials (not only read token)

* Add missing defer CloseRows

* do mod tidy

Co-authored-by: Harshil Sharma <harshilsharma63@gmail.com>
Co-authored-by: Miguel de la Cruz <miguel@mcrx.me>
Co-authored-by: Scott Bishel <scott.bishel@mattermost.com>
Co-authored-by: Jesús Espino <jespinog@gmail.com>
Co-authored-by: Doug Lauder <wiggin77@warpmail.net>
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
Co-authored-by: Harshil Sharma <18575143+harshilsharma63@users.noreply.github.com>
Co-authored-by: Ibrahim Serdar Acikgoz <serdaracikgoz86@gmail.com>
Co-authored-by: kamre <eremchenko@gmail.com>
2022-03-29 14:47:49 -07:00
Jesús Espino
4fe810748f Adding integration tests for the file size limit 2022-03-29 15:56:57 +02:00
Jesús Espino
837859838c Adding max file size limit 2022-03-29 13:25:16 +02:00
Jesús Espino
8212e5401e
Add Members History support (#2595)
* Adding Members History support

* Adding unit tests for boards members history

* Changing insert_at to a milliseconds from epoch field

* Addressing PR review comment

* Addressing PR review comment

* Fix golangci-lint

* Fix migrations in postgres

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-03-29 10:17:19 +02:00
Chen-I Lim
efb8caf88f
joinBoard API (#2660) 2022-03-29 10:14:33 +02:00
Harshil Sharma
761e7cd463 Removed getDefaultTemplates functin as no longer needed 2022-03-29 11:16:16 +05:30
Harshil Sharma
3679e04d44 Removed the extra getDefaultTemplate API as its not needed 2022-03-28 13:41:31 +05:30
Harshil Sharma
3e07ba0d9e
Fixed bug where migration failed if no teamless board existed (#2648) 2022-03-28 13:32:01 +05:30
Harshil Sharma
e51edd4df5 Fixed bug where migration failed if no teamless board existed 2022-03-28 13:17:18 +05:30
Harshil Sharma
98ca5b5691 Merge branch 'main' into private-templates 2022-03-28 13:07:23 +05:30
Harshil Sharma
abc438ef9e
Migrate DM and private group message boards to a team (#2557)
* wip

* Added data migration for populating categories

* wip

* Added data migration for populating categories

* Store WIP

* migration WIP

* category CRUD APIs complete

* category block API WIP

* block category update API done

* Fetcehed data into store

* Started displayting sidebar data

* sidebar WIP

* Dashboard - basic changes

* Sidebar dashboard btn and board switcher UI only

* Sidebar dashboard btn and board switcher UI only

* create category dialog WIP

* Create category webapp side done

* Integrated move card to other category

* board to block

* Disabled dashboard route for now as we'll implement it in phase 2

* WIP

* Added logic to open last board/view on per team level

* Add workspace to teams and boards migrations (#1986)

* Add workspace to teams and boards migrations

* Update json annotations on board models

* boards search dialog WIP

* Seach dialog WIP

* Implemented opening boiard from search results

* Boards switcher styliung

* Handled update category WS event

* Template support

* personal server support and styling fixes

* test fix WIP

* Fixed a bug causing boards to not be moved correctly beteen categories

* Fixed webapp tests

* fix

* Store changes (#2011)

* Permissions phase 1 - Websocket updates (#2014)

* Store changes

* Websockets changes

* Permissions phase 1 - Permissions service (#2015)

* Store changes

* Websockets changes

* Permissions service

* Api and app updates (#2016)

* Store changes

* Websockets changes

* Permissions service

* New API and App changes

* Delete and Patch boards and blocks endpoints

* Used correct variable

* Webapp changes WIP

* Open correct team URL

* Fixed get block API

* Used React context for workspace users

* WIP

* On load navigation sorted out

* WIP

* Nav fix

* categories WS broadcast

* Used real search API

* Fixed unfurl ppreview

* set active team in sidebar

* IMplemented navigation on changing team in sidebar

* Misc fixes

* close rows inside transaction (#2045)

* update syntax for mysql (#2044)

* Upadted mutator for new patchBlock API

* Updated patchBlock API to use new URL

* Listeining to correct event in plugin mode

* Implemented WS messages for category operations:

* Fix duplicated build tags on Makefile

* Sidebar enhancements

* Add missing prefix to SQLite migration and fix flaky tests

* Sidebar boards menu enhancement

* Fix board page interactions (#2144)

* Fix patch board card properties error

* Fix board interactions

* Fix insert blocks interactions

* Fix app tests (#2104)

* Add json1 tag to vscode launch (#2157)

* Fix add, delete and update boards and add board patch generation (#2146)

* Fix update boards and add board patch generation

* Make add board and add template work, as well as deleting a board

* Update the state on board deletion

* Delete unused variable

* Fix bad parenthesis

* Fix board creation inside plugin, options were coming null due websocket message serialization

* update property type mutators to use boards API (#2168)

* Add permissions modal (#2196)

* Initial integration

* Permissions modal, websocket updates and API tests implemented

* Avoid updating/removing user if there is only one admin left

* Fix duplicates on board search

* Adds integration test

* Addressing PR review comments

Co-authored-by: Jesús Espino <jespinog@gmail.com>

* Merge

* I'm able to compile now

* Some fixes around tests execution

* Fixing migrations

* Fixing migrations order

* WIP

* Fixing some other compilation problems on tests

* Some typescript tests fixed

* Fixing javascript tests

* Fixing compilation

* Fixing some problems to create boards

* Load the templates on initial load

* Improvements over initial team templates import

* Adding new fields in the database

* Working on adding duplicate board api

* Removing RootID concept entirely

* Improving a bit the subscriptions

* Fixing store tests for notificationHints

* Fixing more tests

* fixing tests

* Fixing tests

* Fixing tests

* Fixing some small bugs related to templates

* Fixing registration link generation/regeneration

* Fixing cypress tests

* Adding store tests for duplicateBoard and duplicateBlock

* Addressing some TODO comments

* Making the export api simpler

* Add redirect component for old workspace urls

* Removing Dashboard code

* Delete only the built-in templates on update

* fixing tests

* Adding users autocompletion

* Updating snapshots

* Fixing bad merge

* fix panic when creating new card in notifysubscriptions (#2352)

* fix lint errors (#2353)

* fix lint errors

* fix panic when creating new card in notifysubscriptions (#2352)

* fix lint errors

* fix unit test

* Revert "fix unit test"

This reverts commit 0ad78aed65.

Co-authored-by: Doug Lauder <wiggin77@warpmail.net>

* fix sql syntax error for SearchUsersByTeam (#2357)

* Fix mentions delivery (#2358)

* fix sql syntax error for SearchUsersByTeam

* fix mentions delivery

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>

* update api for octoClient calls, pass correct variables to mutator (#2359)

* Fixing tests after merge

* Fix sidebar context menu UI issue (#2399)

* Fix notification diff for text blocks (#2386)

* fix notification diff for text blocks; fix various linter errors.

* fix URLs to cards

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>

* Permissions branch: Fix card links (#2391)

* fix notification diff for text blocks; fix various linter errors.

* fix URLs to cards

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>

* Fixing sqlite tests

* Fixing server tests

* Update migrations to create global templates. (#2397)

* fix duplicate templates

* revert migrate.go

* update UI for empty templates

* implement updating built-in templates as global (teamId = 0)

* handle error if board not found

* update unit test

* fix more tests

* Update blocks_test.go

Fix merge issue

* fix migration sql error (#2414)

* Fixing frontend tests

* Set target team ID when using a global template (#2419)

* Fix some server tests

* Fixing onboarding creation

* Permissions branch: Fix unit tests and CI errors (part 1) (#2425)

* Fixing some small memory leaks (#2400)

* Fixing some small memory leaks

* fixing tests

* passing the tags to all test targets

* Increasing the timeout of the tests

* Fix some type checkings

* Permissions branch: Fixes all the linter errors (#2429)

* fix linter errors

* Reestructuring the router and splitting in more subcomponents (#2403)

* Reestructuring the router and splitting in more subcomponents

* Removing console.log calls

* Removing unneeded selector

* Addressing PR comment

* Fix redirection to one team when you load directly the boards home path

* Using properly the lastTeamID to redirect the user if needed

* don't allow last admin change/deleted (#2416)

* don't allow last admin change/deleted

* update for i18-extract

* fixed en.json

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
Co-authored-by: Harshil Sharma <harshilsharma63@gmail.com>

* Splitting BoardPage component into simpler/smaller components (#2435)

* Splitting BoardPage component into simpler/smaller components

* Removing unneeded import

* Replace go migrate with morph permissions (#2424)

* merge origin/replace-go-migrate-with-morph

* run go mod tidy on mattermost-plugin and increase test timeout

* fix merge issue temprorarily

* remove some debug changes

* fixing the linter

* Allow always team 0 (global) templates fetch (#2472)

* Fix problem with viewId 0 in the URL (#2473)

* Migrate from binddata to goembed (#2471)

* Adding join logic to the board switcher (#2434)

* Adding join logic to the board switcher

* Using already existing client function and removing the joinBoard one

* Adding support for autojoin based on url

* Fixing frontend tests

* fix webapp compile error, missing enableSharedBoards (#2501)

* Fixing duplication on postgres

* Adding back views to the sidebar (#2494)

* Fix #2507. Update Swagger comments (#2508)

* Fix the flash of the template selector on board/team switch (#2490)

* Fix the flash of the template selector on board/team switch

* More fixes specially around error handling

* Fixing the bot badge (#2487)

* simplifying a bit the team store sync between channels and focalboard (#2481)

* Fix menu tests (#2528)

* fix failing menu tests

* fix lint error

* Added keyboard shortcut for boards switcher (#2407)

* Added keyboard shortcut for boards switcher

* Fixed a type error

* Added some inline comments

* Fixed lint

* Fixed bug with scroll jumping when the card is opened: (#2477)

- avoid remounting of `ScrollingComponent` for each render of `Kanban` component
  - property `autoFocus` set to false for `CalculationOptions` because it triggers `blur` even for the button in Jest tests and closes the menu
  - snapshots for tests with `CalculationOptions` updated

* Adding the frontend support for permissions and applying it to a big part of the interface. (#2536)

* Initial work on permissions gates

* Applying permissions gates in more places

* Adding more checks to the interface

* Adding more permissions gates and keeping the store up to date

* fixing some tests

* Fixing some more tests

* Fixing another test

* Fixing all tests and adding some more

* Adding no-permission snapshot tests

* Addressing PR review comments

* Fixing invert behavior

* Permissions branch:  No sqlstore calls after app shutdown (#2530)

* fix webapp compile error, missing enableSharedBoards

* refactor app init wip

* - ensure all block change notifications are finished before shutting down app
- fix unit tests for mysql (insert_at only has 1 second resolution!)

* adjust logging

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>

* Fixed migrations to allow upgrading from previous version (#2535)

* Added mechanism to check if schema migration is needed

* WIP

* WIP

* WIP

* WIP

* Fixed migration

* Fixed for SQLite

* minor cleaniup

* Deleted old schema migration table after running migrations

* Removed a debug log

* Fixed a bug where the code always tried to delete a table which may or may not exist

* Show properly the user avatar in the ShareBoard component (#2542)

* Fixing the last CI problems from the permissions-branch (#2541)

* Fix history ordering

* Giving some times to avoid possible race conditions

* Empty

* Reverting accidental change in the config.json

* Fixed psql migrations for old focalbaord archives

* Cleanup

* Added missing board type update command

* Optimizing table view (#2540)

* Optimizing table view

* Reducing the amount of rendering for tables

* Some other performance improvements

* Improve the activeView updates

* Some extra simplifications

* Another small improvement

* Fixing tests

* Fixing linter errors

* Reducing a bit the amount of dependency with big objects in the store

* Small simplification

* Removing Commenter role from the user role selector (#2561)

* Shareboard cleanup (#2550)

* Initial work on permissions gates

* Applying permissions gates in more places

* Adding more checks to the interface

* Adding more permissions gates and keeping the store up to date

* fixing some tests

* Fixing some more tests

* Fixing another test

* Fixing all tests and adding some more

* Adding no-permission snapshot tests

* Addressing PR review comments

* cleanup some shareboard settings

* remove unused property, fix for user items being displayed for non admin

* revert change, allow users to show

Co-authored-by: Jesús Espino <jespinog@gmail.com>
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>

* Fixing comments and cards with the new optimizations in the store (#2560)

* Fixing property creation (#2563)

* Fix user selection in table view (#2565)

* Fixing focus new row in table view (#2567)

* Permissions branch: Fix sqlite table lock (CI) (#2568)

* fix sqlite table lock

* remove test db on teardown

* revert .gitignore

* fix goimport on migration code

* fix typo

* more linter fixes

* clean up tmp db for sqlstore tests

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>

* Fixing snapshots

* Migrating center panel to functional component (#2562)

* Migrating center panel to functional component

* Fixing some tests

* Fixing another test

* Fixing linter errors

* Fixing types errors

* Fixing linter error

* Fixing cypress tests

* Fixing the last cypress test

* Simpliying a bit the code

* Making property insertion more robust

* Updating checkbox test

* Fixed review comments

* Fixed server lint errors

Co-authored-by: Miguel de la Cruz <miguel@mcrx.me>
Co-authored-by: Scott Bishel <scott.bishel@mattermost.com>
Co-authored-by: Chen-I Lim <46905241+chenilim@users.noreply.github.com>
Co-authored-by: Jesús Espino <jespinog@gmail.com>
Co-authored-by: Doug Lauder <wiggin77@warpmail.net>
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
Co-authored-by: Ibrahim Serdar Acikgoz <serdaracikgoz86@gmail.com>
Co-authored-by: kamre <eremchenko@gmail.com>
2022-03-25 17:21:56 -06:00
Jesús Espino
3dba5c8fcd
Upgrading all the server libraries (#2643)
* Upgrading all the server libraries

* upgrading dependencies in the mattermost-plugin directory

* Executing go generate

* Upgrading the linux app

* Running go mod tidy everywhere
2022-03-25 17:05:56 -06:00
Scott Bishel
33557093b0
fixes for shared boards (#2581)
* fixes for shared boards

* fixes from code review

* update for personal server

* fixes for cypress tests

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-03-25 10:46:58 -06:00
Harshil Sharma
4d88f525ae
Removed an incorrect semicolon from SQL migration causing syntax error (#2637) 2022-03-25 16:58:01 +05:30
Harshil Sharma
c4c5692144 Fixed tests and lint 2022-03-25 12:18:15 +05:30
Harshil Sharma
822ea04083 Merge branch 'main' into private-templates 2022-03-25 12:12:48 +05:30
Harshil Sharma
4645ecbd11
Updated SQL migration to insert board memberships for templates (#2627)
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-03-25 12:10:42 +05:30
Harshil Sharma
f26a854d3c Updated share board modal to support templates 2022-03-25 11:54:27 +05:30
Doug Lauder
71cb654d71
Revert in-memory unit tests for sqlite (#2630)
* revert in-memory unit tests for sqlite

* fix unit test

* fix comments

* fix unit tests
2022-03-24 15:45:10 -06:00
Scott Bishel
70ab1afecd
fix cypress tests (#2628)
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-03-24 11:24:18 -06:00
Chen-I Lim
e82305de56
Fix #2589. Maintain cardProperty order on patch (#2625)
Thanks. Merging as the CI failure is not related to this change.
2022-03-24 10:04:14 -07:00
Harshil Sharma
018c829132 WIP 2022-03-24 13:16:19 +05:30
Harshil Sharma
bcdde138a9 Merge branch 'main' into private-templates 2022-03-24 07:30:09 +05:30
Doug Lauder
218d901b0d
Sqlite in-memory database for unit tests (#2599)
* unit tests use in-memory DB for sqlite
2022-03-23 14:14:07 -04:00
Harshil Sharma
d1b7e601c5 Added server changes to support private templates 2022-03-23 16:21:48 +05:30
Jesús Espino
aa540e73ce
Permissions feature branch (#2578)
* wip

* Added data migration for populating categories

* wip

* Added data migration for populating categories

* Store WIP

* migration WIP

* category CRUD APIs complete

* category block API WIP

* block category update API done

* Fetcehed data into store

* Started displayting sidebar data

* sidebar WIP

* Dashboard - basic changes

* Sidebar dashboard btn and board switcher UI only

* Sidebar dashboard btn and board switcher UI only

* create category dialog WIP

* Create category webapp side done

* Integrated move card to other category

* board to block

* Disabled dashboard route for now as we'll implement it in phase 2

* WIP

* Added logic to open last board/view on per team level

* Add workspace to teams and boards migrations (#1986)

* Add workspace to teams and boards migrations

* Update json annotations on board models

* boards search dialog WIP

* Seach dialog WIP

* Implemented opening boiard from search results

* Boards switcher styliung

* Handled update category WS event

* Template support

* personal server support and styling fixes

* test fix WIP

* Fixed a bug causing boards to not be moved correctly beteen categories

* Fixed webapp tests

* fix

* Store changes (#2011)

* Permissions phase 1 - Websocket updates (#2014)

* Store changes

* Websockets changes

* Permissions phase 1 - Permissions service (#2015)

* Store changes

* Websockets changes

* Permissions service

* Api and app updates (#2016)

* Store changes

* Websockets changes

* Permissions service

* New API and App changes

* Delete and Patch boards and blocks endpoints

* Used correct variable

* Webapp changes WIP

* Open correct team URL

* Fixed get block API

* Used React context for workspace users

* WIP

* On load navigation sorted out

* WIP

* Nav fix

* categories WS broadcast

* Used real search API

* Fixed unfurl ppreview

* set active team in sidebar

* IMplemented navigation on changing team in sidebar

* Misc fixes

* close rows inside transaction (#2045)

* update syntax for mysql (#2044)

* Upadted mutator for new patchBlock API

* Updated patchBlock API to use new URL

* Listeining to correct event in plugin mode

* Implemented WS messages for category operations:

* Fix duplicated build tags on Makefile

* Sidebar enhancements

* Add missing prefix to SQLite migration and fix flaky tests

* Sidebar boards menu enhancement

* Fix board page interactions (#2144)

* Fix patch board card properties error

* Fix board interactions

* Fix insert blocks interactions

* Fix app tests (#2104)

* Add json1 tag to vscode launch (#2157)

* Fix add, delete and update boards and add board patch generation (#2146)

* Fix update boards and add board patch generation

* Make add board and add template work, as well as deleting a board

* Update the state on board deletion

* Delete unused variable

* Fix bad parenthesis

* Fix board creation inside plugin, options were coming null due websocket message serialization

* update property type mutators to use boards API (#2168)

* Add permissions modal (#2196)

* Initial integration

* Permissions modal, websocket updates and API tests implemented

* Avoid updating/removing user if there is only one admin left

* Fix duplicates on board search

* Adds integration test

* Addressing PR review comments

Co-authored-by: Jesús Espino <jespinog@gmail.com>

* Merge

* I'm able to compile now

* Some fixes around tests execution

* Fixing migrations

* Fixing migrations order

* WIP

* Fixing some other compilation problems on tests

* Some typescript tests fixed

* Fixing javascript tests

* Fixing compilation

* Fixing some problems to create boards

* Load the templates on initial load

* Improvements over initial team templates import

* Adding new fields in the database

* Working on adding duplicate board api

* Removing RootID concept entirely

* Improving a bit the subscriptions

* Fixing store tests for notificationHints

* Fixing more tests

* fixing tests

* Fixing tests

* Fixing tests

* Fixing some small bugs related to templates

* Fixing registration link generation/regeneration

* Fixing cypress tests

* Adding store tests for duplicateBoard and duplicateBlock

* Addressing some TODO comments

* Making the export api simpler

* Add redirect component for old workspace urls

* Removing Dashboard code

* Delete only the built-in templates on update

* fixing tests

* Adding users autocompletion

* Updating snapshots

* Fixing bad merge

* fix panic when creating new card in notifysubscriptions (#2352)

* fix lint errors (#2353)

* fix lint errors

* fix panic when creating new card in notifysubscriptions (#2352)

* fix lint errors

* fix unit test

* Revert "fix unit test"

This reverts commit 0ad78aed65.

Co-authored-by: Doug Lauder <wiggin77@warpmail.net>

* fix sql syntax error for SearchUsersByTeam (#2357)

* Fix mentions delivery (#2358)

* fix sql syntax error for SearchUsersByTeam

* fix mentions delivery

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>

* update api for octoClient calls, pass correct variables to mutator (#2359)

* Fixing tests after merge

* Fix sidebar context menu UI issue (#2399)

* Fix notification diff for text blocks (#2386)

* fix notification diff for text blocks; fix various linter errors.

* fix URLs to cards

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>

* Permissions branch: Fix card links (#2391)

* fix notification diff for text blocks; fix various linter errors.

* fix URLs to cards

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>

* Fixing sqlite tests

* Fixing server tests

* Update migrations to create global templates. (#2397)

* fix duplicate templates

* revert migrate.go

* update UI for empty templates

* implement updating built-in templates as global (teamId = 0)

* handle error if board not found

* update unit test

* fix more tests

* Update blocks_test.go

Fix merge issue

* fix migration sql error (#2414)

* Fixing frontend tests

* Set target team ID when using a global template (#2419)

* Fix some server tests

* Fixing onboarding creation

* Permissions branch: Fix unit tests and CI errors (part 1) (#2425)

* Fixing some small memory leaks (#2400)

* Fixing some small memory leaks

* fixing tests

* passing the tags to all test targets

* Increasing the timeout of the tests

* Fix some type checkings

* Permissions branch: Fixes all the linter errors (#2429)

* fix linter errors

* Reestructuring the router and splitting in more subcomponents (#2403)

* Reestructuring the router and splitting in more subcomponents

* Removing console.log calls

* Removing unneeded selector

* Addressing PR comment

* Fix redirection to one team when you load directly the boards home path

* Using properly the lastTeamID to redirect the user if needed

* don't allow last admin change/deleted (#2416)

* don't allow last admin change/deleted

* update for i18-extract

* fixed en.json

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
Co-authored-by: Harshil Sharma <harshilsharma63@gmail.com>

* Splitting BoardPage component into simpler/smaller components (#2435)

* Splitting BoardPage component into simpler/smaller components

* Removing unneeded import

* Replace go migrate with morph permissions (#2424)

* merge origin/replace-go-migrate-with-morph

* run go mod tidy on mattermost-plugin and increase test timeout

* fix merge issue temprorarily

* remove some debug changes

* fixing the linter

* Allow always team 0 (global) templates fetch (#2472)

* Fix problem with viewId 0 in the URL (#2473)

* Migrate from binddata to goembed (#2471)

* Adding join logic to the board switcher (#2434)

* Adding join logic to the board switcher

* Using already existing client function and removing the joinBoard one

* Adding support for autojoin based on url

* Fixing frontend tests

* fix webapp compile error, missing enableSharedBoards (#2501)

* Fixing duplication on postgres

* Adding back views to the sidebar (#2494)

* Fix #2507. Update Swagger comments (#2508)

* Fix the flash of the template selector on board/team switch (#2490)

* Fix the flash of the template selector on board/team switch

* More fixes specially around error handling

* Fixing the bot badge (#2487)

* simplifying a bit the team store sync between channels and focalboard (#2481)

* Fix menu tests (#2528)

* fix failing menu tests

* fix lint error

* Added keyboard shortcut for boards switcher (#2407)

* Added keyboard shortcut for boards switcher

* Fixed a type error

* Added some inline comments

* Fixed lint

* Fixed bug with scroll jumping when the card is opened: (#2477)

- avoid remounting of `ScrollingComponent` for each render of `Kanban` component
  - property `autoFocus` set to false for `CalculationOptions` because it triggers `blur` even for the button in Jest tests and closes the menu
  - snapshots for tests with `CalculationOptions` updated

* Adding the frontend support for permissions and applying it to a big part of the interface. (#2536)

* Initial work on permissions gates

* Applying permissions gates in more places

* Adding more checks to the interface

* Adding more permissions gates and keeping the store up to date

* fixing some tests

* Fixing some more tests

* Fixing another test

* Fixing all tests and adding some more

* Adding no-permission snapshot tests

* Addressing PR review comments

* Fixing invert behavior

* Permissions branch:  No sqlstore calls after app shutdown (#2530)

* fix webapp compile error, missing enableSharedBoards

* refactor app init wip

* - ensure all block change notifications are finished before shutting down app
- fix unit tests for mysql (insert_at only has 1 second resolution!)

* adjust logging

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>

* Fixed migrations to allow upgrading from previous version (#2535)

* Added mechanism to check if schema migration is needed

* WIP

* WIP

* WIP

* WIP

* Fixed migration

* Fixed for SQLite

* minor cleaniup

* Deleted old schema migration table after running migrations

* Removed a debug log

* Fixed a bug where the code always tried to delete a table which may or may not exist

* Show properly the user avatar in the ShareBoard component (#2542)

* Fixing the last CI problems from the permissions-branch (#2541)

* Fix history ordering

* Giving some times to avoid possible race conditions

* Empty

* Reverting accidental change in the config.json

* Optimizing table view (#2540)

* Optimizing table view

* Reducing the amount of rendering for tables

* Some other performance improvements

* Improve the activeView updates

* Some extra simplifications

* Another small improvement

* Fixing tests

* Fixing linter errors

* Reducing a bit the amount of dependency with big objects in the store

* Small simplification

* Removing Commenter role from the user role selector (#2561)

* Shareboard cleanup (#2550)

* Initial work on permissions gates

* Applying permissions gates in more places

* Adding more checks to the interface

* Adding more permissions gates and keeping the store up to date

* fixing some tests

* Fixing some more tests

* Fixing another test

* Fixing all tests and adding some more

* Adding no-permission snapshot tests

* Addressing PR review comments

* cleanup some shareboard settings

* remove unused property, fix for user items being displayed for non admin

* revert change, allow users to show

Co-authored-by: Jesús Espino <jespinog@gmail.com>
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>

* Fixing comments and cards with the new optimizations in the store (#2560)

* Fixing property creation (#2563)

* Fix user selection in table view (#2565)

* Fixing focus new row in table view (#2567)

* Permissions branch: Fix sqlite table lock (CI) (#2568)

* fix sqlite table lock

* remove test db on teardown

* revert .gitignore

* fix goimport on migration code

* fix typo

* more linter fixes

* clean up tmp db for sqlstore tests

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>

* Fixing snapshots

* Migrating center panel to functional component (#2562)

* Migrating center panel to functional component

* Fixing some tests

* Fixing another test

* Fixing linter errors

* Fixing types errors

* Fixing linter error

* Fixing cypress tests

* Fixing the last cypress test

* Simpliying a bit the code

* Making property insertion more robust

* Updating checkbox test

Co-authored-by: Harshil Sharma <harshilsharma63@gmail.com>
Co-authored-by: Miguel de la Cruz <miguel@mcrx.me>
Co-authored-by: Scott Bishel <scott.bishel@mattermost.com>
Co-authored-by: Chen-I Lim <46905241+chenilim@users.noreply.github.com>
Co-authored-by: Doug Lauder <wiggin77@warpmail.net>
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
Co-authored-by: Harshil Sharma <18575143+harshilsharma63@users.noreply.github.com>
Co-authored-by: Ibrahim Serdar Acikgoz <serdaracikgoz86@gmail.com>
Co-authored-by: kamre <eremchenko@gmail.com>
2022-03-22 08:24:34 -06:00
Harshil Sharma
a30fef5848
Fixed a bug where images of the welcome board were not copied over. (#2453)
* Fixed a buig where images of welcome board were not copied over

* Lint fixes

* Fixed test

* Fixed test
2022-03-08 11:30:49 +05:30
Akshay Vasudeva Rao
68819185a4
Shows "(Deleted User)" instead of UUID when user not found (#2354)
* Shows "(Deleted User)" instead of long, unreadable UUID in case the user is not found

In case a user is not found, at present unreadable and long UUIDs are shown which kill the look and feel of the application. This patch replaces the UUID with a more explanatory string.

* Update server/services/store/mattermostauthlayer/mattermostauthlayer.go

Co-authored-by: Doug Lauder <wiggin77@warpmail.net>
2022-03-03 12:38:04 -07:00
Scott Bishel
b41fd7b4e8
update to v0.16.0 (#2438) 2022-03-02 15:08:40 -07:00
Harshil Sharma
ab3bf6312c
Merge Onboarding feature branch into main (#2406)
* Persistent user config (#2133)

* Added user config API

* Add unit tests

* lint fix

* Fixed webapp tests

* Fixed webapp tests

* Updated props in store after updating

* Minor fixes

* Removed redundent data from audit logs

* Onboarding Tour (#2287)

* Created private board

* Roughly displayed tour

* Synced with Dhama's changes

* WIP

* Trying to add GIF

* Added 3 tour steps

* WIP

* WIP

* WIP

* checked in missed file

* Synced with feature branch

* WIp

* Adde skip tour option

* Fixed image loading for on-prem

* Made tour work on presonal server:

* Adde missed file

* Adding telemetry

* Adding telemetry

* Added tour tip telemetry

* Fixed pulsating dot styling for personal server

* reverted personal config

* Added reset tour button

* Displayed share tour tip of feature is enabled

* Lint fixes

* Fixed webapp tests

* Fixed webapp tests

* Completed webapp tests

* Completed webapp tests

* Webapp lint fixes

* Added server tests

* Testing cypress skip tour fix

* Fixed Cypress tests

* Added share board tour step

* Added share board tour step

* webapp lint fixes

* Updated logic to pick welcome board

* Updated tests:

* lint fixes

* Updating UI changes

* Fixed a bug causing card tour to re-appear

* FIxed minor issue

* FIxed bug where card tour didn't start in clickingh on card

* Fixed tests

* Make update user props use string instead of interface

* Fixed a value type

* Updating gif size

* Updating resolution breakpoint

* Updating tutorial tip

* Updating view selector

* Refactored tour components

* Misc fixes

* minor refactoring

* GH-2258: allow date range to overflow (#2268)

* allow date range to overflow

* Fixed issue with date overflowing into neighbouring column

Co-authored-by: Harshil Sharma <harshilsharma63@gmail.com>
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>

* Update readme with accurate Linux standalone app build instructions (#2351)

* Bump follow-redirects from 1.14.7 to 1.14.8 in /experiments/webext (#2339)

Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.14.7 to 1.14.8.
- [Release notes](https://github.com/follow-redirects/follow-redirects/releases)
- [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.14.7...v1.14.8)

---
updated-dependencies:
- dependency-name: follow-redirects
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Switch component style fixed: selector specificity increased by adding additional class. (#2179)

* Adding sever side undelete endpoint (#2222)

* Adding sever side undelete endpoint

* Removing long lines golangci-lint errors

* Fixing linter errors

* Fixing a test problem

* Fixing tests

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>

* Removing transactions from sqlite backend (#2361)

* Removing transactions from sqlite backend

* Skipping tests in sqlite because the lack of transactions

* Generating the mocks

* Fixing golangci-lint

* Fixing problem opening the tour tooltip on card open

* Fixing texts missmatch

* Adding the Product Tour entry in the user settings menu

* Fixing some tests

* Fixing tests

Co-authored-by: Asaad Mahmood <asaadmahmood@users.noreply.github.com>
Co-authored-by: Scott Bishel <scott.bishel@mattermost.com>
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
Co-authored-by: Doug Lauder <wiggin77@warpmail.net>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: kamre <eremchenko@gmail.com>
Co-authored-by: Jesús Espino <jespinog@gmail.com>

* Restored package json

* Restored package json

Co-authored-by: Asaad Mahmood <asaadmahmood@users.noreply.github.com>
Co-authored-by: Scott Bishel <scott.bishel@mattermost.com>
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
Co-authored-by: Doug Lauder <wiggin77@warpmail.net>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: kamre <eremchenko@gmail.com>
Co-authored-by: Jesús Espino <jespinog@gmail.com>
2022-02-28 12:28:16 +01:00
Jesús Espino
1d5583ac7a
Removing transactions from sqlite backend (#2361)
* Removing transactions from sqlite backend

* Skipping tests in sqlite because the lack of transactions

* Generating the mocks

* Fixing golangci-lint
2022-02-22 14:30:47 -07:00
Jesús Espino
8d94422d5f
Adding sever side undelete endpoint (#2222)
* Adding sever side undelete endpoint

* Removing long lines golangci-lint errors

* Fixing linter errors

* Fixing a test problem

* Fixing tests

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-02-22 18:42:49 +01:00
Doug Lauder
d4133ec9d9
fix cardOrder when modifying block ids (#2345) 2022-02-16 12:08:49 -05:00
Chen-I Lim
03c240c799
API Readme: Add note on Boards API usage. (#2293) 2022-02-08 10:58:24 -08:00
Doug Lauder
2c21906164
Reduce noise in logs (#2256)
* use PluginLogAdapter to log everything; move some info to debug
2022-02-07 18:04:24 -05:00
Doug Lauder
870c56e6b3
Copy images when duplicating card/board (#2253)
* copy image for card/board dup

* revert store changes

* revert store changes
2022-02-04 15:12:28 -07:00
Scott Bishel
50d62db683
Update to version 0.15.0 (#2231)
* update to version 0.15.0

* update month

* update snapshots

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-02-04 11:21:33 -07:00
Doug Lauder
a47baf7f23
Multi version archive import (#2220)
* Fixed panic in PropDef.GetValue for `person` property types.
- the GetUserByID API can return a nil user and nil error

* return userid

* support old archive format

* move template init to app layer

* move app init

* init app

* revert

* ignore GetDefaultTemplate blocks call in store mock

* ignore GetDefaultTemplate blocks call in store mock2

* ignore InsertBlockss call in store mock3

* ignore RemoveDefaultTemplates call in store mock4

* ignore WriteFile call in files mock5

* ignore WriteFile call in files mock6

* ignore WriteFile call in files mock7

* ignore WriteFile call in files mock8

* fix unit tests

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-02-02 11:25:06 -07:00
Harshil Sharma
21ba0e00ce
Fixes bug where images don't show up in templates and boards created from templates (#2224)
* Base fix for bug causing images to not appear in templates created from boards

* Added some docs

* Fixed lint error

* Update server/app/blocks.go

Co-authored-by: Doug Lauder <wiggin77@warpmail.net>

* used a better method name

Co-authored-by: Doug Lauder <wiggin77@warpmail.net>
2022-02-02 10:12:59 -07:00
Doug Lauder
46801d72cb
Fix panic in PropDef.GetValue for person property types. (#2218)
* Fixed panic in PropDef.GetValue for `person` property types.
- the GetUserByID API can return a nil user and nil error

* return userid
2022-02-02 06:39:35 -07:00
Doug Lauder
65c783c270
Import/export moved to server + image support + streaming (#2201) 2022-02-01 19:01:29 -05:00
Doug Lauder
42c6ec5b61
Upgrade default templates on launch (#2167)
* store ImportArchive

* fix db call

* blockModifier

* fix template cards appearing

* remove old templates

* disable max-lines eslint rule

* undo eslint rule chg

* updates default templates

* Update server/services/store/sqlstore/archive.go

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-02-01 19:36:12 +01:00
Scott Bishel
66f4b90ef2
change log from error to debug (#2199) 2022-01-28 11:24:22 -07:00
Scott Bishel
bccfbd3d2f
MM-40542: Verify config setting in api (#2170)
* verify config setting in api

* update message

* fix lint

* update/add unit test, throw error

* fix typo
2022-01-28 10:35:38 -07:00
Asaad Mahmood
4662b03501
Adding gif support for boards (#2126)
* Adding gif support for boards

* Updating api
2022-01-26 18:45:44 +05:00
Doug Lauder
8f958abb9c
Don't log error message when multiple nodes try processing a notification hint at the same time. (#2166) 2022-01-25 14:30:06 -07:00
Scott Bishel
922e9ecd1a
GH-2130: Remove subscriptions feature flag (#2132)
* remove subscriptions feature flag

* lint fix
2022-01-19 07:27:26 -07:00
Chen-I Lim
86dcb8c25b
Add warning to API readme (#2140) 2022-01-18 13:02:43 -08:00
Doug Lauder
60af00ac3c
Resolve usernames for person property type (#2116)
* resolve usernames for  property types
2022-01-18 13:08:28 -05:00
Miguel de la Cruz
b92890f238
Fix default schema type for focalboard blocks history (#2122) 2022-01-15 17:12:11 -07:00
Doug Lauder
b33b998f9e
Fix prop change formatting for date & multiselect (#2110)
* fix prop value formatting for date & multiselect

* support date ranges
2022-01-12 15:24:28 -07:00
Doug Lauder
c6714a76bc
fix card link in notifications; card pointer was cached by template (#2096) 2022-01-11 18:14:21 -07:00
Jesús Espino
106a8e5b2e
Fixing unique ID problems on content order with multiple colums (#2071)
* Fixing unique ID problems on content order with multiple colums

* Fixing duplication

* Fix linter errors
2022-01-11 13:25:51 -07:00
Doug Lauder
855ea70a44
Stayin' Alive: Log & recover from web server panics (#2072)
* log webserver panics
* move panic handling to separate func
2022-01-10 15:33:05 -05:00
Doug Lauder
3f66fb52cc
List all authors of a card diff in the notification (#2055) 2022-01-07 10:11:36 -05:00
Scott Bishel
f0602a6eb6
Update version to 0.14.0 (#2057)
* update version to 0.13.0

* update to v0.14.0
2022-01-06 12:26:35 -07:00
Harshil Sharma
85c04ff4a6
Fixed a bug which didn't update block IDs in content order (#2054) 2022-01-06 07:41:18 -07:00
Doug Lauder
72bf464b22
Improved diff to markdown for card notifications (#2037)
* improved text diff for notifications

* fix panic selecting insert_at

* improvements wip

* simplified v1

* improved diff to markdown

* address review comments

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-01-05 14:11:58 -07:00
Doug Lauder
8cf73382b4
fix crash in DeleteBlock (#2040)
* fix crash in deleteblock

* fix unit test
2022-01-05 10:02:06 +01:00
Chen-I Lim
5c69c2de57
Fix #1745. Delete socket only if it exists (#2034)
* Fix #1745. Delete socket only if it exists

* Update jest snapshots to fix last year date text
2022-01-03 10:42:28 -08:00
Doug Lauder
2640cbd3ed
fix panic selecting insert_at (#2009)
Fixes a panic at start-up for plugin + postgres/mysql. When selecting on a timestamp database type, the type of the var to scan into is different based on database type. The fix is to convert the timestamp to string within the query and scan into a string.
2021-12-21 17:18:55 -05:00
Doug Lauder
7af9e18a49
Test all supported databases in CI (#2000)
* add mysql and postgres tests to CI
2021-12-17 12:30:47 -05:00
Doug Lauder
bf23bd0d25
Remove noisy error log for unit tests 2021-12-17 01:05:05 -05:00
Doug Lauder
11703acb8a
fix syntax errors for mysql (#1997) 2021-12-16 12:43:50 -05:00
Jesús Espino
2e4d015586
Fixing and regenerating swagger documentation (#1990) 2021-12-15 20:54:23 +01:00
Doug Lauder
75bd409ba0
Notifications phase 1 (#1851)
Backend support for subscribing/unsubscribing to blocks, typically cards and boards. Notifies subscribers when changes are made to cards they are subscribed to.
2021-12-10 10:46:37 -05:00
Jesús Espino
7952d6b018
Include migration for content order on unique id migration (#1965)
* Include migration for content order on unique id migration

* Adding test case for other workspace

* making lines shorter
2021-12-10 09:33:41 -05:00
Scott Bishel
3450eb6d4f
Gh 1841 batch patches (#1935)
* Updating table row css (#1787)

* package patchBlocks as batches, move updateBlocks to transactional

* fix lint errors

* fix from review

Co-authored-by: Asaad Mahmood <asaadmahmood@users.noreply.github.com>
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2021-12-10 07:17:00 -07:00
Doug Lauder
3be03f0cd0
fix mysql migration (#1964)
Fix unsupported SQL syntax for MySQL
2021-12-10 08:56:11 -05:00
Hossein
199da41f6d
Fix MM-40428 (#1926) 2021-12-10 08:28:52 -05:00
Harshil Sharma
6b23795ff3
Removed unused fields (#1944)
* removed unused fields

* lint fix

Co-authored-by: Scott Bishel <scott.bishel@mattermost.com>
2021-12-08 12:47:47 -07:00
Hossein
dc36afcfba
GH-1878: Display Bot Badge in Auto Complete (#1906) 2021-12-08 10:04:19 -05:00
Hossein
c8d4c98f8c
Fix Issues (#1923) 2021-12-08 09:07:28 -05:00
Doug Lauder
487d59b790
don't notify @mnetioned user who are not members of channel (#1912) 2021-12-03 13:33:59 -05:00
Doug Lauder
8be71b1498
Don't insert nulls into blocks_history table. (#1890)
Ensure all fields are non-NULL when inserting into blocks_history (on block delete).
2021-12-03 12:32:57 -05:00
Chen-I Lim
ed2c916afa
Update to v0.12 (#1904) 2021-12-01 14:55:47 -08:00
Jesús Espino
2f08c67827
Adding explict logout logic (#1895)
* Adding explict logout logic

* Fixing golangci-lint errors
2021-12-01 10:21:31 +01:00