@overmap-ai/core 1.0.51-bulk-form-submission.4 → 1.0.51-fix-document-urls.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.
@@ -1,6 +1,6 @@
1
1
  import { BaseApiService } from "./BaseApiService";
2
2
  import type { OptimisticModelResult } from "../typings";
3
- import { ComponentAttachment, ComponentTypeAttachment, Created, IssueAttachment, MaybeObjectURL, AttachmentPayload, Stored, ProjectAttachment, DocumentAttachment, ProjectDocument } from "../../typings";
3
+ import { ComponentAttachment, ComponentTypeAttachment, Created, IssueAttachment, MaybeObjectURL, AttachmentPayload, Stored, ProjectAttachment, DocumentAttachment, Document } from "../../typings";
4
4
  /**
5
5
  * Handles creation and caching of attachments
6
6
  */
@@ -29,7 +29,7 @@ export declare class AttachmentService extends BaseApiService {
29
29
  attachFilesToIssue(filesToSubmit: File[], issueId: string): Promise<OptimisticModelResult<IssueAttachment>>[];
30
30
  attachFilesToComponent(filesToSubmit: File[], componentId: string): Promise<OptimisticModelResult<ComponentAttachment>>[];
31
31
  attachFilesToComponentType(filesToSubmit: File[], componentTypeId: string): Promise<OptimisticModelResult<ComponentTypeAttachment>>[];
32
- attachFilesToDocument(filesToSubmit: File[], documentId: ProjectDocument["offline_id"]): Promise<OptimisticModelResult<DocumentAttachment>>[];
32
+ attachFilesToDocument(filesToSubmit: File[], documentId: Document["offline_id"]): Promise<OptimisticModelResult<DocumentAttachment>>[];
33
33
  replaceIssueAttachmentFile(attachmentId: string, newFile: MaybeObjectURL<File>): Promise<OptimisticModelResult<IssueAttachment>>;
34
34
  replaceComponentAttachmentFile(attachmentId: string, newFile: MaybeObjectURL<File>): Promise<OptimisticModelResult<ComponentAttachment>>;
35
35
  replaceComponentTypeAttachmentFile(attachmentId: string, newFile: MaybeObjectURL<File>): Promise<OptimisticModelResult<ComponentTypeAttachment>>;
@@ -1,10 +1,10 @@
1
1
  import { BaseApiService } from "./BaseApiService";
2
- import { MovePosition, Payload, ProjectDocument, Submitted } from "../../typings";
2
+ import { MovePosition, Payload, Document, Submitted } from "../../typings";
3
3
  import { OptimisticModelResult } from "../typings";
4
4
  export declare class DocumentService extends BaseApiService {
5
- add(document: Payload<Omit<ProjectDocument, "created_by">>): OptimisticModelResult<ProjectDocument>;
6
- update(document: Submitted<Partial<ProjectDocument>>): OptimisticModelResult<ProjectDocument>;
7
- move(documentId: string, targetDocumentId: string | null, position: MovePosition): Promise<ProjectDocument[]>;
8
- delete(documentId: string): Promise<ProjectDocument[]>;
5
+ add(document: Payload<Omit<Document, "created_by">>): OptimisticModelResult<Document>;
6
+ update(document: Submitted<Partial<Document>>): OptimisticModelResult<Document>;
7
+ move(documentId: string, targetDocumentId: string | null, position: MovePosition): Promise<Document[]>;
8
+ delete(documentId: string): Promise<Document[]>;
9
9
  refreshStore(): Promise<void>;
10
10
  }
@@ -1,25 +1,25 @@
1
1
  /// <reference types="@redux-offline/redux-offline" />
2
2
  import { Reducer } from "@reduxjs/toolkit";
3
- import { DocumentAttachment, MovePosition, ProjectDocument, RootState, Selector, SelectorWithArgs, Stored, Submitted } from "../../typings";
3
+ import { DocumentAttachment, MovePosition, Document, RootState, Selector, SelectorWithArgs, Stored, Submitted } from "../../typings";
4
4
  import { AppSelector } from "./componentTypeSlice";
5
5
  export interface DocumentState {
6
- documents: Record<string, Stored<ProjectDocument>>;
6
+ documents: Record<string, Stored<Document>>;
7
7
  attachments: Record<string, Stored<DocumentAttachment>>;
8
8
  }
9
9
  export interface MoveDocumentPayload {
10
- documentId: ProjectDocument["offline_id"];
11
- targetDocumentId: ProjectDocument["offline_id"] | null;
10
+ documentId: Document["offline_id"];
11
+ targetDocumentId: Document["offline_id"] | null;
12
12
  position: MovePosition;
13
13
  }
14
14
  export declare const documentSlice: import("@reduxjs/toolkit").Slice<DocumentState, {
15
15
  setDocuments: (state: import("immer/dist/internal.js").WritableDraft<DocumentState>, action: {
16
- payload: ProjectDocument[];
16
+ payload: Document[];
17
17
  }) => void;
18
18
  addDocuments: (state: import("immer/dist/internal.js").WritableDraft<DocumentState>, action: {
19
- payload: ProjectDocument[];
19
+ payload: Document[];
20
20
  }) => void;
21
21
  updateDocuments: (state: import("immer/dist/internal.js").WritableDraft<DocumentState>, action: {
22
- payload: Submitted<Partial<ProjectDocument>>[];
22
+ payload: Submitted<Partial<Document>>[];
23
23
  }) => void;
24
24
  moveDocument: (state: import("immer/dist/internal.js").WritableDraft<DocumentState>, action: {
25
25
  payload: MoveDocumentPayload;
@@ -52,10 +52,10 @@ export declare const documentSlice: import("@reduxjs/toolkit").Slice<DocumentSta
52
52
  type: string;
53
53
  }) => void;
54
54
  }, "documents">;
55
- export declare const setDocuments: import("@reduxjs/toolkit").ActionCreatorWithPayload<ProjectDocument[], "documents/setDocuments">, addDocuments: import("@reduxjs/toolkit").ActionCreatorWithPayload<ProjectDocument[], "documents/addDocuments">, updateDocuments: import("@reduxjs/toolkit").ActionCreatorWithPayload<Submitted<Partial<ProjectDocument>>[], "documents/updateDocuments">, moveDocument: import("@reduxjs/toolkit").ActionCreatorWithPayload<MoveDocumentPayload, "documents/moveDocument">, removeDocuments: import("@reduxjs/toolkit").ActionCreatorWithPayload<string[], "documents/removeDocuments">, setDocumentAttachments: import("@reduxjs/toolkit").ActionCreatorWithPayload<import('../../typings/models/issues').Created<DocumentAttachment>[], "documents/setDocumentAttachments">, addDocumentAttachment: import("@reduxjs/toolkit").ActionCreatorWithPayload<Submitted<DocumentAttachment>, "documents/addDocumentAttachment">, addDocumentAttachments: import("@reduxjs/toolkit").ActionCreatorWithPayload<Submitted<DocumentAttachment>[], "documents/addDocumentAttachments">, updateDocumentAttachment: import("@reduxjs/toolkit").ActionCreatorWithPayload<Submitted<DocumentAttachment>, "documents/updateDocumentAttachment">, removeDocumentAttachment: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "documents/removeDocumentAttachment">, removeDocumentAttachments: import("@reduxjs/toolkit").ActionCreatorWithPayload<string[], "documents/removeDocumentAttachments">;
56
- export declare const selectDocumentsMapping: AppSelector<Record<string, Stored<ProjectDocument>>>;
57
- export declare const selectDocuments: AppSelector<Stored<ProjectDocument>[]>;
58
- export declare const selectDocument: (args: string) => (state: RootState) => Stored<ProjectDocument> | undefined;
55
+ export declare const setDocuments: import("@reduxjs/toolkit").ActionCreatorWithPayload<Document[], "documents/setDocuments">, addDocuments: import("@reduxjs/toolkit").ActionCreatorWithPayload<Document[], "documents/addDocuments">, updateDocuments: import("@reduxjs/toolkit").ActionCreatorWithPayload<Submitted<Partial<Document>>[], "documents/updateDocuments">, moveDocument: import("@reduxjs/toolkit").ActionCreatorWithPayload<MoveDocumentPayload, "documents/moveDocument">, removeDocuments: import("@reduxjs/toolkit").ActionCreatorWithPayload<string[], "documents/removeDocuments">, setDocumentAttachments: import("@reduxjs/toolkit").ActionCreatorWithPayload<import('../../typings/models/issues').Created<DocumentAttachment>[], "documents/setDocumentAttachments">, addDocumentAttachment: import("@reduxjs/toolkit").ActionCreatorWithPayload<Submitted<DocumentAttachment>, "documents/addDocumentAttachment">, addDocumentAttachments: import("@reduxjs/toolkit").ActionCreatorWithPayload<Submitted<DocumentAttachment>[], "documents/addDocumentAttachments">, updateDocumentAttachment: import("@reduxjs/toolkit").ActionCreatorWithPayload<Submitted<DocumentAttachment>, "documents/updateDocumentAttachment">, removeDocumentAttachment: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "documents/removeDocumentAttachment">, removeDocumentAttachments: import("@reduxjs/toolkit").ActionCreatorWithPayload<string[], "documents/removeDocumentAttachments">;
56
+ export declare const selectDocumentsMapping: AppSelector<Record<string, Stored<Document>>>;
57
+ export declare const selectDocuments: AppSelector<Stored<Document>[]>;
58
+ export declare const selectDocument: (args: string) => (state: RootState) => Stored<Document> | undefined;
59
59
  export declare const selectAncestorIdsOfDocument: (args: string) => (state: RootState) => string[];
60
60
  export declare const selectRootDocuments: ((state: import("redux").EmptyObject & {
61
61
  versioning: import('../slices/versioningSlice').VersioningState;
@@ -86,7 +86,7 @@ export declare const selectRootDocuments: ((state: import("redux").EmptyObject &
86
86
  documentsReducer: DocumentState;
87
87
  } & {
88
88
  offline: import("@redux-offline/redux-offline/lib/types").OfflineState;
89
- }) => Stored<ProjectDocument>[]) & import("reselect").OutputSelectorFields<(args_0: Stored<ProjectDocument>[]) => Stored<ProjectDocument>[], {
89
+ }) => Stored<Document>[]) & import("reselect").OutputSelectorFields<(args_0: Stored<Document>[]) => Stored<Document>[], {
90
90
  clearCache: () => void;
91
91
  }> & {
92
92
  clearCache: () => void;
package/dist/style.css CHANGED
@@ -154,6 +154,11 @@
154
154
  overflow-x: auto;
155
155
  white-space: nowrap;
156
156
  padding-top: calc(var(--space-1) + 1px);
157
+ }._QrScannerWrapper_1puz3_1 {
158
+ background: var(--color-background);
159
+ }
160
+ ._QrScannerWrapper_1puz3_1 svg {
161
+ stroke: #29A383 !important;
157
162
  }._PDFViewerTopbar_103p8_1 {
158
163
  background: var(--color-background);
159
164
  }
@@ -1,7 +1,7 @@
1
1
  import { OfflineModel } from "./base";
2
2
  import { MaybeObjectURL, FileModel, FileWithNameModel } from "../files";
3
3
  import { Project } from "./projects";
4
- import { ProjectDocument } from "./documents";
4
+ import { Document } from "./documents";
5
5
  export interface Attachment extends OfflineModel, FileWithNameModel {
6
6
  description?: string;
7
7
  file_type: string;
@@ -21,7 +21,7 @@ export interface ProjectAttachment extends Attachment {
21
21
  project: Project["id"];
22
22
  }
23
23
  export interface DocumentAttachment extends Attachment {
24
- document: ProjectDocument["offline_id"];
24
+ document: Document["offline_id"];
25
25
  }
26
26
  /** to get an AttachmentPayload for a specific type, pass in the given AttachmentType
27
27
  * ex. AttachmentPayload<IssueAttachment> */
@@ -1,11 +1,13 @@
1
1
  import { OfflineModel } from "./base";
2
2
  import { User } from "./users";
3
- export interface ProjectDocument extends OfflineModel {
3
+ export interface Document extends OfflineModel {
4
4
  title: string | null;
5
5
  description: string | null;
6
6
  content: string | null;
7
7
  created_by: User["id"];
8
- parent_document: ProjectDocument["offline_id"] | null;
9
- children_documents: ProjectDocument["offline_id"][];
8
+ project: number;
9
+ organization: number;
10
+ parent_document: Document["offline_id"] | null;
11
+ children_documents: Document["offline_id"][];
10
12
  }
11
13
  export type MovePosition = "left" | "right" | "left-child" | "right-child";
package/package.json CHANGED
@@ -1,152 +1,153 @@
1
- {
2
- "name": "@overmap-ai/core",
3
- "description": "Core functionality for Overmap",
4
- "author": "Wôrdn Inc.",
5
- "license": "UNLICENSED",
6
- "version": "1.0.51-bulk-form-submission.4",
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
- }
1
+ {
2
+ "name": "@overmap-ai/core",
3
+ "description": "Core functionality for Overmap",
4
+ "author": "Wôrdn Inc.",
5
+ "license": "UNLICENSED",
6
+ "version": "1.0.51-fix-document-urls.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
+ "qr-scanner": "^1.4.2",
43
+ "react-leaflet": "^4.2.1",
44
+ "react-pdf": "^8.0.2",
45
+ "react-sketch-canvas": "^6.2.0",
46
+ "react-spreadsheet": "^0.9.4",
47
+ "redux-persist-migrate": "^5.0.0",
48
+ "superagent": "^8.1.2",
49
+ "uuid": "^9.0.0",
50
+ "xlsx": "^0.18.5"
51
+ },
52
+ "devDependencies": {
53
+ "@esbuild-plugins/node-globals-polyfill": "^0.2.3",
54
+ "@esbuild-plugins/node-modules-polyfill": "^0.2.2",
55
+ "@overmap-ai/blocks": "^1.0.29-alpha.1",
56
+ "@rollup/plugin-commonjs": "^25.0.4",
57
+ "@storybook/addon-essentials": "7.3.2",
58
+ "@storybook/addon-interactions": "7.3.2",
59
+ "@storybook/addon-links": "7.3.2",
60
+ "@storybook/addon-onboarding": "1.0.8",
61
+ "@storybook/blocks": "7.3.2",
62
+ "@storybook/react": "7.3.2",
63
+ "@storybook/react-vite": "7.3.2",
64
+ "@storybook/testing-library": "0.2.0",
65
+ "@testing-library/dom": "^9.3.4",
66
+ "@testing-library/react": "^14.1.2",
67
+ "@testing-library/user-event": "^14.5.2",
68
+ "@tiptap/core": "^2.4.0",
69
+ "@types/color": "^3.0.4",
70
+ "@types/file-saver": "^2.0.7",
71
+ "@types/jwt-decode": "^3.1.0",
72
+ "@types/leaflet": "^1.9.3",
73
+ "@types/lodash.clonedeep": "^4.5.9",
74
+ "@types/lodash.get": "^4.4.9",
75
+ "@types/lodash.set": "^4.3.9",
76
+ "@types/node": "^20.12.11",
77
+ "@types/react": "^18.3.1",
78
+ "@types/react-dom": "^18.2.7",
79
+ "@types/react-redux": "^7.1.26",
80
+ "@types/superagent": "^4.1.18",
81
+ "@types/uuid": "^9.0.3",
82
+ "@types/xlsx": "^0.0.36",
83
+ "@typescript-eslint/eslint-plugin": "^6.4.1",
84
+ "@typescript-eslint/parser": "^6.4.1",
85
+ "@vitejs/plugin-react-swc": "^3.3.2",
86
+ "@vitest/coverage-v8": "^1.2.1",
87
+ "eslint": "^8.47.0",
88
+ "eslint-config-prettier": "^9.0.0",
89
+ "eslint-plugin-import": "^2.28.1",
90
+ "eslint-plugin-prettier": "^5.0.0",
91
+ "eslint-plugin-react": "^7.33.2",
92
+ "eslint-plugin-react-hooks": "^4.6.0",
93
+ "eslint-plugin-react-refresh": "^0.4.3",
94
+ "eslint-plugin-simple-import-sort": "^10.0.0",
95
+ "eslint-plugin-storybook": "^0.6.13",
96
+ "happy-dom": "^13.3.1",
97
+ "husky": "^8.0.3",
98
+ "jsdom": "^23.2.0",
99
+ "leaflet": "^1.9.0",
100
+ "lint-staged": "^15.1.0",
101
+ "prettier": "^3.0.2",
102
+ "react": "^18.2.0",
103
+ "react-dom": "^18.2.0",
104
+ "react-hooks": "^1.0.1",
105
+ "react-redux": "^8.1.2",
106
+ "redux": "^4.2.1",
107
+ "rollup-plugin-polyfill-node": "^0.12.0",
108
+ "sass": "^1.66.1",
109
+ "storybook": "7.3.2",
110
+ "typescript": "^5.2.2",
111
+ "vite": "^4.4.5",
112
+ "vite-plugin-dts": "^3.5.2",
113
+ "vite-plugin-externalize-deps": "^0.7.0",
114
+ "vitest": "^1.2.1"
115
+ },
116
+ "peerDependencies": {
117
+ "@overmap-ai/blocks": "1.0.8",
118
+ "@tiptap/core": "^2.4.0",
119
+ "leaflet": "^1.9.0",
120
+ "react": "^18.2.0",
121
+ "react-dom": "^18.2.0",
122
+ "react-redux": "^8.1.2"
123
+ },
124
+ "resolutions": {
125
+ "//": "Workaround for eslint issue: https://github.com/eslint/eslint/discussions/17215",
126
+ "strip-ansi": "6.0.1",
127
+ "string-width": "4.2.2",
128
+ "wrap-ansi": "7.0.0"
129
+ },
130
+ "lint-staged": {
131
+ "src/**/*.{js,jsx,ts,tsx}": [
132
+ "yarn lint",
133
+ "yarn format"
134
+ ]
135
+ },
136
+ "files": [
137
+ "dist"
138
+ ],
139
+ "keywords": [
140
+ "react",
141
+ "geospacial",
142
+ "map",
143
+ "components"
144
+ ],
145
+ "homepage": "https://overmap.ai",
146
+ "repository": {
147
+ "type": "git",
148
+ "url": "git+https://github.com/hemora-app/overmap-core.git"
149
+ },
150
+ "bugs": {
151
+ "url": "https://github.com/hemora-app/overmap-core/issues"
152
+ }
153
+ }