@overmap-ai/core 1.0.52 → 1.0.53-add-agent-slice.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.
@@ -5,6 +5,7 @@ export * from "./ComponentStageCompletionSlice";
5
5
  export * from "./componentStageSlice";
6
6
  export * from "./componentTypeSlice";
7
7
  export * from "./issueSlice";
8
+ export * from "./issueTypeSlice";
8
9
  export * from "./fileSlice";
9
10
  export * from "./mapSlice";
10
11
  export * from "./organizationSlice";
@@ -24,3 +25,4 @@ export * from "./emailDomainsSlice";
24
25
  export * from "./licenseSlice";
25
26
  export * from "./documentSlice";
26
27
  export * from "./teamSlice";
28
+ export * from "./agentSlice";
@@ -38,6 +38,9 @@ export declare const issueSlice: import("@reduxjs/toolkit").Slice<IssueState, {
38
38
  addIssue: (state: import("immer/dist/internal.js").WritableDraft<IssueState>, action: {
39
39
  payload: Submitted<Issue>;
40
40
  }) => void;
41
+ addIssues: (state: import("immer/dist/internal.js").WritableDraft<IssueState>, action: {
42
+ payload: Stored<Issue>[];
43
+ }) => void;
41
44
  addIssueAttachment: (state: IssueState, action: {
42
45
  payload: Submitted<IssueAttachment>;
43
46
  type: string;
@@ -60,6 +63,7 @@ export declare const issueSlice: import("@reduxjs/toolkit").Slice<IssueState, {
60
63
  type: string;
61
64
  }) => void;
62
65
  removeIssue: (state: import("immer/dist/internal.js").WritableDraft<IssueState>, action: PayloadAction<string>) => void;
66
+ removeIssues: (state: import("immer/dist/internal.js").WritableDraft<IssueState>, action: PayloadAction<string[]>) => void;
63
67
  removeIssueAttachment: (state: IssueState, action: {
64
68
  payload: string;
65
69
  type: string;
@@ -85,7 +89,7 @@ export declare const issueSlice: import("@reduxjs/toolkit").Slice<IssueState, {
85
89
  resetRecentIssues: (state: import("immer/dist/internal.js").WritableDraft<IssueState>) => void;
86
90
  removeRecentIssue: (state: import("immer/dist/internal.js").WritableDraft<IssueState>, action: PayloadAction<string>) => void;
87
91
  }, "issues">;
88
- export declare const addIssueAttachment: import("@reduxjs/toolkit").ActionCreatorWithPayload<Submitted<IssueAttachment>, "issues/addIssueAttachment">, addIssueAttachments: import("@reduxjs/toolkit").ActionCreatorWithPayload<Submitted<IssueAttachment>[], "issues/addIssueAttachments">, addIssue: import("@reduxjs/toolkit").ActionCreatorWithPayload<Submitted<Issue>, "issues/addIssue">, addIssueUpdate: import("@reduxjs/toolkit").ActionCreatorWithPayload<Submitted<IssueUpdate>, "issues/addIssueUpdate">, addIssueUpdates: import("@reduxjs/toolkit").ActionCreatorWithPayload<Submitted<IssueUpdate>[], "issues/addIssueUpdates">, addOrReplaceIssueComment: import("@reduxjs/toolkit").ActionCreatorWithPayload<Submitted<IssueComment>, "issues/addOrReplaceIssueComment">, addToRecentIssues: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "issues/addToRecentIssues">, cleanRecentIssues: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"issues/cleanRecentIssues">, removeIssueAttachment: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "issues/removeIssueAttachment">, removeAttachmentsOfIssue: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "issues/removeAttachmentsOfIssue">, removeIssue: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "issues/removeIssue">, removeIssueUpdate: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "issues/removeIssueUpdate">, removeIssueUpdates: import("@reduxjs/toolkit").ActionCreatorWithPayload<string[], "issues/removeIssueUpdates">, removeRecentIssue: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "issues/removeRecentIssue">, resetRecentIssues: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"issues/resetRecentIssues">, setActiveIssueId: import("@reduxjs/toolkit").ActionCreatorWithPayload<string | null, "issues/setActiveIssueId">, setIssueAttachments: import("@reduxjs/toolkit").ActionCreatorWithPayload<Created<IssueAttachment>[], "issues/setIssueAttachments">, setIssueUpdates: import("@reduxjs/toolkit").ActionCreatorWithPayload<Created<IssueUpdate>[], "issues/setIssueUpdates">, setIssues: import("@reduxjs/toolkit").ActionCreatorWithPayload<Created<Issue>[], "issues/setIssues">, setVisibleStatuses: import("@reduxjs/toolkit").ActionCreatorWithPayload<IssueStatus[], "issues/setVisibleStatuses">, setVisibleUserIds: import("@reduxjs/toolkit").ActionCreatorWithPayload<(number | null)[], "issues/setVisibleUserIds">, updateIssueAttachment: import("@reduxjs/toolkit").ActionCreatorWithPayload<Submitted<IssueAttachment>, "issues/updateIssueAttachment">, updateIssue: import("@reduxjs/toolkit").ActionCreatorWithPayload<Submitted<Partial<Issue>>, "issues/updateIssue">, addIssueComment: import("@reduxjs/toolkit").ActionCreatorWithPayload<Submitted<IssueComment>, "issues/addIssueComment">, addIssueComments: import("@reduxjs/toolkit").ActionCreatorWithPayload<Submitted<IssueComment>[], "issues/addIssueComments">, setIssueComment: import("@reduxjs/toolkit").ActionCreatorWithPayload<Stored<IssueComment>, "issues/setIssueComment">, setIssueComments: import("@reduxjs/toolkit").ActionCreatorWithPayload<Stored<IssueComment>[], "issues/setIssueComments">, removeIssueComment: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "issues/removeIssueComment">, removeIssueComments: import("@reduxjs/toolkit").ActionCreatorWithPayload<string[], "issues/removeIssueComments">;
92
+ export declare const addIssueAttachment: import("@reduxjs/toolkit").ActionCreatorWithPayload<Submitted<IssueAttachment>, "issues/addIssueAttachment">, addIssueAttachments: import("@reduxjs/toolkit").ActionCreatorWithPayload<Submitted<IssueAttachment>[], "issues/addIssueAttachments">, addIssue: import("@reduxjs/toolkit").ActionCreatorWithPayload<Submitted<Issue>, "issues/addIssue">, addIssues: import("@reduxjs/toolkit").ActionCreatorWithPayload<Stored<Issue>[], "issues/addIssues">, addIssueUpdate: import("@reduxjs/toolkit").ActionCreatorWithPayload<Submitted<IssueUpdate>, "issues/addIssueUpdate">, addIssueUpdates: import("@reduxjs/toolkit").ActionCreatorWithPayload<Submitted<IssueUpdate>[], "issues/addIssueUpdates">, addOrReplaceIssueComment: import("@reduxjs/toolkit").ActionCreatorWithPayload<Submitted<IssueComment>, "issues/addOrReplaceIssueComment">, addToRecentIssues: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "issues/addToRecentIssues">, cleanRecentIssues: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"issues/cleanRecentIssues">, removeIssueAttachment: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "issues/removeIssueAttachment">, removeAttachmentsOfIssue: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "issues/removeAttachmentsOfIssue">, removeIssue: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "issues/removeIssue">, removeIssues: import("@reduxjs/toolkit").ActionCreatorWithPayload<string[], "issues/removeIssues">, removeIssueUpdate: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "issues/removeIssueUpdate">, removeIssueUpdates: import("@reduxjs/toolkit").ActionCreatorWithPayload<string[], "issues/removeIssueUpdates">, removeRecentIssue: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "issues/removeRecentIssue">, resetRecentIssues: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"issues/resetRecentIssues">, setActiveIssueId: import("@reduxjs/toolkit").ActionCreatorWithPayload<string | null, "issues/setActiveIssueId">, setIssueAttachments: import("@reduxjs/toolkit").ActionCreatorWithPayload<Created<IssueAttachment>[], "issues/setIssueAttachments">, setIssueUpdates: import("@reduxjs/toolkit").ActionCreatorWithPayload<Created<IssueUpdate>[], "issues/setIssueUpdates">, setIssues: import("@reduxjs/toolkit").ActionCreatorWithPayload<Created<Issue>[], "issues/setIssues">, setVisibleStatuses: import("@reduxjs/toolkit").ActionCreatorWithPayload<IssueStatus[], "issues/setVisibleStatuses">, setVisibleUserIds: import("@reduxjs/toolkit").ActionCreatorWithPayload<(number | null)[], "issues/setVisibleUserIds">, updateIssueAttachment: import("@reduxjs/toolkit").ActionCreatorWithPayload<Submitted<IssueAttachment>, "issues/updateIssueAttachment">, updateIssue: import("@reduxjs/toolkit").ActionCreatorWithPayload<Submitted<Partial<Issue>>, "issues/updateIssue">, addIssueComment: import("@reduxjs/toolkit").ActionCreatorWithPayload<Submitted<IssueComment>, "issues/addIssueComment">, addIssueComments: import("@reduxjs/toolkit").ActionCreatorWithPayload<Submitted<IssueComment>[], "issues/addIssueComments">, setIssueComment: import("@reduxjs/toolkit").ActionCreatorWithPayload<Stored<IssueComment>, "issues/setIssueComment">, setIssueComments: import("@reduxjs/toolkit").ActionCreatorWithPayload<Stored<IssueComment>[], "issues/setIssueComments">, removeIssueComment: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "issues/removeIssueComment">, removeIssueComments: import("@reduxjs/toolkit").ActionCreatorWithPayload<string[], "issues/removeIssueComments">;
89
93
  export interface IssueFilterArgs {
90
94
  filterByAssignedTo: boolean;
91
95
  filterByStatus: boolean;
@@ -123,6 +127,7 @@ export declare const selectAllAttachments: ((state: import("redux").EmptyObject
123
127
  componentStageReducer: import('..').ComponentStageState;
124
128
  componentTypeReducer: import('..').ComponentTypeState;
125
129
  issueReducer: IssueState;
130
+ issueTypeReducer: import('..').IssueTypeState;
126
131
  mapReducer: import('..').MapState;
127
132
  organizationReducer: import('..').OrganizationState;
128
133
  outboxReducer: import('..').OutboxState;
@@ -141,6 +146,7 @@ export declare const selectAllAttachments: ((state: import("redux").EmptyObject
141
146
  licenseReducer: import('..').LicenseState;
142
147
  documentsReducer: import('..').DocumentState;
143
148
  teamReducer: import('..').TeamState;
149
+ agentReducer: import('..').AgentState;
144
150
  } & {
145
151
  offline: import("@redux-offline/redux-offline/lib/types").OfflineState;
146
152
  }) => Stored<IssueAttachment>[]) & import("reselect").OutputSelectorFields<(args_0: Record<string, Stored<IssueAttachment>>) => Stored<IssueAttachment>[], {
@@ -0,0 +1,20 @@
1
+ import { PayloadAction, Reducer } from "@reduxjs/toolkit";
2
+ import { Issue, IssueType, Organization, Selector, SelectorWithArgs, Stored } from "../../typings";
3
+ export interface IssueTypeState {
4
+ issueTypes: Record<string, Stored<IssueType>>;
5
+ }
6
+ export declare const issueTypeSlice: import("@reduxjs/toolkit").Slice<IssueTypeState, {
7
+ setIssueTypes: (state: import("immer/dist/internal.js").WritableDraft<IssueTypeState>, action: PayloadAction<Stored<IssueType>[]>) => void;
8
+ setIssueType: (state: import("immer/dist/internal.js").WritableDraft<IssueTypeState>, action: PayloadAction<Stored<IssueType>>) => void;
9
+ addIssueType: (state: import("immer/dist/internal.js").WritableDraft<IssueTypeState>, action: PayloadAction<Stored<IssueType>>) => void;
10
+ updateIssueType: (state: import("immer/dist/internal.js").WritableDraft<IssueTypeState>, action: PayloadAction<Stored<IssueType>>) => void;
11
+ removeIssueType: (state: import("immer/dist/internal.js").WritableDraft<IssueTypeState>, action: PayloadAction<string>) => void;
12
+ }, "issueTypes">;
13
+ export declare const setIssueTypes: import("@reduxjs/toolkit").ActionCreatorWithPayload<Stored<IssueType>[], "issueTypes/setIssueTypes">, setIssueType: import("@reduxjs/toolkit").ActionCreatorWithPayload<Stored<IssueType>, "issueTypes/setIssueType">, addIssueType: import("@reduxjs/toolkit").ActionCreatorWithPayload<Stored<IssueType>, "issueTypes/addIssueType">, updateIssueType: import("@reduxjs/toolkit").ActionCreatorWithPayload<Stored<IssueType>, "issueTypes/updateIssueType">, removeIssueType: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "issueTypes/removeIssueType">;
14
+ export declare const selectIssueTypeMapping: Selector<IssueTypeState["issueTypes"]>;
15
+ export declare const selectIssueTypes: Selector<Stored<IssueType>[]>;
16
+ export declare const selectIssueType: SelectorWithArgs<IssueType["offline_id"], Stored<IssueType>>;
17
+ export declare const selectIssueTypesOfOrganization: SelectorWithArgs<Organization["id"], Stored<IssueType>[]>;
18
+ export declare const selectIssuesOfIssueType: SelectorWithArgs<IssueType["offline_id"], Stored<Issue>[]>;
19
+ export declare const selectIssuesOfIssueTypeCount: SelectorWithArgs<IssueType["offline_id"], number>;
20
+ export declare const issueTypeReducer: Reducer<IssueTypeState>;
@@ -59,6 +59,7 @@ export declare const selectProjectFiles: ((state: import("redux").EmptyObject &
59
59
  componentStageReducer: import('..').ComponentStageState;
60
60
  componentTypeReducer: import('..').ComponentTypeState;
61
61
  issueReducer: import('..').IssueState;
62
+ issueTypeReducer: import('..').IssueTypeState;
62
63
  mapReducer: import('..').MapState;
63
64
  organizationReducer: import('..').OrganizationState;
64
65
  outboxReducer: import('..').OutboxState;
@@ -77,6 +78,7 @@ export declare const selectProjectFiles: ((state: import("redux").EmptyObject &
77
78
  licenseReducer: import('..').LicenseState;
78
79
  documentsReducer: import('..').DocumentState;
79
80
  teamReducer: import('..').TeamState;
81
+ agentReducer: import('..').AgentState;
80
82
  } & {
81
83
  offline: import("@redux-offline/redux-offline/lib/types").OfflineState;
82
84
  }) => ProjectFile[]) & import("reselect").OutputSelectorFields<(args_0: Record<string, ProjectFile>, args_1: number | null) => ProjectFile[], {
@@ -37,6 +37,7 @@ export declare const selectWorkspaces: ((state: import("redux").EmptyObject & {
37
37
  componentStageReducer: import('..').ComponentStageState;
38
38
  componentTypeReducer: import('..').ComponentTypeState;
39
39
  issueReducer: import('..').IssueState;
40
+ issueTypeReducer: import('..').IssueTypeState;
40
41
  mapReducer: import('..').MapState;
41
42
  organizationReducer: import('..').OrganizationState;
42
43
  outboxReducer: import('..').OutboxState;
@@ -55,6 +56,7 @@ export declare const selectWorkspaces: ((state: import("redux").EmptyObject & {
55
56
  licenseReducer: import('..').LicenseState;
56
57
  documentsReducer: import('..').DocumentState;
57
58
  teamReducer: import('..').TeamState;
59
+ agentReducer: import('..').AgentState;
58
60
  } & {
59
61
  offline: import("@redux-offline/redux-offline/lib/types").OfflineState;
60
62
  }) => Workspace[]) & import("reselect").OutputSelectorFields<(args_0: Record<string, Workspace>) => Workspace[], {
@@ -3,9 +3,10 @@ import { AnyAction, Reducer } from "redux";
3
3
  import { Config, OfflineAction, OfflineMetadata, OfflineState } from "@redux-offline/redux-offline/lib/types";
4
4
  import request from "superagent";
5
5
  import { type OfflineMetaEffect, type OvermapSDK, RequestDetails } from "../sdk";
6
- import { AuthState, CategoryState, ComponentStageCompletionState, ComponentStageState, ComponentState, ComponentTypeState, DocumentState, EmailDomainState, FileState, IssueState, LicenseState, MapState, OrganizationAccessState, OrganizationState, OutboxState, ProjectAccessState, ProjectFileState, ProjectState, RehydratedState, SettingState, FormState, FormRevisionState, FormSubmissionState, UserState, WorkspaceState, TeamState } from "./slices";
6
+ import { AuthState, CategoryState, ComponentStageCompletionState, ComponentStageState, ComponentState, ComponentTypeState, DocumentState, EmailDomainState, FileState, IssueState, IssueTypeState, LicenseState, MapState, OrganizationAccessState, OrganizationState, OutboxState, ProjectAccessState, ProjectFileState, ProjectState, RehydratedState, SettingState, FormState, FormRevisionState, FormSubmissionState, UserState, WorkspaceState, TeamState } from "./slices";
7
7
  import { VersioningState } from "./slices/versioningSlice";
8
8
  import { RootState } from "../typings";
9
+ import { AgentState } from "./slices/agentSlice";
9
10
  export declare const overmapReducers: {
10
11
  versioning: Reducer<VersioningState>;
11
12
  fileReducer: Reducer<FileState>;
@@ -16,6 +17,7 @@ export declare const overmapReducers: {
16
17
  componentStageReducer: Reducer<ComponentStageState>;
17
18
  componentTypeReducer: Reducer<ComponentTypeState>;
18
19
  issueReducer: Reducer<IssueState>;
20
+ issueTypeReducer: Reducer<IssueTypeState>;
19
21
  mapReducer: Reducer<MapState>;
20
22
  organizationReducer: Reducer<OrganizationState>;
21
23
  outboxReducer: Reducer<OutboxState>;
@@ -34,6 +36,7 @@ export declare const overmapReducers: {
34
36
  licenseReducer: Reducer<LicenseState>;
35
37
  documentsReducer: Reducer<DocumentState>;
36
38
  teamReducer: Reducer<TeamState>;
39
+ agentReducer: Reducer<AgentState>;
37
40
  };
38
41
  export declare const overmapReducer: Reducer<import("redux").CombinedState<{
39
42
  versioning: VersioningState;
@@ -45,6 +48,7 @@ export declare const overmapReducer: Reducer<import("redux").CombinedState<{
45
48
  componentStageReducer: ComponentStageState;
46
49
  componentTypeReducer: ComponentTypeState;
47
50
  issueReducer: IssueState;
51
+ issueTypeReducer: IssueTypeState;
48
52
  mapReducer: MapState;
49
53
  organizationReducer: OrganizationState;
50
54
  outboxReducer: OutboxState;
@@ -63,6 +67,7 @@ export declare const overmapReducer: Reducer<import("redux").CombinedState<{
63
67
  licenseReducer: LicenseState;
64
68
  documentsReducer: DocumentState;
65
69
  teamReducer: TeamState;
70
+ agentReducer: AgentState;
66
71
  }>, AnyAction>;
67
72
  export declare const resetStore = "RESET";
68
73
  export declare const rootReducer: Reducer<RootState>;
@@ -92,6 +97,7 @@ export declare const defaultStore: import("@reduxjs/toolkit/dist/configureStore"
92
97
  componentStageReducer: ComponentStageState;
93
98
  componentTypeReducer: ComponentTypeState;
94
99
  issueReducer: IssueState;
100
+ issueTypeReducer: IssueTypeState;
95
101
  mapReducer: MapState;
96
102
  organizationReducer: OrganizationState;
97
103
  outboxReducer: OutboxState;
@@ -110,6 +116,7 @@ export declare const defaultStore: import("@reduxjs/toolkit/dist/configureStore"
110
116
  licenseReducer: LicenseState;
111
117
  documentsReducer: DocumentState;
112
118
  teamReducer: TeamState;
119
+ agentReducer: AgentState;
113
120
  } & {
114
121
  offline: OfflineState;
115
122
  }, AnyAction, import("@reduxjs/toolkit").MiddlewareArray<[import("@reduxjs/toolkit").ThunkMiddleware<RootState, AnyAction>]>>;
@@ -1,12 +1,11 @@
1
- import { OfflineModel } from "./base";
1
+ import { CreatedByModel, OfflineModel } from "./base";
2
2
  import { MaybeObjectURL, FileModel, FileWithNameModel } from "../files";
3
3
  import { Project } from "./projects";
4
4
  import { Document } from "./documents";
5
- export interface Attachment extends OfflineModel, FileWithNameModel {
5
+ export interface Attachment extends OfflineModel, FileWithNameModel, CreatedByModel {
6
6
  description?: string;
7
7
  file_type: string;
8
8
  submitted_at: string;
9
- created_by: number;
10
9
  }
11
10
  export interface IssueAttachment extends Attachment {
12
11
  issue: string;
@@ -1,4 +1,5 @@
1
1
  import { CSSColor } from "../colors";
2
+ import { User } from "./users";
2
3
  export interface Model {
3
4
  }
4
5
  export interface OfflineModel extends Model {
@@ -40,3 +41,6 @@ export interface IconModel {
40
41
  icon: string;
41
42
  icon_color: CSSColor;
42
43
  }
44
+ export interface CreatedByModel {
45
+ created_by: User["id"];
46
+ }
@@ -1,11 +1,9 @@
1
- import { OfflineModel, Payload } from "./base";
2
- import { User } from "./users";
3
- export type SubmittedDocument = OfflineModel & {
1
+ import { CreatedByModel, OfflineModel, Payload } from "./base";
2
+ export type SubmittedDocument = OfflineModel & CreatedByModel & {
4
3
  title: string | null;
5
4
  description: string | null;
6
5
  content: string | null;
7
6
  parent_document: string | null;
8
- created_by: User["id"];
9
7
  } & ({
10
8
  project: number;
11
9
  organization: null;
@@ -16,8 +14,7 @@ export type SubmittedDocument = OfflineModel & {
16
14
  export type Document = SubmittedDocument & {
17
15
  children_documents: string[];
18
16
  };
19
- export type CreatedDocument = Document & {
20
- created_by: User["id"];
17
+ export type CreatedDocument = Document & CreatedByModel & {
21
18
  created_at: string;
22
19
  updated_at: string;
23
20
  };
@@ -1,10 +1,11 @@
1
- import { OfflineModel, Payload, SubmittedAtModel } from "./base";
1
+ import { CreatedByModel, OfflineModel, Payload, SubmittedAtModel } from "./base";
2
2
  import { BaseSerializedObject, FieldValue, ISerializedField } from "../../forms";
3
3
  import { FileWithNameModel } from '../files';
4
4
  import { WorkspaceIndexedModel } from "./workspace";
5
5
  export type UserForm = Pick<WorkspaceIndexedModel, "index_workspace"> & {
6
6
  favorite: boolean;
7
7
  component_type?: string;
8
+ issue_type?: string;
8
9
  } & ({
9
10
  owner_organization: number;
10
11
  owner_user: undefined;
@@ -32,10 +33,9 @@ export interface UserFormRevision<TFields extends BaseSerializedObject = ISerial
32
33
  revision: number | "Pending";
33
34
  }
34
35
  export type UserFormRevisionPayload = Omit<Payload<UserFormRevision>, "created_by" | "revision" | "form" | "submitted_at">;
35
- export interface UserFormSubmission extends OfflineModel, SubmittedAtModel {
36
+ export interface UserFormSubmission extends OfflineModel, SubmittedAtModel, CreatedByModel {
36
37
  form_revision: string;
37
38
  values: Record<string, FieldValue>;
38
- created_by: number;
39
39
  issue?: string;
40
40
  component?: string;
41
41
  component_stage?: string;
@@ -6,6 +6,7 @@ export * from "./components";
6
6
  export * from "./forms";
7
7
  export * from "./geo";
8
8
  export * from "./issues";
9
+ export * from "./issueTypes";
9
10
  export * from "./organizations";
10
11
  export * from "./projects";
11
12
  export * from "./users";
@@ -0,0 +1,8 @@
1
+ import { CreatedByModel, IconModel, OfflineModel, Payload, SubmittedAtModel } from "./base";
2
+ import { Organization } from "./organizations";
3
+ export interface IssueType extends OfflineModel, SubmittedAtModel, IconModel, CreatedByModel {
4
+ name?: string;
5
+ description?: string;
6
+ organization: Organization["id"];
7
+ }
8
+ export type IssueTypePayload = Payload<Omit<IssueType, "created_by" | "submitted_at" | "organization">>;
@@ -1,4 +1,4 @@
1
- import { Offline, OfflineModel } from "./base";
1
+ import { CreatedByModel, Offline, OfflineModel } from "./base";
2
2
  import { IssuePriority, IssueStatus } from "../../enums";
3
3
  import { WorkspaceIndexedModel } from "./workspace";
4
4
  import { Marker } from "./geo";
@@ -37,13 +37,13 @@ export interface Issue extends Pick<WorkspaceIndexedModel, "index_workspace"> {
37
37
  category?: string | null;
38
38
  visible_in_workspaces: string[];
39
39
  marker?: Marker | null;
40
+ issue_type?: string | null;
40
41
  }
41
42
  /**
42
43
  * These details need to be provided by the frontend code before submitting to the backend.
43
44
  */
44
- export interface SubmittedIssue extends OfflineModel {
45
+ export interface SubmittedIssue extends OfflineModel, CreatedByModel {
45
46
  submitted_at: string;
46
- created_by: number;
47
47
  status: Exclude<Issue["status"], undefined>;
48
48
  priority: Exclude<Issue["priority"], undefined>;
49
49
  }
@@ -100,9 +100,8 @@ export interface IssueUpdateChangeTypes {
100
100
  } | null;
101
101
  due_date: string;
102
102
  }
103
- export interface IssueUpdate extends OfflineModel {
103
+ export interface IssueUpdate extends OfflineModel, CreatedByModel {
104
104
  submitted_at: string;
105
- created_by: User["id"];
106
105
  issue: OfflineModel["offline_id"];
107
106
  changes: Partial<Record<IssueUpdateChange, IssueUpdateChangeTypes[IssueUpdateChange]>>;
108
107
  }
@@ -1,12 +1,11 @@
1
- import { Model } from "./base";
1
+ import { CreatedByModel, Model } from "./base";
2
2
  import { OrganizationAccess } from "./access";
3
3
  import { EmailDomain } from "./emailDomain";
4
4
  import { User } from "./users";
5
5
  import { License } from "./license";
6
- export interface Organization extends Model {
6
+ export interface Organization extends Model, CreatedByModel {
7
7
  id: number;
8
8
  name: string;
9
- created_by: number;
10
9
  has_access: boolean;
11
10
  }
12
11
  export interface InitialOrganizationData {