Commit Graph

298 Commits

Author SHA1 Message Date
Steven
b452d63fa6 chore: skip compose memo error 2023-09-18 22:41:49 +08:00
Steven
8fbd33be09 chore: update username matcher 2023-09-18 22:37:13 +08:00
Steven
bff41a8957 fix: invalid username checks 2023-09-18 22:34:31 +08:00
Steven
2375001453 chore: fix acl interceptor 2023-09-18 21:50:59 +08:00
Vespa314
58026c52ea
fix: heatmap show on wrong date (#2243)
fix: heatmap show wrong date
2023-09-18 13:53:16 +08:00
Steven
cd0ea6558d chore: update golangci-lint config 2023-09-17 22:55:13 +08:00
Steven
72ca4e74ee refactor: impl part of grpcweb 2023-09-17 19:20:03 +08:00
Steven
fb1490c183 feat: impl resources list page 2023-09-16 11:48:53 +08:00
Steven
4424c8a231 chore: add resource service definition 2023-09-16 00:11:07 +08:00
steven
e6a90a8be8 chore: register reflection grpc server 2023-09-15 17:57:45 +08:00
Steven
e65282dcc5 chore: fix user state loader 2023-09-15 09:10:16 +08:00
Steven
f5802a7d82 chore: update access token ui 2023-09-15 08:18:30 +08:00
Steven
33d9c13b7e chore: remove openid field from user 2023-09-14 22:57:27 +08:00
Steven
42bd9b194b feat: impl user access token api 2023-09-14 20:16:17 +08:00
Steven
8a796d12b4 chore: add user access token setting definition 2023-09-14 19:18:54 +08:00
Athurg Gooth
c87df8791b
chore: optimize performance of /memo/stats (#2218)
Optimize performance of /memo/stats
2023-09-14 14:18:29 +08:00
Athurg Gooth
626ff5e3a7
feat: notify by telegram while new memo create by HTTP (#2215)
* Inject telegram bot into API service

* Add support for send telegram message

* Send notification by telegram while new memo post
2023-09-13 21:36:43 +08:00
Steven
d63715d4d9 feat: implement list memos filter 2023-09-13 20:42:44 +08:00
Steven
3ad0832516 chore: use user v2 api in frontend 2023-09-10 22:03:12 +08:00
Steven
93f062d0b9 chore: update user v2 api 2023-09-10 18:56:24 +08:00
Steven
3df550927d chore: update user profile page 2023-09-10 10:33:22 +08:00
boojack
8b1f7c52aa
choer: add system setting api (#2194) 2023-09-06 21:54:12 +08:00
boojack
18fb02a1ec
chore: update swag docs (#2178)
* chore: update swag docs

* chore: update
2023-08-26 08:07:43 +08:00
boojack
4af0d03e93
chore: add user profile page (#2175)
chore: some enhancements
2023-08-25 23:10:51 +08:00
boojack
e266d88edd
chore: add acl config (#2128) 2023-08-13 00:06:03 +08:00
YuNing Chen
409d686f7d
chore: minor cleanup (#2124) 2023-08-11 22:34:08 +08:00
Jianwei Zhang
c835231d32
feat: add header into resource response (#2120)
Update - add header for get resource
2023-08-10 23:45:30 +08:00
boojack
723c444910
chore: update server tests (#2118) 2023-08-10 09:01:38 +08:00
boojack
35f2d399e2
chore: update api v1 docs (#2117)
* chore: update apiv1 docs

* chore: update
2023-08-09 22:30:27 +08:00
Lincoln Nogueira
4491c75135
feat: add SwaggerUI and v1 API docs (#2115)
* - Refactor several API routes from anonymous functions to regular definitions. Required to add parseable documentation comments.

- Add API documentation comments using Swag Declarative Comments Format

- Add echo-swagger to serve Swagger-UI at /api/index.html

- Fix error response from extraneous parameter resourceId to relatedMemoId in DELETE("/memo/:memoId/relation/:relatedMemoId/type/:relationType")

- Add an auto-generated ./docs/api/v1.md for quick reference on repo (generated by swagger-markdown)

- Add auxiliary scripts to generate docs.go and swagger.yaml

* fix: golangci-lint errors

* fix: go fmt flag in swag scripts
2023-08-09 21:53:06 +08:00
boojack
5d5d8de9fe
fix: get all memo api (#2091) 2023-08-06 10:14:30 +08:00
boojack
218159bf83
chore: remove openai setting section (#2084) 2023-08-05 21:39:12 +08:00
boojack
238f896907
feat: add system service (#2083)
* feat: add system service

* chore: update
2023-08-05 21:30:23 +08:00
boojack
3df9da91b4
chore: update get memo api (#2079) 2023-08-05 19:51:32 +08:00
boojack
57dd1fc49f
chore: initial memo service definition (#2077)
* chore: initial memo service definition

* chore: update

* chore: update

* chore: update
2023-08-05 09:32:52 +08:00
boojack
7c5296cf35
chore: update id type to int32 (#2076) 2023-08-04 21:55:07 +08:00
boojack
1ce82ba0d6
chore: remove shortcut related api (#2072) 2023-08-03 23:33:45 +08:00
boojack
5f819fc86f
chore: update auth middleware (#2057)
* chore: update auth middleware

* chore: update

* chore: update
2023-07-31 20:55:40 +08:00
boojack
cc3a47fc65
feat: impl auth interceptor (#2055)
* feat: impl auth interceptor

* chore: update

* chore: update

* chore: update
2023-07-30 23:49:10 +08:00
Lilith
c1cbfd5766
feat: add system setting to disable password-based login (#2039)
* system setting to disable password login

* fix linter warning

* fix indentation warning

* Prohibit disable-password-login if no identity providers are configured

* Warnings and explicit confirmation when en-/disabling password-login

- Disabling password login now gives a warning and requires a second
  confirmation which needs to be explicitly typed.
- (Re)Enabling password login now also gives a simple warning.
- Removing an identity provider while password-login is disabled now
  also warns about possible problems.

* Fix formatting

* Fix code-style

---------

Co-authored-by: traumweh <5042134-traumweh@users.noreply.gitlab.com>
2023-07-30 21:22:02 +08:00
boojack
9ef0f8a901
feat: add user setting field (#2054) 2023-07-30 09:53:24 +08:00
boojack
470fe1df49
feat: implement part of user service (#2053)
* feat: implement part of user service

* chore: update

* chore: update
2023-07-30 01:35:00 +08:00
boojack
89ba2a6540
feat: implement part of tag service (#2051)
* feat: add grpc gateway tempalte

* chore: update

* chore: move directory

* chore: update
2023-07-30 00:00:49 +08:00
boojack
d8d6de9fca
fix: get user by username api (#2034) 2023-07-26 22:41:21 +08:00
boojack
56c321aeaa
revert: fix: exclude all punctuation chars except underscore in tags (#2033)
Revert "fix: exclude all punctuation chars except underscore in tags (#1974)"

This reverts commit 8c61531671.
2023-07-26 21:11:13 +08:00
Mason Sun
a9eb605b0f
fix: auth api json format (#2021)
Update auth.go

api/v1/auth/相关接口未应用convertUserFromStore方法,会导致User对象获得类型存在问题,导致User定义的`json:`相关的字段转化失效。
导致输出json未被正确格式化
2023-07-23 19:11:29 +08:00
boojack
04b7a26c03
chore: fix request path (#2014) 2023-07-23 10:12:13 +08:00
boojack
28203bbaf9
chore: fix rss route (#2010) 2023-07-22 21:51:05 +08:00
boojack
9138ab8095
fix: rss route (#2008)
* fix: rss route

* chore: update
2023-07-22 12:58:17 +08:00
Ajay Kumbhare
55975a46d8
feat: add hindi language translation for i18n support (#2001) 2023-07-22 09:38:54 +08:00
Alexandr Tumaykin
f91f09adea
feat: use username instead of uid (#1977)
* #1916 replace userId to username

* resolve

---------

Co-authored-by: Александр Тумайкин <AATumaykin@tsum.ru>
2023-07-20 19:48:39 +08:00
Athurg Gooth
336b32004d
feat: add AutoBackupInterval in SystemSetting (#1989)
Add AutoBackupInterval in SystemSetting page
2023-07-19 21:39:21 +08:00
Jianwei Zhang
8bcc2bd715
fix: access token will expired after 24h (#1988) 2023-07-19 08:45:30 +08:00
Felipe Martínez
8c61531671
fix: exclude all punctuation chars except underscore in tags (#1974)
* Change tag regex

* Update tests

* Add more tag tests
2023-07-18 01:53:07 +08:00
boojack
2effacd0a6
chore: add api docs (#1965) 2023-07-15 23:30:20 +08:00
boojack
40a30d46af
chore: update db connection params (#1960) 2023-07-15 10:26:19 +08:00
Felipe Martínez
2a7104e564
fix: exclude commas in tags (#1957) 2023-07-15 10:00:35 +08:00
Athurg Gooth
d9b3501fae
feat: add support for auto backup db file (#1950)
Add support for auto backup db file
2023-07-14 20:05:07 +08:00
Athurg Gooth
06dbd87311
chore: split save resource asset (#1939)
* Move resource blob save into a independent function

* Support save resouce blob from Telegram like HTTP API

* Support save resouce blob download from URL to LocalStorage or S3

* fix typo
2023-07-14 11:14:10 +08:00
Athurg Gooth
3093f80d68
fix: visibility param override the user auth state (#1942)
fix visibility param override the user auth state
2023-07-13 15:20:15 +08:00
Athurg Gooth
11aa01ee2e
fix: visibility param override the user auth state (#1941)
fix visibility param override the user auth state
2023-07-13 14:56:43 +08:00
CorrectRoadH
d8b6e92813
feat: implement memos chat backend function (#1934)
* feat: implment backend function

* eslint

* eslint

* eslint
2023-07-13 11:25:59 +08:00
boojack
da70917b08
chore: update auth page (#1920)
* chore: update auth page

* chore: update
2023-07-09 21:13:26 +08:00
boojack
7e391bd53d
chore: remove resource public id (#1912)
* chore: remove resource public id

* chore: update
2023-07-08 11:29:50 +08:00
boojack
0e05c62a3b
chore: update common utils (#1908) 2023-07-06 22:53:38 +08:00
boojack
a7573d5705
refactor: migrate memo to apiv1 (#1907)
* refactor: migrate memo to apiv1

* chore: update

* chore: update

* chore: update

* chore: upate

* chore: update

* chore: update
2023-07-06 21:56:42 +08:00
boojack
1fa9f162a5
refactor: migrate resource to apiv1 (#1901) 2023-07-06 00:01:40 +08:00
Athurg Gooth
2033b0c8fa
fix: skip auth on /api/v1/status to avoid sign up while token invalid (#1895)
Skip auth on /api/v1/status to avoid sign up while token invalid
2023-07-05 13:55:04 +08:00
boojack
5b6c98582e
refactor: migrate storage to apiv1 (#1890)
* refactor: migrate storage to apiv1

* chore: update

* chore: update

* chore: update
2023-07-04 10:05:57 +08:00
Athurg Gooth
833fd23820
fix: OpenID was disappear sometimes (#1886)
Fix openid was disapear sometimes
2023-07-03 19:10:24 +08:00
boojack
66e65e4dc1
refactor: migrate definition to api v1 (#1879)
* refactor: user api v1

* refactor: system setting to apiv1

* chore: remove unused definition

* chore: update

* chore: refactor: system setting

* chore: update

* refactor: migrate tag

* feat: migrate activity store

* refactor: migrate shortcut apiv1

* chore: update
2023-07-02 18:56:25 +08:00
boojack
9a8d43bf88
chore: update user store names (#1877)
* chore: update user store names

* chore: update
2023-07-02 14:27:23 +08:00
boojack
5fe644a3b6
chore: add jwt middleware in apiv1 (#1869) 2023-07-01 00:03:28 +08:00
CorrectRoadH
a108f5e212
fix: ignore internalpath field when creating resource (#1868)
* fix/to_valid_token

* eslint

* revert

* fix/invalid_internalpath_file_upload
2023-06-30 23:50:55 +08:00
boojack
6a78887f1d
chore: update store types name (#1862) 2023-06-29 22:55:03 +08:00
boojack
7226a9ad47
chore: update idp store (#1856) 2023-06-26 23:46:01 +08:00
boojack
b44f2b5ffb
chore: migrate user setting to api v1 package (#1855)
* chore: migrate to api v1 package

* chore: update
2023-06-26 23:06:53 +08:00
boojack
b34aded376
refactor: migration idp api (#1842)
* refactor: migration idp api

* chore: update
2023-06-17 22:35:17 +08:00
boojack
4ed9a3a0ea
refactor: migrate auth routes to v1 package (#1841)
* feat: add api v1 packages

* chore: migrate auth to v1

* chore: update test
2023-06-17 21:25:46 +08:00
May Kittens Devour Your Soul
8f7001cd9f
feat: add croatian locale (#1822)
* Create hr.json

Croatian Language

* Update user_setting.go

* Update i18n.ts

* Update hr.json

* Update web/src/i18n.ts

---------

Co-authored-by: boojack <stevenlgtm@gmail.com>
2023-06-14 22:09:19 +08:00
Athurg Gooth
e6c9f2a00e
feat: add support for download resource from link (#1800)
* Add support for download resource from link

* Parse external link and add file ext name from mime info

* Add zh-Hans locale for `download-link`

* fix typo on code and comments

* Update server/resource.go

---------

Co-authored-by: Athurg Feng <athurg@gooth.org>
Co-authored-by: boojack <stevenlgtm@gmail.com>
2023-06-08 14:35:33 +00:00
kakik0u
c396cc9649
feat: add japanese locale (#1802)
* Add japanese

* Add japanese setting files

---------

Co-authored-by: barappe <121844712+barappe@users.noreply.github.com>
2023-06-08 13:50:48 +08:00
zhangpeng
ac5d8b47ca
chore: modify the error message when registering a Host user (#1804)
* Modify the error message

* modify the error message
2023-06-07 12:12:23 +08:00
boojack
11a385cda6
chore: update upgrade version view (#1791) 2023-06-03 14:32:04 +08:00
Athurg Gooth
845297ec03
refactor: change all Robot to Bot (#1767)
* Change all `Robot` to `Bot`

* Change all `r` of `Bot` to `b`

* Change `Robot` to `bot` in comments

* Fix typo

---------

Co-authored-by: Athurg Feng <athurg@gooth.org>
2023-05-29 19:49:05 +08:00
Athurg Gooth
ce64894abe
feat: add telegram proxy support (#1764)
* Add support for reverse proxy of telegram API

* Add Telegram API proxy hint

---------

Co-authored-by: Athurg Feng <athurg@gooth.org>
2023-05-29 13:29:21 +08:00
boojack
e0e59c5831
feat: display memo with updated ts (#1760) 2023-05-28 01:50:09 +08:00
Athurg Gooth
8628d1e4b2
feat: add Telegram bot config UI (#1747)
* Add retry wait for telegram.GetUpdates

* Add support to set telegram robot token from UI

* Change validator of UserSettingTelegramUserID

* Add support to set telegram user id from UI

* Fix typescript check

* Add validator for SystemSettingTelegramRobotTokenName

* Optimize error notice while config telegram params

* Change for review

* Fix telegram user id could not be empty

* Fix telegram robot could not be empty

* Fix for eslint (again)

* Update web/src/components/Settings/SystemSection.tsx

---------

Co-authored-by: Athurg Feng <athurg@gooth.org>
Co-authored-by: boojack <stevenlgtm@gmail.com>
2023-05-26 19:16:51 +08:00
Athurg Gooth
4ea5426e18
feat: add support for content search (#1728)
* Change MemoFind.ContentSearch to slice

* Add support for content search

* Change for go-simple sugguest

---------

Co-authored-by: Athurg Feng <athurg@gooth.org>
2023-05-26 18:51:18 +08:00
Athurg Gooth
1282fe732e
feat: implement telegram bot plugin (#1740) 2023-05-26 09:43:51 +08:00
boojack
de8014dfe8
feat: resource store cache (#1742) 2023-05-26 00:38:27 +08:00
boojack
ea728d232d
refactor: memo store (#1741) 2023-05-25 21:50:37 +08:00
boojack
1d7627dd72
chore: upgrade version 0.13.0 (#1685)
* chore: upgrade version `0.13.0`

* chore: update
2023-05-20 10:16:19 +08:00
boojack
2cc5691efd
chore: update memo relation types (#1658) 2023-05-14 23:17:05 +08:00
Lincoln Nogueira
96021e518a
feat: add max upload size setting to UI & UI improvements (#1646)
* Add preliminar Windows support for both
development and production environments.

Default profile.Data will be set to "C:\ProgramData\memos" on Windows.
Folder will be created if it does not exist, as this behavior is
expected for Windows applications.

System service installation can be achieved with third-party tools,
explained in docs/windows-service.md.

Not sure if it's worth using https://github.com/kardianos/service
to make service support built-in.

This could be a nice addition alongside #1583 (add Windows artifacts)

* feat: improve Windows support

- Fix local file storage path handling on Windows

- Improve Windows dev script

* feat: add max upload size setting to UI & more

- feat: add max upload size setting to UI

- feat: max upload size setting is checked on UI during upload,
but also enforced by the server

- fix: overflowing mobile layout for Create SSO, Create Storage
and other Settings dialogs

- feat: add HelpButton component with some links to docs were appropriate

- remove LearnMore component in favor of HelpButton

- refactor: change some if/else to switch statements

- refactor: inline some err == nil checks

! Existing databases without the new setting 'max-upload-size-mib'
will show an upload error, but this can be user-fixed by simply
setting the value on system settings UI.

* improvements requested by @boojack
2023-05-13 22:27:28 +08:00
boojack
b6564bcd77
feat: implement memo relation server (#1618) 2023-05-01 16:09:41 +08:00
boojack
73b8d1dd99
fix: revert hide ask ai button (#1539) 2023-04-16 10:55:44 +08:00
João Nuno Mota
2c328a4540
feat: hide ask ai button when key is empty (#1515)
* Add option to hide Ask AI and update dev version

* Fix formatting according to eslint

* Replace option to hide Ask AI with auto hiding based on config

* Fix golangci-lint errors

* Remove showAskAI logic from OpenAPI
2023-04-16 00:54:33 +08:00
Lincoln Nogueira
557278fac0
feat: improve i18n support as a whole (#1526)
* feat: improve i18n support as a whole

- Remove dayjs in favor of /helpers/datetime.ts, which uses
Intl.DateTimeFormat and Date. Dayjs is not exactly i18n friendly
and has several locale related opened issues.

- Move/refactor date/time code from /helpers/utils.ts to
/helpers/datetime.ts.

- Fix Daily Review weekday not changing according to selected date.

- Localize Daily review weekday and month.

- Load i18n listed strings from /locales/{locale}.json in a dynamic way.
This makes much easier to add new locales, by just adding a properly
named json file and listing it only in /web/src/i18n.ts and
/api/user_setting.go.

- Fallback languages are now set in /web/src/i18n.ts.

- Full language codes are now preffered, but they fallback to 2-letter
codes when not available.

- The locale dropdown is now populated dynamically from the available
locales. Locale names are populated by the browser via
Intl.DisplayNames(locale).

- /web/src/i18n.ts now exports a type TLocale from availableLocales
array. This is used only by findNearestLanguageMatch(). As I was unable
to use this type in ".d.ts" files, I switched the Locale type from
/web/src/types/i18n.d.ts to string.

- Move pretty much all hardcoded text strings to i18n strings.

- Add pt-BR translation.

- Remove site.ts and move its content to a i18n string.

- Rename zh.json to zh-Hans.json to get the correct language name on
selector dropdown.

- Remove pt_BR.json and replace with pt-BR.json.

- Some minor layout spacing fixes to accommodate larger texts.

- Improve some error messages.

* Delete .yarnrc.yml

* Delete package-lock.json

* fix: 158:28  error  Insert `⏎`  prettier/prettier
2023-04-15 08:56:03 +08:00
boojack
3eac19d258
chore: add ignore version upgrade setting (#1491) 2023-04-08 18:13:51 +08:00