@overmap-ai/core 1.0.48-tanstack-table.1 → 1.0.49-fix-error-messaging.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,11 +1,14 @@
1
1
  import request from "superagent";
2
2
  export interface APIErrorOptions {
3
- discard: boolean;
3
+ response?: request.Response;
4
+ innerError?: unknown;
5
+ message?: string;
6
+ discard?: boolean;
4
7
  }
5
8
  export declare class APIError extends Error {
6
9
  status: number;
7
- message: string;
8
10
  response: request.Response | undefined;
11
+ message: string;
9
12
  options: APIErrorOptions;
10
- constructor(message: string, response?: request.Response, options?: APIErrorOptions);
13
+ constructor(options: APIErrorOptions);
11
14
  }
@@ -1,6 +1,6 @@
1
1
  import { BaseApiService } from "./BaseApiService";
2
2
  import { Category, Offline, Payload } from "../../typings";
3
- import { OptimisticEmptyResult, OptimisticGenericResult, OptimisticModelResult } from "../typings";
3
+ import { OptimisticGenericResult, OptimisticModelResult } from "../typings";
4
4
  /**
5
5
  * Handles the creation of Category Service
6
6
  * TODO: Support editing and deleting categories
@@ -9,7 +9,7 @@ export declare class CategoryService extends BaseApiService {
9
9
  add(category: Omit<Payload<Category>, "workspace">, workspaceId: string): OptimisticModelResult<Category>;
10
10
  fetchAll(projectId: number): OptimisticGenericResult<Category[]>;
11
11
  update(category: Offline<Partial<Category>>, workspaceId: string): OptimisticModelResult<Category>;
12
- remove(category: Category, workspaceId: string): OptimisticEmptyResult;
12
+ remove(category: Category, workspaceId: string): Promise<undefined>;
13
13
  /**
14
14
  * Overwrites the store with whatever categories are on the server.
15
15
  * @returns A promise that resolves to an empty result.
@@ -1,6 +1,6 @@
1
1
  import { BaseApiService } from "./BaseApiService";
2
2
  import { ComponentStageCompletion } from "../../store";
3
- import { OptimisticEmptyResult, OptimisticModelResult } from "../typings";
3
+ import { OptimisticModelResult } from "../typings";
4
4
  import { Payload } from "../../typings";
5
5
  export declare class ComponentStageCompletionService extends BaseApiService {
6
6
  add(componentId: string, stageId: string): OptimisticModelResult<ComponentStageCompletion>;
@@ -13,5 +13,5 @@ export declare class ComponentStageCompletionService extends BaseApiService {
13
13
  * @param stageCompletions
14
14
  */
15
15
  bulkAdd(componentTypeId: string, stageCompletions: Payload<ComponentStageCompletion>[]): Promise<void>;
16
- bulkDelete(stageId: string, componentIds: string[]): OptimisticEmptyResult;
16
+ bulkDelete(stageId: string, componentIds: string[]): Promise<undefined>;
17
17
  }
@@ -1,9 +1,9 @@
1
1
  import { Payload } from '../../typings/models/base';
2
2
  import { Workspace } from '../../typings/models/workspace';
3
- import { ApiResult, OptimisticModelResult } from "../typings";
3
+ import { OptimisticModelResult } from "../typings";
4
4
  import { BaseApiService } from "./BaseApiService";
5
5
  export declare class WorkspaceService extends BaseApiService {
6
6
  add(workspace: Payload<Workspace>): OptimisticModelResult<Workspace>;
7
7
  update(workspace: Workspace): OptimisticModelResult<Workspace>;
8
- delete(workspaceId: string): Promise<ApiResult<undefined>>;
8
+ delete(workspaceId: string): Promise<undefined>;
9
9
  }
@@ -45,6 +45,7 @@ export declare const componentSlice: import("@reduxjs/toolkit").Slice<ComponentS
45
45
  removeAllComponentsOfType: (state: import("immer/dist/internal.js").WritableDraft<ComponentState>, action: PayloadAction<string>) => void;
46
46
  }, "components">;
47
47
  export declare const selectComponents: (state: RootState) => Component[];
48
+ export declare const selectComponentsMapping: (state: RootState) => Record<string, Component | Submitted<Component>>;
48
49
  export declare const selectComponentsFromComponentType: SelectorWithArgs<string | undefined, Component[]>;
49
50
  export declare const selectComponent: SelectorWithArgs<string, Component>;
50
51
  export declare const selectComponentTypeFromComponent: SelectorWithArgs<string, ComponentType>;
@@ -29,6 +29,7 @@ export declare const selectStageMapping: (state: RootState) => Record<string, Co
29
29
  export declare const selectStage: SelectorWithArgs<string, ComponentStage | undefined>;
30
30
  export declare const selectStages: (state: RootState) => ComponentStage[];
31
31
  export declare const selectStagesFromComponentTypeIds: SelectorWithArgs<string[], Record<string, ComponentStage[]>>;
32
+ export declare const selectComponentTypeStagesMapping: SelectorWithArgs<string, Record<string, ComponentStage>>;
32
33
  export declare const selectStagesFromComponentType: SelectorWithArgs<string, ComponentStage[]>;
33
34
  export declare const selectStagesFromStageIds: SelectorWithArgs<string[], ComponentStage[]>;
34
35
  export declare const selectStageFormIdsFromStageIds: SelectorWithArgs<string[], Record<string, string>>;
@@ -130,10 +130,12 @@ 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, 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[]>;
136
137
  export declare const selectSubmissionsForComponent: SelectorWithArgs<string, UserFormSubmission[]>;
138
+ export declare const selectComponentSubmissionMapping: Selector<Record<string, UserFormSubmission[]>>;
137
139
  export declare const selectUserFormMapping: Selector<Record<Stored<UserForm>["offline_id"], Stored<UserForm>>>;
138
140
  export declare const selectComponentTypeForm: SelectorWithArgs<string, Stored<UserForm>>;
139
141
  export declare const selectLatestRevisionsFromComponentTypeIds: SelectorWithArgs<string[], Record<string, Stored<UserFormRevision>>>;
@@ -1,3 +1,4 @@
1
+ import { CSSColor } from "../colors";
1
2
  export interface Model {
2
3
  }
3
4
  export interface OfflineModel extends Model {
@@ -25,3 +26,7 @@ export interface OwnedByUserOrOrganization {
25
26
  user_owner: number;
26
27
  organization_owner: number;
27
28
  }
29
+ export interface IconModel {
30
+ icon: string;
31
+ icon_color: CSSColor;
32
+ }
@@ -1,4 +1,4 @@
1
- import { OfflineModel } from "./base";
1
+ import { IconModel, OfflineModel } from "./base";
2
2
  import { Marker } from "./geo";
3
3
  export interface Component extends OfflineModel {
4
4
  marker: Marker | null;
@@ -6,10 +6,9 @@ export interface Component extends OfflineModel {
6
6
  created_at?: string;
7
7
  label: string | null;
8
8
  }
9
- export interface ComponentType extends OfflineModel {
9
+ export interface ComponentType extends OfflineModel, IconModel {
10
10
  name?: string;
11
11
  description?: string;
12
- icon?: string;
13
12
  }
14
13
  export interface ComponentStage extends OfflineModel {
15
14
  component_type: string;
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-tanstack-table.1",
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.49-fix-error-messaging.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
+ }