@overmap-ai/core 1.0.78-organization-owner-rename.0 → 1.0.78-organization-owner-rename.1

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.
Files changed (88) hide show
  1. package/dist/overmap-core.js +4877 -4405
  2. package/dist/overmap-core.umd.cjs +8 -8
  3. package/dist/sdk/base.d.ts +1 -1
  4. package/dist/sdk/constants.d.ts +5 -0
  5. package/dist/sdk/index.d.ts +1 -0
  6. package/dist/sdk/services/AgentService.d.ts +1 -1
  7. package/dist/sdk/services/AssetAttachmentService.d.ts +1 -1
  8. package/dist/sdk/services/AssetProcedureAttachmentService.d.ts +1 -1
  9. package/dist/sdk/services/AssetProcedureFieldValuesAttachmentService.d.ts +1 -1
  10. package/dist/sdk/services/AssetProcedureFieldValuesService.d.ts +1 -1
  11. package/dist/sdk/services/AssetProcedureFieldsAttachmentService.d.ts +1 -1
  12. package/dist/sdk/services/AssetProcedureFieldsService.d.ts +1 -1
  13. package/dist/sdk/services/AssetProcedureInstanceService.d.ts +1 -1
  14. package/dist/sdk/services/AssetProcedureService.d.ts +1 -1
  15. package/dist/sdk/services/AssetProcedureStepFieldValuesAttachmentService.d.ts +1 -1
  16. package/dist/sdk/services/AssetProcedureStepFieldValuesService.d.ts +1 -1
  17. package/dist/sdk/services/AssetProcedureStepFieldsAttachmentService.d.ts +1 -1
  18. package/dist/sdk/services/AssetProcedureStepFieldsService.d.ts +1 -1
  19. package/dist/sdk/services/AssetProcedureStepService.d.ts +1 -1
  20. package/dist/sdk/services/AssetService.d.ts +1 -1
  21. package/dist/sdk/services/AssetStageCompletionService.d.ts +1 -1
  22. package/dist/sdk/services/AssetStageService.d.ts +1 -1
  23. package/dist/sdk/services/AssetTypeAttachmentService.d.ts +1 -1
  24. package/dist/sdk/services/AssetTypeFieldValuesAttachmentService.d.ts +1 -1
  25. package/dist/sdk/services/AssetTypeFieldValuesService.d.ts +1 -1
  26. package/dist/sdk/services/AssetTypeFieldsAttachmentService.d.ts +1 -1
  27. package/dist/sdk/services/AssetTypeFieldsService.d.ts +1 -1
  28. package/dist/sdk/services/AssetTypeService.d.ts +1 -1
  29. package/dist/sdk/services/BaseService.d.ts +3 -2
  30. package/dist/sdk/services/CategoryService.d.ts +1 -1
  31. package/dist/sdk/services/DocumentAttachmentService.d.ts +1 -1
  32. package/dist/sdk/services/DocumentService.d.ts +1 -1
  33. package/dist/sdk/services/EmailDomainsService.d.ts +1 -1
  34. package/dist/sdk/services/FormRevisionAttachmentService.d.ts +1 -1
  35. package/dist/sdk/services/FormRevisionService.d.ts +1 -1
  36. package/dist/sdk/services/FormService.d.ts +1 -1
  37. package/dist/sdk/services/FormSubmissionAttachmentService.d.ts +1 -1
  38. package/dist/sdk/services/FormSubmissionService.d.ts +1 -1
  39. package/dist/sdk/services/GeoImageService.d.ts +1 -1
  40. package/dist/sdk/services/IssueAssociationService.d.ts +1 -1
  41. package/dist/sdk/services/IssueAttachmentService.d.ts +1 -1
  42. package/dist/sdk/services/IssueCommentAttachmentService.d.ts +1 -1
  43. package/dist/sdk/services/IssueCommentService.d.ts +1 -1
  44. package/dist/sdk/services/IssueService.d.ts +1 -1
  45. package/dist/sdk/services/IssueTypeAttachmentService.d.ts +1 -1
  46. package/dist/sdk/services/IssueTypeFieldValuesAttachmentService.d.ts +1 -1
  47. package/dist/sdk/services/IssueTypeFieldValuesService.d.ts +1 -1
  48. package/dist/sdk/services/IssueTypeFieldsAttachmentService.d.ts +1 -1
  49. package/dist/sdk/services/IssueTypeFieldsService.d.ts +1 -1
  50. package/dist/sdk/services/IssueTypeService.d.ts +1 -1
  51. package/dist/sdk/services/IssueUpdateService.d.ts +1 -1
  52. package/dist/sdk/services/OrganizationAccessService.d.ts +1 -1
  53. package/dist/sdk/services/OrganizationService.d.ts +1 -1
  54. package/dist/sdk/services/ProjectAccessService.d.ts +1 -1
  55. package/dist/sdk/services/ProjectAttachmentService.d.ts +1 -1
  56. package/dist/sdk/services/ProjectFileService.d.ts +1 -1
  57. package/dist/sdk/services/ProjectService.d.ts +1 -1
  58. package/dist/sdk/services/TeamMembershipService.d.ts +1 -1
  59. package/dist/sdk/services/TeamService.d.ts +1 -1
  60. package/dist/sdk/services/UserService.d.ts +1 -1
  61. package/dist/sdk/typings.d.ts +10 -1
  62. package/dist/store/index.d.ts +1 -0
  63. package/dist/store/selectors/SelectorBuilder.d.ts +24 -0
  64. package/dist/store/selectors/hooks.d.ts +13 -0
  65. package/dist/store/selectors/index.d.ts +2 -0
  66. package/dist/store/slices/assetAttachmentSlice.d.ts +2 -2
  67. package/dist/store/slices/assetProcedureAttachmentSlice.d.ts +1 -1
  68. package/dist/store/slices/assetProcedureFieldValuesSlice.d.ts +1 -1
  69. package/dist/store/slices/assetProcedureFieldsAttachmentSlice.d.ts +2 -2
  70. package/dist/store/slices/assetProcedureFieldsSlice.d.ts +2 -84
  71. package/dist/store/slices/assetProcedureInstanceSlice.d.ts +1 -1
  72. package/dist/store/slices/assetProcedureSlice.d.ts +3 -85
  73. package/dist/store/slices/assetProcedureStepFieldsAttachmentSlice.d.ts +2 -2
  74. package/dist/store/slices/assetTypeAttachmentSlice.d.ts +1 -1
  75. package/dist/store/slices/documentAttachmentSlice.d.ts +2 -2
  76. package/dist/store/slices/emailDomainsSlice.d.ts +6 -6
  77. package/dist/store/slices/formSubmissionAttachmentSlice.d.ts +3 -2
  78. package/dist/store/slices/formSubmissionSlice.d.ts +4 -4
  79. package/dist/store/slices/geoImageSlice.d.ts +2 -2
  80. package/dist/store/slices/issueAssociationSlice.d.ts +4 -4
  81. package/dist/store/slices/issueAttachmentSlice.d.ts +2 -2
  82. package/dist/store/slices/issueCommentAttachmentSlice.d.ts +2 -2
  83. package/dist/store/slices/issueCommentSlice.d.ts +1 -1
  84. package/dist/store/slices/issueSlice.d.ts +7 -87
  85. package/dist/store/slices/issueTypeSlice.d.ts +1 -3
  86. package/dist/store/slices/issueUpdateSlice.d.ts +2 -1
  87. package/dist/store/store.d.ts +1 -1
  88. package/package.json +3 -2
@@ -7,6 +7,6 @@ export declare abstract class BaseSDK<TState extends BaseState> {
7
7
  readonly store: Store<TState, UnknownAction | ResultAction | ActionCreatorWithPayload<any, any>>;
8
8
  abstract readonly files: FileService<TState, BaseSDK<TState>>;
9
9
  protected constructor(store: Store<TState>);
10
- enqueueRequest<TResult>(requestDetails: SDKRequest, host: string, serviceName: string): Promise<TResult>;
10
+ enqueueRequest<TResult>(requestDetails: SDKRequest, host: string, serviceName: string, signal?: AbortSignal): Promise<TResult>;
11
11
  private _enqueueRequest;
12
12
  }
@@ -0,0 +1,5 @@
1
+ /** Default pagination max page size as defined on the BaseOvermapCursorPagination class in /api */
2
+ export declare const PAGINATION_MAX_PAGE_SIZE = 50000;
3
+ /** Default pagination page size as */
4
+ export declare const DEFAULT_PAGINATION_PAGE_SIZE = 1000;
5
+ export declare const PAGINATION_PAGE_SIZE_QUERY_PARAM = "limit";
@@ -1,5 +1,6 @@
1
1
  export * from './base';
2
2
  export * from './classes';
3
+ export * from './constants';
3
4
  export * from './errors';
4
5
  export * from './sdk';
5
6
  export * from './services';
@@ -7,5 +7,5 @@ export declare abstract class AgentService<TState extends OvermapRootState, TSDK
7
7
  continueConversation(prompt: string, conversationUuid: AgentUserConversation["uuid"], projectUuid: Project["uuid"]): Promise<void>;
8
8
  fetchDetails(conversationUuid: AgentUserConversation["uuid"]): Promise<void>;
9
9
  rate(responseUuid: string, rating: 1 | 5): Promise<undefined>;
10
- refreshStore(projectUuid: Project["uuid"]): Promise<AgentUserConversation[]>;
10
+ refreshStore(projectUuid: Project["uuid"], signal?: AbortSignal): Promise<AgentUserConversation[]>;
11
11
  }
@@ -37,5 +37,5 @@ export declare abstract class AssetAttachmentService<TState extends OvermapRootS
37
37
  file: File;
38
38
  }[]): Promise<OptimisticMultipleModelResult<AssetAttachment>>;
39
39
  delete(uuid: AssetAttachment["uuid"]): Promise<void>;
40
- refreshStore(projectUuid: Project["uuid"]): Promise<AssetAttachment[]>;
40
+ refreshStore(projectUuid: Project["uuid"], signal?: AbortSignal): Promise<AssetAttachment[]>;
41
41
  }
@@ -36,5 +36,5 @@ export declare abstract class AssetProcedureAttachmentService<TState extends Ove
36
36
  file: File;
37
37
  }[]): Promise<OptimisticMultipleModelResult<AssetProcedureAttachment>>;
38
38
  delete(uuid: AssetProcedureAttachment["uuid"]): Promise<void>;
39
- refreshStore(organizationUuid: Organization["uuid"]): Promise<AssetProcedureAttachment[]>;
39
+ refreshStore(organizationUuid: Organization["uuid"], signal?: AbortSignal): Promise<AssetProcedureAttachment[]>;
40
40
  }
@@ -12,5 +12,5 @@ export declare abstract class AssetProcedureFieldValuesAttachmentService<TState
12
12
  Promise<Created<AssetProcedureFieldValuesAttachment>[]>[]
13
13
  ]>;
14
14
  bulkDelete(uuids: AssetProcedureFieldValuesAttachment["uuid"][]): Promise<void>;
15
- refreshStore(projectUuid: Project["uuid"]): Promise<AssetProcedureFieldValuesAttachment[]>;
15
+ refreshStore(projectUuid: Project["uuid"], signal?: AbortSignal): Promise<AssetProcedureFieldValuesAttachment[]>;
16
16
  }
@@ -18,5 +18,5 @@ export declare abstract class AssetProcedureFieldValuesService<TState extends Ov
18
18
  }, batchSize?: number): [Stored<AssetProcedureFieldValues>[], Promise<Created<AssetProcedureFieldValues>[]>[]];
19
19
  update(payload: UUID<Partial<Payload<AssetProcedureFieldValues>>>): OptimisticModelResult<AssetProcedureFieldValues>;
20
20
  delete(uuid: AssetProcedureFieldValues["uuid"]): Promise<void>;
21
- refreshStore(projectUuid: Project["uuid"]): Promise<AssetProcedureFieldValues[]>;
21
+ refreshStore(projectUuid: Project["uuid"], signal?: AbortSignal): Promise<AssetProcedureFieldValues[]>;
22
22
  }
@@ -9,5 +9,5 @@ export declare abstract class AssetProcedureFieldsAttachmentService<TState exten
9
9
  fieldIdentifier: string;
10
10
  file: File;
11
11
  }[]): Promise<OptimisticMultipleModelResult<AssetProcedureFieldsAttachment>>;
12
- refreshStore(organizationUuid: Organization["uuid"]): Promise<AssetProcedureFieldsAttachment[]>;
12
+ refreshStore(organizationUuid: Organization["uuid"], signal?: AbortSignal): Promise<AssetProcedureFieldsAttachment[]>;
13
13
  }
@@ -5,5 +5,5 @@ import { OptimisticModelResult } from '../typings';
5
5
  import { BaseApiService } from './BaseApiService';
6
6
  export declare abstract class AssetProcedureFieldsService<TState extends OvermapRootState, TSDK extends BaseSDK<TState>> extends BaseApiService<TState, TSDK> {
7
7
  add(payload: Payload<AssetProcedureFields>): OptimisticModelResult<AssetProcedureFields>;
8
- refreshStore(organizationUuid: Organization["uuid"]): Promise<AssetProcedureFields[]>;
8
+ refreshStore(organizationUuid: Organization["uuid"], signal?: AbortSignal): Promise<AssetProcedureFields[]>;
9
9
  }
@@ -7,5 +7,5 @@ export declare abstract class AssetProcedureInstanceService<TState extends Overm
7
7
  add(payload: Payload<AssetProcedureInstance>): OptimisticModelResult<AssetProcedureInstance>;
8
8
  update(payload: UUID<Partial<Payload<AssetProcedureInstance>>>): OptimisticModelResult<AssetProcedureInstance>;
9
9
  remove(uuid: AssetProcedureInstance["uuid"]): Promise<undefined>;
10
- refreshStore(projectUuid: Project["uuid"]): Promise<AssetProcedureInstance[]>;
10
+ refreshStore(projectUuid: Project["uuid"], signal?: AbortSignal): Promise<AssetProcedureInstance[]>;
11
11
  }
@@ -7,5 +7,5 @@ export declare abstract class AssetProcedureService<TState extends OvermapRootSt
7
7
  add(payload: Payload<AssetProcedure>): OptimisticModelResult<AssetProcedure>;
8
8
  update(payload: UUID<Partial<Payload<AssetProcedure>>>): OptimisticModelResult<AssetProcedure>;
9
9
  remove(uuid: AssetProcedure["uuid"]): Promise<undefined>;
10
- refreshStore(organizationUuid: Organization["uuid"]): Promise<AssetProcedure[]>;
10
+ refreshStore(organizationUuid: Organization["uuid"], signal?: AbortSignal): Promise<AssetProcedure[]>;
11
11
  }
@@ -12,5 +12,5 @@ export declare abstract class AssetProcedureStepFieldValuesAttachmentService<TSt
12
12
  Promise<Created<AssetProcedureStepFieldValuesAttachment>[]>[]
13
13
  ]>;
14
14
  bulkDelete(uuids: AssetProcedureStepFieldValuesAttachment["uuid"][]): Promise<void>;
15
- refreshStore(projectUuid: Project["uuid"]): Promise<AssetProcedureStepFieldValuesAttachment[]>;
15
+ refreshStore(projectUuid: Project["uuid"], signal?: AbortSignal): Promise<AssetProcedureStepFieldValuesAttachment[]>;
16
16
  }
@@ -19,5 +19,5 @@ export declare abstract class AssetProcedureStepFieldValuesService<TState extend
19
19
  }, batchSize?: number): [Stored<AssetProcedureStepFieldValues>[], Promise<Created<AssetProcedureStepFieldValues>[]>[]];
20
20
  update(payload: UUID<Partial<Payload<AssetProcedureStepFieldValues>>>): OptimisticModelResult<AssetProcedureStepFieldValues>;
21
21
  delete(uuid: AssetProcedureStepFieldValues["uuid"]): Promise<void>;
22
- refreshStore(projectUuid: Project["uuid"]): Promise<AssetProcedureStepFieldValues[]>;
22
+ refreshStore(projectUuid: Project["uuid"], signal?: AbortSignal): Promise<AssetProcedureStepFieldValues[]>;
23
23
  }
@@ -9,5 +9,5 @@ export declare abstract class AssetProcedureStepFieldsAttachmentService<TState e
9
9
  fieldIdentifier: string;
10
10
  file: File;
11
11
  }[]): Promise<OptimisticMultipleModelResult<AssetProcedureStepFieldsAttachment>>;
12
- refreshStore(organizationUuid: Organization["uuid"]): Promise<AssetProcedureStepFieldsAttachment[]>;
12
+ refreshStore(organizationUuid: Organization["uuid"], signal?: AbortSignal): Promise<AssetProcedureStepFieldsAttachment[]>;
13
13
  }
@@ -7,5 +7,5 @@ export declare abstract class AssetProcedureStepFieldsService<TState extends Ove
7
7
  add(payload: Payload<AssetProcedureStepFields>): OptimisticModelResult<AssetProcedureStepFields>;
8
8
  update(payload: UUID<Partial<Payload<AssetProcedureStepFields>>>): OptimisticModelResult<AssetProcedureStepFields>;
9
9
  delete(uuid: AssetProcedureStepFields["uuid"]): Promise<void>;
10
- refreshStore(organizationUuid: Organization["uuid"]): Promise<AssetProcedureStepFields[]>;
10
+ refreshStore(organizationUuid: Organization["uuid"], signal?: AbortSignal): Promise<AssetProcedureStepFields[]>;
11
11
  }
@@ -7,5 +7,5 @@ export declare abstract class AssetProcedureStepService<TState extends OvermapRo
7
7
  add(payload: Payload<AssetProcedureStep>): OptimisticModelResult<AssetProcedureStep>;
8
8
  update(payload: UUID<Partial<Payload<AssetProcedureStep>>>): OptimisticModelResult<AssetProcedureStep>;
9
9
  delete(uuid: AssetProcedureStep["uuid"]): Promise<void>;
10
- refreshStore(organizationUuid: Organization["uuid"]): Promise<AssetProcedureStep[]>;
10
+ refreshStore(organizationUuid: Organization["uuid"], signal?: AbortSignal): Promise<AssetProcedureStep[]>;
11
11
  }
@@ -9,5 +9,5 @@ export declare abstract class AssetService<TState extends OvermapRootState, TSDK
9
9
  delete(uuid: Asset["uuid"]): Promise<undefined>;
10
10
  bulkAdd(payloads: Omit<Payload<Asset>, "asset_type" | "project">[], assetTypeUuid: AssetType["uuid"], projectUuid: Project["uuid"], batchSize: number): Promise<Created<Asset>[]>[];
11
11
  bulkDelete(uuids: Asset["uuid"][]): Promise<void>;
12
- refreshStore(projectUuid: Project["uuid"]): Promise<Asset[]>;
12
+ refreshStore(projectUuid: Project["uuid"], signal?: AbortSignal): Promise<Asset[]>;
13
13
  }
@@ -8,5 +8,5 @@ export declare abstract class AssetStageCompletionService<TState extends Overmap
8
8
  delete(uuid: AssetStageCompletion["uuid"]): Promise<undefined>;
9
9
  bulkAdd(payloads: Payload<AssetStageCompletion>[]): OptimisticMultipleModelResult<AssetStageCompletion>;
10
10
  bulkDelete(uuids: AssetStageCompletion["uuid"][]): Promise<undefined>;
11
- refreshStore(projectUuid: Project["uuid"]): Promise<AssetStageCompletion[]>;
11
+ refreshStore(projectUuid: Project["uuid"], signal?: AbortSignal): Promise<AssetStageCompletion[]>;
12
12
  }
@@ -7,5 +7,5 @@ export declare abstract class AssetStageService<TState extends OvermapRootState,
7
7
  add(payload: Payload<AssetStage>): OptimisticModelResult<AssetStage>;
8
8
  update(payload: UUID<Partial<Payload<AssetStage>>>): OptimisticModelResult<AssetStage>;
9
9
  delete(uuid: AssetStage["uuid"]): Promise<void>;
10
- refreshStore(organizationUuid: Organization["uuid"]): Promise<AssetStage[]>;
10
+ refreshStore(organizationUuid: Organization["uuid"], signal?: AbortSignal): Promise<AssetStage[]>;
11
11
  }
@@ -36,5 +36,5 @@ export declare abstract class AssetTypeAttachmentService<TState extends OvermapR
36
36
  file: File;
37
37
  }[]): Promise<OptimisticMultipleModelResult<AssetTypeAttachment>>;
38
38
  delete(uuid: AssetTypeAttachment["uuid"]): Promise<void>;
39
- refreshStore(organizationUuid: Organization["uuid"]): Promise<AssetTypeAttachment[]>;
39
+ refreshStore(organizationUuid: Organization["uuid"], signal?: AbortSignal): Promise<AssetTypeAttachment[]>;
40
40
  }
@@ -9,5 +9,5 @@ export declare abstract class AssetTypeFieldValuesAttachmentService<TState exten
9
9
  file: File;
10
10
  }[], batchSize?: number): Promise<[Stored<AssetTypeFieldValuesAttachment>[], Promise<Created<AssetTypeFieldValuesAttachment>[]>[]]>;
11
11
  bulkDelete(uuids: AssetTypeFieldValuesAttachment["uuid"][]): Promise<void>;
12
- refreshStore(projectUuid: Project["uuid"]): Promise<AssetTypeFieldValuesAttachment[]>;
12
+ refreshStore(projectUuid: Project["uuid"], signal?: AbortSignal): Promise<AssetTypeFieldValuesAttachment[]>;
13
13
  }
@@ -17,5 +17,5 @@ export declare abstract class AssetTypeFieldValuesService<TState extends Overmap
17
17
  }, batchSize?: number): [Stored<AssetTypeFieldValues>[], Promise<Created<AssetTypeFieldValues>[]>[]];
18
18
  update(payload: UUID<Partial<Payload<AssetTypeFieldValues>>>): OptimisticModelResult<AssetTypeFieldValues>;
19
19
  delete(uuid: AssetTypeFieldValues["uuid"]): Promise<void>;
20
- refreshStore(projectUuid: Project["uuid"]): Promise<AssetTypeFieldValues[]>;
20
+ refreshStore(projectUuid: Project["uuid"], signal?: AbortSignal): Promise<AssetTypeFieldValues[]>;
21
21
  }
@@ -9,5 +9,5 @@ export declare abstract class AssetTypeFieldsAttachmentService<TState extends Ov
9
9
  fieldIdentifier: string;
10
10
  file: File;
11
11
  }[]): Promise<OptimisticMultipleModelResult<AssetTypeFieldsAttachment>>;
12
- refreshStore(organization: Organization["uuid"]): Promise<AssetTypeFieldsAttachment[]>;
12
+ refreshStore(organization: Organization["uuid"], signal?: AbortSignal): Promise<AssetTypeFieldsAttachment[]>;
13
13
  }
@@ -5,5 +5,5 @@ import { OptimisticModelResult } from '../typings';
5
5
  import { BaseApiService } from './BaseApiService';
6
6
  export declare abstract class AssetTypeFieldsService<TState extends OvermapRootState, TSDK extends BaseSDK<TState>> extends BaseApiService<TState, TSDK> {
7
7
  add(payload: Payload<AssetTypeFields>): OptimisticModelResult<AssetTypeFields>;
8
- refreshStore(organizationUuid: Organization["uuid"]): Promise<AssetTypeFields[]>;
8
+ refreshStore(organizationUuid: Organization["uuid"], signal?: AbortSignal): Promise<AssetTypeFields[]>;
9
9
  }
@@ -7,5 +7,5 @@ export declare abstract class AssetTypeService<TState extends OvermapRootState,
7
7
  add(payload: Payload<AssetType>): OptimisticModelResult<AssetType>;
8
8
  update(payload: UUID<Partial<Payload<AssetType>>>): OptimisticModelResult<AssetType>;
9
9
  delete(uuid: AssetType["uuid"]): Promise<undefined>;
10
- refreshStore(organizationUuid: Organization["uuid"]): Promise<AssetType[]>;
10
+ refreshStore(organizationUuid: Organization["uuid"], signal?: AbortSignal): Promise<AssetType[]>;
11
11
  }
@@ -2,7 +2,7 @@ import { ResultAction } from '@redux-offline/redux-offline/lib/types';
2
2
  import { ActionCreatorWithPayload, UnknownAction } from '@reduxjs/toolkit';
3
3
  import { BaseState } from '../../store';
4
4
  import { BaseSDK } from '../base';
5
- import { SDKRequest } from '../typings';
5
+ import { PaginatedResult, SDKRequest } from '../typings';
6
6
  export declare const CLASS_NAME_TO_SERVICE: Record<string, BaseService<BaseState, BaseSDK<BaseState>>>;
7
7
  /**
8
8
  * Abstract base class for building a service that can enqueue API requests
@@ -11,6 +11,7 @@ export declare abstract class BaseService<TStore extends BaseState, TSDK extends
11
11
  protected readonly client: TSDK;
12
12
  abstract readonly host: string;
13
13
  protected constructor(sdk: TSDK);
14
- protected enqueueRequest<TResult>(requestDetails: SDKRequest): Promise<TResult>;
14
+ protected enqueueRequest<TResult>(requestDetails: SDKRequest, signal?: AbortSignal): Promise<TResult>;
15
+ protected performPagination<TResult>(initialRequest: SDKRequest, nextRequest: (next: NonNullable<PaginatedResult<TResult>["next"]>) => SDKRequest, signal?: AbortSignal): Promise<TResult[]>;
15
16
  protected dispatch(action: UnknownAction | ResultAction | ActionCreatorWithPayload<any, any>): void;
16
17
  }
@@ -7,5 +7,5 @@ export declare abstract class CategoryService<TState extends OvermapRootState, T
7
7
  add(payload: Payload<Category>): OptimisticModelResult<Category>;
8
8
  update(payload: UUID<Partial<Payload<Category>>>): OptimisticModelResult<Category>;
9
9
  remove(uuid: Category["uuid"]): Promise<undefined>;
10
- refreshStore(organizationUuid: Organization["uuid"]): Promise<Category[]>;
10
+ refreshStore(organizationUuid: Organization["uuid"], signal?: AbortSignal): Promise<Category[]>;
11
11
  }
@@ -37,5 +37,5 @@ export declare abstract class DocumentAttachmentService<TState extends OvermapRo
37
37
  }[]): Promise<OptimisticMultipleModelResult<DocumentAttachment>>;
38
38
  delete(uuid: DocumentAttachment["uuid"]): Promise<void>;
39
39
  private makeReadable;
40
- refreshStore(organizationUuid: Organization["uuid"]): Promise<DocumentAttachment[]>;
40
+ refreshStore(organizationUuid: Organization["uuid"], signal?: AbortSignal): Promise<DocumentAttachment[]>;
41
41
  }
@@ -7,5 +7,5 @@ export declare abstract class DocumentService<TState extends OvermapRootState, T
7
7
  add(payload: Payload<Document>): OptimisticModelResult<Document>;
8
8
  update(payload: UUID<Partial<Payload<Document>>>): OptimisticModelResult<Document>;
9
9
  delete(uuid: Document["uuid"]): Promise<Document[]>;
10
- refreshStore(organizationUuid: Organization["uuid"]): Promise<Document[]>;
10
+ refreshStore(organizationUuid: Organization["uuid"], signal?: AbortSignal): Promise<Document[]>;
11
11
  }
@@ -5,5 +5,5 @@ import { BaseApiService } from './BaseApiService';
5
5
  export declare abstract class EmailDomainsService<TState extends OvermapRootState, TSDK extends BaseSDK<TState>> extends BaseApiService<TState, TSDK> {
6
6
  add(organizationUuid: Organization["uuid"], email: string): Promise<undefined>;
7
7
  remove(emailDomain: EmailDomain): Promise<undefined>;
8
- refreshStore(organizationUuid: Organization["uuid"]): Promise<EmailDomain[]>;
8
+ refreshStore(organizationUuid: Organization["uuid"], signal?: AbortSignal): Promise<EmailDomain[]>;
9
9
  }
@@ -9,5 +9,5 @@ export declare abstract class FormRevisionAttachmentService<TState extends Overm
9
9
  fieldIdentifier: string;
10
10
  file: File;
11
11
  }[]): Promise<OptimisticMultipleModelResult<FormRevisionAttachment>>;
12
- refreshStore(organizationUuid: Organization["uuid"]): Promise<FormRevisionAttachment[]>;
12
+ refreshStore(organizationUuid: Organization["uuid"], signal?: AbortSignal): Promise<FormRevisionAttachment[]>;
13
13
  }
@@ -5,5 +5,5 @@ import { OptimisticModelResult } from '../typings';
5
5
  import { BaseUploadService } from './BaseUploadService';
6
6
  export declare abstract class FormRevisionService<TState extends OvermapRootState, TSDK extends BaseSDK<TState>> extends BaseUploadService<TState, TSDK> {
7
7
  add(payload: FormRevisionPayload): OptimisticModelResult<FormRevision>;
8
- refreshStore(organizationUuid: Organization["uuid"]): Promise<FormRevision[]>;
8
+ refreshStore(organizationUuid: Organization["uuid"], signal?: AbortSignal): Promise<FormRevision[]>;
9
9
  }
@@ -5,5 +5,5 @@ import { BaseUploadService } from './BaseUploadService';
5
5
  export declare abstract class FormService<TState extends OvermapRootState, TSDK extends BaseSDK<TState>> extends BaseUploadService<TState, TSDK> {
6
6
  add(payload: Payload<Form>, initialRevision: Pick<FormRevision, "title" | "description" | "fields">): [Stored<Form>, Stored<FormRevision>, Promise<Created<FormRevision>>];
7
7
  delete(uuid: Form["uuid"]): Promise<undefined>;
8
- refreshStore(organizationUuid: Organization["uuid"]): Promise<Form[]>;
8
+ refreshStore(organizationUuid: Organization["uuid"], signal?: AbortSignal): Promise<Form[]>;
9
9
  }
@@ -10,5 +10,5 @@ export declare abstract class FormSubmissionAttachmentService<TState extends Ove
10
10
  file: File;
11
11
  }[]): Promise<OptimisticMultipleModelResult<FormSubmissionAttachment>>;
12
12
  bulkDelete(uuids: FormSubmissionAttachment["uuid"][]): Promise<void>;
13
- refreshStore(projectUuid: Project["uuid"]): Promise<FormSubmissionAttachment[]>;
13
+ refreshStore(projectUuid: Project["uuid"], signal?: AbortSignal): Promise<FormSubmissionAttachment[]>;
14
14
  }
@@ -7,5 +7,5 @@ export declare abstract class FormSubmissionService<TState extends OvermapRootSt
7
7
  add(payload: Payload<FormSubmission>): OptimisticModelResult<FormSubmission>;
8
8
  update(payload: UUID<Partial<Payload<FormSubmission>>>): OptimisticModelResult<FormSubmission>;
9
9
  delete(uuid: FormSubmission["uuid"]): Promise<undefined>;
10
- refreshStore(projectUuid: Project["uuid"]): Promise<FormSubmission[]>;
10
+ refreshStore(projectUuid: Project["uuid"], signal?: AbortSignal): Promise<FormSubmission[]>;
11
11
  }
@@ -8,5 +8,5 @@ export declare abstract class GeoImageService<TState extends OvermapRootState, T
8
8
  bulkAdd(payloads: BulkGeoImagePayload[], projectUuid: string): Promise<OptimisticMultipleModelResult<GeoImage>>;
9
9
  update(payload: UUID<Partial<Pick<GeoImagePayload, "title" | "description">>>): OptimisticModelResult<GeoImage>;
10
10
  delete(uuid: GeoImage["uuid"]): Promise<void>;
11
- refreshStore(projectUuid: Project["uuid"]): Promise<GeoImage[]>;
11
+ refreshStore(projectUuid: Project["uuid"], signal?: AbortSignal): Promise<GeoImage[]>;
12
12
  }
@@ -6,5 +6,5 @@ import { BaseApiService } from './BaseApiService';
6
6
  export declare abstract class IssueAssociationService<TState extends OvermapRootState, TSDK extends BaseSDK<TState>> extends BaseApiService<TState, TSDK> {
7
7
  add(payload: Payload<IssueAssociation>): OptimisticModelResult<IssueAssociation>;
8
8
  delete(uuid: IssueAssociation["uuid"]): Promise<void>;
9
- refreshStore(projectUuid: Project["uuid"]): Promise<IssueAssociation[]>;
9
+ refreshStore(projectUuid: Project["uuid"], signal?: AbortSignal): Promise<IssueAssociation[]>;
10
10
  }
@@ -37,5 +37,5 @@ export declare abstract class IssueAttachmentService<TState extends OvermapRootS
37
37
  file: File;
38
38
  }[]): Promise<OptimisticMultipleModelResult<IssueAttachment>>;
39
39
  delete(uuid: IssueAttachment["uuid"]): Promise<void>;
40
- refreshStore(projectUuid: Project["uuid"]): Promise<IssueAttachment[]>;
40
+ refreshStore(projectUuid: Project["uuid"], signal?: AbortSignal): Promise<IssueAttachment[]>;
41
41
  }
@@ -37,5 +37,5 @@ export declare abstract class IssueCommentAttachmentService<TState extends Overm
37
37
  file: File;
38
38
  }[]): Promise<OptimisticMultipleModelResult<IssueCommentAttachment>>;
39
39
  delete(uuid: IssueCommentAttachment["uuid"]): Promise<void>;
40
- refreshStore(projectUuid: Project["uuid"]): Promise<IssueCommentAttachment[]>;
40
+ refreshStore(projectUuid: Project["uuid"], signal?: AbortSignal): Promise<IssueCommentAttachment[]>;
41
41
  }
@@ -7,5 +7,5 @@ export declare abstract class IssueCommentService<TState extends OvermapRootStat
7
7
  add(payload: Omit<Payload<IssueComment>, "author">): OptimisticModelResult<IssueComment>;
8
8
  update(payload: UUID<Partial<Payload<IssueComment>>>): OptimisticModelResult<IssueComment>;
9
9
  remove(uuid: IssueComment["uuid"]): Promise<undefined>;
10
- refreshStore(projectUuid: Project["uuid"]): Promise<IssueComment[]>;
10
+ refreshStore(projectUuid: Project["uuid"], signal?: AbortSignal): Promise<IssueComment[]>;
11
11
  }
@@ -7,5 +7,5 @@ export declare abstract class IssueService<TState extends OvermapRootState, TSDK
7
7
  add(payload: Payload<Issue>): OptimisticModelResult<Issue>;
8
8
  update(payload: UUID<Partial<Payload<Issue>>>): OptimisticModelResult<Issue>;
9
9
  remove(uuid: Issue["uuid"]): Promise<undefined>;
10
- refreshStore(projectUuid: Project["uuid"]): Promise<Issue[]>;
10
+ refreshStore(projectUuid: Project["uuid"], signal?: AbortSignal): Promise<Issue[]>;
11
11
  }
@@ -37,5 +37,5 @@ export declare abstract class IssueTypeAttachmentService<TState extends OvermapR
37
37
  file: File;
38
38
  }[]): Promise<OptimisticMultipleModelResult<IssueTypeAttachment>>;
39
39
  delete(uuid: IssueTypeAttachment["uuid"]): Promise<void>;
40
- refreshStore(organizationUuid: Organization["uuid"]): Promise<IssueTypeAttachment[]>;
40
+ refreshStore(organizationUuid: Organization["uuid"], signal?: AbortSignal): Promise<IssueTypeAttachment[]>;
41
41
  }
@@ -10,5 +10,5 @@ export declare abstract class IssueTypeFieldValuesAttachmentService<TState exten
10
10
  file: File;
11
11
  }[]): Promise<OptimisticMultipleModelResult<IssueTypeFieldValuesAttachment>>;
12
12
  bulkDelete(uuids: IssueTypeFieldValuesAttachment["uuid"][]): Promise<void>;
13
- refreshStore(projectUuid: Project["uuid"]): Promise<IssueTypeFieldValuesAttachment[]>;
13
+ refreshStore(projectUuid: Project["uuid"], signal?: AbortSignal): Promise<IssueTypeFieldValuesAttachment[]>;
14
14
  }
@@ -7,5 +7,5 @@ export declare abstract class IssueTypeFieldValuesService<TState extends Overmap
7
7
  add(payload: Payload<IssueTypeFieldValues>): OptimisticModelResult<IssueTypeFieldValues>;
8
8
  update(payload: UUID<Partial<Payload<IssueTypeFieldValues>>>): OptimisticModelResult<IssueTypeFieldValues>;
9
9
  delete(uuid: IssueTypeFieldValues["uuid"]): Promise<void>;
10
- refreshStore(projectUuid: Project["uuid"]): Promise<IssueTypeFieldValues[]>;
10
+ refreshStore(projectUuid: Project["uuid"], signal?: AbortSignal): Promise<IssueTypeFieldValues[]>;
11
11
  }
@@ -9,5 +9,5 @@ export declare abstract class IssueTypeFieldsAttachmentService<TState extends Ov
9
9
  fieldIdentifier: string;
10
10
  file: File;
11
11
  }[]): Promise<OptimisticMultipleModelResult<IssueTypeFieldsAttachment>>;
12
- refreshStore(organizationUuid: Organization["uuid"]): Promise<IssueTypeFieldsAttachment[]>;
12
+ refreshStore(organizationUuid: Organization["uuid"], signal?: AbortSignal): Promise<IssueTypeFieldsAttachment[]>;
13
13
  }
@@ -5,5 +5,5 @@ import { OptimisticModelResult } from '../typings';
5
5
  import { BaseApiService } from './BaseApiService';
6
6
  export declare abstract class IssueTypeFieldsService<TState extends OvermapRootState, TSDK extends BaseSDK<TState>> extends BaseApiService<TState, TSDK> {
7
7
  add(payload: Payload<IssueTypeFields>): OptimisticModelResult<IssueTypeFields>;
8
- refreshStore(organizationUuid: Organization["uuid"]): Promise<IssueTypeFields[]>;
8
+ refreshStore(organizationUuid: Organization["uuid"], signal?: AbortSignal): Promise<IssueTypeFields[]>;
9
9
  }
@@ -7,5 +7,5 @@ export declare abstract class IssueTypeService<TState extends OvermapRootState,
7
7
  add(payload: Payload<IssueType>): OptimisticModelResult<IssueType>;
8
8
  update(payload: UUID<Partial<Payload<IssueType>>>): OptimisticModelResult<IssueType>;
9
9
  delete(uuid: IssueType["uuid"]): Promise<void>;
10
- refreshStore(organizationUuid: Organization["uuid"]): Promise<IssueType[]>;
10
+ refreshStore(organizationUuid: Organization["uuid"], signal?: AbortSignal): Promise<IssueType[]>;
11
11
  }
@@ -3,5 +3,5 @@ import { IssueUpdate, Project } from '../../typings';
3
3
  import { BaseSDK } from '../base';
4
4
  import { BaseApiService } from './BaseApiService';
5
5
  export declare abstract class IssueUpdateService<TState extends OvermapRootState, TSDK extends BaseSDK<TState>> extends BaseApiService<TState, TSDK> {
6
- refreshStore(projectUuid: Project["uuid"]): Promise<IssueUpdate[]>;
6
+ refreshStore(projectUuid: Project["uuid"], signal?: AbortSignal): Promise<IssueUpdate[]>;
7
7
  }
@@ -6,5 +6,5 @@ import { BaseApiService } from './BaseApiService';
6
6
  export declare abstract class OrganizationAccessService<TState extends OvermapRootState, TSDK extends BaseSDK<TState>> extends BaseApiService<TState, TSDK> {
7
7
  update(payload: UUID<Payload<OrganizationAccess>>): OptimisticModelResult<OrganizationAccess>;
8
8
  remove(uuid: OrganizationAccess["uuid"]): Promise<undefined>;
9
- refreshStore(organizationUuid: Organization["uuid"]): Promise<OrganizationAccess[]>;
9
+ refreshStore(organizationUuid: Organization["uuid"], signal?: AbortSignal): Promise<OrganizationAccess[]>;
10
10
  }
@@ -6,5 +6,5 @@ export declare abstract class OrganizationService<TState extends OvermapRootStat
6
6
  add(payload: Payload<Organization>): Promise<Organization>;
7
7
  update(payload: UUID<Partial<Payload<Organization>>>): Promise<Organization>;
8
8
  invite(organizationUuid: Organization["uuid"], email: string): Promise<undefined>;
9
- refreshStore(): Promise<Organization[]>;
9
+ refreshStore(signal?: AbortSignal): Promise<Organization[]>;
10
10
  }
@@ -7,5 +7,5 @@ export declare abstract class ProjectAccessService<TState extends OvermapRootSta
7
7
  add(payload: Payload<ProjectAccess>): OptimisticModelResult<ProjectAccess>;
8
8
  update(payload: UUID<Payload<ProjectAccess>>): OptimisticModelResult<ProjectAccess>;
9
9
  remove(uuid: ProjectAccess["uuid"]): Promise<undefined>;
10
- refreshStore(organizationUuid: Organization["uuid"]): Promise<ProjectAccess[]>;
10
+ refreshStore(organizationUuid: Organization["uuid"], signal?: AbortSignal): Promise<ProjectAccess[]>;
11
11
  }
@@ -36,5 +36,5 @@ export declare abstract class ProjectAttachmentService<TState extends OvermapRoo
36
36
  file: File;
37
37
  }[]): Promise<OptimisticMultipleModelResult<ProjectAttachment>>;
38
38
  delete(uuid: ProjectAttachment["uuid"]): Promise<void>;
39
- refreshStore(organizationUuid: Organization["uuid"]): Promise<ProjectAttachment[]>;
39
+ refreshStore(organizationUuid: Organization["uuid"], signal?: AbortSignal): Promise<ProjectAttachment[]>;
40
40
  }
@@ -7,5 +7,5 @@ export declare abstract class ProjectFileService<TState extends OvermapRootState
7
7
  saveExisting(file: ProjectFile): Promise<ProjectFile>;
8
8
  saveActive(): OptimisticGenericResult<ProjectFile>;
9
9
  delete(uuid: ProjectFile["uuid"]): Promise<undefined>;
10
- refreshStore(projectUuid: Project["uuid"]): Promise<ProjectFile[]>;
10
+ refreshStore(projectUuid: Project["uuid"], signal?: AbortSignal): Promise<ProjectFile[]>;
11
11
  }
@@ -6,5 +6,5 @@ export declare abstract class ProjectService<TState extends OvermapRootState, TS
6
6
  add(payload: Payload<Project>): Promise<Project>;
7
7
  update(project: Project): Promise<Project>;
8
8
  delete(uuid: Project["uuid"]): Promise<void>;
9
- refreshStore(organizationUuid: Organization["uuid"]): Promise<Project[]>;
9
+ refreshStore(organizationUuid: Organization["uuid"], signal?: AbortSignal): Promise<Project[]>;
10
10
  }
@@ -6,5 +6,5 @@ import { BaseApiService } from './BaseApiService';
6
6
  export declare abstract class TeamMembershipService<TState extends OvermapRootState, TSDK extends BaseSDK<TState>> extends BaseApiService<TState, TSDK> {
7
7
  add(payload: Payload<TeamMembership>): OptimisticModelResult<TeamMembership>;
8
8
  delete(uuid: TeamMembership["uuid"]): Promise<undefined>;
9
- refreshStore(organizationUuid: Organization["uuid"]): Promise<TeamMembership[]>;
9
+ refreshStore(organizationUuid: Organization["uuid"], signal?: AbortSignal): Promise<TeamMembership[]>;
10
10
  }
@@ -7,5 +7,5 @@ export declare abstract class TeamService<TState extends OvermapRootState, TSDK
7
7
  add(payload: Payload<Team>): OptimisticModelResult<Team>;
8
8
  update(payload: UUID<Partial<Payload<Team>>>): OptimisticModelResult<Team>;
9
9
  delete(uuid: Team["uuid"]): Promise<undefined>;
10
- refreshStore(organizationUuid: Organization["uuid"]): Promise<Team[]>;
10
+ refreshStore(organizationUuid: Organization["uuid"], signal?: AbortSignal): Promise<Team[]>;
11
11
  }
@@ -3,5 +3,5 @@ import { Organization, User } from '../../typings';
3
3
  import { BaseSDK } from '../base';
4
4
  import { BaseApiService } from './BaseApiService';
5
5
  export declare abstract class UserService<TState extends OvermapRootState, TSDK extends BaseSDK<TState>> extends BaseApiService<TState, TSDK> {
6
- refreshStore(organizationUuid: Organization["uuid"]): Promise<User[]>;
6
+ refreshStore(organizationUuid: Organization["uuid"], signal?: AbortSignal): Promise<User[]>;
7
7
  }
@@ -27,7 +27,7 @@ export interface RequestDetails {
27
27
  immediate?: boolean;
28
28
  isExternalUrl?: boolean;
29
29
  isResponseBlob?: boolean;
30
- queryParams?: Record<string, string | undefined>;
30
+ queryParams?: Record<string, string | boolean | number | undefined>;
31
31
  isAuthNeeded?: boolean;
32
32
  /** The hash of any included attachments being uploaded to S3, retrieved from cache before the request is fired */
33
33
  attachmentHash?: string;
@@ -50,6 +50,10 @@ export interface RequestDetails {
50
50
  export type SDKRequest = Omit<RequestDetails, "uuid"> & {
51
51
  uuid?: string;
52
52
  };
53
+ export type PaginatedSDKRequest = SDKRequest & {
54
+ limit: number;
55
+ paginate: true;
56
+ };
53
57
  /**
54
58
  * Represents the result of a successful API request.
55
59
  * @deprecated Use `T` directly instead.
@@ -107,6 +111,11 @@ export type OptimisticEmptyResult = Promise<undefined>;
107
111
  * Used where the result of an API request is not one or more model instances, but some arbitrary data.
108
112
  */
109
113
  export type OptimisticGenericResult<T> = [T, DeferredPromise<T> | Promise<T>];
114
+ export type PaginatedResult<T> = {
115
+ next: string | null;
116
+ previous: string | null;
117
+ results: T;
118
+ };
110
119
  export interface OfflineMetaEffect {
111
120
  request: RequestDetails;
112
121
  /** An ISO timestamp of when the request was created. */
@@ -1,6 +1,7 @@
1
1
  export * from './adapters';
2
2
  export * from './constants';
3
3
  export * from './reducers';
4
+ export * from './selectors';
4
5
  export * from './slices';
5
6
  export * from './store';
6
7
  export type * from './typings';
@@ -0,0 +1,24 @@
1
+ import { Selector } from '../typings';
2
+ /**
3
+ * A fluent builder for creating memoized Redux selectors.
4
+ *
5
+ * Use with `useSelectorBuilder` hook for proper memoization in React components:
6
+ * @example
7
+ */
8
+ export declare class SelectorBuilder<TState, TData> {
9
+ constructor(getData: (state: TState) => TData[]);
10
+ private operations;
11
+ readonly getData: (state: TState) => TData[];
12
+ private performOperations;
13
+ filter<TKey extends keyof TData>(key: TKey, value: TData[TKey]): this;
14
+ exclude<TKey extends keyof TData>(key: TKey, value: TData[TKey]): this;
15
+ orderBy<TKey extends keyof TData>(key: TKey): this;
16
+ reverse(): this;
17
+ all(): this;
18
+ get<TKey extends keyof TData>(key: TKey, value: TData[TKey]): Selector<TState, TData | undefined>;
19
+ count(): Selector<TState, number>;
20
+ first(): Selector<TState, TData | undefined>;
21
+ last(): Selector<TState, TData | undefined>;
22
+ exists(): Selector<TState, boolean>;
23
+ toSelector(): Selector<TState, TData[]>;
24
+ }
@@ -0,0 +1,13 @@
1
+ import { DependencyList } from 'react';
2
+ import { Selector } from '../typings';
3
+ /**
4
+ * A hook that memoizes a selector built with SelectorBuilder.
5
+ *
6
+ * The selector is rebuilt only when the dependencies change, ensuring stable
7
+ * selector identity for React-Redux's `useSelector`.
8
+ *
9
+ * @param builderFn A function that returns a selector (typically from SelectorBuilder's terminal methods)
10
+ * @param deps Dependency array - selector is rebuilt when these values change
11
+ * @returns The memoized selector function
12
+ */
13
+ export declare function useSelectorBuilder<TState, TResult>(builderFn: () => Selector<TState, TResult>, deps: DependencyList): Selector<TState, TResult>;
@@ -0,0 +1,2 @@
1
+ export * from './hooks';
2
+ export * from './SelectorBuilder';