* WIP
* Added migrations
* Updating store method
* WIP
* WIP
* Updated DND
* WIP
* WIP
* WIP
* WIP
* WIP
* wip
* WIP
* Adding new DB tool
* Used migration functions in new migrations
* Unique constraint migration
* Unique constraint migration
* Added SQLITE migrations
* Added SQLITE support in few more migrations
* Added SQLITE support in few more migrations
* WIP
* Used old-fashioned way to add unique constraint
* Using oldsqlite method
* Using oldsqlite method
* Fixed all store and app layer tests
* fixed integration tests
* test and lint fix
* Updated migration for MySQL and Postgres on personal server
* Types fix
* sqlite fix
* fix typo
* misc cleanup
* added new tests
* added new tests
* de-duping input for postgres
* integration tests, rmeoved uneeded migration
* Added some migration tests
* Added some migration tests
* Fixed a test
* completed migration tests
* completed migration tests
* Removed leftover debug statements
Co-authored-by: Mattermost Build <build@mattermost.com>
* 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.
* 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>
* 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
* 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
* 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>
* 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
* 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
* 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>
- 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
* 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>
* 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
* 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>
* 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>
* 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>