@zapier/zapier-sdk 0.37.0 → 0.39.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/CHANGELOG.md +12 -0
- package/README.md +56 -49
- package/dist/apps.cjs +9036 -0
- package/dist/apps.d.mts +23 -0
- package/dist/apps.d.ts +23 -0
- package/dist/apps.mjs +9034 -0
- package/dist/define/apps-entrypoint.d.ts +3 -0
- package/dist/define/apps-entrypoint.d.ts.map +1 -0
- package/dist/define/apps-entrypoint.js +1 -0
- package/dist/define/apps-registry-keys.d.ts +2 -0
- package/dist/define/apps-registry-keys.d.ts.map +1 -0
- package/dist/define/apps-registry-keys.js +2 -0
- package/dist/define/apps-registry.d.ts +13 -0
- package/dist/define/apps-registry.d.ts.map +1 -0
- package/dist/define/apps-registry.js +31 -0
- package/dist/define/apps-registry.json +9010 -0
- package/dist/define/apps.d.ts +11 -0
- package/dist/define/apps.d.ts.map +1 -0
- package/dist/define/apps.js +2 -0
- package/dist/define/define.d.ts +13 -0
- package/dist/define/define.d.ts.map +1 -0
- package/dist/define/define.js +93 -0
- package/dist/define/helpers.d.ts +8 -0
- package/dist/define/helpers.d.ts.map +1 -0
- package/dist/define/helpers.js +6 -0
- package/dist/define/index.d.ts +5 -0
- package/dist/define/index.d.ts.map +1 -0
- package/dist/define/index.js +2 -0
- package/dist/define/types.d.ts +235 -0
- package/dist/define/types.d.ts.map +1 -0
- package/dist/define/types.js +1 -0
- package/dist/define.cjs +113 -0
- package/dist/define.d.mts +254 -0
- package/dist/define.d.ts +254 -0
- package/dist/define.mjs +107 -0
- package/dist/index.cjs +145 -41
- package/dist/index.d.mts +38 -7
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.mjs +145 -42
- package/dist/plugins/capabilities/index.d.ts +22 -0
- package/dist/plugins/capabilities/index.d.ts.map +1 -0
- package/dist/plugins/capabilities/index.js +76 -0
- package/dist/plugins/findFirstConnection/schemas.d.ts +1 -0
- package/dist/plugins/findFirstConnection/schemas.d.ts.map +1 -1
- package/dist/plugins/findUniqueConnection/schemas.d.ts +1 -0
- package/dist/plugins/findUniqueConnection/schemas.d.ts.map +1 -1
- package/dist/plugins/listConnections/index.d.ts +2 -1
- package/dist/plugins/listConnections/index.d.ts.map +1 -1
- package/dist/plugins/listConnections/index.js +10 -3
- package/dist/plugins/listConnections/schemas.d.ts +1 -0
- package/dist/plugins/listConnections/schemas.d.ts.map +1 -1
- package/dist/plugins/listConnections/schemas.js +5 -0
- package/dist/plugins/manifest/index.d.ts +1 -0
- package/dist/plugins/manifest/index.d.ts.map +1 -1
- package/dist/plugins/manifest/index.js +1 -0
- package/dist/plugins/manifest/schemas.d.ts +9 -0
- package/dist/plugins/manifest/schemas.d.ts.map +1 -1
- package/dist/plugins/manifest/schemas.js +9 -0
- package/dist/plugins/tables/deleteTable/index.d.ts +2 -1
- package/dist/plugins/tables/deleteTable/index.d.ts.map +1 -1
- package/dist/plugins/tables/deleteTable/index.js +1 -0
- package/dist/plugins/tables/listTables/index.d.ts +2 -1
- package/dist/plugins/tables/listTables/index.d.ts.map +1 -1
- package/dist/plugins/tables/listTables/index.js +14 -6
- package/dist/plugins/tables/listTables/schemas.d.ts +1 -0
- package/dist/plugins/tables/listTables/schemas.d.ts.map +1 -1
- package/dist/plugins/tables/listTables/schemas.js +5 -1
- package/dist/resolvers/connectionId.d.ts.map +1 -1
- package/dist/resolvers/connectionId.js +13 -23
- package/dist/resolvers/tableId.d.ts.map +1 -1
- package/dist/resolvers/tableId.js +17 -6
- package/dist/sdk.d.ts +3 -2
- package/dist/sdk.d.ts.map +1 -1
- package/dist/sdk.js +3 -0
- package/dist/types/sdk.d.ts +3 -0
- package/dist/types/sdk.d.ts.map +1 -1
- package/dist/types/sdk.js +9 -0
- package/dist/utils/pagination-utils.d.ts +6 -0
- package/dist/utils/pagination-utils.d.ts.map +1 -1
- package/dist/utils/pagination-utils.js +8 -0
- package/dist/utils/schema-utils.d.ts +6 -1
- package/dist/utils/schema-utils.d.ts.map +1 -1
- package/package.json +23 -1
package/dist/index.mjs
CHANGED
|
@@ -1053,6 +1053,9 @@ function concatPaginated({
|
|
|
1053
1053
|
}
|
|
1054
1054
|
});
|
|
1055
1055
|
}
|
|
1056
|
+
function toIterable(source) {
|
|
1057
|
+
return { [Symbol.asyncIterator]: () => source[Symbol.asyncIterator]() };
|
|
1058
|
+
}
|
|
1056
1059
|
|
|
1057
1060
|
// src/utils/validation.ts
|
|
1058
1061
|
var validate = (schema, input) => {
|
|
@@ -1830,44 +1833,32 @@ var actionKeyResolver = {
|
|
|
1830
1833
|
|
|
1831
1834
|
// src/resolvers/connectionId.ts
|
|
1832
1835
|
async function fetchConnections(sdk, resolvedParams) {
|
|
1833
|
-
const
|
|
1834
|
-
|
|
1835
|
-
|
|
1836
|
-
|
|
1837
|
-
|
|
1838
|
-
|
|
1839
|
-
|
|
1840
|
-
|
|
1841
|
-
|
|
1842
|
-
});
|
|
1843
|
-
const allConnections = await sdk.listConnections(listOptions);
|
|
1844
|
-
const otherConnections = allConnections.data.filter(
|
|
1845
|
-
(connection) => !myConnections.data.some(
|
|
1846
|
-
(myConnection) => myConnection.id === connection.id
|
|
1847
|
-
)
|
|
1836
|
+
const context = sdk.getContext();
|
|
1837
|
+
const includeShared = await context.hasCapability?.(
|
|
1838
|
+
"canIncludeSharedConnections"
|
|
1839
|
+
);
|
|
1840
|
+
return toIterable(
|
|
1841
|
+
sdk.listConnections({
|
|
1842
|
+
appKey: resolvedParams.appKey,
|
|
1843
|
+
includeShared: includeShared || void 0
|
|
1844
|
+
})
|
|
1848
1845
|
);
|
|
1849
|
-
return [...myConnections.data, ...otherConnections];
|
|
1850
1846
|
}
|
|
1851
1847
|
function promptForConnection(connections, params) {
|
|
1852
1848
|
return {
|
|
1853
1849
|
type: "list",
|
|
1854
1850
|
name: "connectionId",
|
|
1855
1851
|
message: params.appKey ? `Select connection for ${params.appKey}:` : "Select connection:",
|
|
1856
|
-
choices:
|
|
1857
|
-
|
|
1858
|
-
|
|
1859
|
-
|
|
1860
|
-
})),
|
|
1861
|
-
{
|
|
1862
|
-
name: "-> Skip connection (may fail)",
|
|
1863
|
-
value: null
|
|
1864
|
-
}
|
|
1865
|
-
]
|
|
1852
|
+
choices: connections.map((connection) => ({
|
|
1853
|
+
name: `${connection.title || connection.label || "Connection"} (ID: ${connection.id})`,
|
|
1854
|
+
value: connection.id
|
|
1855
|
+
}))
|
|
1866
1856
|
};
|
|
1867
1857
|
}
|
|
1868
1858
|
var connectionIdResolver = {
|
|
1869
1859
|
type: "dynamic",
|
|
1870
1860
|
depends: ["appKey"],
|
|
1861
|
+
requireCapabilities: ["canIncludeSharedConnections"],
|
|
1871
1862
|
tryResolveWithoutPrompt: async (sdk, params) => {
|
|
1872
1863
|
if (!params.appKey) return null;
|
|
1873
1864
|
try {
|
|
@@ -1885,6 +1876,7 @@ var connectionIdResolver = {
|
|
|
1885
1876
|
var connectionIdGenericResolver = {
|
|
1886
1877
|
type: "dynamic",
|
|
1887
1878
|
depends: [],
|
|
1879
|
+
requireCapabilities: ["canIncludeSharedConnections"],
|
|
1888
1880
|
fetch: fetchConnections,
|
|
1889
1881
|
prompt: promptForConnection
|
|
1890
1882
|
};
|
|
@@ -2008,11 +2000,24 @@ var clientIdResolver = {
|
|
|
2008
2000
|
// src/resolvers/tableId.ts
|
|
2009
2001
|
var tableIdResolver = {
|
|
2010
2002
|
type: "dynamic",
|
|
2011
|
-
|
|
2012
|
-
|
|
2013
|
-
|
|
2014
|
-
|
|
2015
|
-
|
|
2003
|
+
requireCapabilities: ["canIncludeSharedTables"],
|
|
2004
|
+
fetch: async (sdk) => {
|
|
2005
|
+
const context = sdk.getContext();
|
|
2006
|
+
const includeShared = await context.hasCapability?.(
|
|
2007
|
+
"canIncludeSharedTables"
|
|
2008
|
+
);
|
|
2009
|
+
if (includeShared) {
|
|
2010
|
+
return toIterable(
|
|
2011
|
+
concatPaginated({
|
|
2012
|
+
sources: [
|
|
2013
|
+
() => sdk.listTables(),
|
|
2014
|
+
() => sdk.listTables({ includeShared: true })
|
|
2015
|
+
],
|
|
2016
|
+
dedupe: (table) => table.id
|
|
2017
|
+
})
|
|
2018
|
+
);
|
|
2019
|
+
}
|
|
2020
|
+
return toIterable(sdk.listTables());
|
|
2016
2021
|
},
|
|
2017
2022
|
prompt: (tables) => ({
|
|
2018
2023
|
type: "list",
|
|
@@ -3108,6 +3113,10 @@ var ListConnectionsQuerySchema = ListConnectionsQuerySchema$1.omit({
|
|
|
3108
3113
|
),
|
|
3109
3114
|
// camelCase account ID
|
|
3110
3115
|
accountId: z.string().optional().describe("Account ID to filter by"),
|
|
3116
|
+
// Include shared connections (overrides default owner=me filter)
|
|
3117
|
+
includeShared: z.boolean().optional().describe(
|
|
3118
|
+
"Include connections shared with you. By default, only your own connections are returned (owner=me). Set to true to also include shared connections."
|
|
3119
|
+
),
|
|
3111
3120
|
// camelCase isExpired
|
|
3112
3121
|
isExpired: z.boolean().optional().describe("Filter by expired status"),
|
|
3113
3122
|
// Override pageSize to make optional
|
|
@@ -3147,6 +3156,9 @@ var ConnectionItemSchema = withFormatter(ConnectionItemSchema$1, {
|
|
|
3147
3156
|
// src/plugins/listConnections/index.ts
|
|
3148
3157
|
var listConnectionsPlugin = ({ context }) => {
|
|
3149
3158
|
async function listConnectionsPage(options) {
|
|
3159
|
+
if (options.includeShared) {
|
|
3160
|
+
await context.checkCapability("canIncludeSharedConnections");
|
|
3161
|
+
}
|
|
3150
3162
|
const { api, getVersionedImplementationId } = context;
|
|
3151
3163
|
const searchParams = {};
|
|
3152
3164
|
if (options.pageSize !== void 0) {
|
|
@@ -3177,8 +3189,14 @@ var listConnectionsPlugin = ({ context }) => {
|
|
|
3177
3189
|
if (options.accountId) {
|
|
3178
3190
|
searchParams.account_id = options.accountId;
|
|
3179
3191
|
}
|
|
3180
|
-
if (options.owner) {
|
|
3181
|
-
|
|
3192
|
+
if (options.owner && options.owner !== "me" && !options.includeShared) {
|
|
3193
|
+
throw new ZapierValidationError(
|
|
3194
|
+
'The "owner" option requires "includeShared" to be true. Without includeShared, only your own connections are returned.'
|
|
3195
|
+
);
|
|
3196
|
+
}
|
|
3197
|
+
const owner = options.includeShared ? options.owner : "me";
|
|
3198
|
+
if (owner) {
|
|
3199
|
+
searchParams.owner = owner;
|
|
3182
3200
|
}
|
|
3183
3201
|
if (options.isExpired !== void 0) {
|
|
3184
3202
|
searchParams.is_expired = options.isExpired.toString();
|
|
@@ -4100,6 +4118,9 @@ var ManifestSchema = z.object({
|
|
|
4100
4118
|
})
|
|
4101
4119
|
).optional(),
|
|
4102
4120
|
actions: z.record(z.string(), ActionEntrySchema).optional().describe("Saved action configurations with their schemas"),
|
|
4121
|
+
canIncludeSharedConnections: z.boolean().optional().describe("Allow listing shared connections"),
|
|
4122
|
+
canIncludeSharedTables: z.boolean().optional().describe("Allow listing shared tables"),
|
|
4123
|
+
canDeleteTables: z.boolean().optional().describe("Allow deleting tables"),
|
|
4103
4124
|
connections: ConnectionsMapSchema.optional().describe(
|
|
4104
4125
|
"Named connections map. Keys are connection names, values contain a connectionId."
|
|
4105
4126
|
)
|
|
@@ -4455,6 +4476,7 @@ var manifestPlugin = (params) => {
|
|
|
4455
4476
|
};
|
|
4456
4477
|
return {
|
|
4457
4478
|
context: {
|
|
4479
|
+
getResolvedManifest,
|
|
4458
4480
|
getVersionedImplementationId,
|
|
4459
4481
|
resolveAppKeys: async ({ appKeys }) => resolveAppKeys({
|
|
4460
4482
|
appKeys,
|
|
@@ -5858,6 +5880,69 @@ var connectionsPlugin = (params) => {
|
|
|
5858
5880
|
}
|
|
5859
5881
|
};
|
|
5860
5882
|
};
|
|
5883
|
+
|
|
5884
|
+
// src/plugins/capabilities/index.ts
|
|
5885
|
+
function toDescription(key) {
|
|
5886
|
+
const words = key.replace(/^can/, "").replace(/([A-Z])/g, " $1").trim().toLowerCase();
|
|
5887
|
+
return `To ${words}`;
|
|
5888
|
+
}
|
|
5889
|
+
function toEnvVar(key) {
|
|
5890
|
+
return "ZAPIER_" + key.replace(/([A-Z])/g, "_$1").toUpperCase();
|
|
5891
|
+
}
|
|
5892
|
+
function toCliFlag(key) {
|
|
5893
|
+
return "--" + key.replace(/([A-Z])/g, "-$1").toLowerCase();
|
|
5894
|
+
}
|
|
5895
|
+
function buildCapabilityMessage(key) {
|
|
5896
|
+
return [
|
|
5897
|
+
`${toDescription(key)}, use ${toCliFlag(key)} in the CLI,`,
|
|
5898
|
+
`set ${key}: true in SDK options or .zapierrc,`,
|
|
5899
|
+
`or set ${toEnvVar(key)}=true.`
|
|
5900
|
+
].join(" ");
|
|
5901
|
+
}
|
|
5902
|
+
var GATED_FLAGS = [
|
|
5903
|
+
"canIncludeSharedConnections",
|
|
5904
|
+
"canIncludeSharedTables",
|
|
5905
|
+
"canDeleteTables"
|
|
5906
|
+
];
|
|
5907
|
+
function isEnabledByEnv(key) {
|
|
5908
|
+
if (typeof process === "undefined") return void 0;
|
|
5909
|
+
const value = process.env[toEnvVar(key)];
|
|
5910
|
+
if (value === void 0) return void 0;
|
|
5911
|
+
if (value === "true" || value === "1") return true;
|
|
5912
|
+
if (value === "false" || value === "0") return false;
|
|
5913
|
+
return void 0;
|
|
5914
|
+
}
|
|
5915
|
+
var capabilitiesPlugin = ({ context }) => {
|
|
5916
|
+
const options = context.options ?? {};
|
|
5917
|
+
let cached;
|
|
5918
|
+
async function resolveFlags() {
|
|
5919
|
+
if (cached) return cached;
|
|
5920
|
+
const manifest = await context.getResolvedManifest();
|
|
5921
|
+
cached = {};
|
|
5922
|
+
for (const flag of GATED_FLAGS) {
|
|
5923
|
+
cached[flag] = Boolean(
|
|
5924
|
+
options[flag] ?? isEnabledByEnv(flag) ?? manifest?.[flag]
|
|
5925
|
+
);
|
|
5926
|
+
}
|
|
5927
|
+
return cached;
|
|
5928
|
+
}
|
|
5929
|
+
return {
|
|
5930
|
+
context: {
|
|
5931
|
+
checkCapability: async (key) => {
|
|
5932
|
+
const flags = await resolveFlags();
|
|
5933
|
+
if (flags[key]) return;
|
|
5934
|
+
throw new ZapierConfigurationError(
|
|
5935
|
+
buildCapabilityMessage(key) + " (If you are an AI agent, you MUST NOT retry. Ask the user if they want to enable this.)",
|
|
5936
|
+
{ configType: key }
|
|
5937
|
+
);
|
|
5938
|
+
},
|
|
5939
|
+
hasCapability: async (key) => {
|
|
5940
|
+
const flags = await resolveFlags();
|
|
5941
|
+
return flags[key];
|
|
5942
|
+
}
|
|
5943
|
+
}
|
|
5944
|
+
};
|
|
5945
|
+
};
|
|
5861
5946
|
var TableApiItemSchema = z.object({
|
|
5862
5947
|
id: z.string(),
|
|
5863
5948
|
name: z.string(),
|
|
@@ -5892,7 +5977,10 @@ var ListTablesOptionsSchema = z.object({
|
|
|
5892
5977
|
kind: z.enum(["table", "virtual_table", "both"]).optional().describe("Filter by table type"),
|
|
5893
5978
|
search: z.string().optional().describe("Search term to filter tables by name"),
|
|
5894
5979
|
owner: z.string().optional().describe(
|
|
5895
|
-
'Filter by table owner. Use "me" for the current user, or a numeric user ID.'
|
|
5980
|
+
'Filter by table owner. Use "me" for the current user, or a numeric user ID. Requires includeShared to be true.'
|
|
5981
|
+
),
|
|
5982
|
+
includeShared: z.boolean().optional().describe(
|
|
5983
|
+
"Include tables shared with you. Without this, only your own tables are returned."
|
|
5896
5984
|
),
|
|
5897
5985
|
pageSize: z.number().min(1).optional().describe("Number of tables per page"),
|
|
5898
5986
|
maxItems: z.number().min(1).optional().describe("Maximum total items to return across all pages"),
|
|
@@ -5914,6 +6002,9 @@ function extractNextCursor(links) {
|
|
|
5914
6002
|
}
|
|
5915
6003
|
var listTablesPlugin = ({ context }) => {
|
|
5916
6004
|
async function listTablesPage(options) {
|
|
6005
|
+
if (options.includeShared) {
|
|
6006
|
+
await context.checkCapability("canIncludeSharedTables");
|
|
6007
|
+
}
|
|
5917
6008
|
const { api } = context;
|
|
5918
6009
|
const searchParams = {};
|
|
5919
6010
|
if (options.pageSize !== void 0) {
|
|
@@ -5928,15 +6019,23 @@ var listTablesPlugin = ({ context }) => {
|
|
|
5928
6019
|
if (options?.search) {
|
|
5929
6020
|
searchParams.q = options.search;
|
|
5930
6021
|
}
|
|
5931
|
-
if (options?.owner) {
|
|
5932
|
-
|
|
5933
|
-
|
|
6022
|
+
if (options?.owner && options.owner !== "me" && !options.includeShared) {
|
|
6023
|
+
throw new ZapierValidationError(
|
|
6024
|
+
'The "owner" option requires "includeShared" to be true. Without includeShared, only your own tables are returned.'
|
|
6025
|
+
);
|
|
6026
|
+
}
|
|
6027
|
+
const owner = options.includeShared ? options.owner : "me";
|
|
6028
|
+
if (owner) {
|
|
6029
|
+
if (owner === "me") {
|
|
5934
6030
|
const profile = await api.get("/zapier/api/v4/profile/", {
|
|
5935
6031
|
authRequired: true
|
|
5936
6032
|
});
|
|
5937
|
-
|
|
6033
|
+
searchParams.owner_customuser_id = String(
|
|
6034
|
+
profile.id
|
|
6035
|
+
);
|
|
6036
|
+
} else {
|
|
6037
|
+
searchParams.owner_customuser_id = owner;
|
|
5938
6038
|
}
|
|
5939
|
-
searchParams.owner_customuser_id = ownerId;
|
|
5940
6039
|
}
|
|
5941
6040
|
if (options.cursor) {
|
|
5942
6041
|
searchParams.offset = options.cursor;
|
|
@@ -6130,6 +6229,7 @@ var DeleteTableOptionsSchema = z.object({
|
|
|
6130
6229
|
// src/plugins/tables/deleteTable/index.ts
|
|
6131
6230
|
var deleteTablePlugin = ({ context }) => {
|
|
6132
6231
|
async function deleteTable(options) {
|
|
6232
|
+
await context.checkCapability("canDeleteTables");
|
|
6133
6233
|
const { api } = context;
|
|
6134
6234
|
await api.delete(`/tables/api/v1/tables/${options.tableId}`, void 0, {
|
|
6135
6235
|
customErrorHandler: ({ status }) => {
|
|
@@ -7539,7 +7639,7 @@ function getCpuTime() {
|
|
|
7539
7639
|
}
|
|
7540
7640
|
|
|
7541
7641
|
// src/plugins/eventEmission/builders.ts
|
|
7542
|
-
var SDK_VERSION = "0.
|
|
7642
|
+
var SDK_VERSION = "0.39.0";
|
|
7543
7643
|
function createBaseEvent(context = {}) {
|
|
7544
7644
|
return {
|
|
7545
7645
|
event_id: generateEventId(),
|
|
@@ -8032,7 +8132,7 @@ function createSdk(options = {}, initialSdk = {}, initialContext = { meta: {} })
|
|
|
8032
8132
|
};
|
|
8033
8133
|
}
|
|
8034
8134
|
function createZapierSdkWithoutRegistry(options = {}) {
|
|
8035
|
-
return createSdk(options).addPlugin(eventEmissionPlugin).addPlugin(apiPlugin).addPlugin(manifestPlugin).addPlugin(connectionsPlugin).addPlugin(listAppsPlugin).addPlugin(getAppPlugin).addPlugin(listActionsPlugin).addPlugin(getActionPlugin).addPlugin(listInputFieldsPlugin).addPlugin(getInputFieldsSchemaPlugin).addPlugin(listInputFieldChoicesPlugin).addPlugin(runActionPlugin).addPlugin(listConnectionsPlugin).addPlugin(getConnectionPlugin).addPlugin(findFirstConnectionPlugin).addPlugin(findUniqueConnectionPlugin).addPlugin(listAuthenticationsPlugin).addPlugin(getAuthenticationPlugin).addPlugin(findFirstAuthenticationPlugin).addPlugin(findUniqueAuthenticationPlugin).addPlugin(listClientCredentialsPlugin).addPlugin(createClientCredentialsPlugin).addPlugin(deleteClientCredentialsPlugin).addPlugin(fetchPlugin).addPlugin(requestPlugin).addPlugin(listTablesPlugin).addPlugin(getTablePlugin).addPlugin(deleteTablePlugin).addPlugin(createTablePlugin).addPlugin(listTableFieldsPlugin).addPlugin(createTableFieldsPlugin).addPlugin(deleteTableFieldsPlugin).addPlugin(getTableRecordPlugin).addPlugin(listTableRecordsPlugin).addPlugin(createTableRecordsPlugin).addPlugin(deleteTableRecordsPlugin).addPlugin(updateTableRecordsPlugin).addPlugin(appsPlugin).addPlugin(getProfilePlugin);
|
|
8135
|
+
return createSdk(options).addPlugin(eventEmissionPlugin).addPlugin(apiPlugin).addPlugin(manifestPlugin).addPlugin(capabilitiesPlugin).addPlugin(connectionsPlugin).addPlugin(listAppsPlugin).addPlugin(getAppPlugin).addPlugin(listActionsPlugin).addPlugin(getActionPlugin).addPlugin(listInputFieldsPlugin).addPlugin(getInputFieldsSchemaPlugin).addPlugin(listInputFieldChoicesPlugin).addPlugin(runActionPlugin).addPlugin(listConnectionsPlugin).addPlugin(getConnectionPlugin).addPlugin(findFirstConnectionPlugin).addPlugin(findUniqueConnectionPlugin).addPlugin(listAuthenticationsPlugin).addPlugin(getAuthenticationPlugin).addPlugin(findFirstAuthenticationPlugin).addPlugin(findUniqueAuthenticationPlugin).addPlugin(listClientCredentialsPlugin).addPlugin(createClientCredentialsPlugin).addPlugin(deleteClientCredentialsPlugin).addPlugin(fetchPlugin).addPlugin(requestPlugin).addPlugin(listTablesPlugin).addPlugin(getTablePlugin).addPlugin(deleteTablePlugin).addPlugin(createTablePlugin).addPlugin(listTableFieldsPlugin).addPlugin(createTableFieldsPlugin).addPlugin(deleteTableFieldsPlugin).addPlugin(getTableRecordPlugin).addPlugin(listTableRecordsPlugin).addPlugin(createTableRecordsPlugin).addPlugin(deleteTableRecordsPlugin).addPlugin(updateTableRecordsPlugin).addPlugin(appsPlugin).addPlugin(getProfilePlugin);
|
|
8036
8136
|
}
|
|
8037
8137
|
function createZapierSdk(options = {}) {
|
|
8038
8138
|
return createZapierSdkWithoutRegistry(options).addPlugin(registryPlugin);
|
|
@@ -8061,9 +8161,12 @@ var BaseSdkOptionsSchema = z.object({
|
|
|
8061
8161
|
onEvent: z.custom().optional().meta({ internal: true }),
|
|
8062
8162
|
fetch: z.custom().optional().meta({ internal: true }),
|
|
8063
8163
|
eventEmission: z.custom().optional().meta({ internal: true }),
|
|
8164
|
+
canIncludeSharedConnections: z.boolean().optional().describe("Allow listing shared connections."),
|
|
8165
|
+
canIncludeSharedTables: z.boolean().optional().describe("Allow listing shared tables."),
|
|
8166
|
+
canDeleteTables: z.boolean().optional().describe("Allow deleting tables."),
|
|
8064
8167
|
// Deprecated
|
|
8065
8168
|
token: z.string().optional().meta({ deprecated: true })
|
|
8066
8169
|
// Use credentials instead
|
|
8067
8170
|
});
|
|
8068
8171
|
|
|
8069
|
-
export { ActionKeyPropertySchema, ActionTimeoutMsPropertySchema, ActionTypePropertySchema, AppKeyPropertySchema, AuthenticationIdPropertySchema, BaseSdkOptionsSchema, CONTEXT_CACHE_MAX_SIZE, CONTEXT_CACHE_TTL_MS, ClientCredentialsObjectSchema, ConnectionEntrySchema, ConnectionIdPropertySchema, ConnectionPropertySchema, ConnectionsMapSchema, CredentialsFunctionSchema, CredentialsObjectSchema, CredentialsSchema, DEFAULT_ACTION_TIMEOUT_MS, DEFAULT_CONFIG_PATH, DEFAULT_PAGE_SIZE, DebugPropertySchema, InputsPropertySchema, LimitPropertySchema, MAX_PAGE_LIMIT, OffsetPropertySchema, OutputPropertySchema, ParamsPropertySchema, PkceCredentialsObjectSchema, RelayFetchSchema, RelayRequestSchema, ResolvedCredentialsSchema, ZAPIER_BASE_URL, ZAPIER_MAX_NETWORK_RETRIES, ZAPIER_MAX_NETWORK_RETRY_DELAY_MS, ZapierActionError, ZapierApiError, ZapierAppNotFoundError, ZapierAuthenticationError, ZapierBundleError, ZapierConfigurationError, ZapierError, ZapierNotFoundError, ZapierRateLimitError, ZapierRelayError, ZapierResourceNotFoundError, ZapierTimeoutError, ZapierUnknownError, ZapierValidationError, actionKeyResolver, actionTypeResolver, apiPlugin, appKeyResolver, appsPlugin, connectionIdGenericResolver as authenticationIdGenericResolver, connectionIdResolver as authenticationIdResolver, batch, buildApplicationLifecycleEvent, buildErrorEvent, buildErrorEventWithContext, buildMethodCalledEvent, clearTokenCache, clientCredentialsNameResolver, clientIdResolver, connectionIdGenericResolver, connectionIdResolver, connectionsPlugin, createBaseEvent, createClientCredentialsPlugin, createFunction, createSdk, createTableFieldsPlugin, createTablePlugin, createTableRecordsPlugin, createZapierSdk, createZapierSdkWithoutRegistry, deleteClientCredentialsPlugin, deleteTableFieldsPlugin, deleteTablePlugin, deleteTableRecordsPlugin, fetchPlugin, findFirstConnectionPlugin, findManifestEntry, findUniqueConnectionPlugin, formatErrorMessage, generateEventId, getActionPlugin, getAppPlugin, getBaseUrlFromCredentials, getCiPlatform, getClientIdFromCredentials, getConnectionPlugin, getCpuTime, getCurrentTimestamp, getMemoryUsage, getOsInfo, getPlatformVersions, getPreferredManifestEntryKey, getProfilePlugin, getReleaseId, getTablePlugin, getTableRecordPlugin, getTokenFromCliLogin, injectCliLogin, inputFieldKeyResolver, inputsAllOptionalResolver, inputsResolver, invalidateCachedToken, invalidateCredentialsToken, isCi, isCliLoginAvailable, isClientCredentials, isCredentialsFunction, isCredentialsObject, isPkceCredentials, isPositional, listActionsPlugin, listAppsPlugin, listClientCredentialsPlugin, listConnectionsPlugin, listInputFieldsPlugin, listTableFieldsPlugin, listTableRecordsPlugin, listTablesPlugin, logDeprecation, manifestPlugin, readManifestFromFile, registryPlugin, requestPlugin, resetDeprecationWarnings, resolveAuthToken, resolveCredentials, resolveCredentialsFromEnv, runActionPlugin, runWithTelemetryContext, tableFieldIdsResolver, tableFieldsResolver, tableFiltersResolver, tableIdResolver, tableNameResolver, tableRecordIdResolver, tableRecordIdsResolver, tableRecordsResolver, tableSortResolver, tableUpdateRecordsResolver, toSnakeCase, toTitleCase, updateTableRecordsPlugin };
|
|
8172
|
+
export { ActionKeyPropertySchema, ActionTimeoutMsPropertySchema, ActionTypePropertySchema, AppKeyPropertySchema, AuthenticationIdPropertySchema, BaseSdkOptionsSchema, CONTEXT_CACHE_MAX_SIZE, CONTEXT_CACHE_TTL_MS, ClientCredentialsObjectSchema, ConnectionEntrySchema, ConnectionIdPropertySchema, ConnectionPropertySchema, ConnectionsMapSchema, CredentialsFunctionSchema, CredentialsObjectSchema, CredentialsSchema, DEFAULT_ACTION_TIMEOUT_MS, DEFAULT_CONFIG_PATH, DEFAULT_PAGE_SIZE, DebugPropertySchema, InputsPropertySchema, LimitPropertySchema, MAX_PAGE_LIMIT, OffsetPropertySchema, OutputPropertySchema, ParamsPropertySchema, PkceCredentialsObjectSchema, RelayFetchSchema, RelayRequestSchema, ResolvedCredentialsSchema, ZAPIER_BASE_URL, ZAPIER_MAX_NETWORK_RETRIES, ZAPIER_MAX_NETWORK_RETRY_DELAY_MS, ZapierActionError, ZapierApiError, ZapierAppNotFoundError, ZapierAuthenticationError, ZapierBundleError, ZapierConfigurationError, ZapierError, ZapierNotFoundError, ZapierRateLimitError, ZapierRelayError, ZapierResourceNotFoundError, ZapierTimeoutError, ZapierUnknownError, ZapierValidationError, actionKeyResolver, actionTypeResolver, apiPlugin, appKeyResolver, appsPlugin, connectionIdGenericResolver as authenticationIdGenericResolver, connectionIdResolver as authenticationIdResolver, batch, buildApplicationLifecycleEvent, buildCapabilityMessage, buildErrorEvent, buildErrorEventWithContext, buildMethodCalledEvent, clearTokenCache, clientCredentialsNameResolver, clientIdResolver, connectionIdGenericResolver, connectionIdResolver, connectionsPlugin, createBaseEvent, createClientCredentialsPlugin, createFunction, createSdk, createTableFieldsPlugin, createTablePlugin, createTableRecordsPlugin, createZapierSdk, createZapierSdkWithoutRegistry, deleteClientCredentialsPlugin, deleteTableFieldsPlugin, deleteTablePlugin, deleteTableRecordsPlugin, fetchPlugin, findFirstConnectionPlugin, findManifestEntry, findUniqueConnectionPlugin, formatErrorMessage, generateEventId, getActionPlugin, getAppPlugin, getBaseUrlFromCredentials, getCiPlatform, getClientIdFromCredentials, getConnectionPlugin, getCpuTime, getCurrentTimestamp, getMemoryUsage, getOsInfo, getPlatformVersions, getPreferredManifestEntryKey, getProfilePlugin, getReleaseId, getTablePlugin, getTableRecordPlugin, getTokenFromCliLogin, injectCliLogin, inputFieldKeyResolver, inputsAllOptionalResolver, inputsResolver, invalidateCachedToken, invalidateCredentialsToken, isCi, isCliLoginAvailable, isClientCredentials, isCredentialsFunction, isCredentialsObject, isPkceCredentials, isPositional, listActionsPlugin, listAppsPlugin, listClientCredentialsPlugin, listConnectionsPlugin, listInputFieldsPlugin, listTableFieldsPlugin, listTableRecordsPlugin, listTablesPlugin, logDeprecation, manifestPlugin, readManifestFromFile, registryPlugin, requestPlugin, resetDeprecationWarnings, resolveAuthToken, resolveCredentials, resolveCredentialsFromEnv, runActionPlugin, runWithTelemetryContext, tableFieldIdsResolver, tableFieldsResolver, tableFiltersResolver, tableIdResolver, tableNameResolver, tableRecordIdResolver, tableRecordIdsResolver, tableRecordsResolver, tableSortResolver, tableUpdateRecordsResolver, toSnakeCase, toTitleCase, updateTableRecordsPlugin };
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { Plugin } from "../../types/plugin";
|
|
2
|
+
import type { Manifest } from "../manifest/schemas";
|
|
3
|
+
export declare function buildCapabilityMessage(key: string): string;
|
|
4
|
+
declare const GATED_FLAGS: readonly ["canIncludeSharedConnections", "canIncludeSharedTables", "canDeleteTables"];
|
|
5
|
+
export type GatedFlag = (typeof GATED_FLAGS)[number];
|
|
6
|
+
export interface CapabilitiesContext {
|
|
7
|
+
checkCapability: (key: GatedFlag) => Promise<void>;
|
|
8
|
+
hasCapability: (key: GatedFlag) => Promise<boolean>;
|
|
9
|
+
}
|
|
10
|
+
export interface CapabilitiesPluginProvides {
|
|
11
|
+
context: CapabilitiesContext;
|
|
12
|
+
}
|
|
13
|
+
export declare const capabilitiesPlugin: Plugin<{}, {
|
|
14
|
+
options?: {
|
|
15
|
+
canIncludeSharedConnections?: boolean;
|
|
16
|
+
canIncludeSharedTables?: boolean;
|
|
17
|
+
canDeleteTables?: boolean;
|
|
18
|
+
};
|
|
19
|
+
getResolvedManifest: () => Promise<Manifest | null>;
|
|
20
|
+
}, CapabilitiesPluginProvides>;
|
|
21
|
+
export {};
|
|
22
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/plugins/capabilities/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAqBpD,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAM1D;AAED,QAAA,MAAM,WAAW,uFAIP,CAAC;AAEX,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC;AAWrD,MAAM,WAAW,mBAAmB;IAClC,eAAe,EAAE,CAAC,GAAG,EAAE,SAAS,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACnD,aAAa,EAAE,CAAC,GAAG,EAAE,SAAS,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CACrD;AAED,MAAM,WAAW,0BAA0B;IACzC,OAAO,EAAE,mBAAmB,CAAC;CAC9B;AAED,eAAO,MAAM,kBAAkB,EAAE,MAAM,CACrC,EAAE,EACF;IACE,OAAO,CAAC,EAAE;QACR,2BAA2B,CAAC,EAAE,OAAO,CAAC;QACtC,sBAAsB,CAAC,EAAE,OAAO,CAAC;QACjC,eAAe,CAAC,EAAE,OAAO,CAAC;KAC3B,CAAC;IACF,mBAAmB,EAAE,MAAM,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC;CACrD,EACD,0BAA0B,CA8C3B,CAAC"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { ZapierConfigurationError } from "../../types/errors";
|
|
2
|
+
function toDescription(key) {
|
|
3
|
+
// "canDeleteTables" -> "To delete tables"
|
|
4
|
+
const words = key
|
|
5
|
+
.replace(/^can/, "")
|
|
6
|
+
.replace(/([A-Z])/g, " $1")
|
|
7
|
+
.trim()
|
|
8
|
+
.toLowerCase();
|
|
9
|
+
return `To ${words}`;
|
|
10
|
+
}
|
|
11
|
+
function toEnvVar(key) {
|
|
12
|
+
return "ZAPIER_" + key.replace(/([A-Z])/g, "_$1").toUpperCase();
|
|
13
|
+
}
|
|
14
|
+
function toCliFlag(key) {
|
|
15
|
+
return "--" + key.replace(/([A-Z])/g, "-$1").toLowerCase();
|
|
16
|
+
}
|
|
17
|
+
export function buildCapabilityMessage(key) {
|
|
18
|
+
return [
|
|
19
|
+
`${toDescription(key)}, use ${toCliFlag(key)} in the CLI,`,
|
|
20
|
+
`set ${key}: true in SDK options or .zapierrc,`,
|
|
21
|
+
`or set ${toEnvVar(key)}=true.`,
|
|
22
|
+
].join(" ");
|
|
23
|
+
}
|
|
24
|
+
const GATED_FLAGS = [
|
|
25
|
+
"canIncludeSharedConnections",
|
|
26
|
+
"canIncludeSharedTables",
|
|
27
|
+
"canDeleteTables",
|
|
28
|
+
];
|
|
29
|
+
function isEnabledByEnv(key) {
|
|
30
|
+
if (typeof process === "undefined")
|
|
31
|
+
return undefined;
|
|
32
|
+
const value = process.env[toEnvVar(key)];
|
|
33
|
+
if (value === undefined)
|
|
34
|
+
return undefined;
|
|
35
|
+
if (value === "true" || value === "1")
|
|
36
|
+
return true;
|
|
37
|
+
if (value === "false" || value === "0")
|
|
38
|
+
return false;
|
|
39
|
+
return undefined;
|
|
40
|
+
}
|
|
41
|
+
export const capabilitiesPlugin = ({ context }) => {
|
|
42
|
+
const options = context.options ?? {};
|
|
43
|
+
let cached;
|
|
44
|
+
/**
|
|
45
|
+
* Resolve each gated flag to true/false by checking (in priority order):
|
|
46
|
+
* SDK options, environment variables, and .zapierrc manifest.
|
|
47
|
+
* Results are cached after the first call.
|
|
48
|
+
*/
|
|
49
|
+
async function resolveFlags() {
|
|
50
|
+
if (cached)
|
|
51
|
+
return cached;
|
|
52
|
+
const manifest = await context.getResolvedManifest();
|
|
53
|
+
cached = {};
|
|
54
|
+
for (const flag of GATED_FLAGS) {
|
|
55
|
+
cached[flag] = Boolean(options[flag] ??
|
|
56
|
+
isEnabledByEnv(flag) ??
|
|
57
|
+
manifest?.[flag]);
|
|
58
|
+
}
|
|
59
|
+
return cached;
|
|
60
|
+
}
|
|
61
|
+
return {
|
|
62
|
+
context: {
|
|
63
|
+
checkCapability: async (key) => {
|
|
64
|
+
const flags = await resolveFlags();
|
|
65
|
+
if (flags[key])
|
|
66
|
+
return;
|
|
67
|
+
throw new ZapierConfigurationError(buildCapabilityMessage(key) +
|
|
68
|
+
" (If you are an AI agent, you MUST NOT retry. Ask the user if they want to enable this.)", { configType: key });
|
|
69
|
+
},
|
|
70
|
+
hasCapability: async (key) => {
|
|
71
|
+
const flags = await resolveFlags();
|
|
72
|
+
return flags[key];
|
|
73
|
+
},
|
|
74
|
+
},
|
|
75
|
+
};
|
|
76
|
+
};
|
|
@@ -10,6 +10,7 @@ export declare const FindFirstConnectionSchema: z.ZodObject<{
|
|
|
10
10
|
owner: z.ZodOptional<z.ZodString>;
|
|
11
11
|
authenticationIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
12
12
|
accountId: z.ZodOptional<z.ZodString>;
|
|
13
|
+
includeShared: z.ZodOptional<z.ZodBoolean>;
|
|
13
14
|
isExpired: z.ZodOptional<z.ZodBoolean>;
|
|
14
15
|
}, z.core.$strip>;
|
|
15
16
|
export type FindFirstConnectionOptions = z.infer<typeof FindFirstConnectionSchema>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../../src/plugins/findFirstConnection/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,EACV,yBAAyB,EACzB,cAAc,EACd,qBAAqB,EACrB,kBAAkB,EACnB,MAAM,oBAAoB,CAAC;AAG5B,eAAO,MAAM,yBAAyB
|
|
1
|
+
{"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../../src/plugins/findFirstConnection/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,EACV,yBAAyB,EACzB,cAAc,EACd,qBAAqB,EACrB,kBAAkB,EACnB,MAAM,oBAAoB,CAAC;AAG5B,eAAO,MAAM,yBAAyB;;;;;;;;;;;iBAKwB,CAAC;AAG/D,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAC9C,OAAO,yBAAyB,CACjC,CAAC;AAGF,MAAM,MAAM,wBAAwB,GAChC,yBAAyB,GACzB,cAAc,GACd,qBAAqB,GACrB,kBAAkB,CAAC;AAGvB,MAAM,WAAW,8BAA8B;IAC7C,mBAAmB,EAAE,CACnB,OAAO,CAAC,EAAE,0BAA0B,KACjC,OAAO,CAAC;QAAE,IAAI,EAAE,cAAc,GAAG,IAAI,CAAA;KAAE,CAAC,CAAC;CAC/C"}
|
|
@@ -10,6 +10,7 @@ export declare const FindUniqueConnectionSchema: z.ZodObject<{
|
|
|
10
10
|
owner: z.ZodOptional<z.ZodString>;
|
|
11
11
|
authenticationIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
12
12
|
accountId: z.ZodOptional<z.ZodString>;
|
|
13
|
+
includeShared: z.ZodOptional<z.ZodBoolean>;
|
|
13
14
|
isExpired: z.ZodOptional<z.ZodBoolean>;
|
|
14
15
|
}, z.core.$strip>;
|
|
15
16
|
export type FindUniqueConnectionOptions = z.infer<typeof FindUniqueConnectionSchema>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../../src/plugins/findUniqueConnection/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,EACV,yBAAyB,EACzB,cAAc,EACd,2BAA2B,EAC3B,qBAAqB,EACrB,kBAAkB,EACnB,MAAM,oBAAoB,CAAC;AAG5B,eAAO,MAAM,0BAA0B
|
|
1
|
+
{"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../../src/plugins/findUniqueConnection/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,EACV,yBAAyB,EACzB,cAAc,EACd,2BAA2B,EAC3B,qBAAqB,EACrB,kBAAkB,EACnB,MAAM,oBAAoB,CAAC;AAG5B,eAAO,MAAM,0BAA0B;;;;;;;;;;;iBAKsB,CAAC;AAG9D,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAC/C,OAAO,0BAA0B,CAClC,CAAC;AAGF,MAAM,MAAM,yBAAyB,GACjC,yBAAyB,GACzB,cAAc,GACd,2BAA2B,GAC3B,qBAAqB,GACrB,kBAAkB,CAAC;AAGvB,MAAM,WAAW,+BAA+B;IAC9C,oBAAoB,EAAE,CACpB,OAAO,CAAC,EAAE,2BAA2B,KAClC,OAAO,CAAC;QAAE,IAAI,EAAE,cAAc,CAAA;KAAE,CAAC,CAAC;CACxC"}
|
|
@@ -5,6 +5,7 @@ import { ListConnectionsQuerySchema, type ListConnectionsOptions, type ListConne
|
|
|
5
5
|
import type { GetVersionedImplementationId } from "../manifest/schemas";
|
|
6
6
|
import type { ManifestPluginProvides } from "../manifest";
|
|
7
7
|
import type { EventEmissionContext } from "../eventEmission";
|
|
8
|
+
import type { CapabilitiesContext } from "../capabilities";
|
|
8
9
|
export interface ListConnectionsPluginProvides {
|
|
9
10
|
listConnections: (options?: ListConnectionsOptions) => Promise<ListConnectionsPage> & AsyncIterable<ListConnectionsPage> & {
|
|
10
11
|
items(): AsyncIterable<ConnectionItem>;
|
|
@@ -20,5 +21,5 @@ export interface ListConnectionsPluginProvides {
|
|
|
20
21
|
export declare const listConnectionsPlugin: Plugin<GetSdkType<ManifestPluginProvides>, {
|
|
21
22
|
api: ApiClient;
|
|
22
23
|
getVersionedImplementationId: GetVersionedImplementationId;
|
|
23
|
-
} & EventEmissionContext, ListConnectionsPluginProvides>;
|
|
24
|
+
} & EventEmissionContext & CapabilitiesContext, ListConnectionsPluginProvides>;
|
|
24
25
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/plugins/listConnections/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gDAAgD,CAAC;AACrF,OAAO,EACL,0BAA0B,EAC1B,KAAK,sBAAsB,EAC3B,KAAK,mBAAmB,EACzB,MAAM,WAAW,CAAC;AAKnB,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,qBAAqB,CAAC;AACxE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAG1D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/plugins/listConnections/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gDAAgD,CAAC;AACrF,OAAO,EACL,0BAA0B,EAC1B,KAAK,sBAAsB,EAC3B,KAAK,mBAAmB,EACzB,MAAM,WAAW,CAAC;AAKnB,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,qBAAqB,CAAC;AACxE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAG1D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAQ7D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAE3D,MAAM,WAAW,6BAA6B;IAC5C,eAAe,EAAE,CACf,OAAO,CAAC,EAAE,sBAAsB,KAC7B,OAAO,CAAC,mBAAmB,CAAC,GAC/B,aAAa,CAAC,mBAAmB,CAAC,GAAG;QACnC,KAAK,IAAI,aAAa,CAAC,cAAc,CAAC,CAAC;KACxC,CAAC;IACJ,OAAO,EAAE;QACP,IAAI,EAAE;YACJ,eAAe,EAAE;gBACf,WAAW,EAAE,OAAO,0BAA0B,CAAC;aAChD,CAAC;SACH,CAAC;KACH,CAAC;CACH;AAED,eAAO,MAAM,qBAAqB,EAAE,MAAM,CACxC,UAAU,CAAC,sBAAsB,CAAC,EAClC;IACE,GAAG,EAAE,SAAS,CAAC;IACf,4BAA4B,EAAE,4BAA4B,CAAC;CAC5D,GAAG,oBAAoB,GACtB,mBAAmB,EACrB,6BAA6B,CAwH9B,CAAC"}
|
|
@@ -6,10 +6,13 @@ import { appKeyResolver } from "../../resolvers";
|
|
|
6
6
|
import { ConnectionItemSchema } from "../../schemas/Connection";
|
|
7
7
|
import { createTelemetryCallback } from "../../utils/telemetry-utils";
|
|
8
8
|
import { stripPageSuffix } from "../../utils/string-utils";
|
|
9
|
-
import { ZapierAuthenticationError } from "../../types/errors";
|
|
9
|
+
import { ZapierAuthenticationError, ZapierValidationError, } from "../../types/errors";
|
|
10
10
|
import { setMethodMetadata } from "../../utils/telemetry-context";
|
|
11
11
|
export const listConnectionsPlugin = ({ context }) => {
|
|
12
12
|
async function listConnectionsPage(options) {
|
|
13
|
+
if (options.includeShared) {
|
|
14
|
+
await context.checkCapability("canIncludeSharedConnections");
|
|
15
|
+
}
|
|
13
16
|
const { api, getVersionedImplementationId } = context;
|
|
14
17
|
const searchParams = {};
|
|
15
18
|
if (options.pageSize !== undefined) {
|
|
@@ -44,8 +47,12 @@ export const listConnectionsPlugin = ({ context }) => {
|
|
|
44
47
|
if (options.accountId) {
|
|
45
48
|
searchParams.account_id = options.accountId;
|
|
46
49
|
}
|
|
47
|
-
if (options.owner) {
|
|
48
|
-
|
|
50
|
+
if (options.owner && options.owner !== "me" && !options.includeShared) {
|
|
51
|
+
throw new ZapierValidationError('The "owner" option requires "includeShared" to be true. Without includeShared, only your own connections are returned.');
|
|
52
|
+
}
|
|
53
|
+
const owner = options.includeShared ? options.owner : "me";
|
|
54
|
+
if (owner) {
|
|
55
|
+
searchParams.owner = owner;
|
|
49
56
|
}
|
|
50
57
|
if (options.isExpired !== undefined) {
|
|
51
58
|
searchParams.is_expired = options.isExpired.toString();
|
|
@@ -12,6 +12,7 @@ export declare const ListConnectionsQuerySchema: z.ZodObject<{
|
|
|
12
12
|
connectionIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
13
13
|
authenticationIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
14
14
|
accountId: z.ZodOptional<z.ZodString>;
|
|
15
|
+
includeShared: z.ZodOptional<z.ZodBoolean>;
|
|
15
16
|
isExpired: z.ZodOptional<z.ZodBoolean>;
|
|
16
17
|
pageSize: z.ZodOptional<z.ZodNumber>;
|
|
17
18
|
maxItems: z.ZodOptional<z.ZodNumber>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../../src/plugins/listConnections/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gDAAgD,CAAC;AAErF,OAAO,KAAK,EACV,yBAAyB,EACzB,cAAc,EACd,sBAAsB,EACtB,qBAAqB,EACrB,kBAAkB,EACnB,MAAM,oBAAoB,CAAC;AAC5B,eAAO,MAAM,0BAA0B
|
|
1
|
+
{"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../../src/plugins/listConnections/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gDAAgD,CAAC;AAErF,OAAO,KAAK,EACV,yBAAyB,EACzB,cAAc,EACd,sBAAsB,EACtB,qBAAqB,EACrB,kBAAkB,EACnB,MAAM,oBAAoB,CAAC;AAC5B,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;iBAoD0B,CAAC;AAGlE,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAGhF,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,cAAc,EAAE,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAGD,MAAM,MAAM,oBAAoB,GAC5B,yBAAyB,GACzB,cAAc,GACd,sBAAsB,GACtB,qBAAqB,GACrB,kBAAkB,CAAC;AAGvB,MAAM,WAAW,0BAA0B;IACzC,eAAe,EAAE,oBAAoB,CAAC,sBAAsB,EAAE,cAAc,CAAC,CAAC;CAC/E"}
|
|
@@ -25,6 +25,11 @@ export const ListConnectionsQuerySchema = ListConnectionsQueryBase.omit({
|
|
|
25
25
|
.describe("List of authentication IDs to filter by (deprecated, use connectionIds)"),
|
|
26
26
|
// camelCase account ID
|
|
27
27
|
accountId: z.string().optional().describe("Account ID to filter by"),
|
|
28
|
+
// Include shared connections (overrides default owner=me filter)
|
|
29
|
+
includeShared: z
|
|
30
|
+
.boolean()
|
|
31
|
+
.optional()
|
|
32
|
+
.describe("Include connections shared with you. By default, only your own connections are returned (owner=me). Set to true to also include shared connections."),
|
|
28
33
|
// camelCase isExpired
|
|
29
34
|
isExpired: z.boolean().optional().describe("Filter by expired status"),
|
|
30
35
|
// Override pageSize to make optional
|
|
@@ -30,6 +30,7 @@ export interface AddActionEntryResult {
|
|
|
30
30
|
}
|
|
31
31
|
export interface ManifestPluginProvides {
|
|
32
32
|
context: {
|
|
33
|
+
getResolvedManifest: () => Promise<Manifest | null>;
|
|
33
34
|
getVersionedImplementationId: GetVersionedImplementationId;
|
|
34
35
|
resolveAppKeys: ResolveAppKeys;
|
|
35
36
|
getManifestConnections: () => Promise<ConnectionsMap | null>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/plugins/manifest/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/plugins/manifest/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -27,6 +27,9 @@ export type ActionEntry = z.infer<typeof ActionEntrySchema>;
|
|
|
27
27
|
export type Manifest = {
|
|
28
28
|
apps?: Record<string, ManifestEntry>;
|
|
29
29
|
actions?: Record<string, ActionEntry>;
|
|
30
|
+
canIncludeSharedConnections?: boolean;
|
|
31
|
+
canIncludeSharedTables?: boolean;
|
|
32
|
+
canDeleteTables?: boolean;
|
|
30
33
|
connections?: ConnectionsMap;
|
|
31
34
|
};
|
|
32
35
|
export type ResolveAppKeys = ({ appKeys, }: {
|
|
@@ -50,6 +53,9 @@ export declare const ManifestSchema: z.ZodObject<{
|
|
|
50
53
|
schema: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
51
54
|
createdAt: z.ZodString;
|
|
52
55
|
}, z.core.$strip>>>;
|
|
56
|
+
canIncludeSharedConnections: z.ZodOptional<z.ZodBoolean>;
|
|
57
|
+
canIncludeSharedTables: z.ZodOptional<z.ZodBoolean>;
|
|
58
|
+
canDeleteTables: z.ZodOptional<z.ZodBoolean>;
|
|
53
59
|
connections: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
54
60
|
connectionId: z.ZodNumber;
|
|
55
61
|
}, z.core.$strip>>>;
|
|
@@ -71,6 +77,9 @@ export declare const ManifestPluginOptionsSchema: z.ZodObject<{
|
|
|
71
77
|
schema: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
72
78
|
createdAt: z.ZodString;
|
|
73
79
|
}, z.core.$strip>>>;
|
|
80
|
+
canIncludeSharedConnections: z.ZodOptional<z.ZodBoolean>;
|
|
81
|
+
canIncludeSharedTables: z.ZodOptional<z.ZodBoolean>;
|
|
82
|
+
canDeleteTables: z.ZodOptional<z.ZodBoolean>;
|
|
74
83
|
connections: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
75
84
|
connectionId: z.ZodNumber;
|
|
76
85
|
}, z.core.$strip>>>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../../src/plugins/manifest/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAKlD,OAAO,EAEL,KAAK,cAAc,EACpB,MAAM,yBAAyB,CAAC;AAEjC,eAAO,MAAM,mBAAmB,EAAG,WAAoB,CAAC;AAExD,MAAM,MAAM,aAAa,GAAG;IAC1B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG,CACzC,MAAM,EAAE,MAAM,KACX,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;AAE5B,MAAM,MAAM,iBAAiB,GAAG,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;AAE5E;;;GAGG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;iBAmB5B,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D,MAAM,MAAM,QAAQ,GAAG;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACrC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACtC,WAAW,CAAC,EAAE,cAAc,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,CAAC,EAC5B,OAAO,GACR,EAAE;IACD,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB,KAAK,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAAC;AAEpC;;GAEG;AACH,eAAO,MAAM,cAAc
|
|
1
|
+
{"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../../src/plugins/manifest/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAKlD,OAAO,EAEL,KAAK,cAAc,EACpB,MAAM,yBAAyB,CAAC;AAEjC,eAAO,MAAM,mBAAmB,EAAG,WAAoB,CAAC;AAExD,MAAM,MAAM,aAAa,GAAG;IAC1B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG,CACzC,MAAM,EAAE,MAAM,KACX,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;AAE5B,MAAM,MAAM,iBAAiB,GAAG,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;AAE5E;;;GAGG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;iBAmB5B,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D,MAAM,MAAM,QAAQ,GAAG;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACrC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACtC,2BAA2B,CAAC,EAAE,OAAO,CAAC;IACtC,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,WAAW,CAAC,EAAE,cAAc,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,CAAC,EAC5B,OAAO,GACR,EAAE;IACD,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB,KAAK,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAAC;AAEpC;;GAEG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;iBAkCxB,CAAC;AAEJ,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;iBAGtC,CAAC"}
|
|
@@ -41,6 +41,15 @@ export const ManifestSchema = z
|
|
|
41
41
|
.record(z.string(), ActionEntrySchema)
|
|
42
42
|
.optional()
|
|
43
43
|
.describe("Saved action configurations with their schemas"),
|
|
44
|
+
canIncludeSharedConnections: z
|
|
45
|
+
.boolean()
|
|
46
|
+
.optional()
|
|
47
|
+
.describe("Allow listing shared connections"),
|
|
48
|
+
canIncludeSharedTables: z
|
|
49
|
+
.boolean()
|
|
50
|
+
.optional()
|
|
51
|
+
.describe("Allow listing shared tables"),
|
|
52
|
+
canDeleteTables: z.boolean().optional().describe("Allow deleting tables"),
|
|
44
53
|
connections: ConnectionsMapSchema.optional().describe("Named connections map. Keys are connection names, values contain a connectionId."),
|
|
45
54
|
})
|
|
46
55
|
.describe("Manifest for app version locking, action configurations, and named connections");
|