@manta-eu/ldo 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.
Files changed (111) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +47 -0
  3. package/dist/.ldkit/attio.d.ts +1465 -0
  4. package/dist/.ldkit/attio.d.ts.map +1 -0
  5. package/dist/.ldkit/attio.js +1466 -0
  6. package/dist/.ldkit/brand.d.ts +1866 -0
  7. package/dist/.ldkit/brand.d.ts.map +1 -0
  8. package/dist/.ldkit/brand.js +2056 -0
  9. package/dist/.ldkit/cledara.d.ts +261 -0
  10. package/dist/.ldkit/cledara.d.ts.map +1 -0
  11. package/dist/.ldkit/cledara.js +262 -0
  12. package/dist/.ldkit/coresignal.d.ts +3488 -0
  13. package/dist/.ldkit/coresignal.d.ts.map +1 -0
  14. package/dist/.ldkit/coresignal.js +3489 -0
  15. package/dist/.ldkit/cs.d.ts +20 -0
  16. package/dist/.ldkit/cs.d.ts.map +1 -0
  17. package/dist/.ldkit/cs.js +21 -0
  18. package/dist/.ldkit/dash.d.ts +8 -0
  19. package/dist/.ldkit/dash.d.ts.map +1 -0
  20. package/dist/.ldkit/dash.js +8 -0
  21. package/dist/.ldkit/figma.d.ts +712 -0
  22. package/dist/.ldkit/figma.d.ts.map +1 -0
  23. package/dist/.ldkit/figma.js +713 -0
  24. package/dist/.ldkit/ga4.d.ts +177 -0
  25. package/dist/.ldkit/ga4.d.ts.map +1 -0
  26. package/dist/.ldkit/ga4.js +178 -0
  27. package/dist/.ldkit/gmc.d.ts +471 -0
  28. package/dist/.ldkit/gmc.d.ts.map +1 -0
  29. package/dist/.ldkit/gmc.js +472 -0
  30. package/dist/.ldkit/google.d.ts +3572 -0
  31. package/dist/.ldkit/google.d.ts.map +1 -0
  32. package/dist/.ldkit/google.js +4249 -0
  33. package/dist/.ldkit/index.d.ts +27 -0
  34. package/dist/.ldkit/index.d.ts.map +1 -0
  35. package/dist/.ldkit/index.js +26 -0
  36. package/dist/.ldkit/ingest.d.ts +32 -0
  37. package/dist/.ldkit/ingest.d.ts.map +1 -0
  38. package/dist/.ldkit/ingest.js +33 -0
  39. package/dist/.ldkit/linkedin.d.ts +625 -0
  40. package/dist/.ldkit/linkedin.d.ts.map +1 -0
  41. package/dist/.ldkit/linkedin.js +665 -0
  42. package/dist/.ldkit/maction.d.ts +29 -0
  43. package/dist/.ldkit/maction.d.ts.map +1 -0
  44. package/dist/.ldkit/maction.js +29 -0
  45. package/dist/.ldkit/manta.d.ts +5562 -0
  46. package/dist/.ldkit/manta.d.ts.map +1 -0
  47. package/dist/.ldkit/manta.js +6065 -0
  48. package/dist/.ldkit/mcontent.d.ts +239 -0
  49. package/dist/.ldkit/mcontent.d.ts.map +1 -0
  50. package/dist/.ldkit/mcontent.js +240 -0
  51. package/dist/.ldkit/meta.d.ts +5293 -0
  52. package/dist/.ldkit/meta.d.ts.map +1 -0
  53. package/dist/.ldkit/meta.js +5611 -0
  54. package/dist/.ldkit/namespaces.d.ts +126 -0
  55. package/dist/.ldkit/namespaces.d.ts.map +1 -0
  56. package/dist/.ldkit/namespaces.js +3555 -0
  57. package/dist/.ldkit/nfo.d.ts +84 -0
  58. package/dist/.ldkit/nfo.d.ts.map +1 -0
  59. package/dist/.ldkit/nfo.js +85 -0
  60. package/dist/.ldkit/nmo.d.ts +118 -0
  61. package/dist/.ldkit/nmo.d.ts.map +1 -0
  62. package/dist/.ldkit/nmo.js +119 -0
  63. package/dist/.ldkit/prov.d.ts +378 -0
  64. package/dist/.ldkit/prov.d.ts.map +1 -0
  65. package/dist/.ldkit/prov.js +379 -0
  66. package/dist/.ldkit/rdf.d.ts +16 -0
  67. package/dist/.ldkit/rdf.d.ts.map +1 -0
  68. package/dist/.ldkit/rdf.js +16 -0
  69. package/dist/.ldkit/rdfox.d.ts +17 -0
  70. package/dist/.ldkit/rdfox.d.ts.map +1 -0
  71. package/dist/.ldkit/rdfox.js +18 -0
  72. package/dist/.ldkit/schema.d.ts +1293 -0
  73. package/dist/.ldkit/schema.d.ts.map +1 -0
  74. package/dist/.ldkit/schema.js +1294 -0
  75. package/dist/.ldkit/sh.d.ts +376 -0
  76. package/dist/.ldkit/sh.d.ts.map +1 -0
  77. package/dist/.ldkit/sh.js +377 -0
  78. package/dist/.ldkit/slack.d.ts +622 -0
  79. package/dist/.ldkit/slack.d.ts.map +1 -0
  80. package/dist/.ldkit/slack.js +623 -0
  81. package/dist/.ldkit/stripe.d.ts +750 -0
  82. package/dist/.ldkit/stripe.d.ts.map +1 -0
  83. package/dist/.ldkit/stripe.js +751 -0
  84. package/dist/ad-platform-links.d.ts +26 -0
  85. package/dist/ad-platform-links.d.ts.map +1 -0
  86. package/dist/ad-platform-links.js +85 -0
  87. package/dist/external-links.d.ts +12 -0
  88. package/dist/external-links.d.ts.map +1 -0
  89. package/dist/external-links.js +15 -0
  90. package/dist/figma-links.d.ts +6 -0
  91. package/dist/figma-links.d.ts.map +1 -0
  92. package/dist/figma-links.js +24 -0
  93. package/dist/index.d.ts +5 -0
  94. package/dist/index.d.ts.map +1 -0
  95. package/dist/index.js +4 -0
  96. package/dist/manual-schemas.d.ts +1139 -0
  97. package/dist/manual-schemas.d.ts.map +1 -0
  98. package/dist/manual-schemas.js +298 -0
  99. package/dist/namespaces.d.ts +368 -0
  100. package/dist/namespaces.d.ts.map +1 -0
  101. package/dist/namespaces.js +16 -0
  102. package/dist/realm.d.ts +20 -0
  103. package/dist/realm.d.ts.map +1 -0
  104. package/dist/realm.js +97 -0
  105. package/dist/redirect-queries.d.ts +22 -0
  106. package/dist/redirect-queries.d.ts.map +1 -0
  107. package/dist/redirect-queries.js +93 -0
  108. package/dist/sparql-types.d.ts +33 -0
  109. package/dist/sparql-types.d.ts.map +1 -0
  110. package/dist/sparql-types.js +49 -0
  111. package/package.json +88 -0
@@ -0,0 +1,26 @@
1
+ export type MetaLinkKind = "campaign" | "ad_set" | "ad" | "ad_account";
2
+ export type GoogleLinkKind = "campaign";
3
+ export type MetaAdsManagerEntityLinkOptions = {
4
+ entityType: MetaLinkKind;
5
+ externalId: string;
6
+ params?: Record<string, string>;
7
+ };
8
+ export declare function generateMetaAdsManagerEntityLink(args: MetaAdsManagerEntityLinkOptions): string;
9
+ export type GoogleAdsEntityLinkOptions = {
10
+ entityType: GoogleLinkKind;
11
+ externalId: string;
12
+ };
13
+ export declare function generateGoogleAdsEntityLink(args: GoogleAdsEntityLinkOptions): string;
14
+ export type ExternalLink = {
15
+ url: string;
16
+ label: string;
17
+ };
18
+ export type LinkSpec = {
19
+ label: string;
20
+ url: (externalId: string, params?: Record<string, string>) => string | undefined;
21
+ };
22
+ /** IRI-keyed ad-platform link specs, for composition into the unified external-link registry. */
23
+ export declare const adPlatformLinks: ReadonlyMap<string, LinkSpec>;
24
+ /** Meta types that need `meta:account` → `accountId` for Ads Manager deep links. */
25
+ export declare const metaEntityTypesNeedingAccountParam: Set<string>;
26
+ //# sourceMappingURL=ad-platform-links.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ad-platform-links.d.ts","sourceRoot":"","sources":["../ad-platform-links.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,YAAY,GAAG,UAAU,GAAG,QAAQ,GAAG,IAAI,GAAG,YAAY,CAAC;AACvE,MAAM,MAAM,cAAc,GAAG,UAAU,CAAC;AAExC,MAAM,MAAM,+BAA+B,GAAG;IAC5C,UAAU,EAAE,YAAY,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC,CAAC;AAEF,wBAAgB,gCAAgC,CAAC,IAAI,EAAE,+BAA+B,GAAG,MAAM,CAiB9F;AAED,MAAM,MAAM,0BAA0B,GAAG;IACvC,UAAU,EAAE,cAAc,CAAC;IAC3B,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,0BAA0B,GAAG,MAAM,CAQpF;AAED,MAAM,MAAM,YAAY,GAAG;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAUF,MAAM,MAAM,QAAQ,GAAG;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,MAAM,GAAG,SAAS,CAAC;CAClF,CAAC;AA0DF,iGAAiG;AACjG,eAAO,MAAM,eAAe,EAAE,WAAW,CAAC,MAAM,EAAE,QAAQ,CAAmB,CAAC;AAE9E,oFAAoF;AACpF,eAAO,MAAM,kCAAkC,aAA8C,CAAC"}
@@ -0,0 +1,85 @@
1
+ import { google, meta } from "./.ldkit/namespaces.js";
2
+ import { ProviderAccountEntityType } from "./manual-schemas.js";
3
+ export function generateMetaAdsManagerEntityLink(args) {
4
+ const { entityType, externalId, params } = args;
5
+ const id = encodeURIComponent(externalId);
6
+ const accountId = params?.accountId;
7
+ const accountScope = accountId ? `&act=${encodeURIComponent(accountId)}` : "";
8
+ const baseUrl = "https://adsmanager.facebook.com/adsmanager/manage";
9
+ switch (entityType) {
10
+ case "campaign":
11
+ return `${baseUrl}/campaigns?filter_set=SEARCH_BY_CAMPAIGN_GROUP_IDS-STRING_SET%1EANY%1E%5B%22${id}%22%5D${accountScope}`;
12
+ case "ad_set":
13
+ return `${baseUrl}/adsets?filter_set=SEARCH_BY_ADGROUP_IDS-STRING_SET%1EANY%1E%5B%22${id}%22%5D${accountScope}`;
14
+ case "ad":
15
+ return `${baseUrl}/ads?filter_set=SEARCH_BY_AD_IDS-STRING_SET%1EANY%1E%5B%22${id}%22%5D${accountScope}`;
16
+ case "ad_account":
17
+ return `https://business.facebook.com/latest/home?asset_id=${id}`;
18
+ }
19
+ }
20
+ export function generateGoogleAdsEntityLink(args) {
21
+ const { entityType, externalId } = args;
22
+ const id = encodeURIComponent(externalId);
23
+ switch (entityType) {
24
+ case "campaign":
25
+ return `https://ads.google.com/aw/campaigns?campaignId=${id}`;
26
+ }
27
+ }
28
+ const PLATFORM_LABELS = {
29
+ meta: "Open in Meta Ads Manager",
30
+ google: "Open in Google Ads",
31
+ linkedin: "Open in LinkedIn Campaign Manager",
32
+ shopify: "Open in Shopify admin",
33
+ slack: "Open in Slack",
34
+ };
35
+ function metaLink(kind) {
36
+ return {
37
+ label: PLATFORM_LABELS.meta,
38
+ url: (externalId, params) => generateMetaAdsManagerEntityLink({ entityType: kind, externalId, params }),
39
+ };
40
+ }
41
+ function googleLink(kind) {
42
+ return {
43
+ label: PLATFORM_LABELS.google,
44
+ url: (externalId) => generateGoogleAdsEntityLink({ entityType: kind, externalId }),
45
+ };
46
+ }
47
+ function shopHandle(shopDomain) {
48
+ return shopDomain.replace(/\.myshopify\.com$/, "");
49
+ }
50
+ // IRI-keyed registry; callers pass namespace terms (`meta.Campaign`, `google.Customer`, …), not slug maps.
51
+ const metaLinkKinds = {
52
+ [meta.Campaign]: "campaign",
53
+ [meta.AdSet]: "ad_set",
54
+ [meta.Ad]: "ad",
55
+ [meta.AdCreative]: "ad",
56
+ [meta.AdAccount]: "ad_account",
57
+ [meta.Business]: "ad_account",
58
+ };
59
+ const entityLinks = {
60
+ ...Object.fromEntries(Object.entries(metaLinkKinds).map(([uri, kind]) => [uri, metaLink(kind)])),
61
+ [google.Campaign]: googleLink("campaign"),
62
+ [ProviderAccountEntityType.GOOGLE_CUSTOMER]: {
63
+ label: PLATFORM_LABELS.google,
64
+ url: (customerId) => `https://ads.google.com/aw/overview?__c=${encodeURIComponent(customerId)}`,
65
+ },
66
+ [ProviderAccountEntityType.LINKEDIN_AD_ACCOUNT]: {
67
+ label: PLATFORM_LABELS.linkedin,
68
+ url: (accountId) => `https://www.linkedin.com/campaignmanager/accounts/${encodeURIComponent(accountId)}`,
69
+ },
70
+ [ProviderAccountEntityType.SHOPIFY_SHOP]: {
71
+ label: PLATFORM_LABELS.shopify,
72
+ url: (shopDomain) => `https://admin.shopify.com/store/${encodeURIComponent(shopHandle(shopDomain))}`,
73
+ },
74
+ // schema:identifier is a team id (T…) from the OAuth callback, or an enterprise org id (E…) from
75
+ // the KG mapper. Slack routes both: /client/E… resolves the org to its team and redirects there.
76
+ [ProviderAccountEntityType.SLACK_WORKSPACE]: {
77
+ label: PLATFORM_LABELS.slack,
78
+ url: (workspaceId) => `https://app.slack.com/client/${encodeURIComponent(workspaceId)}`,
79
+ },
80
+ };
81
+ const entityLinkByUri = new Map(Object.entries(entityLinks));
82
+ /** IRI-keyed ad-platform link specs, for composition into the unified external-link registry. */
83
+ export const adPlatformLinks = entityLinkByUri;
84
+ /** Meta types that need `meta:account` → `accountId` for Ads Manager deep links. */
85
+ export const metaEntityTypesNeedingAccountParam = new Set(Object.keys(metaLinkKinds));
@@ -0,0 +1,12 @@
1
+ import { type ExternalLink } from "./ad-platform-links.js";
2
+ export type { ExternalLink };
3
+ export type ExternalLinkOptions = {
4
+ entityTypeUri: string;
5
+ externalId: string;
6
+ params?: Record<string, string>;
7
+ };
8
+ /** Every RDF type the registry can link, so callers can pick a node's linkable type without hard-coding integrations. */
9
+ export declare const externalLinkTypes: ReadonlySet<string>;
10
+ export declare function resolveExternalLink({ entityTypeUri, externalId, params, }: ExternalLinkOptions): ExternalLink | undefined;
11
+ export declare function resolveExternalLinkLabel(entityTypeUri: string): string | undefined;
12
+ //# sourceMappingURL=external-links.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"external-links.d.ts","sourceRoot":"","sources":["../external-links.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,YAAY,EAAiB,MAAM,qBAAqB,CAAC;AAGxF,YAAY,EAAE,YAAY,EAAE,CAAC;AAE7B,MAAM,MAAM,mBAAmB,GAAG;IAChC,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC,CAAC;AAMF,yHAAyH;AACzH,eAAO,MAAM,iBAAiB,EAAE,WAAW,CAAC,MAAM,CAAiC,CAAC;AAEpF,wBAAgB,mBAAmB,CAAC,EAClC,aAAa,EACb,UAAU,EACV,MAAM,GACP,EAAE,mBAAmB,GAAG,YAAY,GAAG,SAAS,CAIhD;AAED,wBAAgB,wBAAwB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAElF"}
@@ -0,0 +1,15 @@
1
+ import { adPlatformLinks } from "./ad-platform-links.js";
2
+ import { figmaLinks } from "./figma-links.js";
3
+ // One IRI-keyed registry over every integration. Dispatch is a plain lookup by type — no integration
4
+ // takes priority and there is no per-integration fallback. New integrations add their specs here.
5
+ const externalLinks = new Map([...adPlatformLinks, ...figmaLinks]);
6
+ /** Every RDF type the registry can link, so callers can pick a node's linkable type without hard-coding integrations. */
7
+ export const externalLinkTypes = new Set(externalLinks.keys());
8
+ export function resolveExternalLink({ entityTypeUri, externalId, params, }) {
9
+ const spec = externalLinks.get(entityTypeUri);
10
+ const url = spec?.url(externalId, params);
11
+ return spec && url ? { url, label: spec.label } : undefined;
12
+ }
13
+ export function resolveExternalLinkLabel(entityTypeUri) {
14
+ return externalLinks.get(entityTypeUri)?.label;
15
+ }
@@ -0,0 +1,6 @@
1
+ export type FigmaLinkSpec = {
2
+ label: string;
3
+ url: (externalId: string, params?: Record<string, string>) => string | undefined;
4
+ };
5
+ export declare const figmaLinks: ReadonlyMap<string, FigmaLinkSpec>;
6
+ //# sourceMappingURL=figma-links.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"figma-links.d.ts","sourceRoot":"","sources":["../figma-links.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,aAAa,GAAG;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,MAAM,GAAG,SAAS,CAAC;CAClF,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,WAAW,CAAC,MAAM,EAAE,aAAa,CAsBxD,CAAC"}
@@ -0,0 +1,24 @@
1
+ import { figma } from "./.ldkit/namespaces.js";
2
+ const figmaLinkLabel = "Open in Figma";
3
+ export const figmaLinks = new Map([
4
+ [
5
+ figma.File,
6
+ {
7
+ label: figmaLinkLabel,
8
+ url: (externalId, params) => params?.url ?? `https://www.figma.com/design/${encodeURIComponent(externalId)}`,
9
+ },
10
+ ],
11
+ [
12
+ figma.Node,
13
+ {
14
+ label: figmaLinkLabel,
15
+ url: (externalId, params) => {
16
+ const fileKey = params?.fileKey;
17
+ if (!fileKey)
18
+ return undefined;
19
+ const nodeId = externalId.replace(/:/g, "-");
20
+ return `https://www.figma.com/design/${encodeURIComponent(fileKey)}?node-id=${encodeURIComponent(nodeId)}`;
21
+ },
22
+ },
23
+ ],
24
+ ]);
@@ -0,0 +1,5 @@
1
+ export * from "./.ldkit/index.js";
2
+ export * from "./ad-platform-links.js";
3
+ export * from "./manual-schemas.js";
4
+ export * from "./redirect-queries.js";
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,4 @@
1
+ export * from "./.ldkit/index.js";
2
+ export * from "./ad-platform-links.js";
3
+ export * from "./manual-schemas.js";
4
+ export * from "./redirect-queries.js";