mirror of
https://github.com/wekan/wekan.git
synced 2025-04-22 21:17:18 -04:00
v3.98
This commit is contained in:
parent
5d2ff89e9b
commit
3908fe0ab8
7 changed files with 275 additions and 2993 deletions
14
CHANGELOG.md
14
CHANGELOG.md
|
@ -1,4 +1,16 @@
|
|||
# Upcoming Wekan release
|
||||
# v3.98 2020-04-25 Wekan release
|
||||
|
||||
News:
|
||||
|
||||
- There is now many mobile and desktop webbrowser fixes. Please test does your
|
||||
favourite Javascript enabled webbrowser work, and add issues if something
|
||||
does not work, and there is no existing issue about that yet.
|
||||
- Desktop browser mode has setting for Show/Hide drag handles:
|
||||
top right click username / Change Settings / Show desktop drag handles.
|
||||
You can request desktop website also at mobile webbrowsers on Android.
|
||||
At iOS requesting desktop website did not seem to work yet.
|
||||
- At iOS Safari and Chrome, to see swimlane buttons you need to scroll to right.
|
||||
Fixes to this and other issues are welcome as pull request.
|
||||
|
||||
This release adds the following new features:
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
appId: wekan-public/apps/77b94f60-dec9-0136-304e-16ff53095928
|
||||
appVersion: "v3.97.0"
|
||||
appVersion: "v3.98.0"
|
||||
files:
|
||||
userUploads:
|
||||
- README.md
|
||||
|
|
2
package-lock.json
generated
2
package-lock.json
generated
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "wekan",
|
||||
"version": "v3.97.0",
|
||||
"version": "v3.98.0",
|
||||
"lockfileVersion": 1,
|
||||
"requires": true,
|
||||
"dependencies": {
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "wekan",
|
||||
"version": "v3.97.0",
|
||||
"version": "v3.98.0",
|
||||
"description": "Open-Source kanban",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
|
|
File diff suppressed because one or more lines are too long
|
@ -1,7 +1,7 @@
|
|||
swagger: '2.0'
|
||||
info:
|
||||
title: Wekan REST API
|
||||
version: v3.97
|
||||
version: v3.98
|
||||
description: |
|
||||
The REST API allows you to control and extend Wekan with ease.
|
||||
|
||||
|
@ -1276,104 +1276,6 @@ paths:
|
|||
'200':
|
||||
description: |-
|
||||
200 response
|
||||
/api/boards/{board}/members/{user}/add:
|
||||
post:
|
||||
operationId: add_board_member
|
||||
summary: Add New Board Member with Role
|
||||
description: |
|
||||
Only the admin user (the first user) can call the REST API.
|
||||
|
||||
**Note**: see [Boards.set_board_member_permission](#set_board_member_permission)
|
||||
to later change the permissions.
|
||||
tags:
|
||||
- Users
|
||||
- Boards
|
||||
consumes:
|
||||
- multipart/form-data
|
||||
- application/json
|
||||
parameters:
|
||||
- name: action
|
||||
in: formData
|
||||
description: the action value
|
||||
type: string
|
||||
required: true
|
||||
- name: isAdmin
|
||||
in: formData
|
||||
description: |
|
||||
is the user an admin of the board
|
||||
type: boolean
|
||||
required: true
|
||||
- name: isNoComments
|
||||
in: formData
|
||||
description: |
|
||||
disable comments
|
||||
type: boolean
|
||||
required: true
|
||||
- name: isCommentOnly
|
||||
in: formData
|
||||
description: |
|
||||
only enable comments
|
||||
type: boolean
|
||||
required: true
|
||||
- name: board
|
||||
in: path
|
||||
description: |
|
||||
the board ID
|
||||
type: string
|
||||
required: true
|
||||
- name: user
|
||||
in: path
|
||||
description: |
|
||||
the user ID
|
||||
type: string
|
||||
required: true
|
||||
produces:
|
||||
- application/json
|
||||
security:
|
||||
- UserSecurity: []
|
||||
responses:
|
||||
'200':
|
||||
description: |-
|
||||
200 response
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
_id:
|
||||
type: string
|
||||
title:
|
||||
type: string
|
||||
/api/boards/{board}/members/{user}/remove:
|
||||
post:
|
||||
operationId: post_board_user_remove
|
||||
tags:
|
||||
- Users
|
||||
consumes:
|
||||
- multipart/form-data
|
||||
- application/json
|
||||
parameters:
|
||||
- name: action
|
||||
in: formData
|
||||
description: the action value
|
||||
type: string
|
||||
required: true
|
||||
- name: board
|
||||
in: path
|
||||
description: the board value
|
||||
type: string
|
||||
required: true
|
||||
- name: user
|
||||
in: path
|
||||
description: the user value
|
||||
type: string
|
||||
required: true
|
||||
produces:
|
||||
- application/json
|
||||
security:
|
||||
- UserSecurity: []
|
||||
responses:
|
||||
'200':
|
||||
description: |-
|
||||
200 response
|
||||
/api/boards/{board}/swimlanes:
|
||||
get:
|
||||
operationId: get_all_swimlanes
|
||||
|
@ -1490,184 +1392,6 @@ paths:
|
|||
'200':
|
||||
description: |-
|
||||
200 response
|
||||
/api/user:
|
||||
get:
|
||||
operationId: get_current_user
|
||||
summary: returns the current user
|
||||
tags:
|
||||
- Users
|
||||
produces:
|
||||
- application/json
|
||||
security:
|
||||
- UserSecurity: []
|
||||
responses:
|
||||
'200':
|
||||
description: |-
|
||||
200 response
|
||||
schema:
|
||||
$ref: "#/definitions/Users"
|
||||
/api/users:
|
||||
get:
|
||||
operationId: get_all_users
|
||||
summary: return all the users
|
||||
description: |
|
||||
Only the admin user (the first user) can call the REST API.
|
||||
tags:
|
||||
- Users
|
||||
produces:
|
||||
- application/json
|
||||
security:
|
||||
- UserSecurity: []
|
||||
responses:
|
||||
'200':
|
||||
description: |-
|
||||
200 response
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
_id:
|
||||
type: string
|
||||
username:
|
||||
type: string
|
||||
post:
|
||||
operationId: new_user
|
||||
summary: Create a new user
|
||||
description: |
|
||||
Only the admin user (the first user) can call the REST API.
|
||||
tags:
|
||||
- Users
|
||||
consumes:
|
||||
- multipart/form-data
|
||||
- application/json
|
||||
parameters:
|
||||
- name: username
|
||||
in: formData
|
||||
description: |
|
||||
the new username
|
||||
type: string
|
||||
required: true
|
||||
- name: email
|
||||
in: formData
|
||||
description: |
|
||||
the email of the new user
|
||||
type: string
|
||||
required: true
|
||||
- name: password
|
||||
in: formData
|
||||
description: |
|
||||
the password of the new user
|
||||
type: string
|
||||
required: true
|
||||
produces:
|
||||
- application/json
|
||||
security:
|
||||
- UserSecurity: []
|
||||
responses:
|
||||
'200':
|
||||
description: |-
|
||||
200 response
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
_id:
|
||||
type: string
|
||||
/api/users/{user}:
|
||||
get:
|
||||
operationId: get_user
|
||||
summary: get a given user
|
||||
description: |
|
||||
Only the admin user (the first user) can call the REST API.
|
||||
tags:
|
||||
- Users
|
||||
parameters:
|
||||
- name: user
|
||||
in: path
|
||||
description: |
|
||||
the user ID
|
||||
type: string
|
||||
required: true
|
||||
produces:
|
||||
- application/json
|
||||
security:
|
||||
- UserSecurity: []
|
||||
responses:
|
||||
'200':
|
||||
description: |-
|
||||
200 response
|
||||
schema:
|
||||
$ref: "#/definitions/Users"
|
||||
put:
|
||||
operationId: edit_user
|
||||
summary: edit a given user
|
||||
description: |
|
||||
Only the admin user (the first user) can call the REST API.
|
||||
|
||||
Possible values for *action*:
|
||||
- `takeOwnership`: The admin takes the ownership of ALL boards of the user (archived and not archived) where the user is admin on.
|
||||
- `disableLogin`: Disable a user (the user is not allowed to login and his login tokens are purged)
|
||||
- `enableLogin`: Enable a user
|
||||
tags:
|
||||
- Users
|
||||
consumes:
|
||||
- multipart/form-data
|
||||
- application/json
|
||||
parameters:
|
||||
- name: action
|
||||
in: formData
|
||||
description: |
|
||||
the action
|
||||
type: string
|
||||
required: true
|
||||
- name: user
|
||||
in: path
|
||||
description: |
|
||||
the user ID
|
||||
type: string
|
||||
required: true
|
||||
produces:
|
||||
- application/json
|
||||
security:
|
||||
- UserSecurity: []
|
||||
responses:
|
||||
'200':
|
||||
description: |-
|
||||
200 response
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
_id:
|
||||
type: string
|
||||
title:
|
||||
type: string
|
||||
delete:
|
||||
operationId: delete_user
|
||||
summary: Delete a user
|
||||
description: |
|
||||
Only the admin user (the first user) can call the REST API.
|
||||
tags:
|
||||
- Users
|
||||
parameters:
|
||||
- name: user
|
||||
in: path
|
||||
description: |
|
||||
the ID of the user to delete
|
||||
type: string
|
||||
required: true
|
||||
produces:
|
||||
- application/json
|
||||
security:
|
||||
- UserSecurity: []
|
||||
responses:
|
||||
'200':
|
||||
description: |-
|
||||
200 response
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
_id:
|
||||
type: string
|
||||
/api/users/{user}/boards:
|
||||
get:
|
||||
operationId: get_boards_from_user
|
||||
|
@ -2407,196 +2131,3 @@ definitions:
|
|||
- createdAt
|
||||
- modifiedAt
|
||||
- type
|
||||
Users:
|
||||
type: object
|
||||
description: A User in wekan
|
||||
properties:
|
||||
username:
|
||||
description: |
|
||||
the username of the user
|
||||
type: string
|
||||
x-nullable: true
|
||||
emails:
|
||||
description: |
|
||||
the list of emails attached to a user
|
||||
type: array
|
||||
items:
|
||||
$ref: "#/definitions/UsersEmails"
|
||||
x-nullable: true
|
||||
createdAt:
|
||||
description: |
|
||||
creation date of the user
|
||||
type: string
|
||||
modifiedAt:
|
||||
type: string
|
||||
profile:
|
||||
description: |
|
||||
profile settings
|
||||
$ref: "#/definitions/UsersProfile"
|
||||
x-nullable: true
|
||||
services:
|
||||
description: |
|
||||
services field of the user
|
||||
type: object
|
||||
x-nullable: true
|
||||
heartbeat:
|
||||
description: |
|
||||
last time the user has been seen
|
||||
type: string
|
||||
x-nullable: true
|
||||
isAdmin:
|
||||
description: |
|
||||
is the user an admin of the board?
|
||||
type: boolean
|
||||
x-nullable: true
|
||||
createdThroughApi:
|
||||
description: |
|
||||
was the user created through the API?
|
||||
type: boolean
|
||||
x-nullable: true
|
||||
loginDisabled:
|
||||
description: |
|
||||
loginDisabled field of the user
|
||||
type: boolean
|
||||
x-nullable: true
|
||||
authenticationMethod:
|
||||
description: |
|
||||
authentication method of the user
|
||||
type: string
|
||||
required:
|
||||
- createdAt
|
||||
- modifiedAt
|
||||
- authenticationMethod
|
||||
UsersEmails:
|
||||
type: object
|
||||
properties:
|
||||
address:
|
||||
description: |
|
||||
The email address
|
||||
type: string
|
||||
verified:
|
||||
description: |
|
||||
Has the email been verified
|
||||
type: boolean
|
||||
required:
|
||||
- address
|
||||
- verified
|
||||
UsersProfile:
|
||||
type: object
|
||||
properties:
|
||||
avatarUrl:
|
||||
description: |
|
||||
URL of the avatar of the user
|
||||
type: string
|
||||
emailBuffer:
|
||||
description: |
|
||||
list of email buffers of the user
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
x-nullable: true
|
||||
fullname:
|
||||
description: |
|
||||
full name of the user
|
||||
type: string
|
||||
showDesktopDragHandles:
|
||||
description: |
|
||||
does the user want to hide system messages?
|
||||
type: boolean
|
||||
hiddenSystemMessages:
|
||||
description: |
|
||||
does the user want to hide system messages?
|
||||
type: boolean
|
||||
hiddenMinicardLabelText:
|
||||
description: |
|
||||
does the user want to hide minicard label texts?
|
||||
type: boolean
|
||||
initials:
|
||||
description: |
|
||||
initials of the user
|
||||
type: string
|
||||
invitedBoards:
|
||||
description: |
|
||||
board IDs the user has been invited to
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
x-nullable: true
|
||||
language:
|
||||
description: |
|
||||
language of the user
|
||||
type: string
|
||||
notifications:
|
||||
description: |
|
||||
enabled notifications for the user
|
||||
type: array
|
||||
items:
|
||||
$ref: "#/definitions/UsersProfileNotifications"
|
||||
activity:
|
||||
description: |
|
||||
The id of the activity this notification references
|
||||
type: string
|
||||
read:
|
||||
description: |
|
||||
the date on which this notification was read
|
||||
type: string
|
||||
showCardsCountAt:
|
||||
description: |
|
||||
showCardCountAt field of the user
|
||||
type: number
|
||||
startDayOfWeek:
|
||||
description: |
|
||||
startDayOfWeek field of the user
|
||||
type: number
|
||||
starredBoards:
|
||||
description: |
|
||||
list of starred board IDs
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
x-nullable: true
|
||||
icode:
|
||||
description: |
|
||||
icode
|
||||
type: string
|
||||
boardView:
|
||||
description: |
|
||||
boardView field of the user
|
||||
type: string
|
||||
enum:
|
||||
- board-view-lists
|
||||
- board-view-swimlanes
|
||||
- board-view-cal
|
||||
listSortBy:
|
||||
description: |
|
||||
default sort list for user
|
||||
type: string
|
||||
enum:
|
||||
- -modifiedat
|
||||
- modifiedat
|
||||
- -title
|
||||
- title
|
||||
- -sort
|
||||
- sort
|
||||
templatesBoardId:
|
||||
description: |
|
||||
Reference to the templates board
|
||||
type: string
|
||||
cardTemplatesSwimlaneId:
|
||||
description: |
|
||||
Reference to the card templates swimlane Id
|
||||
type: string
|
||||
listTemplatesSwimlaneId:
|
||||
description: |
|
||||
Reference to the list templates swimlane Id
|
||||
type: string
|
||||
boardTemplatesSwimlaneId:
|
||||
description: |
|
||||
Reference to the board templates swimlane Id
|
||||
type: string
|
||||
required:
|
||||
- activity
|
||||
- templatesBoardId
|
||||
- cardTemplatesSwimlaneId
|
||||
- listTemplatesSwimlaneId
|
||||
- boardTemplatesSwimlaneId
|
||||
|
|
|
@ -22,10 +22,10 @@ const pkgdef :Spk.PackageDefinition = (
|
|||
appTitle = (defaultText = "Wekan"),
|
||||
# The name of the app as it is displayed to the user.
|
||||
|
||||
appVersion = 397,
|
||||
appVersion = 398,
|
||||
# Increment this for every release.
|
||||
|
||||
appMarketingVersion = (defaultText = "3.97.0~2020-04-19"),
|
||||
appMarketingVersion = (defaultText = "3.98.0~2020-04-25"),
|
||||
# Human-readable presentation of the app version.
|
||||
|
||||
minUpgradableAppVersion = 0,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue