@codecks/fetch 1.0.0 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +79 -32
- package/dist/_exploration/api-requester.d.ts +3 -4
- package/dist/_exploration/api-requester.js +2 -2
- package/dist/_exploration/create-hooks.d.ts +4313 -13097
- package/dist/_exploration/create-hooks.js +1 -1
- package/dist/_exploration/loader.d.ts +2 -2
- package/dist/_exploration/loader.js +1 -1
- package/dist/_exploration/store.d.ts +5 -4
- package/dist/_exploration/store.js +1 -1
- package/dist/{collection-utils-T3bx0BS1.js → collection-utils-Ia_ahcpI.js} +4 -2
- package/dist/index-g5c30upI.d.ts +39 -0
- package/dist/index.d.ts +4 -19
- package/dist/index.js +26 -15
- package/dist/{loader-types-fd5tV0FD.d.ts → loader-types-D2Pf8qzH.d.ts} +1 -1
- package/dist/loader-utils-BZWanWDZ.d.ts +2218 -0
- package/dist/query-helpers-DndWBcMF.js +1203 -0
- package/dist/{query-type-BqQ9oX_U.d.ts → query-type-DPNcQFpZ.d.ts} +27 -13
- package/dist/store-ztk8y6Pm.d.ts +1203 -0
- package/package.json +2 -1
- package/schema/actions.md +789 -0
- package/schema/models/account.md +57 -90
- package/schema/models/attachment.md +15 -11
- package/schema/models/card.md +91 -65
- package/schema/models/cardHistory.md +15 -9
- package/schema/models/deck.md +41 -36
- package/schema/models/file.md +13 -15
- package/schema/models/handCard.md +8 -5
- package/schema/models/milestone.md +27 -22
- package/schema/models/milestoneProgress.md +9 -3
- package/schema/models/milestoneProject.md +6 -4
- package/schema/models/project.md +15 -39
- package/schema/models/projectTag.md +12 -7
- package/schema/models/queueEntry.md +12 -8
- package/schema/models/release.md +8 -6
- package/schema/models/resolvable.md +19 -15
- package/schema/models/resolvableEntry.md +16 -13
- package/schema/models/resolvableEntryReaction.md +16 -12
- package/schema/models/sprint.md +35 -25
- package/schema/models/sprintConfig.md +24 -20
- package/schema/models/sprintConfigProgress.md +9 -3
- package/schema/models/sprintProgress.md +9 -3
- package/schema/models/sprintProject.md +7 -5
- package/schema/models/user.md +15 -56
- package/schema/models/workflowItem.md +47 -31
- package/schema/overview.md +40 -93
- package/schema/query-syntax.md +1 -1
- package/schema/types.md +103 -0
- package/dist/_root-BW9uzB79.d.ts +0 -34
- package/dist/index-k-KPWV9R.d.ts +0 -2680
- package/dist/loader-utils-hvdC-xsQ.d.ts +0 -42
- package/dist/query-helpers-iX1fiqLv.js +0 -3062
- package/dist/store-BvEJzUVp.d.ts +0 -2667
- package/schema/models/accountOnboarding.md +0 -15
- package/schema/models/accountOnboardingStep.md +0 -14
- package/schema/models/accountRole.md +0 -19
- package/schema/models/accountUserAchievement.md +0 -17
- package/schema/models/accountUserSetting.md +0 -20
- package/schema/models/activeTimeTracker.md +0 -19
- package/schema/models/activity.md +0 -30
- package/schema/models/affiliateCode.md +0 -30
- package/schema/models/affiliateCodeStat.md +0 -19
- package/schema/models/app.md +0 -10
- package/schema/models/appInstallation.md +0 -19
- package/schema/models/assigneeAssignment.md +0 -18
- package/schema/models/assigneeDeckAssignment.md +0 -20
- package/schema/models/autoFinishedTimeTrackingSegment.md +0 -20
- package/schema/models/cardDiffNotification.md +0 -22
- package/schema/models/cardOrder.md +0 -17
- package/schema/models/cardOrderInDeck.md +0 -18
- package/schema/models/cardPreset.md +0 -19
- package/schema/models/cardSubscription.md +0 -19
- package/schema/models/cardUpvote.md +0 -21
- package/schema/models/cardsEffortHistory.md +0 -9
- package/schema/models/cardsFinishedHistory.md +0 -16
- package/schema/models/cardsStatusHistory.md +0 -9
- package/schema/models/cardsTimeToFinished.md +0 -18
- package/schema/models/dailyDiscordGuildVoteMembership.md +0 -15
- package/schema/models/dailyPublicProjectMembership.md +0 -15
- package/schema/models/deckAssignment.md +0 -18
- package/schema/models/deckGuardian.md +0 -17
- package/schema/models/deckSubscription.md +0 -18
- package/schema/models/discordGuild.md +0 -30
- package/schema/models/discordMember.md +0 -21
- package/schema/models/discordProjectNotification.md +0 -19
- package/schema/models/discordSlashCommand.md +0 -28
- package/schema/models/dueCard.md +0 -18
- package/schema/models/integration.md +0 -23
- package/schema/models/invoice.md +0 -21
- package/schema/models/lastSeenCardUpvote.md +0 -17
- package/schema/models/pinnedMilestone.md +0 -22
- package/schema/models/projectOrder.md +0 -18
- package/schema/models/projectSelection.md +0 -18
- package/schema/models/projectUser.md +0 -18
- package/schema/models/projectUserSetting.md +0 -15
- package/schema/models/publicProjectInfo.md +0 -20
- package/schema/models/publicProjectMembership.md +0 -17
- package/schema/models/publicProjectVisit.md +0 -16
- package/schema/models/queueSelection.md +0 -19
- package/schema/models/resolvableEntryHistory.md +0 -20
- package/schema/models/resolvableNotification.md +0 -30
- package/schema/models/resolvableParticipant.md +0 -25
- package/schema/models/resolvableParticipantHistory.md +0 -23
- package/schema/models/savedSearch.md +0 -18
- package/schema/models/stripeAccountSync.md +0 -29
- package/schema/models/timeTrackingSegment.md +0 -24
- package/schema/models/timeTrackingSum.md +0 -18
- package/schema/models/userDismissedHint.md +0 -16
- package/schema/models/userEmail.md +0 -18
- package/schema/models/userInvitation.md +0 -20
- package/schema/models/userInviteCode.md +0 -23
- package/schema/models/userOnboarding.md +0 -14
- package/schema/models/userProjectAccess.md +0 -17
- package/schema/models/userReportEmail.md +0 -19
- package/schema/models/userReportSetting.md +0 -23
- package/schema/models/userReportToken.md +0 -18
- package/schema/models/userTag.md +0 -18
- package/schema/models/visionBoard.md +0 -21
- package/schema/models/visionBoardQuery.md +0 -22
- package/schema/models/wizard.md +0 -19
- package/schema/models/workflowItemHistory.md +0 -18
|
@@ -1,39 +1,44 @@
|
|
|
1
1
|
# milestone
|
|
2
2
|
|
|
3
|
+
A date that cards are planned towards. It belongs to a list of projects, or with `isGlobal` to all projects of the organization.
|
|
4
|
+
|
|
3
5
|
Key: `id`
|
|
4
6
|
|
|
5
7
|
## Fields
|
|
6
8
|
|
|
7
|
-
- `
|
|
8
|
-
- `
|
|
9
|
-
|
|
10
|
-
- `
|
|
11
|
-
- `
|
|
12
|
-
- `createdAt`: Date (ISO
|
|
13
|
-
- `
|
|
14
|
-
- `
|
|
15
|
-
- `
|
|
16
|
-
- `handSyncEnabled`:
|
|
17
|
-
|
|
18
|
-
- `
|
|
19
|
-
- `
|
|
20
|
-
- `
|
|
21
|
-
|
|
22
|
-
- `
|
|
23
|
-
|
|
24
|
-
- `
|
|
9
|
+
- `accountId`: [`AccountId`](account.md), foreign key of `account`
|
|
10
|
+
- `accountSeq`: `number`
|
|
11
|
+
The milestone's number within the organization. The web app uses it in the milestone's URL: `/milestones/<accountSeq>`.
|
|
12
|
+
- `color`: [`MilestoneColor`](../types.md#milestonecolor)
|
|
13
|
+
- `coverFileId`: [`FileId`](file.md)` | null`, foreign key of `coverFile` — **preview**
|
|
14
|
+
- `createdAt`: `Date` (sent as an ISO timestamp)
|
|
15
|
+
- `creatorId`: [`UserId`](user.md), foreign key of `creator`
|
|
16
|
+
- `date`: `{year: number; month: number; day: number}` (sent as `YYYY-MM-DD`)
|
|
17
|
+
- `description`: `string | null`
|
|
18
|
+
- `handSyncEnabled`: `boolean` — **preview**
|
|
19
|
+
Its cards that are not done and have an assignee are added to the assignee's Hand.
|
|
20
|
+
- `id`: `MilestoneId`
|
|
21
|
+
- `isDeleted`: `boolean`
|
|
22
|
+
- `isGlobal`: `boolean`
|
|
23
|
+
The milestone belongs to all projects of the organization, also to projects created later.
|
|
24
|
+
- `manualOrderLabels`: `(string | null)[]` — **preview**
|
|
25
|
+
The names of the zones the web app groups the cards into when they are ordered by hand, in order. `null` is the zone without a name.
|
|
26
|
+
- `name`: `string`
|
|
27
|
+
- `startDate`: `{year: number; month: number; day: number} | null` (sent as `YYYY-MM-DD`)
|
|
28
|
+
- `userCapacities`: `{[userId: UserId]: number}` (uses [`UserId`](user.md)) — **preview**
|
|
29
|
+
The planned effort per user, keyed by user id. The web app compares it with the effort of the user's cards, where a card without `effort` counts as `account.fallbackEffort`.
|
|
25
30
|
|
|
26
31
|
## Relations
|
|
27
32
|
|
|
28
33
|
### belongsTo
|
|
29
34
|
|
|
30
35
|
- `account` → [account](account.md) (via `accountId`)
|
|
36
|
+
- `coverFile` → [file](file.md) (via `coverFileId`), optional — **preview**
|
|
31
37
|
- `creator` → [user](user.md) (via `creatorId`)
|
|
32
|
-
- `coverFile` → [file](file.md) (via `coverFileId`)
|
|
33
38
|
|
|
34
39
|
### hasMany
|
|
35
40
|
|
|
36
|
-
- `milestoneProjects` → [milestoneProject](milestoneProject.md)
|
|
37
41
|
- `cards` → [card](card.md)
|
|
38
|
-
- `
|
|
39
|
-
- `progress` → [milestoneProgress](milestoneProgress.md)
|
|
42
|
+
- `milestoneProjects` → [milestoneProject](milestoneProject.md)
|
|
43
|
+
- `progress` → [milestoneProgress](milestoneProgress.md) — **preview**
|
|
44
|
+
The daily progress history.
|
|
@@ -1,14 +1,20 @@
|
|
|
1
1
|
# milestoneProgress
|
|
2
2
|
|
|
3
|
+
The state of a milestone's cards on a day (UTC). A row is only written on days when the numbers change, so a day without a row has the numbers of the row before it.
|
|
4
|
+
|
|
5
|
+
**preview**: this model may change in any release. Each change is listed in the [API changelog](https://manual.codecks.io/api-changelog/).
|
|
6
|
+
|
|
3
7
|
Key: `milestoneId`, `date`
|
|
4
8
|
|
|
5
9
|
## Fields
|
|
6
10
|
|
|
7
|
-
- `
|
|
8
|
-
- `milestoneId`:
|
|
11
|
+
- `date`: `string` — **preview**
|
|
12
|
+
- `milestoneId`: [`MilestoneId`](milestone.md), foreign key of `milestone` — **preview**
|
|
13
|
+
- `progress`: `unknown` — **preview**
|
|
14
|
+
Counts the cards in decks of active projects by their `derivedStatus`, with all done states counted as `done`. `cards` and `effort` have the card count and the effort sum for each state (`done`, `started`, `review`, `blocked`, `snoozing`, `assigned`, `unassigned`, `hero`), `stats` has `[count, effort sum, cards without effort]` for each state and `noEffortCards` counts the cards without effort. States without cards are left out.
|
|
9
15
|
|
|
10
16
|
## Relations
|
|
11
17
|
|
|
12
18
|
### belongsTo
|
|
13
19
|
|
|
14
|
-
- `milestone` → [milestone](milestone.md) (via `milestoneId`)
|
|
20
|
+
- `milestone` → [milestone](milestone.md) (via `milestoneId`) — **preview**
|
|
@@ -1,17 +1,19 @@
|
|
|
1
1
|
# milestoneProject
|
|
2
2
|
|
|
3
|
+
Links a milestone to a project whose cards and decks can use it. A milestone with `isGlobal` is linked to every project.
|
|
4
|
+
|
|
3
5
|
Key: `milestoneId`, `projectId`
|
|
4
6
|
|
|
5
7
|
## Fields
|
|
6
8
|
|
|
7
|
-
- `
|
|
8
|
-
- `
|
|
9
|
-
- `
|
|
9
|
+
- `accountId`: [`AccountId`](account.md), foreign key of `account`
|
|
10
|
+
- `milestoneId`: [`MilestoneId`](milestone.md), foreign key of `milestone`
|
|
11
|
+
- `projectId`: [`ProjectId`](project.md), foreign key of `project`
|
|
10
12
|
|
|
11
13
|
## Relations
|
|
12
14
|
|
|
13
15
|
### belongsTo
|
|
14
16
|
|
|
17
|
+
- `account` → [account](account.md) (via `accountId`)
|
|
15
18
|
- `milestone` → [milestone](milestone.md) (via `milestoneId`)
|
|
16
19
|
- `project` → [project](project.md) (via `projectId`)
|
|
17
|
-
- `account` → [account](account.md) (via `accountId`)
|
package/schema/models/project.md
CHANGED
|
@@ -1,58 +1,34 @@
|
|
|
1
1
|
# project
|
|
2
2
|
|
|
3
|
+
Groups decks. A card belongs to the project of its deck.
|
|
4
|
+
|
|
3
5
|
Key: `id`
|
|
4
6
|
|
|
5
7
|
## Fields
|
|
6
8
|
|
|
7
|
-
- `
|
|
8
|
-
- `
|
|
9
|
-
- `
|
|
10
|
-
- `
|
|
11
|
-
- `
|
|
12
|
-
- `
|
|
13
|
-
|
|
14
|
-
- `
|
|
15
|
-
|
|
16
|
-
- `publicRegistryAgreement`: string, optional
|
|
17
|
-
- `publicLayoutVersion`: string
|
|
18
|
-
- `publicIsExplicit`: string
|
|
19
|
-
- `markerColor`: string, optional
|
|
20
|
-
- `effortIcon`: string, optional
|
|
21
|
-
- `spaces`: string
|
|
22
|
-
- `publicPath`: string, optional
|
|
23
|
-
- `publicMessage`: string, optional
|
|
24
|
-
- `publicHeading`: string, optional
|
|
25
|
-
- `publicBackgroundColor`: string, optional
|
|
26
|
-
- `accountId`: string (foreign key ID) → account
|
|
27
|
-
- `coverFileId`: string (foreign key ID) → file, optional
|
|
28
|
-
- `publicBannerFileId`: string (foreign key ID) → file, optional
|
|
29
|
-
- `publicTileFileId`: string (foreign key ID) → file, optional
|
|
30
|
-
- `publicBackgroundImageId`: string (foreign key ID) → file, optional
|
|
9
|
+
- `accountId`: [`AccountId`](account.md), foreign key of `account`
|
|
10
|
+
- `coverFileId`: [`FileId`](file.md)` | null`, foreign key of `coverFile`
|
|
11
|
+
- `createdAt`: `Date` (sent as an ISO timestamp)
|
|
12
|
+
- `id`: `ProjectId`
|
|
13
|
+
- `name`: `string`
|
|
14
|
+
- `spaces`: `unknown` — **preview**
|
|
15
|
+
The spaces that group the project's decks. Removing a space moves its decks into the first remaining one.
|
|
16
|
+
- `visibility`: `"default" | "archived" | "deleted" | (string & {})`
|
|
17
|
+
Setting `archived` or `deleted` closes all open comment threads on the project's cards.
|
|
31
18
|
|
|
32
19
|
## Relations
|
|
33
20
|
|
|
34
21
|
### belongsTo
|
|
35
22
|
|
|
36
23
|
- `account` → [account](account.md) (via `accountId`)
|
|
37
|
-
- `coverFile` → [file](file.md) (via `coverFileId`)
|
|
38
|
-
- `publicBannerFile` → [file](file.md) (via `publicBannerFileId`)
|
|
39
|
-
- `publicTileFile` → [file](file.md) (via `publicTileFileId`)
|
|
40
|
-
- `publicBackgroundImage` → [file](file.md) (via `publicBackgroundImageId`)
|
|
41
|
-
|
|
42
|
-
### hasOne
|
|
43
|
-
|
|
44
|
-
- `publicProjectInfo` → [publicProjectInfo](publicProjectInfo.md)
|
|
24
|
+
- `coverFile` → [file](file.md) (via `coverFileId`), optional
|
|
45
25
|
|
|
46
26
|
### hasMany
|
|
47
27
|
|
|
48
28
|
- `decks` → [deck](deck.md)
|
|
49
29
|
- `milestoneProjects` → [milestoneProject](milestoneProject.md)
|
|
30
|
+
Links to the milestones this project can use.
|
|
50
31
|
- `sprintProjects` → [sprintProject](sprintProject.md)
|
|
51
|
-
|
|
52
|
-
- `dailyPublicProjectMembership` → [dailyPublicProjectMembership](dailyPublicProjectMembership.md)
|
|
53
|
-
- `publicProjectMemberships` → [publicProjectMembership](publicProjectMembership.md)
|
|
54
|
-
- `cardUpvotes` → [cardUpvote](cardUpvote.md)
|
|
32
|
+
Links to the run configs this project can use.
|
|
55
33
|
- `tags` → [projectTag](projectTag.md)
|
|
56
|
-
|
|
57
|
-
- `explicitProjectUsers` → [projectUser](projectUser.md)
|
|
58
|
-
- `access` → [userProjectAccess](userProjectAccess.md)
|
|
34
|
+
The project's tag list. A card in the project with one of these tags lists it in `masterTags`.
|
|
@@ -1,16 +1,21 @@
|
|
|
1
1
|
# projectTag
|
|
2
2
|
|
|
3
|
+
A tag in a project's tag list. A card in the project with this tag lists it in `masterTags`.
|
|
4
|
+
|
|
3
5
|
Key: `id`
|
|
4
6
|
|
|
5
7
|
## Fields
|
|
6
8
|
|
|
7
|
-
- `
|
|
8
|
-
|
|
9
|
-
- `
|
|
10
|
-
- `
|
|
11
|
-
|
|
12
|
-
- `
|
|
13
|
-
- `
|
|
9
|
+
- `color`: `string | null`
|
|
10
|
+
A hex color like `#ff0000` for cards with this tag. The web app sets either `color` or `emoji`, not both.
|
|
11
|
+
- `createdAt`: `Date` (sent as an ISO timestamp)
|
|
12
|
+
- `description`: `string | null`
|
|
13
|
+
What the tag is for, as markdown.
|
|
14
|
+
- `emoji`: `string | null`
|
|
15
|
+
- `id`: `ProjectTagId`
|
|
16
|
+
- `projectId`: [`ProjectId`](project.md), foreign key of `project`
|
|
17
|
+
- `tag`: `string`
|
|
18
|
+
Without the `#`. Renaming it also renames the tag in the `content` and `masterTags` of the project's cards.
|
|
14
19
|
|
|
15
20
|
## Relations
|
|
16
21
|
|
|
@@ -1,21 +1,25 @@
|
|
|
1
1
|
# queueEntry
|
|
2
2
|
|
|
3
|
+
A card in a user's Hand. When a card is done, its owner gets an entry in their Hand's done pile, even if the card wasn't in their Hand.
|
|
4
|
+
|
|
3
5
|
Key: `id`
|
|
4
6
|
|
|
5
7
|
## Fields
|
|
6
8
|
|
|
7
|
-
- `
|
|
8
|
-
- `
|
|
9
|
-
|
|
10
|
-
- `
|
|
11
|
-
- `
|
|
12
|
-
- `
|
|
13
|
-
- `
|
|
9
|
+
- `accountId`: [`AccountId`](account.md), foreign key of `account`
|
|
10
|
+
- `cardDoneAt`: `Date | null` (sent as an ISO timestamp)
|
|
11
|
+
When the card was done. Other users' entries for the card are removed then. Setting the card back to not done moves the entry to the end of the Hand.
|
|
12
|
+
- `cardId`: [`CardId`](card.md), foreign key of `card`
|
|
13
|
+
- `createdAt`: `Date` (sent as an ISO timestamp)
|
|
14
|
+
- `id`: `QueueEntryId`
|
|
15
|
+
- `sortIndex`: `number | null`
|
|
16
|
+
The position in the Hand, `0` is the first card. `null` once the card is done.
|
|
17
|
+
- `userId`: [`UserId`](user.md), foreign key of `user`
|
|
14
18
|
|
|
15
19
|
## Relations
|
|
16
20
|
|
|
17
21
|
### belongsTo
|
|
18
22
|
|
|
19
23
|
- `account` → [account](account.md) (via `accountId`)
|
|
20
|
-
- `user` → [user](user.md) (via `userId`)
|
|
21
24
|
- `card` → [card](card.md) (via `cardId`)
|
|
25
|
+
- `user` → [user](user.md) (via `userId`)
|
package/schema/models/release.md
CHANGED
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
# release
|
|
2
2
|
|
|
3
|
+
An entry in the Codecks changelog. It's the same for every organization.
|
|
4
|
+
|
|
3
5
|
Key: `id`
|
|
4
6
|
|
|
5
7
|
## Fields
|
|
6
8
|
|
|
7
|
-
- `
|
|
8
|
-
|
|
9
|
-
- `
|
|
10
|
-
- `
|
|
11
|
-
- `title`: string
|
|
12
|
-
- `
|
|
9
|
+
- `content`: `string`
|
|
10
|
+
The release notes as markdown.
|
|
11
|
+
- `createdAt`: `Date` (sent as an ISO timestamp)
|
|
12
|
+
- `id`: `ReleaseId`
|
|
13
|
+
- `title`: `string`
|
|
14
|
+
- `version`: `string`
|
|
@@ -1,32 +1,36 @@
|
|
|
1
1
|
# resolvable
|
|
2
2
|
|
|
3
|
+
A comment thread on a card. Its `context` says if it's a plain conversation or if it marks the card as blocked or in review.
|
|
4
|
+
|
|
3
5
|
Key: `id`
|
|
4
6
|
|
|
5
7
|
## Fields
|
|
6
8
|
|
|
7
|
-
- `
|
|
8
|
-
- `
|
|
9
|
-
- `
|
|
10
|
-
- `
|
|
11
|
-
|
|
12
|
-
- `createdAt`: Date (ISO
|
|
13
|
-
- `
|
|
14
|
-
- `
|
|
15
|
-
- `
|
|
16
|
-
|
|
17
|
-
- `
|
|
9
|
+
- `accountId`: [`AccountId`](account.md), foreign key of `account`
|
|
10
|
+
- `cardId`: [`CardId`](card.md), foreign key of `card`
|
|
11
|
+
- `closedAt`: `Date | null` (sent as an ISO timestamp)
|
|
12
|
+
- `context`: `"block" | "review" | "comment" | (string & {})`
|
|
13
|
+
`block` marks the card as blocked and `review` marks it as in review while the thread is open (see `card.derivedStatus`). `comment` is a plain conversation.
|
|
14
|
+
- `createdAt`: `Date` (sent as an ISO timestamp)
|
|
15
|
+
- `creatorId`: [`UserId`](user.md), foreign key of `creator`
|
|
16
|
+
- `id`: `ResolvableId`
|
|
17
|
+
- `isClosed`: `boolean`
|
|
18
|
+
Archiving or deleting the card closes its open threads.
|
|
19
|
+
- `reopenedAt`: `Date | null` (sent as an ISO timestamp)
|
|
20
|
+
Only set while the thread is open again after being closed. Closing it clears the value.
|
|
18
21
|
|
|
19
22
|
## Relations
|
|
20
23
|
|
|
21
24
|
### belongsTo
|
|
22
25
|
|
|
23
|
-
- `card` → [card](card.md) (via `cardId`)
|
|
24
26
|
- `account` → [account](account.md) (via `accountId`)
|
|
27
|
+
- `card` → [card](card.md) (via `cardId`)
|
|
28
|
+
- `closedBy` → [user](user.md), optional
|
|
29
|
+
`null` while the thread is open, or when it was closed automatically.
|
|
25
30
|
- `creator` → [user](user.md) (via `creatorId`)
|
|
26
|
-
- `
|
|
31
|
+
- `reopenedBy` → [user](user.md), optional
|
|
32
|
+
Only set while the thread is open again after being closed.
|
|
27
33
|
|
|
28
34
|
### hasMany
|
|
29
35
|
|
|
30
|
-
- `participants` → [resolvableParticipant](resolvableParticipant.md)
|
|
31
|
-
- `participantHistories` → [resolvableParticipantHistory](resolvableParticipantHistory.md)
|
|
32
36
|
- `entries` → [resolvableEntry](resolvableEntry.md)
|
|
@@ -1,28 +1,31 @@
|
|
|
1
1
|
# resolvableEntry
|
|
2
2
|
|
|
3
|
+
A comment in a comment thread.
|
|
4
|
+
|
|
3
5
|
Key: `entryId`
|
|
4
6
|
|
|
5
7
|
## Fields
|
|
6
8
|
|
|
7
|
-
- `
|
|
8
|
-
- `
|
|
9
|
-
- `
|
|
10
|
-
|
|
11
|
-
- `
|
|
12
|
-
- `
|
|
13
|
-
- `
|
|
14
|
-
|
|
15
|
-
- `
|
|
9
|
+
- `authorId`: [`UserId`](user.md), foreign key of `author`
|
|
10
|
+
- `cardId`: [`CardId`](card.md), foreign key of `card`
|
|
11
|
+
- `content`: `string`
|
|
12
|
+
Markdown. Mentions are stored as `@[userId:<id>]`.
|
|
13
|
+
- `createdAt`: `Date` (sent as an ISO timestamp)
|
|
14
|
+
- `entryId`: `ResolvableEntryId`
|
|
15
|
+
- `lastChangedAt`: `Date` (sent as an ISO timestamp)
|
|
16
|
+
When the comment was last edited. Same as `createdAt` if it never was.
|
|
17
|
+
- `resolvableId`: [`ResolvableId`](resolvable.md), foreign key of `resolvable`
|
|
18
|
+
- `version`: `number` — **preview**
|
|
19
|
+
Starts at 1 and goes up with every edit.
|
|
16
20
|
|
|
17
21
|
## Relations
|
|
18
22
|
|
|
19
23
|
### belongsTo
|
|
20
24
|
|
|
21
|
-
- `resolvable` → [resolvable](resolvable.md) (via `resolvableId`)
|
|
22
|
-
- `card` → [card](card.md) (via `cardId`)
|
|
23
25
|
- `author` → [user](user.md) (via `authorId`)
|
|
26
|
+
- `card` → [card](card.md) (via `cardId`)
|
|
27
|
+
- `resolvable` → [resolvable](resolvable.md) (via `resolvableId`)
|
|
24
28
|
|
|
25
29
|
### hasMany
|
|
26
30
|
|
|
27
|
-
- `reactions` → [resolvableEntryReaction](resolvableEntryReaction.md)
|
|
28
|
-
- `histories` → [resolvableEntryHistory](resolvableEntryHistory.md)
|
|
31
|
+
- `reactions` → [resolvableEntryReaction](resolvableEntryReaction.md) — **preview**
|
|
@@ -1,23 +1,27 @@
|
|
|
1
1
|
# resolvableEntryReaction
|
|
2
2
|
|
|
3
|
+
An emoji reaction to a comment. A user can add each emoji only once per comment.
|
|
4
|
+
|
|
5
|
+
**preview**: this model may change in any release. Each change is listed in the [API changelog](https://manual.codecks.io/api-changelog/).
|
|
6
|
+
|
|
3
7
|
Key: `id`
|
|
4
8
|
|
|
5
9
|
## Fields
|
|
6
10
|
|
|
7
|
-
- `
|
|
8
|
-
- `
|
|
9
|
-
- `
|
|
10
|
-
- `
|
|
11
|
-
- `
|
|
12
|
-
- `
|
|
13
|
-
- `
|
|
14
|
-
|
|
11
|
+
- `accountId`: [`AccountId`](account.md), foreign key of `account` — **preview**
|
|
12
|
+
- `createdAt`: `Date` (sent as an ISO timestamp) — **preview**
|
|
13
|
+
- `entryId`: [`ResolvableEntryId`](resolvableEntry.md), foreign key of `resolvableEntry` — **preview**
|
|
14
|
+
- `id`: `ResolvableEntryReactionId`
|
|
15
|
+
- `resolvableId`: [`ResolvableId`](resolvable.md), foreign key of `resolvable` — **preview**
|
|
16
|
+
- `userId`: [`UserId`](user.md), foreign key of `user` — **preview**
|
|
17
|
+
- `value`: `{type: "emoji" | (string & {}); value: string}` — **preview**
|
|
18
|
+
`{"type": "emoji", "value": "👍"}`. `value` is the emoji character itself.
|
|
15
19
|
|
|
16
20
|
## Relations
|
|
17
21
|
|
|
18
22
|
### belongsTo
|
|
19
23
|
|
|
20
|
-
- `
|
|
21
|
-
- `
|
|
22
|
-
- `
|
|
23
|
-
- `
|
|
24
|
+
- `account` → [account](account.md) (via `accountId`) — **preview**
|
|
25
|
+
- `resolvable` → [resolvable](resolvable.md) (via `resolvableId`) — **preview**
|
|
26
|
+
- `resolvableEntry` → [resolvableEntry](resolvableEntry.md) (via `entryId`) — **preview**
|
|
27
|
+
- `user` → [user](user.md) (via `userId`) — **preview**
|
package/schema/models/sprint.md
CHANGED
|
@@ -1,42 +1,52 @@
|
|
|
1
1
|
# sprint
|
|
2
2
|
|
|
3
|
+
A run: one time box of a Run Config, from `startDate` to `endDate`. Codecks creates the upcoming runs ahead of time and completes a run when it ends.
|
|
4
|
+
|
|
3
5
|
Key: `id`
|
|
4
6
|
|
|
5
7
|
## Fields
|
|
6
8
|
|
|
7
|
-
- `
|
|
8
|
-
- `
|
|
9
|
-
|
|
10
|
-
- `
|
|
11
|
-
|
|
12
|
-
- `
|
|
13
|
-
|
|
14
|
-
- `
|
|
15
|
-
- `
|
|
16
|
-
- `
|
|
17
|
-
- `
|
|
18
|
-
|
|
19
|
-
- `
|
|
20
|
-
|
|
21
|
-
- `
|
|
22
|
-
- `
|
|
23
|
-
|
|
24
|
-
- `
|
|
25
|
-
- `
|
|
26
|
-
|
|
9
|
+
- `accountId`: [`AccountId`](account.md), foreign key of `account`
|
|
10
|
+
- `accountSeq`: `number`
|
|
11
|
+
The run's number within the organization. The web app uses it in the run's URL: `/milestones/run/<accountSeq>`.
|
|
12
|
+
- `autoMilestoneId`: [`MilestoneId`](milestone.md)` | null`, foreign key of `autoMilestone` — **preview**
|
|
13
|
+
Cards that are added to this run get this milestone, unless they already have one.
|
|
14
|
+
- `completedAt`: `Date | null` (sent as an ISO timestamp)
|
|
15
|
+
When the run was completed, at its end or with `complete` in `sprints/updateSprint`.
|
|
16
|
+
- `coverFileId`: [`FileId`](file.md)` | null`, foreign key of `coverFile` — **preview**
|
|
17
|
+
- `createdAt`: `Date` (sent as an ISO timestamp)
|
|
18
|
+
- `description`: `string | null`
|
|
19
|
+
- `endDate`: `{year: number; month: number; day: number}` (sent as `YYYY-MM-DD`)
|
|
20
|
+
The last day of the run.
|
|
21
|
+
- `handSyncEnabled`: `boolean` — **preview**
|
|
22
|
+
A card that is created in this run with an assignee is added to the assignee's Hand.
|
|
23
|
+
- `id`: `SprintId`
|
|
24
|
+
- `index`: `number`
|
|
25
|
+
The position of the run within its Run Config, starting at 0. The web app shows `index + 1` as the run's number.
|
|
26
|
+
- `isDeleted`: `boolean`
|
|
27
|
+
- `lockedAt`: `Date | null` (sent as an ISO timestamp) — **preview**
|
|
28
|
+
When Beast Mode started for this run. In Beast Mode the run's cards are locked in, and moving one of them to another run raises its Beast level. `null` while it is off.
|
|
29
|
+
- `manualOrderLabels`: `(string | null)[]` — **preview**
|
|
30
|
+
The names of the zones the web app groups the cards into when they are ordered by hand, in order. `null` is the zone without a name. A new run starts with the zones of the run before it.
|
|
31
|
+
- `name`: `string | null`
|
|
32
|
+
`null` unless set by hand. The web app then shows a label from the Run Config's `runLabelTemplate`, or `Run <index + 1>`.
|
|
33
|
+
- `sprintConfigId`: [`SprintConfigId`](sprintConfig.md), foreign key of `sprintConfig`
|
|
34
|
+
- `startDate`: `{year: number; month: number; day: number}` (sent as `YYYY-MM-DD`)
|
|
35
|
+
- `userCapacities`: `{[userId: UserId]: number}` (uses [`UserId`](user.md)) — **preview**
|
|
36
|
+
The planned effort per user, keyed by user id. The web app compares it with the effort of the user's cards, where a card without `effort` counts as `account.fallbackEffort`. A new run starts with the capacities of the run before it.
|
|
27
37
|
|
|
28
38
|
## Relations
|
|
29
39
|
|
|
30
40
|
### belongsTo
|
|
31
41
|
|
|
32
42
|
- `account` → [account](account.md) (via `accountId`)
|
|
43
|
+
- `autoMilestone` → [milestone](milestone.md) (via `autoMilestoneId`), optional — **preview**
|
|
44
|
+
Cards that are added to this run get this milestone, unless they already have one.
|
|
45
|
+
- `coverFile` → [file](file.md) (via `coverFileId`), optional — **preview**
|
|
33
46
|
- `sprintConfig` → [sprintConfig](sprintConfig.md) (via `sprintConfigId`)
|
|
34
|
-
- `creator` → [user](user.md) (via `creatorId`)
|
|
35
|
-
- `coverFile` → [file](file.md) (via `coverFileId`)
|
|
36
|
-
- `autoMilestone` → [milestone](milestone.md) (via `autoMilestoneId`)
|
|
37
47
|
|
|
38
48
|
### hasMany
|
|
39
49
|
|
|
40
50
|
- `cards` → [card](card.md)
|
|
41
|
-
- `progress` → [sprintProgress](sprintProgress.md)
|
|
42
|
-
|
|
51
|
+
- `progress` → [sprintProgress](sprintProgress.md) — **preview**
|
|
52
|
+
The daily progress history.
|
|
@@ -1,28 +1,31 @@
|
|
|
1
1
|
# sprintConfig
|
|
2
2
|
|
|
3
|
+
A Run Config. It creates runs of the same length one after the other, like sprints, for its projects.
|
|
4
|
+
|
|
3
5
|
Key: `id`
|
|
4
6
|
|
|
5
7
|
## Fields
|
|
6
8
|
|
|
7
|
-
- `
|
|
8
|
-
- `
|
|
9
|
-
|
|
10
|
-
- `
|
|
11
|
-
|
|
12
|
-
- `
|
|
13
|
-
|
|
14
|
-
- `
|
|
15
|
-
|
|
16
|
-
- `
|
|
17
|
-
- `createdAt`: Date (ISO
|
|
18
|
-
- `
|
|
19
|
-
- `
|
|
20
|
-
- `
|
|
21
|
-
|
|
22
|
-
- `
|
|
23
|
-
|
|
24
|
-
- `
|
|
25
|
-
- `
|
|
9
|
+
- `accountId`: [`AccountId`](account.md), foreign key of `account`
|
|
10
|
+
- `autoAssignNewCard`: `boolean` — **preview**
|
|
11
|
+
The web app puts new cards in its projects into the current run. Journeys do the same, `cards/create` doesn't.
|
|
12
|
+
- `autoAssignStartedCard`: `boolean` — **preview**
|
|
13
|
+
A card in one of its projects that is started without a run is added to the current run.
|
|
14
|
+
- `autoBeastModeDurationHours`: `number | null` — **preview**
|
|
15
|
+
Beast Mode starts on its own this many hours after the start of a run, counted from midnight in the Run Config's time zone. `0` starts it right away, `null` turns it off.
|
|
16
|
+
- `beastGracePeriodHours`: `number` — **preview**
|
|
17
|
+
In Beast Mode, a card added to the run is only locked in after this many hours. Until then it can move to another run without raising its Beast level.
|
|
18
|
+
- `color`: [`MilestoneColor`](../types.md#milestonecolor)
|
|
19
|
+
- `createdAt`: `Date` (sent as an ISO timestamp)
|
|
20
|
+
- `creatorId`: [`UserId`](user.md), foreign key of `creator`
|
|
21
|
+
- `id`: `SprintConfigId`
|
|
22
|
+
- `isGlobal`: `boolean`
|
|
23
|
+
The Run Config belongs to all projects of the organization, also to projects created later.
|
|
24
|
+
- `moveOnFinish`: `("undone" | "review" | "blocked" | (string & {}))[]` — **preview**
|
|
25
|
+
Which cards move to the next run when a run ends: `review` for cards with an open review, `blocked` for cards with an open blocker and `undone` for all other cards that aren't done. Archived cards and docs stay.
|
|
26
|
+
- `name`: `string`
|
|
27
|
+
- `runLabelTemplate`: `string | null` — **preview**
|
|
28
|
+
The label for runs without a `name`. `%RUN_NR%` becomes the run's `index + 1` and `%CALENDAR_WEEK%` the ISO week of its `startDate`. `null` means `Run %RUN_NR%`.
|
|
26
29
|
|
|
27
30
|
## Relations
|
|
28
31
|
|
|
@@ -33,6 +36,7 @@ Key: `id`
|
|
|
33
36
|
|
|
34
37
|
### hasMany
|
|
35
38
|
|
|
39
|
+
- `progress` → [sprintConfigProgress](sprintConfigProgress.md) — **preview**
|
|
40
|
+
The daily history of the done cards across all runs.
|
|
36
41
|
- `sprintProjects` → [sprintProject](sprintProject.md)
|
|
37
42
|
- `sprints` → [sprint](sprint.md)
|
|
38
|
-
- `progress` → [sprintConfigProgress](sprintConfigProgress.md)
|
|
@@ -1,14 +1,20 @@
|
|
|
1
1
|
# sprintConfigProgress
|
|
2
2
|
|
|
3
|
+
The done cards of all runs of a Run Config on a day (UTC). A row is only written on days when the numbers change, so a day without a row has the numbers of the row before it.
|
|
4
|
+
|
|
5
|
+
**preview**: this model may change in any release. Each change is listed in the [API changelog](https://manual.codecks.io/api-changelog/).
|
|
6
|
+
|
|
3
7
|
Key: `sprintConfigId`, `date`
|
|
4
8
|
|
|
5
9
|
## Fields
|
|
6
10
|
|
|
7
|
-
- `
|
|
8
|
-
- `
|
|
11
|
+
- `date`: `string` — **preview**
|
|
12
|
+
- `progress`: `unknown` — **preview**
|
|
13
|
+
`stats.done` is `[count, effort sum, cards without effort]` of the done cards in all runs, counting only cards in decks of active projects.
|
|
14
|
+
- `sprintConfigId`: [`SprintConfigId`](sprintConfig.md), foreign key of `sprintConfig` — **preview**
|
|
9
15
|
|
|
10
16
|
## Relations
|
|
11
17
|
|
|
12
18
|
### belongsTo
|
|
13
19
|
|
|
14
|
-
- `sprintConfig` → [sprintConfig](sprintConfig.md) (via `sprintConfigId`)
|
|
20
|
+
- `sprintConfig` → [sprintConfig](sprintConfig.md) (via `sprintConfigId`) — **preview**
|
|
@@ -1,14 +1,20 @@
|
|
|
1
1
|
# sprintProgress
|
|
2
2
|
|
|
3
|
+
The state of a run's cards on a day (UTC). A row is only written on days when the numbers change, so a day without a row has the numbers of the row before it.
|
|
4
|
+
|
|
5
|
+
**preview**: this model may change in any release. Each change is listed in the [API changelog](https://manual.codecks.io/api-changelog/).
|
|
6
|
+
|
|
3
7
|
Key: `sprintId`, `date`
|
|
4
8
|
|
|
5
9
|
## Fields
|
|
6
10
|
|
|
7
|
-
- `
|
|
8
|
-
- `
|
|
11
|
+
- `date`: `string` — **preview**
|
|
12
|
+
- `progress`: `unknown` — **preview**
|
|
13
|
+
Counts the cards in decks of active projects by their `derivedStatus`, with all done states counted as `done`. `cards` and `effort` have the card count and the effort sum for each state (`done`, `started`, `review`, `blocked`, `snoozing`, `assigned`, `unassigned`, `hero`), `stats` has `[count, effort sum, cards without effort]` for each state and `noEffortCards` counts the cards without effort. States without cards are left out.
|
|
14
|
+
- `sprintId`: [`SprintId`](sprint.md), foreign key of `sprint` — **preview**
|
|
9
15
|
|
|
10
16
|
## Relations
|
|
11
17
|
|
|
12
18
|
### belongsTo
|
|
13
19
|
|
|
14
|
-
- `sprint` → [sprint](sprint.md) (via `sprintId`)
|
|
20
|
+
- `sprint` → [sprint](sprint.md) (via `sprintId`) — **preview**
|
|
@@ -1,17 +1,19 @@
|
|
|
1
1
|
# sprintProject
|
|
2
2
|
|
|
3
|
+
Links a run config to a project whose cards can be planned into its runs. A run config with `isGlobal` is linked to every project.
|
|
4
|
+
|
|
3
5
|
Key: `sprintConfigId`, `projectId`
|
|
4
6
|
|
|
5
7
|
## Fields
|
|
6
8
|
|
|
7
|
-
- `
|
|
8
|
-
- `projectId`:
|
|
9
|
-
- `
|
|
9
|
+
- `accountId`: [`AccountId`](account.md), foreign key of `account`
|
|
10
|
+
- `projectId`: [`ProjectId`](project.md), foreign key of `project`
|
|
11
|
+
- `sprintConfigId`: [`SprintConfigId`](sprintConfig.md), foreign key of `sprintConfig`
|
|
10
12
|
|
|
11
13
|
## Relations
|
|
12
14
|
|
|
13
15
|
### belongsTo
|
|
14
16
|
|
|
15
|
-
- `sprintConfig` → [sprintConfig](sprintConfig.md) (via `sprintConfigId`)
|
|
16
|
-
- `project` → [project](project.md) (via `projectId`)
|
|
17
17
|
- `account` → [account](account.md) (via `accountId`)
|
|
18
|
+
- `project` → [project](project.md) (via `projectId`)
|
|
19
|
+
- `sprintConfig` → [sprintConfig](sprintConfig.md) (via `sprintConfigId`)
|