@party-stack/salesforce-ontology 0.4.0 → 0.4.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 (166) hide show
  1. package/README.md +22 -31
  2. package/lib/actionMetadata.d.ts +11 -9
  3. package/lib/actionMetadata.d.ts.map +1 -1
  4. package/lib/actionMetadata.js +19 -30
  5. package/lib/actionMetadata.js.map +1 -1
  6. package/lib/adapter/convertLoadSubsetOptions.d.ts +10 -8
  7. package/lib/adapter/convertLoadSubsetOptions.d.ts.map +1 -1
  8. package/lib/adapter/convertLoadSubsetOptions.js +110 -173
  9. package/lib/adapter/convertLoadSubsetOptions.js.map +1 -1
  10. package/lib/adapter/createSalesforceOntologyBackendAdapter.d.ts +14 -12
  11. package/lib/adapter/createSalesforceOntologyBackendAdapter.d.ts.map +1 -1
  12. package/lib/adapter/createSalesforceOntologyBackendAdapter.js +124 -191
  13. package/lib/adapter/createSalesforceOntologyBackendAdapter.js.map +1 -1
  14. package/lib/adapter/index.d.ts +5 -5
  15. package/lib/adapter/index.js +5 -5
  16. package/lib/adapter/objectCollectionOptions.d.ts +22 -23
  17. package/lib/adapter/objectCollectionOptions.d.ts.map +1 -1
  18. package/lib/adapter/objectCollectionOptions.js +198 -280
  19. package/lib/adapter/objectCollectionOptions.js.map +1 -1
  20. package/lib/adapter/salesforceCodec.d.ts +6 -5
  21. package/lib/adapter/salesforceCodec.d.ts.map +1 -1
  22. package/lib/adapter/salesforceCodec.js +126 -190
  23. package/lib/adapter/salesforceCodec.js.map +1 -1
  24. package/lib/config/index.d.ts +20 -18
  25. package/lib/config/index.d.ts.map +1 -1
  26. package/lib/config/index.js +148 -192
  27. package/lib/config/index.js.map +1 -1
  28. package/lib/connection.d.ts +35 -33
  29. package/lib/connection.d.ts.map +1 -1
  30. package/lib/connection.js +243 -299
  31. package/lib/connection.js.map +1 -1
  32. package/lib/crud.d.ts +5 -3
  33. package/lib/crud.d.ts.map +1 -1
  34. package/lib/crud.js +0 -1
  35. package/lib/index.d.ts +10 -5
  36. package/lib/index.js +10 -5
  37. package/lib/installation/createSalesforceBackendInstallation.d.ts +28 -26
  38. package/lib/installation/createSalesforceBackendInstallation.d.ts.map +1 -1
  39. package/lib/installation/createSalesforceBackendInstallation.js +75 -85
  40. package/lib/installation/createSalesforceBackendInstallation.js.map +1 -1
  41. package/lib/installation/index.d.ts +2 -2
  42. package/lib/installation/index.js +2 -2
  43. package/lib/meta/actionTypeCollectionOptions.d.ts +10 -8
  44. package/lib/meta/actionTypeCollectionOptions.d.ts.map +1 -1
  45. package/lib/meta/actionTypeCollectionOptions.js +105 -212
  46. package/lib/meta/actionTypeCollectionOptions.js.map +1 -1
  47. package/lib/meta/convertMetaActionType.d.ts +4 -2
  48. package/lib/meta/convertMetaActionType.d.ts.map +1 -1
  49. package/lib/meta/convertMetaActionType.js +32 -32
  50. package/lib/meta/convertMetaActionType.js.map +1 -1
  51. package/lib/meta/convertMetaLinkType.d.ts +4 -2
  52. package/lib/meta/convertMetaLinkType.d.ts.map +1 -1
  53. package/lib/meta/convertMetaLinkType.js +39 -45
  54. package/lib/meta/convertMetaLinkType.js.map +1 -1
  55. package/lib/meta/convertMetaLoadSubsetOptions.d.ts +12 -10
  56. package/lib/meta/convertMetaLoadSubsetOptions.d.ts.map +1 -1
  57. package/lib/meta/convertMetaLoadSubsetOptions.js +42 -58
  58. package/lib/meta/convertMetaLoadSubsetOptions.js.map +1 -1
  59. package/lib/meta/convertMetaObjectType.d.ts +4 -2
  60. package/lib/meta/convertMetaObjectType.d.ts.map +1 -1
  61. package/lib/meta/convertMetaObjectType.js +36 -40
  62. package/lib/meta/convertMetaObjectType.js.map +1 -1
  63. package/lib/meta/convertMetaQueryFunctionType.d.ts +4 -2
  64. package/lib/meta/convertMetaQueryFunctionType.d.ts.map +1 -1
  65. package/lib/meta/convertMetaQueryFunctionType.js +27 -25
  66. package/lib/meta/convertMetaQueryFunctionType.js.map +1 -1
  67. package/lib/meta/convertMetaTypeDef.d.ts +10 -8
  68. package/lib/meta/convertMetaTypeDef.d.ts.map +1 -1
  69. package/lib/meta/convertMetaTypeDef.js +196 -188
  70. package/lib/meta/convertMetaTypeDef.js.map +1 -1
  71. package/lib/meta/createSalesforceMetaOntologyBackendAdapter.d.ts +19 -17
  72. package/lib/meta/createSalesforceMetaOntologyBackendAdapter.d.ts.map +1 -1
  73. package/lib/meta/createSalesforceMetaOntologyBackendAdapter.js +38 -40
  74. package/lib/meta/createSalesforceMetaOntologyBackendAdapter.js.map +1 -1
  75. package/lib/meta/entityCollectionOptions.d.ts +10 -8
  76. package/lib/meta/entityCollectionOptions.d.ts.map +1 -1
  77. package/lib/meta/entityCollectionOptions.js +73 -82
  78. package/lib/meta/entityCollectionOptions.js.map +1 -1
  79. package/lib/meta/index.d.ts +7 -7
  80. package/lib/meta/index.js +7 -7
  81. package/lib/meta/queryFunctionTypeCollectionOptions.d.ts +7 -5
  82. package/lib/meta/queryFunctionTypeCollectionOptions.d.ts.map +1 -1
  83. package/lib/meta/queryFunctionTypeCollectionOptions.js +53 -91
  84. package/lib/meta/queryFunctionTypeCollectionOptions.js.map +1 -1
  85. package/lib/meta/synthesizeCrudActionTypes.d.ts +4 -2
  86. package/lib/meta/synthesizeCrudActionTypes.d.ts.map +1 -1
  87. package/lib/meta/synthesizeCrudActionTypes.js +77 -116
  88. package/lib/meta/synthesizeCrudActionTypes.js.map +1 -1
  89. package/lib/standardActions.d.ts +2 -0
  90. package/lib/standardActions.d.ts.map +1 -1
  91. package/lib/standardActions.js +22 -20
  92. package/lib/standardActions.js.map +1 -1
  93. package/lib/utils/AsyncIterable.d.ts +2 -0
  94. package/lib/utils/AsyncIterable.d.ts.map +1 -1
  95. package/lib/utils/AsyncIterable.js +20 -23
  96. package/lib/utils/AsyncIterable.js.map +1 -1
  97. package/lib/utils/ids.d.ts +2 -0
  98. package/lib/utils/ids.d.ts.map +1 -1
  99. package/lib/utils/ids.js +23 -19
  100. package/lib/utils/ids.js.map +1 -1
  101. package/package.json +14 -20
  102. package/lib/adapter/convertLoadSubsetOptions.test.d.ts +0 -2
  103. package/lib/adapter/convertLoadSubsetOptions.test.d.ts.map +0 -1
  104. package/lib/adapter/convertLoadSubsetOptions.test.js +0 -80
  105. package/lib/adapter/convertLoadSubsetOptions.test.js.map +0 -1
  106. package/lib/adapter/createSalesforceOntologyBackendAdapter.test.d.ts +0 -2
  107. package/lib/adapter/createSalesforceOntologyBackendAdapter.test.d.ts.map +0 -1
  108. package/lib/adapter/createSalesforceOntologyBackendAdapter.test.js +0 -394
  109. package/lib/adapter/createSalesforceOntologyBackendAdapter.test.js.map +0 -1
  110. package/lib/adapter/index.d.ts.map +0 -1
  111. package/lib/adapter/index.js.map +0 -1
  112. package/lib/adapter/objectCollectionOptions.test.d.ts +0 -2
  113. package/lib/adapter/objectCollectionOptions.test.d.ts.map +0 -1
  114. package/lib/adapter/objectCollectionOptions.test.js +0 -160
  115. package/lib/adapter/objectCollectionOptions.test.js.map +0 -1
  116. package/lib/adapter/salesforceCodec.test.d.ts +0 -2
  117. package/lib/adapter/salesforceCodec.test.d.ts.map +0 -1
  118. package/lib/adapter/salesforceCodec.test.js +0 -57
  119. package/lib/adapter/salesforceCodec.test.js.map +0 -1
  120. package/lib/config/index.test.d.ts +0 -2
  121. package/lib/config/index.test.d.ts.map +0 -1
  122. package/lib/config/index.test.js +0 -177
  123. package/lib/config/index.test.js.map +0 -1
  124. package/lib/connection.test.d.ts +0 -2
  125. package/lib/connection.test.d.ts.map +0 -1
  126. package/lib/connection.test.js +0 -189
  127. package/lib/connection.test.js.map +0 -1
  128. package/lib/crud.js.map +0 -1
  129. package/lib/index.d.ts.map +0 -1
  130. package/lib/index.js.map +0 -1
  131. package/lib/installation/createSalesforceBackendInstallation.test.d.ts +0 -2
  132. package/lib/installation/createSalesforceBackendInstallation.test.d.ts.map +0 -1
  133. package/lib/installation/createSalesforceBackendInstallation.test.js +0 -55
  134. package/lib/installation/createSalesforceBackendInstallation.test.js.map +0 -1
  135. package/lib/installation/index.d.ts.map +0 -1
  136. package/lib/installation/index.js.map +0 -1
  137. package/lib/meta/actionTypeCollectionOptions.test.d.ts +0 -2
  138. package/lib/meta/actionTypeCollectionOptions.test.d.ts.map +0 -1
  139. package/lib/meta/actionTypeCollectionOptions.test.js +0 -192
  140. package/lib/meta/actionTypeCollectionOptions.test.js.map +0 -1
  141. package/lib/meta/convertMetaActionType.test.d.ts +0 -2
  142. package/lib/meta/convertMetaActionType.test.d.ts.map +0 -1
  143. package/lib/meta/convertMetaActionType.test.js +0 -185
  144. package/lib/meta/convertMetaActionType.test.js.map +0 -1
  145. package/lib/meta/convertMetaObjectType.test.d.ts +0 -2
  146. package/lib/meta/convertMetaObjectType.test.d.ts.map +0 -1
  147. package/lib/meta/convertMetaObjectType.test.js +0 -187
  148. package/lib/meta/convertMetaObjectType.test.js.map +0 -1
  149. package/lib/meta/convertMetaQueryFunctionType.test.d.ts +0 -2
  150. package/lib/meta/convertMetaQueryFunctionType.test.d.ts.map +0 -1
  151. package/lib/meta/convertMetaQueryFunctionType.test.js +0 -58
  152. package/lib/meta/convertMetaQueryFunctionType.test.js.map +0 -1
  153. package/lib/meta/entityCollectionOptions.test.d.ts +0 -2
  154. package/lib/meta/entityCollectionOptions.test.d.ts.map +0 -1
  155. package/lib/meta/entityCollectionOptions.test.js +0 -120
  156. package/lib/meta/entityCollectionOptions.test.js.map +0 -1
  157. package/lib/meta/index.d.ts.map +0 -1
  158. package/lib/meta/index.js.map +0 -1
  159. package/lib/meta/queryFunctionTypeCollectionOptions.test.d.ts +0 -2
  160. package/lib/meta/queryFunctionTypeCollectionOptions.test.d.ts.map +0 -1
  161. package/lib/meta/queryFunctionTypeCollectionOptions.test.js +0 -71
  162. package/lib/meta/queryFunctionTypeCollectionOptions.test.js.map +0 -1
  163. package/lib/meta/synthesizeCrudActionTypes.test.d.ts +0 -2
  164. package/lib/meta/synthesizeCrudActionTypes.test.d.ts.map +0 -1
  165. package/lib/meta/synthesizeCrudActionTypes.test.js +0 -153
  166. package/lib/meta/synthesizeCrudActionTypes.test.js.map +0 -1
@@ -1,90 +1,81 @@
1
- import { QueryClient } from "@tanstack/query-core";
2
- import { queryCollectionOptions } from "@tanstack/query-db-collection";
3
- import { salesforceObjectTypeId, } from "../utils/ids.js";
4
- import { convertSalesforceMetaLinkTypes } from "./convertMetaLinkType.js";
1
+ import { salesforceObjectTypeId } from "../utils/ids.js";
5
2
  import { convertMetaNameQuery } from "./convertMetaLoadSubsetOptions.js";
3
+ import { convertSalesforceMetaLinkTypes } from "./convertMetaLinkType.js";
6
4
  import { convertSalesforceMetaObjectType } from "./convertMetaObjectType.js";
5
+ import { QueryClient } from "@tanstack/query-core";
6
+ import { queryCollectionOptions } from "@tanstack/query-db-collection";
7
+ //#region src/meta/entityCollectionOptions.ts
7
8
  async function describeSObjects(client, names) {
8
- const describes = await Promise.all([...new Set(names)].map(async (name) => {
9
- try {
10
- return await client.describeSObject(name);
11
- }
12
- catch {
13
- return undefined;
14
- }
15
- }));
16
- return describes.filter((describe) => Boolean(describe));
9
+ return (await Promise.all([...new Set(names)].map(async (name) => {
10
+ try {
11
+ return await client.describeSObject(name);
12
+ } catch {
13
+ return;
14
+ }
15
+ }))).filter((describe) => Boolean(describe));
17
16
  }
18
- export function objectTypeCollectionOptions(opts) {
19
- return queryCollectionOptions({
20
- queryClient: new QueryClient(),
21
- getKey: (row) => row.name,
22
- queryKey: [
23
- "salesforce",
24
- "ontology",
25
- "objectTypes",
26
- opts.objectTypeNames ?? "all",
27
- ],
28
- syncMode: "on-demand",
29
- queryFn: async (ctx) => {
30
- const query = convertMetaNameQuery(ctx.meta?.loadSubsetOptions);
31
- if (query.type === "getBatch") {
32
- const allowlist = opts.objectTypeNames
33
- ? new Set(opts.objectTypeNames)
34
- : undefined;
35
- const names = allowlist
36
- ? query.names.filter((name) => allowlist.has(name))
37
- : query.names;
38
- return (await describeSObjects(opts.client, names)).map(convertSalesforceMetaObjectType);
39
- }
40
- const global = await opts.client.describeGlobal();
41
- const allowlist = opts.objectTypeNames
42
- ? new Set(opts.objectTypeNames)
43
- : undefined;
44
- return global.sobjects
45
- .filter((sObject) => sObject.queryable &&
46
- (!allowlist ||
47
- allowlist.has(sObject.name)))
48
- .map((sObject) => ({
49
- id: salesforceObjectTypeId(sObject.name),
50
- name: sObject.name,
51
- displayName: sObject.label,
52
- pluralDisplayName: sObject.labelPlural,
53
- primaryKey: "Id",
54
- properties: [],
55
- }));
56
- },
57
- });
17
+ function objectTypeCollectionOptions(opts) {
18
+ return queryCollectionOptions({
19
+ queryClient: new QueryClient(),
20
+ getKey: (row) => row.name,
21
+ queryKey: [
22
+ "salesforce",
23
+ "ontology",
24
+ "objectTypes",
25
+ opts.objectTypeNames ?? "all"
26
+ ],
27
+ syncMode: "on-demand",
28
+ queryFn: async (ctx) => {
29
+ const query = convertMetaNameQuery(ctx.meta?.loadSubsetOptions);
30
+ if (query.type === "getBatch") {
31
+ const allowlist = opts.objectTypeNames ? new Set(opts.objectTypeNames) : void 0;
32
+ const names = allowlist ? query.names.filter((name) => allowlist.has(name)) : query.names;
33
+ return (await describeSObjects(opts.client, names)).map(convertSalesforceMetaObjectType);
34
+ }
35
+ const global = await opts.client.describeGlobal();
36
+ const allowlist = opts.objectTypeNames ? new Set(opts.objectTypeNames) : void 0;
37
+ return global.sobjects.filter((sObject) => sObject.queryable && (!allowlist || allowlist.has(sObject.name))).map((sObject) => ({
38
+ id: salesforceObjectTypeId(sObject.name),
39
+ name: sObject.name,
40
+ displayName: sObject.label,
41
+ pluralDisplayName: sObject.labelPlural,
42
+ primaryKey: "Id",
43
+ properties: []
44
+ }));
45
+ }
46
+ });
58
47
  }
59
- export function valueTypeCollectionOptions() {
60
- return queryCollectionOptions({
61
- queryClient: new QueryClient(),
62
- getKey: (row) => row.name,
63
- queryKey: [
64
- "salesforce",
65
- "ontology",
66
- "valueTypes",
67
- ],
68
- syncMode: "on-demand",
69
- queryFn: () => Promise.resolve([]),
70
- });
48
+ function valueTypeCollectionOptions() {
49
+ return queryCollectionOptions({
50
+ queryClient: new QueryClient(),
51
+ getKey: (row) => row.name,
52
+ queryKey: [
53
+ "salesforce",
54
+ "ontology",
55
+ "valueTypes"
56
+ ],
57
+ syncMode: "on-demand",
58
+ queryFn: () => Promise.resolve([])
59
+ });
71
60
  }
72
- export function linkTypeCollectionOptions(opts) {
73
- return queryCollectionOptions({
74
- queryClient: new QueryClient(),
75
- getKey: (row) => row.id,
76
- queryKey: [
77
- "salesforce",
78
- "ontology",
79
- "linkTypes",
80
- opts.objectTypeNames ?? [],
81
- ],
82
- syncMode: "on-demand",
83
- queryFn: async () => {
84
- if (!opts.objectTypeNames?.length)
85
- return [];
86
- return convertSalesforceMetaLinkTypes(await describeSObjects(opts.client, opts.objectTypeNames));
87
- },
88
- });
61
+ function linkTypeCollectionOptions(opts) {
62
+ return queryCollectionOptions({
63
+ queryClient: new QueryClient(),
64
+ getKey: (row) => row.id,
65
+ queryKey: [
66
+ "salesforce",
67
+ "ontology",
68
+ "linkTypes",
69
+ opts.objectTypeNames ?? []
70
+ ],
71
+ syncMode: "on-demand",
72
+ queryFn: async () => {
73
+ if (!opts.objectTypeNames?.length) return [];
74
+ return convertSalesforceMetaLinkTypes(await describeSObjects(opts.client, opts.objectTypeNames));
75
+ }
76
+ });
89
77
  }
78
+ //#endregion
79
+ export { linkTypeCollectionOptions, objectTypeCollectionOptions, valueTypeCollectionOptions };
80
+
90
81
  //# sourceMappingURL=entityCollectionOptions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"entityCollectionOptions.js","sourceRoot":"","sources":["../../src/meta/entityCollectionOptions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"entityCollectionOptions.js","names":[],"sources":["../../src/meta/entityCollectionOptions.ts"],"sourcesContent":["import { QueryClient } from \"@tanstack/query-core\";\nimport { queryCollectionOptions } from \"@tanstack/query-db-collection\";\nimport { salesforceObjectTypeId } from \"../utils/ids.js\";\nimport { convertSalesforceMetaLinkTypes } from \"./convertMetaLinkType.js\";\nimport { convertMetaNameQuery } from \"./convertMetaLoadSubsetOptions.js\";\nimport { convertSalesforceMetaObjectType } from \"./convertMetaObjectType.js\";\nimport type { MetaObjectType, OntologyCollectionOptions } from \"@party-stack/ontology\";\nimport type { SalesforceClient, SalesforceSObjectDescribe } from \"@party-stack/salesforce-client\";\n\nexport interface MetaEntityStoreOpts {\n client: SalesforceClient;\n /**\n * Optional allowlist of sObject API names. When omitted, all queryable\n * sObjects from the global describe are loaded.\n */\n objectTypeNames?: string[];\n}\n\nasync function describeSObjects(\n client: SalesforceClient,\n names: readonly string[]\n): Promise<SalesforceSObjectDescribe[]> {\n const describes = await Promise.all(\n [...new Set(names)].map(async (name) => {\n try {\n return await client.describeSObject(name);\n } catch {\n return undefined;\n }\n })\n );\n return describes.filter((describe): describe is SalesforceSObjectDescribe => Boolean(describe));\n}\n\nexport function objectTypeCollectionOptions(opts: MetaEntityStoreOpts): OntologyCollectionOptions {\n return queryCollectionOptions<MetaObjectType>({\n queryClient: new QueryClient(),\n getKey: (row) => row.name,\n queryKey: [\"salesforce\", \"ontology\", \"objectTypes\", opts.objectTypeNames ?? \"all\"],\n syncMode: \"on-demand\",\n queryFn: async (ctx) => {\n const query = convertMetaNameQuery(ctx.meta?.loadSubsetOptions);\n if (query.type === \"getBatch\") {\n const allowlist = opts.objectTypeNames ? new Set(opts.objectTypeNames) : undefined;\n const names = allowlist ? query.names.filter((name) => allowlist.has(name)) : query.names;\n return (await describeSObjects(opts.client, names)).map(convertSalesforceMetaObjectType);\n }\n const global = await opts.client.describeGlobal();\n const allowlist = opts.objectTypeNames ? new Set(opts.objectTypeNames) : undefined;\n return global.sobjects\n .filter((sObject) => sObject.queryable && (!allowlist || allowlist.has(sObject.name)))\n .map((sObject): MetaObjectType => ({\n id: salesforceObjectTypeId(sObject.name),\n name: sObject.name,\n displayName: sObject.label,\n pluralDisplayName: sObject.labelPlural,\n primaryKey: \"Id\",\n properties: [],\n }));\n },\n }) as unknown as OntologyCollectionOptions;\n}\n\nexport function valueTypeCollectionOptions(): OntologyCollectionOptions {\n return queryCollectionOptions({\n queryClient: new QueryClient(),\n getKey: (row: { name: string }) => row.name,\n queryKey: [\"salesforce\", \"ontology\", \"valueTypes\"],\n syncMode: \"on-demand\",\n queryFn: () => Promise.resolve([]),\n }) as unknown as OntologyCollectionOptions;\n}\n\nexport function linkTypeCollectionOptions(opts: MetaEntityStoreOpts): OntologyCollectionOptions {\n return queryCollectionOptions({\n queryClient: new QueryClient(),\n getKey: (row: { id: string }) => row.id,\n queryKey: [\"salesforce\", \"ontology\", \"linkTypes\", opts.objectTypeNames ?? []],\n syncMode: \"on-demand\",\n queryFn: async () => {\n if (!opts.objectTypeNames?.length) return [];\n return convertSalesforceMetaLinkTypes(await describeSObjects(opts.client, opts.objectTypeNames));\n },\n }) as unknown as OntologyCollectionOptions;\n}\n"],"mappings":";;;;;;;AAkBA,eAAe,iBACX,QACA,OACoC;CAUpC,QAAO,MATiB,QAAQ,IAC5B,CAAC,GAAG,IAAI,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,OAAO,SAAS;EACpC,IAAI;GACA,OAAO,MAAM,OAAO,gBAAgB,IAAI;EAC5C,QAAQ;GACJ;EACJ;CACJ,CAAC,CACL,EAAA,CACiB,QAAQ,aAAoD,QAAQ,QAAQ,CAAC;AAClG;AAEA,SAAgB,4BAA4B,MAAsD;CAC9F,OAAO,uBAAuC;EAC1C,aAAa,IAAI,YAAY;EAC7B,SAAS,QAAQ,IAAI;EACrB,UAAU;GAAC;GAAc;GAAY;GAAe,KAAK,mBAAmB;EAAK;EACjF,UAAU;EACV,SAAS,OAAO,QAAQ;GACpB,MAAM,QAAQ,qBAAqB,IAAI,MAAM,iBAAiB;GAC9D,IAAI,MAAM,SAAS,YAAY;IAC3B,MAAM,YAAY,KAAK,kBAAkB,IAAI,IAAI,KAAK,eAAe,IAAI,KAAA;IACzE,MAAM,QAAQ,YAAY,MAAM,MAAM,QAAQ,SAAS,UAAU,IAAI,IAAI,CAAC,IAAI,MAAM;IACpF,QAAQ,MAAM,iBAAiB,KAAK,QAAQ,KAAK,EAAA,CAAG,IAAI,+BAA+B;GAC3F;GACA,MAAM,SAAS,MAAM,KAAK,OAAO,eAAe;GAChD,MAAM,YAAY,KAAK,kBAAkB,IAAI,IAAI,KAAK,eAAe,IAAI,KAAA;GACzE,OAAO,OAAO,SACT,QAAQ,YAAY,QAAQ,cAAc,CAAC,aAAa,UAAU,IAAI,QAAQ,IAAI,EAAE,CAAC,CACrF,KAAK,aAA6B;IAC/B,IAAI,uBAAuB,QAAQ,IAAI;IACvC,MAAM,QAAQ;IACd,aAAa,QAAQ;IACrB,mBAAmB,QAAQ;IAC3B,YAAY;IACZ,YAAY,CAAC;GACjB,EAAE;EACV;CACJ,CAAC;AACL;AAEA,SAAgB,6BAAwD;CACpE,OAAO,uBAAuB;EAC1B,aAAa,IAAI,YAAY;EAC7B,SAAS,QAA0B,IAAI;EACvC,UAAU;GAAC;GAAc;GAAY;EAAY;EACjD,UAAU;EACV,eAAe,QAAQ,QAAQ,CAAC,CAAC;CACrC,CAAC;AACL;AAEA,SAAgB,0BAA0B,MAAsD;CAC5F,OAAO,uBAAuB;EAC1B,aAAa,IAAI,YAAY;EAC7B,SAAS,QAAwB,IAAI;EACrC,UAAU;GAAC;GAAc;GAAY;GAAa,KAAK,mBAAmB,CAAC;EAAC;EAC5E,UAAU;EACV,SAAS,YAAY;GACjB,IAAI,CAAC,KAAK,iBAAiB,QAAQ,OAAO,CAAC;GAC3C,OAAO,+BAA+B,MAAM,iBAAiB,KAAK,QAAQ,KAAK,eAAe,CAAC;EACnG;CACJ,CAAC;AACL"}
@@ -1,7 +1,7 @@
1
- export * from "./createSalesforceMetaOntologyBackendAdapter.js";
2
- export * from "./convertMetaActionType.js";
3
- export * from "./convertMetaObjectType.js";
4
- export * from "./convertMetaLinkType.js";
5
- export * from "./entityCollectionOptions.js";
6
- export * from "./actionTypeCollectionOptions.js";
7
- //# sourceMappingURL=index.d.ts.map
1
+ import { ActionTypeCollectionOpts, actionTypeCollectionOptions } from "./actionTypeCollectionOptions.js";
2
+ import { convertSalesforceMetaActionType, convertSalesforceMetaStandardActionType } from "./convertMetaActionType.js";
3
+ import { convertSalesforceMetaLinkTypes } from "./convertMetaLinkType.js";
4
+ import { convertSalesforceMetaObjectType } from "./convertMetaObjectType.js";
5
+ import { CreateSalesforceMetaOntologyBackendAdapterOpts, createSalesforceMetaOntologyBackendAdapter } from "./createSalesforceMetaOntologyBackendAdapter.js";
6
+ import { MetaEntityStoreOpts, linkTypeCollectionOptions, objectTypeCollectionOptions, valueTypeCollectionOptions } from "./entityCollectionOptions.js";
7
+ export { ActionTypeCollectionOpts, CreateSalesforceMetaOntologyBackendAdapterOpts, MetaEntityStoreOpts, actionTypeCollectionOptions, convertSalesforceMetaActionType, convertSalesforceMetaLinkTypes, convertSalesforceMetaObjectType, convertSalesforceMetaStandardActionType, createSalesforceMetaOntologyBackendAdapter, linkTypeCollectionOptions, objectTypeCollectionOptions, valueTypeCollectionOptions };
package/lib/meta/index.js CHANGED
@@ -1,7 +1,7 @@
1
- export * from "./createSalesforceMetaOntologyBackendAdapter.js";
2
- export * from "./convertMetaActionType.js";
3
- export * from "./convertMetaObjectType.js";
4
- export * from "./convertMetaLinkType.js";
5
- export * from "./entityCollectionOptions.js";
6
- export * from "./actionTypeCollectionOptions.js";
7
- //# sourceMappingURL=index.js.map
1
+ import { convertSalesforceMetaActionType, convertSalesforceMetaStandardActionType } from "./convertMetaActionType.js";
2
+ import { actionTypeCollectionOptions } from "./actionTypeCollectionOptions.js";
3
+ import { convertSalesforceMetaLinkTypes } from "./convertMetaLinkType.js";
4
+ import { convertSalesforceMetaObjectType } from "./convertMetaObjectType.js";
5
+ import { linkTypeCollectionOptions, objectTypeCollectionOptions, valueTypeCollectionOptions } from "./entityCollectionOptions.js";
6
+ import { createSalesforceMetaOntologyBackendAdapter } from "./createSalesforceMetaOntologyBackendAdapter.js";
7
+ export { actionTypeCollectionOptions, convertSalesforceMetaActionType, convertSalesforceMetaLinkTypes, convertSalesforceMetaObjectType, convertSalesforceMetaStandardActionType, createSalesforceMetaOntologyBackendAdapter, linkTypeCollectionOptions, objectTypeCollectionOptions, valueTypeCollectionOptions };
@@ -1,9 +1,11 @@
1
+ import { SalesforceClient } from "@party-stack/salesforce-client";
2
+ import { OntologyCollectionOptions } from "@party-stack/ontology";
1
3
  import { QueryClient } from "@tanstack/query-core";
2
- import type { OntologyCollectionOptions } from "@party-stack/ontology";
3
- import type { SalesforceClient } from "@party-stack/salesforce-client";
4
+ //#region src/meta/queryFunctionTypeCollectionOptions.d.ts
4
5
  export declare function queryFunctionTypeCollectionOptions(opts: {
5
- client: SalesforceClient;
6
- standardQueryFunctionTypeNames?: string[];
7
- queryClient?: QueryClient;
6
+ client: SalesforceClient;
7
+ standardQueryFunctionTypeNames?: string[];
8
+ queryClient?: QueryClient;
8
9
  }): OntologyCollectionOptions;
10
+ //#endregion
9
11
  //# sourceMappingURL=queryFunctionTypeCollectionOptions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"queryFunctionTypeCollectionOptions.d.ts","sourceRoot":"","sources":["../../src/meta/queryFunctionTypeCollectionOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnD,OAAO,KAAK,EAAE,yBAAyB,EAAwB,MAAM,uBAAuB,CAAC;AAC7F,OAAO,KAAK,EACR,gBAAgB,EAInB,MAAM,gCAAgC,CAAC;AAuCxC,wBAAgB,kCAAkC,CAAC,IAAI,EAAE;IACrD,MAAM,EAAE,gBAAgB,CAAC;IACzB,8BAA8B,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1C,WAAW,CAAC,EAAE,WAAW,CAAC;CAC7B,GAAG,yBAAyB,CA8I5B"}
1
+ {"version":3,"file":"queryFunctionTypeCollectionOptions.d.ts","names":[],"sources":["../../src/meta/queryFunctionTypeCollectionOptions.ts"],"mappings":";;;;wBAmCgB,mCAAmC;EAC/C,QAAQ;EACR;EACA,cAAc;IACd"}
@@ -1,97 +1,59 @@
1
- import { QueryClient } from "@tanstack/query-core";
2
- import { queryCollectionOptions } from "@tanstack/query-db-collection";
3
1
  import { classifySalesforceStandardAction } from "../standardActions.js";
4
- import { convertMetaNameQuery, matchesMetaNameQuery, } from "./convertMetaLoadSubsetOptions.js";
2
+ import { convertMetaNameQuery, matchesMetaNameQuery } from "./convertMetaLoadSubsetOptions.js";
5
3
  import { convertSalesforceMetaStandardQueryFunctionType } from "./convertMetaQueryFunctionType.js";
4
+ import { QueryClient } from "@tanstack/query-core";
5
+ import { queryCollectionOptions } from "@tanstack/query-db-collection";
6
+ //#region src/meta/queryFunctionTypeCollectionOptions.ts
6
7
  async function describeStandardActions(client, names) {
7
- if (typeof client.describeStandardActions ===
8
- "function") {
9
- try {
10
- return await client.describeStandardActions(names);
11
- }
12
- catch {
13
- // Fall through when Composite API access is unavailable.
14
- }
15
- }
16
- return Promise.all(names.map(async (name) => {
17
- try {
18
- return await client.describeStandardAction(name);
19
- }
20
- catch {
21
- return undefined;
22
- }
23
- }));
8
+ if (typeof client.describeStandardActions === "function") try {
9
+ return await client.describeStandardActions(names);
10
+ } catch {}
11
+ return Promise.all(names.map(async (name) => {
12
+ try {
13
+ return await client.describeStandardAction(name);
14
+ } catch {
15
+ return;
16
+ }
17
+ }));
24
18
  }
25
- export function queryFunctionTypeCollectionOptions(opts) {
26
- return queryCollectionOptions({
27
- queryClient: opts.queryClient ?? new QueryClient(),
28
- getKey: (row) => row.name,
29
- queryKey: [
30
- "salesforce",
31
- "ontology",
32
- "queryFunctionTypes",
33
- opts.standardQueryFunctionTypeNames ?? [],
34
- ],
35
- syncMode: "on-demand",
36
- queryFn: async (ctx) => {
37
- const query = convertMetaNameQuery(ctx.meta?.loadSubsetOptions);
38
- let summaries;
39
- if (query.type !== "getBatch" &&
40
- !opts.standardQueryFunctionTypeNames) {
41
- const response = await opts.client.listStandardActions();
42
- summaries =
43
- Array.isArray(response)
44
- ? response
45
- : Array.isArray(response.actions)
46
- ? response.actions
47
- : Object.keys(response).map((name) => ({ name }));
48
- }
49
- const requestedNames = query.type === "getBatch"
50
- ? new Set(query.names)
51
- : undefined;
52
- const candidates = (opts.standardQueryFunctionTypeNames ??
53
- (requestedNames
54
- ? [...requestedNames]
55
- : summaries?.map((summary) => summary.name) ?? []))
56
- .filter((name) => (!requestedNames ||
57
- requestedNames.has(name)) &&
58
- (opts.standardQueryFunctionTypeNames !==
59
- undefined ||
60
- classifySalesforceStandardAction(name) ===
61
- "queryFunction"))
62
- .map((name) => ({
63
- name,
64
- displayName: summaries?.find((summary) => summary.name === name)?.label ?? name,
65
- }))
66
- .filter((candidate) => matchesMetaNameQuery(query, candidate));
67
- const offset = Math.max(0, Math.trunc(ctx.meta?.loadSubsetOptions
68
- ?.offset ?? 0));
69
- const limit = ctx.meta?.loadSubsetOptions?.limit;
70
- const names = (requestedNames
71
- ? candidates
72
- : candidates.slice(offset, limit === undefined
73
- ? undefined
74
- : offset +
75
- Math.max(0, Math.trunc(limit)))).map((candidate) => candidate.name);
76
- const describes = (await describeStandardActions(opts.client, names)).filter((describe) => Boolean(describe));
77
- const sObjectNames = new Set();
78
- for (const describe of describes) {
79
- for (const parameter of [
80
- ...(describe.inputs ?? []),
81
- ...(describe.outputs ?? []),
82
- ]) {
83
- const name = parameter.sobjectType ??
84
- parameter.sObjectType;
85
- if (name)
86
- sObjectNames.add(name);
87
- }
88
- }
89
- const sObjectDescribes = new Map(await Promise.all([...sObjectNames].map(async (name) => [
90
- name,
91
- await opts.client.describeSObject(name),
92
- ])));
93
- return describes.map((describe) => convertSalesforceMetaStandardQueryFunctionType(describe, sObjectDescribes));
94
- },
95
- });
19
+ function queryFunctionTypeCollectionOptions(opts) {
20
+ return queryCollectionOptions({
21
+ queryClient: opts.queryClient ?? new QueryClient(),
22
+ getKey: (row) => row.name,
23
+ queryKey: [
24
+ "salesforce",
25
+ "ontology",
26
+ "queryFunctionTypes",
27
+ opts.standardQueryFunctionTypeNames ?? []
28
+ ],
29
+ syncMode: "on-demand",
30
+ queryFn: async (ctx) => {
31
+ const query = convertMetaNameQuery(ctx.meta?.loadSubsetOptions);
32
+ let summaries;
33
+ if (query.type !== "getBatch" && !opts.standardQueryFunctionTypeNames) {
34
+ const response = await opts.client.listStandardActions();
35
+ summaries = Array.isArray(response) ? response : Array.isArray(response.actions) ? response.actions : Object.keys(response).map((name) => ({ name }));
36
+ }
37
+ const requestedNames = query.type === "getBatch" ? new Set(query.names) : void 0;
38
+ const candidates = (opts.standardQueryFunctionTypeNames ?? (requestedNames ? [...requestedNames] : summaries?.map((summary) => summary.name) ?? [])).filter((name) => (!requestedNames || requestedNames.has(name)) && (opts.standardQueryFunctionTypeNames !== void 0 || classifySalesforceStandardAction(name) === "queryFunction")).map((name) => ({
39
+ name,
40
+ displayName: summaries?.find((summary) => summary.name === name)?.label ?? name
41
+ })).filter((candidate) => matchesMetaNameQuery(query, candidate));
42
+ const offset = Math.max(0, Math.trunc(ctx.meta?.loadSubsetOptions?.offset ?? 0));
43
+ const limit = ctx.meta?.loadSubsetOptions?.limit;
44
+ const names = (requestedNames ? candidates : candidates.slice(offset, limit === void 0 ? void 0 : offset + Math.max(0, Math.trunc(limit)))).map((candidate) => candidate.name);
45
+ const describes = (await describeStandardActions(opts.client, names)).filter((describe) => Boolean(describe));
46
+ const sObjectNames = /* @__PURE__ */ new Set();
47
+ for (const describe of describes) for (const parameter of [...describe.inputs ?? [], ...describe.outputs ?? []]) {
48
+ const name = parameter.sobjectType ?? parameter.sObjectType;
49
+ if (name) sObjectNames.add(name);
50
+ }
51
+ const sObjectDescribes = new Map(await Promise.all([...sObjectNames].map(async (name) => [name, await opts.client.describeSObject(name)])));
52
+ return describes.map((describe) => convertSalesforceMetaStandardQueryFunctionType(describe, sObjectDescribes));
53
+ }
54
+ });
96
55
  }
56
+ //#endregion
57
+ export { queryFunctionTypeCollectionOptions };
58
+
97
59
  //# sourceMappingURL=queryFunctionTypeCollectionOptions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"queryFunctionTypeCollectionOptions.js","sourceRoot":"","sources":["../../src/meta/queryFunctionTypeCollectionOptions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"queryFunctionTypeCollectionOptions.js","names":[],"sources":["../../src/meta/queryFunctionTypeCollectionOptions.ts"],"sourcesContent":["import { QueryClient } from \"@tanstack/query-core\";\nimport { queryCollectionOptions } from \"@tanstack/query-db-collection\";\nimport { classifySalesforceStandardAction } from \"../standardActions.js\";\nimport { convertMetaNameQuery, matchesMetaNameQuery } from \"./convertMetaLoadSubsetOptions.js\";\nimport { convertSalesforceMetaStandardQueryFunctionType } from \"./convertMetaQueryFunctionType.js\";\nimport type { OntologyCollectionOptions, QueryFunctionTypeDef } from \"@party-stack/ontology\";\nimport type {\n SalesforceClient,\n SalesforceInvocableActionDescribe,\n SalesforceInvocableActionSummary,\n SalesforceSObjectDescribe,\n} from \"@party-stack/salesforce-client\";\n\nasync function describeStandardActions(\n client: SalesforceClient,\n names: readonly string[]\n): Promise<Array<SalesforceInvocableActionDescribe | undefined>> {\n if (typeof client.describeStandardActions === \"function\") {\n try {\n return await client.describeStandardActions(names);\n } catch {\n // Fall through when Composite API access is unavailable.\n }\n }\n return Promise.all(\n names.map(async (name) => {\n try {\n return await client.describeStandardAction(name);\n } catch {\n return undefined;\n }\n })\n );\n}\n\nexport function queryFunctionTypeCollectionOptions(opts: {\n client: SalesforceClient;\n standardQueryFunctionTypeNames?: string[];\n queryClient?: QueryClient;\n}): OntologyCollectionOptions {\n return queryCollectionOptions<QueryFunctionTypeDef>({\n queryClient: opts.queryClient ?? new QueryClient(),\n getKey: (row) => row.name,\n queryKey: [\"salesforce\", \"ontology\", \"queryFunctionTypes\", opts.standardQueryFunctionTypeNames ?? []],\n syncMode: \"on-demand\",\n queryFn: async (ctx) => {\n const query = convertMetaNameQuery(ctx.meta?.loadSubsetOptions);\n let summaries: SalesforceInvocableActionSummary[] | undefined;\n if (query.type !== \"getBatch\" && !opts.standardQueryFunctionTypeNames) {\n const response = await opts.client.listStandardActions();\n summaries = Array.isArray(response)\n ? response\n : Array.isArray(response.actions)\n ? response.actions\n : Object.keys(response).map((name) => ({ name }));\n }\n const requestedNames = query.type === \"getBatch\" ? new Set(query.names) : undefined;\n const candidates = (\n opts.standardQueryFunctionTypeNames ??\n (requestedNames ? [...requestedNames] : (summaries?.map((summary) => summary.name) ?? []))\n )\n .filter(\n (name) =>\n (!requestedNames || requestedNames.has(name)) &&\n (opts.standardQueryFunctionTypeNames !== undefined ||\n classifySalesforceStandardAction(name) === \"queryFunction\")\n )\n .map((name) => ({\n name,\n displayName: summaries?.find((summary) => summary.name === name)?.label ?? name,\n }))\n .filter((candidate) => matchesMetaNameQuery(query, candidate));\n const offset = Math.max(0, Math.trunc(ctx.meta?.loadSubsetOptions?.offset ?? 0));\n const limit = ctx.meta?.loadSubsetOptions?.limit;\n const names = (\n requestedNames\n ? candidates\n : candidates.slice(\n offset,\n limit === undefined ? undefined : offset + Math.max(0, Math.trunc(limit))\n )\n ).map((candidate) => candidate.name);\n const describes = (await describeStandardActions(opts.client, names)).filter(\n (describe): describe is SalesforceInvocableActionDescribe => Boolean(describe)\n );\n const sObjectNames = new Set<string>();\n for (const describe of describes) {\n for (const parameter of [...(describe.inputs ?? []), ...(describe.outputs ?? [])]) {\n const name = parameter.sobjectType ?? parameter.sObjectType;\n if (name) sObjectNames.add(name);\n }\n }\n const sObjectDescribes = new Map<string, SalesforceSObjectDescribe>(\n await Promise.all(\n [...sObjectNames].map(\n async (name) => [name, await opts.client.describeSObject(name)] as const\n )\n )\n );\n return describes.map((describe) =>\n convertSalesforceMetaStandardQueryFunctionType(describe, sObjectDescribes)\n );\n },\n }) as unknown as OntologyCollectionOptions;\n}\n"],"mappings":";;;;;;AAaA,eAAe,wBACX,QACA,OAC6D;CAC7D,IAAI,OAAO,OAAO,4BAA4B,YAC1C,IAAI;EACA,OAAO,MAAM,OAAO,wBAAwB,KAAK;CACrD,QAAQ,CAER;CAEJ,OAAO,QAAQ,IACX,MAAM,IAAI,OAAO,SAAS;EACtB,IAAI;GACA,OAAO,MAAM,OAAO,uBAAuB,IAAI;EACnD,QAAQ;GACJ;EACJ;CACJ,CAAC,CACL;AACJ;AAEA,SAAgB,mCAAmC,MAIrB;CAC1B,OAAO,uBAA6C;EAChD,aAAa,KAAK,eAAe,IAAI,YAAY;EACjD,SAAS,QAAQ,IAAI;EACrB,UAAU;GAAC;GAAc;GAAY;GAAsB,KAAK,kCAAkC,CAAC;EAAC;EACpG,UAAU;EACV,SAAS,OAAO,QAAQ;GACpB,MAAM,QAAQ,qBAAqB,IAAI,MAAM,iBAAiB;GAC9D,IAAI;GACJ,IAAI,MAAM,SAAS,cAAc,CAAC,KAAK,gCAAgC;IACnE,MAAM,WAAW,MAAM,KAAK,OAAO,oBAAoB;IACvD,YAAY,MAAM,QAAQ,QAAQ,IAC5B,WACA,MAAM,QAAQ,SAAS,OAAO,IAC5B,SAAS,UACT,OAAO,KAAK,QAAQ,CAAC,CAAC,KAAK,UAAU,EAAE,KAAK,EAAE;GAC1D;GACA,MAAM,iBAAiB,MAAM,SAAS,aAAa,IAAI,IAAI,MAAM,KAAK,IAAI,KAAA;GAC1E,MAAM,cACF,KAAK,mCACJ,iBAAiB,CAAC,GAAG,cAAc,IAAK,WAAW,KAAK,YAAY,QAAQ,IAAI,KAAK,CAAC,GAAA,CAEtF,QACI,UACI,CAAC,kBAAkB,eAAe,IAAI,IAAI,OAC1C,KAAK,mCAAmC,KAAA,KACrC,iCAAiC,IAAI,MAAM,gBACvD,CAAC,CACA,KAAK,UAAU;IACZ;IACA,aAAa,WAAW,MAAM,YAAY,QAAQ,SAAS,IAAI,CAAC,EAAE,SAAS;GAC/E,EAAE,CAAC,CACF,QAAQ,cAAc,qBAAqB,OAAO,SAAS,CAAC;GACjE,MAAM,SAAS,KAAK,IAAI,GAAG,KAAK,MAAM,IAAI,MAAM,mBAAmB,UAAU,CAAC,CAAC;GAC/E,MAAM,QAAQ,IAAI,MAAM,mBAAmB;GAC3C,MAAM,SACF,iBACM,aACA,WAAW,MACP,QACA,UAAU,KAAA,IAAY,KAAA,IAAY,SAAS,KAAK,IAAI,GAAG,KAAK,MAAM,KAAK,CAAC,CAC5E,EAAA,CACR,KAAK,cAAc,UAAU,IAAI;GACnC,MAAM,aAAa,MAAM,wBAAwB,KAAK,QAAQ,KAAK,EAAA,CAAG,QACjE,aAA4D,QAAQ,QAAQ,CACjF;GACA,MAAM,+BAAe,IAAI,IAAY;GACrC,KAAK,MAAM,YAAY,WACnB,KAAK,MAAM,aAAa,CAAC,GAAI,SAAS,UAAU,CAAC,GAAI,GAAI,SAAS,WAAW,CAAC,CAAE,GAAG;IAC/E,MAAM,OAAO,UAAU,eAAe,UAAU;IAChD,IAAI,MAAM,aAAa,IAAI,IAAI;GACnC;GAEJ,MAAM,mBAAmB,IAAI,IACzB,MAAM,QAAQ,IACV,CAAC,GAAG,YAAY,CAAC,CAAC,IACd,OAAO,SAAS,CAAC,MAAM,MAAM,KAAK,OAAO,gBAAgB,IAAI,CAAC,CAClE,CACJ,CACJ;GACA,OAAO,UAAU,KAAK,aAClB,+CAA+C,UAAU,gBAAgB,CAC7E;EACJ;CACJ,CAAC;AACL"}
@@ -1,4 +1,6 @@
1
- import type { MetaActionType } from "@party-stack/ontology";
2
- import type { SalesforceSObjectDescribe } from "@party-stack/salesforce-client";
1
+ import { SalesforceSObjectDescribe } from "@party-stack/salesforce-client";
2
+ import { MetaActionType } from "@party-stack/ontology";
3
+ //#region src/meta/synthesizeCrudActionTypes.d.ts
3
4
  export declare function synthesizeSalesforceCrudActionTypes(describe: SalesforceSObjectDescribe): MetaActionType[];
5
+ //#endregion
4
6
  //# sourceMappingURL=synthesizeCrudActionTypes.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"synthesizeCrudActionTypes.d.ts","sourceRoot":"","sources":["../../src/meta/synthesizeCrudActionTypes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,cAAc,EAEjB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAER,yBAAyB,EAC5B,MAAM,gCAAgC,CAAC;AA2HxC,wBAAgB,mCAAmC,CAC/C,QAAQ,EAAE,yBAAyB,GACpC,cAAc,EAAE,CAqDlB"}
1
+ {"version":3,"file":"synthesizeCrudActionTypes.d.ts","names":[],"sources":["../../src/meta/synthesizeCrudActionTypes.ts"],"mappings":";;;wBAiGgB,oCAAoC,UAAU,4BAA4B"}