feat: add TechLog project decision authoring
This commit is contained in:
@@ -197,7 +197,7 @@ export type webhooks = Record<string, never>;
|
||||
export interface components {
|
||||
schemas: {
|
||||
/** @enum {string} */
|
||||
RecordKind: "CASE" | "REFERENCE" | "QUESTION";
|
||||
RecordKind: "CASE" | "REFERENCE" | "QUESTION" | "PROJECT_DECISION";
|
||||
/** @enum {string} */
|
||||
PublicationStatus: "NEVER_PUBLISHED" | "PUBLISHED" | "UNPUBLISHED";
|
||||
/** @enum {string} */
|
||||
@@ -308,7 +308,24 @@ export interface components {
|
||||
*/
|
||||
kind: "QUESTION";
|
||||
};
|
||||
WorkingCopyInput: components["schemas"]["CaseInput"] | components["schemas"]["ReferenceInput"] | components["schemas"]["QuestionInput"];
|
||||
ProjectDecisionInput: components["schemas"]["WorkingCopyInputBase"] & {
|
||||
/** @constant */
|
||||
kind: "PROJECT_DECISION";
|
||||
/** @enum {string|null} */
|
||||
decisionStatus: "PROPOSED" | "ADOPTED" | null;
|
||||
/** Format: date */
|
||||
decidedOn: string | null;
|
||||
statement: string;
|
||||
rationale: string;
|
||||
consequences: components["schemas"]["OrderedText"][];
|
||||
} & {
|
||||
/**
|
||||
* @description discriminator enum property added by openapi-typescript
|
||||
* @enum {string}
|
||||
*/
|
||||
kind: "PROJECT_DECISION";
|
||||
};
|
||||
WorkingCopyInput: components["schemas"]["CaseInput"] | components["schemas"]["ReferenceInput"] | components["schemas"]["QuestionInput"] | components["schemas"]["ProjectDecisionInput"];
|
||||
WorkingCopyBase: components["schemas"]["WorkingCopyInputBase"] & {
|
||||
/** Format: uuid */
|
||||
id: string;
|
||||
@@ -370,7 +387,24 @@ export interface components {
|
||||
*/
|
||||
kind: "QUESTION";
|
||||
};
|
||||
WorkingCopy: components["schemas"]["CaseWorkingCopy"] | components["schemas"]["ReferenceWorkingCopy"] | components["schemas"]["QuestionWorkingCopy"];
|
||||
ProjectDecisionWorkingCopy: components["schemas"]["WorkingCopyBase"] & {
|
||||
/** @constant */
|
||||
kind: "PROJECT_DECISION";
|
||||
/** @enum {string|null} */
|
||||
decisionStatus: "PROPOSED" | "ADOPTED" | null;
|
||||
/** Format: date */
|
||||
decidedOn: string | null;
|
||||
statement: string;
|
||||
rationale: string;
|
||||
consequences: components["schemas"]["OrderedText"][];
|
||||
} & {
|
||||
/**
|
||||
* @description discriminator enum property added by openapi-typescript
|
||||
* @enum {string}
|
||||
*/
|
||||
kind: "PROJECT_DECISION";
|
||||
};
|
||||
WorkingCopy: components["schemas"]["CaseWorkingCopy"] | components["schemas"]["ReferenceWorkingCopy"] | components["schemas"]["QuestionWorkingCopy"] | components["schemas"]["ProjectDecisionWorkingCopy"];
|
||||
CreateDocumentInput: components["schemas"]["WorkingCopyInput"];
|
||||
SaveDocumentCommand: {
|
||||
expectedVersion: number;
|
||||
@@ -686,7 +720,24 @@ export interface components {
|
||||
*/
|
||||
kind: "QUESTION";
|
||||
};
|
||||
PublicRenderModel: components["schemas"]["CasePublicRenderModel"] | components["schemas"]["ReferencePublicRenderModel"] | components["schemas"]["QuestionPublicRenderModel"];
|
||||
ProjectDecisionPublicRenderModel: components["schemas"]["PublicRenderModelBase"] & {
|
||||
/** @constant */
|
||||
kind: "PROJECT_DECISION";
|
||||
/** @enum {string} */
|
||||
status: "PROPOSED" | "ADOPTED";
|
||||
/** Format: date */
|
||||
decidedOn: string;
|
||||
statement: string;
|
||||
rationale: string;
|
||||
consequences: components["schemas"]["OrderedText"][];
|
||||
} & {
|
||||
/**
|
||||
* @description discriminator enum property added by openapi-typescript
|
||||
* @enum {string}
|
||||
*/
|
||||
kind: "PROJECT_DECISION";
|
||||
};
|
||||
PublicRenderModel: components["schemas"]["CasePublicRenderModel"] | components["schemas"]["ReferencePublicRenderModel"] | components["schemas"]["QuestionPublicRenderModel"] | components["schemas"]["ProjectDecisionPublicRenderModel"];
|
||||
PublicPreview: {
|
||||
/** Format: uuid */
|
||||
previewId: string;
|
||||
|
||||
@@ -233,7 +233,7 @@ components:
|
||||
RequestValidationFailed: { description: Request validation failed, x-error-codes: [REQUEST_VALIDATION_FAILED], content: { application/problem+json: { schema: { $ref: "#/components/schemas/ProblemDetails" } } } }
|
||||
StudioUnavailable: { description: Studio unavailable, x-error-codes: [STUDIO_UNAVAILABLE], content: { application/problem+json: { schema: { $ref: "#/components/schemas/ProblemDetails" } } } }
|
||||
schemas:
|
||||
RecordKind: { type: string, enum: [CASE, REFERENCE, QUESTION] }
|
||||
RecordKind: { type: string, enum: [CASE, REFERENCE, QUESTION, PROJECT_DECISION] }
|
||||
PublicationStatus: { type: string, enum: [NEVER_PUBLISHED, PUBLISHED, UNPUBLISHED] }
|
||||
NextAction: { type: string, enum: [CONTINUE_EDITING, VALIDATE, FIX_VALIDATION, CREATE_PREVIEW, PUBLISH, NONE] }
|
||||
RelationInput:
|
||||
@@ -349,17 +349,32 @@ components:
|
||||
oneOf:
|
||||
- { $ref: "#/components/schemas/QuestionResolution" }
|
||||
- { type: "null" }
|
||||
ProjectDecisionInput:
|
||||
unevaluatedProperties: false
|
||||
allOf:
|
||||
- { $ref: "#/components/schemas/WorkingCopyInputBase" }
|
||||
- type: object
|
||||
required: [kind, decisionStatus, decidedOn, statement, rationale, consequences]
|
||||
properties:
|
||||
kind: { type: string, const: PROJECT_DECISION }
|
||||
decisionStatus: { type: [string, "null"], enum: [PROPOSED, ADOPTED, null] }
|
||||
decidedOn: { type: [string, "null"], format: date }
|
||||
statement: { type: string, maxLength: 100000 }
|
||||
rationale: { type: string, maxLength: 100000 }
|
||||
consequences: { type: array, maxItems: 50, items: { $ref: "#/components/schemas/OrderedText" } }
|
||||
WorkingCopyInput:
|
||||
oneOf:
|
||||
- { $ref: "#/components/schemas/CaseInput" }
|
||||
- { $ref: "#/components/schemas/ReferenceInput" }
|
||||
- { $ref: "#/components/schemas/QuestionInput" }
|
||||
- { $ref: "#/components/schemas/ProjectDecisionInput" }
|
||||
discriminator:
|
||||
propertyName: kind
|
||||
mapping:
|
||||
CASE: "#/components/schemas/CaseInput"
|
||||
REFERENCE: "#/components/schemas/ReferenceInput"
|
||||
QUESTION: "#/components/schemas/QuestionInput"
|
||||
PROJECT_DECISION: "#/components/schemas/ProjectDecisionInput"
|
||||
WorkingCopyBase:
|
||||
allOf:
|
||||
- { $ref: "#/components/schemas/WorkingCopyInputBase" }
|
||||
@@ -417,17 +432,32 @@ components:
|
||||
oneOf:
|
||||
- { $ref: "#/components/schemas/QuestionResolution" }
|
||||
- { type: "null" }
|
||||
ProjectDecisionWorkingCopy:
|
||||
unevaluatedProperties: false
|
||||
allOf:
|
||||
- { $ref: "#/components/schemas/WorkingCopyBase" }
|
||||
- type: object
|
||||
required: [kind, decisionStatus, decidedOn, statement, rationale, consequences]
|
||||
properties:
|
||||
kind: { type: string, const: PROJECT_DECISION }
|
||||
decisionStatus: { type: [string, "null"], enum: [PROPOSED, ADOPTED, null] }
|
||||
decidedOn: { type: [string, "null"], format: date }
|
||||
statement: { type: string, maxLength: 100000 }
|
||||
rationale: { type: string, maxLength: 100000 }
|
||||
consequences: { type: array, maxItems: 50, items: { $ref: "#/components/schemas/OrderedText" } }
|
||||
WorkingCopy:
|
||||
oneOf:
|
||||
- { $ref: "#/components/schemas/CaseWorkingCopy" }
|
||||
- { $ref: "#/components/schemas/ReferenceWorkingCopy" }
|
||||
- { $ref: "#/components/schemas/QuestionWorkingCopy" }
|
||||
- { $ref: "#/components/schemas/ProjectDecisionWorkingCopy" }
|
||||
discriminator:
|
||||
propertyName: kind
|
||||
mapping:
|
||||
CASE: "#/components/schemas/CaseWorkingCopy"
|
||||
REFERENCE: "#/components/schemas/ReferenceWorkingCopy"
|
||||
QUESTION: "#/components/schemas/QuestionWorkingCopy"
|
||||
PROJECT_DECISION: "#/components/schemas/ProjectDecisionWorkingCopy"
|
||||
CreateDocumentInput: { $ref: "#/components/schemas/WorkingCopyInput" }
|
||||
SaveDocumentCommand:
|
||||
type: object
|
||||
@@ -778,17 +808,32 @@ components:
|
||||
oneOf:
|
||||
- { $ref: "#/components/schemas/ResolvedQuestionResolution" }
|
||||
- { type: "null" }
|
||||
ProjectDecisionPublicRenderModel:
|
||||
unevaluatedProperties: false
|
||||
allOf:
|
||||
- { $ref: "#/components/schemas/PublicRenderModelBase" }
|
||||
- type: object
|
||||
required: [kind, status, decidedOn, statement, rationale, consequences]
|
||||
properties:
|
||||
kind: { type: string, const: PROJECT_DECISION }
|
||||
status: { type: string, enum: [PROPOSED, ADOPTED] }
|
||||
decidedOn: { type: string, format: date }
|
||||
statement: { type: string, minLength: 1, maxLength: 100000 }
|
||||
rationale: { type: string, minLength: 1, maxLength: 100000 }
|
||||
consequences: { type: array, minItems: 1, maxItems: 50, items: { $ref: "#/components/schemas/OrderedText" } }
|
||||
PublicRenderModel:
|
||||
oneOf:
|
||||
- { $ref: "#/components/schemas/CasePublicRenderModel" }
|
||||
- { $ref: "#/components/schemas/ReferencePublicRenderModel" }
|
||||
- { $ref: "#/components/schemas/QuestionPublicRenderModel" }
|
||||
- { $ref: "#/components/schemas/ProjectDecisionPublicRenderModel" }
|
||||
discriminator:
|
||||
propertyName: kind
|
||||
mapping:
|
||||
CASE: "#/components/schemas/CasePublicRenderModel"
|
||||
REFERENCE: "#/components/schemas/ReferencePublicRenderModel"
|
||||
QUESTION: "#/components/schemas/QuestionPublicRenderModel"
|
||||
PROJECT_DECISION: "#/components/schemas/ProjectDecisionPublicRenderModel"
|
||||
PublicPreview:
|
||||
type: object
|
||||
additionalProperties: false
|
||||
|
||||
Reference in New Issue
Block a user