@abyss-project/tools 2.6.0 → 2.8.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 +32 -32
- package/dist/api/extraction.api.d.ts +4 -2
- package/dist/api/extraction.api.js +13 -2
- package/dist/api/extraction.api.js.map +1 -1
- package/dist/api/index.d.ts +0 -1
- package/dist/api/index.js +0 -1
- package/dist/api/index.js.map +1 -1
- package/dist/constants/index.d.ts +0 -1
- package/dist/constants/index.js +0 -1
- package/dist/constants/index.js.map +1 -1
- package/dist/index.d.ts +2 -13
- package/dist/index.js +2 -13
- package/dist/index.js.map +1 -1
- package/dist/types/enum/content-share.enum.d.ts +0 -1
- package/dist/types/enum/content-share.enum.js +0 -1
- package/dist/types/enum/content-share.enum.js.map +1 -1
- package/dist/types/enum/extraction-step-status.enum.d.ts +6 -0
- package/dist/types/enum/extraction-step-status.enum.js +11 -0
- package/dist/types/enum/extraction-step-status.enum.js.map +1 -0
- package/dist/types/enum/index.d.ts +1 -0
- package/dist/types/enum/index.js +1 -0
- package/dist/types/enum/index.js.map +1 -1
- package/dist/types/interface/api/requests/atlas-document.request.d.ts +1 -0
- package/dist/types/interface/api/requests/board-card-document.request.d.ts +1 -0
- package/dist/types/interface/api/requests/extraction.request.d.ts +4 -0
- package/dist/types/interface/api/requests/index.d.ts +0 -1
- package/dist/types/interface/api/requests/index.js +0 -1
- package/dist/types/interface/api/requests/index.js.map +1 -1
- package/dist/types/interface/api/responses/abyss.admin.response.d.ts +0 -1
- package/dist/types/interface/api/responses/atlas-document.response.d.ts +2 -4
- package/dist/types/interface/api/responses/board-card-document.response.d.ts +2 -4
- package/dist/types/interface/api/responses/extraction.response.d.ts +15 -0
- package/dist/types/interface/api/responses/index.d.ts +0 -1
- package/dist/types/interface/api/responses/index.js +0 -1
- package/dist/types/interface/api/responses/index.js.map +1 -1
- package/dist/types/interface/api/responses/metrics.response.d.ts +0 -1
- package/dist/types/interface/api/responses/transfer.response.d.ts +0 -4
- package/dist/types/interface/models/extraction-plan.dto.d.ts +30 -1
- package/dist/types/interface/models/extraction-plan.dto.js +3 -1
- package/dist/types/interface/models/extraction-plan.dto.js.map +1 -1
- package/dist/types/interface/models/extraction.dto.d.ts +2 -1
- package/dist/types/interface/models/extraction.dto.js.map +1 -1
- package/dist/types/interface/models/index.d.ts +1 -1
- package/dist/types/interface/models/index.js +1 -1
- package/dist/types/interface/models/index.js.map +1 -1
- package/dist/types/interface/models/project.dto.d.ts +0 -2
- package/dist/types/interface/models/upload-session.dto.d.ts +8 -0
- package/dist/types/interface/models/upload-session.dto.js +3 -0
- package/dist/types/interface/models/upload-session.dto.js.map +1 -0
- package/dist/types/interface/models/user.dto.d.ts +0 -2
- package/package.json +1 -1
- package/src/api/extraction.api.ts +35 -0
- package/src/api/index.ts +0 -3
- package/src/constants/index.ts +0 -1
- package/src/index.ts +5 -25
- package/src/types/enum/content-share.enum.ts +0 -1
- package/src/types/enum/extraction-step-status.enum.ts +7 -0
- package/src/types/enum/index.ts +1 -0
- package/src/types/interface/api/requests/atlas-document.request.ts +5 -0
- package/src/types/interface/api/requests/board-card-document.request.ts +5 -0
- package/src/types/interface/api/requests/extraction.request.ts +6 -0
- package/src/types/interface/api/requests/index.ts +0 -1
- package/src/types/interface/api/responses/abyss.admin.response.ts +0 -1
- package/src/types/interface/api/responses/atlas-document.response.ts +5 -4
- package/src/types/interface/api/responses/board-card-document.response.ts +5 -4
- package/src/types/interface/api/responses/extraction.response.ts +17 -0
- package/src/types/interface/api/responses/index.ts +0 -1
- package/src/types/interface/api/responses/metrics.response.ts +0 -1
- package/src/types/interface/api/responses/transfer.response.ts +0 -2
- package/src/types/interface/models/extraction-plan.dto.ts +43 -4
- package/src/types/interface/models/extraction.dto.ts +11 -1
- package/src/types/interface/models/index.ts +1 -1
- package/src/types/interface/models/project.dto.ts +0 -2
- package/src/types/interface/models/upload-session.dto.ts +24 -0
- package/src/types/interface/models/user.dto.ts +0 -2
- package/src/api/memo.api.ts +0 -97
- package/src/constants/memo.constants.ts +0 -3
- package/src/types/interface/api/requests/memo.request.ts +0 -49
- package/src/types/interface/api/responses/memo.response.ts +0 -32
- package/src/types/interface/models/memo.dto.ts +0 -23
|
@@ -8,9 +8,10 @@
|
|
|
8
8
|
import { ProviderKind, CostTier } from '../../enum/provider-kind.enum';
|
|
9
9
|
import { InterpreterKind } from '../../enum/interpreter-kind.enum';
|
|
10
10
|
import { CombineStrategy } from '../../enum/combine-strategy.enum';
|
|
11
|
+
import { ExtractionStepStatus } from '../../enum/extraction-step-status.enum';
|
|
11
12
|
|
|
12
13
|
// Re-export for consumers that import from this barrel.
|
|
13
|
-
export { ProviderKind, CostTier, InterpreterKind, CombineStrategy };
|
|
14
|
+
export { ProviderKind, CostTier, InterpreterKind, CombineStrategy, ExtractionStepStatus };
|
|
14
15
|
|
|
15
16
|
// ─── Plan building blocks ──────────────────────────────────────────────────
|
|
16
17
|
|
|
@@ -180,15 +181,53 @@ export interface IExecutionManifest {
|
|
|
180
181
|
createdAt: string;
|
|
181
182
|
}
|
|
182
183
|
|
|
184
|
+
// ─── Execution trace (P1) ──────────────────────────────────────────────────
|
|
185
|
+
|
|
186
|
+
/** Per-IO metadata in the persisted trace skeleton. The full payload is fetched lazily. */
|
|
187
|
+
export interface IStepIo {
|
|
188
|
+
slot: 'providerOutput' | 'interpreterOutput';
|
|
189
|
+
bytes: number;
|
|
190
|
+
sha256: string;
|
|
191
|
+
preview: string;
|
|
192
|
+
status: 'pending' | 'ready' | 'skipped';
|
|
193
|
+
applicationFileId: string | null;
|
|
194
|
+
}
|
|
195
|
+
|
|
196
|
+
/** One executed / gate-skipped / failed pass, with timing, status and IO refs. */
|
|
197
|
+
export interface IStepTrace {
|
|
198
|
+
index: number;
|
|
199
|
+
providerId: string;
|
|
200
|
+
providerVersion: string;
|
|
201
|
+
interpreterId: string;
|
|
202
|
+
interpreterVersion: string;
|
|
203
|
+
documentType: string | null;
|
|
204
|
+
status: ExtractionStepStatus;
|
|
205
|
+
startedAtMs: number;
|
|
206
|
+
durationMs: number;
|
|
207
|
+
ocrPageCount: number;
|
|
208
|
+
fieldsContributed: number;
|
|
209
|
+
errorMessage: string | null;
|
|
210
|
+
io: IStepIo[];
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
/**
|
|
214
|
+
* Per-pass execution trace skeleton persisted in extractions.executionTrace and
|
|
215
|
+
* surfaced by GET /extractions/:id. Full IO payloads are fetched lazily via
|
|
216
|
+
* sdk.extract.extractions.stepIo.
|
|
217
|
+
*/
|
|
218
|
+
export interface IExecutionTrace {
|
|
219
|
+
steps: IStepTrace[];
|
|
220
|
+
totalDurationMs: number;
|
|
221
|
+
artifactStatus: 'pending' | 'ready';
|
|
222
|
+
}
|
|
223
|
+
|
|
183
224
|
// ─── Plan presets ──────────────────────────────────────────────────────────
|
|
184
225
|
|
|
185
226
|
/** A saved extraction plan preset (DB row + virtual system presets). */
|
|
186
227
|
export interface IExtractionPlanPreset {
|
|
187
228
|
id: string;
|
|
188
229
|
name: string;
|
|
189
|
-
scope:
|
|
190
|
-
| { kind: 'user'; userId: string }
|
|
191
|
-
| { kind: 'org'; organizationId: string };
|
|
230
|
+
scope: { kind: 'user'; userId: string } | { kind: 'org'; organizationId: string };
|
|
192
231
|
plan: IExtractionPlan;
|
|
193
232
|
isDefault: boolean;
|
|
194
233
|
system: boolean;
|
|
@@ -7,7 +7,12 @@ import { ExtractionWarningCode } from '../../../types/enum/extraction-warning.en
|
|
|
7
7
|
import { ExtractionFeedbackIssueType } from '../../../types/enum/extraction-feedback-issue-type.enum';
|
|
8
8
|
import { DocumentType } from '../../../types/enum/document-type.enum';
|
|
9
9
|
import { FileScanStatus } from '../../enum/file-scan-status.enum';
|
|
10
|
-
import type {
|
|
10
|
+
import type {
|
|
11
|
+
IFieldValue,
|
|
12
|
+
IExecutionManifest,
|
|
13
|
+
IGlobalConfidence,
|
|
14
|
+
IExecutionTrace,
|
|
15
|
+
} from './extraction-plan.dto';
|
|
11
16
|
|
|
12
17
|
// Re-export so consumers can import ExtractionFeedbackIssueType from the DTO barrel.
|
|
13
18
|
export { ExtractionFeedbackIssueType };
|
|
@@ -163,6 +168,11 @@ export interface IExtraction {
|
|
|
163
168
|
* Surfaced where available; optional/absent otherwise. ADDITIVE, optional.
|
|
164
169
|
*/
|
|
165
170
|
globalConfidence?: IGlobalConfidence | null;
|
|
171
|
+
/**
|
|
172
|
+
* Per-pass execution trace skeleton (timing/status/impl + lazy IO refs) — P1.
|
|
173
|
+
* Present on plan-path rows; absent on legacy paths. ADDITIVE, optional.
|
|
174
|
+
*/
|
|
175
|
+
executionTrace?: IExecutionTrace | null;
|
|
166
176
|
createdAt: string;
|
|
167
177
|
}
|
|
168
178
|
|
|
@@ -7,7 +7,6 @@ export * from './atlas-group.dto';
|
|
|
7
7
|
export * from './atlas-page.dto';
|
|
8
8
|
export * from './atlas-page-content.dto';
|
|
9
9
|
export * from './draw.dto';
|
|
10
|
-
export * from './memo.dto';
|
|
11
10
|
export * from './retrospective.dto';
|
|
12
11
|
export * from './retrospective-section.dto';
|
|
13
12
|
export * from './retrospective-card.dto';
|
|
@@ -35,3 +34,4 @@ export * from './extraction-spatial-template.dto';
|
|
|
35
34
|
export * from './probe-scan.dto';
|
|
36
35
|
export * from './probe-webhook.dto';
|
|
37
36
|
export * from './probe-webhook-delivery.dto';
|
|
37
|
+
export * from './upload-session.dto';
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { IAtlas } from './atlas.dto';
|
|
2
2
|
import { IDraw } from './draw.dto';
|
|
3
|
-
import { IMemo } from './memo.dto';
|
|
4
3
|
import { IOrganization } from './organization.dto';
|
|
5
4
|
import { IRetrospective } from './retrospective.dto';
|
|
6
5
|
import { IShortLink } from './short-link.dto';
|
|
@@ -20,6 +19,5 @@ export interface IProject {
|
|
|
20
19
|
draws?: IDraw[];
|
|
21
20
|
retrospectives?: IRetrospective[];
|
|
22
21
|
atlases?: IAtlas[];
|
|
23
|
-
memos?: IMemo[];
|
|
24
22
|
shortLinks?: IShortLink[];
|
|
25
23
|
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SP3 — transparent multipart upload.
|
|
3
|
+
*
|
|
4
|
+
* Mirrors @abyss-project/storage's `UploadSession` (the return type of
|
|
5
|
+
* `initiateUpload`) as a LOCAL type instead of importing storage's own type,
|
|
6
|
+
* decoupling abyss-tools's public API contract from storage's package
|
|
7
|
+
* boundary — a front consumer of @abyss-project/tools should not need to
|
|
8
|
+
* also depend on @abyss-project/storage just to type a presign response
|
|
9
|
+
* (same mirroring rationale as abyss-memories's `IUploadSession`, abyss-form's
|
|
10
|
+
* `IUploadSession` and abyss-cloud's `IUploadSession`).
|
|
11
|
+
*
|
|
12
|
+
* `kind: 'single'` — size at or below storage's single-shot threshold:
|
|
13
|
+
* `token` is the one-shot pre-signed upload URL to PUT the whole file to.
|
|
14
|
+
* `kind: 'multipart'` — above the threshold: `multipartToken` identifies the
|
|
15
|
+
* multipart session and `partSizeOctet` is the fixed part size the front must
|
|
16
|
+
* chunk the file into (see @abyss-project/storage's `uploadWithSession`).
|
|
17
|
+
*
|
|
18
|
+
* Shared by every presign response DTO that proxies a *UploadUrl service
|
|
19
|
+
* method's `UploadSession` result as-is: board-card-document upload and
|
|
20
|
+
* atlas-document upload.
|
|
21
|
+
*/
|
|
22
|
+
export type IUploadSession =
|
|
23
|
+
| { kind: 'single'; token: string }
|
|
24
|
+
| { kind: 'multipart'; multipartToken: string; partSizeOctet: number };
|
|
@@ -2,7 +2,6 @@ import { IAtlas } from './atlas.dto';
|
|
|
2
2
|
import { IBoard } from './board.dto';
|
|
3
3
|
import { IBoardCardComment } from './board-card-comment.dto';
|
|
4
4
|
import { IDraw } from './draw.dto';
|
|
5
|
-
import { IMemo } from './memo.dto';
|
|
6
5
|
import { IProject } from './project.dto';
|
|
7
6
|
import { IRetrospective } from './retrospective.dto';
|
|
8
7
|
import { IShortLink } from './short-link.dto';
|
|
@@ -24,7 +23,6 @@ export interface IUser {
|
|
|
24
23
|
draws?: IDraw[];
|
|
25
24
|
retrospectives?: IRetrospective[];
|
|
26
25
|
atlases?: IAtlas[];
|
|
27
|
-
memos?: IMemo[];
|
|
28
26
|
shortLinks?: IShortLink[];
|
|
29
27
|
boardCardComments?: IBoardCardComment[];
|
|
30
28
|
}
|
package/src/api/memo.api.ts
DELETED
|
@@ -1,97 +0,0 @@
|
|
|
1
|
-
import { AbyssToolsCore } from '..';
|
|
2
|
-
import {
|
|
3
|
-
ICreateMemoBody,
|
|
4
|
-
ICreateMemoResponse,
|
|
5
|
-
ICreateForOrganizationMemoParams,
|
|
6
|
-
IDeleteMemoParams,
|
|
7
|
-
IDeleteMemoResponse,
|
|
8
|
-
IGetMemoParams,
|
|
9
|
-
IGetMemoResponse,
|
|
10
|
-
IPaginateMemoQuery,
|
|
11
|
-
IPaginateMemoResponse,
|
|
12
|
-
IPaginateProjectMemoParams,
|
|
13
|
-
IPaginateOrganizationMemoParams,
|
|
14
|
-
IUpdateMemoBody,
|
|
15
|
-
IUpdateMemoParams,
|
|
16
|
-
IUpdateMemoResponse,
|
|
17
|
-
ITransferContentBody,
|
|
18
|
-
ITransferMemoResponse,
|
|
19
|
-
ICountOrganizationResponse,
|
|
20
|
-
} from '../types';
|
|
21
|
-
|
|
22
|
-
export const paginateMemo = async (query: IPaginateMemoQuery): Promise<IPaginateMemoResponse> => {
|
|
23
|
-
return (await AbyssToolsCore.axios.get<IPaginateMemoResponse>(`memo/paginate`, { params: query }))
|
|
24
|
-
.data;
|
|
25
|
-
};
|
|
26
|
-
|
|
27
|
-
export const paginateProjectMemo = async (
|
|
28
|
-
params: IPaginateProjectMemoParams,
|
|
29
|
-
query: IPaginateMemoQuery,
|
|
30
|
-
): Promise<IPaginateMemoResponse> => {
|
|
31
|
-
return (
|
|
32
|
-
await AbyssToolsCore.axios.get<IPaginateMemoResponse>(`project/${params.projectId}/memo/paginate`, {
|
|
33
|
-
params: query,
|
|
34
|
-
})
|
|
35
|
-
).data;
|
|
36
|
-
};
|
|
37
|
-
|
|
38
|
-
export const getMemo = async (params: IGetMemoParams): Promise<IGetMemoResponse> => {
|
|
39
|
-
return (await AbyssToolsCore.axios.get<IGetMemoResponse>(`memo/${params.memoId}`)).data;
|
|
40
|
-
};
|
|
41
|
-
|
|
42
|
-
export const deleteMemo = async (params: IDeleteMemoParams): Promise<IDeleteMemoResponse> => {
|
|
43
|
-
return (await AbyssToolsCore.axios.delete<IDeleteMemoResponse>(`memo/${params.memoId}`)).data;
|
|
44
|
-
};
|
|
45
|
-
|
|
46
|
-
export const updateMemo = async (
|
|
47
|
-
params: IUpdateMemoParams,
|
|
48
|
-
body: IUpdateMemoBody,
|
|
49
|
-
): Promise<IUpdateMemoResponse> => {
|
|
50
|
-
return (await AbyssToolsCore.axios.put<IUpdateMemoResponse>(`memo/${params.memoId}`, body)).data;
|
|
51
|
-
};
|
|
52
|
-
|
|
53
|
-
export const createMemo = async (body: ICreateMemoBody): Promise<ICreateMemoResponse> => {
|
|
54
|
-
return (await AbyssToolsCore.axios.post<ICreateMemoResponse>(`memo`, body)).data;
|
|
55
|
-
};
|
|
56
|
-
|
|
57
|
-
export const paginateOrganizationMemo = async (
|
|
58
|
-
params: IPaginateOrganizationMemoParams,
|
|
59
|
-
query: IPaginateMemoQuery,
|
|
60
|
-
): Promise<IPaginateMemoResponse> => {
|
|
61
|
-
return (
|
|
62
|
-
await AbyssToolsCore.axios.get<IPaginateMemoResponse>(
|
|
63
|
-
`organization/${params.organizationId}/memo/paginate`,
|
|
64
|
-
{ params: query },
|
|
65
|
-
)
|
|
66
|
-
).data;
|
|
67
|
-
};
|
|
68
|
-
|
|
69
|
-
export const createForOrganizationMemo = async (
|
|
70
|
-
params: ICreateForOrganizationMemoParams,
|
|
71
|
-
body: ICreateMemoBody,
|
|
72
|
-
): Promise<ICreateMemoResponse> => {
|
|
73
|
-
return (await AbyssToolsCore.axios.post<ICreateMemoResponse>(`memo/organization/${params.organizationId}`, body))
|
|
74
|
-
.data;
|
|
75
|
-
};
|
|
76
|
-
|
|
77
|
-
export const transferMemo = async (
|
|
78
|
-
params: { memoId: string },
|
|
79
|
-
body: ITransferContentBody,
|
|
80
|
-
): Promise<ITransferMemoResponse> => {
|
|
81
|
-
return (
|
|
82
|
-
await AbyssToolsCore.axios.post<ITransferMemoResponse>(
|
|
83
|
-
`memo/${params.memoId}/transfer`,
|
|
84
|
-
body,
|
|
85
|
-
)
|
|
86
|
-
).data;
|
|
87
|
-
};
|
|
88
|
-
|
|
89
|
-
export const countOrganizationMemo = async (
|
|
90
|
-
params: { organizationId: string },
|
|
91
|
-
): Promise<ICountOrganizationResponse> => {
|
|
92
|
-
return (
|
|
93
|
-
await AbyssToolsCore.axios.get<ICountOrganizationResponse>(
|
|
94
|
-
`memo/organization/${params.organizationId}/count`,
|
|
95
|
-
)
|
|
96
|
-
).data;
|
|
97
|
-
};
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
import { ContentShareScope } from '../../../enum';
|
|
2
|
-
import { QueryPaginate } from '../type-message/base-paginate';
|
|
3
|
-
|
|
4
|
-
export type ICreateForOrganizationMemoParams = {
|
|
5
|
-
organizationId: string;
|
|
6
|
-
};
|
|
7
|
-
export type ICreateMemoBody = {
|
|
8
|
-
title: string;
|
|
9
|
-
content: string;
|
|
10
|
-
};
|
|
11
|
-
|
|
12
|
-
export type IUpdateMemoParams = {
|
|
13
|
-
memoId: string;
|
|
14
|
-
};
|
|
15
|
-
export type IUpdateMemoBody = {
|
|
16
|
-
title?: string;
|
|
17
|
-
content?: string;
|
|
18
|
-
archived?: boolean;
|
|
19
|
-
};
|
|
20
|
-
|
|
21
|
-
export type IGetMemoParams = {
|
|
22
|
-
memoId: string;
|
|
23
|
-
};
|
|
24
|
-
|
|
25
|
-
export type IDeleteMemoParams = {
|
|
26
|
-
memoId: string;
|
|
27
|
-
};
|
|
28
|
-
|
|
29
|
-
export type IPaginateMemoQuery = {
|
|
30
|
-
title?: string;
|
|
31
|
-
archived?: boolean;
|
|
32
|
-
scope?: ContentShareScope;
|
|
33
|
-
teamId?: string;
|
|
34
|
-
projectId?: string;
|
|
35
|
-
adminView?: boolean;
|
|
36
|
-
sharedWithMe?: boolean;
|
|
37
|
-
} & QueryPaginate;
|
|
38
|
-
|
|
39
|
-
export type IPaginateProjectMemoParams = {
|
|
40
|
-
projectId: string;
|
|
41
|
-
};
|
|
42
|
-
|
|
43
|
-
export type IPaginateOrganizationMemoParams = {
|
|
44
|
-
organizationId: string;
|
|
45
|
-
};
|
|
46
|
-
|
|
47
|
-
export type ICountOrganizationMemoParams = {
|
|
48
|
-
organizationId: string;
|
|
49
|
-
};
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import { BasePaginate } from '../type-message/base-paginate';
|
|
2
|
-
import { IResponse } from '../type-message/response';
|
|
3
|
-
import { IMemo } from '../../models/memo.dto';
|
|
4
|
-
import { SharePermission } from '../../../enum/content-share.enum';
|
|
5
|
-
|
|
6
|
-
export interface IGetMemoData {
|
|
7
|
-
memo: IMemo;
|
|
8
|
-
sharePermission?: SharePermission | null;
|
|
9
|
-
}
|
|
10
|
-
export type IGetMemoResponse = IResponse<IGetMemoData>;
|
|
11
|
-
|
|
12
|
-
export interface IUpdateMemoData {
|
|
13
|
-
memo: IMemo;
|
|
14
|
-
}
|
|
15
|
-
export type IUpdateMemoResponse = IResponse<IUpdateMemoData>;
|
|
16
|
-
|
|
17
|
-
export interface ICreateMemoData {
|
|
18
|
-
memo: IMemo;
|
|
19
|
-
}
|
|
20
|
-
export type ICreateMemoResponse = IResponse<ICreateMemoData>;
|
|
21
|
-
|
|
22
|
-
export interface IDeleteMemoData {}
|
|
23
|
-
export type IDeleteMemoResponse = IResponse<IDeleteMemoData>;
|
|
24
|
-
|
|
25
|
-
export type IPaginateMemoResponse = IResponse<BasePaginate<IMemo>>;
|
|
26
|
-
|
|
27
|
-
export interface ICountOrganizationMemoData {
|
|
28
|
-
total: number;
|
|
29
|
-
orphan?: number;
|
|
30
|
-
unshared?: number;
|
|
31
|
-
}
|
|
32
|
-
export type ICountOrganizationMemoResponse = IResponse<ICountOrganizationMemoData>;
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { IOrganization } from './organization.dto';
|
|
2
|
-
import { IProject } from './project.dto';
|
|
3
|
-
import { IEntityTag } from './tag.dto';
|
|
4
|
-
import { IUser } from './user.dto';
|
|
5
|
-
|
|
6
|
-
export interface IMemo {
|
|
7
|
-
id: string;
|
|
8
|
-
title: string;
|
|
9
|
-
content: string;
|
|
10
|
-
userId: string | null;
|
|
11
|
-
projectId: string | null;
|
|
12
|
-
organizationId: string | null;
|
|
13
|
-
createdByUserId: string | null;
|
|
14
|
-
archivedAt?: Date | null;
|
|
15
|
-
updatedAt?: Date;
|
|
16
|
-
createdAt?: Date;
|
|
17
|
-
|
|
18
|
-
// Association
|
|
19
|
-
user?: IUser | null;
|
|
20
|
-
project?: IProject | null;
|
|
21
|
-
organization?: IOrganization | null;
|
|
22
|
-
entityTags?: IEntityTag[];
|
|
23
|
-
}
|