@party-stack/salesforce-ontology 0.1.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.
- package/LICENSE +21 -0
- package/README.md +114 -0
- package/lib/adapter/convertLoadSubsetOptions.d.ts +18 -0
- package/lib/adapter/convertLoadSubsetOptions.d.ts.map +1 -0
- package/lib/adapter/convertLoadSubsetOptions.js +144 -0
- package/lib/adapter/convertLoadSubsetOptions.js.map +1 -0
- package/lib/adapter/convertLoadSubsetOptions.test.d.ts +2 -0
- package/lib/adapter/convertLoadSubsetOptions.test.d.ts.map +1 -0
- package/lib/adapter/convertLoadSubsetOptions.test.js +54 -0
- package/lib/adapter/convertLoadSubsetOptions.test.js.map +1 -0
- package/lib/adapter/createSalesforceOntologyBackendAdapter.d.ts +13 -0
- package/lib/adapter/createSalesforceOntologyBackendAdapter.d.ts.map +1 -0
- package/lib/adapter/createSalesforceOntologyBackendAdapter.js +90 -0
- package/lib/adapter/createSalesforceOntologyBackendAdapter.js.map +1 -0
- package/lib/adapter/createSalesforceOntologyBackendAdapter.test.d.ts +2 -0
- package/lib/adapter/createSalesforceOntologyBackendAdapter.test.d.ts.map +1 -0
- package/lib/adapter/createSalesforceOntologyBackendAdapter.test.js +142 -0
- package/lib/adapter/createSalesforceOntologyBackendAdapter.test.js.map +1 -0
- package/lib/adapter/index.d.ts +5 -0
- package/lib/adapter/index.d.ts.map +1 -0
- package/lib/adapter/index.js +5 -0
- package/lib/adapter/index.js.map +1 -0
- package/lib/adapter/objectCollectionOptions.d.ts +32 -0
- package/lib/adapter/objectCollectionOptions.d.ts.map +1 -0
- package/lib/adapter/objectCollectionOptions.js +139 -0
- package/lib/adapter/objectCollectionOptions.js.map +1 -0
- package/lib/adapter/salesforceCodec.d.ts +10 -0
- package/lib/adapter/salesforceCodec.d.ts.map +1 -0
- package/lib/adapter/salesforceCodec.js +201 -0
- package/lib/adapter/salesforceCodec.js.map +1 -0
- package/lib/adapter/salesforceCodec.test.d.ts +2 -0
- package/lib/adapter/salesforceCodec.test.d.ts.map +1 -0
- package/lib/adapter/salesforceCodec.test.js +57 -0
- package/lib/adapter/salesforceCodec.test.js.map +1 -0
- package/lib/config/index.d.ts +24 -0
- package/lib/config/index.d.ts.map +1 -0
- package/lib/config/index.js +178 -0
- package/lib/config/index.js.map +1 -0
- package/lib/config/index.test.d.ts +2 -0
- package/lib/config/index.test.d.ts.map +1 -0
- package/lib/config/index.test.js +139 -0
- package/lib/config/index.test.js.map +1 -0
- package/lib/connection.d.ts +33 -0
- package/lib/connection.d.ts.map +1 -0
- package/lib/connection.js +240 -0
- package/lib/connection.js.map +1 -0
- package/lib/connection.test.d.ts +2 -0
- package/lib/connection.test.d.ts.map +1 -0
- package/lib/connection.test.js +150 -0
- package/lib/connection.test.js.map +1 -0
- package/lib/index.d.ts +5 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +5 -0
- package/lib/index.js.map +1 -0
- package/lib/installation/createSalesforceBackendInstallation.d.ts +28 -0
- package/lib/installation/createSalesforceBackendInstallation.d.ts.map +1 -0
- package/lib/installation/createSalesforceBackendInstallation.js +77 -0
- package/lib/installation/createSalesforceBackendInstallation.js.map +1 -0
- package/lib/installation/createSalesforceBackendInstallation.test.d.ts +2 -0
- package/lib/installation/createSalesforceBackendInstallation.test.d.ts.map +1 -0
- package/lib/installation/createSalesforceBackendInstallation.test.js +34 -0
- package/lib/installation/createSalesforceBackendInstallation.test.js.map +1 -0
- package/lib/installation/index.d.ts +2 -0
- package/lib/installation/index.d.ts.map +1 -0
- package/lib/installation/index.js +2 -0
- package/lib/installation/index.js.map +1 -0
- package/lib/meta/actionTypeCollectionOptions.d.ts +10 -0
- package/lib/meta/actionTypeCollectionOptions.d.ts.map +1 -0
- package/lib/meta/actionTypeCollectionOptions.js +51 -0
- package/lib/meta/actionTypeCollectionOptions.js.map +1 -0
- package/lib/meta/convertMetaActionType.d.ts +12 -0
- package/lib/meta/convertMetaActionType.d.ts.map +1 -0
- package/lib/meta/convertMetaActionType.js +28 -0
- package/lib/meta/convertMetaActionType.js.map +1 -0
- package/lib/meta/convertMetaActionType.test.d.ts +2 -0
- package/lib/meta/convertMetaActionType.test.d.ts.map +1 -0
- package/lib/meta/convertMetaActionType.test.js +76 -0
- package/lib/meta/convertMetaActionType.test.js.map +1 -0
- package/lib/meta/convertMetaLinkType.d.ts +9 -0
- package/lib/meta/convertMetaLinkType.d.ts.map +1 -0
- package/lib/meta/convertMetaLinkType.js +55 -0
- package/lib/meta/convertMetaLinkType.js.map +1 -0
- package/lib/meta/convertMetaObjectType.d.ts +4 -0
- package/lib/meta/convertMetaObjectType.d.ts.map +1 -0
- package/lib/meta/convertMetaObjectType.js +45 -0
- package/lib/meta/convertMetaObjectType.js.map +1 -0
- package/lib/meta/convertMetaObjectType.test.d.ts +2 -0
- package/lib/meta/convertMetaObjectType.test.d.ts.map +1 -0
- package/lib/meta/convertMetaObjectType.test.js +179 -0
- package/lib/meta/convertMetaObjectType.test.js.map +1 -0
- package/lib/meta/convertMetaTypeDef.d.ts +13 -0
- package/lib/meta/convertMetaTypeDef.d.ts.map +1 -0
- package/lib/meta/convertMetaTypeDef.js +163 -0
- package/lib/meta/convertMetaTypeDef.js.map +1 -0
- package/lib/meta/createSalesforceMetaOntologyBackendAdapter.d.ts +14 -0
- package/lib/meta/createSalesforceMetaOntologyBackendAdapter.d.ts.map +1 -0
- package/lib/meta/createSalesforceMetaOntologyBackendAdapter.js +42 -0
- package/lib/meta/createSalesforceMetaOntologyBackendAdapter.js.map +1 -0
- package/lib/meta/entityCollectionOptions.d.ts +27 -0
- package/lib/meta/entityCollectionOptions.d.ts.map +1 -0
- package/lib/meta/entityCollectionOptions.js +80 -0
- package/lib/meta/entityCollectionOptions.js.map +1 -0
- package/lib/meta/index.d.ts +7 -0
- package/lib/meta/index.d.ts.map +1 -0
- package/lib/meta/index.js +7 -0
- package/lib/meta/index.js.map +1 -0
- package/lib/meta/queryFunctionTypeCollectionOptions.d.ts +7 -0
- package/lib/meta/queryFunctionTypeCollectionOptions.d.ts.map +1 -0
- package/lib/meta/queryFunctionTypeCollectionOptions.js +16 -0
- package/lib/meta/queryFunctionTypeCollectionOptions.js.map +1 -0
- package/lib/utils/AsyncIterable.d.ts +3 -0
- package/lib/utils/AsyncIterable.d.ts.map +1 -0
- package/lib/utils/AsyncIterable.js +26 -0
- package/lib/utils/AsyncIterable.js.map +1 -0
- package/lib/utils/ids.d.ts +10 -0
- package/lib/utils/ids.d.ts.map +1 -0
- package/lib/utils/ids.js +20 -0
- package/lib/utils/ids.js.map +1 -0
- package/package.json +55 -0
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { createCollection, eq, liveQueryCollectionOptions, Query, } from "@tanstack/db";
|
|
2
|
+
import { QueryClient } from "@tanstack/query-core";
|
|
3
|
+
import { queryCollectionOptions } from "@tanstack/query-db-collection";
|
|
4
|
+
import { convertSalesforceMetaLinkTypes } from "./convertMetaLinkType.js";
|
|
5
|
+
import { convertSalesforceMetaObjectType } from "./convertMetaObjectType.js";
|
|
6
|
+
export function createMetaEntityCollection(opts) {
|
|
7
|
+
return createCollection(queryCollectionOptions({
|
|
8
|
+
queryClient: new QueryClient(),
|
|
9
|
+
getKey: (row) => {
|
|
10
|
+
switch (row.entityType) {
|
|
11
|
+
case "ObjectType":
|
|
12
|
+
case "ValueType":
|
|
13
|
+
return `${row.entityType}:${row.entity.name}`;
|
|
14
|
+
case "LinkType":
|
|
15
|
+
return `${row.entityType}:${row.entity.id}`;
|
|
16
|
+
}
|
|
17
|
+
},
|
|
18
|
+
queryKey: ["salesforce", "ontology", "metadata"],
|
|
19
|
+
syncMode: "eager",
|
|
20
|
+
queryFn: async () => {
|
|
21
|
+
const loaded = await loadSalesforceMetaOntology(opts.client, opts.objectTypeNames);
|
|
22
|
+
return [
|
|
23
|
+
...loaded.objectTypes.map((entity) => ({
|
|
24
|
+
entityType: "ObjectType",
|
|
25
|
+
entity,
|
|
26
|
+
...entity,
|
|
27
|
+
})),
|
|
28
|
+
...loaded.valueTypes.map((entity) => ({
|
|
29
|
+
entityType: "ValueType",
|
|
30
|
+
entity,
|
|
31
|
+
...entity,
|
|
32
|
+
})),
|
|
33
|
+
...loaded.linkTypes.map((entity) => ({
|
|
34
|
+
entityType: "LinkType",
|
|
35
|
+
entity,
|
|
36
|
+
...entity,
|
|
37
|
+
})),
|
|
38
|
+
];
|
|
39
|
+
},
|
|
40
|
+
}));
|
|
41
|
+
}
|
|
42
|
+
export function objectTypeCollectionOptions(metadata) {
|
|
43
|
+
return liveQueryCollectionOptions({
|
|
44
|
+
query: new Query()
|
|
45
|
+
.from({ metadata })
|
|
46
|
+
.where(({ metadata }) => eq(metadata.entityType, "ObjectType")),
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
export function valueTypeCollectionOptions(metadata) {
|
|
50
|
+
return liveQueryCollectionOptions({
|
|
51
|
+
query: new Query()
|
|
52
|
+
.from({ metadata })
|
|
53
|
+
.where(({ metadata }) => eq(metadata.entityType, "ValueType")),
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
export function linkTypeCollectionOptions(metadata) {
|
|
57
|
+
return liveQueryCollectionOptions({
|
|
58
|
+
query: new Query()
|
|
59
|
+
.from({ metadata })
|
|
60
|
+
.where(({ metadata }) => eq(metadata.entityType, "LinkType")),
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
async function loadSalesforceMetaOntology(client, objectTypeNames) {
|
|
64
|
+
const global = await client.describeGlobal();
|
|
65
|
+
const allowlist = objectTypeNames ? new Set(objectTypeNames) : undefined;
|
|
66
|
+
const candidates = global.sobjects.filter((sobject) => {
|
|
67
|
+
if (!sobject.queryable)
|
|
68
|
+
return false;
|
|
69
|
+
if (allowlist && !allowlist.has(sobject.name))
|
|
70
|
+
return false;
|
|
71
|
+
return true;
|
|
72
|
+
});
|
|
73
|
+
const describes = await Promise.all(candidates.map((sobject) => client.describeSObject(sobject.name)));
|
|
74
|
+
return {
|
|
75
|
+
objectTypes: describes.map(convertSalesforceMetaObjectType),
|
|
76
|
+
valueTypes: [],
|
|
77
|
+
linkTypes: convertSalesforceMetaLinkTypes(describes),
|
|
78
|
+
};
|
|
79
|
+
}
|
|
80
|
+
//# sourceMappingURL=entityCollectionOptions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"entityCollectionOptions.js","sourceRoot":"","sources":["../../src/meta/entityCollectionOptions.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +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
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/meta/index.ts"],"names":[],"mappings":"AAAA,cAAc,iDAAiD,CAAC;AAChE,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AACzC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,kCAAkC,CAAC"}
|
|
@@ -0,0 +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
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/meta/index.ts"],"names":[],"mappings":"AAAA,cAAc,iDAAiD,CAAC;AAChE,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AACzC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,kCAAkC,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { OntologyCollectionOptions } from "@party-stack/ontology";
|
|
2
|
+
/**
|
|
3
|
+
* Salesforce has no native equivalent to Foundry query functions in this slice.
|
|
4
|
+
* Return an empty on-demand collection so pull/meta LiveOntology still works.
|
|
5
|
+
*/
|
|
6
|
+
export declare function queryFunctionTypeCollectionOptions(): OntologyCollectionOptions;
|
|
7
|
+
//# sourceMappingURL=queryFunctionTypeCollectionOptions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"queryFunctionTypeCollectionOptions.d.ts","sourceRoot":"","sources":["../../src/meta/queryFunctionTypeCollectionOptions.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,yBAAyB,EAAwB,MAAM,uBAAuB,CAAC;AAE7F;;;GAGG;AACH,wBAAgB,kCAAkC,IAAI,yBAAyB,CAQ9E"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { QueryClient } from "@tanstack/query-core";
|
|
2
|
+
import { queryCollectionOptions } from "@tanstack/query-db-collection";
|
|
3
|
+
/**
|
|
4
|
+
* Salesforce has no native equivalent to Foundry query functions in this slice.
|
|
5
|
+
* Return an empty on-demand collection so pull/meta LiveOntology still works.
|
|
6
|
+
*/
|
|
7
|
+
export function queryFunctionTypeCollectionOptions() {
|
|
8
|
+
return queryCollectionOptions({
|
|
9
|
+
queryClient: new QueryClient(),
|
|
10
|
+
getKey: (row) => row.name,
|
|
11
|
+
queryKey: ["salesforce", "ontology", "queryFunctionTypes"],
|
|
12
|
+
syncMode: "on-demand",
|
|
13
|
+
queryFn: () => Promise.resolve([]),
|
|
14
|
+
});
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=queryFunctionTypeCollectionOptions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"queryFunctionTypeCollectionOptions.js","sourceRoot":"","sources":["../../src/meta/queryFunctionTypeCollectionOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAGvE;;;GAGG;AACH,MAAM,UAAU,kCAAkC;IAC9C,OAAO,sBAAsB,CAAuB;QAChD,WAAW,EAAE,IAAI,WAAW,EAAE;QAC9B,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI;QACzB,QAAQ,EAAE,CAAC,YAAY,EAAE,UAAU,EAAE,oBAAoB,CAAC;QAC1D,QAAQ,EAAE,WAAW;QACrB,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;KACrC,CAAyC,CAAC;AAC/C,CAAC"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export declare function toArray<T>(asyncIterable: AsyncIterable<T>): Promise<T[]>;
|
|
2
|
+
export declare function fromPagination<C extends string | number, P, T>(getPage: (pageSize: number, pageToken?: C) => Promise<P>, getPageToken: (page: P) => C | undefined, getElements: (page: P) => T[] | Promise<T[]>, defaultPageSize: number, limit?: number): AsyncIterable<T>;
|
|
3
|
+
//# sourceMappingURL=AsyncIterable.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AsyncIterable.d.ts","sourceRoot":"","sources":["../../src/utils/AsyncIterable.ts"],"names":[],"mappings":"AACA,wBAAsB,OAAO,CAAC,CAAC,EAAE,aAAa,EAAE,aAAa,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC,CAM9E;AAED,wBAAuB,cAAc,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,EAAE,CAAC,EAAE,CAAC,EACjE,OAAO,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,EACxD,YAAY,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,SAAS,EACxC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,EAAE,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC,EAC5C,eAAe,EAAE,MAAM,EACvB,KAAK,GAAE,MAAiB,GACzB,aAAa,CAAC,CAAC,CAAC,CAgBlB"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
// Replace later with https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/fromAsync
|
|
2
|
+
export async function toArray(asyncIterable) {
|
|
3
|
+
const result = [];
|
|
4
|
+
for await (const element of asyncIterable) {
|
|
5
|
+
result.push(element);
|
|
6
|
+
}
|
|
7
|
+
return result;
|
|
8
|
+
}
|
|
9
|
+
export async function* fromPagination(getPage, getPageToken, getElements, defaultPageSize, limit = Infinity) {
|
|
10
|
+
let pageToken = undefined;
|
|
11
|
+
let hasMore = true;
|
|
12
|
+
let count = 0;
|
|
13
|
+
while (hasMore && count < limit) {
|
|
14
|
+
const page = await getPage(Math.min(limit - count, defaultPageSize), pageToken);
|
|
15
|
+
const elements = await getElements(page);
|
|
16
|
+
for (const element of elements) {
|
|
17
|
+
yield element;
|
|
18
|
+
}
|
|
19
|
+
count += elements.length;
|
|
20
|
+
pageToken = getPageToken(page);
|
|
21
|
+
if (pageToken === undefined) {
|
|
22
|
+
hasMore = false;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=AsyncIterable.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AsyncIterable.js","sourceRoot":"","sources":["../../src/utils/AsyncIterable.ts"],"names":[],"mappings":"AAAA,sHAAsH;AACtH,MAAM,CAAC,KAAK,UAAU,OAAO,CAAI,aAA+B;IAC5D,MAAM,MAAM,GAAG,EAAE,CAAC;IAClB,IAAI,KAAK,EAAE,MAAM,OAAO,IAAI,aAAa,EAAE,CAAC;QACxC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACzB,CAAC;IACD,OAAO,MAAM,CAAC;AAClB,CAAC;AAED,MAAM,CAAC,KAAK,SAAS,CAAC,CAAC,cAAc,CACjC,OAAwD,EACxD,YAAwC,EACxC,WAA4C,EAC5C,eAAuB,EACvB,QAAgB,QAAQ;IAExB,IAAI,SAAS,GAAkB,SAAS,CAAC;IACzC,IAAI,OAAO,GAAG,IAAI,CAAC;IACnB,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,OAAO,OAAO,IAAI,KAAK,GAAG,KAAK,EAAE,CAAC;QAC9B,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,KAAK,EAAE,eAAe,CAAC,EAAE,SAAS,CAAC,CAAC;QAChF,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,CAAC;QACzC,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC7B,MAAM,OAAO,CAAC;QAClB,CAAC;QACD,KAAK,IAAI,QAAQ,CAAC,MAAM,CAAC;QACzB,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;QAC/B,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC1B,OAAO,GAAG,KAAK,CAAC;QACpB,CAAC;IACL,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Keep the Salesforce Flow API name as the ontology action name.
|
|
3
|
+
* Camel-casing would be lossy for names like `Create_Account`.
|
|
4
|
+
*/
|
|
5
|
+
export declare function toOntologyActionTypeName(salesforceFlowApiName: string): string;
|
|
6
|
+
export declare function salesforceObjectTypeId(sObjectName: string): string;
|
|
7
|
+
export declare function salesforcePropertyId(sObjectName: string, fieldName: string): string;
|
|
8
|
+
export declare function salesforceLinkTypeId(sObjectName: string, fieldName: string): string;
|
|
9
|
+
export declare function salesforceFlowActionTypeId(flowApiName: string): string;
|
|
10
|
+
//# sourceMappingURL=ids.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ids.d.ts","sourceRoot":"","sources":["../../src/utils/ids.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,qBAAqB,EAAE,MAAM,GAAG,MAAM,CAE9E;AAED,wBAAgB,sBAAsB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAElE;AAED,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAEnF;AAED,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAEnF;AAED,wBAAgB,0BAA0B,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAEtE"}
|
package/lib/utils/ids.js
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Keep the Salesforce Flow API name as the ontology action name.
|
|
3
|
+
* Camel-casing would be lossy for names like `Create_Account`.
|
|
4
|
+
*/
|
|
5
|
+
export function toOntologyActionTypeName(salesforceFlowApiName) {
|
|
6
|
+
return salesforceFlowApiName;
|
|
7
|
+
}
|
|
8
|
+
export function salesforceObjectTypeId(sObjectName) {
|
|
9
|
+
return `salesforce:sobject:${sObjectName}`;
|
|
10
|
+
}
|
|
11
|
+
export function salesforcePropertyId(sObjectName, fieldName) {
|
|
12
|
+
return `salesforce:field:${sObjectName}.${fieldName}`;
|
|
13
|
+
}
|
|
14
|
+
export function salesforceLinkTypeId(sObjectName, fieldName) {
|
|
15
|
+
return `salesforce:link:${sObjectName}.${fieldName}`;
|
|
16
|
+
}
|
|
17
|
+
export function salesforceFlowActionTypeId(flowApiName) {
|
|
18
|
+
return `salesforce:flow:${flowApiName}`;
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=ids.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ids.js","sourceRoot":"","sources":["../../src/utils/ids.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,UAAU,wBAAwB,CAAC,qBAA6B;IAClE,OAAO,qBAAqB,CAAC;AACjC,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,WAAmB;IACtD,OAAO,sBAAsB,WAAW,EAAE,CAAC;AAC/C,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,WAAmB,EAAE,SAAiB;IACvE,OAAO,oBAAoB,WAAW,IAAI,SAAS,EAAE,CAAC;AAC1D,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,WAAmB,EAAE,SAAiB;IACvE,OAAO,mBAAmB,WAAW,IAAI,SAAS,EAAE,CAAC;AACzD,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,WAAmB;IAC1D,OAAO,mBAAmB,WAAW,EAAE,CAAC;AAC5C,CAAC"}
|
package/package.json
ADDED
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@party-stack/salesforce-ontology",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"type": "module",
|
|
5
|
+
"exports": {
|
|
6
|
+
".": {
|
|
7
|
+
"types": "./lib/index.d.ts",
|
|
8
|
+
"default": "./lib/index.js"
|
|
9
|
+
},
|
|
10
|
+
"./config": {
|
|
11
|
+
"types": "./lib/config/index.d.ts",
|
|
12
|
+
"default": "./lib/config/index.js"
|
|
13
|
+
},
|
|
14
|
+
"./installation": {
|
|
15
|
+
"types": "./lib/installation/index.d.ts",
|
|
16
|
+
"default": "./lib/installation/index.js"
|
|
17
|
+
},
|
|
18
|
+
"./meta": {
|
|
19
|
+
"types": "./lib/meta/index.d.ts",
|
|
20
|
+
"default": "./lib/meta/index.js"
|
|
21
|
+
}
|
|
22
|
+
},
|
|
23
|
+
"files": [
|
|
24
|
+
"lib"
|
|
25
|
+
],
|
|
26
|
+
"dependencies": {
|
|
27
|
+
"@bobbyfidz/panic": "^0.1.0",
|
|
28
|
+
"temporal-polyfill": "^0.3.0",
|
|
29
|
+
"@party-stack/connections": "^0.2.1",
|
|
30
|
+
"@party-stack/ontology": "0.13.0",
|
|
31
|
+
"@party-stack/oauth": "^0.2.1",
|
|
32
|
+
"@party-stack/errors": "^0.2.0",
|
|
33
|
+
"@party-stack/runtime": "^0.3.1",
|
|
34
|
+
"@party-stack/salesforce-client": "0.1.0"
|
|
35
|
+
},
|
|
36
|
+
"devDependencies": {
|
|
37
|
+
"@bobbyfidz/universal-build-config": "^0.1.1",
|
|
38
|
+
"@tanstack/db": "^0.8.6",
|
|
39
|
+
"@tanstack/query-core": "^5.102.8",
|
|
40
|
+
"@tanstack/query-db-collection": "^1.2.11",
|
|
41
|
+
"eslint": "^9.25.0",
|
|
42
|
+
"typescript": "~5.8.3",
|
|
43
|
+
"vitest": "^3.1.1"
|
|
44
|
+
},
|
|
45
|
+
"peerDependencies": {
|
|
46
|
+
"@tanstack/db": "^0.8.6",
|
|
47
|
+
"@tanstack/query-core": "^5.102.8",
|
|
48
|
+
"@tanstack/query-db-collection": "^1.2.11"
|
|
49
|
+
},
|
|
50
|
+
"scripts": {
|
|
51
|
+
"build": "tsc",
|
|
52
|
+
"lint": "eslint",
|
|
53
|
+
"test": "vitest run --pass-with-no-tests"
|
|
54
|
+
}
|
|
55
|
+
}
|