@divyacon/piece-google-cloud-storage 0.0.0-stage → 0.1.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.
- package/LICENSE.MIT-AP +24 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +50 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/actions/clone-object.d.ts +9 -0
- package/dist/lib/actions/clone-object.d.ts.map +1 -0
- package/dist/lib/actions/clone-object.js +77 -0
- package/dist/lib/actions/clone-object.js.map +1 -0
- package/dist/lib/actions/create-bucket-acl.d.ts +7 -0
- package/dist/lib/actions/create-bucket-acl.d.ts.map +1 -0
- package/dist/lib/actions/create-bucket-acl.js +60 -0
- package/dist/lib/actions/create-bucket-acl.js.map +1 -0
- package/dist/lib/actions/create-bucket-default-object-acl.d.ts +7 -0
- package/dist/lib/actions/create-bucket-default-object-acl.d.ts.map +1 -0
- package/dist/lib/actions/create-bucket-default-object-acl.js +60 -0
- package/dist/lib/actions/create-bucket-default-object-acl.js.map +1 -0
- package/dist/lib/actions/create-bucket.d.ts +10 -0
- package/dist/lib/actions/create-bucket.d.ts.map +1 -0
- package/dist/lib/actions/create-bucket.js +80 -0
- package/dist/lib/actions/create-bucket.js.map +1 -0
- package/dist/lib/actions/create-object-acl.d.ts +9 -0
- package/dist/lib/actions/create-object-acl.d.ts.map +1 -0
- package/dist/lib/actions/create-object-acl.js +72 -0
- package/dist/lib/actions/create-object-acl.js.map +1 -0
- package/dist/lib/actions/delete-bucket-acl.d.ts +6 -0
- package/dist/lib/actions/delete-bucket-acl.d.ts.map +1 -0
- package/dist/lib/actions/delete-bucket-acl.js +56 -0
- package/dist/lib/actions/delete-bucket-acl.js.map +1 -0
- package/dist/lib/actions/delete-bucket-default-object-acl.d.ts +6 -0
- package/dist/lib/actions/delete-bucket-default-object-acl.d.ts.map +1 -0
- package/dist/lib/actions/delete-bucket-default-object-acl.js +56 -0
- package/dist/lib/actions/delete-bucket-default-object-acl.js.map +1 -0
- package/dist/lib/actions/delete-empty-bucket.d.ts +5 -0
- package/dist/lib/actions/delete-empty-bucket.d.ts.map +1 -0
- package/dist/lib/actions/delete-empty-bucket.js +50 -0
- package/dist/lib/actions/delete-empty-bucket.js.map +1 -0
- package/dist/lib/actions/delete-object-acl.d.ts +8 -0
- package/dist/lib/actions/delete-object-acl.d.ts.map +1 -0
- package/dist/lib/actions/delete-object-acl.js +71 -0
- package/dist/lib/actions/delete-object-acl.js.map +1 -0
- package/dist/lib/actions/delete-object.d.ts +7 -0
- package/dist/lib/actions/delete-object.d.ts.map +1 -0
- package/dist/lib/actions/delete-object.js +66 -0
- package/dist/lib/actions/delete-object.js.map +1 -0
- package/dist/lib/actions/search-buckets.d.ts +9 -0
- package/dist/lib/actions/search-buckets.d.ts.map +1 -0
- package/dist/lib/actions/search-buckets.js +96 -0
- package/dist/lib/actions/search-buckets.js.map +1 -0
- package/dist/lib/actions/search-objects.d.ts +12 -0
- package/dist/lib/actions/search-objects.d.ts.map +1 -0
- package/dist/lib/actions/search-objects.js +105 -0
- package/dist/lib/actions/search-objects.js.map +1 -0
- package/dist/lib/common/auth.d.ts +2 -0
- package/dist/lib/common/auth.d.ts.map +1 -0
- package/dist/lib/common/auth.js +20 -0
- package/dist/lib/common/auth.js.map +1 -0
- package/dist/lib/common/client.d.ts +9 -0
- package/dist/lib/common/client.d.ts.map +1 -0
- package/dist/lib/common/client.js +48 -0
- package/dist/lib/common/client.js.map +1 -0
- package/dist/lib/common/props.d.ts +12 -0
- package/dist/lib/common/props.d.ts.map +1 -0
- package/dist/lib/common/props.js +231 -0
- package/dist/lib/common/props.js.map +1 -0
- package/dist/lib/triggers/new-object-created.d.ts +19 -0
- package/dist/lib/triggers/new-object-created.d.ts.map +1 -0
- package/dist/lib/triggers/new-object-created.js +127 -0
- package/dist/lib/triggers/new-object-created.js.map +1 -0
- package/dist/lib/triggers/object-updated.d.ts +19 -0
- package/dist/lib/triggers/object-updated.d.ts.map +1 -0
- package/dist/lib/triggers/object-updated.js +127 -0
- package/dist/lib/triggers/object-updated.js.map +1 -0
- package/package.json +44 -4
- package/src/index.ts +46 -0
- package/src/lib/actions/clone-object.ts +75 -0
- package/src/lib/actions/create-bucket-acl.ts +58 -0
- package/src/lib/actions/create-bucket-default-object-acl.ts +58 -0
- package/src/lib/actions/create-bucket.ts +75 -0
- package/src/lib/actions/create-object-acl.ts +81 -0
- package/src/lib/actions/delete-bucket-acl.ts +52 -0
- package/src/lib/actions/delete-bucket-default-object-acl.ts +52 -0
- package/src/lib/actions/delete-empty-bucket.ts +42 -0
- package/src/lib/actions/delete-object-acl.ts +64 -0
- package/src/lib/actions/delete-object.ts +59 -0
- package/src/lib/actions/search-buckets.ts +92 -0
- package/src/lib/actions/search-objects.ts +101 -0
- package/src/lib/common/auth.ts +15 -0
- package/src/lib/common/client.ts +63 -0
- package/src/lib/common/props.ts +249 -0
- package/src/lib/triggers/new-object-created.ts +174 -0
- package/src/lib/triggers/object-updated.ts +174 -0
- package/README.md +0 -3
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { HttpMethod } from '@agnocon/pieces-common';
|
|
2
|
+
export declare const gcsCommon: {
|
|
3
|
+
gcsBaseUrl: string;
|
|
4
|
+
pubsubBaseUrl: string;
|
|
5
|
+
makeGCSRequest(method: HttpMethod, path: string, accessToken: string, body?: any): Promise<any>;
|
|
6
|
+
makePubSubRequest(method: HttpMethod, path: string, accessToken: string, body?: any): Promise<any>;
|
|
7
|
+
makeRequest(method: HttpMethod, path: string, accessToken: string, body?: any): Promise<any>;
|
|
8
|
+
};
|
|
9
|
+
//# sourceMappingURL=client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/lib/common/client.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,UAAU,EAEX,MAAM,wBAAwB,CAAC;AAGhC,eAAO,MAAM,SAAS;;;2BAKV,UAAU,QACZ,MAAM,eACC,MAAM,SACZ,GAAG,GACT,OAAO,CAAC,GAAG,CAAC;8BAiBL,UAAU,QACZ,MAAM,eACC,MAAM,SACZ,GAAG,GACT,OAAO,CAAC,GAAG,CAAC;wBAkBL,UAAU,QACZ,MAAM,eACC,MAAM,SACZ,GAAG,GACT,OAAO,CAAC,GAAG,CAAC;CAGhB,CAAC"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.gcsCommon = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
// Vendored from Activepieces packages/pieces/community/google-cloud-storage/src/lib/common/client.ts (MIT).
|
|
6
|
+
// Generated by packages/scripts/vendor-ap.mjs - do not edit by hand.
|
|
7
|
+
const pieces_common_1 = require("@agnocon/pieces-common");
|
|
8
|
+
exports.gcsCommon = {
|
|
9
|
+
gcsBaseUrl: 'https://www.googleapis.com/storage/v1',
|
|
10
|
+
pubsubBaseUrl: 'https://pubsub.googleapis.com/v1',
|
|
11
|
+
makeGCSRequest(method, path, accessToken, body) {
|
|
12
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
13
|
+
const url = path.startsWith('http') ? path : `${this.gcsBaseUrl}${path}`;
|
|
14
|
+
const response = yield pieces_common_1.httpClient.sendRequest({
|
|
15
|
+
method,
|
|
16
|
+
url,
|
|
17
|
+
authentication: {
|
|
18
|
+
type: pieces_common_1.AuthenticationType.BEARER_TOKEN,
|
|
19
|
+
token: accessToken,
|
|
20
|
+
},
|
|
21
|
+
body,
|
|
22
|
+
});
|
|
23
|
+
return response.body;
|
|
24
|
+
});
|
|
25
|
+
},
|
|
26
|
+
makePubSubRequest(method, path, accessToken, body) {
|
|
27
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
28
|
+
const url = path.startsWith('http') ? path : `${this.pubsubBaseUrl}${path}`;
|
|
29
|
+
const response = yield pieces_common_1.httpClient.sendRequest({
|
|
30
|
+
method,
|
|
31
|
+
url,
|
|
32
|
+
authentication: {
|
|
33
|
+
type: pieces_common_1.AuthenticationType.BEARER_TOKEN,
|
|
34
|
+
token: accessToken,
|
|
35
|
+
},
|
|
36
|
+
body,
|
|
37
|
+
});
|
|
38
|
+
return response.body;
|
|
39
|
+
});
|
|
40
|
+
},
|
|
41
|
+
// For backward compatibility
|
|
42
|
+
makeRequest(method, path, accessToken, body) {
|
|
43
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
44
|
+
return this.makeGCSRequest(method, path, accessToken, body);
|
|
45
|
+
});
|
|
46
|
+
},
|
|
47
|
+
};
|
|
48
|
+
//# sourceMappingURL=client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/lib/common/client.ts"],"names":[],"mappings":";;;;AAAA,4GAA4G;AAC5G,qEAAqE;AACrE,0DAIgC;AAGnB,QAAA,SAAS,GAAG;IACvB,UAAU,EAAE,uCAAuC;IACnD,aAAa,EAAE,kCAAkC;IAE3C,cAAc,CAClB,MAAkB,EAClB,IAAY,EACZ,WAAmB,EACnB,IAAU;;YAEV,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,UAAU,GAAG,IAAI,EAAE,CAAC;YAEzE,MAAM,QAAQ,GAAG,MAAM,0BAAU,CAAC,WAAW,CAAC;gBAC5C,MAAM;gBACN,GAAG;gBACH,cAAc,EAAE;oBACd,IAAI,EAAE,kCAAkB,CAAC,YAAY;oBACrC,KAAK,EAAE,WAAW;iBACnB;gBACD,IAAI;aACL,CAAC,CAAC;YAEH,OAAO,QAAQ,CAAC,IAAI,CAAC;QACvB,CAAC;KAAA;IAEK,iBAAiB,CACrB,MAAkB,EAClB,IAAY,EACZ,WAAmB,EACnB,IAAU;;YAEV,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,aAAa,GAAG,IAAI,EAAE,CAAC;YAE5E,MAAM,QAAQ,GAAG,MAAM,0BAAU,CAAC,WAAW,CAAC;gBAC5C,MAAM;gBACN,GAAG;gBACH,cAAc,EAAE;oBACd,IAAI,EAAE,kCAAkB,CAAC,YAAY;oBACrC,KAAK,EAAE,WAAW;iBACnB;gBACD,IAAI;aACL,CAAC,CAAC;YAEH,OAAO,QAAQ,CAAC,IAAI,CAAC;QACvB,CAAC;KAAA;IAED,6BAA6B;IACvB,WAAW,CACf,MAAkB,EAClB,IAAY,EACZ,WAAmB,EACnB,IAAU;;YAEV,OAAO,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC;QAC9D,CAAC;KAAA;CACF,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export declare const bucketDropdown: import("@agnocon/pieces-framework").DropdownProperty<string, true, import("@agnocon/pieces-framework").OAuth2Property<import("@agnocon/pieces-framework").OAuth2Props>>;
|
|
2
|
+
export declare const objectDropdown: (bucketProperty: string) => import("@agnocon/pieces-framework").DropdownProperty<string, true, import("@agnocon/pieces-framework").OAuth2Property<import("@agnocon/pieces-framework").OAuth2Props>>;
|
|
3
|
+
export declare const projectIdProperty: import("@agnocon/pieces-framework").DropdownProperty<string, true, import("@agnocon/pieces-framework").OAuth2Property<import("@agnocon/pieces-framework").OAuth2Props>>;
|
|
4
|
+
export declare const bucketNameProperty: import("@agnocon/pieces-framework").ShortTextProperty<true>;
|
|
5
|
+
export declare const objectNameProperty: import("@agnocon/pieces-framework").ShortTextProperty<true>;
|
|
6
|
+
export declare const locationProperty: import("@agnocon/pieces-framework").StaticDropdownProperty<string, false>;
|
|
7
|
+
export declare const storageClassProperty: import("@agnocon/pieces-framework").StaticDropdownProperty<string, false>;
|
|
8
|
+
export declare const aclEntityProperty: import("@agnocon/pieces-framework").ShortTextProperty<true>;
|
|
9
|
+
export declare const aclRoleProperty: import("@agnocon/pieces-framework").StaticDropdownProperty<string, true>;
|
|
10
|
+
export declare const bucketAclRoleProperty: import("@agnocon/pieces-framework").StaticDropdownProperty<string, true>;
|
|
11
|
+
export declare const objectAclRoleProperty: import("@agnocon/pieces-framework").StaticDropdownProperty<string, true>;
|
|
12
|
+
//# sourceMappingURL=props.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"props.d.ts","sourceRoot":"","sources":["../../../src/lib/common/props.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,cAAc,yKAwCzB,CAAC;AAEH,eAAO,MAAM,cAAc,mBAAoB,MAAM,4KAyCjD,CAAC;AAEL,eAAO,MAAM,iBAAiB,yKAsC5B,CAAC;AAEH,eAAO,MAAM,kBAAkB,6DAI7B,CAAC;AAEH,eAAO,MAAM,kBAAkB,6DAG7B,CAAC;AAEH,eAAO,MAAM,gBAAgB,2EAgD3B,CAAC;AAEH,eAAO,MAAM,oBAAoB,2EAc/B,CAAC;AAEH,eAAO,MAAM,iBAAiB,6DAI5B,CAAC;AAEH,eAAO,MAAM,eAAe,0EAU1B,CAAC;AAGH,eAAO,MAAM,qBAAqB,0EAUhC,CAAC;AAGH,eAAO,MAAM,qBAAqB,0EAShC,CAAC"}
|
|
@@ -0,0 +1,231 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.objectAclRoleProperty = exports.bucketAclRoleProperty = exports.aclRoleProperty = exports.aclEntityProperty = exports.storageClassProperty = exports.locationProperty = exports.objectNameProperty = exports.bucketNameProperty = exports.projectIdProperty = exports.objectDropdown = exports.bucketDropdown = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
// Vendored from Activepieces packages/pieces/community/google-cloud-storage/src/lib/common/props.ts (MIT).
|
|
6
|
+
// Generated by packages/scripts/vendor-ap.mjs - do not edit by hand.
|
|
7
|
+
const pieces_framework_1 = require("@agnocon/pieces-framework");
|
|
8
|
+
const client_1 = require("./client");
|
|
9
|
+
const pieces_common_1 = require("@agnocon/pieces-common");
|
|
10
|
+
const auth_1 = require("./auth");
|
|
11
|
+
exports.bucketDropdown = pieces_framework_1.Property.Dropdown({
|
|
12
|
+
displayName: 'Bucket',
|
|
13
|
+
required: true,
|
|
14
|
+
refreshers: ['projectId'],
|
|
15
|
+
auth: auth_1.googleCloudStorageAuth,
|
|
16
|
+
options: (_a) => tslib_1.__awaiter(void 0, [_a], void 0, function* ({ auth, projectId }) {
|
|
17
|
+
var _b;
|
|
18
|
+
if (!auth || !projectId) {
|
|
19
|
+
return {
|
|
20
|
+
disabled: true,
|
|
21
|
+
options: [],
|
|
22
|
+
placeholder: projectId
|
|
23
|
+
? 'Please connect your account first'
|
|
24
|
+
: 'Please enter project ID first',
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
try {
|
|
28
|
+
const authValue = auth;
|
|
29
|
+
const response = yield client_1.gcsCommon.makeRequest(pieces_common_1.HttpMethod.GET, `/b?project=${projectId}`, authValue.access_token);
|
|
30
|
+
return {
|
|
31
|
+
disabled: false,
|
|
32
|
+
options: ((_b = response.items) === null || _b === void 0 ? void 0 : _b.map((bucket) => ({
|
|
33
|
+
label: bucket.name,
|
|
34
|
+
value: bucket.name,
|
|
35
|
+
}))) || [],
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
catch (error) {
|
|
39
|
+
return {
|
|
40
|
+
disabled: true,
|
|
41
|
+
options: [],
|
|
42
|
+
placeholder: 'Failed to load buckets',
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
}),
|
|
46
|
+
});
|
|
47
|
+
const objectDropdown = (bucketProperty) => pieces_framework_1.Property.Dropdown({
|
|
48
|
+
displayName: 'Object',
|
|
49
|
+
required: true,
|
|
50
|
+
auth: auth_1.googleCloudStorageAuth,
|
|
51
|
+
refreshers: [bucketProperty],
|
|
52
|
+
options: (_a) => tslib_1.__awaiter(void 0, [_a], void 0, function* ({ auth, [bucketProperty]: bucket }) {
|
|
53
|
+
var _b;
|
|
54
|
+
if (!auth || !bucket) {
|
|
55
|
+
return {
|
|
56
|
+
disabled: true,
|
|
57
|
+
options: [],
|
|
58
|
+
placeholder: bucket
|
|
59
|
+
? 'Please connect your account first'
|
|
60
|
+
: 'Please select a bucket first',
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
try {
|
|
64
|
+
const authValue = auth;
|
|
65
|
+
const response = yield client_1.gcsCommon.makeRequest(pieces_common_1.HttpMethod.GET, `/b/${bucket}/o?maxResults=100`, authValue.access_token);
|
|
66
|
+
return {
|
|
67
|
+
disabled: false,
|
|
68
|
+
options: ((_b = response.items) === null || _b === void 0 ? void 0 : _b.map((object) => ({
|
|
69
|
+
label: object.name,
|
|
70
|
+
value: object.name,
|
|
71
|
+
}))) || [],
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
catch (error) {
|
|
75
|
+
return {
|
|
76
|
+
disabled: true,
|
|
77
|
+
options: [],
|
|
78
|
+
placeholder: 'Failed to load objects',
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
}),
|
|
82
|
+
});
|
|
83
|
+
exports.objectDropdown = objectDropdown;
|
|
84
|
+
exports.projectIdProperty = pieces_framework_1.Property.Dropdown({
|
|
85
|
+
displayName: 'Project',
|
|
86
|
+
required: true,
|
|
87
|
+
auth: auth_1.googleCloudStorageAuth,
|
|
88
|
+
refreshers: [],
|
|
89
|
+
options: (_a) => tslib_1.__awaiter(void 0, [_a], void 0, function* ({ auth }) {
|
|
90
|
+
var _b;
|
|
91
|
+
if (!auth) {
|
|
92
|
+
return {
|
|
93
|
+
disabled: true,
|
|
94
|
+
options: [],
|
|
95
|
+
placeholder: 'Please connect your account first',
|
|
96
|
+
};
|
|
97
|
+
}
|
|
98
|
+
try {
|
|
99
|
+
const authValue = auth;
|
|
100
|
+
// Use Google Cloud Resource Manager API to list projects
|
|
101
|
+
const response = yield client_1.gcsCommon.makeRequest(pieces_common_1.HttpMethod.GET, 'https://cloudresourcemanager.googleapis.com/v1/projects?filter=lifecycleState:ACTIVE', authValue.access_token);
|
|
102
|
+
return {
|
|
103
|
+
disabled: false,
|
|
104
|
+
options: ((_b = response.projects) === null || _b === void 0 ? void 0 : _b.map((project) => ({
|
|
105
|
+
label: `${project.displayName || project.name} (${project.projectId})`,
|
|
106
|
+
value: project.projectId,
|
|
107
|
+
}))) || [],
|
|
108
|
+
};
|
|
109
|
+
}
|
|
110
|
+
catch (error) {
|
|
111
|
+
return {
|
|
112
|
+
disabled: true,
|
|
113
|
+
options: [],
|
|
114
|
+
placeholder: 'Failed to load projects. Check your permissions.',
|
|
115
|
+
};
|
|
116
|
+
}
|
|
117
|
+
}),
|
|
118
|
+
});
|
|
119
|
+
exports.bucketNameProperty = pieces_framework_1.Property.ShortText({
|
|
120
|
+
displayName: 'Bucket Name',
|
|
121
|
+
description: 'Unique name for your bucket (must be globally unique, 3-63 characters)',
|
|
122
|
+
required: true,
|
|
123
|
+
});
|
|
124
|
+
exports.objectNameProperty = pieces_framework_1.Property.ShortText({
|
|
125
|
+
displayName: 'Object Name',
|
|
126
|
+
required: true,
|
|
127
|
+
});
|
|
128
|
+
exports.locationProperty = pieces_framework_1.Property.StaticDropdown({
|
|
129
|
+
displayName: 'Location',
|
|
130
|
+
required: false,
|
|
131
|
+
options: {
|
|
132
|
+
options: [
|
|
133
|
+
// Multi-region
|
|
134
|
+
{ label: 'US (Multi-region)', value: 'US' },
|
|
135
|
+
{ label: 'EU (Multi-region)', value: 'EU' },
|
|
136
|
+
{ label: 'ASIA (Multi-region)', value: 'ASIA' },
|
|
137
|
+
// US regions
|
|
138
|
+
{ label: 'us-central1 (Iowa)', value: 'us-central1' },
|
|
139
|
+
{ label: 'us-east1 (South Carolina)', value: 'us-east1' },
|
|
140
|
+
{ label: 'us-east4 (Northern Virginia)', value: 'us-east4' },
|
|
141
|
+
{ label: 'us-west1 (Oregon)', value: 'us-west1' },
|
|
142
|
+
{ label: 'us-west2 (Los Angeles)', value: 'us-west2' },
|
|
143
|
+
{ label: 'us-west3 (Salt Lake City)', value: 'us-west3' },
|
|
144
|
+
{ label: 'us-west4 (Las Vegas)', value: 'us-west4' },
|
|
145
|
+
{ label: 'us-south1 (Dallas)', value: 'us-south1' },
|
|
146
|
+
// Europe regions
|
|
147
|
+
{ label: 'europe-central2 (Warsaw)', value: 'europe-central2' },
|
|
148
|
+
{ label: 'europe-north1 (Finland)', value: 'europe-north1' },
|
|
149
|
+
{ label: 'europe-southwest1 (Madrid)', value: 'europe-southwest1' },
|
|
150
|
+
{ label: 'europe-west1 (Belgium)', value: 'europe-west1' },
|
|
151
|
+
{ label: 'europe-west2 (London)', value: 'europe-west2' },
|
|
152
|
+
{ label: 'europe-west3 (Frankfurt)', value: 'europe-west3' },
|
|
153
|
+
{ label: 'europe-west4 (Netherlands)', value: 'europe-west4' },
|
|
154
|
+
{ label: 'europe-west6 (Zurich)', value: 'europe-west6' },
|
|
155
|
+
{ label: 'europe-west8 (Milan)', value: 'europe-west8' },
|
|
156
|
+
{ label: 'europe-west9 (Paris)', value: 'europe-west9' },
|
|
157
|
+
// Asia regions
|
|
158
|
+
{ label: 'asia-east1 (Taiwan)', value: 'asia-east1' },
|
|
159
|
+
{ label: 'asia-east2 (Hong Kong)', value: 'asia-east2' },
|
|
160
|
+
{ label: 'asia-northeast1 (Tokyo)', value: 'asia-northeast1' },
|
|
161
|
+
{ label: 'asia-northeast2 (Osaka)', value: 'asia-northeast2' },
|
|
162
|
+
{ label: 'asia-northeast3 (Seoul)', value: 'asia-northeast3' },
|
|
163
|
+
{ label: 'asia-south1 (Mumbai)', value: 'asia-south1' },
|
|
164
|
+
{ label: 'asia-south2 (Delhi)', value: 'asia-south2' },
|
|
165
|
+
{ label: 'asia-southeast1 (Singapore)', value: 'asia-southeast1' },
|
|
166
|
+
{ label: 'asia-southeast2 (Jakarta)', value: 'asia-southeast2' },
|
|
167
|
+
// Other regions
|
|
168
|
+
{ label: 'australia-southeast1 (Sydney)', value: 'australia-southeast1' },
|
|
169
|
+
{ label: 'australia-southeast2 (Melbourne)', value: 'australia-southeast2' },
|
|
170
|
+
{ label: 'northamerica-northeast1 (Montreal)', value: 'northamerica-northeast1' },
|
|
171
|
+
{ label: 'northamerica-northeast2 (Toronto)', value: 'northamerica-northeast2' },
|
|
172
|
+
{ label: 'southamerica-east1 (São Paulo)', value: 'southamerica-east1' },
|
|
173
|
+
{ label: 'southamerica-west1 (Santiago)', value: 'southamerica-west1' },
|
|
174
|
+
],
|
|
175
|
+
},
|
|
176
|
+
});
|
|
177
|
+
exports.storageClassProperty = pieces_framework_1.Property.StaticDropdown({
|
|
178
|
+
displayName: 'Storage Class',
|
|
179
|
+
required: false,
|
|
180
|
+
options: {
|
|
181
|
+
options: [
|
|
182
|
+
{ label: 'Standard', value: 'STANDARD' },
|
|
183
|
+
{ label: 'Nearline', value: 'NEARLINE' },
|
|
184
|
+
{ label: 'Coldline', value: 'COLDLINE' },
|
|
185
|
+
{ label: 'Archive', value: 'ARCHIVE' },
|
|
186
|
+
{ label: 'Multi-regional', value: 'MULTI_REGIONAL' },
|
|
187
|
+
{ label: 'Regional', value: 'REGIONAL' },
|
|
188
|
+
{ label: 'Durable Reduced Availability', value: 'DURABLE_REDUCED_AVAILABILITY' },
|
|
189
|
+
],
|
|
190
|
+
},
|
|
191
|
+
});
|
|
192
|
+
exports.aclEntityProperty = pieces_framework_1.Property.ShortText({
|
|
193
|
+
displayName: 'Entity',
|
|
194
|
+
description: 'The entity to grant access to. Must include the entity type prefix. Format: user-emailAddress, group-groupId, group-emailAddress, domain-domainName, project-team-projectId, allUsers, or allAuthenticatedUsers. Examples: user-liz@example.com, group-mygroup@googlegroups.com, domain-example.com, allUsers',
|
|
195
|
+
required: true,
|
|
196
|
+
});
|
|
197
|
+
exports.aclRoleProperty = pieces_framework_1.Property.StaticDropdown({
|
|
198
|
+
displayName: 'Role',
|
|
199
|
+
required: true,
|
|
200
|
+
options: {
|
|
201
|
+
options: [
|
|
202
|
+
{ label: 'Reader', value: 'READER' },
|
|
203
|
+
{ label: 'Writer', value: 'WRITER' },
|
|
204
|
+
{ label: 'Owner', value: 'OWNER' },
|
|
205
|
+
],
|
|
206
|
+
},
|
|
207
|
+
});
|
|
208
|
+
// For bucket ACLs - supports OWNER, WRITER, READER
|
|
209
|
+
exports.bucketAclRoleProperty = pieces_framework_1.Property.StaticDropdown({
|
|
210
|
+
displayName: 'Role',
|
|
211
|
+
required: true,
|
|
212
|
+
options: {
|
|
213
|
+
options: [
|
|
214
|
+
{ label: 'Reader', value: 'READER' },
|
|
215
|
+
{ label: 'Writer', value: 'WRITER' },
|
|
216
|
+
{ label: 'Owner', value: 'OWNER' },
|
|
217
|
+
],
|
|
218
|
+
},
|
|
219
|
+
});
|
|
220
|
+
// For object ACLs - supports OWNER, READER only
|
|
221
|
+
exports.objectAclRoleProperty = pieces_framework_1.Property.StaticDropdown({
|
|
222
|
+
displayName: 'Role',
|
|
223
|
+
required: true,
|
|
224
|
+
options: {
|
|
225
|
+
options: [
|
|
226
|
+
{ label: 'Reader', value: 'READER' },
|
|
227
|
+
{ label: 'Owner', value: 'OWNER' },
|
|
228
|
+
],
|
|
229
|
+
},
|
|
230
|
+
});
|
|
231
|
+
//# sourceMappingURL=props.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"props.js","sourceRoot":"","sources":["../../../src/lib/common/props.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { TriggerStrategy } from '@agnocon/pieces-framework';
|
|
2
|
+
export declare const newObjectCreated: import("@agnocon/pieces-framework").ITrigger<TriggerStrategy.WEBHOOK, import("@agnocon/pieces-framework").OAuth2Property<import("@agnocon/pieces-framework").OAuth2Props>, {
|
|
3
|
+
projectId: import("@agnocon/pieces-framework").DropdownProperty<string, true, import("@agnocon/pieces-framework").OAuth2Property<import("@agnocon/pieces-framework").OAuth2Props>>;
|
|
4
|
+
bucket: import("@agnocon/pieces-framework").DropdownProperty<string, true, import("@agnocon/pieces-framework").OAuth2Property<import("@agnocon/pieces-framework").OAuth2Props>>;
|
|
5
|
+
prefix: import("@agnocon/pieces-framework").ShortTextProperty<false>;
|
|
6
|
+
}> | import("@agnocon/pieces-framework").ITrigger<TriggerStrategy.POLLING, import("@agnocon/pieces-framework").OAuth2Property<import("@agnocon/pieces-framework").OAuth2Props>, {
|
|
7
|
+
projectId: import("@agnocon/pieces-framework").DropdownProperty<string, true, import("@agnocon/pieces-framework").OAuth2Property<import("@agnocon/pieces-framework").OAuth2Props>>;
|
|
8
|
+
bucket: import("@agnocon/pieces-framework").DropdownProperty<string, true, import("@agnocon/pieces-framework").OAuth2Property<import("@agnocon/pieces-framework").OAuth2Props>>;
|
|
9
|
+
prefix: import("@agnocon/pieces-framework").ShortTextProperty<false>;
|
|
10
|
+
}> | import("@agnocon/pieces-framework").ITrigger<TriggerStrategy.MANUAL, import("@agnocon/pieces-framework").OAuth2Property<import("@agnocon/pieces-framework").OAuth2Props>, {
|
|
11
|
+
projectId: import("@agnocon/pieces-framework").DropdownProperty<string, true, import("@agnocon/pieces-framework").OAuth2Property<import("@agnocon/pieces-framework").OAuth2Props>>;
|
|
12
|
+
bucket: import("@agnocon/pieces-framework").DropdownProperty<string, true, import("@agnocon/pieces-framework").OAuth2Property<import("@agnocon/pieces-framework").OAuth2Props>>;
|
|
13
|
+
prefix: import("@agnocon/pieces-framework").ShortTextProperty<false>;
|
|
14
|
+
}> | import("@agnocon/pieces-framework").ITrigger<TriggerStrategy.APP_WEBHOOK, import("@agnocon/pieces-framework").OAuth2Property<import("@agnocon/pieces-framework").OAuth2Props>, {
|
|
15
|
+
projectId: import("@agnocon/pieces-framework").DropdownProperty<string, true, import("@agnocon/pieces-framework").OAuth2Property<import("@agnocon/pieces-framework").OAuth2Props>>;
|
|
16
|
+
bucket: import("@agnocon/pieces-framework").DropdownProperty<string, true, import("@agnocon/pieces-framework").OAuth2Property<import("@agnocon/pieces-framework").OAuth2Props>>;
|
|
17
|
+
prefix: import("@agnocon/pieces-framework").ShortTextProperty<false>;
|
|
18
|
+
}>;
|
|
19
|
+
//# sourceMappingURL=new-object-created.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"new-object-created.d.ts","sourceRoot":"","sources":["../../../src/lib/triggers/new-object-created.ts"],"names":[],"mappings":"AAEA,OAAO,EAAiB,eAAe,EAAY,MAAM,2BAA2B,CAAC;AAYrF,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;EAiK3B,CAAC"}
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.newObjectCreated = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
// Vendored from Activepieces packages/pieces/community/google-cloud-storage/src/lib/triggers/new-object-created.ts (MIT).
|
|
6
|
+
// Generated by packages/scripts/vendor-ap.mjs - do not edit by hand.
|
|
7
|
+
const pieces_framework_1 = require("@agnocon/pieces-framework");
|
|
8
|
+
const auth_1 = require("../common/auth");
|
|
9
|
+
const client_1 = require("../common/client");
|
|
10
|
+
const props_1 = require("../common/props");
|
|
11
|
+
const pieces_common_1 = require("@agnocon/pieces-common");
|
|
12
|
+
exports.newObjectCreated = (0, pieces_framework_1.createTrigger)({
|
|
13
|
+
auth: auth_1.googleCloudStorageAuth,
|
|
14
|
+
name: 'new_object_created',
|
|
15
|
+
displayName: 'New Object Created',
|
|
16
|
+
description: 'Triggers when a new object is created in a bucket',
|
|
17
|
+
aiMetadata: {
|
|
18
|
+
description: 'Fires when a new object is finalized (fully written) in the configured bucket, optionally limited to objects whose name starts with a given prefix. Represents a newly created/uploaded file; delivered via a Cloud Pub/Sub push notification (OBJECT_FINALIZE event).',
|
|
19
|
+
},
|
|
20
|
+
props: {
|
|
21
|
+
projectId: props_1.projectIdProperty,
|
|
22
|
+
bucket: props_1.bucketDropdown,
|
|
23
|
+
prefix: pieces_framework_1.Property.ShortText({
|
|
24
|
+
displayName: 'Prefix Filter',
|
|
25
|
+
description: 'Only trigger for objects with this prefix',
|
|
26
|
+
required: false,
|
|
27
|
+
}),
|
|
28
|
+
},
|
|
29
|
+
type: pieces_framework_1.TriggerStrategy.WEBHOOK,
|
|
30
|
+
sampleData: {
|
|
31
|
+
kind: 'storage#object',
|
|
32
|
+
id: 'example-bucket/example-object/1234567890',
|
|
33
|
+
name: 'example-object.txt',
|
|
34
|
+
bucket: 'example-bucket',
|
|
35
|
+
generation: '1234567890',
|
|
36
|
+
contentType: 'text/plain',
|
|
37
|
+
timeCreated: '2023-01-01T00:00:00.000Z',
|
|
38
|
+
updated: '2023-01-01T00:00:00.000Z',
|
|
39
|
+
size: '1024',
|
|
40
|
+
},
|
|
41
|
+
onEnable: (context) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
42
|
+
const { projectId, bucket, prefix } = context.propsValue;
|
|
43
|
+
const auth = context.auth;
|
|
44
|
+
// Generate unique names for this trigger instance
|
|
45
|
+
const triggerId = `ap-gcs-${bucket}-${Date.now()}`;
|
|
46
|
+
const topicName = `projects/${projectId}/topics/${triggerId}`;
|
|
47
|
+
const subscriptionName = `projects/${projectId}/subscriptions/${triggerId}`;
|
|
48
|
+
try {
|
|
49
|
+
// 1. Create Pub/Sub topic
|
|
50
|
+
yield client_1.gcsCommon.makePubSubRequest(pieces_common_1.HttpMethod.PUT, `/projects/${projectId}/topics/${triggerId}`, auth.access_token);
|
|
51
|
+
// 2. Create GCS notification configuration
|
|
52
|
+
const notificationConfig = {
|
|
53
|
+
topic: topicName,
|
|
54
|
+
payload_format: 'JSON_API_V1',
|
|
55
|
+
event_types: ['OBJECT_FINALIZE'],
|
|
56
|
+
};
|
|
57
|
+
if (prefix) {
|
|
58
|
+
notificationConfig.object_name_prefix = prefix;
|
|
59
|
+
}
|
|
60
|
+
const notificationResponse = yield client_1.gcsCommon.makeGCSRequest(pieces_common_1.HttpMethod.POST, `/b/${bucket}/notificationConfigs`, auth.access_token, notificationConfig);
|
|
61
|
+
// 3. Create Pub/Sub subscription with webhook push
|
|
62
|
+
const subscriptionConfig = {
|
|
63
|
+
topic: topicName,
|
|
64
|
+
pushConfig: {
|
|
65
|
+
pushEndpoint: context.webhookUrl,
|
|
66
|
+
},
|
|
67
|
+
ackDeadlineSeconds: 60,
|
|
68
|
+
};
|
|
69
|
+
yield client_1.gcsCommon.makePubSubRequest(pieces_common_1.HttpMethod.PUT, `/projects/${projectId}/subscriptions/${triggerId}`, auth.access_token, subscriptionConfig);
|
|
70
|
+
// Store trigger data for cleanup
|
|
71
|
+
yield context.store.put('_trigger', {
|
|
72
|
+
topicName: triggerId,
|
|
73
|
+
subscriptionName: triggerId,
|
|
74
|
+
notificationId: notificationResponse.id,
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
catch (error) {
|
|
78
|
+
// Cleanup on failure
|
|
79
|
+
try {
|
|
80
|
+
yield client_1.gcsCommon.makePubSubRequest(pieces_common_1.HttpMethod.DELETE, `/projects/${projectId}/subscriptions/${triggerId}`, auth.access_token);
|
|
81
|
+
}
|
|
82
|
+
catch (e) { /* ignore */ }
|
|
83
|
+
try {
|
|
84
|
+
yield client_1.gcsCommon.makePubSubRequest(pieces_common_1.HttpMethod.DELETE, `/projects/${projectId}/topics/${triggerId}`, auth.access_token);
|
|
85
|
+
}
|
|
86
|
+
catch (e) { /* ignore */ }
|
|
87
|
+
throw new Error(`Failed to setup Pub/Sub notifications: ${(error === null || error === void 0 ? void 0 : error.message) || 'Unknown error'}`);
|
|
88
|
+
}
|
|
89
|
+
}),
|
|
90
|
+
onDisable: (context) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
91
|
+
const triggerData = yield context.store.get('_trigger');
|
|
92
|
+
if (!triggerData)
|
|
93
|
+
return;
|
|
94
|
+
const { projectId } = context.propsValue;
|
|
95
|
+
const { bucket } = context.propsValue;
|
|
96
|
+
const auth = context.auth;
|
|
97
|
+
// Clean up in reverse order
|
|
98
|
+
try {
|
|
99
|
+
// Delete subscription
|
|
100
|
+
yield client_1.gcsCommon.makePubSubRequest(pieces_common_1.HttpMethod.DELETE, `/projects/${projectId}/subscriptions/${triggerData.subscriptionName}`, auth.access_token);
|
|
101
|
+
}
|
|
102
|
+
catch (e) { /* ignore */ }
|
|
103
|
+
try {
|
|
104
|
+
// Delete notification config
|
|
105
|
+
yield client_1.gcsCommon.makeGCSRequest(pieces_common_1.HttpMethod.DELETE, `/b/${bucket}/notificationConfigs/${triggerData.notificationId}`, auth.access_token);
|
|
106
|
+
}
|
|
107
|
+
catch (e) { /* ignore */ }
|
|
108
|
+
try {
|
|
109
|
+
// Delete topic
|
|
110
|
+
yield client_1.gcsCommon.makePubSubRequest(pieces_common_1.HttpMethod.DELETE, `/projects/${projectId}/topics/${triggerData.topicName}`, auth.access_token);
|
|
111
|
+
}
|
|
112
|
+
catch (e) { /* ignore */ }
|
|
113
|
+
}),
|
|
114
|
+
run: (context) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
115
|
+
var _a;
|
|
116
|
+
const payload = context.payload.body;
|
|
117
|
+
if (!((_a = payload === null || payload === void 0 ? void 0 : payload.message) === null || _a === void 0 ? void 0 : _a.data)) {
|
|
118
|
+
return [];
|
|
119
|
+
}
|
|
120
|
+
// Decode Pub/Sub message
|
|
121
|
+
const messageData = JSON.parse(Buffer.from(payload.message.data, 'base64').toString());
|
|
122
|
+
// Extract GCS object from notification payload
|
|
123
|
+
const gcsObject = messageData;
|
|
124
|
+
return [gcsObject];
|
|
125
|
+
}),
|
|
126
|
+
});
|
|
127
|
+
//# sourceMappingURL=new-object-created.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"new-object-created.js","sourceRoot":"","sources":["../../../src/lib/triggers/new-object-created.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { TriggerStrategy } from '@agnocon/pieces-framework';
|
|
2
|
+
export declare const objectUpdated: import("@agnocon/pieces-framework").ITrigger<TriggerStrategy.WEBHOOK, import("@agnocon/pieces-framework").OAuth2Property<import("@agnocon/pieces-framework").OAuth2Props>, {
|
|
3
|
+
projectId: import("@agnocon/pieces-framework").DropdownProperty<string, true, import("@agnocon/pieces-framework").OAuth2Property<import("@agnocon/pieces-framework").OAuth2Props>>;
|
|
4
|
+
bucket: import("@agnocon/pieces-framework").DropdownProperty<string, true, import("@agnocon/pieces-framework").OAuth2Property<import("@agnocon/pieces-framework").OAuth2Props>>;
|
|
5
|
+
prefix: import("@agnocon/pieces-framework").ShortTextProperty<false>;
|
|
6
|
+
}> | import("@agnocon/pieces-framework").ITrigger<TriggerStrategy.POLLING, import("@agnocon/pieces-framework").OAuth2Property<import("@agnocon/pieces-framework").OAuth2Props>, {
|
|
7
|
+
projectId: import("@agnocon/pieces-framework").DropdownProperty<string, true, import("@agnocon/pieces-framework").OAuth2Property<import("@agnocon/pieces-framework").OAuth2Props>>;
|
|
8
|
+
bucket: import("@agnocon/pieces-framework").DropdownProperty<string, true, import("@agnocon/pieces-framework").OAuth2Property<import("@agnocon/pieces-framework").OAuth2Props>>;
|
|
9
|
+
prefix: import("@agnocon/pieces-framework").ShortTextProperty<false>;
|
|
10
|
+
}> | import("@agnocon/pieces-framework").ITrigger<TriggerStrategy.MANUAL, import("@agnocon/pieces-framework").OAuth2Property<import("@agnocon/pieces-framework").OAuth2Props>, {
|
|
11
|
+
projectId: import("@agnocon/pieces-framework").DropdownProperty<string, true, import("@agnocon/pieces-framework").OAuth2Property<import("@agnocon/pieces-framework").OAuth2Props>>;
|
|
12
|
+
bucket: import("@agnocon/pieces-framework").DropdownProperty<string, true, import("@agnocon/pieces-framework").OAuth2Property<import("@agnocon/pieces-framework").OAuth2Props>>;
|
|
13
|
+
prefix: import("@agnocon/pieces-framework").ShortTextProperty<false>;
|
|
14
|
+
}> | import("@agnocon/pieces-framework").ITrigger<TriggerStrategy.APP_WEBHOOK, import("@agnocon/pieces-framework").OAuth2Property<import("@agnocon/pieces-framework").OAuth2Props>, {
|
|
15
|
+
projectId: import("@agnocon/pieces-framework").DropdownProperty<string, true, import("@agnocon/pieces-framework").OAuth2Property<import("@agnocon/pieces-framework").OAuth2Props>>;
|
|
16
|
+
bucket: import("@agnocon/pieces-framework").DropdownProperty<string, true, import("@agnocon/pieces-framework").OAuth2Property<import("@agnocon/pieces-framework").OAuth2Props>>;
|
|
17
|
+
prefix: import("@agnocon/pieces-framework").ShortTextProperty<false>;
|
|
18
|
+
}>;
|
|
19
|
+
//# sourceMappingURL=object-updated.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"object-updated.d.ts","sourceRoot":"","sources":["../../../src/lib/triggers/object-updated.ts"],"names":[],"mappings":"AAEA,OAAO,EAAiB,eAAe,EAAY,MAAM,2BAA2B,CAAC;AAYrF,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;EAiKxB,CAAC"}
|