@overmap-ai/core 1.0.48-fix-agent-errors.3 → 1.0.48-form-submission-view.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/dist/sdk/sdk.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { AttachmentService, AuthService, CategoryService, ComponentService, ComponentStageCompletionService, ComponentStageService, ComponentTypeService, EmailVerificationService, FileService, IssueCommentService, IssueService, MainService, OrganizationAccessService, ProjectAccessService, ProjectFileService, ProjectService, UserFormService, UserFormSubmissionService, WorkspaceService, OrganizationService, EmailDomainsService, LicenseService, DocumentService, AgentService } from "./services";
1
+ import { AttachmentService, AuthService, CategoryService, ComponentService, ComponentStageCompletionService, ComponentStageService, ComponentTypeService, EmailVerificationService, FileService, IssueCommentService, IssueService, MainService, OrganizationAccessService, ProjectAccessService, ProjectFileService, ProjectService, UserFormService, UserFormSubmissionService, WorkspaceService, OrganizationService, EmailDomainsService, LicenseService, DocumentService, IssueUpdateService, AgentService } from "./services";
2
2
  import { ToolkitStore } from "@reduxjs/toolkit/dist/configureStore.js";
3
3
  import { RootState } from "../typings";
4
4
  export declare class OvermapSDK {
@@ -15,6 +15,7 @@ export declare class OvermapSDK {
15
15
  organizationAccess: OrganizationAccessService;
16
16
  issues: IssueService;
17
17
  issueComments: IssueCommentService;
18
+ issueUpdates: IssueUpdateService;
18
19
  workspaces: WorkspaceService;
19
20
  main: MainService;
20
21
  components: ComponentService;
@@ -36,4 +36,5 @@ export declare class AgentService extends BaseApiService {
36
36
  * @param conversationId If continuing an existing message, the UUID of that conversation.
37
37
  */
38
38
  prompt(request: Payload<string>, conversationId?: string): Promise<PromptAgentResponse>;
39
+ rate(responseId: string, rating: 1 | 5): Promise<undefined>;
39
40
  }
@@ -2,8 +2,8 @@ import { BaseApiService } from "./BaseApiService";
2
2
  import { IssueComment, Payload, Submitted } from "../../typings";
3
3
  import { OptimisticModelResult } from "../typings";
4
4
  export declare class IssueCommentService extends BaseApiService {
5
- add(comment: Omit<Payload<IssueComment>, "author">): OptimisticModelResult<IssueComment>;
6
- refreshStore(): Promise<void>;
5
+ add(comment: Omit<Payload<IssueComment>, "author" | "submitted_at">): OptimisticModelResult<IssueComment>;
7
6
  update(comment: Submitted<IssueComment>): OptimisticModelResult<IssueComment>;
8
7
  remove(offline_id: string): Promise<undefined>;
8
+ refreshStore(): Promise<void>;
9
9
  }
@@ -0,0 +1,4 @@
1
+ import { BaseApiService } from "./BaseApiService";
2
+ export declare class IssueUpdateService extends BaseApiService {
3
+ refreshStore(): Promise<void>;
4
+ }
@@ -7,6 +7,7 @@ export * from "./ComponentStageCompletionService";
7
7
  export * from "./ComponentStageService";
8
8
  export * from "./ComponentTypeService";
9
9
  export * from "./IssueCommentService";
10
+ export * from "./IssueUpdateService";
10
11
  export * from "./IssueService";
11
12
  export * from "./MainService";
12
13
  export * from "./ProjectAccessService";
@@ -26,6 +26,7 @@ export declare const componentStageSlice: import("@reduxjs/toolkit").Slice<Compo
26
26
  }) => void;
27
27
  }, "componentStages">;
28
28
  export declare const selectStageMapping: (state: RootState) => Record<string, ComponentStage>;
29
+ export declare const selectStage: SelectorWithArgs<string, ComponentStage | undefined>;
29
30
  export declare const selectStages: (state: RootState) => ComponentStage[];
30
31
  export declare const selectStagesFromComponentTypeIds: SelectorWithArgs<string[], Record<string, ComponentStage[]>>;
31
32
  export declare const selectStagesFromComponentType: SelectorWithArgs<string, ComponentStage[]>;
@@ -1,6 +1,6 @@
1
1
  /// <reference types="@redux-offline/redux-offline" />
2
2
  import { PayloadAction, Reducer } from "@reduxjs/toolkit";
3
- import { Created, Issue, IssueAttachment, IssueComment, RootState, SearchableRecentResult, SearchArgs, SearchResult, Selector, SelectorWithArgs, Stored, Submitted } from "../../typings";
3
+ import { Created, Issue, IssueAttachment, IssueComment, IssueUpdate, RootState, SearchableRecentResult, SearchArgs, SearchResult, Selector, SelectorWithArgs, Stored, Submitted } from "../../typings";
4
4
  import { IssueStatus } from "../../enums";
5
5
  interface RecentIssueId {
6
6
  offlineId: string;
@@ -10,6 +10,7 @@ export interface IssueState {
10
10
  issues: Record<string, Stored<Issue>>;
11
11
  attachments: Record<string, Stored<IssueAttachment>>;
12
12
  comments: Record<string, Stored<IssueComment>>;
13
+ updates: Record<string, Stored<IssueUpdate>>;
13
14
  visibleStatuses: IssueStatus[];
14
15
  visibleUserIds: (number | null)[] | null;
15
16
  recentIssueIds: RecentIssueId[];
@@ -28,6 +29,9 @@ export declare const issueSlice: import("@reduxjs/toolkit").Slice<IssueState, {
28
29
  payload: Created<IssueAttachment>[];
29
30
  type: string;
30
31
  }) => void;
32
+ setIssueUpdates: (state: import("immer/dist/internal.js").WritableDraft<IssueState>, action: {
33
+ payload: Created<IssueUpdate>[];
34
+ }) => void;
31
35
  setActiveIssueId: (state: import("immer/dist/internal.js").WritableDraft<IssueState>, action: {
32
36
  payload: string | null;
33
37
  }) => void;
@@ -42,6 +46,12 @@ export declare const issueSlice: import("@reduxjs/toolkit").Slice<IssueState, {
42
46
  payload: Submitted<IssueAttachment>[];
43
47
  type: string;
44
48
  }) => void;
49
+ addIssueUpdate: (state: import("immer/dist/internal.js").WritableDraft<IssueState>, action: {
50
+ payload: Submitted<IssueUpdate>;
51
+ }) => void;
52
+ addIssueUpdates: (state: import("immer/dist/internal.js").WritableDraft<IssueState>, action: {
53
+ payload: Submitted<IssueUpdate>[];
54
+ }) => void;
45
55
  updateIssue: (state: import("immer/dist/internal.js").WritableDraft<IssueState>, action: {
46
56
  payload: Submitted<Partial<Issue>>;
47
57
  }) => void;
@@ -54,14 +64,20 @@ export declare const issueSlice: import("@reduxjs/toolkit").Slice<IssueState, {
54
64
  payload: string;
55
65
  type: string;
56
66
  }) => void;
67
+ removeIssueUpdate: (state: import("immer/dist/internal.js").WritableDraft<IssueState>, action: PayloadAction<string>) => void;
68
+ removeIssueUpdates: (state: import("immer/dist/internal.js").WritableDraft<IssueState>, action: PayloadAction<string[]>) => void;
57
69
  removeAttachmentsOfIssue: (state: import("immer/dist/internal.js").WritableDraft<IssueState>, action: PayloadAction<string>) => void;
58
70
  setVisibleStatuses: (state: import("immer/dist/internal.js").WritableDraft<IssueState>, action: PayloadAction<IssueStatus[]>) => void;
59
71
  setVisibleUserIds: (state: import("immer/dist/internal.js").WritableDraft<IssueState>, action: {
60
72
  payload: (number | null)[];
61
73
  }) => void;
62
- setIssueComments: (state: import("immer/dist/internal.js").WritableDraft<IssueState>, action: PayloadAction<Created<IssueComment>[]>) => void;
74
+ addIssueComment: (state: import("immer/dist/internal.js").WritableDraft<IssueState>, action: PayloadAction<Submitted<IssueComment>>) => void;
75
+ addIssueComments: (state: import("immer/dist/internal.js").WritableDraft<IssueState>, action: PayloadAction<Submitted<IssueComment>[]>) => void;
76
+ setIssueComment: (state: import("immer/dist/internal.js").WritableDraft<IssueState>, action: PayloadAction<Stored<IssueComment>>) => void;
77
+ setIssueComments: (state: import("immer/dist/internal.js").WritableDraft<IssueState>, action: PayloadAction<Stored<IssueComment>[]>) => void;
63
78
  addOrReplaceIssueComment: (state: import("immer/dist/internal.js").WritableDraft<IssueState>, action: PayloadAction<Submitted<IssueComment>>) => void;
64
79
  removeIssueComment: (state: import("immer/dist/internal.js").WritableDraft<IssueState>, action: PayloadAction<string>) => void;
80
+ removeIssueComments: (state: import("immer/dist/internal.js").WritableDraft<IssueState>, action: PayloadAction<string[]>) => void;
65
81
  cleanRecentIssues: (state: import("immer/dist/internal.js").WritableDraft<IssueState>) => void;
66
82
  addToRecentIssues: (state: import("immer/dist/internal.js").WritableDraft<IssueState>, action: {
67
83
  payload: string;
@@ -69,7 +85,7 @@ export declare const issueSlice: import("@reduxjs/toolkit").Slice<IssueState, {
69
85
  resetRecentIssues: (state: import("immer/dist/internal.js").WritableDraft<IssueState>) => void;
70
86
  removeRecentIssue: (state: import("immer/dist/internal.js").WritableDraft<IssueState>, action: PayloadAction<string>) => void;
71
87
  }, "issues">;
72
- 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">, 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">, removeIssueComment: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "issues/removeIssueComment">, 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">, setIssueComments: import("@reduxjs/toolkit").ActionCreatorWithPayload<Created<IssueComment>[], "issues/setIssueComments">, 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">;
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">;
73
89
  export interface IssueFilterArgs {
74
90
  filterByAssignedTo: boolean;
75
91
  filterByStatus: boolean;
@@ -87,6 +103,8 @@ export declare const selectIssueAttachments: Selector<Stored<IssueAttachment>[]>
87
103
  export declare const selectPhotoAttachmentsOfIssue: SelectorWithArgs<string, Stored<IssueAttachment>[]>;
88
104
  export declare const selectCommentMapping: (state: RootState) => Record<string, Stored<IssueComment>>;
89
105
  export declare const selectCommentsOfIssue: (args: string) => (state: RootState) => Stored<IssueComment>[];
106
+ export declare const selectIssueUpdateMapping: (state: RootState) => Record<string, Stored<IssueUpdate>>;
107
+ export declare const selectIssueUpdatesOfIssue: (args: string) => (state: RootState) => Stored<IssueUpdate>[];
90
108
  export declare const selectAttachmentsOfIssue: (args: string) => (state: RootState) => Stored<IssueAttachment>[];
91
109
  export declare const selectAttachmentsOfIssueByType: (args: string) => (state: RootState) => {
92
110
  fileAttachments: Stored<IssueAttachment>[];
@@ -130,6 +130,7 @@ export declare const selectFilteredUserForms: SelectorWithArgs<UserFormSearchArg
130
130
  export declare const selectFormRevision: SelectorWithArgs<string, UserFormRevision>;
131
131
  export declare const selectLatestFormRevision: SelectorWithArgs<string, UserFormRevision>;
132
132
  export declare const selectUserForm: SelectorWithArgs<string, Stored<UserForm>>;
133
+ export declare const selectUserFormSubmission: SelectorWithArgs<string, Stored<UserFormSubmission>>;
133
134
  export declare const selectRevisionsForForm: SelectorWithArgs<string, UserFormRevision[]>;
134
135
  export declare const selectSubmissionsForForm: SelectorWithArgs<string, UserFormSubmission[]>;
135
136
  export declare const selectSubmissionsForIssue: SelectorWithArgs<string, UserFormSubmission[]>;
@@ -2,7 +2,7 @@ import { OfflineModel } from "./base";
2
2
  export interface ProjectAccess extends OfflineModel {
3
3
  user: number;
4
4
  project: number;
5
- access_level: number;
5
+ access_level: ProjectAccessLevel;
6
6
  }
7
7
  export declare enum ProjectAccessLevel {
8
8
  BASIC = 0,
@@ -5,6 +5,8 @@ export interface Attachment extends OfflineModel, UploadedFileModel {
5
5
  description?: string;
6
6
  file_name: string;
7
7
  file_type: string;
8
+ submitted_at: string;
9
+ created_by: number;
8
10
  }
9
11
  export interface IssueAttachment extends Attachment, UploadedFileModel {
10
12
  issue: string;
@@ -20,7 +22,7 @@ export interface ProjectAttachment extends Attachment, UploadedFileModel {
20
22
  }
21
23
  /** to get an AttachmentPayload for a specific type, pass in the given AttachmentType
22
24
  * ex. AttachmentPayload<IssueAttachment> */
23
- export type AttachmentPayload<TAttachment> = Omit<TAttachment, "file"> & {
25
+ export type AttachmentPayload<TAttachment> = Omit<TAttachment, "file" | "submitted_at" | "created_by"> & {
24
26
  file: MaybeObjectURL<File>;
25
27
  };
26
28
  export interface ProfilePic extends UploadedFileModel {
@@ -3,11 +3,13 @@ import { IssuePriority, IssueStatus } from "../../enums";
3
3
  import { WorkspaceIndexedModel } from "./workspace";
4
4
  import { Marker } from "./geo";
5
5
  import { CreatedUserForm, SubmittedUserForm, UserForm } from "./forms";
6
+ import { User } from "./users";
7
+ import { CSSColor } from "../colors";
6
8
  /**
7
9
  * Represents a model instance that has been submitted to the backend. Some properties (depending on which model, but in
8
10
  * all cases, the `offline_id`) are guaranteed to be set.
9
11
  */
10
- export type Submitted<TModel> = Offline<TModel> & (TModel extends Issue ? SubmittedIssue : TModel extends IssueComment ? SubmittedIssueComment : TModel extends UserForm ? SubmittedUserForm : Omit<TModel, "created_at" | "created_by" | "id">);
12
+ export type Submitted<TModel> = Offline<TModel> & (TModel extends Issue ? SubmittedIssue : TModel extends UserForm ? SubmittedUserForm : Omit<TModel, "created_at" | "created_by" | "id">);
11
13
  /**
12
14
  * Represents a model instance that has been submitted to the backend, accepted, then downloaded. Created models
13
15
  * typically have additional properties that are only known once it has been processed and accepted by the API, such as
@@ -62,6 +64,7 @@ export interface IssueComment extends OfflineModel {
62
64
  content: string;
63
65
  author?: number;
64
66
  created_at?: string;
67
+ submitted_at: string;
65
68
  }
66
69
  export interface SubmittedIssueComment {
67
70
  created_at: Exclude<IssueComment["created_at"], undefined>;
@@ -71,3 +74,34 @@ export interface CreatedIssueComment {
71
74
  created_at: Exclude<IssueComment["created_at"], undefined>;
72
75
  }
73
76
  export type IssueCommentPayload = Omit<IssueComment, "author" | "created_at" | "offline_id">;
77
+ export declare enum IssueUpdateChange {
78
+ STATUS = "status",
79
+ PRIORITY = "priority",
80
+ CATEGORY = "category",
81
+ DESCRIPTION = "description",
82
+ TITLE = "title",
83
+ ASSIGNED_TO = "assigned_to",
84
+ DUE_DATE = "due_date"
85
+ }
86
+ export interface IssueUpdateChangeTypes {
87
+ status: IssueStatus;
88
+ priority: IssuePriority;
89
+ category: {
90
+ name: string;
91
+ color: CSSColor;
92
+ offline_id: OfflineModel["offline_id"];
93
+ } | null;
94
+ description: string;
95
+ title: string;
96
+ assigned_to: {
97
+ full_name: string;
98
+ id: User["id"];
99
+ } | null;
100
+ due_date: string;
101
+ }
102
+ export interface IssueUpdate extends OfflineModel {
103
+ submitted_at: string;
104
+ created_by: User["id"];
105
+ issue: OfflineModel["offline_id"];
106
+ changes: Partial<Record<IssueUpdateChange, IssueUpdateChangeTypes[IssueUpdateChange]>>;
107
+ }
package/package.json CHANGED
@@ -1,152 +1,152 @@
1
- {
2
- "name": "@overmap-ai/core",
3
- "description": "Core functionality for Overmap",
4
- "author": "Wôrdn Inc.",
5
- "license": "UNLICENSED",
6
- "version": "1.0.48-fix-agent-errors.3",
7
- "type": "module",
8
- "main": "dist/overmap-core.umd.cjs",
9
- "module": "dist/overmap-core.js",
10
- "types": "dist/index.d.ts",
11
- "scripts": {
12
- "dev": "vite",
13
- "build": "tsc --noEmit && vite build",
14
- "lint": "tsc --noEmit && eslint . --ext ts,tsx,js,jsx --report-unused-disable-directives --max-warnings 0",
15
- "lint:fix": "eslint . --ext ts,tsx,js,jsx --report-unused-disable-directives --max-warnings 0 --fix",
16
- "format": "prettier --write \"**/*.{js,jsx,ts,tsx,json,md,html,sass,yaml}\"",
17
- "preview": "vite preview",
18
- "prepare": "husky install",
19
- "storybook": "storybook dev -p 6006",
20
- "build-storybook": "storybook build",
21
- "test": "npx vitest"
22
- },
23
- "dependencies": {
24
- "@hello-pangea/dnd": "^16.5.0",
25
- "@redux-offline/redux-offline": "^2.6.0",
26
- "@reduxjs/toolkit": "^1.9.5",
27
- "color": "^4.2.3",
28
- "dependency-graph": "^1.0.0",
29
- "eslint-plugin-vitest": "^0.3.20",
30
- "file-saver": "^2.0.5",
31
- "formik": "^2.4.5",
32
- "idb": "^7.1.1",
33
- "jwt-decode": "^3.1.2",
34
- "leaflet-draw": "^1.0.4",
35
- "leaflet.markercluster": "^1.5.3",
36
- "linkify-react": "^4.1.3",
37
- "linkifyjs": "^4.1.3",
38
- "localforage": "^1.10.0",
39
- "lodash.clonedeep": "^4.5.0",
40
- "lodash.get": "^4.4.2",
41
- "lodash.set": "^4.3.2",
42
- "react-leaflet": "^4.2.1",
43
- "react-pdf": "^8.0.2",
44
- "react-sketch-canvas": "^6.2.0",
45
- "react-spreadsheet": "^0.9.4",
46
- "redux-persist-migrate": "^5.0.0",
47
- "superagent": "^8.1.2",
48
- "uuid": "^9.0.0",
49
- "xlsx": "^0.18.5"
50
- },
51
- "devDependencies": {
52
- "@esbuild-plugins/node-globals-polyfill": "^0.2.3",
53
- "@esbuild-plugins/node-modules-polyfill": "^0.2.2",
54
- "@overmap-ai/blocks": "^1.0.29-alpha.0",
55
- "@rollup/plugin-commonjs": "^25.0.4",
56
- "@storybook/addon-essentials": "7.3.2",
57
- "@storybook/addon-interactions": "7.3.2",
58
- "@storybook/addon-links": "7.3.2",
59
- "@storybook/addon-onboarding": "1.0.8",
60
- "@storybook/blocks": "7.3.2",
61
- "@storybook/react": "7.3.2",
62
- "@storybook/react-vite": "7.3.2",
63
- "@storybook/testing-library": "0.2.0",
64
- "@testing-library/dom": "^9.3.4",
65
- "@testing-library/react": "^14.1.2",
66
- "@testing-library/user-event": "^14.5.2",
67
- "@types/color": "^3.0.4",
68
- "@types/file-saver": "^2.0.7",
69
- "@types/jwt-decode": "^3.1.0",
70
- "@types/leaflet": "^1.9.3",
71
- "@types/lodash.clonedeep": "^4.5.9",
72
- "@types/lodash.get": "^4.4.9",
73
- "@types/lodash.set": "^4.3.9",
74
- "@types/node": "^20.12.11",
75
- "@types/react": "^18.3.1",
76
- "@types/react-dom": "^18.2.7",
77
- "@types/react-redux": "^7.1.26",
78
- "@types/superagent": "^4.1.18",
79
- "@types/uuid": "^9.0.3",
80
- "@types/xlsx": "^0.0.36",
81
- "@typescript-eslint/eslint-plugin": "^6.4.1",
82
- "@typescript-eslint/parser": "^6.4.1",
83
- "@vitejs/plugin-react-swc": "^3.3.2",
84
- "@vitest/coverage-v8": "^1.2.1",
85
- "eslint": "^8.47.0",
86
- "eslint-config-prettier": "^9.0.0",
87
- "eslint-plugin-import": "^2.28.1",
88
- "eslint-plugin-prettier": "^5.0.0",
89
- "eslint-plugin-react": "^7.33.2",
90
- "eslint-plugin-react-hooks": "^4.6.0",
91
- "eslint-plugin-react-refresh": "^0.4.3",
92
- "eslint-plugin-simple-import-sort": "^10.0.0",
93
- "eslint-plugin-storybook": "^0.6.13",
94
- "happy-dom": "^13.3.1",
95
- "husky": "^8.0.3",
96
- "jsdom": "^23.2.0",
97
- "leaflet": "^1.9.0",
98
- "lint-staged": "^15.1.0",
99
- "prettier": "^3.0.2",
100
- "react": "^18.2.0",
101
- "react-dom": "^18.2.0",
102
- "react-hooks": "^1.0.1",
103
- "react-redux": "^8.1.2",
104
- "redux": "^4.2.1",
105
- "rollup-plugin-polyfill-node": "^0.12.0",
106
- "sass": "^1.66.1",
107
- "storybook": "7.3.2",
108
- "typescript": "^5.2.2",
109
- "vite": "^4.4.5",
110
- "vite-plugin-dts": "^3.5.2",
111
- "vite-plugin-externalize-deps": "^0.7.0",
112
- "vitest": "^1.2.1",
113
- "@tiptap/core": "^2.4.0"
114
- },
115
- "peerDependencies": {
116
- "@overmap-ai/blocks": "1.0.8",
117
- "leaflet": "^1.9.0",
118
- "react": "^18.2.0",
119
- "react-dom": "^18.2.0",
120
- "@tiptap/core": "^2.4.0",
121
- "react-redux": "^8.1.2"
122
- },
123
- "resolutions": {
124
- "//": "Workaround for eslint issue: https://github.com/eslint/eslint/discussions/17215",
125
- "strip-ansi": "6.0.1",
126
- "string-width": "4.2.2",
127
- "wrap-ansi": "7.0.0"
128
- },
129
- "lint-staged": {
130
- "src/**/*.{js,jsx,ts,tsx}": [
131
- "yarn lint",
132
- "yarn format"
133
- ]
134
- },
135
- "files": [
136
- "dist"
137
- ],
138
- "keywords": [
139
- "react",
140
- "geospacial",
141
- "map",
142
- "components"
143
- ],
144
- "homepage": "https://overmap.ai",
145
- "repository": {
146
- "type": "git",
147
- "url": "git+https://github.com/hemora-app/overmap-core.git"
148
- },
149
- "bugs": {
150
- "url": "https://github.com/hemora-app/overmap-core/issues"
151
- }
152
- }
1
+ {
2
+ "name": "@overmap-ai/core",
3
+ "description": "Core functionality for Overmap",
4
+ "author": "Wôrdn Inc.",
5
+ "license": "UNLICENSED",
6
+ "version": "1.0.48-form-submission-view.0",
7
+ "type": "module",
8
+ "main": "dist/overmap-core.umd.cjs",
9
+ "module": "dist/overmap-core.js",
10
+ "types": "dist/index.d.ts",
11
+ "scripts": {
12
+ "dev": "vite",
13
+ "build": "tsc --noEmit && vite build",
14
+ "lint": "tsc --noEmit && eslint . --ext ts,tsx,js,jsx --report-unused-disable-directives --max-warnings 0",
15
+ "lint:fix": "eslint . --ext ts,tsx,js,jsx --report-unused-disable-directives --max-warnings 0 --fix",
16
+ "format": "prettier --write \"**/*.{js,jsx,ts,tsx,json,md,html,sass,yaml}\"",
17
+ "preview": "vite preview",
18
+ "prepare": "husky install",
19
+ "storybook": "storybook dev -p 6006",
20
+ "build-storybook": "storybook build",
21
+ "test": "npx vitest"
22
+ },
23
+ "dependencies": {
24
+ "@hello-pangea/dnd": "^16.5.0",
25
+ "@redux-offline/redux-offline": "^2.6.0",
26
+ "@reduxjs/toolkit": "^1.9.5",
27
+ "color": "^4.2.3",
28
+ "dependency-graph": "^1.0.0",
29
+ "eslint-plugin-vitest": "^0.3.20",
30
+ "file-saver": "^2.0.5",
31
+ "formik": "^2.4.5",
32
+ "idb": "^7.1.1",
33
+ "jwt-decode": "^3.1.2",
34
+ "leaflet-draw": "^1.0.4",
35
+ "leaflet.markercluster": "^1.5.3",
36
+ "linkify-react": "^4.1.3",
37
+ "linkifyjs": "^4.1.3",
38
+ "localforage": "^1.10.0",
39
+ "lodash.clonedeep": "^4.5.0",
40
+ "lodash.get": "^4.4.2",
41
+ "lodash.set": "^4.3.2",
42
+ "react-leaflet": "^4.2.1",
43
+ "react-pdf": "^8.0.2",
44
+ "react-sketch-canvas": "^6.2.0",
45
+ "react-spreadsheet": "^0.9.4",
46
+ "redux-persist-migrate": "^5.0.0",
47
+ "superagent": "^8.1.2",
48
+ "uuid": "^9.0.0",
49
+ "xlsx": "^0.18.5"
50
+ },
51
+ "devDependencies": {
52
+ "@esbuild-plugins/node-globals-polyfill": "^0.2.3",
53
+ "@esbuild-plugins/node-modules-polyfill": "^0.2.2",
54
+ "@overmap-ai/blocks": "^1.0.29-alpha.1",
55
+ "@rollup/plugin-commonjs": "^25.0.4",
56
+ "@storybook/addon-essentials": "7.3.2",
57
+ "@storybook/addon-interactions": "7.3.2",
58
+ "@storybook/addon-links": "7.3.2",
59
+ "@storybook/addon-onboarding": "1.0.8",
60
+ "@storybook/blocks": "7.3.2",
61
+ "@storybook/react": "7.3.2",
62
+ "@storybook/react-vite": "7.3.2",
63
+ "@storybook/testing-library": "0.2.0",
64
+ "@testing-library/dom": "^9.3.4",
65
+ "@testing-library/react": "^14.1.2",
66
+ "@testing-library/user-event": "^14.5.2",
67
+ "@tiptap/core": "^2.4.0",
68
+ "@types/color": "^3.0.4",
69
+ "@types/file-saver": "^2.0.7",
70
+ "@types/jwt-decode": "^3.1.0",
71
+ "@types/leaflet": "^1.9.3",
72
+ "@types/lodash.clonedeep": "^4.5.9",
73
+ "@types/lodash.get": "^4.4.9",
74
+ "@types/lodash.set": "^4.3.9",
75
+ "@types/node": "^20.12.11",
76
+ "@types/react": "^18.3.1",
77
+ "@types/react-dom": "^18.2.7",
78
+ "@types/react-redux": "^7.1.26",
79
+ "@types/superagent": "^4.1.18",
80
+ "@types/uuid": "^9.0.3",
81
+ "@types/xlsx": "^0.0.36",
82
+ "@typescript-eslint/eslint-plugin": "^6.4.1",
83
+ "@typescript-eslint/parser": "^6.4.1",
84
+ "@vitejs/plugin-react-swc": "^3.3.2",
85
+ "@vitest/coverage-v8": "^1.2.1",
86
+ "eslint": "^8.47.0",
87
+ "eslint-config-prettier": "^9.0.0",
88
+ "eslint-plugin-import": "^2.28.1",
89
+ "eslint-plugin-prettier": "^5.0.0",
90
+ "eslint-plugin-react": "^7.33.2",
91
+ "eslint-plugin-react-hooks": "^4.6.0",
92
+ "eslint-plugin-react-refresh": "^0.4.3",
93
+ "eslint-plugin-simple-import-sort": "^10.0.0",
94
+ "eslint-plugin-storybook": "^0.6.13",
95
+ "happy-dom": "^13.3.1",
96
+ "husky": "^8.0.3",
97
+ "jsdom": "^23.2.0",
98
+ "leaflet": "^1.9.0",
99
+ "lint-staged": "^15.1.0",
100
+ "prettier": "^3.0.2",
101
+ "react": "^18.2.0",
102
+ "react-dom": "^18.2.0",
103
+ "react-hooks": "^1.0.1",
104
+ "react-redux": "^8.1.2",
105
+ "redux": "^4.2.1",
106
+ "rollup-plugin-polyfill-node": "^0.12.0",
107
+ "sass": "^1.66.1",
108
+ "storybook": "7.3.2",
109
+ "typescript": "^5.2.2",
110
+ "vite": "^4.4.5",
111
+ "vite-plugin-dts": "^3.5.2",
112
+ "vite-plugin-externalize-deps": "^0.7.0",
113
+ "vitest": "^1.2.1"
114
+ },
115
+ "peerDependencies": {
116
+ "@overmap-ai/blocks": "1.0.8",
117
+ "@tiptap/core": "^2.4.0",
118
+ "leaflet": "^1.9.0",
119
+ "react": "^18.2.0",
120
+ "react-dom": "^18.2.0",
121
+ "react-redux": "^8.1.2"
122
+ },
123
+ "resolutions": {
124
+ "//": "Workaround for eslint issue: https://github.com/eslint/eslint/discussions/17215",
125
+ "strip-ansi": "6.0.1",
126
+ "string-width": "4.2.2",
127
+ "wrap-ansi": "7.0.0"
128
+ },
129
+ "lint-staged": {
130
+ "src/**/*.{js,jsx,ts,tsx}": [
131
+ "yarn lint",
132
+ "yarn format"
133
+ ]
134
+ },
135
+ "files": [
136
+ "dist"
137
+ ],
138
+ "keywords": [
139
+ "react",
140
+ "geospacial",
141
+ "map",
142
+ "components"
143
+ ],
144
+ "homepage": "https://overmap.ai",
145
+ "repository": {
146
+ "type": "git",
147
+ "url": "git+https://github.com/hemora-app/overmap-core.git"
148
+ },
149
+ "bugs": {
150
+ "url": "https://github.com/hemora-app/overmap-core/issues"
151
+ }
152
+ }