@equinor/fusion-framework-module-context 7.0.4-next.0 → 8.0.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 (79) hide show
  1. package/CHANGELOG.md +36 -15
  2. package/README.md +168 -16
  3. package/dist/esm/ContextConfigBuilder.js +24 -6
  4. package/dist/esm/ContextConfigBuilder.js.map +1 -1
  5. package/dist/esm/ContextProvider.js +71 -15
  6. package/dist/esm/ContextProvider.js.map +1 -1
  7. package/dist/esm/client/ContextClient.js +13 -3
  8. package/dist/esm/client/ContextClient.js.map +1 -1
  9. package/dist/esm/configurator.js +40 -5
  10. package/dist/esm/configurator.js.map +1 -1
  11. package/dist/esm/{errors.js → errors/FusionContextSearchError.js} +3 -1
  12. package/dist/esm/errors/FusionContextSearchError.js.map +1 -0
  13. package/dist/esm/errors/index.js +2 -0
  14. package/dist/esm/errors/index.js.map +1 -0
  15. package/dist/esm/get-context-selector.js +14 -0
  16. package/dist/esm/get-context-selector.js.map +1 -0
  17. package/dist/esm/index.js +12 -0
  18. package/dist/esm/index.js.map +1 -1
  19. package/dist/esm/module.js +6 -0
  20. package/dist/esm/module.js.map +1 -1
  21. package/dist/esm/parse-context-item.js +31 -0
  22. package/dist/esm/parse-context-item.js.map +1 -0
  23. package/dist/esm/query-context-selector.js +12 -0
  24. package/dist/esm/query-context-selector.js.map +1 -0
  25. package/dist/esm/related-context-selector.js +12 -0
  26. package/dist/esm/related-context-selector.js.map +1 -0
  27. package/dist/esm/utils/extract-context-id-from-path.js +25 -0
  28. package/dist/esm/utils/extract-context-id-from-path.js.map +1 -0
  29. package/dist/esm/utils/index.js +10 -0
  30. package/dist/esm/utils/index.js.map +1 -1
  31. package/dist/esm/utils/resolve-context-from-path.js +11 -22
  32. package/dist/esm/utils/resolve-context-from-path.js.map +1 -1
  33. package/dist/esm/utils/resolve-initial-context.js +2 -0
  34. package/dist/esm/utils/resolve-initial-context.js.map +1 -1
  35. package/dist/esm/version.js +1 -1
  36. package/dist/esm/version.js.map +1 -1
  37. package/dist/tsconfig.tsbuildinfo +1 -1
  38. package/dist/types/ContextConfigBuilder.d.ts +31 -1
  39. package/dist/types/ContextProvider.d.ts +74 -3
  40. package/dist/types/client/ContextClient.d.ts +8 -1
  41. package/dist/types/configurator.d.ts +134 -4
  42. package/dist/types/{errors.d.ts → errors/FusionContextSearchError.d.ts} +2 -0
  43. package/dist/types/errors/index.d.ts +1 -0
  44. package/dist/types/get-context-selector.d.ts +9 -0
  45. package/dist/types/index.d.ts +12 -0
  46. package/dist/types/module.d.ts +11 -0
  47. package/dist/types/parse-context-item.d.ts +8 -0
  48. package/dist/types/query-context-selector.d.ts +7 -0
  49. package/dist/types/related-context-selector.d.ts +7 -0
  50. package/dist/types/types.d.ts +23 -1
  51. package/dist/types/utils/extract-context-id-from-path.d.ts +16 -0
  52. package/dist/types/utils/index.d.ts +10 -0
  53. package/dist/types/utils/resolve-context-from-path.d.ts +1 -16
  54. package/dist/types/utils/resolve-initial-context.d.ts +1 -1
  55. package/dist/types/version.d.ts +1 -1
  56. package/package.json +12 -12
  57. package/src/ContextConfigBuilder.ts +47 -7
  58. package/src/ContextProvider.ts +115 -28
  59. package/src/client/ContextClient.ts +13 -3
  60. package/src/configurator.ts +152 -10
  61. package/src/{errors.ts → errors/FusionContextSearchError.ts} +2 -0
  62. package/src/errors/index.ts +1 -0
  63. package/src/get-context-selector.ts +18 -0
  64. package/src/index.ts +13 -0
  65. package/src/module.ts +11 -0
  66. package/src/parse-context-item.ts +39 -0
  67. package/src/query-context-selector.ts +15 -0
  68. package/src/related-context-selector.ts +15 -0
  69. package/src/types.ts +23 -1
  70. package/src/utils/extract-context-id-from-path.ts +30 -0
  71. package/src/utils/index.ts +10 -0
  72. package/src/utils/resolve-context-from-path.ts +13 -28
  73. package/src/utils/resolve-initial-context.ts +2 -0
  74. package/src/version.ts +1 -1
  75. package/dist/esm/errors.js.map +0 -1
  76. package/dist/esm/selectors.js +0 -58
  77. package/dist/esm/selectors.js.map +0 -1
  78. package/dist/types/selectors.d.ts +0 -19
  79. package/src/selectors.ts +0 -70
@@ -1,19 +0,0 @@
1
- import type { ContextItem } from './types';
2
- /**
3
- * Parse the response from the GetContext API into a context item.
4
- * @param response The response object containing the context item.
5
- * @returns A promise that resolves to the context item.
6
- */
7
- export declare const getContextSelector: (response: Response) => Promise<ContextItem>;
8
- /**
9
- * Parse the response from the QueryContext API into an array of context items.
10
- * @param response The response object.
11
- * @returns A promise that resolves to an array of context items.
12
- */
13
- export declare const queryContextSelector: (response: Response) => Promise<ContextItem[]>;
14
- /**
15
- * Parse the response from the RelatedContext API into an array of context items.
16
- * @param response The response object containing the related context items.
17
- * @returns A promise that resolves to an array of ContextItem objects.
18
- */
19
- export declare const relatedContextSelector: (response: Response) => Promise<ContextItem[]>;
package/src/selectors.ts DELETED
@@ -1,70 +0,0 @@
1
- import type {
2
- ApiVersion,
3
- ApiContextEntity,
4
- } from '@equinor/fusion-framework-module-services/context';
5
- import type { GetContextResponse } from '@equinor/fusion-framework-module-services/context/get';
6
- import type { QueryContextResponse } from '@equinor/fusion-framework-module-services/context/query';
7
- import type { RelatedContextResponse } from '@equinor/fusion-framework-module-services/context/related';
8
- import type { ContextItem, ContextItemType } from './types';
9
-
10
- /**
11
- * Parses the context type from the response of the GetContext API.
12
- *
13
- * @param type The type property from the GetContext response.
14
- * @returns The parsed context item type.
15
- */
16
- const parseContextType = (type: GetContextResponse<'v1'>['type']): ContextItemType => ({
17
- id: type.id,
18
- isChildType: type.isChildType,
19
- parentTypeIds: type.parentTypeIds ?? [],
20
- });
21
-
22
- /**
23
- * Parses an ApiContextEntity object into a ContextItem object.
24
- * @param item The ApiContextEntity object to parse.
25
- * @returns The parsed ContextItem object.
26
- */
27
- const parseContextItem = (item: ApiContextEntity<ApiVersion.v1>): ContextItem => {
28
- return {
29
- id: item.id,
30
- externalId: item.externalId ?? undefined,
31
- isActive: item.isActive,
32
- isDeleted: item.isDeleted,
33
- created: new Date(item.created),
34
- source: item.source ?? undefined,
35
- title: item.title ?? undefined,
36
- type: parseContextType(item.type),
37
- // TODO
38
- value: item.value ?? {},
39
- };
40
- };
41
-
42
- /**
43
- * Parse the response from the GetContext API into a context item.
44
- * @param response The response object containing the context item.
45
- * @returns A promise that resolves to the context item.
46
- */
47
- export const getContextSelector = async (response: Response): Promise<ContextItem> => {
48
- const result = (await response.json()) as GetContextResponse<'v1'>;
49
- return parseContextItem(result);
50
- };
51
-
52
- /**
53
- * Parse the response from the QueryContext API into an array of context items.
54
- * @param response The response object.
55
- * @returns A promise that resolves to an array of context items.
56
- */
57
- export const queryContextSelector = async (response: Response): Promise<ContextItem[]> => {
58
- const result = (await response.json()) as QueryContextResponse<'v1'>;
59
- return result.map(parseContextItem);
60
- };
61
-
62
- /**
63
- * Parse the response from the RelatedContext API into an array of context items.
64
- * @param response The response object containing the related context items.
65
- * @returns A promise that resolves to an array of ContextItem objects.
66
- */
67
- export const relatedContextSelector = async (response: Response): Promise<ContextItem[]> => {
68
- const result = (await response.json()) as RelatedContextResponse<'v1'>;
69
- return result.map(parseContextItem);
70
- };