@skillful-ai/piece-skai-gen-image 0.0.5 → 0.0.6
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/package.json
CHANGED
|
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.generateMemeFromTemplate = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
const pieces_framework_1 = require("@activepieces/pieces-framework");
|
|
6
|
+
const pieces_common_1 = require("@activepieces/pieces-common");
|
|
6
7
|
const index_1 = require("../../index");
|
|
7
8
|
const IMGFLIP_API_URL = 'https://api.imgflip.com';
|
|
8
9
|
exports.generateMemeFromTemplate = (0, pieces_framework_1.createAction)({
|
|
@@ -62,38 +63,36 @@ exports.generateMemeFromTemplate = (0, pieces_framework_1.createAction)({
|
|
|
62
63
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
63
64
|
const { templateId, text0, text1, text2, text3, font, maxFontSize } = context.propsValue;
|
|
64
65
|
const auth = context.auth;
|
|
65
|
-
// Build
|
|
66
|
-
const
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
66
|
+
// Build query params object
|
|
67
|
+
const queryParams = {
|
|
68
|
+
template_id: templateId,
|
|
69
|
+
username: auth.imgflipUsername,
|
|
70
|
+
password: auth.imgflipPassword,
|
|
71
|
+
text0: text0,
|
|
72
|
+
};
|
|
71
73
|
if (text1)
|
|
72
|
-
|
|
74
|
+
queryParams['text1'] = text1;
|
|
73
75
|
if (text2)
|
|
74
|
-
|
|
76
|
+
queryParams['boxes[2][text]'] = text2;
|
|
75
77
|
if (text3)
|
|
76
|
-
|
|
78
|
+
queryParams['boxes[3][text]'] = text3;
|
|
77
79
|
if (font)
|
|
78
|
-
|
|
80
|
+
queryParams['font'] = font;
|
|
79
81
|
if (maxFontSize)
|
|
80
|
-
|
|
81
|
-
//
|
|
82
|
-
const response = yield
|
|
83
|
-
method:
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
},
|
|
87
|
-
body: params.toString(),
|
|
82
|
+
queryParams['max_font_size'] = String(maxFontSize);
|
|
83
|
+
// Send as query params (Imgflip accepts POST with URL params)
|
|
84
|
+
const response = yield pieces_common_1.httpClient.sendRequest({
|
|
85
|
+
method: pieces_common_1.HttpMethod.POST,
|
|
86
|
+
url: `${IMGFLIP_API_URL}/caption_image`,
|
|
87
|
+
queryParams,
|
|
88
88
|
});
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
throw new Error(`Failed to generate meme: ${responseBody.error_message || 'Unknown error'}`);
|
|
89
|
+
if (!response.body.success) {
|
|
90
|
+
throw new Error(`Failed to generate meme: ${response.body.error_message || 'Unknown error'}`);
|
|
92
91
|
}
|
|
93
92
|
return {
|
|
94
93
|
success: true,
|
|
95
|
-
imageUrl:
|
|
96
|
-
pageUrl:
|
|
94
|
+
imageUrl: response.body.data.url,
|
|
95
|
+
pageUrl: response.body.data.page_url,
|
|
97
96
|
templateId,
|
|
98
97
|
texts: {
|
|
99
98
|
text0,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate-meme-from-template.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/custom/skai-gen-image/src/lib/actions/generate-meme-from-template.ts"],"names":[],"mappings":";;;;AAAA,qEAAwE;AACxE,uCAAsE;AAEtE,MAAM,eAAe,GAAG,yBAAyB,CAAC;AAErC,QAAA,wBAAwB,GAAG,IAAA,+BAAY,EAAC;IACjD,IAAI,EAAE,wBAAgB;IACtB,IAAI,EAAE,6BAA6B;IACnC,WAAW,EAAE,6BAA6B;IAC1C,WAAW,EAAE,mFAAmF;IAChG,KAAK,EAAE;QACH,UAAU,EAAE,2BAAQ,CAAC,SAAS,CAAC;YAC3B,WAAW,EAAE,aAAa;YAC1B,WAAW,EAAE,iIAAiI;YAC9I,QAAQ,EAAE,IAAI;SACjB,CAAC;QACF,KAAK,EAAE,2BAAQ,CAAC,SAAS,CAAC;YACtB,WAAW,EAAE,sBAAsB;YACnC,WAAW,EAAE,iCAAiC;YAC9C,QAAQ,EAAE,IAAI;SACjB,CAAC;QACF,KAAK,EAAE,2BAAQ,CAAC,SAAS,CAAC;YACtB,WAAW,EAAE,0BAA0B;YACvC,WAAW,EAAE,qCAAqC;YAClD,QAAQ,EAAE,KAAK;SAClB,CAAC;QACF,KAAK,EAAE,2BAAQ,CAAC,SAAS,CAAC;YACtB,WAAW,EAAE,gBAAgB;YAC7B,WAAW,EAAE,kDAAkD;YAC/D,QAAQ,EAAE,KAAK;SAClB,CAAC;QACF,KAAK,EAAE,2BAAQ,CAAC,SAAS,CAAC;YACtB,WAAW,EAAE,iBAAiB;YAC9B,WAAW,EAAE,mDAAmD;YAChE,QAAQ,EAAE,KAAK;SAClB,CAAC;QACF,IAAI,EAAE,2BAAQ,CAAC,cAAc,CAAC;YAC1B,WAAW,EAAE,MAAM;YACnB,WAAW,EAAE,8BAA8B;YAC3C,QAAQ,EAAE,KAAK;YACf,YAAY,EAAE,QAAQ;YACtB,OAAO,EAAE;gBACL,OAAO,EAAE;oBACL,EAAE,KAAK,EAAE,4BAA4B,EAAE,KAAK,EAAE,QAAQ,EAAE;oBACxD,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE;oBAClC,EAAE,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,eAAe,EAAE;oBAClD,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE;oBACpC,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,EAAE;iBAC7C;aACJ;SACJ,CAAC;QACF,WAAW,EAAE,2BAAQ,CAAC,MAAM,CAAC;YACzB,WAAW,EAAE,eAAe;YAC5B,WAAW,EAAE,2CAA2C;YACxD,QAAQ,EAAE,KAAK;YACf,YAAY,EAAE,EAAE;SACnB,CAAC;KACL;IACK,GAAG,CAAC,OAAO;;YACb,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC;YACzF,MAAM,IAAI,GAAG,OAAO,CAAC,IAA6B,CAAC;YAEnD,
|
|
1
|
+
{"version":3,"file":"generate-meme-from-template.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/custom/skai-gen-image/src/lib/actions/generate-meme-from-template.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.generateMemeWithAI = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
const pieces_framework_1 = require("@activepieces/pieces-framework");
|
|
6
|
+
const pieces_common_1 = require("@activepieces/pieces-common");
|
|
6
7
|
const index_1 = require("../../index");
|
|
7
8
|
const IMGFLIP_API_URL = 'https://api.imgflip.com';
|
|
8
9
|
exports.generateMemeWithAI = (0, pieces_framework_1.createAction)({
|
|
@@ -39,37 +40,35 @@ exports.generateMemeWithAI = (0, pieces_framework_1.createAction)({
|
|
|
39
40
|
var _a, _b;
|
|
40
41
|
const { topic, model, prefixText } = context.propsValue;
|
|
41
42
|
const auth = context.auth;
|
|
42
|
-
// Build
|
|
43
|
-
const
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
43
|
+
// Build query params object
|
|
44
|
+
const queryParams = {
|
|
45
|
+
username: auth.imgflipUsername,
|
|
46
|
+
password: auth.imgflipPassword,
|
|
47
|
+
text: topic,
|
|
48
|
+
};
|
|
47
49
|
if (model)
|
|
48
|
-
|
|
50
|
+
queryParams['model'] = model;
|
|
49
51
|
if (prefixText)
|
|
50
|
-
|
|
51
|
-
//
|
|
52
|
-
const response = yield
|
|
53
|
-
method:
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
},
|
|
57
|
-
body: params.toString(),
|
|
52
|
+
queryParams['prefix_text'] = prefixText;
|
|
53
|
+
// Send as query params (Imgflip accepts POST with URL params)
|
|
54
|
+
const response = yield pieces_common_1.httpClient.sendRequest({
|
|
55
|
+
method: pieces_common_1.HttpMethod.POST,
|
|
56
|
+
url: `${IMGFLIP_API_URL}/ai_meme`,
|
|
57
|
+
queryParams,
|
|
58
58
|
});
|
|
59
|
-
|
|
60
|
-
if (!responseBody.success) {
|
|
59
|
+
if (!response.body.success) {
|
|
61
60
|
// Check if it's a premium required error
|
|
62
|
-
if (((_a =
|
|
61
|
+
if (((_a = response.body.error_message) === null || _a === void 0 ? void 0 : _a.includes('premium')) || ((_b = response.body.error_message) === null || _b === void 0 ? void 0 : _b.includes('Premium'))) {
|
|
63
62
|
throw new Error('AI Meme generation requires Imgflip Premium subscription. Get it at https://imgflip.com/pro');
|
|
64
63
|
}
|
|
65
|
-
throw new Error(`Failed to generate AI meme: ${
|
|
64
|
+
throw new Error(`Failed to generate AI meme: ${response.body.error_message || 'Unknown error'}`);
|
|
66
65
|
}
|
|
67
66
|
return {
|
|
68
67
|
success: true,
|
|
69
|
-
imageUrl:
|
|
70
|
-
pageUrl:
|
|
71
|
-
templateUsed:
|
|
72
|
-
generatedTexts:
|
|
68
|
+
imageUrl: response.body.data.url,
|
|
69
|
+
pageUrl: response.body.data.page_url,
|
|
70
|
+
templateUsed: response.body.data.template || null,
|
|
71
|
+
generatedTexts: response.body.data.texts || null,
|
|
73
72
|
topic,
|
|
74
73
|
model: model || 'openai',
|
|
75
74
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate-meme-with-ai.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/custom/skai-gen-image/src/lib/actions/generate-meme-with-ai.ts"],"names":[],"mappings":";;;;AAAA,qEAAwE;AACxE,uCAAsE;AAEtE,MAAM,eAAe,GAAG,yBAAyB,CAAC;AAErC,QAAA,kBAAkB,GAAG,IAAA,+BAAY,EAAC;IAC3C,IAAI,EAAE,wBAAgB;IACtB,IAAI,EAAE,uBAAuB;IAC7B,WAAW,EAAE,uBAAuB;IACpC,WAAW,EAAE,oGAAoG;IACjH,KAAK,EAAE;QACH,KAAK,EAAE,2BAAQ,CAAC,QAAQ,CAAC;YACrB,WAAW,EAAE,eAAe;YAC5B,WAAW,EAAE,oGAAoG;YACjH,QAAQ,EAAE,IAAI;SACjB,CAAC;QACF,KAAK,EAAE,2BAAQ,CAAC,cAAc,CAAC;YAC3B,WAAW,EAAE,UAAU;YACvB,WAAW,EAAE,8CAA8C;YAC3D,QAAQ,EAAE,KAAK;YACf,YAAY,EAAE,QAAQ;YACtB,OAAO,EAAE;gBACL,OAAO,EAAE;oBACL,EAAE,KAAK,EAAE,oCAAoC,EAAE,KAAK,EAAE,QAAQ,EAAE;oBAChE,EAAE,KAAK,EAAE,kCAAkC,EAAE,KAAK,EAAE,SAAS,EAAE;iBAClE;aACJ;SACJ,CAAC;QACF,UAAU,EAAE,2BAAQ,CAAC,SAAS,CAAC;YAC3B,WAAW,EAAE,aAAa;YAC1B,WAAW,EAAE,sEAAsE;YACnF,QAAQ,EAAE,KAAK;SAClB,CAAC;KACL;IACK,GAAG,CAAC,OAAO;;;YACb,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC;YACxD,MAAM,IAAI,GAAG,OAAO,CAAC,IAA6B,CAAC;YAEnD,
|
|
1
|
+
{"version":3,"file":"generate-meme-with-ai.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/custom/skai-gen-image/src/lib/actions/generate-meme-with-ai.ts"],"names":[],"mappings":";;;;AAAA,qEAAwE;AACxE,+DAAqE;AACrE,uCAAsE;AAEtE,MAAM,eAAe,GAAG,yBAAyB,CAAC;AAErC,QAAA,kBAAkB,GAAG,IAAA,+BAAY,EAAC;IAC3C,IAAI,EAAE,wBAAgB;IACtB,IAAI,EAAE,uBAAuB;IAC7B,WAAW,EAAE,uBAAuB;IACpC,WAAW,EAAE,oGAAoG;IACjH,KAAK,EAAE;QACH,KAAK,EAAE,2BAAQ,CAAC,QAAQ,CAAC;YACrB,WAAW,EAAE,eAAe;YAC5B,WAAW,EAAE,oGAAoG;YACjH,QAAQ,EAAE,IAAI;SACjB,CAAC;QACF,KAAK,EAAE,2BAAQ,CAAC,cAAc,CAAC;YAC3B,WAAW,EAAE,UAAU;YACvB,WAAW,EAAE,8CAA8C;YAC3D,QAAQ,EAAE,KAAK;YACf,YAAY,EAAE,QAAQ;YACtB,OAAO,EAAE;gBACL,OAAO,EAAE;oBACL,EAAE,KAAK,EAAE,oCAAoC,EAAE,KAAK,EAAE,QAAQ,EAAE;oBAChE,EAAE,KAAK,EAAE,kCAAkC,EAAE,KAAK,EAAE,SAAS,EAAE;iBAClE;aACJ;SACJ,CAAC;QACF,UAAU,EAAE,2BAAQ,CAAC,SAAS,CAAC;YAC3B,WAAW,EAAE,aAAa;YAC1B,WAAW,EAAE,sEAAsE;YACnF,QAAQ,EAAE,KAAK;SAClB,CAAC;KACL;IACK,GAAG,CAAC,OAAO;;;YACb,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC;YACxD,MAAM,IAAI,GAAG,OAAO,CAAC,IAA6B,CAAC;YAEnD,4BAA4B;YAC5B,MAAM,WAAW,GAA2B;gBACxC,QAAQ,EAAE,IAAI,CAAC,eAAe;gBAC9B,QAAQ,EAAE,IAAI,CAAC,eAAe;gBAC9B,IAAI,EAAE,KAAK;aACd,CAAC;YAEF,IAAI,KAAK;gBAAE,WAAW,CAAC,OAAO,CAAC,GAAG,KAAK,CAAC;YACxC,IAAI,UAAU;gBAAE,WAAW,CAAC,aAAa,CAAC,GAAG,UAAU,CAAC;YAExD,8DAA8D;YAC9D,MAAM,QAAQ,GAAG,MAAM,0BAAU,CAAC,WAAW,CAAC;gBAC1C,MAAM,EAAE,0BAAU,CAAC,IAAI;gBACvB,GAAG,EAAE,GAAG,eAAe,UAAU;gBACjC,WAAW;aACd,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;gBACzB,yCAAyC;gBACzC,IAAI,CAAA,MAAA,QAAQ,CAAC,IAAI,CAAC,aAAa,0CAAE,QAAQ,CAAC,SAAS,CAAC,MAAI,MAAA,QAAQ,CAAC,IAAI,CAAC,aAAa,0CAAE,QAAQ,CAAC,SAAS,CAAC,CAAA,EAAE,CAAC;oBACvG,MAAM,IAAI,KAAK,CAAC,6FAA6F,CAAC,CAAC;gBACnH,CAAC;gBACD,MAAM,IAAI,KAAK,CAAC,+BAA+B,QAAQ,CAAC,IAAI,CAAC,aAAa,IAAI,eAAe,EAAE,CAAC,CAAC;YACrG,CAAC;YAED,OAAO;gBACH,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;gBAChC,OAAO,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ;gBACpC,YAAY,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI;gBACjD,cAAc,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI;gBAChD,KAAK;gBACL,KAAK,EAAE,KAAK,IAAI,QAAQ;aAC3B,CAAC;QACN,CAAC;KAAA;CACJ,CAAC,CAAC"}
|