1
0
mirror of https://github.com/mattermost/focalboard.git synced 2024-12-24 13:43:12 +02:00
Commit Graph

315 Commits

Author SHA1 Message Date
Harshil Sharma
a3a753591e
Fixed multiple styling fixes (#3368)
* Fixed multiple styling fixes

* fix tests

* Update snapshots

* Update snapshots

Co-authored-by: Miguel de la Cruz <miguel@mcrx.me>
2022-07-15 08:51:00 +02: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
Miguel de la Cruz
3ae821d2e8
Refactor websockets state and lifecycle (#3315)
* Refactor websockets state and lifecycle

This PR moves the state of the authentication and subscriptions to the
websockets client, allowing for multiple components to communicate
with it and request subscriptions independently. With this change, the
lifecycle of the websockets client is now managed on a component, and
a hook is provided for easy access to it from individual components.

* Fix linter

* Integrating the new websockets in channels integration with the RHS and board selector

* Some small fixes around boards-channels relationship

* Make the boards unfurl to always use the current team

* Fixing weird behaviors in websockets and other small data related bugs in channel-board relationship

* Only warn if withWebSockets is used without a base connection

* Fix tests

* Fix linter

* Update snapshot

* Fixing plugin tests

Co-authored-by: Jesús Espino <jespinog@gmail.com>
2022-07-14 12:31:51 +02:00
Paul Esch-Laurent
ba64de9fa1
ci: test & lint mattermost-plugin (#3156)
* ci: test & lint `mattermost-plugin`

* chore: fix mattermost-plugin/webapp linting

* lint: fix eslint errors

* ci: run `make webapp-ci`

* test: fix non-idempotent snapshot tests

* chore: `npm run i18n-extract`

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-07-13 08:28:13 +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
Scott Bishel
de576ec5ff
update webapp dependencies (#3317) 2022-07-06 10:42:50 -06:00
Jesús Espino
d414d5cc5e
Showing only the right boards in the board switcher (#2971)
* Showing only the right boards board switcher

* Adding unit tests

* Fix linter error

* Addressing PR review changes

* Fixing compilation problem

* Fixing a couple of query errors

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
Co-authored-by: Harshil Sharma <harshilsharma63@gmail.com>
2022-07-05 12:56:22 +05:30
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
Paul Esch-Laurent
c704729561
main Cherrypick: Hidden card view via direct URL & unfurl (#3071) (#3126)
* Hidden card view via direct URL & unfurl (#3071)

* wip: directly view a hidden (limited) card

* wip: use `limited` from Card

* feat(plugin): render hidden message when unfurling

* feat: `limited` direct card view + tests

* style: apply eslint

* fix: `large` <Button>

* test: update snapshot

* fix: wrap raw SVG in TSX component for styling

* feat: open pricing modal instead of /pricing URL

* fix: close card modal when opening pricing modal

* test: update snapshots

* chore: update i18n strings

* chore(Makefile): tests & dependencies in plugin

* test(plugin): add BoardsUnfurl snapshot tests

* test(cypress): 'Log in' -> 'Login'

* chore: i18n extract

* fix: use globstar matching in `i18n-extract`

* fix: `i18n-extract`, the sequel

* fix: / -> /error button `Login` to `Log in`

* style: fix linting

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

* fix: add `limited` to `Card`

* test: fix tests

* test: fix BoardsUnfurl

* chore: `npm run i18n-extract``

* Reducing the props used in the svgs to the minimum needed

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
Co-authored-by: Scott Bishel <scott.bishel@mattermost.com>
Co-authored-by: Jesús Espino <jespinog@gmail.com>
2022-06-21 11:22:47 -06:00
Doug Lauder
90fcae066b
Multi product architecture (#3258)
* skeleton lifecycle

* bare minimum to satisfy mm-server import

* added boards_imports.go

* move boards_imports.go to correct package
2022-06-21 11:49:01 -04:00
Scott Bishel
34e7f88f53
add cyclo complexity, update migrate() to use defer (#3257) 2022-06-21 09:12:55 -06:00
Harshil Sharma
6d243e1c0e
Registered personal-server specific APIs only when running as personal server (#3228) 2022-06-16 16:16:35 +05:30
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
Doug Lauder
e4231198d5
Multi product architecture (#3218)
* skeleton lifecycle

* bare minimum to satisfy mm-server import
2022-06-14 09:00:09 -06:00
Harshil Sharma
2ab4e95289
Updated go version (#3189)
* Updated go version

* Generated mocks

* lint fix

* lint fix

* lint fix

* Updated gitlab builder image
2022-06-06 10:18:21 +02:00
Doug Lauder
11bd3720f1
Refactor notify init (#3043)
* remove unneeded store interfaces

* - reduce dependencies for notifications service
- notifications service no longer concerned with web socket notifications

gnored, and an empty message aborts the commit.

* use app to add member to board

* remove unneeded API

* remove dependency on app package

* fix webapp jest

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-05-16 11:53:41 -04:00
Scott Bishel
073ef8af75 update to version 7.2.0 2022-05-11 17:25:46 -06:00
Doug Lauder
554a790e57
standardize env var naming (#3031) 2022-05-05 15:49:34 -04:00
Doug Lauder
1ff28087f8
GH-2469 Add board-bot to team (#3026)
* add bot to team before any mention or subscription notification
2022-05-04 16:10:26 -04:00
Asaad Mahmood
fb46097e72
2889 - Hiding images on share modal on personal (#2925)
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-05-04 13:53:46 -06:00
Scott Bishel
3ccebe8506
update min version in Plugin and build (#3018) 2022-05-04 07:01:49 -06:00
Harshil Sharma
aec7c9de10
Fixed incorrect navigation bug (#3004) 2022-05-02 16:59:39 -06:00
Scott Bishel
f4541630e7
update for v0.17.0 (#2943) 2022-04-28 14:41:38 -06:00
Scott Bishel
5efcc4dcac
Implement Boards Data Retention - Take 2 (#2859)
* implement boards data retention

* cleanup logs

* revert removal

* update logger creation
2022-04-25 12:58:08 -06:00
Harshil Sharma
478c091c53
Fixed a bug preventing any navigation in Mattermost desktop with subpath (#2922) 2022-04-25 10:43:09 +02: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
Doug Lauder
99882bf197
Include plugin unit tests in CI via makefile; fix unit tests (#2848)
* include plugin unit tests in CI via makefile; fix unit tests

* include hello endpoint for unit test and web service up check
2022-04-20 11:01:40 -04:00
Scott Bishel
74053655b6
Revert "implement data retention for boards (#2588)" (#2843)
This reverts commit 0489de8bd3.
2022-04-19 09:18:31 -06:00
Scott Bishel
39e8e466e0
fix for following button on card (#2833) 2022-04-18 12:52:28 -06:00
Scott Bishel
0489de8bd3
implement data retention for boards (#2588)
* implement data retention for boards

* fix lint errors

* start of orphans

* add and update tests

* fixes for merge

* fix tests

* fix lint

* reset from testing

* update setting unit test variable

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-04-18 09:03:42 -06:00
Doug Lauder
ebf02366b4
revert ServerRoot path change (#2817) 2022-04-14 18:03:39 -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
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
dependabot[bot]
42d24d279a
Bump lodash-es from 4.17.14 to 4.17.21 in /mattermost-plugin/webapp (#2544)
Bumps [lodash-es](https://github.com/lodash/lodash) from 4.17.14 to 4.17.21.
- [Release notes](https://github.com/lodash/lodash/releases)
- [Commits](https://github.com/lodash/lodash/compare/4.17.14...4.17.21)

---
updated-dependencies:
- dependency-name: lodash-es
  dependency-type: indirect
...

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-04-13 14:07:00 -06:00
Scott Bishel
36db054036 removing else section as its not used 2022-04-12 14:19:15 -06:00
Scott Bishel
78ce579583 update link for teams 2022-04-12 10:51:06 -06: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
Jesús Espino
67dfb4e118 Merge remote-tracking branch 'origin/main' into issue-2617 2022-04-04 17:23:31 +02:00
Doug Lauder
a5565dcfa1
Generate templates archive at build time (#2577) 2022-03-30 18:10:11 -04:00
Doug Lauder
8541c3a356
Merge branch 'main' into issue-2617 2022-03-29 21:59:10 -04:00
Jesús Espino
aa9ebc237f
Fixing redirects on team change outside of boards (#2652) 2022-03-29 14:00:19 +02:00
Jesús Espino
837859838c Adding max file size limit 2022-03-29 13:25:16 +02:00
Andrew Zigler
a9d4a7457c
Streamline docs and fix broken links (#2656)
- reduce redundancy
- update Ubuntu install guide version
- update mattermost-plugin README for consistency
2022-03-29 10:14:10 +02:00
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
5df336cf46
Upgrading most of the webapp dependencies. (#2642)
* Most of the frontend libraries upgraded

* Upgrading the dependencies in mattermost-plugin

* Fixing some tiny poblems

* All jest tests passing

* Some other small upgrades and tests are passing

* Fixing compass-icons

* Fixing eslint

* Fixing unit test

* Fixing unit test
2022-03-25 17:07:49 -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
dependabot[bot]
73259e04a9
Bump minimist from 1.2.5 to 1.2.6 in /mattermost-plugin/webapp (#2616)
Bumps [minimist](https://github.com/substack/minimist) from 1.2.5 to 1.2.6.
- [Release notes](https://github.com/substack/minimist/releases)
- [Commits](https://github.com/substack/minimist/compare/1.2.5...1.2.6)

---
updated-dependencies:
- dependency-name: minimist
  dependency-type: indirect
...

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-23 17:31:14 -06:00
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
Michael Kochell
c8dea5b691
Merge pull request #2114 from mattermost/app-bar-icon
[MM-40214] Implement App Bar component
2022-03-09 12:01:58 -05:00
Scott Bishel
b41fd7b4e8
update to v0.16.0 (#2438) 2022-03-02 15:08:40 -07:00
Doug Lauder
ec91f1c71b
Error page (#2321)
* generic error page

* redirect from errorboundary

* clean compile

* wip redirect from error boundry

* error page displaying

* ensure i18n strings are preserved

* Updating error page UI

* Update webapp/i18n/en.json

Co-authored-by: Justine Geffen <justinegeffen@users.noreply.github.com>

* Update webapp/i18n/en.json

Co-authored-by: Justine Geffen <justinegeffen@users.noreply.github.com>

* Update webapp/i18n/en.json

Co-authored-by: Justine Geffen <justinegeffen@users.noreply.github.com>

* Update webapp/i18n/en.json

Co-authored-by: Justine Geffen <justinegeffen@users.noreply.github.com>

* Update webapp/src/errors.ts

Co-authored-by: Justine Geffen <justinegeffen@users.noreply.github.com>

* typo

* remove background image

* fix linter error

* fix cypress errors

* translation error page title

* fix package lock

* fix package.lock again

Co-authored-by: Asaad Mahmood <asaadmahmood@users.noreply.github.com>
Co-authored-by: Justine Geffen <justinegeffen@users.noreply.github.com>
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-03-02 13:46:12 -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
Harrison Healey
75e2862a80
MM-41176 Don't send Rudder requests when blocked (#2285)
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-02-16 19:11:19 +01:00
Scott Bishel
c7492fe0f1
wrap registration block to catch error (#2299)
* wrap registration block to catch error

* check for function existance rather than error

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-02-15 12:17:44 -07:00
Julien Tant
dfa5d54b16
use mattermost siteURL to determine rudder cookie domain (#2294) 2022-02-09 15:53:47 -07: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
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
Scott Bishel
5030b1e582
Update dependencies for webapp and mattermost-plugin/webapp (#2213)
* update for trim-newlines

* update for glob-parent

* update for fstream
2022-02-02 06:36:49 -07:00
Doug Lauder
65c783c270
Import/export moved to server + image support + streaming (#2201) 2022-02-01 19:01:29 -05:00
Scott Bishel
1df9e4ba14
update dependencies (#2207) 2022-01-31 15:29:19 -07:00
dependabot[bot]
7754bc6edf
Bump marked from 3.0.6 to 4.0.12 in /webapp and /mattermost-plugin/webapp (#2182)
* Bump marked from 3.0.6 to 4.0.10 in /mattermost-plugin/webapp

Bumps [marked](https://github.com/markedjs/marked) from 3.0.6 to 4.0.10.
- [Release notes](https://github.com/markedjs/marked/releases)
- [Changelog](https://github.com/markedjs/marked/blob/master/.releaserc.json)
- [Commits](https://github.com/markedjs/marked/compare/v3.0.6...v4.0.10)

---
updated-dependencies:
- dependency-name: marked
  dependency-type: direct:production
...

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

* upgrade marked to 4.0.12

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Scott Bishel <scott.bishel@mattermost.com>
2022-01-31 10:37:32 -07:00
Scott Bishel
7e0fb26875
implement registry for channel intro button (#2181) 2022-01-31 10:15:50 -07:00
Michael Kochell
4f0be45827
Merge branch 'main' into app-bar-icon 2022-01-21 14:35:01 -05: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
Jesús Espino
02dfb6eceb
Moving the history instance creation after the plugin initialization (to honor the SiteURL config) (#2109)
* Moving the history instance creation after the plugin initialization (to honor the SiteURL config)

* Fixing welcome page images urls generation

* Fixing share board url generation

* Fixing more subpath problems

* Adding some tests with subpath

* Adding subpath test to welcome page

* fix linter error
2022-01-17 20:21:25 +01:00
Scott Bishel
1aa60009ea
remove BoardsUnfurl feature flag (#2051)
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-01-17 10:07:50 -07: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
Michael Kochell
9401b1ea52
add app bar icon 2021-12-28 18:23:52 -05: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
Doug Lauder
487d59b790
don't notify @mnetioned user who are not members of channel (#1912) 2021-12-03 13:33:59 -05:00
Chen-I Lim
ed2c916afa
Update to v0.12 (#1904) 2021-12-01 14:55:47 -08:00
Carlos Tadeu Panato Junior
8630e099f5
dist: build linux/darwin arm64 targets (#1854) 2021-11-26 09:44:26 +01:00
Hossein
79ce416896
GH-1805: Replace unfurl link with card title (#1869)
* <Jump To Card>

* GOALNG Ci lint error

* ToDo Comment for internationalize Jump To Card
2021-11-25 09:05:32 -05:00
Scott Bishel
797d6bc04a
Implementation of Calendar MVP (#1741)
* initial commit

* turn on featureflag

* additional fixes

* update for using FullCalendar

* update to allow both calendars

* fix dnd, remove log messages

* fix lint, unit tests

* dates should use themselves for timezone offset

* fix for tests

* remove react-big-calendar

* remove react-big-calendar

* fix for handling feature flags changing

* clean up

* remove unit test

* update tests

* fix tests

* lint fixes

* add creating event, fixes

* linter fixes

* clean up

* add unit tests

* fixes

* update snapshots

* update test

* update snapshot

* disable test for now, timezone changes labels

* remove test to get to build

* remove snapshot

* feedback updates

* use getConfig instead

* linter fix

* more linter

* revert changes

* some fixes for issues

* fix for displaying new calendar

* fix for displaying new calendar

* add properties to cards

* add properties to cards

* read only implementation

* i18-extract

* implement unit tests

* implement unit tests

* fix test

* remove log statements

* remove feature flag from config

* updated icons

* Updating icons for calendar mvp

* Revert "Updating icons for calendar mvp"

This reverts commit e16e715e8a.

* Revert "updated icons"

This reverts commit 120b7b0b96.

* update for code reviews

* fix linter

* more feedback updates

* fix some styling

* fix lint errors

* Updating css

* Updating calendar css

* update for lint errors

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
Co-authored-by: Asaad Mahmood <asaadmahmood@users.noreply.github.com>
2021-11-24 14:00:20 -07:00
Chen-I Lim
91dc9def9b
Update version to 0.11.0 (#1859) 2021-11-22 16:15:03 -08:00
Miguel de la Cruz
d2bcb9ad66
Shows the version change banner only on plugin update and tries to reconnect when the interface is refreshed (#1807) 2021-11-13 12:03:53 +01:00
Miguel de la Cruz
e7c38c8822
Adds data migrations and the unique IDs migration (#1776)
* Adds data migrations and the unique IDs migration

* Adds GetSystemSetting tests

* Add log statements to data migrations

* Move migrations to the store and ensure they follow an order mixing database and data migrations

* Fix system settings

* Add tests for unique id migration

* Small comment change

* Make a couple of methods private and wrap the migration in a transaction

* Update public methods

* Add database mutex to data migrations

* Create server params and pass a mutex factory to the store

* Fix plugin linter

* Make isPlugin private

* Fix comment typo

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

Co-authored-by: Doug Lauder <wiggin77@warpmail.net>
2021-11-11 17:01:43 +01:00
Asaad Mahmood
8d0e036719
Updating unfurl UI (#1794)
* Updating unfurl UI

* Updating remainder
2021-11-10 12:19:16 -08:00
Miguel de la Cruz
3ede6df028
Show a refresh banner on plugin update (#1720)
* Reload plugin on plugin update

* Add a banner that shows when updating the plugin and asks the user to reload

* Fix linter
2021-11-10 16:33:56 +01:00
Hossein
520f1e65e7
minimum changes required (#1763) 2021-11-09 14:50:54 -05:00
Scott Bishel
f74eea11ba
Fix for feature flag handling (#1753)
* fix for handling feature flags changing

* update tests

* fix tests

* lint fixes

* feedback updates

* use getConfig instead

* linter fix

* more linter

* revert changes

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2021-11-09 07:56:04 -07:00
Jesús Espino
0947babe50
Applying the plugin theme changes based on websocket event (#1759) 2021-11-08 07:52:31 -07:00
Scott Bishel
9b9682f626
Create FeatureFlags in configurations (#1622)
* create FeatureFlags in configurations

* update for unit tests

* update unit tests, go.mod

* update go.sum

* fix lint errors

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2021-11-01 19:12:43 -06:00
Hossein
690d424dfe
Fix Unfurl Bugs (#1668) 2021-10-27 14:53:53 -04:00
Scott Bishel
720e59fc10
add dropdownText when registering plugin (#1671) 2021-10-27 09:26:51 -06:00
Chen-I Lim
ae552e260c
Update to v0.10 (#1633) 2021-10-22 13:59:05 -07:00
Hossein
eed1f86c15
Unfurl Focalboard Link (#1081) 2021-10-22 12:13:31 -04:00
Doug Lauder
d49a802c3c
fix card URLs with no viewid (#1571)
* fix card URLs with no viewid

* revert ServerRoot change
2021-10-15 14:23:35 -04:00
Asaad Mahmood
c332e455c1
Updating splash screen sizing for image and content (#1399)
* Updating splash screen sizing for image and content
2021-10-04 16:58:56 -04:00
Jesús Espino
17991b9161
Live Watch make target for improve the development experience (#1389)
* Live Watch make target for improve the development experience

* Fixing the pluginctl enable/disable code

* Addressing PR review comments
2021-10-04 10:06:54 +02:00
Christopher Speller
ee721c89f1
Fix tiny icons caused by css pollution (#1327) 2021-10-04 10:06:19 +02:00
Scott Bishel
f92727f993
add additional telemetry tracking (#1220)
* add additional telemetry tracking

* add additional telemetry tracking

* update name of event

* update logging

* remove log lines
2021-09-29 16:37:20 -06:00
Hossein
7fae65ea02
Start Welcome Page (#1231)
* start welcome page

* setup template

* setup forwarding logic

* fix linting errors

* Updating UI

* Use intl strings

* Address comments

* go to baords welcome

* Fix image problem

* fix linting

* fix getting shown wrong things

* fix build issues

* fix cypress test and non plugin

* Fix bugs

* remove console

* Add welcome page

* address comments

Co-authored-by: Asaad Mahmood <asaadmahmood@users.noreply.github.com>
2021-09-28 09:51:32 -04:00
Hossein
ec6bee9d65
Fix issue (#1329) 2021-09-27 15:07:35 -04:00
Jesús Espino
4fe1cd8ff6
Making compilation cache more reusable (#1301) 2021-09-21 12:51:04 -04:00
Jesús Espino
d6be51de76
Fix theming problems on account settings and custom-status modals (#1202)
Co-authored-by: Scott Bishel <scott.bishel@mattermost.com>
Co-authored-by: Hossein <hahmadia@users.noreply.github.com>
2021-09-21 16:29:08 +02:00
Harshil Sharma
26e6512626
Open dashboard from apps witcher (#1295) 2021-09-21 13:50:16 +05:30
Doug Lauder
6daaf3ef59
ensure @mentions only sent to team members (#1216) 2021-09-20 17:32:47 -04:00
Chen-I Lim
33e717d9bc Update version to v0.9.1 2021-09-17 12:56:47 -07:00
Scott Bishel
838c6f90b7
Config for share board (#1187)
* initial commit for setting shared board configuration

* add unit test

* working again

* update default config

* initial commit for setting shared board configuration

* add unit test

* working again

* update default config

* add unit tests, some clean up

* more cleanup

* more clean up

* remove header text for GH-1105

* remove unnecessary logs

* update text

* fix lint errors

* more lint fixes

* webapp lint fixes

* Update mattermost-plugin/plugin.json

Co-authored-by: Justine Geffen <justinegeffen@users.noreply.github.com>

* Update mattermost-plugin/plugin.json

Co-authored-by: Justine Geffen <justinegeffen@users.noreply.github.com>

* update for review, sync with main

Co-authored-by: Justine Geffen <justinegeffen@users.noreply.github.com>
2021-09-16 13:31:02 -06:00
Miguel de la Cruz
f7946821a0
Propagate block changes to all of the cluster nodes in plugin mode (#1213)
Co-authored-by: Jesús Espino <jespinog@gmail.com>
2021-09-16 12:18:11 +02:00
Doug Lauder
a76385268e
MM-38342 plugin logging (#1193)
- bump chat server version
- plugin logging adapter
2021-09-15 09:01:05 -04:00
Harshil Sharma
a76c96f812
Updated target link form app switcher and saved last visited workspace (#1198)
* Saving last visited workspace ID

* Open dashboard when opening Focalboard form global app switcher

* Fixed lint errors
2021-09-15 12:18:25 +05:30
Chen-I Lim
438a97e3cf
Fix #1203. Require v6.0.0 for plugin (#1204) 2021-09-14 09:53:52 -07:00
Asaad Mahmood
1836f9527f
Focalboard UI Fixes (#1194)
* 1173 - Show description fix

* 1191 - Octo-block Hover fix

* 1189 - Updating width of kanban header

* 1172 - Updating menu in the header

* Updating css

* Updating menu css

* Updating menu css
2021-09-14 20:58:37 +05:00
Jesús Espino
731163bcea
Not using the mattermost-redux getTheme version because is not matching the mattermost-webapp version (#1186)
Co-authored-by: Harshil Sharma <harshilsharma63@gmail.com>
2021-09-14 16:43:52 +05:30
Doug Lauder
8425f53b2a
@mention support (#1147) 2021-09-13 15:36:36 -04:00
Jesús Espino
fae2ac150e
Respect the mattermost icon when focalboard is used as a plugin (#1185) 2021-09-10 22:34:26 +02:00
Asaad Mahmood
112b627f80
1095 - Updating global menu color for plugin (#1157)
Co-authored-by: Scott Bishel <scott.bishel@mattermost.com>
2021-09-10 15:30:47 +05:00
Harshil Sharma
08db4fed61
Workspace switcher (#1052)
* API WIP

* WIP

* Finished changes

* Fixed colors:

* Don't enforce charset adn collation in migration, pick from database DSN

* Added MySQL query

* Updated mocks

* Added tests

* Lint fixes

* Fixed typo and removed unsed style

* Checked in a snapshot

* Updated snapshot

* Updated Cypress test

* Updated Cypress test

* Updated Cypress test

* Fixed review comments

* Fixed tests

* Added default collation for MySQL

* Added documentation for ensuring correct database collation

* Updated migrations

* Fixed a bug with collation

* Fixed lint errors

* Used correct collation

* debugging

* Updating css

* Minor UI changes

* USe inbuilt default collation

* Used only charset for mysql

* Fixed linter issue:

* Added migration for matching collation

* Reverted local config changes

* Reverted local config changes

* Handled the case of personal server running on MySQL

* WIP

* Now running collation matching migration onlyt for plugins

* Minor optimization

* Multiple review fixes

* Added group by clause to primary query

* Supported for subpacth

Co-authored-by: Asaad Mahmood <asaadmahmood@users.noreply.github.com>
2021-09-08 10:22:03 +05:30
Harshil Sharma
de5f06c426
Added support for subpaths in siteURL (#1110)
* Added support for subpaths in siteURL

* Removed a debug statement

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

* Updated channel header to support subpaths

Co-authored-by: Jesús Espino <jespinog@gmail.com>
2021-09-07 10:08:02 +05:30
Asaad Mahmood
35f51d2999
1112 - Updating button active state in viewHeader (#1138)
* 1112 - Updating button active state in viewHeader

* Updating UI for buttons
2021-09-02 21:22:43 +05:00
Scott Bishel
94e6e8a9f7
Plugin telemetry (#1069)
* implement webapp telemetry

* cleanup

* remove imports, update events

* change event title

* update for lint

* add test, update filename

* linter fix

* fix field name

* revert changes

* fix test

* update builds

* fix workflows

* fix workflows

* fix workflow

* temp checkin

* remove log lines

* updates from peer review
2021-09-01 15:53:27 -06:00
Scott Bishel
f10b4a82a3
fix for displaying global nav in focalboard (#1132) 2021-08-31 11:24:41 -06:00
Miguel de la Cruz
583d9f8a10
Add retry mechanism when opening WSClient in plugin mode (#1135)
* Add retry mechanism when opening WSClient in plugin mode

* Fix linter

* Add return when sending command
2021-08-31 12:01:17 +02:00
Scott Bishel
08f34d2f63
update marketplace name/description (#1118)
Co-authored-by: Miguel de la Cruz <miguel@mcrx.me>
2021-08-27 14:14:23 +02:00
Miguel de la Cruz
e10229031f
Add a plugin adapter to reuse MM websocket in plugin mode (#1079)
* Add a plugin adapter to reuse MM websocket in plugin mode

* Remove development replace

* Switch all go.mod files to use 1.16

* Fix linter issues

* Fix linter

* Update server version to contain the new hooks
2021-08-27 10:59:14 +02:00
Jesús Espino
79f026b9a9
Making favicon store/restore more robust (#1093) 2021-08-26 10:14:41 +02:00
Doug Lauder
b58497e2ea
Replace mlog with server v6 mlog (#1088)
* replace mlog with server v6 mlog
* remove FB mlog from plugin
2021-08-25 16:08:01 -04:00
Chen-I Lim
791c600151
Fix #1086. Update channel header button hint. (#1103)
Co-authored-by: Hossein <hahmadia@users.noreply.github.com>
2021-08-25 10:48:51 -07:00
Jesús Espino
dfb34d81a2
Automatically add the .focalboard-body class to all sass classes on plugin mode (#1068)
* Automatically add the .focalboard-body class to all sass classes on plugin mode

* Addressing review comment
2021-08-25 13:05:12 +02:00
Chen-I Lim
5f8e08b79e
Fix #1086: Update channel header button hint (#1087) 2021-08-24 11:48:29 -07:00
Miguel de la Cruz
f9c76d8129
Update focalboard to be compatible with mattermost v6 (#1020)
* Update focalboard to be compatible with mattermost v6

* Point to the new plugin API version

* Fix collectors linter issues

* Move all CI jobs to 1.16
2021-08-24 12:13:58 +02:00
Jesús Espino
b5d58060cf
Fixing some color variables (#1038) 2021-08-19 12:26:26 +02:00
Asaad Mahmood
307fee78fc
GH-994 - Updating color for global header menu (#1012)
* Updating color for global header menu

* Updating css

Co-authored-by: Jesús Espino <jespinog@gmail.com>
2021-08-19 10:28:29 +02:00
Jesús Espino
83a45ae706
Fixing favicon changes on other browsers (#1017) 2021-08-17 22:50:49 +02:00
Jesús Espino
a8b0f68e1e
Storing the last channel viewed to workaround the fact that playbooks is not bind to channels (#974)
Co-authored-by: Scott Bishel <scott.bishel@mattermost.com>
2021-08-14 17:24:14 +02:00
Jesús Espino
a442f08ed3
Using an icon name instead of the component for registerProduct (#951) 2021-08-12 17:06:09 +02:00
Jesús Espino
4dc1c6db4f
Restoring mattermost favicon on leave focalboard (#948) 2021-08-12 12:58:17 +02:00
Jesús Espino
2aac030ee7
Fix global header menu z-index for focalboard (#950) 2021-08-12 12:57:07 +02:00
Jesús Espino
aaa0b0dccc
Moving logo and title to the global header (#947)
* Moving logo and title to the global header

* Fixing problems with the new header

* Fixing lint problems
2021-08-12 11:40:09 +02:00
Jesús Espino
2287931882
Fixing a weird import bug on react-day-picker (#933)
Co-authored-by: Scott Bishel <scott.bishel@mattermost.com>
2021-08-11 11:55:41 -06:00
Jesús Espino
ea140ba99b
Picking the default theme from the user preferences on reload when it is a plugin (#923)
Co-authored-by: Hossein <hahmadia@users.noreply.github.com>
2021-08-11 11:53:53 +02:00
Jesús Espino
ca40dda8f8
Adding backward compatibility for 5.38 (#922)
* Adding backward compatibility for 5.38

* Fixing problem with urls
2021-08-11 11:10:52 +02:00
Jesús Espino
92fdd97e16
Fixing focalboard personal server icon (#921) 2021-08-11 00:16:57 +02:00
Jesús Espino
13ef01a862
Fix share boards on plugin mode (#898)
Co-authored-by: Scott Bishel <scott.bishel@mattermost.com>
2021-08-10 11:46:09 +02:00
Chen-I Lim
904dfc2158
Add server id to plugin telemetry (#903) 2021-08-06 12:03:56 -07:00
Jesús Espino
1914b5a921
Making theming compatible with mattermost on plugin mode (#883)
* Making theming compatible with mattermost on plugin mode

* Fixing some variables

* Adding isFocalboardPlugin function

* Fixing some styles

* Improving styles for boards icon in the global switcher
2021-08-06 19:58:28 +02:00
Chen-I Lim
7d2a58081c Update version to v0.9.0 2021-08-06 10:37:28 -07:00
Christopher Speller
515edb9dcf
Global header support (#736)
* Adding global header support.

* Set the landing URL for the global header to /dashboard

* Redirecting directly to the current channel on open Boards

* Some improvements on global header

* Adding missed file

* Removing theme selector from the global header and fixing a style bug on the channel header icon

* Adding global header tests

* Adding missed file

* Fix global header icon

* Adding isFocalboardPlugin function

* Fixing unit tests

* Fixing problem with header menu styles

Co-authored-by: Jesús Espino <jespinog@gmail.com>
2021-08-04 16:57:56 +02:00
Jesús Espino
c3dba863c1
Adding support for embed the webapp into the plugin (#597)
* Adding support for embed the webapp into the plugin

* Adding required dependency

* Removed unnecessary prettier command

* Installed imagemin required dependencies

* Open in a new window always

* Fix CSS Conflicts.

* Changing the app id to make it specific to focalboard

* Adding error boundary

* Fix styles on non-plugin environments

* Making the css scoped to focalboard only

* Create the focalboard root portal

* Including missed component

* Adding a missed rollback call

Co-authored-by: Christopher Speller <crspeller@gmail.com>
Co-authored-by: Hossein <hahmadia@users.noreply.github.com>
2021-07-29 20:08:39 +02:00
Doug Lauder
efedf2f481
Fix nil stringer error (#788)
* fix nil stringer error
* include API path with all API ERROR logs
* enable "caller" field
* disable colour output and min msg length for plugin
* bump Logr version to v2.0.4
2021-07-27 12:57:29 -04:00
Chen-I Lim
73225e959b Merge release-0.8.0 2021-07-16 10:30:45 -07:00
Jesús Espino
ee94e17f16
Add global templates to redux store (#731)
* Add global templates to redux store

* Removing unused import

* Remove unnecesary reducer

* Fixing eslint
2021-07-16 13:37:46 +02:00
Doug Lauder
a0524dd386
Lint server & plugin for CI (#720)
* enable CI linting for server and plugin
* replace `golint` (deprecated) with `revive`
* use GH actions for lint
2021-07-14 09:36:18 -04:00
Chen-I Lim
eddbe7ad9a Update plugin min_server_version to 5.37 2021-07-09 11:34:18 -07:00
Chen-I Lim
1b45e16e52 Update to v0.8.0 2021-07-09 09:36:57 -07:00
Doug Lauder
0dec704ddc
fix linter errors in plugin (#696) 2021-07-09 12:59:44 +02:00
Doug Lauder
ebd477464b
fix remaining golangci linter warnings (#686)
* fix remaining linter warnings
2021-07-08 21:09:02 -04:00
Miguel de la Cruz
4328375324
Prevent plugin from crashing if SiteURL is not set (#677)
* Prevent plugin from crashing if SiteURL is not set

* Change default baseURL to be . instead of empty string

* Revert "Change default baseURL to be . instead of empty string"

This reverts commit cceb380167.
2021-07-07 10:13:06 +05:30
Doug Lauder
6e214ebc3d
Ensure all code paths close *sql.Rows (#679)
* ensure all code paths close *sql.Rows
2021-07-06 16:44:11 -04:00
James
fde98f230e
Upgraded links in plugin files to point to the focalboard repository since the older 'mattermost-plugin-focalboard' repository return a 404 error - also, generalized release notes URL (#669) 2021-07-06 19:45:51 +02:00
Jesús Espino
bb7867c2cb Configuring the logs by default in the plugin 2021-07-02 18:07:30 +02:00
Agniva De Sarker
8e72b9c528
Add RPC API support to plugin (#619)
* Add RPC API support to plugin

We use the mattermost-plugin-api client to create the sql.DB object
and pass it to the store.

To keep a common point of entry for both the standalone server
and plugin, we refactor the store creation part out of server.New
and pass the DB as a dependency to the server constructor.

This allow us to create different stores in plugin and standalone,
so that the server code remains unaware of any differences.

https://focalboard-community.octo.mattermost.com/workspace/zyoahc9uapdn3xdptac6jb69ic?id=285b80a3-257d-41f6-8cf4-ed80ca9d92e5&v=495cdb4d-c13a-4992-8eb9-80cfee2819a4&c=c7386db7-65fd-469b-8bcf-8dc8f8e61e4f

* Support linux desktop app

* refactor

* fix typos

* Change authlayer to use existing DB conn too
2021-06-25 16:49:06 +02:00
Miguel de la Cruz
fd9be03445
Use path.Join in plugin's webpath property (#610)
* Use path.Join in plugin's webpath property

* Update mattermost-plugin/server/plugin.go

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

Co-authored-by: Jesús Espino <jespinog@gmail.com>
2021-06-21 12:08:33 +02:00
Miguel de la Cruz
bf18d39242
Fixes web files not found when plugin directory is custom (#609) 2021-06-21 11:22:58 +02:00
Miguel de la Cruz
c4154cd2dd
Adds a link to the setup docs on the plugin's config header section (#582) 2021-06-21 10:13:15 +02:00
Miguel de la Cruz
3497a3faff
Ensures cgo is disabled for plugin compilation to avoid libc linking (#565) 2021-06-11 14:41:15 +02:00
Doug Lauder
68d492a855
Bump Logr version to fix Windows build (#520)
* bump Logr version to fix Windows build

* fix return args for syslog_unsupported
2021-06-04 08:43:32 +02:00
Chen-I Lim
4ca3f73ce7
Add LDFLAGS to plugin build (#474)
Co-authored-by: Miguel de la Cruz <miguel@mcrx.me>
2021-05-26 12:45:33 +02:00
Miguel de la Cruz
b327bc7b8a
Adds plugin actions to the project's CI (#471)
* Adds plugin actions to the project's CI

* Remove the version number from the generated artifact

* Change job name to something more descriptive

* Switch back to workflow_dispatch
2021-05-25 19:22:31 +02:00
Jesús Espino
f43e4028db
npm dependency upgrade (#470)
* npm dependency upgrade

* Remove unneeded optionaDependency
2021-05-25 13:22:28 +02:00
Jesús Espino
f1b8d88d6b
Changing mattermost-auth method to work based on shared database access (#335)
* Improving mattermost auth implementation

* Making mattermost-auth based on shared database access

* Reverting unneeded changes in the config.json file

* Fixing tiny problems

* Removing the need of using the mattermost session token

* Fixing some bugs and allowing to not-bind the server to any port

* Small fix to correctly get the templates

* Adding the mattermost-plugin code inside focalboard repo

* Adding a not working code part of the cluster websocket communication

* Updating the mattermost version

* Adding the cluster messages for the websockets

* Updating to the new node version

* Making it compatible with S3

* Addressing some tiny problems

* Fixing server tests

* Adds support for MySQL migrations and initialization

Co-authored-by: Miguel de la Cruz <miguel@mcrx.me>
2021-05-24 19:06:11 +02:00