Commit graph

127 commits

Author SHA1 Message Date
Doug Lauder
b63542fb63
Search boards by prop (#4291)
* SearchBoardsForUser API with property name search.
2022-12-16 11:46:00 -05:00
Harshil Sharma
eceb406535
Revert "Revert dnd (#4294)" (#4324)
This reverts commit 9fac8f476e.
2022-12-14 14:21:53 +05:30
Miguel de la Cruz
9fac8f476e
Revert dnd (#4294)
* Revert "Fixed bug where boards would move to category of a different team (#4284)"

This reverts commit e075f408d3.

* Revert "Merge branch 'main' into only-explicit-boards-on-default-category"

This reverts commit 7db7e56296, reversing
changes made to 3feda10b6d.

* Revert "DND support for category and boards in LHS (#3964)"

This reverts commit 9918a0b3f8.
2022-12-05 15:03:34 -05:00
Shivashis Padhi
35f681dd75
Change activeUsers field type to []string (#3909)
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-12-05 17:20:15 +05:30
Scott Bishel
60cafbe6eb
update version to v7.7.0 (#4270) 2022-12-01 17:47:31 -07:00
Rajat Dabade
6674402079
File attachment in the card (#4053)
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-11-24 17:16:59 +05:30
Harshil Sharma
9918a0b3f8
DND support for category and boards in LHS (#3964)
* WIP

* WIP

* Removed unused webapp util

* Added server tests

* Lint fix

* Updating existing tests

* Updating existing tests

* Updating existing tests

* Fixing existing tests

* Fixing existing tests

* Fixing existing tests

* WIP

* Added category sort order migration

* Added logic to set new category on top

* Implemented api, WS listein logic remining

* finished webapp implementation

* Added category type and tests

* updated tests

* Fixed integration test

* type fix

* WIP

* implemented boards DND to other category and in same category

* removed seconds from boards name

* wip

* debugging cy test

* Enabled hiding views list while DNDing

* Removed some debug logs

* Fixed a bug preventing users from collapsing boards category

* WIP

* Debugging cypress test

* CI

* debugging cy test

* Testing a fix

* reverting test fix

* Handled personal server

* WIP

* WIP

* Adding support for building with esbuild

* Using different index.html templates for esbuild

* WIP

* WIP

* Fixed delete category and rename category

* WIP

* WIP

* Finally, its done.

* Adde suppor tot update board-category mapping in bulk

* Fixed a bug where create category option didn't show up on default category

* Fixed bug where new board was added as last board in Boards category instead of first board

* Minor cleanup

* WIP

* Added support to drab boards onto collapsed categories

* Fixed route order from specific to generic

* Fix linter

* Updated existin server tests

* fixed integration tests

* Fixed webapp test err

* Removed accidental dependencies

* Adding  new server tests

* Finished server tests

* added api to client.go

* Added API integration test

* Fixed existing webapp tests

* WIP

* WIP

* WIP

* WIP

* WIP

* Fixed missing paranthesis

* Some cleanup

* fixed server lint

* noopped down migration

* Fixed issue with DND not working great with newly added category

* Fixed a test

* Fixed a test

* Fixed a test

* Fixed console error while DNDing

* pakg lock restore

* Fixed missing react beautiful dnd in package.lock.json

* updated snapshots

* Fixed webapp test

* Review fixes

* Added API permission check

Co-authored-by: Jesús Espino <jespinog@gmail.com>
2022-11-24 15:31:32 +05:30
Scott Bishel
a30c1692ac
update to version 7.6.0 (#4185) 2022-11-09 17:50:17 +05:30
Harshil Sharma
8d17dd820e
Boards as persisted category (#3877)
* WIP

* WIP

* Removed unused webapp util

* Added server tests

* Lint fix

* Updating existing tests

* Updating existing tests

* Updating existing tests

* Fixing existing tests

* Fixing existing tests

* Fixing existing tests

* Added category type and tests

* updated tests

* Fixed integration test

* type fix

* removed seconds from boards name

* wip

* debugging cy test

* Fixed a bug preventing users from collapsing boards category

* Debugging cypress test

* CI

* debugging cy test

* Testing a fix

* reverting test fix

* Handled personal server

* Fixed a case for personal server

* fixed a test
2022-10-26 16:38:03 +05:30
Miguel de la Cruz
91f9f71bf7
Replace Block references to use pointers throughout all application layers (#3934)
* Replace Block references to use pointers throughout all application layers

* lint fixes

* gofmt file, lint fix

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
Co-authored-by: Scott Bishel <scott.bishel@mattermost.com>
2022-10-25 14:46:43 -06:00
Scott Bishel
e3ae682eea
Display board statistics (#4025)
* initial commit for displaying board statistics

* lint fixes

* i18n-extract, remove log entries, cleanup

* more lint fixes

* add check for standalone mode

* update tests due to change to NotImplemented

* lint fix

* revert removing empty comment lines

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-10-25 14:28:00 -06:00
Scott Bishel
cff39e7140
update to release 7.5.0 (#3890) 2022-10-03 11:55:20 -06:00
Miguel de la Cruz
dfa9d8f452
Update user store to return the updated entities after inserting / patching them (#3843) 2022-09-15 13:58:20 +02:00
Miguel de la Cruz
08c0b7a2fd
Refactor error usage from the store level up and add API helpers (#3792)
* Refactor error usage from the store level up and add API helpers

* Complete API tests

* Fix merge errorResponse calls

* Remove ensure helpers to allow for custom messages on permission errors

* Fix bad import and call

* Remove bad user check on auth that was added as part of the main merge

* Fix empty list test

* Replace deprecated proxy calls to ioutil.ReadAll with io.ReadAll

* Add information to the NotFound errors

* Add context to all remaining errors and address review comments

* Fix linter

* Adapt the new card API endpoints to the error refactor

* Remove almost all customErrorResponse calls

* Add request entity too large to errorResponse and remove customErrorResponse

* Fix linter
2022-09-13 12:18:40 +02:00
Scott Bishel
01eb95a6d2
Update to version 7.4.0 (#3819) 2022-09-09 11:37:03 -05:00
Doug Lauder
4652a15bab
Card APIs (#3760)
* cards apis wip

* create card API

* validate cards when creating

* create card fixes

* patch card wip

* wip

* unit test for createCard; CardPatch2BlockPatch

* unit test for PatchCard

* more APIs

* unit tests for GetCardByID

* register GetCard API

* Set FOCALBOARD_UNIT_TESTING for integration tests

* integration tests for CreateCard

* more integration tests for CreateCard

* integtration tests for PatchCard

* fix integration tests for PatchCard

* integration tests for GetCard

* GetCards API wip

* fix merge conflict

* GetCards API and unit tests

* fix linter issues

* fix flaky unit test for mySQL

* Update server/api/api.go

Co-authored-by: Miguel de la Cruz <mgdelacroix@gmail.com>

* Update server/api/api.go

Co-authored-by: Miguel de la Cruz <mgdelacroix@gmail.com>

* address review comments

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
Co-authored-by: Miguel de la Cruz <mgdelacroix@gmail.com>
2022-09-08 13:01:33 +02:00
Doug Lauder
2035337049
getBlocks store API with query options (#3755) 2022-08-30 15:56:41 +02:00
Harshil Sharma
63edf2c987
Props to preferences (#3722)
* Added tab;le creation migration

* WIP

* Finished base impl

* Added MySQL migration

* WIP

* Added personal server store methods

* WIP

* Fixed webapp tests

* Updated server tests

* generated code

* generated code

* generated code

* used raw queries instead of plugin methods to avoid updating productapi package

* Added API doc

* Added sqlite migratins

* used plugin APIs again s=instead of raw queries

* WIP

* Added missed case of SQL migration where personal server can run on Postgres and MySQL

* CI

* Removed unsupported POSL operator

* Low on caffine. Making silly mistakes

* json handling

* int test

* hope tests pass

* Fix incorrect column size

* Webapp lint fixes

* remived debug code

* Updated moigration version

* Review fixes
2022-08-29 12:55:12 +05:30
Jesús Espino
2b39745f68
Adding the permissions for commenter + viewer roles (#2882)
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
Co-authored-by: Paul Esch-Laurent <paul.esch-laurent@mattermost.com>
2022-08-24 15:36:28 -05:00
Doug Lauder
0ffc721e64
Add Preferences service API for product and plugin (#3727)
* Add Preferences service API for product and plugin

* add missed switch case

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-08-24 09:08:56 +05:30
Scott Bishel
0403c22f3c
Post message channel change (#3717)
* initial implementation

* checking changes

* use boards bot

* update mocks

* linter fixes

* linter fixes

* clean up

* revert manifest change

* another lint fix

* use common error

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-08-23 08:48:41 -06:00
Doug Lauder
a91e1f1758
Remove BoardID field from BlockPatch, ensuring patching a block cannot change boardID (#3719) 2022-08-22 15:57:22 -04:00
Miguel de la Cruz
831dff6192
Print log server information on plugin run (#3711)
* Print log server information on plugin run

* Add LogServerInfo to product mode

* Fix log location
2022-08-19 13:16:18 -04:00
Doug Lauder
765fbc88e9
Register API router in product mode (#3700)
* register API router in product mode

* period in comment (really?)
2022-08-17 17:50:01 +02:00
Doug Lauder
c1f2ae6316
Rest API reorganization (#3624)
* reorg API

* reorg api

* fix system route

* remove newline

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-08-10 08:20:42 -04:00
Harshil Sharma
ab02e98831
Duplicate board retain category (#3395)
* Converted synthetic membership to natuaral if needed

* Creating duplicated board to same category as parent board

* fixed tests

* fixed an incorrect API path in client

* Added logic to prevent jumping of new board between categories

* fixed lint error
2022-08-10 16:31:34 +05:30
Harshil Sharma
e855a37c21
Persist category state (#3579)
* WIP

* Finished impl

* Finished impl

* Added tests

* Refactored SQL migraiton into two migration to keep DDL isolated
2022-08-08 14:55:47 -06:00
Shivashis Padhi
f00b5c9e61
[MM-43781] Feature: boards insights (#3005)
* Add boilerplate functions and handlers for boards insights

* Fix function signatures to add 'duration' parameter, fix where clauses in db queries

* Fix where clause to include boards of which userId in parameter is a member

* Modify queries to work with sqlite, postgres, mysql

* Integration tests, and results of make generate

* Lint Fixes

* Add icons to board insights

* Lint fixes

* Format insights queries without squirrel to fix parameterization issues

* Add tests for sqlstore utility functions

* Improve team insights tests by creating 2 boards

* Refactor endpoints/app to adhere to developments in 7.0 release

* Refactor queries to use squirrel

* Lint fixes

* Fix client, integration tests

* Remove old integration tests

* Add storetests, refactor functions to handle authorized board_ids

* Make queries compatible with mysql, sqlite

* Add app tests

* Fix lint errors

* Revert makefile changes, fix docstring in api

* Lint fixes and doc correction suggested by @wiggin77

* Fix mock store call count error

* adding client code

* Make the following changes

 - use serviceAPI to get user.Timezone
 - rename licenseAndGuestUserCheck to insightPermissionGate, and handle returned error better
 - validate page, perPage parameters aren't < 0

* Lint fix

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
Co-authored-by: Benjamin Cooke <benjamincooke@Benjamins-MacBook-Pro.local>
2022-08-08 11:42:02 +05:30
Rajat Dabade
dcdea6d7a5
Unit test to GenerateBlockId for defaultTemplateId (#3518)
* Unit test to GenerateBlockId for defaultTemplateId

* Linter fixed
2022-08-03 16:38:37 -06:00
Doug Lauder
158f28ec29
Upgrade dependencies: mmserver, plugin-api, opengraph (#3525)
* move gowork app to root build dir

* bump versions: mattermost-server, mattermost-plugin-api, opengraph

* add go.work to .dockerignore

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-08-02 19:02:35 -04:00
Rajat Dabade
5d462b8154
Custom template's default card template works (#3335)
* Translated using Weblate (Malayalam)

Currently translated at 100.0% (303 of 303 strings)

Translation: Focalboard/webapp
Translate-URL: https://translate.mattermost.com/projects/focalboard/webapp/ml/

* Update translation files

Updated by "Cleanup translation files" hook in Weblate.

Translation: Focalboard/webapp
Translate-URL: https://translate.mattermost.com/projects/focalboard/webapp/

Update translation files

Updated by "Cleanup translation files" hook in Weblate.

Translation: Focalboard/webapp
Translate-URL: https://translate.mattermost.com/projects/focalboard/webapp/

Update translation files

Updated by "Cleanup translation files" hook in Weblate.

Translation: Focalboard/webapp
Translate-URL: https://translate.mattermost.com/projects/focalboard/webapp/

* Translated using Weblate (German)

Currently translated at 100.0% (312 of 312 strings)

Translation: Focalboard/webapp
Translate-URL: https://translate.mattermost.com/projects/focalboard/webapp/de/

* Resolved the issue of default template not working

* Linter fixes

* Removed defaultTemplateID from inbuild templates

Co-authored-by: Varghese Jose <varghese.jose@tutanota.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: jprusch <rs@schaeferbarthold.de>
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-07-29 11:27:18 -06:00
Miguel de la Cruz
e1c747d08b
Update Boards version to 7.3 (#3382) 2022-07-18 12:05:59 -06:00
Miguel de la Cruz
4b0fb92fba
Multi product architecture (#3381)
- provides support for compiling Boards directly into the Mattermost suite server
- a ServicesAPI interface replaces the PluginAPI to allow for implementations coming from pluginAPI and suite server.
- a new product package provides a place to register Boards as a suite product and handles life-cycle events
- a new boards package replaces much of the mattermost-plugin logic, allowing this to be shared between plugin and product
- Boards now uses module workspaces; run make setup-go-work
2022-07-18 13:21:57 -04:00
Miguel de la Cruz
d093eef2d9
Revert "Multi product architecture (#3309)" (#3373)
This reverts commit 605c0079eb.
2022-07-15 08:04:35 +02:00
Doug Lauder
605c0079eb
Multi product architecture (#3309)
* skeleton lifecycle

* bare minimum to satisfy mm-server import

* added boards_imports.go

* move boards_imports.go to correct package

* bump mmserver version; remove replace in go.mod; use module workspaces; remove logger service

* rename product.go --> boards.go

* add FileInfoStore and Cloud services for product; create minimal pluginAPI interfaces for all packages

* rename Boards -> BoardsProduct

* compile success

* remove hooks service; guard for nil BoardsApp

* update to latest mmserver ver

* upgrade mmserver to master tip

* upgrade mmserver to master tip

* bump plugin-api to master tip

* fix users service

* fix OnActivate crash; normalize AppError returns

* fileBackend interface for server/app

* feature flag

* bump mmserver version

* fix linter errors

* make go.work when linting

* fix go.work creation for CI

* add execute flag for script

* fix more linter errors

* always create a go.work

* fix ci go.work

* OS agnostic go.work generator

* fix path

* fix path again

* partially disable cypress test

* fix case Id --> ID

* bump mmserver version

* include  in go.work for dev

* addressed review comments.

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-07-15 07:51:50 +02:00
Scott Bishel
573ea54153
add BoardID to limited card (#3341) 2022-07-11 14:01:46 +02:00
Scott Bishel
22aae37dd1
User updates (#3244)
* retrieve additional user fields

* implement config setting

* cleanup

* fix tests

* remove unused constant

* fix more tests

* add tests, cleanup

* lint fixes

* revert bad lint fixes

* more merge fixes

* update to use personal setting

* add user settings

* update package-lock.json

* lint fixes

* npm audit fix

* update tests

* Revert "lint fixes"

This reverts commit 6a50d335ca.

* Revert "update package-lock.json"

This reverts commit 1117e557e4.

* Revert "npm audit fix"

This reverts commit 77ea931c77.

* Revert "Revert "lint fixes""

This reverts commit 3ebd81b9fa.

* restore to original

* fix for empty prefs

* fix bad merge

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-07-08 08:43:43 -06:00
Jesús Espino
46fdbf9048
Initial Boards+Channels implementation (#3110)
* Initial Boards+Channels implementation

* Adding draft code to list the boards in a channel

* Adding the hability to link/unlink channels (fake channel for now)

* Simplify slight the migrations

* WIP

* More changes to improve the implementation

* Adding partial implementation of linking channel from board

* Allow linking in both directions

* Removing unused file

* More work on channel binding

* some refactoring

* Improving code quality and interface

* More improvements

* Changing the API to search channels

* Adding a limit of 10 channels in search

* Add confirmation on linking public channels

* Improve a bit the styling of the confirmation modal

* Showing the current linked channel

* Adding link board confirmation to channel interface

* Fixing tests and linter errors

* Fixing backend tests

* Adding permissions tests

* Fixing linter errors

* Fixing small things

* Fixing some typescript errors

* Adding new boardSelectorItem tests

* Improving a bit tests

* Adding jest unit tests

* Remove duplicated implementation (from merge, I guess)

* Adding missed files

* Addressing some of the PR review comments

* Removing unneeded new wrapIntl implementation

* Moving NotSupportedError to the store package to be share between all the store implementations or layers

* Fixing one of the pendings ToDo

* Creating a constructor for the NotSupportedError

* Fixing linter error
2022-07-07 16:46:53 +02:00
Harshil Sharma
2ac56dbfba
Ported view limits to main (#3252)
* Ported view limits to main

* lint fix

* Added tests

* Added tests

* Fixed a server test

* fixed webapp test

* fixed webapp test

* fixing some tests

* implement check when duplicating views

* Fixed webapp tests

* Fixed webapp tests

* Fixed webapp tests

* Trying without race test

* Lets race again

* Made error descriptive

* Minor improvements

* Updates snapshots for changed alt text

* Updates snapshots for changed alt text

Co-authored-by: Scott Bishel <scott.bishel@mattermost.com>
2022-06-29 18:05:24 +05:30
Scott Bishel
3e9219ab0f
GH-3050 - Fix deleting empty property (#3249)
* remove check for blocks on patch, a delete may not have blocks

* remove no longer necessary tests

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-06-20 14:16:02 -06:00
Miguel de la Cruz
fa6de94070
Adds limits implementation to the server (#3213)
* Adds limits implementation to the server

* Add test for deleted boards on active card count
2022-06-15 12:17:44 +02:00
Jesús Espino
d3edf2f698
Adding the board default role for public boards (#2884)
* Adding the default role concept in the backend

* Adding the interface part

* Fix golang-ci lint errors

* Adding local permissions tests

* Address PR review comments

* Improving the code a bit

* Another small fix

* Renaming DefaultRole to MinimumRole

* Setting the minimum role at minimum to check the permissions per roles in the integration tests

* Adding the new minimum role behavior

* Fixing some tests

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-05-16 10:09:11 -06:00
Scott Bishel
073ef8af75 update to version 7.2.0 2022-05-11 17:25:46 -06:00
Scott Bishel
f4541630e7
update for v0.17.0 (#2943) 2022-04-28 14:41:38 -06:00
Doug Lauder
8a4672bd23
GH-2890 Copy files when duplicating boards (#2915)
* copy files when duplicating boards

* fix unit tests

* Update server/app/boards.go

Co-authored-by: Miguel de la Cruz <mgdelacroix@gmail.com>

* Update server/app/boards.go

Co-authored-by: Miguel de la Cruz <mgdelacroix@gmail.com>

* fix review commit

Co-authored-by: Miguel de la Cruz <mgdelacroix@gmail.com>
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-04-25 10:37:57 -06:00
Doug Lauder
936cc820ab
Standardize err not found (#2834)
* cleanup log levels

* Standardize on model.IsErrNotFound instead of the mix of error checking done previously.

* fix merge conflicts

* fix comment typo

* add description to asserts
2022-04-20 11:02:12 -04:00
Chen-I Lim
154c344077
Fix #2800. Add missing Swagger docs (#2801)
* Fix #2800. Add missing Swagger docs

* Add note that timestamps are  in miliseconds

* Fix merge, update docs.
2022-04-15 10:21:10 -07:00
Scott Bishel
90677ba7b8
GH 2393 Move calculationColumns from board to view (#2762)
* move calculation columns to view

* update tests

* add conversion for column calculations

* remove column_Calculations from boards and boards_history

* updates from testing

* update for sqlite

* fixes from testing

* fix lint, cleanup

* update templates,remove field from boards

* revert bad changes

* update snapshots

* Update server/services/store/sqlstore/migrations/000017_add_teams_and_boards.up.sql

Co-authored-by: Miguel de la Cruz <miguel@mcrx.me>

Co-authored-by: Miguel de la Cruz <miguel@mcrx.me>
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-04-14 10:33:57 -06:00
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
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